– Each layer delivers a service to the layer above.
– Each layer performs what it is meant to do and does not care about the layers below.
– Each layer on the source host communicates with its peer layer on the destination host → this is called Peer-layer communication
– Communication between layers of a same host is vertical in both directions
– We can change the implementation of a layer, as long as we preserve the inputs and outputs with the upper and lower layers
– A cross-layer implementation is a protocol definition that spans more than one layer. Cross-layer implementations reduce the flexibility of Internet.
Advantage of TCP/IP Layering
Layering reduces the complexity of communication by breaking it into smaller pieces. E.g: computer programming (programming language, compiler, linker…). Each layer benefits from the network abstraction of the lower layers. Each layer “does not care” about the lower layers → separation of concerns.