- Internet has multiple protocol layers
- Each layer implements a service, relying on services provided by layers below
- Enables encapsulation
Example of layered network system:
- Application programs (Application Layer)
- Process-to-process channels (Transport Layer)
- Host-to-host connectivity (Network Layer and Link Layer (?))
- Hardware (Physical Layer)
Internet protocol stack (OSI 7-layer model)
- The bottom 3 layers are implemented on all nodes
- Network, data link, physical
- The top layers typically run only on end-to-end hosts rather than intermediate switches and routers
- Application, presentation, session, transport
Application layer
Application layer
Addressing
Link to original
- In previous layers, we used IP addresses
- Now, we use URLs and email addresses (provided by human)
- So, need a database mapping URLs to IP addresses
- Distributed
- Hierarchical
- At the application layer
- DNS!
Presentation layer
Presentation layer
- Concerned with format of data exchanged between peers
- Includes data encryption
Considered part of Transport Layer
Link to original
Session layer
Session layer
- Provides namespace to tie together the potentially different transport streams that are part of a single application
Considered part of Transport Layer
Link to original
Transport layer
Transport-layer
Network layer
Network layer
Routing of packets from source to destination
Link to original
- IP, routing protocols
- Ensures data delivery
- Unit of data exchanged between nodes in this layer is packet
Link layer
Link layer
- Data transfer between neighboring network elements
- e.g. Ethernet, 802.11 (WiFi), P2P/PPP
- Collects a stream of bits into a larger aggregate called a frame
- Network adapters, along with device drivers in OS implement the protocol in this layer
- Frames are actually delivered to hosts
Tip
At the link layer, everything is a broadcast, and unicast is only an illusion.
Link Layer Responsibilities
Link to original
- Single-hop addressing (e.g. Ethernet addresses)
- Media access control: Multi-Access Protocol
- Link-layer congestion control
- Collision detection/collision avoidance
- Single-hop acknowledgments
- Automatic Repeat Query (ARQ)
- Flow control
- Not implemented in wired LAN (e.g. Ethernet)
Physical layer
Physical-layer