1718-Multiaccess.ppt

advertisement
EE122: Multi-Access
Aloha, Ethernet, 802.11
November 10, 2003
Katz, Stoica F04
EECS 122:
Introduction to Computer Networks
Multiaccess Protocols
Computer Science Division
Department of Electrical Engineering and Computer Sciences
University of California, Berkeley
Berkeley, CA 94720-1776
Katz, Stoica F04
Today’s Lecture: 21
2
17, 18, 19, 20
6
10,11
Transport
14, 15,
16
7, 8, 9
21, 22, 23
24
Application
Network (IP)
Link
Physical
6/27/2016 7:55 PM
Katz, Stoica F04
3
Up Until Now.....

Short-term contention is loss-less
- main resource (link bandwidth) is controlled by router
- router deals with short-term contention by queueing
packets
- switch algorithms and router buffers ensure no packets
are dropped due to short-term contention

We have focused on long-term contention
- queueing schemes (FQ, FIFO, RED, etc.)
- end-to-end congestion control (TCP)
6/27/2016 7:55 PM
Katz, Stoica F04
4
What’s New in This Lecture?

Short-term contention leads to loss!

Lecture deals with networking over shared media
- long-range radio
- ethernet
- short-range radio

Also known as “multiple-access”
- don’t go through central router to get access to link
- instead, multiple users can access shared medium
6/27/2016 7:55 PM
Katz, Stoica F04
5
Medium Access Protocols

Channel partitioning
- Divide channel into smaller “pieces” (e.g., time slots,
frequency)
- Allocate a piece to node for exclusive use

Random access
- Allow collisions
- “recover” from collisions

“Taking-turns”
- Tightly coordinate shared access to avoid collisions
6/27/2016 7:55 PM
Katz, Stoica F04
6
Problem in a Nutshell

Shared medium
- If two users send at the same time, collision results in
no packet being received (interference)
- If no users send, channel goes idle
- Thus, want to have only one user send at a time

Want high network utilization
- TDMA doesn’t give high utilization

Want simple distributed algorithm
- no fancy token-passing schemes that avoid collisions
6/27/2016 7:55 PM
Katz, Stoica F04
7
What Layer?

Where should short-term contention be handled?

Network layer?

Application layer?

Link layer?
6/27/2016 7:55 PM
Katz, Stoica F04
8
Focus of Lecture

Understanding basic algorithmic choices

Simple performance analysis

Will not stress the practical details
- framing, packet formats, etc.
6/27/2016 7:55 PM
Katz, Stoica F04
9
Aloha

Ralph Abramson left Stanford in search of surfing

Set up first radio-based data communication system
connecting the Hawaiian islands
- hub at alohanet HQ
- many other sites on islands

Had two radio channels:
- random access: sites sent data on this channel
- broadcast: only used by hub to rebroadcast incoming data
6/27/2016 7:55 PM
Katz, Stoica F04 10
Aloha Transmission Strategy

When new data arrived at site, it was sent to hub

Site then listened to broadcast channel
- if it heard data repeated, knew transmission was rec’d
- if it didn’t hear data correctly, it assumed a collision

If collision, site then waited random delay before
retransmitting
6/27/2016 7:55 PM
Katz, Stoica F04
11
Simple, but Radical

Aloha is to multiple access what Internet is to
telephony

Previous attempts all partitioned channel
- TDMA, FDMA, etc.

Aloha optimized the common case (few senders)
and dealt with collisions through retries
- sound familiar?
6/27/2016 7:55 PM
Katz, Stoica F04 12
Why is this better than TDMA?

In TDMA, you always have to wait your turn
- delay proportional to number of sites

In Aloha, can send immediately

Aloha gives much lower delays, at the price of
lower utilization (as we will see)
6/27/2016 7:55 PM
Katz, Stoica F04 13
Slotted Aloha

Divide time into slots

Only start transmission at beginning of slots

Decreases chance of “partial collisions”
6/27/2016 7:55 PM
Katz, Stoica F04 14
Performance of Slotted Aloha



Time is divided into equal size slots (= packet transmission time)
Node with new arriving pkt: transmit at beginning of next slot
If collision: retransmit pkt in future slots with probability p, until
successful.
Success (S), Collision (C), Empty (E) slots
6/27/2016 7:55 PM
Katz, Stoica F04 15
Slotted Aloha Efficiency


What is the maximum fraction of successful
transmissions?
Suppose N stations have packets to send
- Each transmits in slot with probability p
- Prob. successful transmission S is (very approximated
analysis!):
by a particular node i:
Si = p (1-p)(N-1)
by exactly one of N nodes
S = Prob (only one transmits) = N p (1-p)(N-1) <= 1/e = 0.37
but must have p proportional to 1/N
6/27/2016 7:55 PM
Katz, Stoica F04 16
Ethernet

Shared medium (coax cable)

But, can “sense” carrier to see if other nodes are
broadcasting at the same time
- this sensing is subject to time-lag
- can only detect those who were sending a short while
before

Can monitor channel to detect collisions
- once sending, can tell if anyone else is sending too
6/27/2016 7:55 PM
Katz, Stoica F04 17
CSMA and CSMA/CD

Carrier sense multiple access: CSMA
- listen before you start talking

CSMA with collision detect: CSMA/CD
- stop talking when you hear someone else talking
6/27/2016 7:55 PM
Katz, Stoica F04 18
CSMA: Carrier Sense Multiple Access

CS (Carrier Sense) means that each node can
distinguish between an idle and a busy link

Sender operations:
- If channel sensed idle: transmit entire packet
- If channel sensed busy, defer transmission
• various retry algorithms
6/27/2016 7:55 PM
Katz, Stoica F04 19
CSMA collisions
Collisions can occur:
spatial layout of nodes along ethernet
propagation delay means
two nodes may not
hear each other’s
transmission
Collision:
entire packet transmission
time wasted
Note:
role of distance and
propagation delay in
determining collision prob.
6/27/2016 7:55 PM
Katz, Stoica F04 20
CSMA/CD (Collision Detection)

Collisions detected within short time

Colliding transmissions aborted, reducing channel wastage

Easy in wired LANs:
- measure signal strengths,
- compare transmitted, received signals

Difficult in wireless LANs
6/27/2016 7:55 PM
Katz, Stoica F04 21
CSMA/CD collision detection
6/27/2016 7:55 PM
Katz, Stoica F04 22
Ethernet Frame Structure

Sending adapter encapsulates IP datagram

Preamble:
- 7 bytes with pattern 10101010 followed by one byte
with pattern 10101011
- Used to synchronize receiver, sender clock rates
6/27/2016 7:55 PM
Katz, Stoica F04 23
Ethernet Frame Structure (more)


Addresses: 6 bytes, frame is received by all adapters on a
LAN and dropped if address does not match
Type: 2 bytes, indicates the higher layer protocol
- E.g., IP, Novell IPX, AppleTalk


CRC: 4 bytes, checked at receiver, if error is detected, the
frame is simply dropped
Data payload: maximum 1500 bytes, minimum 46 bytes
6/27/2016 7:55 PM
Katz, Stoica F04 24
Ethernet’s CSMA/CD

Sense channel, if idle
- If detect another transmission
• Abort, send jam signal
• Delay, and try again
- Else
• Send frame

Receiver accepts:
- Frames addressed to its own address
- Frames addressed to the broadcast address (broadcast)
- Frames addressed to a multicast address, if it was
instructed to listen to that address
- All frames (promiscuous mode)
6/27/2016 7:55 PM
Katz, Stoica F04 25
Ethernet’s CSMA/CD (more)

Jam signal: make sure all other transmitters are
aware of collision; 48 bits;

Exponential back-off
- Goal: adapt retransmission attempts to estimated
current load
- Heavy load: random wait will be longer
- First collision: choose K from {0,1}; delay is K x 512 bit
transmission times
- After second collision: choose K from {0,1,2,3}…
- After ten or more collisions, choose K from
{0,1,2,3,4,…,1023}
6/27/2016 7:55 PM
Katz, Stoica F04 26
Next Few Slides

Practical aspects of ethernet

Then on to theoretical aspects
6/27/2016 7:55 PM
Katz, Stoica F04 27
Minimum Packet Size





Why put a minimum packet size?
Give a host enough time to detect collisions
In Ethernet, minimum packet size = 64 bytes (two
6-byte addresses, 2-byte type, 4-byte CRC, and
46 bytes of data)
If host has less than 46 bytes to send, the
adaptor pads (adds) bytes to make it 46 bytes
What is the relationship between minimum
packet size and the length of the LAN?
6/27/2016 7:55 PM
Katz, Stoica F04 28
Minimum Packet Size (more)
Host 1
a) Time = t; Host 1
starts to send frame
Host 2
propagation delay (d)
Host 1
b) Time = t + d; Host 2
starts to send a frame
just before it hears from
host 1’s frame
c) Time = t + 2*d; Host 1
hears Host 2’s frame 
detects collision
Host 2
propagation delay (d)
Host 1
Host 2
propagation delay (d)
LAN length = (min_frame_size)*(light_speed)/(2*bandwidth) =
= (8*64b)*(2.5*108mps)/(2*107 bps) = 6400m approx
6/27/2016 7:55 PM
Katz, Stoica F04 29
Ethernet Technologies: 10Base2




10: 10Mbps; 2: under 200 meters max cable length
Thin coaxial cable in a bus topology
Repeaters used to connect up to multiple segments
Repeater repeats bits it hears on one interface to its other interfaces:
physical layer device only!
6/27/2016 7:55 PM
Katz, Stoica F04 30
10BaseT and 100BaseT



10/100 Mbps rate; later called “fast ethernet”
T stands for Twisted Pair
Hub to which nodes are connected by twisted pair, thus
“star topology”
6/27/2016 7:55 PM
Katz, Stoica F04 31
10BaseT and 100BaseT (more)




Max distance from node to Hub is 100 meters
Hub can disconnect “jabbering” adapter
Hub can gather monitoring information, statistics for display
to LAN administrators
Hubs still preserve one collision domain
- Every packet is forwarded to all hosts

Use bridges to address this problem
- Bridges forward a packet only to the destination leading to the
destination
6/27/2016 7:55 PM
Katz, Stoica F04 32
Gbit Ethernet





Use standard Ethernet frame format
Allows for point-to-point links and shared broadcast channels
In shared mode, CSMA/CD is used; short distances between
nodes to be efficient
Uses hubs, called here “Buffered Distributors”
Full-Duplex at 1 Gbps for point-to-point links
6/27/2016 7:55 PM
Katz, Stoica F04 33
Interconnecting LANs

Why not just one big LAN?
- Limited amount of supportable traffic: on single LAN, all
stations must share bandwidth
- Limited length
- Large “collision domain” (can collide with many stations)
6/27/2016 7:55 PM
Katz, Stoica F04 34
Family of Backoff Algorithms

Use slotted transmission scheme
- carrier sense is irrelevant in slotted model

When experience k’th collision for a particular
packet, send packet with probability 1/f(k) in each
successive slot (until transmitted)

Ethernet uses f(k)=2k (with a bound on k)
6/27/2016 7:55 PM
Katz, Stoica F04 35
Dynamics of Backoff Algorithms

Is ethernet asymptotically stable?
- if we let number of hosts to increase without bound, will
the channel have a nonzero throughput?
- Answer: no (no matter what f(k) is)
- Insight: jam medium for time taken to achieve sizable
backlog; once this happens, very little chance channel
will become unclogged
6/27/2016 7:55 PM
Katz, Stoica F04 36
Is Ethernet “Fair”?




No, it has “capture effect”
Consider two nodes competing for the ethernet,
both with an infinite set of packets to send
There is a finite chance that one will never send
another packet, ever
Moreover, with probability one only one node will
achieve an infinite number of transmissions
6/27/2016 7:55 PM
Katz, Stoica F04 37
Capture Effect


Assume there is a collision between a node with
backoff counter 1 and backoff counter k
First node will win unless
- it chooses the second slot (probability 1/2) and
- other node chooses first slot (probability 1/f(k))

Probability that second node loses all
subsequent collisions:
- L=k (1-1/f(k)) ≈ exp(-k1/f(k))
- if f(k) grows faster than linearly, then L is nonzero
6/27/2016 7:55 PM
Katz, Stoica F04 38
Wasted Time

If nodes don’t have infinite backlog of packets,
then the nodes will “take turns” on long time
scales; first one dumps its queue, then the other

For backoff functions faster than linear, but
slower than exponential, the “wasted time” when
switching over is small compared to the dumping
time

For exponential backoffs, the wasted time is
proportional to dumping times
6/27/2016 7:55 PM
Katz, Stoica F04 39
Summary of Backoff

Slower than linear:
- no capture
- bounded utilization (due to ongoing collisions)

Between linear and exponential
- capture
- full utilization

Exponential and faster
- capture
- bounded utilization (idle time between turns)
6/27/2016 7:55 PM
Katz, Stoica F04 40
Ethernet vs 802.11

Ethernet: one shared “collision” domain

802.11: radios have small range compared to
overall system: collisions are local
- collisions are at receiver, not sender
- carrier-sense plays different role

CSMA/CA not CSMA/CD
- collision avoidance, not collision detection
6/27/2016 7:55 PM
Katz, Stoica F04 41
802.11

Designed for use in limited geographical area
(i.e., couple of hundreds of meters)

Designed for three physical media (run at either
1Mbps or 2 Mbps)
- Two based on spread spectrum radio
- One based on diffused infrared
6/27/2016 7:55 PM
Katz, Stoica F04 42
Physical Link

Frequency hoping
- Transmit the signal over multiple frequencies
- The sequence of frequencies is pseudo-random, i.e., both sender
and receiver use the same algorithm to generate their sequences

Direct sequence
- Represent each bit by multiple (e.g., n) bits in a frame; XOR signal
with a pseudo-random generated sequence with a frequency n
times higher

Infrared signal
- Sender and receiver do not need a clear line of sight
- Limited range; order of meters
6/27/2016 7:55 PM
Katz, Stoica F04 43
Collision Avoidance: The Problems

Reachability is not transitive: if A can reach B, and B can
reach C, it doesn’t necessary mean that A can reach C
A


B
C
D
Hidden nodes: A and C send a packet to B; neither A nor C
will detect the collision!
Exposed node: B sends a packet to A; C hears this and
decides not to send a packet to D (despite the fact that
this will not cause interference)!
6/27/2016 7:55 PM
Katz, Stoica F04 44
Multiple Access with Collision Avoidance
(MACA)
sender
RTS
receiver
other node in
sender’s range
CTS
data
ACK

Before every data transmission
- Sender sends a Request to Send (RTS) frame containing the length of
the transmission
- Receiver respond with a Clear to Send (CTS) frame
- Sender sends data
- Receiver sends an ACK; now another sender can send data

When sender doesn’t get a CTS back, it assumes collision
6/27/2016 7:55 PM
Katz, Stoica F04 45
Other Nodes

When you hear a CTS, you keep quiet until
scheduled transmission is over (hear ACK)

If you hear RTS, but not CTS, you can send
- interfering at source but not at receiver is ok
- can cause problems when a CTS is interfered with
6/27/2016 7:55 PM
Katz, Stoica F04 46
Summary


Problem: arbitrate between multiple hosts
sharing a common communication media
Wired solution: Ethernet (use CSMA/CD)
- Detect collisions
- Backoff exponentially on collision

Wireless solution: 802.11 (CSMA/CA)
- Use MACA protocol
- Cannot detect collisions; try to avoid them
- Distribution system & frame format in discussion
sections
6/27/2016 7:55 PM
Katz, Stoica F04 47
What You Need to Know

Basics of Aloha and Ethernet contention
algorithms

Basics of 802.11 contention algorithm
6/27/2016 7:55 PM
Katz, Stoica F04 48
Download