Skip to content

networking refactor - #72

Draft
CodeAnarchist wants to merge 46 commits into
differrari:threadingfrom
CodeAnarchist:net
Draft

networking refactor#72
CodeAnarchist wants to merge 46 commits into
differrari:threadingfrom
CodeAnarchist:net

Conversation

@CodeAnarchist

Copy link
Copy Markdown
Contributor

main changes:
moved packet handling to netpkt across device-L4 and cleaned packet ownership
refactored socket layer, moved it to c
added raw, packet and control sockets
sock additional socket options and filtering
reworked tcp around separate core/rx/tx/timer paths
improved tcp retransmission and recovery, SACK/DSACK, out-of-order handling, flow control, sequence wrapping, nagle, keepalive, passive connections and connection teardown
improved udp buffering and multicast behavior
added tcp limits
made ARP and NDP non-blocking
added net control support for interfaces, addresses, routes etc.
improved ip v4/v6 routing and fragmentation/reassembly handling
added ipv4 dad
improved dns
expanded http client/server support with chunked bodies, keep-alive, framing and policy checks, redirects, range responses
moved ping and tracert to raw sockets
added curl
added raw and packet socket filters
improved virtio networking with RX/TX batching and cleaner packet paths
improved multicast handling and propagation of interface membership
various fixes

it should all be well tested. the only parts im still somewhat unsure about are some edge cases around udp multicast and http chunked bodies

CodeAnarchist and others added 30 commits April 9, 2026 17:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant