jserv / Nstack
Licence: other
Userspace TCP/IP stack for Linux
Stars: ✭ 162
Programming Languages
c
50402 projects - #5 most used programming language
Labels
Projects that are alternatives of or similar to Nstack
Ucx
Unified Communication X (mailing list - https://elist.ornl.gov/mailman/listinfo/ucx-group)
Stars: ✭ 471 (+190.74%)
Mutual labels: networking, tcp-ip
Golden Gate
Framework to connect wearables and other IoT devices to mobile phones, tablets and PCs with an IP-based protocol stack over Bluetooth Low Energy
Stars: ✭ 223 (+37.65%)
Mutual labels: networking, tcp-ip
Steamkit
SteamKit2 is a .NET library designed to interoperate with Valve's Steam network. It aims to provide a simple, yet extensible, interface to perform various actions on the network.
Stars: ✭ 1,926 (+1088.89%)
Mutual labels: networking
Securecrt Tools
SecureCRT scripts, written in Python, for doing various tasks when connected to Cisco equipment.
Stars: ✭ 154 (-4.94%)
Mutual labels: networking
Netstack
Lightweight toolset for creating concurrent networking systems for multiplayer games
Stars: ✭ 157 (-3.09%)
Mutual labels: networking
.codebits
📚 List of resources for Algorithms and Data Structures in Python & other CS topics @2017
Stars: ✭ 144 (-11.11%)
Mutual labels: networking
Npf
NPF: packet filter with stateful inspection, NAT, IP sets, etc.
Stars: ✭ 160 (-1.23%)
Mutual labels: networking
Ignorance
Ignorance utilizes the power of ENet to provide a reliable UDP networking transport for Mirror Networking.
Stars: ✭ 158 (-2.47%)
Mutual labels: networking
Tokio
A runtime for writing reliable asynchronous applications with Rust. Provides I/O, networking, scheduling, timers, ...
Stars: ✭ 14,278 (+8713.58%)
Mutual labels: networking
Awesome Networking
Curated list of awesome computer networking resources
Stars: ✭ 159 (-1.85%)
Mutual labels: networking
Ios Nd Networking
Resources for Udacity's iOS Networking with Swift course.
Stars: ✭ 145 (-10.49%)
Mutual labels: networking
Neighbourhood
Layer 2 network neighbourhood discovery tool that uses scapy
Stars: ✭ 156 (-3.7%)
Mutual labels: networking
Skydive
An open source real-time network topology and protocols analyzer
Stars: ✭ 2,086 (+1187.65%)
Mutual labels: networking
nstack
Overview
nstack is a Linux userspace TCP/IP stack. It was constructed to meet the following goals:
- Learn TCP/IP
- Learn Linux systems/network programming
- Learn Linux Socket API
Current features:
- One network interface and socket
- Ethernet frame handling
- ARP request/reply, simple caching
- ICMP pings and replies
- IPv4 packet handling, checksum
- TCPv4 Handshake
- TCP data transmission
Build and Test
make
Set up test environment:
sudo tools/testenv.sh start
tools/run.sh veth1
Execute ping
inside test environment:
tools/ping_test.sh
Expected nstack messages:
arp_gratuitous: Announce 10.0.0.2
nstack_ingress_thread: Waiting for rx
nstack_ingress_thread: Frame received!
ether_input: proto id: 0x800
ip_input: proto id: 0x1
icmp_input: ICMP type: 8
nstack_ingress_thread: tick
nstack_ingress_thread: Waiting for rx
nstack_ingress_thread: Frame received!
ether_input: proto id: 0x800
ip_input: proto id: 0x1
icmp_input: ICMP type: 8
Ending the test environment:
sudo tools/testenv.sh stop
Licensing
nstack is freely redistributable under the two-clause BSD License.
Use of this source code is governed by a BSD-style license that can be found
in the LICENSE
file.
Reference
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].