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-1.7.1
- Development enviroment is based on x86_64-native-linuxapp-gcc
- TCP/IP stack is based on FreeBSD 10.0-RELEASE
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
- No lock in UDP stack and socket layer.
- Running on multiple cores.
Next Planning
- Porting TCP from FreeBSD to netdp
- Porting socket from FreeBSD to netdp
- Open data plane.
- VxVLAN.
- Performance testing.
- IPFW
####Wiki Page
You can get more information and instructions from wiki page.
BSD LICENSE, you may use netdp freely.
For free support, please use netdp team mail list at zimeiw@163.com. or QQ Group:86883521