[dpdk-dev] [PATCH 00/13] IPv4/IPv6 fragmentation/reassembly library
Anatoly Burakov
anatoly.burakov at intel.com
Wed May 28 19:32:33 CEST 2014
This patch is mostly a refactoring of the fragmentation/reassembly code
that was already present in sample applications. Also, support for
IPv6 is added as well (although somewhat limited, since full IPv6
support would require a proper IP stack).
Also, renamed ipv4_frag app to ip_fragmentation, and added IPv6
support to both ip_fragmentation and ip_reassembly app (also
simplifying them in the process - e.g. dropping support for
exact match and using only LPM/LPM6 for routing).
Anatoly Burakov (13):
ip_frag: Moving fragmentation/reassembly headers into a separate
library
Refactored IPv4 fragmentation into a proper library
Fixing issues reported by checkpatch
ip_frag: new internal common header
ip_frag: removed unneeded check and macro
ip_frag: renaming structures in fragmentation table to be more generic
ip_frag: refactored reassembly code and made it a proper library
ip_frag: renamed ipv4 frag function
ip_frag: added IPv6 fragmentation support
examples: renamed ipv4_frag example app to ip_fragmentation
example: overhaul of ip_fragmentation example app
ip_frag: add support for IPv6 reassembly
examples: overhaul of ip_reassembly app
config/common_bsdapp | 7 +
config/common_linuxapp | 7 +
examples/{ipv4_frag => ip_fragmentation}/Makefile | 2 +-
examples/{ipv4_frag => ip_fragmentation}/main.c | 536 ++++++--
examples/{ipv4_frag => ip_fragmentation}/main.h | 0
examples/ip_reassembly/Makefile | 1 -
examples/ip_reassembly/ipv4_frag_tbl.h | 400 ------
examples/ip_reassembly/ipv4_rsmbl.h | 425 ------
examples/ip_reassembly/main.c | 1348 +++++++-------------
lib/Makefile | 1 +
lib/librte_ip_frag/Makefile | 55 +
lib/librte_ip_frag/ip_frag_common.h | 193 +++
lib/librte_ip_frag/ip_frag_internal.c | 421 ++++++
lib/librte_ip_frag/rte_ip_frag.h | 344 +++++
lib/librte_ip_frag/rte_ip_frag_common.c | 142 +++
.../librte_ip_frag/rte_ipv4_fragmentation.c | 91 +-
lib/librte_ip_frag/rte_ipv4_reassembly.c | 191 +++
lib/librte_ip_frag/rte_ipv6_fragmentation.c | 219 ++++
lib/librte_ip_frag/rte_ipv6_reassembly.c | 218 ++++
mk/rte.app.mk | 4 +
20 files changed, 2668 insertions(+), 1937 deletions(-)
rename examples/{ipv4_frag => ip_fragmentation}/Makefile (99%)
rename examples/{ipv4_frag => ip_fragmentation}/main.c (57%)
rename examples/{ipv4_frag => ip_fragmentation}/main.h (100%)
delete mode 100644 examples/ip_reassembly/ipv4_frag_tbl.h
delete mode 100644 examples/ip_reassembly/ipv4_rsmbl.h
create mode 100644 lib/librte_ip_frag/Makefile
create mode 100644 lib/librte_ip_frag/ip_frag_common.h
create mode 100644 lib/librte_ip_frag/ip_frag_internal.c
create mode 100644 lib/librte_ip_frag/rte_ip_frag.h
create mode 100644 lib/librte_ip_frag/rte_ip_frag_common.c
rename examples/ipv4_frag/rte_ipv4_frag.h => lib/librte_ip_frag/rte_ipv4_fragmentation.c (80%)
create mode 100644 lib/librte_ip_frag/rte_ipv4_reassembly.c
create mode 100644 lib/librte_ip_frag/rte_ipv6_fragmentation.c
create mode 100644 lib/librte_ip_frag/rte_ipv6_reassembly.c
--
1.8.1.4
More information about the dev
mailing list