34
Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt

Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt

Embed Size (px)

Citation preview

Page 1: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Understanding Networked Applications A First Course33

ProxyFilterWeb

serverHTMLorXML

WML

Wirelessaccessprotocol

Page 34: Understanding Networked Applications: A First Course Chapter 20 by David G. Messerschmitt

Understanding Networked Applications A First Course34

1

S

CHit rate H

Access time

2C

S-2CS-C

S = 100C H = 0.989