0% found this document useful (0 votes)
25 views

Data Communication Networks: Saad Mneimneh Computer Science Hunter College of CUNY New York

This document outlines various techniques for coordinating access to a shared communication medium in multi-access networks. It discusses Aloha, a random access protocol where nodes transmit randomly. It describes how Aloha can be stabilized by either blocking packets from backlogged nodes or dynamically adjusting the transmission probability to maintain an expected number of transmissions per slot of 1. Estimating the number of backlogged nodes and updating the estimate over time is discussed as part of dynamically adjusting the transmission probability. Finally, modeling the stabilized Aloha protocol as an M/G/1 queue with vacations is presented as a way to analyze delay.

Uploaded by

linchi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views

Data Communication Networks: Saad Mneimneh Computer Science Hunter College of CUNY New York

This document outlines various techniques for coordinating access to a shared communication medium in multi-access networks. It discusses Aloha, a random access protocol where nodes transmit randomly. It describes how Aloha can be stabilized by either blocking packets from backlogged nodes or dynamically adjusting the transmission probability to maintain an expected number of transmissions per slot of 1. Estimating the number of backlogged nodes and updating the estimate over time is discussed as part of dynamically adjusting the transmission probability. Finally, modeling the stabilized Aloha protocol as an M/G/1 queue with vacations is presented as a way to analyze delay.

Uploaded by

linchi
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 18

Data Communication Networks

Lecture 9
Saad Mneimneh
Computer Science
Hunter College of CUNY
New York

Multiaccess networks . . . . . . . . . . .
Aloha. . . . . . . . . . . . . . . . . . . . . .
Probability of successful transmission
Expected number of arrivals . . . . . .
Stability . . . . . . . . . . . . . . . . . . . .
Stabilizing Aloha . . . . . . . . . . . . . .
Blocking packets . . . . . . . . . . . . . .
Stability after blocking . . . . . . . . . .
p small enough... . . . . . . . . . . . . . .
Maintaining g(n) = 1 . . . . . . . . . . .
Estimating n . . . . . . . . . . . . . . . . .
Delay(assuming you know M/G/1) . . .
CSMA Aloha. . . . . . . . . . . . . . . . .
Expected slot length. . . . . . . . . . . .
Stability of CSMA . . . . . . . . . . . . .
CSMA/CD Aloha Ethernet . . . . .
Expected slot length. . . . . . . . . . . .
Throughput of CSMA/CD . . . . . . .
Ethernet . . . . . . . . . . . . . . . . . . . .
Ethernet algorithm . . . . . . . . . . . . .
Why 2 ? . . . . . . . . . . . . . . . . . . .
Ethernet technologies . . . . . . . . . . .
Token Ring . . . . . . . . . . . . . . . . . .
Ring as a Star . . . . . . . . . . . . . . . .
Token implementation . . . . . . . . . .
Idle token and busy token . . . . . . . .
Releasing the token . . . . . . . . . . . .
Issues to be considered . . . . . . . . . .
Frame format . . . . . . . . . . . . . . . .
FDDI . . . . . . . . . . . . . . . . . . . . . .
Analysis of FDDI . . . . . . . . . . . . . .
Analysis of FDDI (cont.) . . . . . . . . .
Analysis of FDDI (cont.) . . . . . . . . .
Analysis of FDDI (cont.) . . . . . . . . .

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.

2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35

Multiaccess networks

Nodes are not connected by separate point-to-point links


Nodes share a communication medium
All nodes transmit using the shared medium and all nodes see all messages
Need to coordinate the use of the shared medium (e.g. collisions)
Examples: Ethernet and Token Ring

Ethernet

Token Ring

Ethernet (IEEE 802.3), developed in the 1970s, uses an algorithm that has roots in the Aloha
protocol developed by the University of Hawai
Token Right (IEEE 802.5) uses an algorithm developed by IBM in the 1980s

Aloha

m nodes, each with a Poisson arrival of rate /m


Time is divided into slots, each slot corresponds to the time of transmitting a packet (packet have
same size)
Feedback at the end of each slot

0: slot was idle


1: transmission was successful
e: error, e.g. collision

Aloha (simplified version): each node with a packet at the beginning of a slot (backlogged node),
transmits with probability p

Probability of successful transmission

Assme n backlogged nodes

The probability of a successful transmission is


Psucc =

n
p(1 p)n1
1

Using the approximation (1 p)n enp for small p, we get


Psucc

np np
e
npenp = g(n)eg(n)
1p

where g(n) = np is the expected number of transmission attempts

Psucc is also the expected number of departures per time slot

Expected number of arrivals

Let N (t) be the number of arrivals at a node during time interval t

( t)x e m t
P r[N (t) = x] = m
(Poisson)
x!

The expected number of arrivals per time slot is


mP r[N (1) > 0] = m(1 P r[N (1) = 0])
= m(1 e/m )
(if m >> )

Therefore, for stability we need


< Psucc = g(n)eg(n)

Stability
1/e

g(n)e-g(n)

n=0

g(n)=1

n=m

Maximum throughput = 1/e when g(n) = 1


Aloha is not stable

there is one stable point with throughput < 1/e


there is one unstable point, in the event of crossing that point (n considerable fraction of m),
the system goes unbounded, and throughput goes to zero

Stabilizing Aloha
We will look at two ways for stabilizing Aloha:

Blocking future packets on backlogged nodes

Changing p dynamically to maintain g(n) = 1

Blocking packets

Assume backlogged nodes are not allowed to receive more packets

a packet arriving at a backlogged node simply disappears


each node keeps at most one packet

The expected number of arrivals is now


(m n)(1 e/m ) = (1 n/m)m(1 e/m )
(1 n/m) (if m >> )

n=0
n=m0
horizontal line in previous figure becomes oblique

The oblique line will possibly cross the curve at another stable point

Stability after blocking

1/e

g(n)e-g(n)

(1-n/m)
undesired
stable point

n=0

n=m

Crossing the unstable point will now lead to another stable point
The second stable point, however, is not desired

g(n)=1

throughput is close to zero


high fraction of nodes are backlogged (and now cannot receive new packets)

The undesired stable point can be eliminated by making p small enough for the line to move inside
the curve

p small enough...

When is p small enough?

when (1 n/m) is tangent to g(n)eg(n)


d
g(n) = penp p2 nenp
dn g(n)e

this must be equal to m


p(np 1)enp =
m

log p + log(np 1) np = log


m
mp
np log

mp
log mp
mp

Now
log
e log = (1
)

mp
mp log mp
mp

log
=(
)
mp
mp
mp
mp = 2 log

p is in the order of logmm


this means a packet experiences a delay proportional to

m
log m

(1/p)

Maintaining g(n) = 1
1/e

g(n)e-g(n)

n=0

g(n)=1

n=m

p is changed dynamically to keep g(n) = np = 1


Since n is not known at a given node, let n
be the estimate of n
p = min(1,

1
)
n

The min operation ensures that p will never exceed 1 when the estimate n
is too small

Estimating n
The estimated backlog n
is updated at the beginning of each slot k
n
k =

max(, n
k1 + 1) for 0 or 1 feedback (idle or success)
1
n
k1 + + e2
for e feedback (collision)

The addition of accounts for new arrivals


The max operation ensures that the estimate is never less than the contribution from new arrivals
(needed only when subtracting)
On successful transmission, 1 is subtracted from the previous backlog
1
Subtracting 1 on idle slots and adding e2
on collisions is also appropriate

When estimate is good n


n

Psucc g(n)eg(n) 1/e = 0.368


Pidle eg(n) 1/e = 0.368
Pcollison 1 2/e = 0.264

1
E[nk nk1 ] = ( 1)2/e + ( + e2
)(1 2/e) = 1/e
this is the correct expected increment in backlog

But is unknown use fixed = 1/e for all actual (unknown) < 1/e

Delay
(assuming you know M/G/1)

A packet is successfully transmitted with P succ = 1/e


Assuming packets are served in order (this assumption does not affect the average performance),
we can model Aloha as an M/G/1 queue with vacations where
P r[X = i] = 1/e(1 1/e)i1

i1

X = e, X 2 = 2e2 e, V = 1, V 2 = 1
W =

X 2
V2
(2e2 e) 1
+
=
+
2(1 e)
2
2(1 X) 2V

T =W +X =

(2e2 e) 1
+ +e
2(1 e)
2

Average delay is independent of m (better than SFDM)

CSMA Aloha

In many systems, a node can hear whether other nodes are transmitting, thus the name Carrier
Sensing Multiple Access (CSMA)
This can happen after a time equal to the propagation delay of the channel, say << 1 slot
Therefore, the feedback 0 (for idle) is obtained after a slot of length (rather than at the end of
a complete slot)
CSMA
sense the channel for an idle slot
if idle after << 1
then transmit your packet with probability p (Aloha)
CSMA
else continue the current slot (busy slot)
CSMA

A busy slot has length 1


An idle slot has length << 1
A busy slot is always followed by an idle slot
An idle slot is followed by either an idle slot or a busy slot

Expected slot length


The length of a slot is

with probability (1 p)n eg(n) (no transmission)


1 + with probability 1 eg(n)
Therefore, the expected slot length is
eg(n) + (1 + )(1 eg(n) ) = + 1 eg(n)

The expected number of arrivals per slot is

m(1 e m [+1+e

g(n) ]

) ( + 1 eg(n) ) (if m >> )

Therefore, for stability we need


<

g(n)eg(n)
+ 1 eg(n)

Stability of CSMA
1/(1+2 )
CSMA

Aloha

g(n)=2

, when g(n)

The maximum throughput is

CSMA can be stabilized using the same technique of estimating n described previously for pure
Aloha (but a bit more involved)

1+

CSMA/CD Aloha Ethernet

In addition to carrier sensing, it may be possible for a node to listen to the channel while
transmitting
If two nodes transmit almost simultaneously, they can detect a collision after the propagation
delay of the channel << 1 slot
This justifies the name CSMA with Collision Detection, CSMA/CD, e.g. the Ethernet
Therefore, a e feedback is obtained after two slots of length << 1 each (rather than at the end
of a complete slot)
A 1 feedback is now implicit
CSMA/CD
sense the channel
if idle after << 1 (idle slot)
then transmit your packet with probability p (Aloha)
CSMA/CD
else if collision after 2 << 1 (collision slot)
then CSMA/CD
else continue the current slot (busy slot)
CSMA/CD

Expected slot length


The length of a slot is

with probability (1 p)n eg(n) (no transmission)


1 + with probability g(n)eg(n) (success)
2 with probability 1 g(n)eg(n) eg(n) (collision)
Therefore, the expected slot length is
eg(n) + (1 + )(g(n)eg(n) ) + 2(1 g(n)eg(n) eg(n) )
= + g(n)eg(n) + (1 eg(n) g(n)eg(n) )

The expected number of arrivals per slot is


m[ + g(n)eg(n) + (1 eg(n) g(n)eg(n) )]

Therefore, for stability we need


<

g(n)eg(n)
+ g(n)eg(n) + (1 eg(n) g(n)eg(n) )

Throughput of CSMA/CD
g(n)eg(n)
+ g(n)eg(n) + (1 eg(n) g(n)eg(n) )

is maximized when g(n) 0.77 resulting in

<

1
1 + 3.31

Better than CSMA if 3.31 < 2 < 0.183 (e.g. in Ethernet, 0.021)
Packets may be of different lengths, as long as the length is multiple of
The analysis of CSMA did not account for variable length packets

one can show that the expected length of a collison slot is relatively large
must wait until all packets finish to detect a collision
with variable size, this is more than just one slot

Ethernet

Ethernet is a CSMA/CD network similar to the CSMA/CD Aloha


Most famous network over the past 20 years
Developed in 1970s by Xeros Palo Alto Research
Frame format

6 byte destination address


6 byte source address
2 byte type field (length field in IEEE 802.5)
46 < bytes of data < 1500 (we will see why)
the channel adds a preamble of up to 64 bytes, and a 4 byte CRC
destination

source

type

body

The address of an Ethernet node is hard coded into the Ethernet network adaptor (network card),
e.g. 8:0:2b:e4:b1:2

Ethernet algorithm

Transmitter algorithm: variant of CSMA/CD Aloha, but unslotted

after a collision wait for some time using exponential backoff, i.e. doubling delay
1st attempt: immediate after sensing
2nd attempt: wait 0 or 2 uniformly, then start sensing
3rd attempt: wait 0, 2, 4, 6 uniformly, then start sensing
k th attempt: wait 2k, k chosen uniformly in [0, 2 k1 1], then start sensing

Receiver algorithm: Ethernet adaptor receives all frames (CSMA/CD) and accepts

frames addressed to its own address


frames addressed to the broadcast address (all 1s)
frames address to a multicast address (1 followed by something) if configured to accept that
all frames if it has been placed in promiscuous mode

Why 2 ?

With an unslotted system, collision requires a time of 2 (i.e. RTT) after transmission to be
detected

As a result, A must transmit for 2 to be sure to detect all collisions


On Ethernet, 2 is 51.2 s (experimentally)

Suppose A begins transmitting a frame at time t


The first bit of As frame arrives at B at t +
An instant before, B still sees an idle channel, and begins to transmit
Bs frame will immediately collide with As frame, and B will stop transmission immediately
But B sends a special frame (runt frame), which will reach A at time t + 2
This is when A detects the collision

at most 4 repeaters connecting 5 segments (CSMA/CD lines or buses)


each segment is at most 500 m

At 10 Mbps, this corresponds to 512 bits, or 64 bytes


14 bytes (header) + body + (4 bytes) CRC >= 64 body >= 46 bytes

Ethernet technologies
coax
thin coax
twisted pair

10Base5
10Base2
10BaseT

500 m
200 m
100 m

10 Mbps (twisted pair can support 100 Mpbs and 1000 Mbps)
at most 4 repeaters between any two nodes (10Base5)
up to 1024 nodes

Token Ring

Nodes are on a ring and data flows in one direction


Like Ethernet, the ring is a shared medium (not a collection of point-to-point links

all nodes see all frames


must control when each node can transmit

A token circulates
A node with a frame holds the token and transmits its frame instead
The node then releases the token
Round robin service, fair if all framess have the same size

Ring as a Star

A node failure would render the whole ring useless


Each node is connected into the ring using an electromagnetic relay

4 Mbps or 16 Mbps
250 nodes
twisted pair

if the node is up, the relay is open


if the node is down, the relay closes and the ring bypasses the node

Several relays are grouped together in a box making the ring look like a star

Token implementation

The ring represents a continuous bit stream


A node
either relays the bit stream received from the previous node, with at least a one bit delay
or transmits its own frame and discards what is being received

must make sure that what is being received and discarded has already reached its destination

or simply transmits idle fill and discards what is being received

e.g. the node can be receiving its own frame if it is long enough

Token: let token denote beginning or end of frame (e.g. flag 01111110 if bit framing is used)
when a node finishes transmisson, it places 01111110 (idle token) at the end of the frame (as usual)
when next node reads the token

it simply passes the token if it has no frame to send


or converts it to 01111111 (busy token) and follows it by its frame and the idle token

Idle token and busy token


011
111

10

01111110

01111111

011
11

110

01111
111

Releasing the token

When a node inserts its frame in the bit stream it can

(early release) either transmit the IT immediately, followed by idle fill until BT is seen
BT

transmitted

received

packet

IT

idle fill

BT

packet returns

BT

BT
token
grabbed

(delayed release) or transmit idle fill until packet completely returns, then IT, followed by idle
fill until BT is seen
transmitted

received

BT

packet

BT

idle fill

packet returns

IT

idle fill

idle fill

BT

BT
token
grabbed

BT is always followed by a frame


IT is always followed by enough idle fill to make up the round trip

Issues to be considered

Token length: round trip delay must be at least as large as token length; otherwise, a node will
discard part of the token as it returns

nodes may add delay (not just one bit) nodes must have buffers
i.e. ring must have enough storage to hold the token

Release strategy: when should a node release the token?

early release: better utilization of the ring


delayed release: better ARQ

destination node can set a special status bit in the frame


a node can check the status of a frame when it returns and decide whether to retransmit
or not

Priority: priority field can be added in a fixed position after the (idle or busy) token (or as part of
the token)

a node with high priority traffic would set the field


a node with a low priority traffic relays the idle token instead of using it
when a node transmits its high priority frames, it must reset the priority field

Frame format

start AC

FC

token

start AC

FC

destination

source

data

CRC

end

FS

end

start delimiter: 8 bit start of frame (or token)


AC: 8 bit access control, for setting priority
FC: 8 bit frame control, distinguishes between data frames and token

frame

when a nodes reads the token (idle token), it can simply change the frame control field and
then add the rest of its frame
what we previosuly called busy token is now just the beginning of the frame header

destination: 48 bit destination address


source: 48 bit source address
CRC: 32 bit CRC
end delimiter: 8 bit end of frame (or token)
FS: 8 bit frame status

the A bit: destination node sets this when it sees the frame
the C bit: destination node sets this if it successfully stores the frame

FDDI

FDDI stands for Fiber Distributed Data Interface


100 Mbps token ring using fiber optics with the following two main features:
nodes use early release to increase network throughput
handling priority: high priority traffic receives guaranteed throughput and delay

FDDI does not use priority reservation as described earlier (therefore, no AC field in the frame format)
When ring is initialized, a parameter T T RT (Target Token Rotation
P Time) is set
Each node i is allocated a time i to send its high priority traffic, j j T T RT

node i times the interval i t between successive idle token arrivals


node i can send high priority traffic for a time i
node i can send low priority traffic for a time max(0, T T RT t i )
when congestion builds up (token is late i t > T T RT ), only high priority traffic is sent

FYI: Maximum frame size is 4500 bytes

Analysis of FDDI

Let T = m1
j=0 j T T RT
Let ti be the time at which the token reaches node i mod m for the (bi/mc + 1) th time
Based on the FDDI algorithm:
P

ti+1

ti+1
But

Pi1

j=im j

i
X

j=0

tim + T T RT + i ti = ti tim < T T RT


ti + i
ti = ti tim T T RT
ti+1 max(ti , tim + T T RT ) + i

j max(ti

Pm1
j=0

i1
X

j=0

j , tim

j = T , let t0i = ti

im1
X
j=0

Pi1

j=0 i

j + T T RT

t0i+1 max(t0i , t0im + T T RT T )

Analysis of FDDI (cont.)


Also, assuming each node always has high priority traffic,
ti ti+jm +

i1
X

k=i+jm

k , j m

We can show that t0i t0ij+m for j m


t0i

= ti

i1
X

k=0

t0i ti+jm

k ti+jm +

i+j+m1
X
k=0

i1
X

k=i+jm
i1
X

k=i+jm

t0i t0i+jm

k +

i1
X

k=0
i1
X

k=i+jm

i1
X

j=im

j )

Analysis of FDDI (cont.)

t0i+1 max(t0i , t0im + T T RT T )


t0i t0i+jm , j m

By induction on i m, we can show that


t0i+m+1 t0i + T T RT T
Example: consider m = 3, the following tables show the times the token arrives to the nodes
(assuming each node i holds the token as long as possible, i.e. max(0, T T RT t i ) + i )
t

0
0*
T T RT + T
2T T RT + T
3T T RT + T
3T T RT + 2T *

t0

1
T T RT + 0
T T RT + T + 0 *
2T T RT + T + 0
3T T RT + T + 0
4T T RT + T + 0

0
0*
T T RT
2T T RT T
3T T RT 2T
3T T RT 2T *

1
T T RT
T T RT *
2T T RT T
3T T RT 2T
4T T RT 3T

2
T T RT + 0 + 1
2T T RT + 0 + 1
2T T RT + T + 0 + 1 *
3T T RT + T + 0 + 1
4T T RT + T + 0 + 1
2
T T RT
2T T RT
2T T RT
3T T RT
4T T RT

T
T *
2T
3T

(* indicates low priority traffic)

Analysis
of FDDI (cont.)
(Average rotation time) Consider token makes m + 1 cycles around the ring
t0i+m(m+1) t0i + m(T T RT T )
i+m(m+1)1

ti+m(m+1)

X
j=0

j t i +

i1
X
j=0

j m(T T RT T )

ti+m(m+1) ti m(T T RT T ) + (m + 1)T

ti+m(m+1) ti
m
T

T T RT +
T T RT
m+1
m+1
m+1

(Low priority traffic) For each of the m + 1 cycles, each node i can send low priority traffic for a at least
T T RT ti ; therefore, each node is given at least
(m + 1)T T RT [m(T T RT T ) + (m + 1)T ] = T T RT T
for its low priority traffic, an average time of

T T RT T
m+1

per cycle

(fairness) The time for low priority traffic per cycle is


m
T
m(T T RT T )
T T RT +
T =
m+1
m+1
m+1

You might also like