wangbojing / Ntytcp
Licence: mit
单线程用户态TCP/IP协议栈,epoll实现,包含服务器案例,并发测试案例
Stars: ✭ 322
Programming Languages
c
50402 projects - #5 most used programming language
Projects that are alternatives of or similar to Ntytcp
toyhttpd
I/O 模型练手代码,分别使用阻塞式 I/O、select、poll 和 epoll 和 Java NIO 实现了简单的 HTTP Server
Stars: ✭ 43 (-86.65%)
Mutual labels: epoll
epump
ePump是一个基于I/O事件通知、非阻塞通信、多路复用、多线程等机制开发的事件驱动模型的 C 语言应用开发框架,利用该框架可以很容易地开发出高性能、大并发连接的服务器程序。
Stars: ✭ 26 (-91.93%)
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
xm2cloud term
powerful webssh that developed with django, channels, xterm,ioloop
Stars: ✭ 17 (-94.72%)
Mutual labels: epoll
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].