52
Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

Embed Size (px)

Citation preview

Page 1: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

Link Layer:Partitioning Dimensions;

Media Access Control using Aloha

Y. Richard Yang

11/01/2012

Page 2: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

2

Outline

Admin. and recap Intro to link layer Media access control

ALOHA protocol

Page 3: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

Admin.

Assignment 3 Due date: coming Monday Check web site for office hours and FAQs

Project proposal (due Friday) Please send email to [email protected] by

end of day Subject: Project Proposal Content:

• Team members:• Topic: • One paragraph rough idea:

Exam: next Tuesday in class

3

Page 4: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

4

Recap

App layer Handles issues such as UI Uses lower-layer provided abstractions, e.g.,

• network abstraction– e.g., HttpURLConnection in GoogleSearch

Example• location service abstraction

– e.g., Location Manager, and Location Listener in Assignment 3

Physical layer capability sender sends a seq. of bits to a receiver

Page 5: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

App Layer: Logical Communications

5

E.g.: application

provide services to users

application protocol: send

messages to peer

Page 6: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

6

Physical Communication

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

applicationtransportnetwork

linkphysical

networklink

physical

data

data

Page 7: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

7

Protocol Layering and Meta Data

Each layer takes data from above adds header (meta) information to create new data

unit passes new data unit to layer below

Page 8: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

8

Link layer: Context

Data-link layer has responsibility of transferring datagram from one node to another node

Datagram may be transferred by different link protocols over different links, e.g., Ethernet on first link, frame relay on

intermediate links 802.11 on last link

transportation analogy

trip from New Haven to San Francisco taxi: home to union

station train: union station

to JFK plane: JFK to San

Francisco airport shuttle: airport to

hotel

Page 9: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

9

Main Link Layer Services Framing

o encapsulate datagram into frame, adding header, trailer and error detection/correction

Multiplexing/demultiplexingo use frame headers to identify src, hop dest

Media access control Reliable delivery between adjacent nodes

o seldom used on low bit error link (fiber, some twisted pair)

o common for wireless links: high error rates

Page 10: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

10

Link Adaptors

link layer typically implemented in “adaptor” (aka NIC) Ethernet card,

modem, 802.11 card

adapter is semi-autonomous, implementing link & physical layers

sending side: encapsulates datagram

in a frame adds error checking bits,

rdt, flow control, etc.

receiving side looks for errors, rdt, flow

control, etc extracts datagram,

passes to receiving node

sendingnode

frame

receivingnode

datagram

frame

adapter adapter

link layer protocol

Page 11: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

11

Outline

Recap Introduction to link layer Wireless link access control

Page 12: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

12

Wireless Access Problem

Single shared broadcast channel thus, if two or more simultaneous

transmissions by nodes, due to interference, only one node can send successfully at a time

Page 13: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

13

Wireless Access Problem

The general case is challenging and largely still open

We start with the simplest scenario (e.g., 802.11 or cellular up links) in this class: a single receiver (the Access Point)

Page 14: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

14

Multiple Access Control Protocol

Protocol that determines how nodes share channel, i.e., determines when nodes can transmit

Communication about channel sharing must use channel itself !

Discussion: properties of an ideal multiple access protocol.

Page 15: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

15

Ideal Mulitple Access Protocol Efficient

Fair/rate allocation

Simple

Page 16: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

16

MAC Protocols: a Taxonomy

Goals efficient, fair, simple

Three broad classes: channel partitioning

divide channel into smaller “pieces” (time slot, frequency, code)

non-partitioning random access

• allow collisions “taking-turns”

• a token coordinates shared access to avoid collisions

Page 17: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

17

Outline

Recap Introduction to link layer Wireless link access control

partitioning dimensions

Page 18: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

18

FDMA

FDMA: frequency division multiple access Channel divided into frequency bands A transmission uses a frequency band

frequ

ency

bands time

5

1

4

3

2

6

Page 19: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

19

TDMA

TDMA: time division multiple access Time divides into frames; frame divides into

slots A transmission uses a slot in a frame

Page 20: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

20

Example: GSM

A GSM operator uses TDMA and FDMA to divide its allocated frequency divide allocated spectrum into different physical

channels; each physical channel has a frequency band of 200 kHz

partition the time of each physical channel into frames; each frame has a duration of 4.615 ms

divides each frame into 8 time slots (also called a burst)

each slot is a logical channel user data is transmitted through a logical channel

Page 21: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

21

higher GSM frame structures

935-960 MHz124 channels (200 kHz)downlink

890-915 MHz124 channels (200 kHz)uplink

frequ

ency

time

1 2 3 4 5 6 7 8

GSM TDMA frame

4.615 ms

GSM - TDMA/FDMA

GSM time-slot (normal burst)

546.5 µs577 µs

tail user data TrainingSguardspace S user data tail

guardspace

3 bits 57 bits 26 bits 57 bits1 1 3

S: indicates data or control

Page 22: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

22

SDMA

SDMA: space division multiple access Transmissions at different locations, if far

enough, can transmit simultaneously (same freq.) Example: the cellular technique

Suppose 24 MHz spectrum, 30 K per user

#user supported: = 80030

24

KHz

MHz

1 2

3 4

1 2

3 4

1 2

3 4

1 2

3 4

Using cell #user supported: = 320016*2001630

6

KHz

MHz

Q: why not divide into infinite small cells?

Page 23: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

23

CDMA

CDMA (Code Division Multiple Access) Unique “code” assigned to each user; i.e.,

code set partitioning

All transmissions share the same frequency and time; each transmission uses DSSS, and has its own “chipping” sequence (i.e., code) to encode data e.g. code = -1 1 1 -1 1 -1 1

Examples: Sprint and Verizon, WCDMA

Page 24: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

24

DSSS Revisited

user data d(t)

code c(t)

resultingsignal

1 -1

-1 1 1 -1 1 -1 1 -11 -1 -1 1 11

X

=

tb

tc

tb: bit periodtc: chip period

-1 1 1 -1 -1 1 -1 11 -1 1 -1 -11

Page 25: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

25

Illustration: CDMA/DSSS Using BPSK

Assume BPSK modulation using carrier frequency f : yi(t) = A xi(t)ci(t) sin(2 ft)

• A: amplitude of signal• f: carrier frequency• xi(t): data of user i in [+1, -1]• ci(t): code of i (a chipping sequence in [+1, -1])

Suppose only i transmits y(t) = yi(t)

Decode at receiver i incoming signal multiplied by ci(t) sin(2 ft) since, ci(t) ci(t) = 1,

yi(t)ci(t) sin(2 ft) = A xi(t) sin2(2ft)

Page 26: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

26

Illustration: Multiple User CDMA

Assume M users simultaneously transmit: y(t) = y1(t) + y2(t) … + yM(t)

At receiver i, incoming signal y(t) multiplied by ci(t) sin(2 ft)

consider the effect of j’s transmission yj(t)ci(t) sin(2 ft) = A cj(t)ci(t)xj(t) sin2(2 fct)

Page 27: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

27

CDMA: Deal with Multiple-User Interference

Two codes Ci and Cj are orthogonal, if , where we use “.” to denote inner

product, e.g.

If codes are orthogonal, multiple users can “coexist” and transmit simultaneously with minimal interference

0 ij cc

C1: 1 1 1 -1 1 -1 -1 -1 C2: 1 -1 1 1 1 -1 1 1--------------------------------------------------C1 . C2 = 1 +(-1) + 1 + (-1) +1 + 1+ (-1)+(-1)=0

Analogy: Speak in different languages!

Page 28: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

28

Capacity of CDMA

In realistic setup, cancellation of others’ transmission is incomplete

Assume the received power at base station from all nodes is the same P (how?)

The power of the transmission with known code is increased to N P, where N is chipping expansion factor

The others remain on the order of P Assume a total of M users Then

1)1( 0

M

N

NPM

NPSNR For IS-95 CDMA,

N = 1.25M/4800 = 260

B

Page 29: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

29

Generating Orthogonal Codes

The most commonly used orthogonal codes in current CDMA implementation are the Walsh Codes

nn

nnn WW

WWW

W

2

0 )1(

Page 30: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

30

Walsh Codes

1

1,1

1,-1

1,1,1,1

1,1,-1,-1

X

X,X

X,-X 1,-1,1,-1

1,-1,-1,1

1,-1,-1,1,1,-1,-1,1

1,-1,-1,1,-1,1,1,-1

1,-1,1,-1,1,-1,1,-1

1,-1,1,-1,-1,1,-1,1

1,1,-1,-1,1,1,-1,-1

1,1,-1,-1,-1,-1,1,1

1,1,1,1,1,1,1,1

1,1,1,1,-1,-1,-1,-1

1 2 4 8

n 2n

...

...

...

...

Page 31: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

31

Orthogonal Variable Spreading Factor (OSVF) Variable codes: Different users use different

lengths spreading codes Orthogonal: diff. users’ codes

are orthogonal

1

1,1

1,-1

1,1,1,1

1,1,-1,-1

X

X,X

X,-X 1,-1,1,-1

1,-1,-1,1

1,-1,-1,1,1,-1,-1,1

1,-1,-1,1,-1,1,1,-1

1,-1,1,-1,1,-1,1,-1

1,-1,1,-1,-1,1,-1,1

1,1,-1,-1,1,1,-1,-1

1,1,-1,-1,-1,-1,1,1

1,1,1,1,1,1,1,1

1,1,1,1,-1,-1,-1,-1

SF=1 SF=2 SF=4 SF=8

SF=n SF=2n

...

...

...

...

If user 1 is given code [1,1], what orthogonal codes can we give to other users?

Page 32: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

32

WCDMA Orthognal Variable Spreading Factor (OSVF) Flexible code (spreading factor) allocation

up link SF: 4 – 256 down link SF: 4 - 512

WCDMA downlink

Page 33: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

33

Summary

SDMA, TDMA, FDMA and CDMA are basic media partitioning techniques divide media into smaller “pieces” (space, time

slots, frequencies, codes) for multiple transmissions to share

A remaining question is: how does a network allocate space/time/freq/code?

Page 34: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

34

Outline

Recap Introduction to link layer Wireless link access control

partitioning dimensions media access protocols

Page 35: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

35

GSM Logical Channels and Request

Control channels Broadcast control channel

(BCCH)• from base station, announces

cell identifier, synchronization Common control channels

(CCCH)• paging channel (PCH):

base transceiver station (BTS) pages a mobile host (MS)

• random access channel (RACH): MSs for initial access, slotted Aloha

• access grant channel (AGCH): BTS informs an MS its allocation

Dedicated control channels• standalone dedicated control

channel (SDCCH): signaling and short message between MS and an MS

Traffic channels (TCH)

call setup from an MSBTSMS

RACH (request signaling channel)

AGCH (assign signaling channel)

SDCCH (request call setup)

SDCCH (assign TCH)

SDCCH message exchange

Communication

Page 36: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

36

Slotted Aloha [Norm Abramson]

Time is divided into equal size slots (= pkt trans. 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

A

B

Page 37: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

37

Slotted Aloha EfficiencyQ: What is the fraction of successful

slots?suppose n stations have packets to sendsuppose each transmits in a slot with probability

p

- prob. of succ. by a specific node: p (1-p)(n-1)

- prob. of succ. by any one of the N nodes

S(p) = n * Prob (only one transmits) = n p (1-p)(n-1)

Page 38: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

38

Goodput vs. Offered Load CurveS =

thro

ughput

= “

goodput

” (

succ

ess

rate

)

Define G = offered load = np0.5 1.0 1.5 2.0

Slotted Aloha

when G (=p*n) < 1, as p (or n) increases probability of empty slots reduces probability of collision is still low, thus goodput increases

when G (=p*n) > 1, as p (or n) increases, probability of empty slots does not reduce much, but probability of collision increases, thus goodput decreases

goodput is optimal when G (=p*n) = 1

Page 39: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

39

Maximum Efficiency vs. n

0

0.05

0.1

0.15

0.2

0.25

0.3

0.35

0.4

2 7 12 17 n

ma

xim

um

eff

icie

nc

y1/e = 0.37

At best: channeluse for useful transmissions 37%of time!

Page 40: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

40

Dynamics of (Slotted) Aloha

In reality, the number of stations backlogged is changing we need to study the dynamics when using a

fixed transmission probability p

Assume we have a total of m stations (the machines on a LAN): n of them are currently backlogged, each tries

with a (fixed) probability p the remaining m-n stations are not backlogged.

They may start to generate packets with a probability pa, where pa is much smaller than p

Page 41: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

41

Modeln backlogged

each transmits with prob. p

m-n: unbacklogged

each transmits with prob. pa

Page 42: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

42

Dynamics of Aloha: Effects of Fixed Probability

n: number of backlogged stations

0 m

successful transmission rate at

offered load np + (m-n)pa

new arrival rate:(m-n) pa

desirable stable point

undesirable stable point

Lesson: if we fix p, but n varies, we may have an undesirable stable point

offered load = 1

- assume a total ofm stations- pa << p- success rate is thedeparture rate, the rate the backlog is reducing

dep.andarrivalrateofbackloggedstations

Page 43: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

Backup Slides: Error Corrections Codes

43

Page 44: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

44

Reed-Solomon Codes

Very commonly used, send nsymbols for k data symbols e.g., n = 255, k = 223

We will discuss the original version (1960) modern versions are slightly different; they use generator

polynomial, but the idea is essentially the same

If the data we want to send is (x0, x1,…, xk-1), where xi are data symbols, define polynomial P(t) = x0 + x1t + x2t + …xk-1tk-1

Assume is a generator of the symbol field (i.e., i not equal to j if i not equal to j)

Then for the data sequence, send P(0), P(), P(2), P(n-1) to receiver

Page 45: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

45

Reed-Solomon Codes

Receive the message P(0), P(), P(2), P(n-1)

If no error, can recover data from any k equations:

)1)(1(1

2)1(2

110

1

)1(21

42

210

2

11

2210

0

...)(

...

...)(

...)(

)0(

knk

nnn

kk

kk

xxxxP

xxxxP

xxxxP

xP

since any k equations are independent, they have a unique solution

Page 46: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

46

Reed-Solomon Codes: Handling Errors

But, what if s errors occur during transmission?

Keep a counter (vote) for each solution

Enumerate all combinations of k equations, for each combination, solve it, and increase the counter of the solution

Identify the solution which gets the largest # of “votes”

Page 47: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

47

Reed-Solomon Codes

The transmitted data is the correct solution for n-s equations, and thus gets

votes (i.e., combinations of k equations)

An incorrect solution can satisfy at most

k-1+s equations, and the # of votes it can get is at most:

k

sn

k

sk 1

Page 48: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

48

Reed-Solomon Codes

If

or (n-s > k – 1 + s) or (n-k > 2s – 1) or (n-k s), it can correct any s errors

k

sk

k

sn 1

Page 49: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

49

Reed-Solomon Codes The voting-based decoding algorithm proposed in 1960

is inefficient 1967 - Berlekamp introduced first truly efficient

algorithm for both binary and nonbinary codes. Complexity increases linearly with number of errors

1975 - Sugiyama, et al. Showed that Euclid’s algorithm can be used to decode R-S codes

Below is a typical current decoder

Page 50: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

50

Pure (unslotted) Aloha Unslotted Aloha: simpler, no clock

synchronization Whenever pkt needs transmission:

send without awaiting for the beginning of slot

Collision probability increases: pkt sent at t0 collide with other pkts sent in [t0-1,

t0+1]

Page 51: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

51

Pure Aloha (cont.)Assume a node transmit with probability p in one unit of time

P(success by a given node) = P(node transmits) * P(no other node transmits in [t0-1,t0]

* P(no other node transmits in [t0, t0+1]

= p . (1-p)n-1 . (1-p)n-1

= p . (1-p)2(n-1)

P(success by any of N nodes) = n p . (1-p)2(n-1)

- Bound: 1/(2e) = .18

Page 52: Link Layer: Partitioning Dimensions; Media Access Control using Aloha Y. Richard Yang 11/01/2012

52

Goodput vs. Offered LoadS =

thro

ughput

= “

goodput

” (

succ

ess

rate

)

G = offered load = Np0.5 1.0 1.5 2.0

0.1

0.2

0.3

0.4

Pure Aloha

protocol constrainseffective channelthroughput!

Slotted Aloha