This directory contains documentation of various aspects of the netstack. Briefly:
CONTROL_FLOW.mddescribes and motivates how our control flow works
CORE_BINDINGS.mddescribes and motivates the split of our codebase into two separate “core” and “bindings” components
DETAILS.mddescribes various implementation details that are confusing enough to be worth calling out explicitly
DEVELOPMENT.mddescribes local environment set up for development.
HACKING.mdcontains instructions for hacking on the netstack
IMPROVEMENTS.mdcontains ideas for possible future improvements
IP_TYPES.mddescribes our use of types and traits to represent IP versions and addresses
PARSING_SERIALIZATION.mddescribes how we parse and serialize packets, and how we manage packet buffers
PUB_CRATE.mddescribes how we use visibility modifiers.
STATIC_TYPING.mdmotivates our enthusiastic use of static typing