All Projects → wangbojing → Ntytcp

wangbojing / Ntytcp

Licence: mit
单线程用户态TCP/IP协议栈,epoll实现,包含服务器案例,并发测试案例

Programming Languages

c
50402 projects - #5 most used programming language

Labels

Projects that are alternatives of or similar to Ntytcp

sip3-captain-ce
SIP3 Captain (Community Edition)
Stars: ✭ 73 (-77.33%)
Mutual labels:  dpdk
toyhttpd
I/O 模型练手代码,分别使用阻塞式 I/O、select、poll 和 epoll 和 Java NIO 实现了简单的 HTTP Server
Stars: ✭ 43 (-86.65%)
Mutual labels:  epoll
Ehttp
simple http server base on epoll
Stars: ✭ 272 (-15.53%)
Mutual labels:  epoll
epump
ePump是一个基于I/O事件通知、非阻塞通信、多路复用、多线程等机制开发的事件驱动模型的 C 语言应用开发框架,利用该框架可以很容易地开发出高性能、大并发连接的服务器程序。
Stars: ✭ 26 (-91.93%)
Mutual labels:  epoll
epoll
epoll(7) binding in Ruby
Stars: ✭ 22 (-93.17%)
Mutual labels:  epoll
gn
golang epoll实现
Stars: ✭ 46 (-85.71%)
Mutual labels:  epoll
dpdk
A comprehensive rust binding for DPDK allowing high speed userspace networking across 256 cores and 32 NICs
Stars: ✭ 30 (-90.68%)
Mutual labels:  dpdk
Jupiter
Jupiter is a high-performance 4-layer network load balance service based on DPDK.
Stars: ✭ 292 (-9.32%)
Mutual labels:  dpdk
libevent
<Libevent深入浅出>本书要求有一定的服务并发编程基础,了解select和epoll等多路I/O复用机制。
Stars: ✭ 363 (+12.73%)
Mutual labels:  epoll
Gaio
High performance async-io(proactor) networking for Golang。golangのための高性能非同期io(proactor)ネットワーキング
Stars: ✭ 272 (-15.53%)
Mutual labels:  epoll
sol
Lightweight MQTT broker, written from scratch. IO is handled by a super simple event loop based upon the most common IO multiplexing implementations.
Stars: ✭ 72 (-77.64%)
Mutual labels:  epoll
30dayMakeCppServer
30天自制C++服务器,包含教程和源代码
Stars: ✭ 432 (+34.16%)
Mutual labels:  epoll
ev
Lightweight event-loop library based on multiplexing IO
Stars: ✭ 15 (-95.34%)
Mutual labels:  epoll
upf-epc
4G/5G Mobile Core User Plane
Stars: ✭ 97 (-69.88%)
Mutual labels:  dpdk
Lagopus
Yet another SDN / OpenFlow software switch
Stars: ✭ 281 (-12.73%)
Mutual labels:  dpdk
sriov-cni
DPDK & SR-IOV CNI plugin
Stars: ✭ 209 (-35.09%)
Mutual labels:  dpdk
xm2cloud term
powerful webssh that developed with django, channels, xterm,ioloop
Stars: ✭ 17 (-94.72%)
Mutual labels:  epoll
Containerdns
a fast DNS for Kubernetes clusters
Stars: ✭ 321 (-0.31%)
Mutual labels:  dpdk
Webserver
A C++ High Performance Web Server
Stars: ✭ 4,164 (+1193.17%)
Mutual labels:  epoll
susanow
Thread based NFVi on DPDK
Stars: ✭ 27 (-91.61%)
Mutual labels:  dpdk

image

配套视频讲解

netmap install

$ git clone https://github.com/wangbojing/netmap.git

$ ./configure

$ make 

$ sudo make install

netmap install complete.

Troubleshooting

1. problem : configure --> /bin/sh^M.

you should run . 
$ dos2unix configure

$ dos2unix ./LINUX/configure

2. problem : cannot stat 'bridge': No such or directory

$ make clean

$ cd build-apps/bridge

$ gcc -O2 -pipe -Werror -Wall -Wunused-function -I ../../sys -I ../../apps/include -Wextra    ../../apps/bridge/bridge.c  -lpthread -lrt    -o bridge

$ sudo make && make install

NtyTcp

netmap, dpdk, pf_ring, Tcp Stack for Userspace

compile:

$ sudo apt-get install libhugetlbfs-dev

$ make

update NtyTcp/include/nty_config.h


#define NTY_SELF_IP		"192.168.0.106" 	//your ip

#define NTY_SELF_IP_HEX	0x6A00A8C0 			//your ip hex.

#define NTY_SELF_MAC	"00:0c:29:58:6f:f4" //your mac

block server run:

$ ./bin/nty_example_block_server

epoll server run:

$ ./bin/nty_example_epoll_rb_server

Reference

if you discover bug to sending email to [email protected].

also, want to be an NtyTcper, so you can sent email to [email protected] .

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].