Chapter 2

advertisement
Chapter 2
Multiple Access Protocols
Professor Rick Han
University of Colorado at Boulder
rhan@cs.colorado.edu
Announcements
• Previous lecture now online
• Homework #1 is on the Web site, due Feb. 5
• Programming assignment #1 will be available
on Web site on Tuesday, not today
• Next, Chapter 2, MAC protocols
Prof. Rick Han, University of
Colorado at Boulder
Recap of Previous Lecture
• Designing reliable ARQ protocols
•
•
•
Acknowledgements
Timeouts
Sequence numbers
•
•
Choose timeout wisely
Keep the pipe full
• Stop-and-Wait: one outstanding packet
• Go-Back-N: sliding window, cumulative ACK
• Selective Repeat: sliding window, selective ACK
• Designing efficient reliable protocols
Prof. Rick Han, University of
Colorado at Boulder
Direct-Link or Point-to-Point
Networks
• Physical layer handles bits
• Data-link layer handles packets
•
•
•
Framing
Error detection
Retransmission-based protocols
•
•
N point-to-point links
Other possibilities?
• How do I send to N hosts?
Prof. Rick Han, University of
Colorado at Boulder
Shared-Media or Broadcast
Networks
• N senders and receivers connected by a
shared medium (copper wire, atmosphere-TV!)
• Sharing access to the same media
•
Analogy: How do N persons converse in a room or
at the dinner table? At once, or one by one?
What is the communications protocol?
• Local Area Network (LAN)
802.11/Wireless
Prof. Rick Han, University of Ethernet
Ethernet (802.3)
Colorado at Boulder
Multiple Access Protocols
• Determine which host is allowed to transmit
next to a shared medium
•
•
Channel reservation: TDMA, FDMA, CDMA, Token
Ring, …
Random access: ALOHA, CSMA/CD, CSMA/CA
802.11/Wireless
Prof. Rick Han, University of Ethernet
Ethernet
Colorado at Boulder
Multiple Access Protocols (2)
Host A
Data Link
Layer
MAC Layer
• Also called Medium-Access
Control (MAC) protocols
• Before data link-layer
packets can be sent, a
sender has to gain access to
the media
•
MAC layer is often placed in
the stack between layer 2 and
layer 1
Physical
Layer
Prof. Rick Han, University of
Colorado at Boulder
Time Division Multiple Access
(TDMA)
• Divide time into multiple slots
•
•
•
Each host sends in a pre-determined slot
Out-of-band reservation mechanism
Compare to Time Division Multiplexing (TDM)
…
1
2
3
Host 1
1
2
3
Host 3
1
2
1
2
1
3
Host 2
2
Not Eth.
Prof. Rick Han, University of
Colorado at Boulder
…
3
2
Router/
Mux
1
Frequency Division Multiple
Access (FDMA)
• Divide spectrum into frequency bins
• Each host sends in a pre-determined
frequency bin
•
•
•
Out-of-band reservation mechanism
Also called Frequency Division Multiplexing (FDM)
Example: AM/FM radio, TV
Host 1
Host 2
AM
FM
500-1700 KHz 88-108 MHz
Prof. Rick Han, University of
Colorado at Boulder
Host 3
Satellite
GHz range
Freq.
(Hz)
Code Division Multiple Access
(CDMA)
• Use multiple orthogonal codes to partition a
range of spectrum
• Each host sends using a pre-determined code
•
•
•
Also called “spread spectrum”
Direct-sequence spread spectrum (802.11, cell)
Frequency-hopping spread spectrum (Bluetooth)
Host 1
Freq:
F1
F2
F3
Hopping sequence:
F1, F3, F2, F1, F3, F2, …
Host 1’s Code: 132, Host 2’s Code: 321,
Bluetooth
Host 3’s Code: 213 – all 3 codes orthogonal
Prof. Rick Han, University of
Colorado at Boulder
Host 2
Host 3
Random Access: ALOHA
Protocol
• Developed at University of Hawaii in 1971 by
Abramson
•
Ground-based UHF radios connect computers on
several island campuses to main university
computer on Oahu
• “pure” ALOHA: hosts transmit whenever they
have information to send – form of random
access
•
•
•
Collision will occur when two hosts try to transmit
packets at the same time
Hosts wait a timeout=1 RTT for an ACK.
If no ACK by timeout, then wait a randomly
selected delay to avoid repeated collisions, then
Prof. Rick Han, University of
retransmit
Colorado at Boulder
Random Access: ALOHA
Protocol (2)
• Collision of packets can occur when a packet
overlaps another packet
Packet A
time
T0
Packet B
Packet C
Collision Collision
Wasted Time
Colliding with B
Prof. Rick Han, University of
Colorado at Boulder
Wasted Time
Due to a
Collision = 2
packet intervals
Random Access: Slotted
ALOHA
• Rather than sending a packet at any time,
send along time slot boundaries
•
Collision are confined to one time slot
Packet A
time
T0
Packet B Packet C
Collision
No
Collision
Prof. Rick Han, University of
Colorado at Boulder
Wasted Time
Due to a
Collision = 1
packet interval
Random Access: Slotted
ALOHA (2)
• How do hosts synchronize to begin
transmitting along time slot boundaries?
•
One central station transmits a synchronization
pulse or beacon
• Slotted ALOHA is more efficient than
ALOHA because when there is a collision, the
wasted time is confined to one time slot
•
•
Assuming Poisson packet arrivals (memoryless),
can compute the maximum throughput of ALOHA
to be 18%.
Maximum throughput of Slotted ALOHA is 37%
• Why are ALOHA & slotted ALOHA so
inefficient?
Prof. Rick Han, University of
Colorado at Boulder
Random Access: CSMA
• ALOHA & slotted ALOHA are inefficient
because hosts don’t take into account what
other hosts are doing before they transmit
•
Example: at party, everyone speaks whenever they
want to, regardless of whether another person is
speaking
• Instead, “listen before you talk” = Carrier
Sense Multiple Access (CSMA)
•
Sense for “carriers” (see if anyone else is
transmitting) before you begin transmitting
Packet A
Host B
listens
delay
Packet B
PacketPacket
X
Y
Host B sends
Prof. Rick Han, University of
Colorado at Boulder
time
Collision still possible
over long prop. delays
Random Access:
1-Persistent CSMA
• If channel is busy,
•
•
A host listens continuously
When channel becomes free, a host transmits its
packet immediately (with probability 1)
Packet A Packet B
Host B listens
Host B sends
• Collision scenarios
•
•
•
PacketPacket
X
Y
time
Collision
Hosts A and B are far apart (long prop. delay). A’s
signal takes a long time to reach B. So, B thinks
channel is free, and begins transmitting.
Hosts B and C transmit as soon as A finishes
Still, CSMA is Prof.
more
efficient than ALOHA variants
Rick Han, University of
Colorado at Boulder
Random Access:
p-Persistent CSMA
• Generalization of 1-persistent CSMA
•
•
Typically applied to slotted channels
Slot length is chosen as maximum propagation
delay
• A host senses the channel, and
•
•
•
If slot is idle, transmit with probability p, or
defer with probability q=1-p
If next slot is idle, transmit with probability p, or
defer with probability 1-p, repeat…
If channel is busy, then sense channel
continuously until it becomes free, begin again
Prof. Rick Han, University of
Colorado at Boulder
Random Access:
Non-Persistent CSMA
• Host does not sense channel continuously
• Instead, if channel is busy,
•
•
Wait/sleep a random interval before sensing again
As with 1-persistent CSMA, as soon as channel is
idle, then send a packet
• Random interval reduces collisions
•
Higher throughput than 1-persistent CSMA when
many senders
Packet A
Host B
listens
Packet B
Random
Sleep
Host B sends
Prof. Rick Han, University of
Colorado at Boulder
time
Random Access: Ethernet
CSMA/CD
• Ethernet uses CSMA/CD, i.e. CSMA with
Collision Detection (CD)
• “Listen-while-talk” protocol
•
A host listens even while it is transmitting, and if
a collision is detected, stops transmitting
Not transmitted
Packet B
Packet A
Host B
senses
carrier
time
delay
Host B starts sending
Packet B
Prof. Rick Han, University of
Colorado at Boulder
Host B detects collision
And stops sending
Random Access: Ethernet
CSMA/CD (2)
• Can abort transmission sooner than end-ofpacket if there is a collision
•
•
Can happen if prop. delays are long
Better efficiency than pure CSMA
•
Unlike CSMA, which requires an ACK or timeout to
detect a collision
Collision detection is built into the transmitter
When collision detected, begin retransmission
• CSMA/CD doesn’t require explicit
acknowledgement
•
•
Prof. Rick Han, University of
Colorado at Boulder
Random Access: Ethernet
CSMA/CD (3)
• Exponential backoff strategy
•
•
•
•
When a collision is detected, a host waits for some
randomly chosen time, then retransmits a packet
If a second collision is detected, a host doubles
the original wait time, then retransmits the packet
Each time there is another collision, the wait time
is doubled before retransmission
Variants:
•
•
•
At each retransmission, choose a random value from the
exponentially increasing wait time.
At each retransmission, choose randomly from among a
discrete set of values within exponentially increasing
wait time
Retransmit a finite # of times
Prof. Rick Han, University of
Colorado at Boulder
Random Access: Ethernet
CSMA/CD (4)
• CSMA/CD can be used with nonpersistent, 1persistent, or p-persistent variants of CSMA
• Ethernet is synonymous with the IEEE 802.3
standard
•
•
Initial work on Ethernet at Xerox in early 70’s
Ethernet specifies 1-persistent CSMA/CD
•
Start to run into propagation delay issues and
noise amplification issues
Ethernet keeps its maximum length to 2500 m to
keep prop. delays tight, so that CSMA/CD
responds well
• To extend an Ethernet, repeaters are placed.
•
Prof. Rick Han, University of
Colorado at Boulder
Random Access: 802.11
“Wireless” Ethernet
• Employs CSMA/CA, i.e. CSMA with Collision
Avoidance (CA)
• Hidden terminal effect
•
Example: B can hear A and C, but A and C can’t
hear each other. If A is sending B, C thinks
channel is clear and starts sending => collision!
• Doesn’t happen in wired Ethernet, because hosts
can hear each other
Host A
Host B
Host C
Collision
Prof. Rick Han, University of
Colorado at Boulder
Random Access: 802.11
“Wireless” Ethernet (2)
• How to handle the hidden terminal effect?
•
•
•
•
Host A sends a Request-To-Send (RTS)
Host B sends a Clear-To-Send (CTS)
Host C hears the CTS, and does not interrupt
transmission between A and B
This helps implement Collision Avoidance
RTS
Host A
Host B
CTS
Host C
CTS
Data
Host C Suppresses Its Data
Prof. Rick Han, University of
Colorado at Boulder
Random Access: 802.11
“Wireless” Ethernet (3)
• Acknowledgements are still needed
•
•
After Host A has finished sending its data, Host
B sends an ACK
Host C hears this ACK, and sends its RTS
Data
Host A
Host B
ACK
Host C
ACK
RTS
Prof. Rick Han, University of
Colorado at Boulder
Random Access: 802.11
“Wireless” Ethernet (4)
• 802.11 does not support Collision Detection
•
•
In a wired LAN, transmitter can check voltage
levels to see if there is a collision. A remote
transmitter’s power doesn’t attenuate severely.
In a wireless LAN, the transmitter’s power
overwhelms a distant transmitter’s power, so it’s
difficult to detect collision.
• What happens if two RTS’s collide?
•
Senders realize after timeout that CTS did not
come back, and then practice exponential backoff
in trying to send new RTS’s
Prof. Rick Han, University of
Colorado at Boulder
Download