Layered models of communication networks
Layered models of communication networks
Layered models of communication networks
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Protocols<br />
• Diplomats use rules, called protocols, as<br />
guides for formal interactions<br />
• A <strong>communication</strong> protocol is a set <strong>of</strong> rules<br />
that specify the format and meaning <strong>of</strong><br />
messages exchanged between computers<br />
across a network<br />
• A set <strong>of</strong> related protocols that are designed<br />
for compatibility are called protocol suite<br />
CMPE 80N - Introduction to Networks and the Internet<br />
Human and Computer Protocols<br />
Human Protocol Computer Protocol<br />
Hi<br />
Hi<br />
Got the<br />
time?<br />
2:00<br />
time<br />
CMPE 80N - Introduction to Networks and the Internet<br />
TCP connection<br />
req.<br />
TCP connection<br />
reply.<br />
Get http://gaia.cs.umass.edu/index.htm<br />
<br />
1<br />
2<br />
1
<strong>Layered</strong> Protocol Design<br />
• Layering model is a solution to the problem<br />
<strong>of</strong> complexity in network protocols<br />
• The model divides the network protocols into<br />
layers, each <strong>of</strong> which solves part <strong>of</strong> the<br />
network <strong>communication</strong> problem<br />
– Each layer has its own protocol!<br />
• Each layer implements a service to the layer<br />
above<br />
– Via its own internal layer actions<br />
– Relying on layers provided by the layers below<br />
CMPE 80N - Introduction to Networks and the Internet<br />
Example: Organization <strong>of</strong> Air Travel<br />
• A series <strong>of</strong> steps:<br />
Arrival at airport<br />
baggage (check)<br />
gates (load)<br />
runway take<strong>of</strong>f<br />
airplane routing<br />
CMPE 80N - Introduction to Networks and the Internet<br />
Departure from airport<br />
baggage (claim)<br />
gates (unload)<br />
runway landing<br />
airplane routing<br />
airplane routing<br />
3<br />
4<br />
2
Organization <strong>of</strong> air travel: a different view<br />
Airport arrival<br />
baggage (check)<br />
gates (load)<br />
runway take<strong>of</strong>f<br />
airplane routing<br />
airplane routing<br />
CMPE 80N - Introduction to Networks and the Internet<br />
Airport departure<br />
baggage (claim)<br />
gates (unload)<br />
runway landing<br />
airplane routing<br />
<strong>Layered</strong> Air Travel: Services<br />
Airport-to-Airport delivery <strong>of</strong> person+bags<br />
baggage-claim-to-baggage-claim delivery<br />
people transfer: loading gate to arrival gate<br />
runway-to-runway delivery <strong>of</strong> plane<br />
airplane routing from source to destination<br />
CMPE 80N - Introduction to Networks and the Internet<br />
5<br />
6<br />
3
Distributed implementation <strong>of</strong> layer functionality<br />
Departing airport<br />
Arrival<br />
baggage (check)<br />
gates (load)<br />
runway take<strong>of</strong>f<br />
airplane routing<br />
intermediate air traffic sites<br />
CMPE 80N - Introduction to Networks and the Internet<br />
Departure<br />
airplane routing airplane routing<br />
airplane routing<br />
baggage (claim)<br />
gates (unload) airport<br />
runway landing<br />
airplane routingarriving Example: The ISO Reference Model<br />
CMPE 80N - Introduction to Networks and the Internet<br />
7<br />
8<br />
4
Layers <strong>of</strong> Interest in ISO Model<br />
• Layer 7: Application<br />
– Application-specific protocols (e.g. ftp, http, smtp)<br />
• Layer 4: Transport<br />
– Reliable delivery <strong>of</strong> data between computers<br />
• Layer 3: Network<br />
– Address assignment and data routing across a network<br />
• Layer 2: Data Link<br />
– Delivery <strong>of</strong> frames through physical network (e.g.,<br />
Ethernet, Token Ring)<br />
• Layer 1: Physical<br />
– Basic network hardware (makes sure that if you send a<br />
“1” , you receive a “1”)<br />
CMPE 80N - Introduction to Networks and the Internet<br />
Internet Protocol Stack<br />
application<br />
transport<br />
network<br />
link<br />
physical<br />
CMPE 80N - Introduction to Networks and the Internet<br />
9<br />
10<br />
5
<strong>Layered</strong> S<strong>of</strong>tware Implementation<br />
CMPE 80N - Introduction to Networks and the Internet<br />
<strong>Layered</strong> S<strong>of</strong>tware<br />
• The s<strong>of</strong>tware for each layer depends only on<br />
the services <strong>of</strong> the s<strong>of</strong>tware provided by lower<br />
layers<br />
• The s<strong>of</strong>tware at layer n at the destination<br />
receives exactly the same protocol message<br />
sent by layer n at the sender<br />
CMPE 80N - Introduction to Networks and the Internet<br />
11<br />
12<br />
6
Layering Principle<br />
CMPE 80N - Introduction to Networks and the Internet<br />
Layering: logical <strong>communication</strong><br />
Each layer:<br />
• distributed<br />
• “entities” implement<br />
layer functions at<br />
each node<br />
• entities perform<br />
actions, exchange<br />
messages with<br />
peers<br />
application<br />
transport<br />
network<br />
link<br />
physical<br />
application<br />
transport<br />
network<br />
link<br />
physical<br />
CMPE 80N - Introduction to Networks and the Internet<br />
application<br />
transport<br />
network<br />
link<br />
physical<br />
network<br />
link<br />
physical<br />
application<br />
transport<br />
network<br />
link<br />
physical<br />
13<br />
14<br />
7
Layering: logical <strong>communication</strong><br />
E.g.: transport<br />
• take data from<br />
application<br />
• add addressing,<br />
reliability check info to<br />
form “datagram”<br />
• send datagram to peer<br />
• wait for peer to ack<br />
receipt<br />
• analogy: post <strong>of</strong>fice<br />
data<br />
application<br />
transport<br />
network<br />
link<br />
physical<br />
application<br />
transport<br />
network<br />
link<br />
physical<br />
CMPE 80N - Introduction to Networks and the Internet<br />
data<br />
ack<br />
application<br />
transport<br />
network<br />
link<br />
physical<br />
network<br />
link<br />
physical<br />
Layering: physical <strong>communication</strong><br />
data<br />
application<br />
transport<br />
network<br />
link<br />
physical<br />
application<br />
transport<br />
network<br />
link<br />
physical<br />
application<br />
transport<br />
network<br />
link<br />
physical<br />
CMPE 80N - Introduction to Networks and the Internet<br />
network<br />
link<br />
physical<br />
data<br />
application<br />
transport<br />
network<br />
link<br />
physical<br />
data<br />
application<br />
transport<br />
network<br />
link<br />
physical<br />
15<br />
16<br />
8
Messages and Protocol Stack<br />
• On the sender, each layer:<br />
– Accepts an outgoing message from layer above<br />
– Adds a header for that layer and performs other<br />
processing<br />
– Passes resulting message to next lower layer<br />
• On the receiver, each layer<br />
– Receives an incoming message from layer below<br />
– Removes header for that layer and performs other<br />
processing<br />
– Passes resulting message to next higher layer<br />
CMPE 80N - Introduction to Networks and the Internet<br />
Messages and Protocol Stack<br />
• Example: Internet stack<br />
Ht<br />
Hn Ht<br />
Ht<br />
Hn<br />
Hl<br />
M<br />
M<br />
M<br />
M<br />
source destination<br />
application<br />
transport<br />
network<br />
link<br />
physical<br />
application<br />
transport<br />
network<br />
link<br />
physical<br />
CMPE 80N - Introduction to Networks and the Internet<br />
Ht<br />
Hn Ht<br />
Hl Hn Ht<br />
M<br />
M<br />
M<br />
M<br />
17<br />
message<br />
segment<br />
datagram<br />
frame<br />
18<br />
9
Control Packets<br />
• Protocol layers <strong>of</strong>ten need to communicate<br />
directly without exchanging data<br />
– To acknowledge incoming data<br />
– To request next data packet<br />
• Layers use control packets<br />
– Generated by layer n on sender<br />
– Interpreted by layer n on receiver<br />
– Transmitted like any other packet by layers<br />
n-1 and below<br />
CMPE 80N - Introduction to Networks and the Internet<br />
19<br />
10