Skip to content
/ dpdk-odp Public
forked from ansyun/dpdk-ans

Open data plane on dpdk, TCP/IP stack for dpdk.

Notifications You must be signed in to change notification settings

jqyy/dpdk-odp

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

####TCP/IP stack for dpdk

Netdp is porting from FreeBSD TCP/IP stack, and provide a userspace TCP/IP stack for use with the Intel dpdk.

  • librte_netdp: TCP/IP stack static library. netdp use dpdk mbuf, ring, memzone, mempool, timer, spinlock. so zero copy mbuf between dpdk and netdp.

  • librte_netdpsock: Netdp socket lib for application, zero copy between netdp and application.

  • netdp_cmd: Command for configure netdp tcp/ip stack.

  • netdp_test: Example application with netdp for testing netdp tcp/ip stack

Support environment

  • EAL is based on dpdk-2.1.0
  • Development enviroment is based on x86_64-native-linuxapp-gcc
  • TCP/IP stack is based on FreeBSD 10.0-RELEASE
  • linux version: Linux ubuntu 3.11.0-15-generic #25~precise1-Ubuntu SMP Thu Jan 30 17:39:31 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
  • gcc version: Using built-in specs. COLLECT_GCC=gcc COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.6/lto-wrapper Target: x86_64-linux-gnu Configured with: ../src/configure -v --with-pkgversion='Ubuntu/Linaro 4.6.3-1ubuntu5' --with-bugurl=file:///usr/share/doc/gcc-4.6/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.6 --enable-shared --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.6 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --enable-plugin --enable-objc-gc --disable-werror --with-arch-32=i686 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu Thread model: posix gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)

Support feature:

  • Netdp initialize
  • Ether, zero copy between NIC and netdp TCP/IP stack.
  • ARP, ARP timeout
  • IP layer, IP fragmentation and reassemble
  • Routing
  • ICMP
  • Commands for adding, deleting, showing IP address
  • Commands for adding, deleting, showing static route
  • Commands for showing ARP table
  • UDP
  • Socket layer
  • Support epoll
  • No lock in UDP stack and socket layer.
  • Running on multiple cores.

Next Planning

  • Porting TCP from FreeBSD to netdp
  • Open data plane.
  • VxVLAN.
  • Performance testing.
  • IPFW

You can get more information and instructions from wiki page.

####Support

BSD LICENSE, you may use netdp freely.

For free support, please use netdp team mail list at zimeiw@163.com. or QQ Group:86883521

About

Open data plane on dpdk, TCP/IP stack for dpdk.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 92.5%
  • Makefile 7.5%