Network protocols
Protocols are agreed standards specifying and governing communication between nodes on a network.
Network protocols are typically layered. The implmentation of a network layer is a stack.
Stacks enshrine encapsulation: not every layer has to be directly concerned with every other layer. Only adjacent layers that interface with each other need to be in contact.
A prime example of a layered network stack is the internet_protocol_suite.