E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
1
EE 586 Communication andSwitching Networks
Lecture 16
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-2
underline_base
Link layer, LANs: outline
5.1 introduction, services
5.2 error detection,correction
5.3 multiple accessprotocols (+ selectedsections in Ch. 6)
5.4 LANs
addressing, ARP
Ethernet
switches
VLANS
5.5 link virtualization:MPLS
5.6 data centernetworking
5.7 a day in the life of aweb request
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-3
underline_base
Link layer, LANs: outline
5.1 introduction, services
5.2 error detection,correction
5.3 multiple accessprotocols (+ selectedsections in Ch. 6)
5.4 LANs
addressing, ARP
Ethernet
switches
VLANS
5.5 link virtualization:MPLS
5.6 data centernetworking
5.7 a day in the life of aweb request
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-4
underline_base
Link layer: introduction
terminology:
hosts and routers: nodes
communication channels thatconnect adjacent nodes alongcommunication path: links
wired links
wireless links
LANs
layer-2 packet: frame,encapsulates datagram
data-link layer has responsibility of
transferring datagram from one node
to physically adjacent node over a link
access_point_stylized_small
access_point_stylized_small
access_point_stylized_small
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
car_icon_small
iphone_stylized_small
antenna_radiation_stylized
access_point_stylized_small
antenna_stylized
laptop_keyboard
screen
laptop_keyboard
screen
laptop_keyboard
screen
desktop_computer_stylized_medium
laptop_keyboard
screen
global ISP
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-5
underline_base
Where is the link layer implemented?
in each and every node
link layer implemented in adaptor(aka network interface card NIC) or ona chip
Ethernet card, 802.11 card;ZigBee, 802.15.4
implements link, physical layer
attaches into hosts system buses
combination of hardware, software,firmware
controller
physical
transmission
cpu
memory
host
bus
(e.g., PCI)
network adapter
card
application
transport
network
link
link
physical
http://www.pubnub.com/blog/wp-content/uploads/2014/07/InternetOfThingsHorizontal1.png
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-6
underline_base
Link layer services
framing:
encapsulate datagram into frame, adding header, trailer
MAC addresses used in frame headers to identifysource and destination
reliable delivery between adjacent nodes
we learned how to do this already (chapter 3)!
seldom used on low bit-error link (fiber, some twistedpair)
wireless links: high error rates
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-7
underline_base
error detection:
errors caused by signal attenuation, noise.
receiver detects presence of errors:
signals sender for retransmission or drops frame
error correction:
receiver identifies and corrects bit error(s) without resorting toretransmission
flow control:
pacing between adjacent sending and receiving nodes
Multiple access
Which host gets to send in a shared-medium?
Link layer services (more)
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-8
underline_base
Error Correction
522 Single Bit Parity
single bit parity:
detect single biterrors
523 Double Bit Parity
two-dimensional bit parity:
 detect and correct single bit errors
0
0
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-9
underline_base
Cyclic redundancy check
more powerful error-detection coding
view data bits, D, as a binary number
choose r+1 bit pattern (generator), G
goal: choose r CRC bits, R, such that
 <D,R> exactly divisible by G (modulo 2)
receiver knows G, divides <D,R> by G.  If non-zero remainder:error detected!
can detect all burst errors less than r+1 bits
widely used in practice (Ethernet, 802.11 WiFi, ATM)
524 CRC code
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-10
CRC example
want:
D.2r XOR R = nG
equivalently:
D.2r = nG XOR R
equivalently:
    if we divide D.2r byG, want remainder Rto satisfy:
R = remainder[           ]
D.2r
G
underline_base
1001
101110000
1001
1
101
01000
000
1010
1001
010
000
100
000
1000
0000
1000
D
G
R
r = 3
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-11
MAC addresses and ARP
32-bit IPv4 address:
network-layer address for interface
used for layer 3 (network layer) forwarding
MAC (or LAN or physical or Ethernet) address:
function: used locally to get frame from one interface toanother physically-connected interface (same network, in IP-addressing sense)
48 bit MAC address (for most LANs) burned in NICROM, also sometimes software settable
e.g.: 1A-2F-BB-76-09-AD
underline_base
hexadecimal (base 16) notation
(each number represents 4 bits)
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
IPv6 Addressing
128-bit IPv6 address = 64-bit prefix + 64-bit Interface ID(IID)
The 64-bit prefix is hierarchical
Identifies the network you are on and where it is globally
The 64-bit IID identifies the network interface
Must be unique for that network
Typically is formed statelessly from the interface MAC address
Called Stateless Address Autoconfiguration (RFC2462)
There are different kinds of IPv6 addresses
Loopback (0::1) and Unspecified (0::0)
Unicast with global (e.g. 2001::) or link-local (FE80::) scope
Multicast addresses (starts with FF::)
Anycast addresses (special-purpose unicast address)
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-13
underline_base
LAN addresses (more)
MAC address allocation administered by IEEE
manufacturer buys portion of MAC address space(to assure uniqueness)
analogy:
MAC address: like Social Security Number
IP address: like postal address
 MAC flat address   portability
can move LAN card from one LAN to another
IP hierarchical address not portable
 address depends on IP subnet to which node isattached
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
Link Layer
5-14
underline_base
ARP: address resolution protocol
ARP table: each IP node (host,router) on LAN has table
IP/MAC addressmappings for some LANnodes:
          < IP address; MAC address; TTL>
TTL (Time To Live):time after which addressmapping will beforgotten (typically 20min)
Question: how to determine
interfaces MAC address,knowing its IP address?
1A-2F-BB-76-09-AD
58-23-D7-FA-20-B0
0C-C4-11-6F-E3-98
71-65-F7-2B-08-53
   LAN
137.196.7.23
137.196.7.78
137.196.7.14
137.196.7.88
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
Link Layer
5-15
ARP protocol: same LAN
A wants to send datagramto B on the same LAN
Bs MAC address not in AsARP table.
broadcasts ARP querypacket, containing B's IPaddress
dest MAC address = FF-FF-FF-FF-FF-FF
all nodes on LAN receiveARP query
B receives ARP packet,replies to A with its (B's)MAC address
frame sent to As MACaddress (unicast)
A caches (saves) IP-to-MAC address pair in itsARP table untilinformation becomes old(times out)
soft state: information thattimes out (goes away)unless refreshed
ARP is plug-and-play:
nodes create their ARPtables without interventionfrom net administrator
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-16
walkthrough: send datagram from A to B via R
 focus on addressing – at IP (datagram) and MAC layer (frame)
 assume A knows Bs IP address
 assume A knows IP address of first hop router, R (how?)
 assume A knows Rs MAC address (how?)
Addressing: routing to another LAN
desktop_computer_stylized_medium
desktop_computer_stylized_medium
R
1A-23-F9-CD-06-9B
222.222.222.220
111.111.111.110
E6-E9-00-17-BB-4B
CC-49-DE-D0-AB-7D
111.111.111.112
111.111.111.111
74-29-9C-E8-FF-55
A
222.222.222.222
49-BD-D2-C7-56-2A
222.222.222.221
88-B2-2F-54-1A-0F
B
desktop_computer_stylized_medium
desktop_computer_stylized_medium
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
desktop_computer_stylized_medium
desktop_computer_stylized_medium
R
1A-23-F9-CD-06-9B
222.222.222.220
111.111.111.110
E6-E9-00-17-BB-4B
CC-49-DE-D0-AB-7D
111.111.111.112
111.111.111.111
74-29-9C-E8-FF-55
A
222.222.222.222
49-BD-D2-C7-56-2A
222.222.222.221
88-B2-2F-54-1A-0F
B
desktop_computer_stylized_medium
desktop_computer_stylized_medium
5-17
Addressing: routing to another LAN
IP
Eth
Phy
IP src: 111.111.111.111
   IP dest: 222.222.222.222
A creates IP datagram with IP source A, destination B
A creates link-layer frame with R's MAC address as dest, framecontains A-to-B IP datagram
MAC src: 74-29-9C-E8-FF-55
   MAC dest: E6-E9-00-17-BB-4B
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
desktop_computer_stylized_medium
desktop_computer_stylized_medium
R
1A-23-F9-CD-06-9B
222.222.222.220
111.111.111.110
E6-E9-00-17-BB-4B
CC-49-DE-D0-AB-7D
111.111.111.112
111.111.111.111
74-29-9C-E8-FF-55
A
222.222.222.222
49-BD-D2-C7-56-2A
222.222.222.221
88-B2-2F-54-1A-0F
B
desktop_computer_stylized_medium
desktop_computer_stylized_medium
5-18
Addressing: routing to another LAN
IP
Eth
Phy
frame sent from A to R
IP
Eth
Phy
frame received at R, datagram removed, passed up to IP
MAC src: 74-29-9C-E8-FF-55
   MAC dest: E6-E9-00-17-BB-4B
IP src: 111.111.111.111
   IP dest: 222.222.222.222
IP src: 111.111.111.111
   IP dest: 222.222.222.222
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
desktop_computer_stylized_medium
desktop_computer_stylized_medium
R
1A-23-F9-CD-06-9B
222.222.222.220
111.111.111.110
E6-E9-00-17-BB-4B
CC-49-DE-D0-AB-7D
111.111.111.112
111.111.111.111
74-29-9C-E8-FF-55
A
222.222.222.222
49-BD-D2-C7-56-2A
222.222.222.221
88-B2-2F-54-1A-0F
B
desktop_computer_stylized_medium
desktop_computer_stylized_medium
Link Layer
5-19
Addressing: routing to another LAN
IP src: 111.111.111.111
   IP dest: 222.222.222.222
R forwards datagram with IP source A, destination B
R creates link-layer frame with B's MAC address as dest, framecontains A-to-B IP datagram
MAC src: 1A-23-F9-CD-06-9B
  MAC dest: 49-BD-D2-C7-56-2A
IP
Eth
Phy
IP
Eth
Phy
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
desktop_computer_stylized_medium
desktop_computer_stylized_medium
R
1A-23-F9-CD-06-9B
222.222.222.220
111.111.111.110
E6-E9-00-17-BB-4B
CC-49-DE-D0-AB-7D
111.111.111.112
111.111.111.111
74-29-9C-E8-FF-55
A
222.222.222.222
49-BD-D2-C7-56-2A
222.222.222.221
88-B2-2F-54-1A-0F
B
desktop_computer_stylized_medium
desktop_computer_stylized_medium
Link Layer
5-20
Addressing: routing to another LAN
R forwards datagram with IP source A, destination B
R creates link-layer frame with B's MAC address as dest, framecontains A-to-B IP datagram
IP src: 111.111.111.111
   IP dest: 222.222.222.222
MAC src: 1A-23-F9-CD-06-9B
  MAC dest: 49-BD-D2-C7-56-2A
IP
Eth
Phy
IP
Eth
Phy
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
desktop_computer_stylized_medium
desktop_computer_stylized_medium
R
1A-23-F9-CD-06-9B
222.222.222.220
111.111.111.110
E6-E9-00-17-BB-4B
CC-49-DE-D0-AB-7D
111.111.111.112
111.111.111.111
74-29-9C-E8-FF-55
A
222.222.222.222
49-BD-D2-C7-56-2A
222.222.222.221
88-B2-2F-54-1A-0F
B
desktop_computer_stylized_medium
desktop_computer_stylized_medium
Link Layer
5-21
Addressing: routing to another LAN
R forwards datagram with IP source A, destination B
R creates link-layer frame with B's MAC address as dest, framecontains A-to-B IP datagram
IP src: 111.111.111.111
   IP dest: 222.222.222.222
MAC src: 1A-23-F9-CD-06-9B
  MAC dest: 49-BD-D2-C7-56-2A
IP
Eth
Phy
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-22
underline_base
Link layer, LANs: outline
5.1 introduction, services
5.2 error detection,correction
5.3 multiple accessprotocols
+ 6.2.1 CDMA
+ 6.3.2 The 802.11 MAC
5.4 LANs
addressing, ARP
Ethernet
switches
VLANS
5.5 link virtualization:MPLS
5.6 data centernetworking
5.7 a day in the life of aweb request
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-23
underline_base
Multiple access links, protocols
two types of links:
point-to-point
PPP for dial-up access
point-to-point link between Ethernet switch, host
broadcast (shared wire or medium)
old-fashioned Ethernet
upstream HFC
802.11 wireless LAN
shared wire (e.g.,
cabled Ethernet)
shared RF
 (e.g., 802.11 WiFi)
shared RF
(satellite)
humans at a
cocktail party
(shared air, acoustical)
MMj03957750000[1]
cocktail
desktop_computer_stylized_medium
laptop_keyboard
screen
laptop_keyboard
screen
access_point_stylized_small
access_point_stylized_small
laptop_keyboard
screen
laptop_keyboard
screen
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-24
underline_base
Multiple access protocols
single shared broadcast channel
two or more simultaneous transmissions by nodes:interference
collision if node receives two or more signals at the sametime
multiple access protocol
distributed algorithm that determines how nodes sharechannel, i.e., determine when node can transmit
communication about channel sharing must use channel itself!
no out-of-band channel for coordination
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-25
underline_base
An ideal multiple access protocol
given: broadcast channel of rate R bps
want:
1. when one node wants to transmit, it can send at rate R.
2. when M nodes want to transmit, each can send at averagerate R/M
3. fully decentralized:
no special node to coordinate transmissions
no synchronization of clocks, slots
4. simple
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-26
underline_base
MAC protocols: taxonomy
Three broad classes:
channel partitioning
divide channel into smaller pieces (time slots, frequency, code)
allocate piece to node for exclusive use
random access
channel not divided, allow collisions
recover from collisions
taking turns
nodes take turns, but nodes with more to send can take longerturns
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
Channel Partitioning MAC protocols
TDMA: time division
multiple access
access to channel in "rounds"
each station gets fixed length slot (length = pkt trans time) in each round
unused slots go idle
1
3
4
1
3
4
6-slot
frame
FDMA: frequency division multiple access
rspectrum divided into frequency bands
reach station assigned fixed band
runused transmission time go idle
frequency bands
time
CDMA: Code division multiple access
rDifferent users use different wideband codes
SDMA: Space division multiple access
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
Code Division Multiple Access (CDMA)
An unique code assigned to each user
all users share same frequency, but each user has ownchipping sequence (i.e., code) to encode data
allows multiple users to coexist and transmitsimultaneously with minimal interference (if codes areorthogonal)
The chipping sequence is a wideband signal – morerobust against narrowband noise
encoded signal = (original data) X (chipping sequence)
decoding: inner-product of encoded signal and chippingsequence
underline_base
(modified by Cheung for EE586; based on K&R original)
28
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
CDMA encode/decode
slot 1
slot 0
d1 = -1
1
1
1
1
1
-
1
-
1
-
1
-
Zi,m= di.cm
d0 = 1
1
1
1
1
1
-
1
-
1
-
1
-
1
1
1
1
1
-
1
-
1
-
1
-
1
1
1
1
1
-
1
-
1
-
1
-
slot 0
channel
output
slot 1
channel
output
channel output Zi,m
sender
code
data
bits
slot 1
slot 0
d1 = -1
d0 = 1
1
1
1
1
1
-
1
-
1
-
1
-
1
1
1
1
1
-
1
-
1
-
1
-
1
1
1
1
1
-
1
-
1
-
1
-
1
1
1
1
1
-
1
-
1
-
1
-
slot 0
channel
output
slot 1
channel
output
receiver
code
received
input
D Zi,m.cm
m=1
M
M
underline_base
(modified by Cheung for EE586; based on K&R original)
29
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
CDMA: two-sender interference
5
underline_base
using same code assender 1, receiver recoverssender 1s original datafrom summed channeldata!
Sender 1
Sender 2
channel sums togethertransmissions by sender 1and 2
(modified by Cheung for EE586; based on K&R original)
30
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-31
Random access protocols
when node has packet to send
transmit at full channel data rate R.
no a priori coordination among nodes
two or more transmitting nodes  collision,
random access MAC protocol specifies:
how to detect collisions
how to recover from collisions (e.g., via delayedretransmissions)
examples of random access MAC protocols:
slotted ALOHA
ALOHA
CSMA, CSMA/CD, CSMA/CA
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-32
Slotted ALOHA
assumptions:
all frames same size
time divided into equal sizeslots (time to transmit 1frame)
nodes start to transmitonly slot beginning
nodes are synchronized
if 2 or more nodes transmitin slot, all nodes detectcollision
operation:
when node obtains freshframe, transmits in next slot
if no collision: node can sendnew frame in next slot
if collision: node retransmitsframe in each subsequentslot with prob. p untilsuccess
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-33
Pros:
single active node cancontinuously transmit atfull rate of channel
highly decentralized: onlyslots in nodes need to bein sync
simple
Cons:
collisions, wasting slots
idle slots
nodes may be able todetect collision in lessthan time to transmitpacket
clock synchronization
Slotted ALOHA
underline_base
1
1
1
1
2
3
2
2
3
3
node 1
node 2
node 3
C
C
C
S
S
S
E
E
E
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-34
suppose: N nodes with manyframes to send, eachtransmits in slot withprobability p
prob that given node hassuccess in a slot  = p(1-p)N-1
prob that any node has asuccess = Np(1-p)N-1
max efficiency: find p* thatmaximizes Np(1-p)N-1
for many nodes, take limitof Np*(1-p*)N-1 as N goesto infinity, gives:
    max efficiency = 1/e = .37
efficiency: long-runfraction of successful slots(many nodes, all with manyframes to send)
at best: channel
used for useful
transmissions 37%
of time!
!
How to pick p, the trans. prob?
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-35
underline_base
Pure (unslotted) ALOHA
unslotted Aloha: simpler, no synchronization
when frame first arrives, transmit immediately
collision probability increases:
frame sent at t0 collides with other frames sent in [t0-1,t0+1]
5
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-36
underline_base
Pure ALOHA efficiency
P(success by given node) = P(node transmits) .
                                              P(no other node transmits in [t0-1,t0]) .
                                              P(no other node transmits in [t0,t0+1])
 
                                      = p (1-p)N-1 . (1-p)N-1
                                                         = (1-p)2(N-1)
                              … choosing optimum p and then letting n
                                                 = 1/(2e) = .18
even worse than slotted Aloha!
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-37
Improvement 1: CSMA
Listen before sending:Carrier Sense MultipleAccess or CSMA
collisions can still occur:propagation delay meanstwo nodes may not heareach others transmission
collision: entire packettransmission time wasted
distance & propagationdelay play role in indetermining collisionprobability
5
spatial layout of nodes
underline_base
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-38
underline_base
Improvement 2: CSMA/CD
CD = collision detection:
colliding transmissionsaborted, reducing channelwastage
easy in wired LANs:measure signal strengths,compare transmitted,received signals
difficult in wireless LANs:received signal strengthoverwhelmed by localtransmission strength
5
spatial layout of nodes
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-39
Ethernet CSMA/CD algorithm
1. NIC receives datagramfrom network layer,creates frame
2. If NIC senses channelidle, starts frametransmission. If NICsenses channel busy,waits until channel idle,then transmits.
3. If NIC transmits entireframe without detectinganother transmission,NIC is done with frame !
4. If NIC detects anothertransmission whiletransmitting,  aborts andsends jam signal
5. After aborting, NICenters binary (exponential)backoff:
after mth collision, NICchooses at randomfrom {0,1,2, …, 2m-1}.NIC waits K·512 bittimes, returns to Step 2
Longer backoff intervalwith more collisions
 
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-40
CSMA/CD efficiency
Tprop = max prop delay between 2 nodes in LAN
ttrans = time to transmit max-size frame
efficiency goes to 1
as tprop goes to 0
as ttrans goes to infinity
better performance than ALOHA: and simple, cheap,decentralized!
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
IEEE 802.11: multiple access
avoid collisions: 2+ nodes transmitting at same time
802.11: CSMA - sense before transmitting
dont collide with ongoing transmission by other node
802.11: no collision detection!
difficult to receive (sense collisions) when transmitting due to weakreceived signals (fading)
cant sense all collisions in any case: hidden terminal, fading
goal: avoid collisions: CSMA/C(ollision)A(voidance)
41
space
laptop_stylized_small
antenna_stylized
A
B
C
laptop_stylized_small
antenna_stylized
laptop_stylized_small
antenna_stylized
A
B
C
As signal
strength
Cs signal
strength
laptop_stylized_small
antenna_stylized
laptop_stylized_small
antenna_stylized
laptop_stylized_small
antenna_stylized
underline_base
Hidden terminal problem
B, A hear each other
B, C hear each other
A, C can not hear eachother means A, Cunaware of theirinterference at B
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
IEEE 802.11 MAC Protocol: CSMA/CA
802.11 sender
if sense channel idle for DIFS  then
transmit entire frame (no CD)
2 if sense channel busy then
start random backoff time
timer counts down while channel idle
transmit when timer expires
if no ACK, increase random backoff interval,repeat 2
802.11 receiver
if frame received OK
   return ACK after SIFS (ACK needed due tohidden terminal problem)
42
sender
receiver
DIFS
data
SIFS
ACK
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
Improvement 3: Collision Avoidance
idea:  allow sender to reserve channel rather than randomaccess of data frames: avoid  collisions of long  data frames
sender first transmits small request-to-send (RTS) packetsto BS using CSMA
RTSs may still collide with each other (but theyre short)
BS broadcasts clear-to-send (CTS) in response to RTS
CTS heard by all nodes
sender transmits data frame
other stations defer transmissions
43
avoid data frame collisions completely
using small reservation packets and ACK!
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
Collision Avoidance: RTS-CTS exchange
44
AP
A
B
time
RTS(A)
RTS(B)
RTS(A)
CTS(A)
CTS(A)
DATA (A)
ACK(A)
ACK(A)
reservationcollision
defer
access_point_stylized_small
antenna_radiation_stylized
laptop_stylized_small
antenna_stylized
laptop_stylized_small
antenna_stylized
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
v6.12.2009
6LoWPAN: The Wireless Embedded Internet, Shelby & Bormann
45
Important standard for home networking,industrial control and building automation
Three PHY modes
20 kbps at 868 MHz
40 kbps at 915 MHz
250 kbps at 2.4 GHz (DSSS)
Payload < 127 bytes
Beaconless mode
Simple CSMA algorithm w/o RTS/CTS
Beacon mode with superframe
Hybrid TDMA-CSMA algorithm
Up to 64k nodes with 16-bit addresses
Extensions to the standard
IEEE 802.15.4a, 802.15.4e, 802.15.5
802
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-46
underline_base
Link layer, LANs: outline
5.1 introduction, services
5.2 error detection,correction
5.3 multiple accessprotocols
Taking Turn MAC
5.4 LANs
addressing, ARP
Ethernet
switches
VLANS
5.5 link virtualization:MPLS
5.6 data centernetworking
5.7 a day in the life of aweb request
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-47
underline_base
Taking turns MAC protocols
channel partitioning MAC protocols:
share channel efficiently and fairly at high load
inefficient at low load: delay in channel access, 1/Nbandwidth allocated even if only 1 active node!
random access MAC protocols
efficient at low load: single node can fully utilizechannel
high load: collision overhead
taking turns protocols
look for best of both worlds!
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-48
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
polling:
master node invitesslave nodes to transmitin turn
typically used withdumb slave devices
concerns:
polling overhead
latency
single point offailure (master)
IEEE 802.15 andbluetooth
master
slaves
poll
data
data
underline_base
Taking turns MAC protocols
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-49
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
token passing:
control token passedfrom one node to nextsequentially.
token message
concerns:
token overhead
latency
single point of failure(token)
FDDI and IEEE 802.5
 
T
data
(nothing
to send)
T
underline_base
Taking turns MAC protocols
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-50
Ethernet
dominant wired LAN technology:
cheap $20 for NIC
first widely used LAN technology
simpler, cheaper than token LANs and ATM
kept up with speed race: 10 Mbps – 10 Gbps
551 metcalfe-enet
Metcalfes Ethernet sketch (1972, Xerox Parc)
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-51
802.3 Ethernet standards: link & physical layers
many different Ethernet standards
common MAC protocol and frame format
different speeds: 2 Mbps, 10 Mbps, 100 Mbps, 1Gbps,10G bps
different physical layer media: fiber, cable
application
transport
network
link
physical
MAC protocol
and frame format
100BASE-TX
100BASE-T4
100BASE-FX
100BASE-T2
100BASE-SX
100BASE-BX
fiber physical layer
copper (twister
pair) physical layer
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-52
Ethernet: unreliable, connectionless
connectionless: no handshaking between sending andreceiving NICs
unreliable: receiving NIC doesnt send acks or nacksto sending NIC
data in dropped frames recovered only if initialsender uses higher layer rdt (e.g., TCP), otherwisedropped data lost
Ethernets MAC protocol: unslotted CSMA/CD wthbinary backoff
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-53
Ethernet frame structure
sending adapter encapsulates IP datagram (or othernetwork layer protocol packet) in Ethernet frame
preamble:
7 bytes with pattern 10101010 followed by onebyte with pattern 10101011
 used to synchronize receiver, sender clock rates
underline_base
dest.
address
source
address
data(payload)
CRC
preamble
type
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-54
Ethernet frame structure (more)
addresses: 6 byte source, destination MAC addresses
if adapter receives frame with matching destinationaddress, or with broadcast address (e.g. ARP packet), itpasses data in frame to network layer protocol
otherwise, adapter discards frame
type: indicates higher layer protocol (mostly IP butothers possible, e.g., Novell IPX, AppleTalk)
CRC: cyclic redundancy check at receiver
error detected: frame is dropped
underline_base
dest.
address
source
address
data(payload)
CRC
preamble
type
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
underline_base
5-55
Ethernet: physical topology
bus: popular through mid 90s
all nodes in same collision domain (can collide with eachother)
star: prevails today
active switch in center
each spoke runs a (separate) Ethernet protocol (nodesdo not collide with each other)
switch
bus: coaxial cable
star
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-56
Switch: multiple simultaneous transmissions
hosts have dedicated, directconnection to switch
switches buffer packets
Ethernet protocol used on eachincoming link, but no collisions;full duplex
each link is its own collisiondomain
switching: A-to-A and B-to-Bcan transmit simultaneously,without collisions
switch with six interfaces
(1,2,3,4,5,6)
A
A
B
B
C
C
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
1
2
3
4
5
6
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
A
A
B
B
C
C
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
1
2
3
4
5
6
5-57
Switch: self-learning
switch learns which hostscan be reached throughwhich interfaces
when frame received,switch learns  locationof sender: incomingLAN segment
records sender/locationpair in switch table
A  A
Source: A
Dest: A
MAC addr   interface    TTL
Switch table
(initially empty)
A
1
60
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
A
A
B
B
C
C
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
1
2
3
4
5
6
5-58
Self-learning, forwarding: example
A  A
Source: A
Dest: A
MAC addr   interface    TTL
switch table
(initially empty)
A
1
60
A A
A A
A A
A A
A  A
frame destination, A,locaton unknown:
flood
A A
destination A locationknown:
A
4
60
            selectively send
on just one link
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-59
Switch: frame filtering/forwarding
when  frame received at switch:
1. record incoming link, MAC address of sending host
2. index switch table using MAC source address
3. if entry found for destinationthen {
     if destination on segment from which frame arrived  then drop frame
     else forward frame on interface indicated by entry
   }
   else flood  /* forward on all interfaces except arriving
                          interface */
 
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-60
Interconnecting switches
switches can be connected together
Q: sending from A to G - how does S1 know toforward frame destined to F via S4 and S3?
A: self learning! (works exactly the same as insingle-switch case!)
A
B
S1
C
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
D
E
F
S2
S4
S3
H
I
G
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
desktop_computer_stylized_medium
underline_base
E l e c t r i c a l    &   C o m p u t e r
Department of
Electrical & Computer Engineering
5-61
Switches vs. routers
both are store-and-forward:
routers: network-layerdevices (examine network-layer headers)
switcheslink-layer devices(examine link-layer headers)
both have forwarding tables:
routers: compute tables usingrouting algorithms, IPaddresses
switches: learn forwardingtable using flooding, learning,MAC addresses
application
transport
network
link
physical
network
link
physical