Modules | |
User Protocols | |
Ethernet Protocol | |
RFC 894 IP over Ethernet. | |
ARP Protocol | |
RFC 826 address resolution protocol. | |
IP Protocol | |
RFC 791 Internet protocol version 4. | |
ICMP Protocol. | |
RFC 792 Internet Control Message Protocol. | |
UDP Protocol | |
RFC 768 user datagram protocol. | |
TCP Protocol | |
RFC 793 Transmission Control Protocol. | |
Socket API |
The Nut/Net networking code is designed in a fairly fundamentally different way to most IP stacks. Most systems rely on polling information out of the network code, which has to buffer the information until it is requested.
The Nut/Net IP stack however uses a dataflow architecture where data is pushed up the protocol layers immediately after data has been received. The data does not get buffered unless one of the layers makes a policy decision to do so. Generally data will be pushed all the way up to the socket API.
In a small system this design reduces memory requirements, eliminates expensive queueing and threading operations.