Message ID | 20241114070713.3718740-1-chopps@chopps.org (mailing list archive) |
---|---|
Headers | show |
Series | Add IP-TFS mode to xfrm | expand |
On Thu, Nov 14, 2024 at 02:06:57 -0500, Christian Hopps via Devel wrote: > * Summary of Changes: > > This patchset adds a new xfrm mode implementing on-demand IP-TFS. IP-TFS > (AggFrag encapsulation) has been standardized in RFC9347. > > Link: https://www.rfc-editor.org/rfc/rfc9347.txt > > This feature supports demand driven (i.e., non-constant send rate) > IP-TFS to take advantage of the AGGFRAG ESP payload encapsulation. This > payload type supports aggregation and fragmentation of the inner IP > packet stream which in turn yields higher small-packet bandwidth as well > as reducing MTU/PMTU issues. Congestion control is unimplementated as > the send rate is demand driven rather than constant. > > In order to allow loading this fucntionality as a module a set of > callbacks xfrm_mode_cbs has been added to xfrm as well. > > Patchset Structure: > ------------------- > > The first 5 commits are changes to the net and xfrm infrastructure to > support the callbacks as well as more generic IP-TFS additions that > may be used outside the actual IP-TFS implementation. > > - xfrm: config: add CONFIG_XFRM_IPTFS > - include: uapi: protocol number and packet structs for AGGFRAG in ESP > - xfrm: netlink: add config (netlink) options > - xfrm: add mode_cbs module functionality > - xfrm: add generic iptfs defines and functionality > > The last 10 commits constitute the IP-TFS implementation constructed in > layers to make review easier. The first 9 commits all apply to a single > file `net/xfrm/xfrm_iptfs.c`, the last commit adds a new tracepoint > header file along with the use of these new tracepoint calls. > > - xfrm: iptfs: add new iptfs xfrm mode impl > - xfrm: iptfs: add user packet (tunnel ingress) handling > - xfrm: iptfs: share page fragments of inner packets > - xfrm: iptfs: add fragmenting of larger than MTU user packets > - xfrm: iptfs: add basic receive packet (tunnel egress) handling > - xfrm: iptfs: handle received fragmented inner packets > - xfrm: iptfs: add reusing received skb for the tunnel egress packet > - xfrm: iptfs: add skb-fragment sharing code > - xfrm: iptfs: handle reordering of received packets > - xfrm: iptfs: add tracepoint functionality I did several functional tests with the entire patch set. Tested-by: Antony Antony <antony.antony@secunet.com> Feel free to add this tag in the next re-base. thanks, -antony