Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Layering
End-to-End Arguments
A Case Study: the Internet
istoica@cs.berkeley.edu 2
What is Layering?
istoica@cs.berkeley.edu 3
Why Layering?
istoica@cs.berkeley.edu 4
Why Layering?
Solution: introduce an intermediate layer that provides a
unique abstraction for various network technologies
Intermediate
layer
istoica@cs.berkeley.edu 5
Layering
Advantages
- Modularity – protocols easier to manage and maintain
- Abstract functionality –lower layers can be changed
without affecting the upper layers
- Reuse – upper layers can reuse the functionality
provided by lower layers
Disadvantages
- Information hiding – inefficient implementations
istoica@cs.berkeley.edu 6
ISO OSI Reference Model
istoica@cs.berkeley.edu 7
ISO OSI Reference Model
Seven layers
- Lower three layers are peer-to-peer
- Next four layers are end-to-end
Application Application
Presentation Presentation
Session Session
Transport Transport
Network Network Network
Datalink Datalink Datalink
Physical Physical Physical
Physical medium
istoica@cs.berkeley.edu 8
Data Transmission
A layer can use only the service provided by the layer
immediate below it
Each layer may change and add a header to data packet
data data
data data
data data
data data
data data
data data
data data
istoica@cs.berkeley.edu 9
OSI Model Concepts
Service – says what a layer does
Interface – says how to access the service
Protocol – says how is the service implemented
- A set of rules and formats that govern the communication
between two peers
istoica@cs.berkeley.edu 10
Physical Layer (1)
istoica@cs.berkeley.edu 11
Datalink Layer (2)
Service:
- Framing, i.e., attach frames separator
- Send data frames between peers attached to the same physical
media
- Others (optional):
• Arbitrate the access to common physical media
• Ensure reliable transmission
• Provide flow control
Interface: send a data unit (packet) to a machine
connected to the same physical media
Protocol: layer addresses, implement Medium Access
Control (MAC) (e.g., CSMA/CD)…
istoica@cs.berkeley.edu 12
Network Layer (3)
Service:
- Deliver a packet to specified destination
- Perform segmentation/reassemble
(fragmentation/defragmentation)
- Others:
• Packet scheduling
• Buffer management
Interface: send a packet to a specified destination
Protocol: define global unique addresses;
construct routing tables
istoica@cs.berkeley.edu 13
Data and Control Planes
istoica@cs.berkeley.edu 14
Example: Routing
Data plane: use Forwarding Table to forward packets
Control plane: construct and maintain Forwarding
Tables (e.g., Distance Vector, Link State protocols)
Fwd table
Fwd table
H2 R6
H2 R4 …
H1 …
H2
R4
R1
R3 R6
R2
R5
istoica@cs.berkeley.edu 15
Transport Layer (4)
Service:
- Provide an error-free and flow-controlled end-to-end
connection
- Multiplex multiple transport connections to one network
connection
- Split one transport connection in multiple network
connections
Interface: send a packet to specify destination
Protocol: implement reliability and flow control
Examples: TCP and UDP
istoica@cs.berkeley.edu 16
Session Layer (5)
Service:
- Full-duplex
- Access management, e.g., token control
- Synchronization, e.g., provide check points for long transfers
Interface: depends on service
Protocols: token management; insert checkpoints,
implement roll-back functions
istoica@cs.berkeley.edu 17
Presentation Layer (6)
istoica@cs.berkeley.edu 18
Application Layer (7)
istoica@cs.berkeley.edu 19
OSI vs. TCP/IP
OSI: conceptually define: service, interface, protocol
Internet: provide a successful implementation
istoica@cs.berkeley.edu 20
Key Design Decision
istoica@cs.berkeley.edu 21
Overview
Layering
End-to-End Arguments
A Case Study: the Internet
istoica@cs.berkeley.edu 22
End-to-End Argument
istoica@cs.berkeley.edu 23
Example: Reliable File Transfer
Host A Host B
Appl. Appl.
OS OK OS
istoica@cs.berkeley.edu 24
Discussion
istoica@cs.berkeley.edu 25
Discussion
istoica@cs.berkeley.edu 26
Trade-offs
istoica@cs.berkeley.edu 27
Rule of Thumb
istoica@cs.berkeley.edu 28
Other Examples
istoica@cs.berkeley.edu 29
Overview
Layering
End-to-End Arguments
A Case Study: the Internet
istoica@cs.berkeley.edu 30
Goals
0 Connect existing networks
- initially ARPANET and ARPA packet radio network
1. Survivability
- ensure communication service even in the presence of
network and router failures
2. Support multiple types of services
3. Must accommodate a variety of networks
4. Allow distributed management
5. Must be cost effective
6. Allow host attachment with a low level of effort
7. Allow resource accountability
istoica@cs.berkeley.edu 31
Connect Existing Networks
istoica@cs.berkeley.edu 32
Survivability
istoica@cs.berkeley.edu 33
Services
istoica@cs.berkeley.edu 34
Key Advantages
istoica@cs.berkeley.edu 35
What About Other Services?
Multicast?
Quality of Service (QoS)?
istoica@cs.berkeley.edu 36
Summary: Layering
istoica@cs.berkeley.edu 37
Summary: End-to-End Arguments
istoica@cs.berkeley.edu 38
Summary
istoica@cs.berkeley.edu 39