52
Chapter 4, slide: 1 ECE/CS 372 – introduction to computer networks Lecture 16 Announcements: wledgement: slides drawn heavily from Kurose & Ross

ECE/CS 372 – introduction to computer networks Lecture 16

  • Upload
    theta

  • View
    39

  • Download
    2

Embed Size (px)

DESCRIPTION

Announcements:. ECE/CS 372 – introduction to computer networks Lecture 16. Acknowledgement: slides drawn heavily from Kurose & Ross. Our goals: understand principles behind data link layer services: error detection, correction sharing a broadcast channel: multiple access - PowerPoint PPT Presentation

Citation preview

Page 1: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 4 slide 1

ECECS 372 ndash introduction to computer networksLecture 16

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 2

Chapter 5 Data Link Layer

Our goals understand principles behind data link layer

services error detection correction sharing a broadcast channel multiple access link layer addressing

example of link layer protocol Ethernet

Chapter 5 slide 3

Link Layer (also known as layer 2)Some terminology nodes = hosts or

routers

links = communication channels that connect adjacent nodes

bull wired linksbull wireless links

frame = layer-2 packet

data-link layer has responsibility of transferring datagram from one node to adjacent node over a link

Chapter 5 slide 4

Link layer context

links may have ne protocolsframes may be delivered by different link protocols over different links eg Ethernet 80211 (WiFi)

link protocols may provide ne services eg may or may not

provide rdt over link

transportation analogy Trip Princeton to Marseille

limo Princeton to JFK plane JFK to Paris train Paris to Marseille

tourist = frame travel agent = routing

algorithm Doesnrsquot knowcare of mode

transport mode = link layer protocol ne legs may use ne modes

Chapter 5 slide 5

Link Layer Services link access and sharing

Sharing and multiple access allow mediumchannel sharing

reliable delivery between adjacent nodes transport layer-like reliability ACKrsquoing low bit-error link (eg fiber) rarely used high bit-error link (eg wireless) often used

error detection errors caused by signal attenuation noise receiver detects presence of errors

error correction receiver corrects errors wo resorting to retransmission

Chapter 5 slide 6

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 7

Error DetectionD = Data protected by error checking may include header fields EDC= Error Detection and Correction bits (redundancy)

bull error detection not 100 reliable may not detect errors (rarely)

bull larger EDC field yields better detection and correction

Chapter 5 slide 8

Example Parity Checking

Single Bit ParityDetect single bit errors

Two Dimensional Bit ParityDetect and correct single bit errors

0 0

In this exampleD = data bits EDC = parity bit

Chapter 5 slide 9

Checksumming Cyclic Redundancy Check

Scheme View data bits D as a binary

number

Fix r CRC bits

Choose r+1 bit pattern (generator) G

Sender choose r CRC bits R such that G exactly divides ltDRgt (modulo 2)

receiver knows G divides ltDRgt by G If non-zero remainder error detected

detect burst errors less than r+1 bits

Example D= 101110

r = 3 bits

G = 1001

Find R such thatG divides ltDRgt

(modulo 2)equivalently

G divides ltD2r XOR Rgt

Chapter 5 slide 10

CRC modulo-2 arithmetic CRC calculations are done modulo-2 arithmetic

No carries in addition No borrows in subtraction=gt Addition = subtraction = bitwise-XOR XOR review

0 XOR 0 = 0 0 XOR 1 = 1 1 XOR 0 = 1 1 XOR 1 = 0=gt a XOR 0 = a a XOR a = 0 for a=01Eg 1010 XOR 0110 = 1110

Multiplications and divisions are same as in base-2 arithmetic except all additions and subtractions are done without carries or borrowsbull That is addition = subtraction = bitwise-XOR

Chapter 5 slide 11

CRC Example (find R)

R = remainder[ ]D2r

G

Want G divides ltD2r XOR Rgt

equivalently D2r XOR R = nG

equivalently (XOR both sides)

(D2r XOR R) XOR R = nG XOR R

equivalently (R XOR R = 0 amp a XOR 0 = a)

D2r = nG XOR R

equivalently (division is modulo 2 too)

since remainder[(nG XOR R)G] = R

(note R lt G) then dividing D2r by G (modulo 2) gives remainder = R

Chapter 5 slide 12

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 13

MAC Addresses 32-bit IP address

network-layer address used to get datagram to destination IP subnet

MAC (or LAN or physical or Ethernet) address 48 bit MAC address (for most LANs)

bull burned in NIC ROM also sometimes software settable function get frame from one interface to another

physically-connected interface (same network) uses hexadecimal representation ie base-16 (ie 4

bits) it uses 16 distinct symbols 01hellip9ABCDEF 4 bits needed for each symbol 484 = 12 symbols

Eg 1A-2F-BB-76-09-AD

Chapter 5 slide 14

MAC AddressesEach adapter on LAN has unique MAC (LAN ) address

Broadcast address =FF-FF-FF-FF-FF-FF

= adapter

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(wired orwireless)

Chapter 5 slide 15

A encapsulates BrsquoMAC into the frame

A sends the frame into the medium

All nodes will hear the frame

Only B grabs the frame

All other nodes discard the frame

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

137196723

137196778

137196714

137196788

Assume bull A knows Brsquos MAC addressbull A wants to send a frame to B

Node A

Node B

MAC Addresses

Chapter 5 slide 16

ARP Address Resolution Protocol

Solution ARP Each IP node (host router)

on LAN has ARP table ARP table maps IP MAC

address for some LAN nodes

lt IP address MAC address TTLgt TTL (Time To Live) remove

mapping after TTL (typically 20 min)

A consults its table to determine Brsquos MAC given it knows Brsquos IP

Q how to construct these ARP tables

Question if A doesnrsquot know Brsquos MAC address how does it determine this MAC 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

137196723

137196778

137196714

137196788

Node A

Node B

Chapter 5 slide 17

ARP Case 1mdashSame LAN (network) A wants to send

datagram to B and Brsquos MAC address not in Arsquos ARP table

A broadcasts ARP packet containing Bs IP address dest MAC address = FF-

FF-FF-FF-FF-FF all machines on LAN

receive ARP query

B receives ARP packet replies to A with its (Bs) MAC address

A sends frame to B since it knows its MAC now

A caches IP-to-MAC address pair in its ARP table until information becomes old (times out) soft state information that

times out (goes away) unless refreshed

ARP is ldquoplug-and-playrdquo nodes create their ARP

tables without intervention from net administrator

Chapter 5 slide 18

ARP Case 2mdashrouting to another LAN

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

how does ARP work now Would the previous scenario work

datagram needs to go from A to B via R assume A knows Brsquos IP address

A

B

Chapter 5 slide 19

Herersquos how it works (A wants to send IP datagram to B)

A knows that B belongs to a different subnet by checking Brsquos IP address

A also knows IP address of router R (routing table at layer 3) A uses ARP to get Rrsquos MAC address for 111111111110 (IP address of

router) A creates frame with Rs MAC address as dest frame contains A-to-B

IP datagram Arsquos NIC sends frame and Rrsquos NIC receives it R removes IP datagram from Ethernet frame sees its destined to B R uses ARP to get Brsquos MAC address (R has Brsquos IP address included in

the just received frame) R creates frame containing A-to-B IP datagram and sends it to B

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

ARP Case 2mdashrouting to another LAN

A

B

Lecture 15 chapter 5 slide 20

Link layer Addressing last words manufacturer buys portion of MAC address space (to assure

uniqueness of MAC addresses) analogy (a) MAC address like Social Security Number (b) IP address like postal address MAC flat addressing portability

can move LAN card from one LAN to another not true for IP

Q why canrsquot we just use IP addresses ie no MAC addresses LANs designed for all network layer protocols not just IP IP address will have to be storedreconfigured to the adapter

every time the adaptercomputer is moved

Q Why canrsquot we processcheck frames at network layer instead Overhead each and every frame will be processed

(including those destined to others)

Chapter 5 slide 21

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 22

Multiple Access Links and Protocols

Two types of ldquolinksrdquo point-to-point

PPP for dial-up access point-to-point link between Ethernet switch and host

broadcast (shared wire or medium) Ethernet 80211 wireless LAN

shared wire (eg cabled Ethernet)

shared RF (eg 80211 WiFi)

shared RF(satellite)

humans at aparty

(shared air acoustical)

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 2: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 2

Chapter 5 Data Link Layer

Our goals understand principles behind data link layer

services error detection correction sharing a broadcast channel multiple access link layer addressing

example of link layer protocol Ethernet

Chapter 5 slide 3

Link Layer (also known as layer 2)Some terminology nodes = hosts or

routers

links = communication channels that connect adjacent nodes

bull wired linksbull wireless links

frame = layer-2 packet

data-link layer has responsibility of transferring datagram from one node to adjacent node over a link

Chapter 5 slide 4

Link layer context

links may have ne protocolsframes may be delivered by different link protocols over different links eg Ethernet 80211 (WiFi)

link protocols may provide ne services eg may or may not

provide rdt over link

transportation analogy Trip Princeton to Marseille

limo Princeton to JFK plane JFK to Paris train Paris to Marseille

tourist = frame travel agent = routing

algorithm Doesnrsquot knowcare of mode

transport mode = link layer protocol ne legs may use ne modes

Chapter 5 slide 5

Link Layer Services link access and sharing

Sharing and multiple access allow mediumchannel sharing

reliable delivery between adjacent nodes transport layer-like reliability ACKrsquoing low bit-error link (eg fiber) rarely used high bit-error link (eg wireless) often used

error detection errors caused by signal attenuation noise receiver detects presence of errors

error correction receiver corrects errors wo resorting to retransmission

Chapter 5 slide 6

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 7

Error DetectionD = Data protected by error checking may include header fields EDC= Error Detection and Correction bits (redundancy)

bull error detection not 100 reliable may not detect errors (rarely)

bull larger EDC field yields better detection and correction

Chapter 5 slide 8

Example Parity Checking

Single Bit ParityDetect single bit errors

Two Dimensional Bit ParityDetect and correct single bit errors

0 0

In this exampleD = data bits EDC = parity bit

Chapter 5 slide 9

Checksumming Cyclic Redundancy Check

Scheme View data bits D as a binary

number

Fix r CRC bits

Choose r+1 bit pattern (generator) G

Sender choose r CRC bits R such that G exactly divides ltDRgt (modulo 2)

receiver knows G divides ltDRgt by G If non-zero remainder error detected

detect burst errors less than r+1 bits

Example D= 101110

r = 3 bits

G = 1001

Find R such thatG divides ltDRgt

(modulo 2)equivalently

G divides ltD2r XOR Rgt

Chapter 5 slide 10

CRC modulo-2 arithmetic CRC calculations are done modulo-2 arithmetic

No carries in addition No borrows in subtraction=gt Addition = subtraction = bitwise-XOR XOR review

0 XOR 0 = 0 0 XOR 1 = 1 1 XOR 0 = 1 1 XOR 1 = 0=gt a XOR 0 = a a XOR a = 0 for a=01Eg 1010 XOR 0110 = 1110

Multiplications and divisions are same as in base-2 arithmetic except all additions and subtractions are done without carries or borrowsbull That is addition = subtraction = bitwise-XOR

Chapter 5 slide 11

CRC Example (find R)

R = remainder[ ]D2r

G

Want G divides ltD2r XOR Rgt

equivalently D2r XOR R = nG

equivalently (XOR both sides)

(D2r XOR R) XOR R = nG XOR R

equivalently (R XOR R = 0 amp a XOR 0 = a)

D2r = nG XOR R

equivalently (division is modulo 2 too)

since remainder[(nG XOR R)G] = R

(note R lt G) then dividing D2r by G (modulo 2) gives remainder = R

Chapter 5 slide 12

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 13

MAC Addresses 32-bit IP address

network-layer address used to get datagram to destination IP subnet

MAC (or LAN or physical or Ethernet) address 48 bit MAC address (for most LANs)

bull burned in NIC ROM also sometimes software settable function get frame from one interface to another

physically-connected interface (same network) uses hexadecimal representation ie base-16 (ie 4

bits) it uses 16 distinct symbols 01hellip9ABCDEF 4 bits needed for each symbol 484 = 12 symbols

Eg 1A-2F-BB-76-09-AD

Chapter 5 slide 14

MAC AddressesEach adapter on LAN has unique MAC (LAN ) address

Broadcast address =FF-FF-FF-FF-FF-FF

= adapter

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(wired orwireless)

Chapter 5 slide 15

A encapsulates BrsquoMAC into the frame

A sends the frame into the medium

All nodes will hear the frame

Only B grabs the frame

All other nodes discard the frame

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

137196723

137196778

137196714

137196788

Assume bull A knows Brsquos MAC addressbull A wants to send a frame to B

Node A

Node B

MAC Addresses

Chapter 5 slide 16

ARP Address Resolution Protocol

Solution ARP Each IP node (host router)

on LAN has ARP table ARP table maps IP MAC

address for some LAN nodes

lt IP address MAC address TTLgt TTL (Time To Live) remove

mapping after TTL (typically 20 min)

A consults its table to determine Brsquos MAC given it knows Brsquos IP

Q how to construct these ARP tables

Question if A doesnrsquot know Brsquos MAC address how does it determine this MAC 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

137196723

137196778

137196714

137196788

Node A

Node B

Chapter 5 slide 17

ARP Case 1mdashSame LAN (network) A wants to send

datagram to B and Brsquos MAC address not in Arsquos ARP table

A broadcasts ARP packet containing Bs IP address dest MAC address = FF-

FF-FF-FF-FF-FF all machines on LAN

receive ARP query

B receives ARP packet replies to A with its (Bs) MAC address

A sends frame to B since it knows its MAC now

A caches IP-to-MAC address pair in its ARP table until information becomes old (times out) soft state information that

times out (goes away) unless refreshed

ARP is ldquoplug-and-playrdquo nodes create their ARP

tables without intervention from net administrator

Chapter 5 slide 18

ARP Case 2mdashrouting to another LAN

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

how does ARP work now Would the previous scenario work

datagram needs to go from A to B via R assume A knows Brsquos IP address

A

B

Chapter 5 slide 19

Herersquos how it works (A wants to send IP datagram to B)

A knows that B belongs to a different subnet by checking Brsquos IP address

A also knows IP address of router R (routing table at layer 3) A uses ARP to get Rrsquos MAC address for 111111111110 (IP address of

router) A creates frame with Rs MAC address as dest frame contains A-to-B

IP datagram Arsquos NIC sends frame and Rrsquos NIC receives it R removes IP datagram from Ethernet frame sees its destined to B R uses ARP to get Brsquos MAC address (R has Brsquos IP address included in

the just received frame) R creates frame containing A-to-B IP datagram and sends it to B

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

ARP Case 2mdashrouting to another LAN

A

B

Lecture 15 chapter 5 slide 20

Link layer Addressing last words manufacturer buys portion of MAC address space (to assure

uniqueness of MAC addresses) analogy (a) MAC address like Social Security Number (b) IP address like postal address MAC flat addressing portability

can move LAN card from one LAN to another not true for IP

Q why canrsquot we just use IP addresses ie no MAC addresses LANs designed for all network layer protocols not just IP IP address will have to be storedreconfigured to the adapter

every time the adaptercomputer is moved

Q Why canrsquot we processcheck frames at network layer instead Overhead each and every frame will be processed

(including those destined to others)

Chapter 5 slide 21

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 22

Multiple Access Links and Protocols

Two types of ldquolinksrdquo point-to-point

PPP for dial-up access point-to-point link between Ethernet switch and host

broadcast (shared wire or medium) Ethernet 80211 wireless LAN

shared wire (eg cabled Ethernet)

shared RF (eg 80211 WiFi)

shared RF(satellite)

humans at aparty

(shared air acoustical)

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 3: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 3

Link Layer (also known as layer 2)Some terminology nodes = hosts or

routers

links = communication channels that connect adjacent nodes

bull wired linksbull wireless links

frame = layer-2 packet

data-link layer has responsibility of transferring datagram from one node to adjacent node over a link

Chapter 5 slide 4

Link layer context

links may have ne protocolsframes may be delivered by different link protocols over different links eg Ethernet 80211 (WiFi)

link protocols may provide ne services eg may or may not

provide rdt over link

transportation analogy Trip Princeton to Marseille

limo Princeton to JFK plane JFK to Paris train Paris to Marseille

tourist = frame travel agent = routing

algorithm Doesnrsquot knowcare of mode

transport mode = link layer protocol ne legs may use ne modes

Chapter 5 slide 5

Link Layer Services link access and sharing

Sharing and multiple access allow mediumchannel sharing

reliable delivery between adjacent nodes transport layer-like reliability ACKrsquoing low bit-error link (eg fiber) rarely used high bit-error link (eg wireless) often used

error detection errors caused by signal attenuation noise receiver detects presence of errors

error correction receiver corrects errors wo resorting to retransmission

Chapter 5 slide 6

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 7

Error DetectionD = Data protected by error checking may include header fields EDC= Error Detection and Correction bits (redundancy)

bull error detection not 100 reliable may not detect errors (rarely)

bull larger EDC field yields better detection and correction

Chapter 5 slide 8

Example Parity Checking

Single Bit ParityDetect single bit errors

Two Dimensional Bit ParityDetect and correct single bit errors

0 0

In this exampleD = data bits EDC = parity bit

Chapter 5 slide 9

Checksumming Cyclic Redundancy Check

Scheme View data bits D as a binary

number

Fix r CRC bits

Choose r+1 bit pattern (generator) G

Sender choose r CRC bits R such that G exactly divides ltDRgt (modulo 2)

receiver knows G divides ltDRgt by G If non-zero remainder error detected

detect burst errors less than r+1 bits

Example D= 101110

r = 3 bits

G = 1001

Find R such thatG divides ltDRgt

(modulo 2)equivalently

G divides ltD2r XOR Rgt

Chapter 5 slide 10

CRC modulo-2 arithmetic CRC calculations are done modulo-2 arithmetic

No carries in addition No borrows in subtraction=gt Addition = subtraction = bitwise-XOR XOR review

0 XOR 0 = 0 0 XOR 1 = 1 1 XOR 0 = 1 1 XOR 1 = 0=gt a XOR 0 = a a XOR a = 0 for a=01Eg 1010 XOR 0110 = 1110

Multiplications and divisions are same as in base-2 arithmetic except all additions and subtractions are done without carries or borrowsbull That is addition = subtraction = bitwise-XOR

Chapter 5 slide 11

CRC Example (find R)

R = remainder[ ]D2r

G

Want G divides ltD2r XOR Rgt

equivalently D2r XOR R = nG

equivalently (XOR both sides)

(D2r XOR R) XOR R = nG XOR R

equivalently (R XOR R = 0 amp a XOR 0 = a)

D2r = nG XOR R

equivalently (division is modulo 2 too)

since remainder[(nG XOR R)G] = R

(note R lt G) then dividing D2r by G (modulo 2) gives remainder = R

Chapter 5 slide 12

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 13

MAC Addresses 32-bit IP address

network-layer address used to get datagram to destination IP subnet

MAC (or LAN or physical or Ethernet) address 48 bit MAC address (for most LANs)

bull burned in NIC ROM also sometimes software settable function get frame from one interface to another

physically-connected interface (same network) uses hexadecimal representation ie base-16 (ie 4

bits) it uses 16 distinct symbols 01hellip9ABCDEF 4 bits needed for each symbol 484 = 12 symbols

Eg 1A-2F-BB-76-09-AD

Chapter 5 slide 14

MAC AddressesEach adapter on LAN has unique MAC (LAN ) address

Broadcast address =FF-FF-FF-FF-FF-FF

= adapter

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(wired orwireless)

Chapter 5 slide 15

A encapsulates BrsquoMAC into the frame

A sends the frame into the medium

All nodes will hear the frame

Only B grabs the frame

All other nodes discard the frame

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

137196723

137196778

137196714

137196788

Assume bull A knows Brsquos MAC addressbull A wants to send a frame to B

Node A

Node B

MAC Addresses

Chapter 5 slide 16

ARP Address Resolution Protocol

Solution ARP Each IP node (host router)

on LAN has ARP table ARP table maps IP MAC

address for some LAN nodes

lt IP address MAC address TTLgt TTL (Time To Live) remove

mapping after TTL (typically 20 min)

A consults its table to determine Brsquos MAC given it knows Brsquos IP

Q how to construct these ARP tables

Question if A doesnrsquot know Brsquos MAC address how does it determine this MAC 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

137196723

137196778

137196714

137196788

Node A

Node B

Chapter 5 slide 17

ARP Case 1mdashSame LAN (network) A wants to send

datagram to B and Brsquos MAC address not in Arsquos ARP table

A broadcasts ARP packet containing Bs IP address dest MAC address = FF-

FF-FF-FF-FF-FF all machines on LAN

receive ARP query

B receives ARP packet replies to A with its (Bs) MAC address

A sends frame to B since it knows its MAC now

A caches IP-to-MAC address pair in its ARP table until information becomes old (times out) soft state information that

times out (goes away) unless refreshed

ARP is ldquoplug-and-playrdquo nodes create their ARP

tables without intervention from net administrator

Chapter 5 slide 18

ARP Case 2mdashrouting to another LAN

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

how does ARP work now Would the previous scenario work

datagram needs to go from A to B via R assume A knows Brsquos IP address

A

B

Chapter 5 slide 19

Herersquos how it works (A wants to send IP datagram to B)

A knows that B belongs to a different subnet by checking Brsquos IP address

A also knows IP address of router R (routing table at layer 3) A uses ARP to get Rrsquos MAC address for 111111111110 (IP address of

router) A creates frame with Rs MAC address as dest frame contains A-to-B

IP datagram Arsquos NIC sends frame and Rrsquos NIC receives it R removes IP datagram from Ethernet frame sees its destined to B R uses ARP to get Brsquos MAC address (R has Brsquos IP address included in

the just received frame) R creates frame containing A-to-B IP datagram and sends it to B

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

ARP Case 2mdashrouting to another LAN

A

B

Lecture 15 chapter 5 slide 20

Link layer Addressing last words manufacturer buys portion of MAC address space (to assure

uniqueness of MAC addresses) analogy (a) MAC address like Social Security Number (b) IP address like postal address MAC flat addressing portability

can move LAN card from one LAN to another not true for IP

Q why canrsquot we just use IP addresses ie no MAC addresses LANs designed for all network layer protocols not just IP IP address will have to be storedreconfigured to the adapter

every time the adaptercomputer is moved

Q Why canrsquot we processcheck frames at network layer instead Overhead each and every frame will be processed

(including those destined to others)

Chapter 5 slide 21

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 22

Multiple Access Links and Protocols

Two types of ldquolinksrdquo point-to-point

PPP for dial-up access point-to-point link between Ethernet switch and host

broadcast (shared wire or medium) Ethernet 80211 wireless LAN

shared wire (eg cabled Ethernet)

shared RF (eg 80211 WiFi)

shared RF(satellite)

humans at aparty

(shared air acoustical)

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 4: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 4

Link layer context

links may have ne protocolsframes may be delivered by different link protocols over different links eg Ethernet 80211 (WiFi)

link protocols may provide ne services eg may or may not

provide rdt over link

transportation analogy Trip Princeton to Marseille

limo Princeton to JFK plane JFK to Paris train Paris to Marseille

tourist = frame travel agent = routing

algorithm Doesnrsquot knowcare of mode

transport mode = link layer protocol ne legs may use ne modes

Chapter 5 slide 5

Link Layer Services link access and sharing

Sharing and multiple access allow mediumchannel sharing

reliable delivery between adjacent nodes transport layer-like reliability ACKrsquoing low bit-error link (eg fiber) rarely used high bit-error link (eg wireless) often used

error detection errors caused by signal attenuation noise receiver detects presence of errors

error correction receiver corrects errors wo resorting to retransmission

Chapter 5 slide 6

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 7

Error DetectionD = Data protected by error checking may include header fields EDC= Error Detection and Correction bits (redundancy)

bull error detection not 100 reliable may not detect errors (rarely)

bull larger EDC field yields better detection and correction

Chapter 5 slide 8

Example Parity Checking

Single Bit ParityDetect single bit errors

Two Dimensional Bit ParityDetect and correct single bit errors

0 0

In this exampleD = data bits EDC = parity bit

Chapter 5 slide 9

Checksumming Cyclic Redundancy Check

Scheme View data bits D as a binary

number

Fix r CRC bits

Choose r+1 bit pattern (generator) G

Sender choose r CRC bits R such that G exactly divides ltDRgt (modulo 2)

receiver knows G divides ltDRgt by G If non-zero remainder error detected

detect burst errors less than r+1 bits

Example D= 101110

r = 3 bits

G = 1001

Find R such thatG divides ltDRgt

(modulo 2)equivalently

G divides ltD2r XOR Rgt

Chapter 5 slide 10

CRC modulo-2 arithmetic CRC calculations are done modulo-2 arithmetic

No carries in addition No borrows in subtraction=gt Addition = subtraction = bitwise-XOR XOR review

0 XOR 0 = 0 0 XOR 1 = 1 1 XOR 0 = 1 1 XOR 1 = 0=gt a XOR 0 = a a XOR a = 0 for a=01Eg 1010 XOR 0110 = 1110

Multiplications and divisions are same as in base-2 arithmetic except all additions and subtractions are done without carries or borrowsbull That is addition = subtraction = bitwise-XOR

Chapter 5 slide 11

CRC Example (find R)

R = remainder[ ]D2r

G

Want G divides ltD2r XOR Rgt

equivalently D2r XOR R = nG

equivalently (XOR both sides)

(D2r XOR R) XOR R = nG XOR R

equivalently (R XOR R = 0 amp a XOR 0 = a)

D2r = nG XOR R

equivalently (division is modulo 2 too)

since remainder[(nG XOR R)G] = R

(note R lt G) then dividing D2r by G (modulo 2) gives remainder = R

Chapter 5 slide 12

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 13

MAC Addresses 32-bit IP address

network-layer address used to get datagram to destination IP subnet

MAC (or LAN or physical or Ethernet) address 48 bit MAC address (for most LANs)

bull burned in NIC ROM also sometimes software settable function get frame from one interface to another

physically-connected interface (same network) uses hexadecimal representation ie base-16 (ie 4

bits) it uses 16 distinct symbols 01hellip9ABCDEF 4 bits needed for each symbol 484 = 12 symbols

Eg 1A-2F-BB-76-09-AD

Chapter 5 slide 14

MAC AddressesEach adapter on LAN has unique MAC (LAN ) address

Broadcast address =FF-FF-FF-FF-FF-FF

= adapter

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(wired orwireless)

Chapter 5 slide 15

A encapsulates BrsquoMAC into the frame

A sends the frame into the medium

All nodes will hear the frame

Only B grabs the frame

All other nodes discard the frame

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

137196723

137196778

137196714

137196788

Assume bull A knows Brsquos MAC addressbull A wants to send a frame to B

Node A

Node B

MAC Addresses

Chapter 5 slide 16

ARP Address Resolution Protocol

Solution ARP Each IP node (host router)

on LAN has ARP table ARP table maps IP MAC

address for some LAN nodes

lt IP address MAC address TTLgt TTL (Time To Live) remove

mapping after TTL (typically 20 min)

A consults its table to determine Brsquos MAC given it knows Brsquos IP

Q how to construct these ARP tables

Question if A doesnrsquot know Brsquos MAC address how does it determine this MAC 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

137196723

137196778

137196714

137196788

Node A

Node B

Chapter 5 slide 17

ARP Case 1mdashSame LAN (network) A wants to send

datagram to B and Brsquos MAC address not in Arsquos ARP table

A broadcasts ARP packet containing Bs IP address dest MAC address = FF-

FF-FF-FF-FF-FF all machines on LAN

receive ARP query

B receives ARP packet replies to A with its (Bs) MAC address

A sends frame to B since it knows its MAC now

A caches IP-to-MAC address pair in its ARP table until information becomes old (times out) soft state information that

times out (goes away) unless refreshed

ARP is ldquoplug-and-playrdquo nodes create their ARP

tables without intervention from net administrator

Chapter 5 slide 18

ARP Case 2mdashrouting to another LAN

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

how does ARP work now Would the previous scenario work

datagram needs to go from A to B via R assume A knows Brsquos IP address

A

B

Chapter 5 slide 19

Herersquos how it works (A wants to send IP datagram to B)

A knows that B belongs to a different subnet by checking Brsquos IP address

A also knows IP address of router R (routing table at layer 3) A uses ARP to get Rrsquos MAC address for 111111111110 (IP address of

router) A creates frame with Rs MAC address as dest frame contains A-to-B

IP datagram Arsquos NIC sends frame and Rrsquos NIC receives it R removes IP datagram from Ethernet frame sees its destined to B R uses ARP to get Brsquos MAC address (R has Brsquos IP address included in

the just received frame) R creates frame containing A-to-B IP datagram and sends it to B

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

ARP Case 2mdashrouting to another LAN

A

B

Lecture 15 chapter 5 slide 20

Link layer Addressing last words manufacturer buys portion of MAC address space (to assure

uniqueness of MAC addresses) analogy (a) MAC address like Social Security Number (b) IP address like postal address MAC flat addressing portability

can move LAN card from one LAN to another not true for IP

Q why canrsquot we just use IP addresses ie no MAC addresses LANs designed for all network layer protocols not just IP IP address will have to be storedreconfigured to the adapter

every time the adaptercomputer is moved

Q Why canrsquot we processcheck frames at network layer instead Overhead each and every frame will be processed

(including those destined to others)

Chapter 5 slide 21

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 22

Multiple Access Links and Protocols

Two types of ldquolinksrdquo point-to-point

PPP for dial-up access point-to-point link between Ethernet switch and host

broadcast (shared wire or medium) Ethernet 80211 wireless LAN

shared wire (eg cabled Ethernet)

shared RF (eg 80211 WiFi)

shared RF(satellite)

humans at aparty

(shared air acoustical)

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 5: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 5

Link Layer Services link access and sharing

Sharing and multiple access allow mediumchannel sharing

reliable delivery between adjacent nodes transport layer-like reliability ACKrsquoing low bit-error link (eg fiber) rarely used high bit-error link (eg wireless) often used

error detection errors caused by signal attenuation noise receiver detects presence of errors

error correction receiver corrects errors wo resorting to retransmission

Chapter 5 slide 6

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 7

Error DetectionD = Data protected by error checking may include header fields EDC= Error Detection and Correction bits (redundancy)

bull error detection not 100 reliable may not detect errors (rarely)

bull larger EDC field yields better detection and correction

Chapter 5 slide 8

Example Parity Checking

Single Bit ParityDetect single bit errors

Two Dimensional Bit ParityDetect and correct single bit errors

0 0

In this exampleD = data bits EDC = parity bit

Chapter 5 slide 9

Checksumming Cyclic Redundancy Check

Scheme View data bits D as a binary

number

Fix r CRC bits

Choose r+1 bit pattern (generator) G

Sender choose r CRC bits R such that G exactly divides ltDRgt (modulo 2)

receiver knows G divides ltDRgt by G If non-zero remainder error detected

detect burst errors less than r+1 bits

Example D= 101110

r = 3 bits

G = 1001

Find R such thatG divides ltDRgt

(modulo 2)equivalently

G divides ltD2r XOR Rgt

Chapter 5 slide 10

CRC modulo-2 arithmetic CRC calculations are done modulo-2 arithmetic

No carries in addition No borrows in subtraction=gt Addition = subtraction = bitwise-XOR XOR review

0 XOR 0 = 0 0 XOR 1 = 1 1 XOR 0 = 1 1 XOR 1 = 0=gt a XOR 0 = a a XOR a = 0 for a=01Eg 1010 XOR 0110 = 1110

Multiplications and divisions are same as in base-2 arithmetic except all additions and subtractions are done without carries or borrowsbull That is addition = subtraction = bitwise-XOR

Chapter 5 slide 11

CRC Example (find R)

R = remainder[ ]D2r

G

Want G divides ltD2r XOR Rgt

equivalently D2r XOR R = nG

equivalently (XOR both sides)

(D2r XOR R) XOR R = nG XOR R

equivalently (R XOR R = 0 amp a XOR 0 = a)

D2r = nG XOR R

equivalently (division is modulo 2 too)

since remainder[(nG XOR R)G] = R

(note R lt G) then dividing D2r by G (modulo 2) gives remainder = R

Chapter 5 slide 12

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 13

MAC Addresses 32-bit IP address

network-layer address used to get datagram to destination IP subnet

MAC (or LAN or physical or Ethernet) address 48 bit MAC address (for most LANs)

bull burned in NIC ROM also sometimes software settable function get frame from one interface to another

physically-connected interface (same network) uses hexadecimal representation ie base-16 (ie 4

bits) it uses 16 distinct symbols 01hellip9ABCDEF 4 bits needed for each symbol 484 = 12 symbols

Eg 1A-2F-BB-76-09-AD

Chapter 5 slide 14

MAC AddressesEach adapter on LAN has unique MAC (LAN ) address

Broadcast address =FF-FF-FF-FF-FF-FF

= adapter

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(wired orwireless)

Chapter 5 slide 15

A encapsulates BrsquoMAC into the frame

A sends the frame into the medium

All nodes will hear the frame

Only B grabs the frame

All other nodes discard the frame

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

137196723

137196778

137196714

137196788

Assume bull A knows Brsquos MAC addressbull A wants to send a frame to B

Node A

Node B

MAC Addresses

Chapter 5 slide 16

ARP Address Resolution Protocol

Solution ARP Each IP node (host router)

on LAN has ARP table ARP table maps IP MAC

address for some LAN nodes

lt IP address MAC address TTLgt TTL (Time To Live) remove

mapping after TTL (typically 20 min)

A consults its table to determine Brsquos MAC given it knows Brsquos IP

Q how to construct these ARP tables

Question if A doesnrsquot know Brsquos MAC address how does it determine this MAC 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

137196723

137196778

137196714

137196788

Node A

Node B

Chapter 5 slide 17

ARP Case 1mdashSame LAN (network) A wants to send

datagram to B and Brsquos MAC address not in Arsquos ARP table

A broadcasts ARP packet containing Bs IP address dest MAC address = FF-

FF-FF-FF-FF-FF all machines on LAN

receive ARP query

B receives ARP packet replies to A with its (Bs) MAC address

A sends frame to B since it knows its MAC now

A caches IP-to-MAC address pair in its ARP table until information becomes old (times out) soft state information that

times out (goes away) unless refreshed

ARP is ldquoplug-and-playrdquo nodes create their ARP

tables without intervention from net administrator

Chapter 5 slide 18

ARP Case 2mdashrouting to another LAN

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

how does ARP work now Would the previous scenario work

datagram needs to go from A to B via R assume A knows Brsquos IP address

A

B

Chapter 5 slide 19

Herersquos how it works (A wants to send IP datagram to B)

A knows that B belongs to a different subnet by checking Brsquos IP address

A also knows IP address of router R (routing table at layer 3) A uses ARP to get Rrsquos MAC address for 111111111110 (IP address of

router) A creates frame with Rs MAC address as dest frame contains A-to-B

IP datagram Arsquos NIC sends frame and Rrsquos NIC receives it R removes IP datagram from Ethernet frame sees its destined to B R uses ARP to get Brsquos MAC address (R has Brsquos IP address included in

the just received frame) R creates frame containing A-to-B IP datagram and sends it to B

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

ARP Case 2mdashrouting to another LAN

A

B

Lecture 15 chapter 5 slide 20

Link layer Addressing last words manufacturer buys portion of MAC address space (to assure

uniqueness of MAC addresses) analogy (a) MAC address like Social Security Number (b) IP address like postal address MAC flat addressing portability

can move LAN card from one LAN to another not true for IP

Q why canrsquot we just use IP addresses ie no MAC addresses LANs designed for all network layer protocols not just IP IP address will have to be storedreconfigured to the adapter

every time the adaptercomputer is moved

Q Why canrsquot we processcheck frames at network layer instead Overhead each and every frame will be processed

(including those destined to others)

Chapter 5 slide 21

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 22

Multiple Access Links and Protocols

Two types of ldquolinksrdquo point-to-point

PPP for dial-up access point-to-point link between Ethernet switch and host

broadcast (shared wire or medium) Ethernet 80211 wireless LAN

shared wire (eg cabled Ethernet)

shared RF (eg 80211 WiFi)

shared RF(satellite)

humans at aparty

(shared air acoustical)

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 6: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 6

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 7

Error DetectionD = Data protected by error checking may include header fields EDC= Error Detection and Correction bits (redundancy)

bull error detection not 100 reliable may not detect errors (rarely)

bull larger EDC field yields better detection and correction

Chapter 5 slide 8

Example Parity Checking

Single Bit ParityDetect single bit errors

Two Dimensional Bit ParityDetect and correct single bit errors

0 0

In this exampleD = data bits EDC = parity bit

Chapter 5 slide 9

Checksumming Cyclic Redundancy Check

Scheme View data bits D as a binary

number

Fix r CRC bits

Choose r+1 bit pattern (generator) G

Sender choose r CRC bits R such that G exactly divides ltDRgt (modulo 2)

receiver knows G divides ltDRgt by G If non-zero remainder error detected

detect burst errors less than r+1 bits

Example D= 101110

r = 3 bits

G = 1001

Find R such thatG divides ltDRgt

(modulo 2)equivalently

G divides ltD2r XOR Rgt

Chapter 5 slide 10

CRC modulo-2 arithmetic CRC calculations are done modulo-2 arithmetic

No carries in addition No borrows in subtraction=gt Addition = subtraction = bitwise-XOR XOR review

0 XOR 0 = 0 0 XOR 1 = 1 1 XOR 0 = 1 1 XOR 1 = 0=gt a XOR 0 = a a XOR a = 0 for a=01Eg 1010 XOR 0110 = 1110

Multiplications and divisions are same as in base-2 arithmetic except all additions and subtractions are done without carries or borrowsbull That is addition = subtraction = bitwise-XOR

Chapter 5 slide 11

CRC Example (find R)

R = remainder[ ]D2r

G

Want G divides ltD2r XOR Rgt

equivalently D2r XOR R = nG

equivalently (XOR both sides)

(D2r XOR R) XOR R = nG XOR R

equivalently (R XOR R = 0 amp a XOR 0 = a)

D2r = nG XOR R

equivalently (division is modulo 2 too)

since remainder[(nG XOR R)G] = R

(note R lt G) then dividing D2r by G (modulo 2) gives remainder = R

Chapter 5 slide 12

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 13

MAC Addresses 32-bit IP address

network-layer address used to get datagram to destination IP subnet

MAC (or LAN or physical or Ethernet) address 48 bit MAC address (for most LANs)

bull burned in NIC ROM also sometimes software settable function get frame from one interface to another

physically-connected interface (same network) uses hexadecimal representation ie base-16 (ie 4

bits) it uses 16 distinct symbols 01hellip9ABCDEF 4 bits needed for each symbol 484 = 12 symbols

Eg 1A-2F-BB-76-09-AD

Chapter 5 slide 14

MAC AddressesEach adapter on LAN has unique MAC (LAN ) address

Broadcast address =FF-FF-FF-FF-FF-FF

= adapter

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(wired orwireless)

Chapter 5 slide 15

A encapsulates BrsquoMAC into the frame

A sends the frame into the medium

All nodes will hear the frame

Only B grabs the frame

All other nodes discard the frame

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

137196723

137196778

137196714

137196788

Assume bull A knows Brsquos MAC addressbull A wants to send a frame to B

Node A

Node B

MAC Addresses

Chapter 5 slide 16

ARP Address Resolution Protocol

Solution ARP Each IP node (host router)

on LAN has ARP table ARP table maps IP MAC

address for some LAN nodes

lt IP address MAC address TTLgt TTL (Time To Live) remove

mapping after TTL (typically 20 min)

A consults its table to determine Brsquos MAC given it knows Brsquos IP

Q how to construct these ARP tables

Question if A doesnrsquot know Brsquos MAC address how does it determine this MAC 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

137196723

137196778

137196714

137196788

Node A

Node B

Chapter 5 slide 17

ARP Case 1mdashSame LAN (network) A wants to send

datagram to B and Brsquos MAC address not in Arsquos ARP table

A broadcasts ARP packet containing Bs IP address dest MAC address = FF-

FF-FF-FF-FF-FF all machines on LAN

receive ARP query

B receives ARP packet replies to A with its (Bs) MAC address

A sends frame to B since it knows its MAC now

A caches IP-to-MAC address pair in its ARP table until information becomes old (times out) soft state information that

times out (goes away) unless refreshed

ARP is ldquoplug-and-playrdquo nodes create their ARP

tables without intervention from net administrator

Chapter 5 slide 18

ARP Case 2mdashrouting to another LAN

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

how does ARP work now Would the previous scenario work

datagram needs to go from A to B via R assume A knows Brsquos IP address

A

B

Chapter 5 slide 19

Herersquos how it works (A wants to send IP datagram to B)

A knows that B belongs to a different subnet by checking Brsquos IP address

A also knows IP address of router R (routing table at layer 3) A uses ARP to get Rrsquos MAC address for 111111111110 (IP address of

router) A creates frame with Rs MAC address as dest frame contains A-to-B

IP datagram Arsquos NIC sends frame and Rrsquos NIC receives it R removes IP datagram from Ethernet frame sees its destined to B R uses ARP to get Brsquos MAC address (R has Brsquos IP address included in

the just received frame) R creates frame containing A-to-B IP datagram and sends it to B

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

ARP Case 2mdashrouting to another LAN

A

B

Lecture 15 chapter 5 slide 20

Link layer Addressing last words manufacturer buys portion of MAC address space (to assure

uniqueness of MAC addresses) analogy (a) MAC address like Social Security Number (b) IP address like postal address MAC flat addressing portability

can move LAN card from one LAN to another not true for IP

Q why canrsquot we just use IP addresses ie no MAC addresses LANs designed for all network layer protocols not just IP IP address will have to be storedreconfigured to the adapter

every time the adaptercomputer is moved

Q Why canrsquot we processcheck frames at network layer instead Overhead each and every frame will be processed

(including those destined to others)

Chapter 5 slide 21

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 22

Multiple Access Links and Protocols

Two types of ldquolinksrdquo point-to-point

PPP for dial-up access point-to-point link between Ethernet switch and host

broadcast (shared wire or medium) Ethernet 80211 wireless LAN

shared wire (eg cabled Ethernet)

shared RF (eg 80211 WiFi)

shared RF(satellite)

humans at aparty

(shared air acoustical)

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 7: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 7

Error DetectionD = Data protected by error checking may include header fields EDC= Error Detection and Correction bits (redundancy)

bull error detection not 100 reliable may not detect errors (rarely)

bull larger EDC field yields better detection and correction

Chapter 5 slide 8

Example Parity Checking

Single Bit ParityDetect single bit errors

Two Dimensional Bit ParityDetect and correct single bit errors

0 0

In this exampleD = data bits EDC = parity bit

Chapter 5 slide 9

Checksumming Cyclic Redundancy Check

Scheme View data bits D as a binary

number

Fix r CRC bits

Choose r+1 bit pattern (generator) G

Sender choose r CRC bits R such that G exactly divides ltDRgt (modulo 2)

receiver knows G divides ltDRgt by G If non-zero remainder error detected

detect burst errors less than r+1 bits

Example D= 101110

r = 3 bits

G = 1001

Find R such thatG divides ltDRgt

(modulo 2)equivalently

G divides ltD2r XOR Rgt

Chapter 5 slide 10

CRC modulo-2 arithmetic CRC calculations are done modulo-2 arithmetic

No carries in addition No borrows in subtraction=gt Addition = subtraction = bitwise-XOR XOR review

0 XOR 0 = 0 0 XOR 1 = 1 1 XOR 0 = 1 1 XOR 1 = 0=gt a XOR 0 = a a XOR a = 0 for a=01Eg 1010 XOR 0110 = 1110

Multiplications and divisions are same as in base-2 arithmetic except all additions and subtractions are done without carries or borrowsbull That is addition = subtraction = bitwise-XOR

Chapter 5 slide 11

CRC Example (find R)

R = remainder[ ]D2r

G

Want G divides ltD2r XOR Rgt

equivalently D2r XOR R = nG

equivalently (XOR both sides)

(D2r XOR R) XOR R = nG XOR R

equivalently (R XOR R = 0 amp a XOR 0 = a)

D2r = nG XOR R

equivalently (division is modulo 2 too)

since remainder[(nG XOR R)G] = R

(note R lt G) then dividing D2r by G (modulo 2) gives remainder = R

Chapter 5 slide 12

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 13

MAC Addresses 32-bit IP address

network-layer address used to get datagram to destination IP subnet

MAC (or LAN or physical or Ethernet) address 48 bit MAC address (for most LANs)

bull burned in NIC ROM also sometimes software settable function get frame from one interface to another

physically-connected interface (same network) uses hexadecimal representation ie base-16 (ie 4

bits) it uses 16 distinct symbols 01hellip9ABCDEF 4 bits needed for each symbol 484 = 12 symbols

Eg 1A-2F-BB-76-09-AD

Chapter 5 slide 14

MAC AddressesEach adapter on LAN has unique MAC (LAN ) address

Broadcast address =FF-FF-FF-FF-FF-FF

= adapter

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(wired orwireless)

Chapter 5 slide 15

A encapsulates BrsquoMAC into the frame

A sends the frame into the medium

All nodes will hear the frame

Only B grabs the frame

All other nodes discard the frame

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

137196723

137196778

137196714

137196788

Assume bull A knows Brsquos MAC addressbull A wants to send a frame to B

Node A

Node B

MAC Addresses

Chapter 5 slide 16

ARP Address Resolution Protocol

Solution ARP Each IP node (host router)

on LAN has ARP table ARP table maps IP MAC

address for some LAN nodes

lt IP address MAC address TTLgt TTL (Time To Live) remove

mapping after TTL (typically 20 min)

A consults its table to determine Brsquos MAC given it knows Brsquos IP

Q how to construct these ARP tables

Question if A doesnrsquot know Brsquos MAC address how does it determine this MAC 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

137196723

137196778

137196714

137196788

Node A

Node B

Chapter 5 slide 17

ARP Case 1mdashSame LAN (network) A wants to send

datagram to B and Brsquos MAC address not in Arsquos ARP table

A broadcasts ARP packet containing Bs IP address dest MAC address = FF-

FF-FF-FF-FF-FF all machines on LAN

receive ARP query

B receives ARP packet replies to A with its (Bs) MAC address

A sends frame to B since it knows its MAC now

A caches IP-to-MAC address pair in its ARP table until information becomes old (times out) soft state information that

times out (goes away) unless refreshed

ARP is ldquoplug-and-playrdquo nodes create their ARP

tables without intervention from net administrator

Chapter 5 slide 18

ARP Case 2mdashrouting to another LAN

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

how does ARP work now Would the previous scenario work

datagram needs to go from A to B via R assume A knows Brsquos IP address

A

B

Chapter 5 slide 19

Herersquos how it works (A wants to send IP datagram to B)

A knows that B belongs to a different subnet by checking Brsquos IP address

A also knows IP address of router R (routing table at layer 3) A uses ARP to get Rrsquos MAC address for 111111111110 (IP address of

router) A creates frame with Rs MAC address as dest frame contains A-to-B

IP datagram Arsquos NIC sends frame and Rrsquos NIC receives it R removes IP datagram from Ethernet frame sees its destined to B R uses ARP to get Brsquos MAC address (R has Brsquos IP address included in

the just received frame) R creates frame containing A-to-B IP datagram and sends it to B

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

ARP Case 2mdashrouting to another LAN

A

B

Lecture 15 chapter 5 slide 20

Link layer Addressing last words manufacturer buys portion of MAC address space (to assure

uniqueness of MAC addresses) analogy (a) MAC address like Social Security Number (b) IP address like postal address MAC flat addressing portability

can move LAN card from one LAN to another not true for IP

Q why canrsquot we just use IP addresses ie no MAC addresses LANs designed for all network layer protocols not just IP IP address will have to be storedreconfigured to the adapter

every time the adaptercomputer is moved

Q Why canrsquot we processcheck frames at network layer instead Overhead each and every frame will be processed

(including those destined to others)

Chapter 5 slide 21

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 22

Multiple Access Links and Protocols

Two types of ldquolinksrdquo point-to-point

PPP for dial-up access point-to-point link between Ethernet switch and host

broadcast (shared wire or medium) Ethernet 80211 wireless LAN

shared wire (eg cabled Ethernet)

shared RF (eg 80211 WiFi)

shared RF(satellite)

humans at aparty

(shared air acoustical)

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 8: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 8

Example Parity Checking

Single Bit ParityDetect single bit errors

Two Dimensional Bit ParityDetect and correct single bit errors

0 0

In this exampleD = data bits EDC = parity bit

Chapter 5 slide 9

Checksumming Cyclic Redundancy Check

Scheme View data bits D as a binary

number

Fix r CRC bits

Choose r+1 bit pattern (generator) G

Sender choose r CRC bits R such that G exactly divides ltDRgt (modulo 2)

receiver knows G divides ltDRgt by G If non-zero remainder error detected

detect burst errors less than r+1 bits

Example D= 101110

r = 3 bits

G = 1001

Find R such thatG divides ltDRgt

(modulo 2)equivalently

G divides ltD2r XOR Rgt

Chapter 5 slide 10

CRC modulo-2 arithmetic CRC calculations are done modulo-2 arithmetic

No carries in addition No borrows in subtraction=gt Addition = subtraction = bitwise-XOR XOR review

0 XOR 0 = 0 0 XOR 1 = 1 1 XOR 0 = 1 1 XOR 1 = 0=gt a XOR 0 = a a XOR a = 0 for a=01Eg 1010 XOR 0110 = 1110

Multiplications and divisions are same as in base-2 arithmetic except all additions and subtractions are done without carries or borrowsbull That is addition = subtraction = bitwise-XOR

Chapter 5 slide 11

CRC Example (find R)

R = remainder[ ]D2r

G

Want G divides ltD2r XOR Rgt

equivalently D2r XOR R = nG

equivalently (XOR both sides)

(D2r XOR R) XOR R = nG XOR R

equivalently (R XOR R = 0 amp a XOR 0 = a)

D2r = nG XOR R

equivalently (division is modulo 2 too)

since remainder[(nG XOR R)G] = R

(note R lt G) then dividing D2r by G (modulo 2) gives remainder = R

Chapter 5 slide 12

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 13

MAC Addresses 32-bit IP address

network-layer address used to get datagram to destination IP subnet

MAC (or LAN or physical or Ethernet) address 48 bit MAC address (for most LANs)

bull burned in NIC ROM also sometimes software settable function get frame from one interface to another

physically-connected interface (same network) uses hexadecimal representation ie base-16 (ie 4

bits) it uses 16 distinct symbols 01hellip9ABCDEF 4 bits needed for each symbol 484 = 12 symbols

Eg 1A-2F-BB-76-09-AD

Chapter 5 slide 14

MAC AddressesEach adapter on LAN has unique MAC (LAN ) address

Broadcast address =FF-FF-FF-FF-FF-FF

= adapter

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(wired orwireless)

Chapter 5 slide 15

A encapsulates BrsquoMAC into the frame

A sends the frame into the medium

All nodes will hear the frame

Only B grabs the frame

All other nodes discard the frame

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

137196723

137196778

137196714

137196788

Assume bull A knows Brsquos MAC addressbull A wants to send a frame to B

Node A

Node B

MAC Addresses

Chapter 5 slide 16

ARP Address Resolution Protocol

Solution ARP Each IP node (host router)

on LAN has ARP table ARP table maps IP MAC

address for some LAN nodes

lt IP address MAC address TTLgt TTL (Time To Live) remove

mapping after TTL (typically 20 min)

A consults its table to determine Brsquos MAC given it knows Brsquos IP

Q how to construct these ARP tables

Question if A doesnrsquot know Brsquos MAC address how does it determine this MAC 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

137196723

137196778

137196714

137196788

Node A

Node B

Chapter 5 slide 17

ARP Case 1mdashSame LAN (network) A wants to send

datagram to B and Brsquos MAC address not in Arsquos ARP table

A broadcasts ARP packet containing Bs IP address dest MAC address = FF-

FF-FF-FF-FF-FF all machines on LAN

receive ARP query

B receives ARP packet replies to A with its (Bs) MAC address

A sends frame to B since it knows its MAC now

A caches IP-to-MAC address pair in its ARP table until information becomes old (times out) soft state information that

times out (goes away) unless refreshed

ARP is ldquoplug-and-playrdquo nodes create their ARP

tables without intervention from net administrator

Chapter 5 slide 18

ARP Case 2mdashrouting to another LAN

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

how does ARP work now Would the previous scenario work

datagram needs to go from A to B via R assume A knows Brsquos IP address

A

B

Chapter 5 slide 19

Herersquos how it works (A wants to send IP datagram to B)

A knows that B belongs to a different subnet by checking Brsquos IP address

A also knows IP address of router R (routing table at layer 3) A uses ARP to get Rrsquos MAC address for 111111111110 (IP address of

router) A creates frame with Rs MAC address as dest frame contains A-to-B

IP datagram Arsquos NIC sends frame and Rrsquos NIC receives it R removes IP datagram from Ethernet frame sees its destined to B R uses ARP to get Brsquos MAC address (R has Brsquos IP address included in

the just received frame) R creates frame containing A-to-B IP datagram and sends it to B

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

ARP Case 2mdashrouting to another LAN

A

B

Lecture 15 chapter 5 slide 20

Link layer Addressing last words manufacturer buys portion of MAC address space (to assure

uniqueness of MAC addresses) analogy (a) MAC address like Social Security Number (b) IP address like postal address MAC flat addressing portability

can move LAN card from one LAN to another not true for IP

Q why canrsquot we just use IP addresses ie no MAC addresses LANs designed for all network layer protocols not just IP IP address will have to be storedreconfigured to the adapter

every time the adaptercomputer is moved

Q Why canrsquot we processcheck frames at network layer instead Overhead each and every frame will be processed

(including those destined to others)

Chapter 5 slide 21

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 22

Multiple Access Links and Protocols

Two types of ldquolinksrdquo point-to-point

PPP for dial-up access point-to-point link between Ethernet switch and host

broadcast (shared wire or medium) Ethernet 80211 wireless LAN

shared wire (eg cabled Ethernet)

shared RF (eg 80211 WiFi)

shared RF(satellite)

humans at aparty

(shared air acoustical)

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 9: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 9

Checksumming Cyclic Redundancy Check

Scheme View data bits D as a binary

number

Fix r CRC bits

Choose r+1 bit pattern (generator) G

Sender choose r CRC bits R such that G exactly divides ltDRgt (modulo 2)

receiver knows G divides ltDRgt by G If non-zero remainder error detected

detect burst errors less than r+1 bits

Example D= 101110

r = 3 bits

G = 1001

Find R such thatG divides ltDRgt

(modulo 2)equivalently

G divides ltD2r XOR Rgt

Chapter 5 slide 10

CRC modulo-2 arithmetic CRC calculations are done modulo-2 arithmetic

No carries in addition No borrows in subtraction=gt Addition = subtraction = bitwise-XOR XOR review

0 XOR 0 = 0 0 XOR 1 = 1 1 XOR 0 = 1 1 XOR 1 = 0=gt a XOR 0 = a a XOR a = 0 for a=01Eg 1010 XOR 0110 = 1110

Multiplications and divisions are same as in base-2 arithmetic except all additions and subtractions are done without carries or borrowsbull That is addition = subtraction = bitwise-XOR

Chapter 5 slide 11

CRC Example (find R)

R = remainder[ ]D2r

G

Want G divides ltD2r XOR Rgt

equivalently D2r XOR R = nG

equivalently (XOR both sides)

(D2r XOR R) XOR R = nG XOR R

equivalently (R XOR R = 0 amp a XOR 0 = a)

D2r = nG XOR R

equivalently (division is modulo 2 too)

since remainder[(nG XOR R)G] = R

(note R lt G) then dividing D2r by G (modulo 2) gives remainder = R

Chapter 5 slide 12

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 13

MAC Addresses 32-bit IP address

network-layer address used to get datagram to destination IP subnet

MAC (or LAN or physical or Ethernet) address 48 bit MAC address (for most LANs)

bull burned in NIC ROM also sometimes software settable function get frame from one interface to another

physically-connected interface (same network) uses hexadecimal representation ie base-16 (ie 4

bits) it uses 16 distinct symbols 01hellip9ABCDEF 4 bits needed for each symbol 484 = 12 symbols

Eg 1A-2F-BB-76-09-AD

Chapter 5 slide 14

MAC AddressesEach adapter on LAN has unique MAC (LAN ) address

Broadcast address =FF-FF-FF-FF-FF-FF

= adapter

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(wired orwireless)

Chapter 5 slide 15

A encapsulates BrsquoMAC into the frame

A sends the frame into the medium

All nodes will hear the frame

Only B grabs the frame

All other nodes discard the frame

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

137196723

137196778

137196714

137196788

Assume bull A knows Brsquos MAC addressbull A wants to send a frame to B

Node A

Node B

MAC Addresses

Chapter 5 slide 16

ARP Address Resolution Protocol

Solution ARP Each IP node (host router)

on LAN has ARP table ARP table maps IP MAC

address for some LAN nodes

lt IP address MAC address TTLgt TTL (Time To Live) remove

mapping after TTL (typically 20 min)

A consults its table to determine Brsquos MAC given it knows Brsquos IP

Q how to construct these ARP tables

Question if A doesnrsquot know Brsquos MAC address how does it determine this MAC 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

137196723

137196778

137196714

137196788

Node A

Node B

Chapter 5 slide 17

ARP Case 1mdashSame LAN (network) A wants to send

datagram to B and Brsquos MAC address not in Arsquos ARP table

A broadcasts ARP packet containing Bs IP address dest MAC address = FF-

FF-FF-FF-FF-FF all machines on LAN

receive ARP query

B receives ARP packet replies to A with its (Bs) MAC address

A sends frame to B since it knows its MAC now

A caches IP-to-MAC address pair in its ARP table until information becomes old (times out) soft state information that

times out (goes away) unless refreshed

ARP is ldquoplug-and-playrdquo nodes create their ARP

tables without intervention from net administrator

Chapter 5 slide 18

ARP Case 2mdashrouting to another LAN

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

how does ARP work now Would the previous scenario work

datagram needs to go from A to B via R assume A knows Brsquos IP address

A

B

Chapter 5 slide 19

Herersquos how it works (A wants to send IP datagram to B)

A knows that B belongs to a different subnet by checking Brsquos IP address

A also knows IP address of router R (routing table at layer 3) A uses ARP to get Rrsquos MAC address for 111111111110 (IP address of

router) A creates frame with Rs MAC address as dest frame contains A-to-B

IP datagram Arsquos NIC sends frame and Rrsquos NIC receives it R removes IP datagram from Ethernet frame sees its destined to B R uses ARP to get Brsquos MAC address (R has Brsquos IP address included in

the just received frame) R creates frame containing A-to-B IP datagram and sends it to B

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

ARP Case 2mdashrouting to another LAN

A

B

Lecture 15 chapter 5 slide 20

Link layer Addressing last words manufacturer buys portion of MAC address space (to assure

uniqueness of MAC addresses) analogy (a) MAC address like Social Security Number (b) IP address like postal address MAC flat addressing portability

can move LAN card from one LAN to another not true for IP

Q why canrsquot we just use IP addresses ie no MAC addresses LANs designed for all network layer protocols not just IP IP address will have to be storedreconfigured to the adapter

every time the adaptercomputer is moved

Q Why canrsquot we processcheck frames at network layer instead Overhead each and every frame will be processed

(including those destined to others)

Chapter 5 slide 21

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 22

Multiple Access Links and Protocols

Two types of ldquolinksrdquo point-to-point

PPP for dial-up access point-to-point link between Ethernet switch and host

broadcast (shared wire or medium) Ethernet 80211 wireless LAN

shared wire (eg cabled Ethernet)

shared RF (eg 80211 WiFi)

shared RF(satellite)

humans at aparty

(shared air acoustical)

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 10: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 10

CRC modulo-2 arithmetic CRC calculations are done modulo-2 arithmetic

No carries in addition No borrows in subtraction=gt Addition = subtraction = bitwise-XOR XOR review

0 XOR 0 = 0 0 XOR 1 = 1 1 XOR 0 = 1 1 XOR 1 = 0=gt a XOR 0 = a a XOR a = 0 for a=01Eg 1010 XOR 0110 = 1110

Multiplications and divisions are same as in base-2 arithmetic except all additions and subtractions are done without carries or borrowsbull That is addition = subtraction = bitwise-XOR

Chapter 5 slide 11

CRC Example (find R)

R = remainder[ ]D2r

G

Want G divides ltD2r XOR Rgt

equivalently D2r XOR R = nG

equivalently (XOR both sides)

(D2r XOR R) XOR R = nG XOR R

equivalently (R XOR R = 0 amp a XOR 0 = a)

D2r = nG XOR R

equivalently (division is modulo 2 too)

since remainder[(nG XOR R)G] = R

(note R lt G) then dividing D2r by G (modulo 2) gives remainder = R

Chapter 5 slide 12

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 13

MAC Addresses 32-bit IP address

network-layer address used to get datagram to destination IP subnet

MAC (or LAN or physical or Ethernet) address 48 bit MAC address (for most LANs)

bull burned in NIC ROM also sometimes software settable function get frame from one interface to another

physically-connected interface (same network) uses hexadecimal representation ie base-16 (ie 4

bits) it uses 16 distinct symbols 01hellip9ABCDEF 4 bits needed for each symbol 484 = 12 symbols

Eg 1A-2F-BB-76-09-AD

Chapter 5 slide 14

MAC AddressesEach adapter on LAN has unique MAC (LAN ) address

Broadcast address =FF-FF-FF-FF-FF-FF

= adapter

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(wired orwireless)

Chapter 5 slide 15

A encapsulates BrsquoMAC into the frame

A sends the frame into the medium

All nodes will hear the frame

Only B grabs the frame

All other nodes discard the frame

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

137196723

137196778

137196714

137196788

Assume bull A knows Brsquos MAC addressbull A wants to send a frame to B

Node A

Node B

MAC Addresses

Chapter 5 slide 16

ARP Address Resolution Protocol

Solution ARP Each IP node (host router)

on LAN has ARP table ARP table maps IP MAC

address for some LAN nodes

lt IP address MAC address TTLgt TTL (Time To Live) remove

mapping after TTL (typically 20 min)

A consults its table to determine Brsquos MAC given it knows Brsquos IP

Q how to construct these ARP tables

Question if A doesnrsquot know Brsquos MAC address how does it determine this MAC 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

137196723

137196778

137196714

137196788

Node A

Node B

Chapter 5 slide 17

ARP Case 1mdashSame LAN (network) A wants to send

datagram to B and Brsquos MAC address not in Arsquos ARP table

A broadcasts ARP packet containing Bs IP address dest MAC address = FF-

FF-FF-FF-FF-FF all machines on LAN

receive ARP query

B receives ARP packet replies to A with its (Bs) MAC address

A sends frame to B since it knows its MAC now

A caches IP-to-MAC address pair in its ARP table until information becomes old (times out) soft state information that

times out (goes away) unless refreshed

ARP is ldquoplug-and-playrdquo nodes create their ARP

tables without intervention from net administrator

Chapter 5 slide 18

ARP Case 2mdashrouting to another LAN

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

how does ARP work now Would the previous scenario work

datagram needs to go from A to B via R assume A knows Brsquos IP address

A

B

Chapter 5 slide 19

Herersquos how it works (A wants to send IP datagram to B)

A knows that B belongs to a different subnet by checking Brsquos IP address

A also knows IP address of router R (routing table at layer 3) A uses ARP to get Rrsquos MAC address for 111111111110 (IP address of

router) A creates frame with Rs MAC address as dest frame contains A-to-B

IP datagram Arsquos NIC sends frame and Rrsquos NIC receives it R removes IP datagram from Ethernet frame sees its destined to B R uses ARP to get Brsquos MAC address (R has Brsquos IP address included in

the just received frame) R creates frame containing A-to-B IP datagram and sends it to B

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

ARP Case 2mdashrouting to another LAN

A

B

Lecture 15 chapter 5 slide 20

Link layer Addressing last words manufacturer buys portion of MAC address space (to assure

uniqueness of MAC addresses) analogy (a) MAC address like Social Security Number (b) IP address like postal address MAC flat addressing portability

can move LAN card from one LAN to another not true for IP

Q why canrsquot we just use IP addresses ie no MAC addresses LANs designed for all network layer protocols not just IP IP address will have to be storedreconfigured to the adapter

every time the adaptercomputer is moved

Q Why canrsquot we processcheck frames at network layer instead Overhead each and every frame will be processed

(including those destined to others)

Chapter 5 slide 21

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 22

Multiple Access Links and Protocols

Two types of ldquolinksrdquo point-to-point

PPP for dial-up access point-to-point link between Ethernet switch and host

broadcast (shared wire or medium) Ethernet 80211 wireless LAN

shared wire (eg cabled Ethernet)

shared RF (eg 80211 WiFi)

shared RF(satellite)

humans at aparty

(shared air acoustical)

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 11: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 11

CRC Example (find R)

R = remainder[ ]D2r

G

Want G divides ltD2r XOR Rgt

equivalently D2r XOR R = nG

equivalently (XOR both sides)

(D2r XOR R) XOR R = nG XOR R

equivalently (R XOR R = 0 amp a XOR 0 = a)

D2r = nG XOR R

equivalently (division is modulo 2 too)

since remainder[(nG XOR R)G] = R

(note R lt G) then dividing D2r by G (modulo 2) gives remainder = R

Chapter 5 slide 12

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 13

MAC Addresses 32-bit IP address

network-layer address used to get datagram to destination IP subnet

MAC (or LAN or physical or Ethernet) address 48 bit MAC address (for most LANs)

bull burned in NIC ROM also sometimes software settable function get frame from one interface to another

physically-connected interface (same network) uses hexadecimal representation ie base-16 (ie 4

bits) it uses 16 distinct symbols 01hellip9ABCDEF 4 bits needed for each symbol 484 = 12 symbols

Eg 1A-2F-BB-76-09-AD

Chapter 5 slide 14

MAC AddressesEach adapter on LAN has unique MAC (LAN ) address

Broadcast address =FF-FF-FF-FF-FF-FF

= adapter

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(wired orwireless)

Chapter 5 slide 15

A encapsulates BrsquoMAC into the frame

A sends the frame into the medium

All nodes will hear the frame

Only B grabs the frame

All other nodes discard the frame

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

137196723

137196778

137196714

137196788

Assume bull A knows Brsquos MAC addressbull A wants to send a frame to B

Node A

Node B

MAC Addresses

Chapter 5 slide 16

ARP Address Resolution Protocol

Solution ARP Each IP node (host router)

on LAN has ARP table ARP table maps IP MAC

address for some LAN nodes

lt IP address MAC address TTLgt TTL (Time To Live) remove

mapping after TTL (typically 20 min)

A consults its table to determine Brsquos MAC given it knows Brsquos IP

Q how to construct these ARP tables

Question if A doesnrsquot know Brsquos MAC address how does it determine this MAC 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

137196723

137196778

137196714

137196788

Node A

Node B

Chapter 5 slide 17

ARP Case 1mdashSame LAN (network) A wants to send

datagram to B and Brsquos MAC address not in Arsquos ARP table

A broadcasts ARP packet containing Bs IP address dest MAC address = FF-

FF-FF-FF-FF-FF all machines on LAN

receive ARP query

B receives ARP packet replies to A with its (Bs) MAC address

A sends frame to B since it knows its MAC now

A caches IP-to-MAC address pair in its ARP table until information becomes old (times out) soft state information that

times out (goes away) unless refreshed

ARP is ldquoplug-and-playrdquo nodes create their ARP

tables without intervention from net administrator

Chapter 5 slide 18

ARP Case 2mdashrouting to another LAN

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

how does ARP work now Would the previous scenario work

datagram needs to go from A to B via R assume A knows Brsquos IP address

A

B

Chapter 5 slide 19

Herersquos how it works (A wants to send IP datagram to B)

A knows that B belongs to a different subnet by checking Brsquos IP address

A also knows IP address of router R (routing table at layer 3) A uses ARP to get Rrsquos MAC address for 111111111110 (IP address of

router) A creates frame with Rs MAC address as dest frame contains A-to-B

IP datagram Arsquos NIC sends frame and Rrsquos NIC receives it R removes IP datagram from Ethernet frame sees its destined to B R uses ARP to get Brsquos MAC address (R has Brsquos IP address included in

the just received frame) R creates frame containing A-to-B IP datagram and sends it to B

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

ARP Case 2mdashrouting to another LAN

A

B

Lecture 15 chapter 5 slide 20

Link layer Addressing last words manufacturer buys portion of MAC address space (to assure

uniqueness of MAC addresses) analogy (a) MAC address like Social Security Number (b) IP address like postal address MAC flat addressing portability

can move LAN card from one LAN to another not true for IP

Q why canrsquot we just use IP addresses ie no MAC addresses LANs designed for all network layer protocols not just IP IP address will have to be storedreconfigured to the adapter

every time the adaptercomputer is moved

Q Why canrsquot we processcheck frames at network layer instead Overhead each and every frame will be processed

(including those destined to others)

Chapter 5 slide 21

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 22

Multiple Access Links and Protocols

Two types of ldquolinksrdquo point-to-point

PPP for dial-up access point-to-point link between Ethernet switch and host

broadcast (shared wire or medium) Ethernet 80211 wireless LAN

shared wire (eg cabled Ethernet)

shared RF (eg 80211 WiFi)

shared RF(satellite)

humans at aparty

(shared air acoustical)

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 12: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 12

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 13

MAC Addresses 32-bit IP address

network-layer address used to get datagram to destination IP subnet

MAC (or LAN or physical or Ethernet) address 48 bit MAC address (for most LANs)

bull burned in NIC ROM also sometimes software settable function get frame from one interface to another

physically-connected interface (same network) uses hexadecimal representation ie base-16 (ie 4

bits) it uses 16 distinct symbols 01hellip9ABCDEF 4 bits needed for each symbol 484 = 12 symbols

Eg 1A-2F-BB-76-09-AD

Chapter 5 slide 14

MAC AddressesEach adapter on LAN has unique MAC (LAN ) address

Broadcast address =FF-FF-FF-FF-FF-FF

= adapter

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(wired orwireless)

Chapter 5 slide 15

A encapsulates BrsquoMAC into the frame

A sends the frame into the medium

All nodes will hear the frame

Only B grabs the frame

All other nodes discard the frame

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

137196723

137196778

137196714

137196788

Assume bull A knows Brsquos MAC addressbull A wants to send a frame to B

Node A

Node B

MAC Addresses

Chapter 5 slide 16

ARP Address Resolution Protocol

Solution ARP Each IP node (host router)

on LAN has ARP table ARP table maps IP MAC

address for some LAN nodes

lt IP address MAC address TTLgt TTL (Time To Live) remove

mapping after TTL (typically 20 min)

A consults its table to determine Brsquos MAC given it knows Brsquos IP

Q how to construct these ARP tables

Question if A doesnrsquot know Brsquos MAC address how does it determine this MAC 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

137196723

137196778

137196714

137196788

Node A

Node B

Chapter 5 slide 17

ARP Case 1mdashSame LAN (network) A wants to send

datagram to B and Brsquos MAC address not in Arsquos ARP table

A broadcasts ARP packet containing Bs IP address dest MAC address = FF-

FF-FF-FF-FF-FF all machines on LAN

receive ARP query

B receives ARP packet replies to A with its (Bs) MAC address

A sends frame to B since it knows its MAC now

A caches IP-to-MAC address pair in its ARP table until information becomes old (times out) soft state information that

times out (goes away) unless refreshed

ARP is ldquoplug-and-playrdquo nodes create their ARP

tables without intervention from net administrator

Chapter 5 slide 18

ARP Case 2mdashrouting to another LAN

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

how does ARP work now Would the previous scenario work

datagram needs to go from A to B via R assume A knows Brsquos IP address

A

B

Chapter 5 slide 19

Herersquos how it works (A wants to send IP datagram to B)

A knows that B belongs to a different subnet by checking Brsquos IP address

A also knows IP address of router R (routing table at layer 3) A uses ARP to get Rrsquos MAC address for 111111111110 (IP address of

router) A creates frame with Rs MAC address as dest frame contains A-to-B

IP datagram Arsquos NIC sends frame and Rrsquos NIC receives it R removes IP datagram from Ethernet frame sees its destined to B R uses ARP to get Brsquos MAC address (R has Brsquos IP address included in

the just received frame) R creates frame containing A-to-B IP datagram and sends it to B

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

ARP Case 2mdashrouting to another LAN

A

B

Lecture 15 chapter 5 slide 20

Link layer Addressing last words manufacturer buys portion of MAC address space (to assure

uniqueness of MAC addresses) analogy (a) MAC address like Social Security Number (b) IP address like postal address MAC flat addressing portability

can move LAN card from one LAN to another not true for IP

Q why canrsquot we just use IP addresses ie no MAC addresses LANs designed for all network layer protocols not just IP IP address will have to be storedreconfigured to the adapter

every time the adaptercomputer is moved

Q Why canrsquot we processcheck frames at network layer instead Overhead each and every frame will be processed

(including those destined to others)

Chapter 5 slide 21

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 22

Multiple Access Links and Protocols

Two types of ldquolinksrdquo point-to-point

PPP for dial-up access point-to-point link between Ethernet switch and host

broadcast (shared wire or medium) Ethernet 80211 wireless LAN

shared wire (eg cabled Ethernet)

shared RF (eg 80211 WiFi)

shared RF(satellite)

humans at aparty

(shared air acoustical)

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 13: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 13

MAC Addresses 32-bit IP address

network-layer address used to get datagram to destination IP subnet

MAC (or LAN or physical or Ethernet) address 48 bit MAC address (for most LANs)

bull burned in NIC ROM also sometimes software settable function get frame from one interface to another

physically-connected interface (same network) uses hexadecimal representation ie base-16 (ie 4

bits) it uses 16 distinct symbols 01hellip9ABCDEF 4 bits needed for each symbol 484 = 12 symbols

Eg 1A-2F-BB-76-09-AD

Chapter 5 slide 14

MAC AddressesEach adapter on LAN has unique MAC (LAN ) address

Broadcast address =FF-FF-FF-FF-FF-FF

= adapter

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(wired orwireless)

Chapter 5 slide 15

A encapsulates BrsquoMAC into the frame

A sends the frame into the medium

All nodes will hear the frame

Only B grabs the frame

All other nodes discard the frame

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

137196723

137196778

137196714

137196788

Assume bull A knows Brsquos MAC addressbull A wants to send a frame to B

Node A

Node B

MAC Addresses

Chapter 5 slide 16

ARP Address Resolution Protocol

Solution ARP Each IP node (host router)

on LAN has ARP table ARP table maps IP MAC

address for some LAN nodes

lt IP address MAC address TTLgt TTL (Time To Live) remove

mapping after TTL (typically 20 min)

A consults its table to determine Brsquos MAC given it knows Brsquos IP

Q how to construct these ARP tables

Question if A doesnrsquot know Brsquos MAC address how does it determine this MAC 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

137196723

137196778

137196714

137196788

Node A

Node B

Chapter 5 slide 17

ARP Case 1mdashSame LAN (network) A wants to send

datagram to B and Brsquos MAC address not in Arsquos ARP table

A broadcasts ARP packet containing Bs IP address dest MAC address = FF-

FF-FF-FF-FF-FF all machines on LAN

receive ARP query

B receives ARP packet replies to A with its (Bs) MAC address

A sends frame to B since it knows its MAC now

A caches IP-to-MAC address pair in its ARP table until information becomes old (times out) soft state information that

times out (goes away) unless refreshed

ARP is ldquoplug-and-playrdquo nodes create their ARP

tables without intervention from net administrator

Chapter 5 slide 18

ARP Case 2mdashrouting to another LAN

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

how does ARP work now Would the previous scenario work

datagram needs to go from A to B via R assume A knows Brsquos IP address

A

B

Chapter 5 slide 19

Herersquos how it works (A wants to send IP datagram to B)

A knows that B belongs to a different subnet by checking Brsquos IP address

A also knows IP address of router R (routing table at layer 3) A uses ARP to get Rrsquos MAC address for 111111111110 (IP address of

router) A creates frame with Rs MAC address as dest frame contains A-to-B

IP datagram Arsquos NIC sends frame and Rrsquos NIC receives it R removes IP datagram from Ethernet frame sees its destined to B R uses ARP to get Brsquos MAC address (R has Brsquos IP address included in

the just received frame) R creates frame containing A-to-B IP datagram and sends it to B

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

ARP Case 2mdashrouting to another LAN

A

B

Lecture 15 chapter 5 slide 20

Link layer Addressing last words manufacturer buys portion of MAC address space (to assure

uniqueness of MAC addresses) analogy (a) MAC address like Social Security Number (b) IP address like postal address MAC flat addressing portability

can move LAN card from one LAN to another not true for IP

Q why canrsquot we just use IP addresses ie no MAC addresses LANs designed for all network layer protocols not just IP IP address will have to be storedreconfigured to the adapter

every time the adaptercomputer is moved

Q Why canrsquot we processcheck frames at network layer instead Overhead each and every frame will be processed

(including those destined to others)

Chapter 5 slide 21

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 22

Multiple Access Links and Protocols

Two types of ldquolinksrdquo point-to-point

PPP for dial-up access point-to-point link between Ethernet switch and host

broadcast (shared wire or medium) Ethernet 80211 wireless LAN

shared wire (eg cabled Ethernet)

shared RF (eg 80211 WiFi)

shared RF(satellite)

humans at aparty

(shared air acoustical)

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 14: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 14

MAC AddressesEach adapter on LAN has unique MAC (LAN ) address

Broadcast address =FF-FF-FF-FF-FF-FF

= adapter

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(wired orwireless)

Chapter 5 slide 15

A encapsulates BrsquoMAC into the frame

A sends the frame into the medium

All nodes will hear the frame

Only B grabs the frame

All other nodes discard the frame

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

137196723

137196778

137196714

137196788

Assume bull A knows Brsquos MAC addressbull A wants to send a frame to B

Node A

Node B

MAC Addresses

Chapter 5 slide 16

ARP Address Resolution Protocol

Solution ARP Each IP node (host router)

on LAN has ARP table ARP table maps IP MAC

address for some LAN nodes

lt IP address MAC address TTLgt TTL (Time To Live) remove

mapping after TTL (typically 20 min)

A consults its table to determine Brsquos MAC given it knows Brsquos IP

Q how to construct these ARP tables

Question if A doesnrsquot know Brsquos MAC address how does it determine this MAC 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

137196723

137196778

137196714

137196788

Node A

Node B

Chapter 5 slide 17

ARP Case 1mdashSame LAN (network) A wants to send

datagram to B and Brsquos MAC address not in Arsquos ARP table

A broadcasts ARP packet containing Bs IP address dest MAC address = FF-

FF-FF-FF-FF-FF all machines on LAN

receive ARP query

B receives ARP packet replies to A with its (Bs) MAC address

A sends frame to B since it knows its MAC now

A caches IP-to-MAC address pair in its ARP table until information becomes old (times out) soft state information that

times out (goes away) unless refreshed

ARP is ldquoplug-and-playrdquo nodes create their ARP

tables without intervention from net administrator

Chapter 5 slide 18

ARP Case 2mdashrouting to another LAN

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

how does ARP work now Would the previous scenario work

datagram needs to go from A to B via R assume A knows Brsquos IP address

A

B

Chapter 5 slide 19

Herersquos how it works (A wants to send IP datagram to B)

A knows that B belongs to a different subnet by checking Brsquos IP address

A also knows IP address of router R (routing table at layer 3) A uses ARP to get Rrsquos MAC address for 111111111110 (IP address of

router) A creates frame with Rs MAC address as dest frame contains A-to-B

IP datagram Arsquos NIC sends frame and Rrsquos NIC receives it R removes IP datagram from Ethernet frame sees its destined to B R uses ARP to get Brsquos MAC address (R has Brsquos IP address included in

the just received frame) R creates frame containing A-to-B IP datagram and sends it to B

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

ARP Case 2mdashrouting to another LAN

A

B

Lecture 15 chapter 5 slide 20

Link layer Addressing last words manufacturer buys portion of MAC address space (to assure

uniqueness of MAC addresses) analogy (a) MAC address like Social Security Number (b) IP address like postal address MAC flat addressing portability

can move LAN card from one LAN to another not true for IP

Q why canrsquot we just use IP addresses ie no MAC addresses LANs designed for all network layer protocols not just IP IP address will have to be storedreconfigured to the adapter

every time the adaptercomputer is moved

Q Why canrsquot we processcheck frames at network layer instead Overhead each and every frame will be processed

(including those destined to others)

Chapter 5 slide 21

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 22

Multiple Access Links and Protocols

Two types of ldquolinksrdquo point-to-point

PPP for dial-up access point-to-point link between Ethernet switch and host

broadcast (shared wire or medium) Ethernet 80211 wireless LAN

shared wire (eg cabled Ethernet)

shared RF (eg 80211 WiFi)

shared RF(satellite)

humans at aparty

(shared air acoustical)

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 15: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 15

A encapsulates BrsquoMAC into the frame

A sends the frame into the medium

All nodes will hear the frame

Only B grabs the frame

All other nodes discard the frame

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

137196723

137196778

137196714

137196788

Assume bull A knows Brsquos MAC addressbull A wants to send a frame to B

Node A

Node B

MAC Addresses

Chapter 5 slide 16

ARP Address Resolution Protocol

Solution ARP Each IP node (host router)

on LAN has ARP table ARP table maps IP MAC

address for some LAN nodes

lt IP address MAC address TTLgt TTL (Time To Live) remove

mapping after TTL (typically 20 min)

A consults its table to determine Brsquos MAC given it knows Brsquos IP

Q how to construct these ARP tables

Question if A doesnrsquot know Brsquos MAC address how does it determine this MAC 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

137196723

137196778

137196714

137196788

Node A

Node B

Chapter 5 slide 17

ARP Case 1mdashSame LAN (network) A wants to send

datagram to B and Brsquos MAC address not in Arsquos ARP table

A broadcasts ARP packet containing Bs IP address dest MAC address = FF-

FF-FF-FF-FF-FF all machines on LAN

receive ARP query

B receives ARP packet replies to A with its (Bs) MAC address

A sends frame to B since it knows its MAC now

A caches IP-to-MAC address pair in its ARP table until information becomes old (times out) soft state information that

times out (goes away) unless refreshed

ARP is ldquoplug-and-playrdquo nodes create their ARP

tables without intervention from net administrator

Chapter 5 slide 18

ARP Case 2mdashrouting to another LAN

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

how does ARP work now Would the previous scenario work

datagram needs to go from A to B via R assume A knows Brsquos IP address

A

B

Chapter 5 slide 19

Herersquos how it works (A wants to send IP datagram to B)

A knows that B belongs to a different subnet by checking Brsquos IP address

A also knows IP address of router R (routing table at layer 3) A uses ARP to get Rrsquos MAC address for 111111111110 (IP address of

router) A creates frame with Rs MAC address as dest frame contains A-to-B

IP datagram Arsquos NIC sends frame and Rrsquos NIC receives it R removes IP datagram from Ethernet frame sees its destined to B R uses ARP to get Brsquos MAC address (R has Brsquos IP address included in

the just received frame) R creates frame containing A-to-B IP datagram and sends it to B

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

ARP Case 2mdashrouting to another LAN

A

B

Lecture 15 chapter 5 slide 20

Link layer Addressing last words manufacturer buys portion of MAC address space (to assure

uniqueness of MAC addresses) analogy (a) MAC address like Social Security Number (b) IP address like postal address MAC flat addressing portability

can move LAN card from one LAN to another not true for IP

Q why canrsquot we just use IP addresses ie no MAC addresses LANs designed for all network layer protocols not just IP IP address will have to be storedreconfigured to the adapter

every time the adaptercomputer is moved

Q Why canrsquot we processcheck frames at network layer instead Overhead each and every frame will be processed

(including those destined to others)

Chapter 5 slide 21

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 22

Multiple Access Links and Protocols

Two types of ldquolinksrdquo point-to-point

PPP for dial-up access point-to-point link between Ethernet switch and host

broadcast (shared wire or medium) Ethernet 80211 wireless LAN

shared wire (eg cabled Ethernet)

shared RF (eg 80211 WiFi)

shared RF(satellite)

humans at aparty

(shared air acoustical)

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 16: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 16

ARP Address Resolution Protocol

Solution ARP Each IP node (host router)

on LAN has ARP table ARP table maps IP MAC

address for some LAN nodes

lt IP address MAC address TTLgt TTL (Time To Live) remove

mapping after TTL (typically 20 min)

A consults its table to determine Brsquos MAC given it knows Brsquos IP

Q how to construct these ARP tables

Question if A doesnrsquot know Brsquos MAC address how does it determine this MAC 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

137196723

137196778

137196714

137196788

Node A

Node B

Chapter 5 slide 17

ARP Case 1mdashSame LAN (network) A wants to send

datagram to B and Brsquos MAC address not in Arsquos ARP table

A broadcasts ARP packet containing Bs IP address dest MAC address = FF-

FF-FF-FF-FF-FF all machines on LAN

receive ARP query

B receives ARP packet replies to A with its (Bs) MAC address

A sends frame to B since it knows its MAC now

A caches IP-to-MAC address pair in its ARP table until information becomes old (times out) soft state information that

times out (goes away) unless refreshed

ARP is ldquoplug-and-playrdquo nodes create their ARP

tables without intervention from net administrator

Chapter 5 slide 18

ARP Case 2mdashrouting to another LAN

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

how does ARP work now Would the previous scenario work

datagram needs to go from A to B via R assume A knows Brsquos IP address

A

B

Chapter 5 slide 19

Herersquos how it works (A wants to send IP datagram to B)

A knows that B belongs to a different subnet by checking Brsquos IP address

A also knows IP address of router R (routing table at layer 3) A uses ARP to get Rrsquos MAC address for 111111111110 (IP address of

router) A creates frame with Rs MAC address as dest frame contains A-to-B

IP datagram Arsquos NIC sends frame and Rrsquos NIC receives it R removes IP datagram from Ethernet frame sees its destined to B R uses ARP to get Brsquos MAC address (R has Brsquos IP address included in

the just received frame) R creates frame containing A-to-B IP datagram and sends it to B

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

ARP Case 2mdashrouting to another LAN

A

B

Lecture 15 chapter 5 slide 20

Link layer Addressing last words manufacturer buys portion of MAC address space (to assure

uniqueness of MAC addresses) analogy (a) MAC address like Social Security Number (b) IP address like postal address MAC flat addressing portability

can move LAN card from one LAN to another not true for IP

Q why canrsquot we just use IP addresses ie no MAC addresses LANs designed for all network layer protocols not just IP IP address will have to be storedreconfigured to the adapter

every time the adaptercomputer is moved

Q Why canrsquot we processcheck frames at network layer instead Overhead each and every frame will be processed

(including those destined to others)

Chapter 5 slide 21

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 22

Multiple Access Links and Protocols

Two types of ldquolinksrdquo point-to-point

PPP for dial-up access point-to-point link between Ethernet switch and host

broadcast (shared wire or medium) Ethernet 80211 wireless LAN

shared wire (eg cabled Ethernet)

shared RF (eg 80211 WiFi)

shared RF(satellite)

humans at aparty

(shared air acoustical)

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 17: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 17

ARP Case 1mdashSame LAN (network) A wants to send

datagram to B and Brsquos MAC address not in Arsquos ARP table

A broadcasts ARP packet containing Bs IP address dest MAC address = FF-

FF-FF-FF-FF-FF all machines on LAN

receive ARP query

B receives ARP packet replies to A with its (Bs) MAC address

A sends frame to B since it knows its MAC now

A caches IP-to-MAC address pair in its ARP table until information becomes old (times out) soft state information that

times out (goes away) unless refreshed

ARP is ldquoplug-and-playrdquo nodes create their ARP

tables without intervention from net administrator

Chapter 5 slide 18

ARP Case 2mdashrouting to another LAN

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

how does ARP work now Would the previous scenario work

datagram needs to go from A to B via R assume A knows Brsquos IP address

A

B

Chapter 5 slide 19

Herersquos how it works (A wants to send IP datagram to B)

A knows that B belongs to a different subnet by checking Brsquos IP address

A also knows IP address of router R (routing table at layer 3) A uses ARP to get Rrsquos MAC address for 111111111110 (IP address of

router) A creates frame with Rs MAC address as dest frame contains A-to-B

IP datagram Arsquos NIC sends frame and Rrsquos NIC receives it R removes IP datagram from Ethernet frame sees its destined to B R uses ARP to get Brsquos MAC address (R has Brsquos IP address included in

the just received frame) R creates frame containing A-to-B IP datagram and sends it to B

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

ARP Case 2mdashrouting to another LAN

A

B

Lecture 15 chapter 5 slide 20

Link layer Addressing last words manufacturer buys portion of MAC address space (to assure

uniqueness of MAC addresses) analogy (a) MAC address like Social Security Number (b) IP address like postal address MAC flat addressing portability

can move LAN card from one LAN to another not true for IP

Q why canrsquot we just use IP addresses ie no MAC addresses LANs designed for all network layer protocols not just IP IP address will have to be storedreconfigured to the adapter

every time the adaptercomputer is moved

Q Why canrsquot we processcheck frames at network layer instead Overhead each and every frame will be processed

(including those destined to others)

Chapter 5 slide 21

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 22

Multiple Access Links and Protocols

Two types of ldquolinksrdquo point-to-point

PPP for dial-up access point-to-point link between Ethernet switch and host

broadcast (shared wire or medium) Ethernet 80211 wireless LAN

shared wire (eg cabled Ethernet)

shared RF (eg 80211 WiFi)

shared RF(satellite)

humans at aparty

(shared air acoustical)

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 18: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 18

ARP Case 2mdashrouting to another LAN

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

how does ARP work now Would the previous scenario work

datagram needs to go from A to B via R assume A knows Brsquos IP address

A

B

Chapter 5 slide 19

Herersquos how it works (A wants to send IP datagram to B)

A knows that B belongs to a different subnet by checking Brsquos IP address

A also knows IP address of router R (routing table at layer 3) A uses ARP to get Rrsquos MAC address for 111111111110 (IP address of

router) A creates frame with Rs MAC address as dest frame contains A-to-B

IP datagram Arsquos NIC sends frame and Rrsquos NIC receives it R removes IP datagram from Ethernet frame sees its destined to B R uses ARP to get Brsquos MAC address (R has Brsquos IP address included in

the just received frame) R creates frame containing A-to-B IP datagram and sends it to B

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

ARP Case 2mdashrouting to another LAN

A

B

Lecture 15 chapter 5 slide 20

Link layer Addressing last words manufacturer buys portion of MAC address space (to assure

uniqueness of MAC addresses) analogy (a) MAC address like Social Security Number (b) IP address like postal address MAC flat addressing portability

can move LAN card from one LAN to another not true for IP

Q why canrsquot we just use IP addresses ie no MAC addresses LANs designed for all network layer protocols not just IP IP address will have to be storedreconfigured to the adapter

every time the adaptercomputer is moved

Q Why canrsquot we processcheck frames at network layer instead Overhead each and every frame will be processed

(including those destined to others)

Chapter 5 slide 21

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 22

Multiple Access Links and Protocols

Two types of ldquolinksrdquo point-to-point

PPP for dial-up access point-to-point link between Ethernet switch and host

broadcast (shared wire or medium) Ethernet 80211 wireless LAN

shared wire (eg cabled Ethernet)

shared RF (eg 80211 WiFi)

shared RF(satellite)

humans at aparty

(shared air acoustical)

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 19: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 19

Herersquos how it works (A wants to send IP datagram to B)

A knows that B belongs to a different subnet by checking Brsquos IP address

A also knows IP address of router R (routing table at layer 3) A uses ARP to get Rrsquos MAC address for 111111111110 (IP address of

router) A creates frame with Rs MAC address as dest frame contains A-to-B

IP datagram Arsquos NIC sends frame and Rrsquos NIC receives it R removes IP datagram from Ethernet frame sees its destined to B R uses ARP to get Brsquos MAC address (R has Brsquos IP address included in

the just received frame) R creates frame containing A-to-B IP datagram and sends it to B

R

1A-23-F9-CD-06-9B

222222222220111111111110

E6-E9-00-17-BB-4B

CC-49-DE-D0-AB-7D

111111111112

111111111111

74-29-9C-E8-FF-55

222222222221

88-B2-2F-54-1A-0F

222222222222

49-BD-D2-C7-56-2A

ARP Case 2mdashrouting to another LAN

A

B

Lecture 15 chapter 5 slide 20

Link layer Addressing last words manufacturer buys portion of MAC address space (to assure

uniqueness of MAC addresses) analogy (a) MAC address like Social Security Number (b) IP address like postal address MAC flat addressing portability

can move LAN card from one LAN to another not true for IP

Q why canrsquot we just use IP addresses ie no MAC addresses LANs designed for all network layer protocols not just IP IP address will have to be storedreconfigured to the adapter

every time the adaptercomputer is moved

Q Why canrsquot we processcheck frames at network layer instead Overhead each and every frame will be processed

(including those destined to others)

Chapter 5 slide 21

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 22

Multiple Access Links and Protocols

Two types of ldquolinksrdquo point-to-point

PPP for dial-up access point-to-point link between Ethernet switch and host

broadcast (shared wire or medium) Ethernet 80211 wireless LAN

shared wire (eg cabled Ethernet)

shared RF (eg 80211 WiFi)

shared RF(satellite)

humans at aparty

(shared air acoustical)

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 20: ECE/CS 372 – introduction to computer networks Lecture 16

Lecture 15 chapter 5 slide 20

Link layer Addressing last words manufacturer buys portion of MAC address space (to assure

uniqueness of MAC addresses) analogy (a) MAC address like Social Security Number (b) IP address like postal address MAC flat addressing portability

can move LAN card from one LAN to another not true for IP

Q why canrsquot we just use IP addresses ie no MAC addresses LANs designed for all network layer protocols not just IP IP address will have to be storedreconfigured to the adapter

every time the adaptercomputer is moved

Q Why canrsquot we processcheck frames at network layer instead Overhead each and every frame will be processed

(including those destined to others)

Chapter 5 slide 21

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 22

Multiple Access Links and Protocols

Two types of ldquolinksrdquo point-to-point

PPP for dial-up access point-to-point link between Ethernet switch and host

broadcast (shared wire or medium) Ethernet 80211 wireless LAN

shared wire (eg cabled Ethernet)

shared RF (eg 80211 WiFi)

shared RF(satellite)

humans at aparty

(shared air acoustical)

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 21: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 21

Link Layer

1 Error detection and correction 2 Link-layer Addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 22

Multiple Access Links and Protocols

Two types of ldquolinksrdquo point-to-point

PPP for dial-up access point-to-point link between Ethernet switch and host

broadcast (shared wire or medium) Ethernet 80211 wireless LAN

shared wire (eg cabled Ethernet)

shared RF (eg 80211 WiFi)

shared RF(satellite)

humans at aparty

(shared air acoustical)

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 22: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 22

Multiple Access Links and Protocols

Two types of ldquolinksrdquo point-to-point

PPP for dial-up access point-to-point link between Ethernet switch and host

broadcast (shared wire or medium) Ethernet 80211 wireless LAN

shared wire (eg cabled Ethernet)

shared RF (eg 80211 WiFi)

shared RF(satellite)

humans at aparty

(shared air acoustical)

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 23: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 23

Multiple Access protocolsneed for sharing of mediumchannel single channel

needs be used by all nodes interferencecollision

two or more simultaneous transmissions lead to collided signals

multiple access protocol allows multiple concurrent access

algorithm that nodes use to share channel ie determines when a node can transmit

no coordination no out-of-band channelagreeing about channel sharing must use channel itself

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 24: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 24

Ideal Multiple Access Protocol

Broadcast channel of rate R bps1 when one node wants to transmit it can send

at rate R2 when M nodes want to transmit each can

send at average rate RM3 fully decentralized

no special node to coordinate transmissions no synchronization of clocks slots

4 simple

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 25: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 25

MAC Protocols a taxonomy

Three broad classes Channel Partitioning

divide channel into smaller ldquopiecesrdquo (time slots frequency code)

allocate piece to node for exclusive use

ldquoTaking turnsrdquo nodes take turns but nodes with more to send can

take longer turns

Random Access channel not divided allow collisions need to know how to ldquorecoverrdquo from collisions

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 26: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 26

Channel Partitioning MAC protocols TDMA

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

Eg 6-station LAN 134 have pkt slots 256 idle

1 3 4 1 3 4

6-slotframe

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 27: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 27

Channel Partitioning MAC protocols FDMA

FDMA frequency division multiple access channel spectrum divided into frequency bands each station assigned fixed frequency band unused transmission time in frequency bands go

idle Eg 6-station LAN 134 have pkt frequency

bands 256 idle fr

eq

uency

bands time

FDM cable

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 28: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 28

ldquoTaking Turnsrdquo MAC protocols

Polling master node

ldquoinvitesrdquo slave nodes to transmit in turn

concerns polling overhead latency single point of

failure (master)

master

slaves

poll

data

data

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 29: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 29

ldquoTaking Turnsrdquo MAC protocolsToken passing control token

passed from one node to next sequentially

If token then send message

concerns token overhead latency single point of failure

(token)

T

data

(nothingto send)

T

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 30: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 4 slide 30

ECECS 372 ndash introduction to computer networksLecture 17

Announcements

Acknowledgement slides drawn heavily from Kurose amp Ross

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 31: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 31

Random Access Protocols distributed

unlike TDMA or FDMA no coordination among nodes

one node at a time when a node transmits it does so at full data rate R

collisions can occur two or more transmitting nodes ldquocollisionrdquo

random access MAC protocol specifies how to detect collisions how to recover from collisions

examples of random access MAC protocols ALOHA CSMACD CSMACA (CSMA Carrier Sense Multiple Access CD Collision Detection CA Collision Avoidance)

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 32: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 32

Slotted ALOHA

Assumptions all frames same size

time divided into slots slot = time to transmit 1

frame

start transmit at beginning of slot only

nodes are synchronized

if multiple nodes transmit in slot all can detect collision

Operation when node gets a fresh frame

transmits in next slot

if no collision node can send new frame in next slot

if collision node retransmits frame in each subsequent slot with prob p until success

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 33: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 33

Slotted ALOHA

Pros single active node

can continuously transmit at full rate of channel

highly decentralized only slots in nodes need to be in sync

simple

Cons collisions wasting

slots idle slots wasting

slots clock synchronization

LegendC =

collisionE =

emptyidle

S = success

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 34: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 34

Slotted Aloha efficiency

suppose N nodes with many frames to send each transmits in slot with probability p

prob that a given node has success in a slot p(1-p)N-1

prob that any node has a success Np(1-p)N-1

Efficiency = Np(1-p)N-1

Efficiency long-run fraction of successful slots (many nodes all with many frames to send)

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 35: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 35

Slotted Aloha efficiency Efficiency = Np(1-p)N-1

max efficiency find p that maximizes Np(1-p)N-1

p = 1N

Max Eff = (1-1N)N-1

When N increases to max eff = (1-1N)N-1 goes

to 1e = 37

At best channel used for 37 useful transmission time

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 36: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 36

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-1t0+1]

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 37: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 37

Pure Aloha efficiency

P(success by given node) = P(node transmits) x

P(no other node transmits in [t0-1t0]

x

P(no other node transmits in [t0t0+1]

= p (1-p)N-1 (1-p)N-1

= p (1-p)2(N-1)

hellip choosing optimum p and then letting N -gt infinity

= 1(2e) = 18

(to be derived in homework problem)even worse than slotted Aloha

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 38: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 38

CSMA (Carrier Sense Multiple Access)

CSMA listen before transmitIf channel sensed idle transmit entire frame If channel sensed busy defer transmission

human analogy donrsquot interrupt others

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 39: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 39

CSMA collisionscollisions can still occurNode Brsquos transmission collides with Node Drsquos transmissioncollision is a wasteA cannot hear Brsquos signalC cannot hear Drsquos signal

spatial layout of nodes

noterole of distance amp propagation delay in collision likelihood

- Longer distances =gt weaker signals =gt collision may be recovered

- Longer delays =gt collision may be avoided

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 40: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 40

CSMACD (Collision Detection)CD (collision detection)

easy in wired LANs measure signal strengths compare transmitted received signals

difficult in wireless LANs received signal strength overwhelmed by local transmission strength

CSMACD (CSMA w Collision Detection) collisions detectable colliding transmissions aborted reducing channel wastage

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 41: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 41

CSMACD collision detection

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 42: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 42

Link Layer

1 Error detection and correction 2 Link-layer addressing3 Multiple access protocols4 Ethernet

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 43: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 43

Ethernet topology bus topology popular through mid 90s

all nodes in same collision domain (can collide with each other)

today star topology prevails active switch in center each ldquospokerdquo runs a (separate) Ethernet protocol (nodes

do not collide with each other)

bus coaxial cable

switch

star

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 44: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 44

Ethernet Frame Structure

Sending adapter encapsulates IP datagram (or other network layer protocol packet) in Ethernet frame

Preamble total 8 bytes 7 bytes each with pattern

10101010 followed by one byte with pattern 10101011

used to synchronize receiver sender clock rates (senderrsquos data rate matches receiverrsquos data rate)

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 45: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 45

Addresses 6 bytes if adapter receives frame with matching destination

address or with broadcast address (eg ARP packet) it passes data in frame to network layer protocol

otherwise adapter discards frame

Type indicates higher layer protocol (mostly IP but others possible eg Novell IPX AppleTalk)

CRC checked at receiver if error is detected frame is dropped

Ethernet Frame Structure

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 46: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 46

Ethernet Unreliable connectionless connectionless No handshaking between sending

and receiving NICs

unreliable receiving NIC doesnrsquot send acks or nacks to sending NIC stream of datagrams passed to network layer can have

gaps (missing datagrams) gaps will be filled if app is using TCP otherwise app will see gaps

Ethernetrsquos MAC protocol CSMACD(more on this nexthellip)

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 47: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 47

CSMACD vs slotted ALOHA

CSMACD1 Unsychronized

NIC (adapater) may transmit at anytime no notion of timeslots

2 Carrier-sense Never transmit if others are transmitting

3 Collision detectionstop transmitting as soon as collision is detected

4 Random backoffwait a random time before retransmitting (more later)

Slotted ALOHA1 Sychronized

transmit at beginning of a timeslot only

2 No carrier-sense No check for whether others transmit or not

3 No collision detectionno stop during collision

4 No random backoff

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 48: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 48

Notion of bit time

Example consider a 10 Mbps Ethernet linkQ1 what is a ldquobit timerdquoA1 1(10x10^6) second = 01 microsecond

Q2 how much time is ldquo96 bit timerdquoA2 96 x 01 = 96 microsecond

Before describing CSMACD letrsquos introduce

bit time = time to transmit one bit on a Ethernet link

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 49: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 49

Ethernet CSMACD algorithm

1 adapter receives datagram from network layer creates frame

2 If adapter senses channel idle for 96 bit time starts frame transmission(gap to allow interface recovery)

3 If adapter senses channel busy waits until channel idle (plus 96 bit time) then transmits

4 If adapter transmits entire frame without detecting another transmission adapter is done with frame

5 If adapter detects another transmission while transmitting aborts and sends a 48-bit jam signal(to make sure all nodes are aware of collision)

6 After aborting (after sending jam signal) adapter enters exponential backoff adapter chooses K at random(next slide is explained how) adapter waits K512 bit times returns to Step 2

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 50: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 50

Ethernetrsquos CSMACD (more)

Jam Signal make sure all other transmitters are aware of collision 48 bits

Exponential Backoff Goal adapt retrans attempts to estimate current load

heavy load random wait will be longer Light load random wait will be shorter

first collision choose K from 01hellip after 2nd collision choose K from 0123hellip after 3rd collision choose K from 01234567hellip after 10th collision choose K from 01234hellip1023hellip after mth collision choose K from 012hellip2m-1 Then delay transmission until K 512 bit times

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 51: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 51

Example A and B are connected via an Ethernet link of 10 Mbps Propagation delay between them = 224 bit time At time t=0 both transmit which results in collision After collision A chooses K=0 and B chooses K=1

A B10Mbps

Q1 how much is ldquobit timerdquo =110 = 01 microsecond Q2 at what time does collision occur

=(2242) x 01 = 112 microsecond Q3 at what time does bus become idle

=224 (both A amp B detect collision) + 48 (A amp B finish sending jam signals) + 224 (last bit of Brsquos jam signal arrives at A) = 496 bit time

=496x01 (bit time)= 496 microseccond

Q4 at what time does A begin retransmission[496 (bus becomes idle) + 96]x01 (bit time)= 592 microsecond

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance
Page 52: ECE/CS 372 – introduction to computer networks Lecture 16

Chapter 5 slide 52

Distance

A and B are connected via an Ethernet link of R bps A and B are separated by distance d meters Speed of propagation is s metersecond Length of each frame is L bits

A BR (bps)

Suppose A starts transmitting a frame and before it finishes B starts also

Q1 can A finish transmitting before it detects that B starts transmitting Basically is it possible of A not to detect collisionAnswer yes- if frame is not long enough A canrsquot detect collision

Q1 find relationship between L R s and d so A can detect collisionHints1 B canrsquot send if medium is busy listen-before-talk policy2 Think of worst case when just before the first bit coming from A

arrives to B B starts sending

d (m) s (ms)L (bits)

  • ECECS 372 ndash introduction to computer networks Lecture 16
  • Chapter 5 Data Link Layer
  • Link Layer (also known as layer 2)
  • Link layer context
  • Link Layer Services
  • Link Layer
  • Error Detection
  • Example Parity Checking
  • Checksumming Cyclic Redundancy Check
  • CRC modulo-2 arithmetic
  • CRC Example (find R)
  • Link Layer (2)
  • MAC Addresses
  • MAC Addresses (2)
  • Slide 15
  • ARP Address Resolution Protocol
  • ARP Case 1mdashSame LAN (network)
  • ARP Case 2mdashrouting to another LAN
  • ARP Case 2mdashrouting to another LAN (2)
  • Link layer Addressing last words
  • Link Layer (3)
  • Multiple Access Links and Protocols
  • Multiple Access protocols
  • Ideal Multiple Access Protocol
  • MAC Protocols a taxonomy
  • Channel Partitioning MAC protocols TDMA
  • Channel Partitioning MAC protocols FDMA
  • ldquoTaking Turnsrdquo MAC protocols
  • ldquoTaking Turnsrdquo MAC protocols (2)
  • ECECS 372 ndash introduction to computer networks Lecture 17
  • Random Access Protocols
  • Slotted ALOHA
  • Slotted ALOHA (2)
  • Slotted Aloha efficiency
  • Slotted Aloha efficiency (2)
  • Pure (unslotted) ALOHA
  • Pure Aloha efficiency
  • CSMA (Carrier Sense Multiple Access)
  • CSMA collisions
  • CSMACD (Collision Detection)
  • CSMACD collision detection
  • Link Layer (4)
  • Ethernet topology
  • Ethernet Frame Structure
  • Ethernet Frame Structure (2)
  • Ethernet Unreliable connectionless
  • CSMACD vs slotted ALOHA
  • Notion of bit time
  • Ethernet CSMACD algorithm
  • Ethernetrsquos CSMACD (more)
  • Example
  • Distance