Review of networking concepts

advertisement
An overview of networks
Malathi Veeraraghavan
Univ. of Virginia
Updated: Aug. 29, 2013
• Outline
• Contemporary networks
• Networks:
• single-link network to an internetwork
• For each type of network: tasks & layers
• Mechanisms for each task
• Protocols and Protocol reference models
• Standards
1
Networks at the edges
Contemporary networks
1.
2.
3.
4.
Ethernet switched networks
Wireless LANs: IEEE 802.11
Cellular networks: 3G and 4G (WiMAX and LTE)
Residential access networks, such as Passive Optical Networks
(PONs) and cable (DOCSIS)
5. Data center networks, such as InfiniBand and FibreChannel
6. Wireless sensor networks: Zigbee, IEEE 802.15.4
7. Vehicular networks: IEEE 1609.3 over 802.11p
8. Satellite networks and disruption tolerant networks
9. Supervisory Control and Data Acquisition (SCADA) networks for
electric grid, water/sewage, etc.
10. Backbone circuit-switched networks (SONET, WDM)
11. Dynamic circuit networks
12. Public-Switched Telephone Network (PSTN)
2
Where/what is the
Internet?
• In this listing of contemporary networks
– No mention of the Internet
• Internet is “THE” global internetwork
– Connects enterprise, home, provider networks
• How? Using gateways called IP routers
– IP routers are gateways that interconnect
networks that are owned and operated by
different enterprises, homes, and providers
3
Increasingly complex networks
•
•
•
•
Unshared single-link network
Shared single-link network
Multiple-link network (with switches)
Internetwork (with gateways)
4
Simplest type of network:
Unshared single-link network
Host
Host
Single-link network with one sender and one receiver
e.g., private road
Hosts are data sources and sinks
5
Shared single-link network
Host
Symbol for wireless link
Host
Host
Single-link network with multiple senders and multiple receivers
e.g., shared road
http://en.wikipedia.org/wiki/File:Wireless-icon.png
6
Analogy of a shared
single link: a shared
road with multiple
sources of traffic
(cars) - multiple
driveways connected
to single shared road
Courtesy: http://mars.gmu.edu/dspace/bitstream/1920/2497/1/pca_608_23_16n.jpg 7
Multiple-link network
One network – same type of switches
Switch
Host
Host
Switch
Host
Switch
Host
e.g., roadways network (an intersection is comparable to a switch)
8
Analogous to a switch on
roadways network
Courtesy: http://en.wikipedia.org/wiki/Image:Cloverleaf.jpg
Road intersection
with traffic lights
9
Train station analogous
to a switch
Courtesy: Washington DC Metro web site
10
Internetwork:
Multiple networks
An internetwork
Network 3
Host
Host
Switch
Switch
Switch
Host
Switch
Host
Gateway
Network 1
Network 2
e.g. airlines network
e.g. roadways network
e.g. airport
11
Tasks
• What tasks are required for
successful communication in each of
these types of networks?
– where should the hardware or software
carrying out these tasks be
implemented?
• in hosts?
• in switches?
• in gateways?
12
Tasks in an
unshared single-link network
• What tasks are required for
successful communication across
one link, with one sender and one
receiver?
• Where are these tasks
executed?
– Only possibility: Hosts
13
Tasks in an
unshared single-link network
• Three sets of tasks:
– Tasks specific to the application programs
generating data and receiving data
• Example?
– Transmit and receive data bits across a link
– Error control and flow control
• Error control: Detect and recover from errors
– bit errors caused by interference and electrical noise
• Flow control: Handle mismatches in speed
– between receiving application program and sending
application program
14
Outline
• Outline
• Contemporary networks
• Networks
• For unshared single-link network
• Tasks
 Layers
• Mechanisms for each task
• Protocols and Protocol reference models
• Standards
15
Layer
• What is a layer?
– A grouping of a set of tasks
– Hardware/software that implements this
grouping of tasks
16
Layers in an
unshared single-link network
Tasks
Layer
Application-specific tasks, Application layer
e.g. email, web
Error control and flow
control
Send/receive data bits
Data-link layer
(DLL)
Physical layer
(PHY)
17
Why the name "layers?"
Application
layer
Application
layer
1
5
Data link
layer
Data link
layer
2
4
Physical
layer
Host
3
Physical
layer
Draw in response
arrows 6 through 10
Host
• Because each layer uses the services
of the layer below it
18
Increasingly complex networks
• Unshared single-link network
Shared single-link network
What additional tasks are required?
How are these grouped into additional
layers?
• Multiple-link network (with switches)
• Internetwork (with gateways)
19
Sharing analogy
• How are roads shared?
– multiple lanes
• frequency-based sharing - radio AM/FM
stations
– back-to-back cars on a single lane
• time-based sharing
20
Shared single-link network
Wireless link:
what is sent by one
can be heard by all
Let’s call this
Scenario 1
for creating
a shared single link
Host
Host
Host
Single-link network with multiple senders and multiple receivers
21
Other scenarios for
shared single-link networks
Host 2
Host 1
Scenario 2
App. 1
App. 2
App. 1
App. 2
Multiple applications
Shared single wired link
Multiple links, correct?
So, why is it labeled "single" link?
Because only one host can send
at a time
Hub
Multipoint repeater
Host
Host
Host
Scenario 3
22
What is a hub?
• Multipoint repeater or hub
– Simple physical-layer device that
forwards all packets received on one link
to all other links
– So how does a host receiving a packet
know whether the packet is meant for
it?
23
“Sharing” Need for addresses
• On a Shared single-link network
– A sending host needs to indicate destination
for its packet
– How is this done?
• By adding an address to the packet header.
– What is a packet? A set of data bits
– What is a header? A few bits tagged on at the front of
the packet
• Example: Ethernet (MAC) address – 6 bytes
24
Hub: multipoint repeating
send to all links except input link
packet
Hub or multipoint repeater
step 1
Host A
step 2
step 2 step 2
Host B
Host C
Host D
Step 3: All three hosts compare their address to that in the
arriving packet header; only B finds a match and
delivers data to higher layer; Rest drop the packet
• Packet carries destination address “B” in
its header; example packet is carrying the
data bits 1000001 (which is ASCII for ‘A’)
25
Cost of no buffers
packet
Host A
Hub or multipoint repeater
Host B
Host C
Host D
• If hosts A and D simultaneously send packets, they will
collide, even if they are headed to different destinations
because all packets are sent on all other links
• Bits cannot be deciphered: both packets are “lost”
• No buffers in the hub to hold one while processing the
other
26
Differences between
hub and switch
Buffers to hold
packets
Forwards
packets to
Hub
No
all links except
input link
Switch
Yes
specific link
based on
forwarding table
27
What a switch does instead
(recall the term "switch" was used in
multiple-link networks)
packet
I
SWITCH
II
III
step 1
Host A
Forwarding table
Destination Output port
IV
B
step 3
Host B
Host C
Host D
II
Step 2: Switch looks up
forwarding table
Step 3: Switch sends the packet on only port II
unlike the hub which transmits it on all ports
• Packet carries destination address “B” in
its header; example packet is carrying the
data bits 1000001 (which is ASCII for ‘A’)
28
Single link vs. multiple links
• Hub:
– Single-link network because at a time
only one sender can send data
• Switch:
– Multiple-link network because multiple
senders can simultaneously send data
• even if two packets are destined to the same
host, the switch can buffer one packet (hold
in memory) while sending the first
29
Coming back to our
tasks/layers thread
• Recap: Having understood the three
scenarios for shared single-link networks:
– Wireless link
– Two applications between hosts
– Single wired link with a hub
• What are the additional tasks and layers
needed in these shared single-link
networks?
30
What additional tasks are needed in a
shared single-link network?
• Tasks related to sharing, e.g., decide
which sender gets to send next
– a.k.a (also known as)
• multiplexing schemes
• Medium Access Control (MAC) schemes
31
What additional layers are needed in shared
single-link networks?
• MAC tasks are implemented in a
– sub-layer within the data-link layer
• In other words, data-link layer in a shared
single-link network consists of
– error control
– flow control
– multiplexing/MAC
32
Layers in an
shared single-link network
Tasks
Layer
Application-specific tasks,
e.g. email, web
Application layer
Error control, flow control, Data-link layer
and multiplexing/MAC
(with MAC sublayer)
Send/receive data bits
Physical layer
(PHY)
Compare this slide with slide 15
33
Where are these layers
implemented?
• All three layers at the hosts
– For all three scenarios
• In scenario 3:
– Hubs implement only the physical
layer
• which consists of the tasks of ........
34
Increasing complexity
of networks
• Unshared single-link network
• Shared single-link network
Multiple-link network (with switches)
• Additional tasks?
• Additional layers?
• Internetwork (with gateways)
35
Multiple-link network
One network – same type of switches
Host
Host
Switch
Host
Switch
Host
e.g., roadways network (with road intersection comparable to a switch)
36
What additional tasks are needed in
multiple-link networks?
• Switching: forward data units (groups
of bits) from one link to another
• End-to-end error control and flow
control
– Why?
• Switches can drop data due to buffer
overflows
37
Additional layers in an
multiple-link network
Tasks
Layer
Switching
Network layer
End-to-end error control
and flow control
Transport layer
38
Where are these layers
implemented?
Application
layer
Application
layer
Transport
layer
Transport
layer
Network
layer
Network
layer
Network
layer
Network
layer
Data link
layer
Data link
layer
Data link
layer
Data link
layer
Data link
layer
Data link
layer
Physical
layer
Physical
layer
Physical
layer
Physical
layer
Physical
layer
Physical
layer
Host
Host
Switch
Host
Switch
Host
39
Why is "network layer" shown at
the end hosts?
• Answer:
– Network-layer (NL) implementation at a host supports the
network-layer switching task implemented at the switch
– at the sending host: NL adds destination address to packet
headers
• this allows the switch to forward packets to different output ports
(links) based on destination addresses
• analogy: who writes the address on an envelope sent through USPS?
– at the receiving host: NL checks if destination address in
packet header corresponds to host's address
• receive the packet it there is a match
• otherwise, drop the packet
40
Interesting to note
• That the network-layer tasks
implemented at the switch are
different from the network-layer
tasks implemented at end hosts
41
Layers in a
multiple-link network
Tasks
Layer
Application-specific tasks, e.g. email, web
Application layer
End-to-end error control and flow control
Transport layer
Switching
Network layer
Error control, flow control,
multiplexing/MAC
Data-link layer
(with MAC sublayer)
Send/receive data bits
Physical layer
42
Increasing complexity
of networks
• Unshared single-link network
• Shared single-link network
• Multiple-link network (with switches)
Internetwork (with gateways)
43
Internetwork:
Multiple networks
An internetwork
Host
Host
Switch
Switch
Switch
Host
Switch
Host
Gateway
Network 1
e.g. roadways network
Network 2
e.g. airlines network
e.g. airport
Gateways are the "switches" of the internetwork
forwarding data units between networks
44
Layers in an internetwork
• Complex in a general context
• Example: the Internet
– TCP/IP model
– Gateway: IP router
• Another example: VoIP
– Public Switched Telephone Network
(PSTN) connected to the Internet
– Media Gateway (with controller)
45
Putting together the four “types” of
networks introduced in lesson
• Four types of (increasingly complex)
networks described in this lesson was just
for purposes of understanding all the
various tasks involved in communications
• In reality, most hosts are connected to the
Internet (which is an internetwork)
• These "four types" are just types of
communication instances rather than
networks
46
Communication instances
Comm. instance 3:
multiple-link
An internetwork
Host
Host
Switch
Host
Host
Switch
Host
Gateway
Hub
Network 1
Switch
Switch
Network 2
Host
Comm. instance 2:
shared single-link
Comm. instance 4:
inter-network
Comm. instance 1: unshared single-link
left out of the figure because it is usually only in labs that two hosts are
directly connected to each other by an unshared link
47
Network management tasks
• FCAPS:
–
–
–
–
–
Fault management
Configuration management
Accounting
Performance monitoring
Security
48
Outline
• Outline
• Contemporary networks
• Networks:
• from a simple single-link network to an
internetwork
• Tasks
 Layers
 Two ends of a layer
• Mechanisms for each task
• Protocols and Protocol reference models
• Standards
49
Are the implementations of a layer at
the two communicating ends the same?
• Sometimes yes.
• Sometimes no.
• Physical layer example
• Application layer example
• Network layer example: already shown to
be different at hosts and switches
50
Physical layer example
• Bidirectional links (half-duplex or duplex)
– both ends have transmit and receive
capabilities
– Same layer-1 implementation at both ends
• Unidirectional link (simplex link)
– one end has transmit capability
– other end has receive capability
51
Half duplex
Transmitter (Tx)
Transmitter (Tx)
Receiver (Rx)
Receiver (Rx)
One way at a time
Transmitter (Tx)
Transmitter (Tx)
Receiver (Rx)
Receiver (Rx)
52
Full duplex
Transmitter (Tx)
Receiver (Rx)
Simultaneous
Transmitter (Tx)
Receiver (Rx)
Example optical fiber
Recall the two connectors (blue and red) at each end
53
Application layer
• Example in which the required tasks
differ at the two ends:
– Web browsing
• The web server program waits for clients to
connect to it and responds to requests by
serving out files
• The web client program receives inputs from
human users and sends corresponding
requests to the web server
54
At the application layer
• Two modes of interaction:
– Client-server
• the application-layer subroutine at the
server is different from that at the client
– Peer-to-peer
• the application-layer subroutines are the
same at both end hosts
55
Client-server mode
• The server only serves out files
while the client only requests
files; example: web server access
56
Courtesy: A. Tanenbaum & Prentice Hall
Peer-to-peer mode
• Both ends have the same
implementation; example: telephony
Courtesy: A. Tanenbaum & Prentice Hall
57
Outline
• Outline
• Contemporary networks
• Networks:
• from a simple single-link network to an
internetwork
• Tasks and Layers
 Mechanisms for each task
• Protocols and Protocol reference models
• Standards
58
Application layer:
Source coding
•
Block-oriented
–
–
•
Text: ASCII (7bits for each character) and EBCDIC; extended ASCII uses 8 bits
per character
•
Compression techniques: "the" "e" occur a lot
•
Fax of an 8" by 10" page with 400 by 400 pixels per sq. inch results in 38400000bytes if
three bytes are used per pixel, one each to represent R, G, and B.
Images:
•
•
–
Using 1MB = 220 bytes, this is equal to 36.62MB
GIF: lossless compression
JPEG: lossy compression
Stream-oriented
–
Voice: PCM (Pulse Code Modulation); 8000 samples/sec; with 8 bits/sample, it
results in 64kbps signal
•
–
–
Compression techniques:
–
–
ADPCM Adaptive Differential Pulse Code Modulation - 32 kbps
Residual excited linear predictive coding - 8-16 kbps
Audio (music): needs 32-384kbps
Video:
•
•
•
H.261 coding: 176 by 144 or 352 by 258 frames at 10-30 frame/sec
Full motion MPEG-2
HDTV - 1920 by 1080 frames at 30 frames/sec (aspect ratio is important 16:9 vs. 4:3)
59
Metric Units
60
Memory vs. transmission rate
Memory
Expressed in Megabytes,
Gigabytes, Terabytes
Transmission rate kilobits/sec, Megabits/sec,
Gigabits/sec
With main memory or RAM capacity,
gigabyte means 1073741824 bytes;
To avoid confusion, let’s call this
GibiBytes (see next slide)
capitals for above 1 and small
for below m: milli
but M for Mega;
kbps: small k is an exception
61
Multiples of bytes
SI decimal prefixes
Name
Value
(Symbol)
3
kilobyte (kB)
10
IEC binary prefixes
Name
Value
(Symbol)
10
kibibyte (KiB)
2
megabyte (MB)
10
6
mebibyte (MiB)
2
20
gigabyte (GB)
10
9
gibibyte (GiB)
2
30
terabyte (TB)
10
12
tebibyte (TiB)
2
40
petabyte (PB)
10
15
pebibyte (PiB)
2
50
Exabyte (EB)
10
18
exbibyte (EiB)
2
60
SI: International System of units
IEC: International Electrotechnical Commission
source: http://en.wikipedia.org/wiki/Gibibyte
1-62
Physical layer
• Properties of communication channels
– Bandwidth
– Amplitude response function
– Phase shift function
– Attenuation
– Speed of light in the medium
Shannon's channel capacity
63
Shannon’s channel capacity
• Shannon's channel capacity, C: The
maximum rate of a noisy channel whose
bandwidth is H Hz is given by
– C=H log2(1+S/N) bits/sec
• S/N is the signal to noise fraction at the receiver
– log2x = (log10x)/log102
• If 2y = x, take log10 of both sides
– then y log102 = log10x.
Units: The term log2(1+S/N) has a unit of bits, which can be seen in a
derivation (not included in this course) of Shannon's equation.
Therefore the unit of C is bits/sec, since the unit of H is Hz or /sec
64
Physical layer
• Group of functions needed to move bits across a link:
“communications”
Data bits
1011000...
Data bits
1011000...
Channel (line)
coding
Channel (line)
coding
Modulator
Channel
Demodulator
Channel (line) coding: is a method for converting a binary information sequence
(1s and 0s) into a digital signal in a digital communications systems
Modulation: is a method for carrying an information signal on a carrier signal
65
What are the components of physicallayer delay on a single link?
• Physical-layer delay incurred in moving a data unit
(file or packet) of size S bits across an error-free
communication link
– Propagation delay
– Emission (transmission) delay
DELAY = TIME
Usage of the word: "I was delayed getting to the airport" implies
that there was an expectation of the time needed to drive there and
the speaker somehow got "delayed," perhaps due to heavy traffic.
In networking, we use the term "delay" to represent the time taken
to move the file. There is a component called "queuing delay" to
represent additional delay incurred by having to wait.
66
Propagation delay
• Propagation delay = L/v, where L is the length of
the link and v is the speed of light in the physical
medium (v) of the link
hence the dependence on
length of the link
bit travels at the speed
of light in the medium
1 bit
propagation delay
67
Emission (transmission) delay
• Emission (transmission) delay = S/r, where S is the
size of the data unit being transmitted in bits, and
r is the transmission rate in bits/sec
1 data unit of S bits:
a file or packet
Let’s say the link transmitter can
emit out 10 million bits/sec; this is r,
the transmission rate of the link. Hence the size
of the data unit, S, and the transmitter rate, r,
determine the emission delay
emission (transmission) delay:
time to emit (transmit) the data unit on to the link
68
Physical-layer delay to move
a data unit of size S bits
• Physical-layer delay = emission delay +
propagation delay
• Why do we not need to multiply
propagation delay by the number of
bits?
69
Packetization (AL) delay
(only for streamed data)
• Packetization delay is the time taken to create
data for the payload of a packet
–
–
–
–
Packetization delay = S/rcodec
rcodec: codec rate;
S = packet payload size
Packet consists of Header and Payload
Payload is the user-generated data
• Example: ADPCM voice codec fills packets with a
32-byte payload size
– what is the packetization delay to fill one packet
payload?
codec: coder/decoder
70
Examples of physical media
• Types of media:
–
–
–
–
Twisted pair
Coaxial cable
Optical fiber
Wireless
• Radio frequencies (RF)
• Infra-red (IR)
71
Electromagnetic spectrum
http://www.lbl.gov/MicroWorlds/ALSTool/EMSpec/EMSpec2.html
72
Layers in an
unshared single-link network
Tasks
Layer
Application-specific tasks, Application layer
e.g. email, web
Error control and flow
control
Send/receive data bits
Data-link layer
(DLL)
Physical layer
(PHY)
73
Data link layer:
Error control
• Error detection
– Parity check
– Cyclic Redundancy Code (CRC) or
polynomial codes
• Error correction
– Automatic Repeat reQuest (ARQ)
– Forward Error Correction (FEC)
74
Error correction:
Different ARQ schemes
• Stop-and-Wait
• Sliding window
– Go-Back N
– Selective repeat
75
ARQ error/loss detection
and recovery
•
•
•
•
Send a frame
Hold frame in a retransmission buffer at the sender so that if
there is a loss/error, the frame can be resent
Wait for Acknowledgment (ACK) from receiver
If a received frame had errors, the receiver detects the presence
of errors using CRC, and then sends a notification
– sender resends errored frame
•
•
But what happens if the frame itself was lost or the receiver's
notification of an error is lost?
Solution:
– Start a timer at the sender upon sending a frame
– If timer times out before ACK arrives, retransmit frame
76
Flow control problem
Host
Rsnd
Switch or host
Data units
Data-link layer (DLL)
T
Receive
buffer
Rrcv
Data-link layer (DLL)
H
T
Physical layer
•
•
H
T
transmission rate: r
Physical layer
Rates of the transmitter and receiver at the physical layer are matched.
The flow control problem arises because the layer above the DLL at the receiver
does not deplete the buffer at the same rate at which data is being passed to the
DLL at the sender (Rsnd  Rrcv)
H
77
Different rates
• Rsnd: Rate at which the higher layer
passes data to the DLL at the sender
• Rrcv: Rate at which the higher layer
removes data from the DLL buffer at
the receiver
• r: physical-layer transmission rate
78
Techniques for flow control
• Flow control mechanisms prevent buffer
overflow by regulating the rate at which
source is allowed to send information
–
–
–
–
Stop-and-wait flow control
ON-OFF flow control
Sliding window flow control
Rate based flow control (skip for this class)
79
Layers in an
shared single-link network
Tasks
Layer
Application-specific tasks,
e.g. email, web
Application layer
Error control, flow control, Data-link layer
and multiplexing/MAC
(with MAC sublayer)
Send/receive data bits
Physical layer
(PHY)
80
MAC
• MAC: Medium Access Control or Media
Access Control
– Set of functions to support the sharing of a
single link by multiple endpoints
• MAC vs. Multiplexing
– The term "MAC" is used to describe sharing
techniques on multi-access links
– The term "multiplexing" is used to describe
sharing techniques on point-to-point links
81
Types of links
• Multi-access links
– Typically used to connect multiple hosts to a
switch
– Cheaper than point-to-point links Host Host
– Mostly used in wireless networks
– Sometimes in wired networks through hub
• Point-to-point links
Host
Switch
......
Host
Host
Switch
– Typically used between switches
– Increasing typical between hosts and switches
in wired networks
Host
82
Classification of
Multiplexing/MAC techniques
Multiplexing/MAC techniques
Circuit-based multiplexing
Position based:
• space (reuse: cellular)
• time
• frequency
Each multiplexed data
stream occupies a
different position
Packet-based multiplexing
Packet header based:
• header carries
destination address
Each multiplexed data
stream consists of
packets with headers
carrying corresponding
destination addresses 83
Packet-based multiplexing
• For point-to-point links
– Scheduling techniques
• For multi-access links
– Random access schemes
84
Examples
Multiplexing/MAC
schemes
Types of links
Multi-access wireless link
Circuit-based
multiplexing
Cellular
(FDMA/TDMA)
Multi-access wired link
Packet-based
multiplexing
IEEE 802.11
(WiFi)
Ethernet hub
Point-to-point switch-toswitch link
PDH, SONET, WDM
Ethernet switch
Point-to-point endpoint-toswitch link
Plain Old Telephone
Service (POTS)
(space division
multiplexing)
Ethernet link
Phone links from residences carry only one phone call and
hence it is space-division multiplexing;
DSL: new technology for multiplexing data with voice
85
Layers in a
multiple-link network
Tasks
Layer
Application-specific tasks, e.g. email, web
Application layer
End-to-end error control and flow control
Transport layer
Switching
Network layer
Error control, flow control,
multiplexing/MAC
Data-link layer
(with MAC sublayer)
Send/receive data bits
Physical layer
86
Generic switch architecture
(circuit or packet)
•
Controller
Line cards
–
–
P
Line card
Line card
2
Line card
3
Line card
Line card
Input ports
Line card
•
Space switch
–
•
…
1
…
…
3
Line card
Space switch
2
Line card
…
1
P
Packet switch: header based
mux/demux
Circuit switch: position based
mux/demux
Crossbar, Clos
Controller
–
Processor: routing protocols and
signaling protocols
Data path
Control path
Output ports
87
Types of switches
Line card Circuit-switch (CS)
(multiplexing) (position-based)
Packet-switch (PS)
(header-based)
Controller
(admission
control or not)
Connectionless (CL)
(no admission control)
Connection-oriented (CO)
(admission control)
e.g., datagram: IP routers;
Ethernet switches
e.g., telephone network
circuit switches, SONET
switches
Virtual-circuit switches:
MPLS
• Routing: Required in controller for all three types of switches
• Signaling: Admission control – hence required only for connectionoriented switches (not included in this course)
88
A network of connectionless
packet switches
• Control path
– Switch controllers exchange routing
information and create forwarding tables
• Data path
– Packets carrying user data and
destination addresses in headers are
switched from input link to appropriate
output link based on forwarding table
entry for destination address
89
Layers in a
multiple-link network
Tasks
Layer
Application-specific tasks, e.g. email, web
Application layer
End-to-end error control and flow control
Transport layer
Switching
Network layer
Error control, flow control,
multiplexing/MAC
Data-link layer
(with MAC sublayer)
Send/receive data bits
Physical layer
Mechanisms considered under DLL
90
Other functions of
transport protocols
• Transport protocols include functions
that augment the services offered by
underlying network layers
– port-multiplexing to carry data from
many processes at the end hosts
– if network layer is connectionless packet
switched
• transport layer may include congestion
control to handle losses in switch buffers
91
Status check
• Outline
• Contemporary networks
• Networks:
• from a simple single-link network to an internetwork
• Tasks and Layers
• Mechanisms for each task
 Protocols and Protocol reference models
• Standards
92
What’s a protocol?
human protocols:
 “what’s the time?”
 “I have a question”
 introductions
… specific msgs sent
… specific actions taken when
msgs received, or other
events
network protocols:
 machines rather than
humans
 all communication activity
in Internet governed by
protocols
protocols define format, order of msgs
sent and received among network
entities, and actions taken on msg
transmission, receipt
Kurose and Ross
93
What’s a protocol?
a human protocol
a computer network protocol
Hi
TCP connection
request
Hi
TCP connection
response
Got the
time?
Get http://www.awl.com/kurose-ross
2:00
<file>
time
Kurose and Ross
94
Example of a protocol
Host
Switch or host
Packet
(110010100...)
Packet
(110010100...)
Data-link layer (layer 2)
Adds parity
Packet
(110010100...)
Physical layer (layer 1)
•
•
Parity
Checks parity
Data-link layer (layer 2)
Packet
(110010100...)
Parity
Physical layer (layer 1)
Parity bit added in data-link layer trailer for error detection
Protocol: (1) parity bit is added (2) sent at end (3) even or odd?
–
–
Agreement on these aspects is required at the data-link layer
implementations at the two ends: sending and receiving
these rules constitute the data-link layer protocol
95
Layers, protocols, and
interfaces
Application layer
Transport layer
Network layer
Data-link layer
Physical layer
96
Courtesy: A. Tanenbaum & Prentice Hall
source
message
segment
M
Ht
M
datagram Hn Ht
M
frame Hl Hn Ht
M
application
transport
network
link
physical
Encapsulation
link
physical
switch
destination
M
Ht
M
Hn Ht
Hl Hn Ht
M
M
application
transport
network
link
physical
Hn Ht
Hl Hn Ht
M
M
network
link
physical
Hn Ht
M
router
Kurose and Ross
97
Service:
interface between layers
98
Courtesy: A. Tanenbaum & Prentice Hall
What is a
protocol reference model?
• A grouping of layers
• Recall that we defined a layer as a
grouping of tasks.
99
Two protocol reference models
• OSI (Open Systems Interconnection)
reference model
– has two more layers, presentation and session
• The TCP/IP reference model
– Used in the Internet
100
OSI protocol reference model
(lists tasks for layers)
•
Application layer:
•
Presentation layer:
•
Session layer:
•
Transport layer:
•
Network layer:
•
Data link layer:
•
Physical layer:
–
Implements some application involving communications
–
–
Allow applications to interpret meaning of data
Examples: e.g., encryption, compression, machine-specific conventions (Endian)
–
–
–
Dialog control (track whose turn it is to send)
Token management (avoid same critical operation at the same time)
Synchronization (checkpoint long transmissions and continue after a crash)
–
End-to-end error control, flow control
–
Switching
–
–
Error control, flow control
Additionally for shared links: multiplexing/MAC
–
Transmitting and receiving data bits over a communication link
101
TCP/IP Protocol Stack
(Protocols in each layer)
•
Application layer protocols:
•
Transport layer protocols:
•
IP (Internet Protocol):
•
Link-layer/Physical-layer protocols:
– web: Mozilla client; Apache server; http (hypertext transfer protocol)
– email: Outlook client; mail server; smtp (simple mail transfer protocol)
– file transfers: SecureFX client; SFTP server; ftp (file transfer
protocol)
– remote login: telnet, SecureCRT
– TCP (Transmission Control Protocol)
– UDP (User Datagram Protocol)
– RTP (Real-time Transfer Protocol)
– IP (Internet Protocol)
– Provides packet forwarding between networks
– all the protocol layers necessary for communication across a specific
network
102
Layers in the TCP/IP model
Application Layer
TCP (Layer 4)
IP (Layer 3)
Layer 2 + Layer 1
(industry)
This usage of the term “Layer 2”
for anything below IP layer has
led to industry usage of the term
“Layer 2 switch” to describe a
switch within a subnetwork, e.g.,
Ethernet switch
103
Status check
• Outline
• Contemporary networks
• Networks:
• from a simple single-link network to an internetwork
• Tasks and Layers
• Mechanisms for each task
• Protocols and Protocol reference models
 Standards
104
Standards
• IETF: Internet Engineering Task Force
http://www.ietf.org
• ITU-T: International Telecommunications
Union – Telecommunications (part of the
United Nations)
• ANSI: American National Standards
Institute
• IEEE: Institute of Electrical and
Electronics Engineers
105
Role of standards bodies
• To define protocol specifications, which includes
– message formats
– parameter formats
• Goal: allow protocol implementations from two
different vendors to communicate
– analogy: two people speaking the same language have to
obey the rules of the language
• To allow for product differentiation
– implementation details are not standardized
106
IEEE 802 Standards
The 802 working
groups. The
important ones are
marked with *.
The ones marked
with  are
hibernating. The
one marked with †
was given up.
107
Courtesy: A. Tanenbaum & Prentice Hall
Summary
• Key points of this lesson:
– List the various tasks required for different
communication instances (across a unshared single link,
shared single link, across a multiple-link path via a switch)
– How are these tasks grouped into layers?
– List two modes used in application-layer implementations
– List mechanisms for each task type
– What is the purpose of protocols? Why is a protocol
needed for each layer?
– What are the two main protocol reference models?
– Name the main standards bodies. Why are standards
bodies important in this field?
108
Download