-
-
Notifications
You must be signed in to change notification settings - Fork 4
Networking Stack
Full in-kernel TCP/IP stack: RTL8139 → Ethernet → ARP → IP → ICMP/UDP/TCP → DNS/HTTP.
See also: Drivers, Shell, Architecture
PCI NIC, I/O + MMIO BARs, 4 TX descriptors, circular RX buffer, link detection.
16-entry cache with TTL. Sends "who has" broadcasts, handles replies, responds to requests.
IPv4 send/receive with header checksum. Routes off-subnet via gateway, delivers loopback internally.
Responds to echo requests (type 8) with replies (type 0). ping CLI sends 4 requests with RTT/loss stats.
Raw datagram send + port-based listener registration.
Full state machine: CLOSED → SYN_SENT → ESTABLISHED → FIN_WAIT → TIME_WAIT → CLOSED. 8 connections.
- listen/accept: Passive open for TCP servers
- Retransmission (RTO): Exponential backoff 300 ms → 2400 ms cap, 5 retries max
- Loopback: 127.0.0.x via software ring (no NIC needed)
DISCOVER → OFFER → REQUEST → ACK. Sets local_ip, netmask, gateway.
Single A-record UDP query to configured server.
HTTP/1.1 GET with TCP, Host header, timeout-based receive.
Contact: uselessalter on Discord | nyxos@inbox.lv | GitHub