system and network architectures and …mkarsten/cs755/channels.pdfcs 755 – system and network...
TRANSCRIPT
![Page 1: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/1.jpg)
1-1CS 755 - Fall 2014
CS 755 – System and Network Architectures and Implementation
Module 1 - Channels
Martin Karsten
![Page 2: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/2.jpg)
1-2CS 755 - Fall 2014
Notice
Some slides and elements of slides are taken from third-party slide sets. In this module, parts are taken from the Kurose/Ross slide set. See detailed statement on next slide...
![Page 3: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/3.jpg)
1-3CS 755 - Fall 2014
A note on the use of these ppt slides:We’re making these slides freely available to all (faculty, students, readers). They’re in PowerPoint form so you can add, modify, and delete slides (including this one) and slide content to suit your needs. They obviously represent a lot of work on our part. In return for use, we only ask the following: If you use these slides (e.g., in a class) in substantially unaltered form, that you mention their source (after all, we’d like people to use our book!) If you post any slides in substantially unaltered form on a www site, that you note that they are adapted from (or perhaps identical to) our slides, and note our copyright of this material.
Thanks and enjoy! JFK/KWR
All material copyright 1996-2009J.F Kurose and K.W. Ross, All Rights Reserved
Computer Networking: A Top Down Approach 5th edition. Jim Kurose, Keith RossAddison-Wesley, April 2009.
![Page 4: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/4.jpg)
1-4CS 755 - Fall 2014
Overview
● Signal Transmission● Framing● Error Detection / Correction● Medium Access Control● Principles
● Encapsulation● Performance
![Page 5: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/5.jpg)
1-5CS 755 - Fall 2014
Signal Transmission
● encode/decode binary information as● electrical signals● acoustic signals● optical signals● radio signals● etc.
● discrete vs. continuous signals
![Page 6: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/6.jpg)
1-6CS 755 - Fall 2014
Signals
● challenge: signal fading● signal level● transition edge
● binary vs. n-ary signals?● robustness vs. efficiency
● communication -> reconstruct original signal
![Page 7: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/7.jpg)
1-7CS 755 - Fall 2014
Physical Media
● properties● capacity● shielding● propagation
● cable● cost & quality: twisted pair < coax < fiber
![Page 8: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/8.jpg)
1-8CS 755 - Fall 2014
Radio Transmission
● medium: electromagnetic spectrum● public good: regulated vs. unregulated bands
● no wire – no shielding● propagation effects
● obstruction (path loss)● reflection (multipath)● interference
● typical pattern: base station – mobile
![Page 9: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/9.jpg)
1-9CS 755 - Fall 2014
Radio Transmission – Adaption
● SNR: signal-to-noise ratio● BER: bit error rate● SNR vs. BER trade-offs
● increase power ->increase SNR ->decrease BER
● for fixed SNR: choose appropriate coding, such that BER is reasonable
10 20 30 40
SNR(dB)
BE
R
10-1
10-2
10-3
10-5
10-6
10-7
10-4
QAM256 (8 Mbps)QAM16 (4 Mbps)
BPSK (1 Mbps)
operating point
![Page 10: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/10.jpg)
1-10CS 755 - Fall 2014
Radio – Power Management
● radio ~ battery-powered devices● sending / receiving consumes significant power
● power savings mode: disable receiving● maybe hibernate device
● coordinate wake/sleep cycles with neighbour● fixed schedule or announce sleep periods● simple for base station scenarios, else difficult
● also: control sending power / interference
![Page 11: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/11.jpg)
1-11CS 755 - Fall 2014
Optical Transmission
● computers are built using electrical components
vs. much more efficient optical signals● “more efficient” -> more transitions per time
● electrical circuits (especially memory) have difficulty with keeping up...
● transmission pattern: point-to-point● optical switches?
● optical memory? optical delay lines
![Page 12: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/12.jpg)
1-12CS 755 - Fall 2014
Binary Coding
● simplest coding: unipolar, non-return-to-zero
● clock synchronization?● direct current (DC) bias?
volta
ge
time1 0 0 1 1 1 0 1
![Page 13: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/13.jpg)
1-13CS 755 - Fall 2014
Self-Clocking
● bipolar, return-to-zero
● transition in middle of interval -> clock signal● but: only 50% efficient
volta
ge
time1 0 0 1 1 1 0 1
![Page 14: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/14.jpg)
1-14CS 755 - Fall 2014
Manchester Encoding
● direction of transition in middle of signal period
● no DC bias at all● inversion (cable swapped)?
● both versions exist in literature and standards
volta
ge
time1 0 0 1 1 1 0 1
![Page 15: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/15.jpg)
1-15CS 755 - Fall 2014
Differential Manchester Encoding
● presence of transition at start of period
● transition easier to detect than level● robust against inversion
volta
ge
time1 0 0 1 1 1 0 1
![Page 16: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/16.jpg)
1-16CS 755 - Fall 2014
4B/5B Encoding
● encode 4 bits in 5 NRZ transitions● fixed mapping dictionary
● each code word encoded with at least 2 transitions● coding room for 'idle' and other control signals
● more recent: 64B/66B● use scrambler instead of dictionary● first two bits: preamble, guarantee transition
● dictionary and scrambling also limit DC bias
![Page 17: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/17.jpg)
1-17CS 755 - Fall 2014
Framing
● split bit stream in discrete units● signal start and end of message
● basis for any kind of reliable communication● define unit for basic error detection and correction
● signal/code for 'idle'?● yes: can use frame length field● no: must use frame delimiter
![Page 18: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/18.jpg)
1-18CS 755 - Fall 2014
Frame Delimiter
● example: PPP● Point-to-Point Protocol (PPP)
● transparency: transmit binary data over anything● assume 0- and 1-signal, but no 'idle' signal● operates on bytes
● designate special bit pattern as delimiter● e.g., 01111110 (for both start and end)
● what if 01111110 appears in data stream?
![Page 19: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/19.jpg)
1-19CS 755 - Fall 2014
Byte Stuffing
● PPP sender algorithm
if 01111110 appears in data stream:
insert another 01111110 before
● PPP receiver algorithm
if 01111110 appears in communication stream:
followed by 01111110 -> remove one of them
else -> 01111110 is a delimiter
![Page 20: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/20.jpg)
1-20CS 755 - Fall 2014
Notes
● can have different start/end delimiters for robustness
● generalized sender algorithm
insert escape pattern before any occurrence of control patterns in data (including escape itself)
● generalized receiver algorithm
if escape pattern in stream:
remove and treat next symbol as data
![Page 21: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/21.jpg)
1-21CS 755 - Fall 2014
Escape Character
● e.g., in many programming languages:
print “Tom said “Hello” to me.”;
... is a syntax error, because double quotation mark is the string delimiter token
● use escape character (backslash):
print “Tom said \”Hello\” to me.”;
● same for regular expressions and related tools
![Page 22: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/22.jpg)
1-22CS 755 - Fall 2014
Framing with Idle-Signal
● with 'idle'-signal: delimiters not strictly needed● use 'length' field in message for robustness
● but: why does Ethernet define 'preamble'?● for channel cleanup (see medium access control),● ...and clock synchronization
– self-clocking code
![Page 23: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/23.jpg)
1-23CS 755 - Fall 2014
Error Control
● error detection: append parity bit to bit string● bit string can be codeword, message, etc.● add bit, such that number of 1s is odd
– 'even' variant exists, as well
● 0111000110101011 -> append 0● receiver can detect single-bit errors● correction: Automatic Repeat reQuest (ARQ)
● hold back ACK or send NAK
![Page 24: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/24.jpg)
1-24CS 755 - Fall 2014
Forward Error Correction
● matrix of parity bits
![Page 25: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/25.jpg)
1-25CS 755 - Fall 2014
Error Control: Redundancy
● what are we actually doing?● add redundancy to message (cf. natural language)● opposite of compression!
● data <-> code mapping● code properties determine error control capabilities
-> Hamming Distance
![Page 26: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/26.jpg)
1-26CS 755 - Fall 2014
Hamming Distance
● number of positions in which two strings of equal length are different
h(a,b) for strings a, b
● assume code / set of fixed-length bit strings● Hamming Distance of code C
H(C) = min( h(a,b) ∀ a,b ∈ C )
![Page 27: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/27.jpg)
1-27CS 755 - Fall 2014
Hamming Distance
● H(C) > n => n-bit errors can be detected● H(C) > 2n => n-bit errors can be corrected
● previous examples● simple Parity scheme: H(C) = 2 > 1
– 1-bit errors can be detected● matrix Parity scheme: H(C) = 3 > 2 * 1
– 1-bit errors can be corrected
● challenge: dictionary not feasible for messages
![Page 28: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/28.jpg)
1-28CS 755 - Fall 2014
Internet Checksum
one's complement of sum of one's complements● process data as stream of 16-bit words● one's complement sum: add carry bit● not very strong: errors might go undetected
● why this format?● implementation in software● incremental update● independent of byte ordering● see RFC 1071 for discussion
![Page 29: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/29.jpg)
1-29CS 755 - Fall 2014
Advanced Error Control
● Cyclic Redundancy Check (CRC)● error detection with small, fixed message overhead● simple in hardware – used, e.g., in Ethernet
● Erasure Codes● consider loss, instead of changes● parity -> e.g., in RAID systems
● Fountain Codes● any suitable subset of encoded symbols can
recreate original message
![Page 30: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/30.jpg)
1-30CS 755 - Fall 2014
Medium Access Control (MAC)
Goals
1. high channel utilization for single/few nodes
2. fair sharing for many nodes
3. decentralized, robust
4. simple
![Page 31: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/31.jpg)
1-31CS 755 - Fall 2014
Medium Access Control Schemes
● channel partitioning● pessimistic: split channel into sub-channels
● random access● optimistic: uncoordinated access● distributed: handle collisions, resolve contention
● taking turns● distributed coordinated: avoid collisions● high complexity
![Page 32: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/32.jpg)
1-32CS 755 - Fall 2014
Partitioning – Frequency
● Frequency Division Multiple Access (FDMA)● channel spectrum divided into frequency bands● each station assigned fixed frequency band
● unused capacity goes idle – utilization?
timefreq
uenc
y
![Page 33: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/33.jpg)
1-33CS 755 - Fall 2014
Partitioning – Time
● Time Division Multiple Access (TDMA)● channel divided into “rounds”● each station gets fixed length time slot
● unused slots go idle
timefreq
uenc
y
![Page 34: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/34.jpg)
1-34CS 755 - Fall 2014
Partitioning – Code
● Code Division Multiple Access (CDMA)● ultimately uses multi-level signals● each station is assigned chipping sequence
● set of binary code vectors that are orthogonal
● downlink (from base station)● synchronous: signals add up, but can be decoded
● uplink (from mobile stations)● asynchronous: add pseudo-random “noise” signal
![Page 35: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/35.jpg)
1-35CS 755 - Fall 2014
Partitioning
● need control functionality to manage channels● assign frequency or time slot or codes● mobile registration with base station
– rare event (compared to message transmission)● ultimately: random access (bootstrapping problem)
– truly global codes without collision not feasible
=> control overhead● centralized● utilization with few stations?
![Page 36: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/36.jpg)
1-36CS 755 - Fall 2014
Random Access
● assumption: signal overlap detectable as error● potential collision not avoidable● first approach: send any time (ALOHA)
● fixed message length● detect collisions, random wait time, retransmit● best-case utilization: 18%
● next: send at slot intervals (slotted ALOHA)● best-case utilization: 36%
![Page 37: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/37.jpg)
1-37CS 755 - Fall 2014
Carrier Sensing
● Carrier-Sense Multiple Access (CSMA)● listen to channel before transmission● if channel busy, wait
– persistency – when to send after channel is sensed free?
● collisions? still possible...● non-zero propagation delay
![Page 38: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/38.jpg)
1-38CS 755 - Fall 2014
CSMA – Collisions
● propagation delay gap: two nodes do not hear each other● propagation speed● distance
● collision● entire message
corrupt
![Page 39: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/39.jpg)
1-39CS 755 - Fall 2014
Collision Detection
● compare signal on channel with own message● detect collision locally -> abort transmission
● reduce channel wastage
● easy in wired medium● similar signal strengths of transmitted/received
signal
● difficult in radio networks● received signal strength overwhelmed by local
transmission
![Page 40: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/40.jpg)
1-40CS 755 - Fall 2014
Collision Detection
![Page 41: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/41.jpg)
1-41CS 755 - Fall 2014
Minimum Message Size
● carrier sensing and minimum message size-> effective channel reservation scheme
● assume maximum distance d, prop speed v=> maximum travel time: d/v
● remote station could transmit just before d/v● if no collision after 2 * d/v -> channel reserved● assume transmission rate b
=> minimum message size: b * 2 * d/v
![Page 42: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/42.jpg)
1-42CS 755 - Fall 2014
Ethernet
● 1-persistent CSMA/CD, no ACKs● minimum message size -> channel reservation● but: message simply lost, if no receiver present● collision -> randomized exponential backoff
● increase wait time during continuous collisions● adaptive to level of load/contention
● modern versions: not much need for MAC;star topology & network forwarding
![Page 43: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/43.jpg)
1-43CS 755 - Fall 2014
Collision Avoidance
● radio: local collision detection not feasible● single radio cannot transmit/receive at same time● two radios: local signal would drown out remote
● hidden terminal problem
-> more conservative collision avoidance● exponential backoff during CSMA● RTS/CTS mechanism to mitigate collision effect● ACKs to confirm successful transmission
![Page 44: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/44.jpg)
1-44CS 755 - Fall 2014
Priorities
● wait time counts down when medium is idle
● wait time priorities built into CSMA mechanism● SIFS – last receiver / ACK● PIFS – base station / control● DIFS – any station / data
● wait time includes backoffif applicable
sender receiver
DIFS
data
SIFS
ACK
![Page 45: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/45.jpg)
1-45CS 755 - Fall 2014
Hidden Terminal
● signal attenuation● A,B hear each other● B,C hear each other● A,C can not
● obstruction● A,B hear each other● B,C hear each other● A,C can not
AB
CA B C
A’s signalstrength
space
C’s signalstrength
![Page 46: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/46.jpg)
1-46CS 755 - Fall 2014
RTS/CTS
APA B
RTS(A)RTS(B)
RTS(A)
CTS(A) CTS(A)
DATA (A)
ACK(A) ACK(A)
reservation collision
defer
time
![Page 47: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/47.jpg)
1-47CS 755 - Fall 2014
Taking Turns
● channel partitioning protocols:● static, coordinated● very efficient at high load● low utilization at low load
● random access● little a-priori coordination● very efficient at low load● collision overhead at high load
-> try dynamic, coordinated
![Page 48: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/48.jpg)
1-48CS 755 - Fall 2014
Centralized Polling
● master node “invites” slave nodes to transmit
● traditional scenario:host/terminal networks
● concerns● polling overhead● latency to send● single point of failure
(master)
master
slaves
poll
data
data
![Page 49: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/49.jpg)
1-49CS 755 - Fall 2014
Token Passing
● control token passed from one station to next
● examples:Token Bus, Token Ring
● concerns● token overhead● latency● single point of failure
(token)
T
data
(nothingto send)
T
![Page 50: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/50.jpg)
1-50CS 755 - Fall 2014
Taking Turns
● efficient at low and high load● manageability / control
● minimum transmission rate● maximum latency
● but:● complexity
– token passing: complexity in each station● obsolescence by point-to-point/switched Ethernet
![Page 51: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/51.jpg)
1-51CS 755 - Fall 2014
Encapsulation
● wrap payload data into message format● message header/trailer for control● payload might be message itself
-> encapsulation / layering● typical header/trailer:
● type, length, addresses, contro, checksuml
![Page 52: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/52.jpg)
1-52CS 755 - Fall 2014
Performance
● throughput vs. delay vs. loss (later)● example: Tim Hortons
● number of served customers per hour– throughput
● vs. time to wait for coffee– delay
● high throughput does not guarantee low delay● synchronous vs. asynchronous execution of job● high level of multiplexing: good for throughput
![Page 53: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/53.jpg)
1-53CS 755 - Fall 2014
Throughput
● transfer rate in bits/time● always an average
● different time scales relevant in different scenarios– streaming: minimum throughput needed “continuously”
● i.e., over short time periods
– download: average throughput● i.e., overall average throughput relevant
● capacity sharing: fairness vs. utility● consider two identical file downloads● sequential vs. concurrent download – utilities?
![Page 54: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/54.jpg)
1-54CS 755 - Fall 2014
Throughput
● “width” of pipe● multiple transmission segments
● minimum throughput segment is bottleneck
● vs.
Rs bits/sec Rc bits/sec
Rs bits/sec Rc bits/sec
![Page 55: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/55.jpg)
1-55CS 755 - Fall 2014
Delay
● processing delay● local processing at communication node
● queueing delay● later
● transmission delay (packetization)● message size / link throughput
● propagation delay● propagation speed / distance
![Page 56: System and Network Architectures and …mkarsten/cs755/channels.pdfCS 755 – System and Network Architectures and Implementation Module 1 - Channels Martin Karsten mkarsten@uwaterloo.ca](https://reader030.vdocuments.us/reader030/viewer/2022040603/5e9f07177d559b04571f3fcd/html5/thumbnails/56.jpg)
1-56CS 755 - Fall 2014
Delay
● speed / length of pipe● multiple transmission segments
● total delay is sum of delays