Direct Link Networks: Multiaccess Protocols (2.7) CS/ECpE 5516: - - PowerPoint PPT Presentation
Direct Link Networks: Multiaccess Protocols (2.7) CS/ECpE 5516: - - PowerPoint PPT Presentation
Direct Link Networks: Multiaccess Protocols (2.7) CS/ECpE 5516: Computer Networks Originally by Scott F. Midkiff (ECpE) Modified by Marc Abrams (CS) Virginia Tech courses.cs.vt.edu/~cs5516 Lecture Topics I Multiaccess control I IEEE 802.5
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 2
Lecture Topics
I Multiaccess control I IEEE 802.5 Token Ring and FDDI
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 3
Multiaccess Communication (1)
I Previous discussion considered
point-to-point links
G Received signal is transmitted signal (plus noise)
I Many networks are such that received signal at
- ne node depends on transmitted signal at two
- r more other nodes
G Satellite systems G Radio networks G Multi-tap bus systems
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 4
Multiaccess Communication (2)
I Multiaccess media are communication media
where received signal is sum of attenuated transmitted signals plus effects of delay, distortion, and noise
I Examples:
Multitap bus (Ethernet) Radio (wireless) network
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 5
Medium Access Control -- MAC (1)
I With multiaccess media, protocol is needed to
coordinate sharing of media
I Medium access control (MAC) protocol performs
this function
I MAC is sublayer between data link control (DLC)
layer and physical layer (usually grouped with DLC)
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 6
LLC MAC physical Data Link
Medium Access Control -- MAC (2)
I LLC provides “link” to adjacent node I MAC coordinates access to shared media I Physical provides hardware interface
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 7
Medium Access Control -- MAC (3)
I Separation of layer functions in multiaccess
networks is not as well-defined as in networks with point-to-point links
G Feedback about errors is part of ARQ strategy of
DLC, but may depend on how media is shared
G Flow and congestion control needed to provide fair,
efficient access to shared media
G Broadcast nature of shared media implements some
routing functions
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 8
Token Ring Networks
Token ring networks are common form of LAN & MAN
G IEEE 802.5 (Token Ring): 4 Mbps or 16 Mbps G Fiber Distributed Data Interface (FDDI): 100 Mbps
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 9
Nodes Arranged in Ring Topology
1 4 3 7 8 2 5 6 Point-to-point links between stations
G Node… G receives bit stream
from last node
G relays bit stream to
next node
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 10
Nodes Arranged in Ring Topology
interface logic Node can repeat
- r replace each
bit 1 4 3 7 8 2 5 6 At least 1 bit delay at each node:
N Propagation N Processing N Regeneration & transmission
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 11
Token (1)
I To transmit its own data, node must discard
input & output its data
I But we can't discard data until it has reached its
destination
G Token is used to coordinate use of ring G Ring is shared medium, so network is multiaccess
system interface logic
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 12
Token (2)
I Conceptually, token is passed from node to
node
G Only send your data when you've got token G Pass token when data reaches destination or you've
got no data to send
I So what is a token anyway?
G Special pattern -- distinguished from data G Similar to framing flags
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 13
Token (3)
I Token can be in 2 states
G Free token (or idle token): ring available
N Discard bits following free token
G Busy token: ring in use
N Follow busy token with data
I Token indicates
G upcoming data (if busy), as well as G permission to transmit (if free)
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 14
Basic Token Ring Operation (1)
I When node with data to transmit receives free
token, it marks token as busy and appends its
- wn data
I Subsequent nodes forward data since token is
marked busy
G Destination node both forwards and stores data G Destination node may mark data as received, but
token is still busy
I Data returns to originating node where it is
discarded
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 15
Basic Token Ring Operation (2)
I After node finishes transmission, it
G marks token as free G forwards token next node G follows token with idle fill
(until it sees busy or idle token again)
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 16
Ring Example (1)
1 3 2 4 1 3 2 4 Node 1 receives free token Node 1 transmits busy token followed by data for node 3 data busy
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 17
Ring Example (2)
1 3 2 4 Busy token followed by data continues around ring, node 3 stores data 1 3 2 4 Busy token completes round trip and is stripped at node 1
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 18
Ring Example (3)
1 3 2 4 Node 1 strips old data from ring and transmits new data until finished 1 3 2 4 When finished, node 1 puts free token on ring, followed by idle fill free token idle
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 19
Ring Example (4)
1 3 2 4 Node 2 forwards free token (no data to send), node 3 still storing data 1 3 2 4 Node 3 receives all of data from 1, forwards free token (no data to send)
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 20
Ring Example (5)
1 3 2 4 Node 4 receives free token, transmits busy token followed by data 1 3 2 4 Node 1 forwards bits (busy token) after its last data bit arrives
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 21
Additional Details of Ring Operation
I Propagation delay around ring must be long
enough to “store” complete token
G Otherwise first part of free token would be discarded
to transmit last part
I Error detection
G Receiving node can check CRC and put an ACK or
NAK in packet trailer on its way back to sender
G Sending node can also check CRC since it sees all
transmitted data
I Numerous variations are possible in ring
- peration
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 22
Token Holding Time
I How long can node hold free token? I Option 1: Transmit only 1 packet
G Lets token rotates at maximum rate G Minimizes latency
I Option 2: Transmit all waiting packets
G Reduces token transmission overhead G Maximizes throughput
I 3: Transmit waiting packets up to time limit
G Best of both worlds
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 23
Retransmission Schemes (1)
I 2 options in handling retransmissions…
G Selfless operation (FDDI):
Give up token when done transmitting; if error detected, reacquire token & retransmit
G Selfish (IEEE 802.5):
Hold token for round trip time, to be sure receiver got data correctly
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 24
Retransmission Schemes (2)
I Pros/Cons
G Selfless (FDDI):
N Penalty: higher latency on error
G Selfish (802.5):
N Ring transmits idle fill until sender gets ack N Penalty: lower throughput for low error rates N Advantage: Lower latency for retransmissions
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 25
Type of Token Failures (1)
I Lost token -- no node can transmit!
G Corrupted by noise (bit errors alter token code) G Node holding token fails
I Token is permanently marked busy -- no node
can transmit
G Idle token corrupted by noise (is marked busy)
I Multiple tokens created -- conflicts for access
G Non-token corrupted by noise to become token G Node failure
I Ring protocol recognizes token failures &
recovers (e.g. generating new token)
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 26
Fiber Distributed Data I nterface -- FDDI
I 100 Mbps timed token ring network based on
fiber optics
I Developed under auspices of ANSI committee
X3T9 formed in 1982
I Limited popularity
G Lack of high BW apps in 1980's G High cost of NIC's ($5000) and concentrators ($$) G Was popular for backbones & switching fabric
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 27
FDDI Standard
LLC Logical Link Control MAC Media Access Control PHY Physical PMD Physical Media Dependent SMT Station Management LLC MAC PHY PMD SMT Data Link Physical
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 28
FDDI Versus Token Ring
I Token Ring: sender waits until all of transmitted
data goes round ring before releasing token
I FDDI: sending node releases token after
sending last bit of data
G Busy token not sent G Data frame header recognized as “busy token” G Improves FDDI’s throughput
I FDDI supports low-priority (asynchronous) and
high-priority (synchronous) packets
G Guarantees throughput and latency G Suitable for digitized voice, real-time control, etc.
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 29
Capacity Allocation in FDDI (1)
I Capacity allocation for high-priority data is
provided by timed token scheme
G Each node measures times between token arrivals G Low-priority traffic can be sent only if intertoken time
is sufficiently small
G High-priority traffic can be sent anytime token arrives
I Limited amount of high priority traffic can be
sent for each token arrival (token holding time is limited)
G Guaranteed transmit time αi is allocated to node i
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 30
Capacity Allocation in FDDI (2)
I Target token rotation time (TTRT), τ, is
established when FDDI ring is initialized
G Used to determine when to send low-priority traffic
I It can be shown that:
G TTRT, τ, is upper bound on time-average intertoken
arrival time
G 2τ is worst-case intertoken arrival time
I Transmission time for node i, αi, i = 0, 1, ..., m-1
(m-node network), allocated such that
α α α τ
1 1
+ + + ≤
−
...
m
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 31
Capacity Allocation in FDDI (3)
I To be more exact, other factors must be
considered in setting TTRT, τ
G Maximum propagation time around ring, TP,max G Time to transmit maximum length frame (4500 bytes),
TF,max
G Token transmission time, TT
I So, allocations αi must be set such that I Can group other factors into values for αi
T T T
P,max F,max T i i m
+ + + ≤
= −
∑ α
τ
1
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 32
Capacity Allocation in FDDI (4)
I Let t0, t1,..., tm-1, be times at which token arrives
at nodes 0, 1,..., m-1, for some given cycle
I Assume that node k = (i mod m) receives token
at time ti, i ≥ 0; node measures intertoken arrival time, ti - ti-m
I If ti - ti-m < τ, node can send low-priority traffic
for τ - (ti - ti-m) seconds and can send high-priority traffic for its allocated time of αk seconds
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 33
Capacity Allocation in FDDI (5)
I If ti - ti-m ≥ τ, node cannot send
low-priority traffic, but it can still send high-priority traffic for αk seconds
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 34
Capacity Allocation Algorithm (1)
I All stations know same value for TTRT (τ) and
each has its own value αi
I Each node maintains two timers and counter
G Token rotation timer (TRT): Times intertoken arrival
time (using LC)
G Token holding timer (THT): Times token holding time
at node
G Late counter (LC): Counter for number of times that
TRT expires
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 35
Capacity Allocation Algorithm (2)
I TRT is initialized to TTRT (τ) and counts down,
LC is 0
I If token is received before TRT expires, TRT is
reset to TTRT
I If TRT expires before token is received, LC is
incremented to 1 and TRT is reinitialized to TTRT
I If TRT expires second time, LC is incremented to
2 and token is considered lost
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 36
Capacity Allocation Algorithm (3)
I If token is received before TRT expires once
(early token)
G THT is set to TRT (τ - [ti - ti-m]) G TRT is reset to TTRT and started G Station transmits high-priority frames until all are
transmitted, but for at most αi seconds
G Station starts THT and transmits low-priority frames
until done or THT expires
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 37
Capacity Allocation Algorithm (4)
I If TRT expires before token is received (late
token)
G LC reset to 0, TRT resets (“rolls over”) G Station can transmit high-priority frames for at most
αi seconds (cannot transmit low-priority frames)
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 38
Latency in FDDI
I For high-priority stream-type traffic, delay is
bounded by τ + T, where T is allocated traffic
G Delay is loosely bounded by 2τ
I Short TTRT decreases delay, but at expense of
efficiency (throughput)
T
i i m
=
= −
∑
α
1
ECPE/CS 5516 (1/31/00) Direct Link Networks: Multiaccess Protocols - 39