understanding networked applications: a first course chapter 20 by david g. messerschmitt
TRANSCRIPT
![Page 1: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/1.jpg)
Understanding Networked Applications:A First Course
Chapter 20
by
David G. Messerschmitt
![Page 2: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/2.jpg)
Understanding Networked Applications A First Course2
Outline
• Industry structure
• Communication link characteristics
• Mitigating the impact of a link:– Compression– Caching– Mobile code
![Page 3: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/3.jpg)
Understanding Networked Applications A First Course3
Industry Structure
• At the link layer, bits are bits– Voice over IP– IP over voice
• New technologies for access links
• Deregulation
• Turbulent times ahead
![Page 4: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/4.jpg)
Understanding Networked Applications A First Course4
Gateway
Public telephone network
Internet
Computer w/modem
IP over Voice
Computer w/modem
![Page 5: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/5.jpg)
Understanding Networked Applications A First Course5
Gateway
Public telephone network
Internet
IP telephone
Plain oldtelephone
Voice over IP
![Page 6: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/6.jpg)
Understanding Networked Applications:A First Course
Communication Link
by
David G. Messerschmitt
![Page 7: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/7.jpg)
Understanding Networked Applications A First Course7
Simplest link: fiber optics
Pulse of light = “1” Absence of pulse = “0”
Speed of light
![Page 8: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/8.jpg)
Understanding Networked Applications A First Course8
Key Concepts
• Bitrate – bits accepted per unit of time
• Transmission time– Time to get all bits transmitted on link
• Propagation delay– Time for each bit to reach destination
• Message latency – transmission time + propagation delay
![Page 9: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/9.jpg)
Understanding Networked Applications A First Course9
Conveyer belt
Bits waitingto be sent
Bits thathave alreadybeen received
Conveyer belt analogy
= “0”
= “1”
Constant speed
![Page 10: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/10.jpg)
Understanding Networked Applications A First Course10
Conveyer belt
Conveyer belt parameters
Speed = predetermined by EinsteinLength = predetermined by distanceSize of blockBits communicated per block
Where we havecontrol
![Page 11: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/11.jpg)
Understanding Networked Applications A First Course11
Determinants of Propagation Time
• Speed of propagation– speed of conveyor belt– limited by medium
• Distance– length of conveyor belt– closer is faster
• Remember: this is one link– Routers/switches introduce extra delay
![Page 12: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/12.jpg)
Understanding Networked Applications A First Course12
Determinants of Bitrate
• Bandwidth– size of blocks on conveyor belt– how rapidly the signal changes
• Spectral efficiency– number of bits written on each block– how many distinguishable signal levels– depends on s/n ratio of medium
• Popular usage: Bandwidth = bitrate
![Page 13: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/13.jpg)
Understanding Networked Applications A First Course13
Ways to increase bitrate
Conveyer belt
Conveyer belt
Make blocks smaller and put them on belt faster
Use blocks with more shades of gray (more bits per block)
![Page 14: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/14.jpg)
Understanding Networked Applications A First Course14
Wavelength division multiplexing (WDM)
Conveyer belt
Stack blocks with different colors
Today in commercial use: 40 wavelengths, each at 10 Gbps
![Page 15: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/15.jpg)
Understanding Networked Applications A First Course15
Numerical parameters
Conveyer beltB = Bitrate = rate bits put on belt
= Propagation delay = distance/speed
B = Bitrate x delay = # bits in transit
![Page 16: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/16.jpg)
Understanding Networked Applications A First Course16
Transmit time
Time
Messagelatency
Propagation latency
Message in transit
Distance
The Graphical Version
![Page 17: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/17.jpg)
Understanding Networked Applications A First Course17
Message latency
Message latency =
Time to transmit message (m/B)
+
Time for last bit to reach destination ()
These two components are equal when
Message length = bitrate x delay (m = B)
![Page 18: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/18.jpg)
Understanding Networked Applications A First Course18
Bitrate-limited case
Propagation delay-limited delay
![Page 19: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/19.jpg)
Understanding Networked Applications A First Course19
Time
m << B
m >>B
Propagation delay-limited
Bitrate-limited
Entire message in transitmost of the time
Only part of message in transit at any time
Distance
![Page 20: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/20.jpg)
Understanding Networked Applications A First Course20
Two situations
• Bitrate limited– Increasing bit rate decreases message latency
– True for long messages
• Propagation delay limited– Increasing bit rate has little impact on message latency
– True to short messages
• Over time, with technology advances, we become delay limited!
![Page 21: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/21.jpg)
Understanding Networked Applications A First Course21
Assumption: v = c/2 = 1.5 x 108 meters/sec)
Across chip
One meter
Across U.S.A.
Halfway around world
28.8 kb/s
<<1 b
<<1 b
891 b
4460 b
1.5 Mb/s
<<1 b
<<1 b
4780 b
239 kb
622 Mb/s
<<1
5
19 Mb
96 Mb
B = number of bits in transit
Large!
Bitrate (b/s)
Distance
![Page 22: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/22.jpg)
Understanding Networked Applications A First Course22
Physical Media
• Wired– fiber optics– coax– twisted pair (copper)
• Wireless– Terrestrial radio– Satellite (long propagation delays)
![Page 23: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/23.jpg)
Understanding Networked Applications A First Course23
Fundamental limitation
• Over time– Bitrates increase with electronics and fiber
optics advances– Message latencies become delay-limited– Further technological advances have little
impact on application performance
• Exception: wireless
![Page 24: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/24.jpg)
Understanding Networked Applications A First Course24
Mitigating communication bottlenecks
• Bitrate-limited regime– Compression
• Delay-limited regime– Caching– Mobile code– In the future, these techniques will be very
important
![Page 25: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/25.jpg)
Understanding Networked Applications A First Course25
Compression
• Lossless– Typically 2x or 3x
• Lossy (but imperceptible)– Easily 10x for audio and 100x for video– Discards perceptually unimportant information
• Important for today’s bitrate-limited regime
![Page 26: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/26.jpg)
Understanding Networked Applications A First Course26
Remote databeing accessed
Local cache
Communicationbottleneck
Futurereferences(wherepossible)
Caching
Predictive caching becomes very important in the delay-limited regime
![Page 27: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/27.jpg)
Understanding Networked Applications A First Course27
Communicationbottleneck
Executelocally
Send code
Mobile code
Mobile code is especially useful to enable faster interaction in the delay limited regime
![Page 28: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/28.jpg)
Understanding Networked Applications A First Course28
1110100010110
11
1 0 1 0 0 0
1
0
1
10
Bitrate-limited case
Propagation delay-limited delay
![Page 29: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/29.jpg)
Understanding Networked Applications:A First Course
Supplements
by
David G. Messerschmitt
![Page 30: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/30.jpg)
Understanding Networked Applications A First Course30
Series2
Period T
Frequency f = 1/T
Time
![Page 31: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/31.jpg)
Understanding Networked Applications A First Course31
10
11
01
00
101010
01
1111
Time
10
11
01
00
101010
01
1111
Time
Symbol interval
![Page 32: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/32.jpg)
Understanding Networked Applications A First Course32
Ethernet
Hosts Switch
Bus
Broadcast
Tree
![Page 33: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/33.jpg)
Understanding Networked Applications A First Course33
ProxyFilterWeb
serverHTMLorXML
WML
Wirelessaccessprotocol
![Page 34: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt](https://reader036.vdocument.in/reader036/viewer/2022081520/56649ed55503460f94be61c3/html5/thumbnails/34.jpg)
Understanding Networked Applications A First Course34
1
S
CHit rate H
Access time
2C
S-2CS-C
S = 100C H = 0.989