Accepted rules of communication so devices can be compatible and communicate reliably
Protocols
Sets of rules for communication and enabling devices to communicate reliably
Standardized playing field where all devices agree to the same rules to communicate with any device worldwide
Layers
Levels of abstraction where each layer is responsible for different parts of the communication process
Layers in TCP/IP protocol suite
Application layer
Transport layer
Network layer
Link layer
Layers
Modular and distinct, can operate independently but together complete the communication process
Manageable self-contained parts, each with a very specific role
Allows for developing new protocols that need to work with the above and below layers
Increasing level of abstraction from link layer to application layer
Decomposition is the general process of breaking down a complex process into manageable self-contained parts, each representing a layer
Having self-contained layers means changing one layer won't affect the others as long as the input/output format remains the same
At the application layer are web browsers, email clients etc. which are the furthest abstraction from the actual data transfers happening at the lower layers
The communication process flows from the application layer down through the transport, network and link layers, and conversely when receiving data it flows up from the link layer to the application layer