Tải bản đầy đủ (.pdf) (37 trang)

Advanced Computer Networks: Lecture 38 - Dr. Amir Qayyum

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (522.05 KB, 37 trang )

CS716
Advanced Computer Networks
By Dr. Amir Qayyum
1

1


Lecture No. 38

2


RealTimeApplications
ã Requiredeliverontimeassurances
Mustcomefrominsidethenetwork
Microphone

Sampler
A D
converter

Buffer
D A
Speaker

ã Exampleapplication(audio)






Samplevoiceonceevery125às
Eachsamplehasaplaybacktime
Packetsexperiencevariabledelayinnetwork
Addconstantfactortoplaybacktime:
playbackpoint
3


Real Time Application Example:
Live­Source Audio

• One byte per 125 microseconds
• Delay between speaker & listener 
should be fixed
• Each packet has “playback time” 
based on delay
• But network delay is variable
4


Real Time Application Example:
Live­Source Audio
• Solution
– Fix delay at 95­99% mark on distribution
– i.e. delay by which 95­99% of packets 
arrive
• Some packets (1­5%) still lost, but tolerable
• Early packets are buffered until playback 
time

5


Playback Buffer

Sequence number

Packet
arrival
Packet
generation

Playback

Network
delay

Buffer

Time

6


Example Distribution of Delays
90% 97% 98%

Packets (%)

3


99%

2

1

50

100

150

200

Delay (milliseconds)

7


Taxonomy of Applications

8


Taxonomy
Applications

Real time


Tolerant

Adaptive

Delayadaptive

Nonadaptive

Elastic

Intolerant

Rate-adaptive

Interactive

Interactive
bulk

Nonadaptive

Rateadaptive

9

Asynchronous


Elastic Applications
• Old data are useful, just not as good

– Interactive applications (e.g. ssh, 
rlogin, telnet)
– Bulk transfers (e.g. http, ftp)
– Asynchronous interaction (e.g. e­mail)
10


Real­time Applications
• Intolerant to loss
• Tolerant to loss
– Non­adaptive: quality fixed (sample delay and 
throughput, then assume worst­case variation)
– Adaptive: adjust quality to current parameters
• Delay adaptive: adjust to achieved delay
• Rate adaptive: adjust to achieved throughput
11


Integrated Services :
Resource Reservation Protocol 
(RSVP)

12


Integrated Services
• Service Classes
– Guaranteed
– Controlled­load
• Mechanisms

– Signaling protocol
– Admission control
– Policing
– Packet scheduling
13


Three Classes of Service
• Guaranteed: specified maximum delay
• Controlled load
– For loss­tolerant, adaptive applications
– Network appears lightly loaded (via 
weighted fair queuing) 

• Best effort
14


Mechanisms to Support Integrated 
Services
• Flow specification: delay requirements for flow
• Admission control: network decision to support 
flow
• Resource reservation: protocol for exchanging 
flowspecs, performing admission control, etc.
• Packet classification: mapping packets to flows
• Packet scheduling: forwarding policy
15



Integrated Services Example
• Flowspec: 100 ms guaranteed to www.nsf.gov
• Reservation: spec travels down path for approval
• Delay guarantee approved by all routers, so 
admitted
• My packets marked as guaranteed
• EXAMPLE policy: guaranteed packets sent first
16


Flow Specification Components
• RSpec: describes service requested from network
– Controlled­delay: level of delay required
– Guaranteed/predictive: delay target
• TSpec: describe flow traffic characterization
– Characterized by token bucket filter
– Average throughput r
– Maximum buffering requirement B
17


Flowspec
• Rspec: describes service requested from network
– Controlled­load: none
– Guaranteed: delay target

• Tspec: describes flow’s traffic characteristics










Average bandwidth + burstness: token bucket filter
Token rate r
Bucket depth B
Must have a token to send a byte
Must have n tokens to send n bytes
Start with no tokens
Accumulate tokens at rate of r per second
Can accumulate no more than B tokens
18


Flows with Equal Average Rates but 
Different Token Bucket Descriptions

19


Unrealistic Expectations …
• Be explicit about requirements
• “In general, it is good to be as explicit 
about the bandwidth needs of an 
application as possible...”
• How much bandwidth does your 
browser need? What about buffering? 

Please be explicit!
20


Token Bucket Filters
r tokens/sec
Token Bucket, 
Capacity B 

Each byte needs a 
token in order to 
pass

Data

• Dropping filter: drops packets if token is not available 
• Buffered filter: buffers data until tokens become 
available
21


Token Bucket
• Given a rate r and a finite data trace, what 
is minimum bucket capacity B such that the 
filter has no effect?

• Simply observe the maximum buffer size
• Does this approach work? Why?
• For buffer of size b, the number of empty 
buffer positions is equal to the number of 

tokens in an (r,b) token bucket filter
22


Token Bucket

23


Per­Router (Router­Centric) 
Mechanisms
• Admission Control
– Decide if a new flow can be supported
– Answer depends on service class
– Not the same as policing
• Packet Processing
– Classification: associate each packet with 
the appropriate reservation
– Scheduling: manage queues so each packet 
receives the requested service
24


Reservation Protocol
• Called signaling in ATM
• Proposed Internet standard: RSVP
– Consistent with robustness of today’s 
connectionless model
– Uses soft state (refresh periodically)
– Designed to support multicast (can specify 

number of speakers)
– Receiver­oriented
• RSVP uses two messages
– PATH transmitted by source every 30 sec
– Destination responds with RESV message
• Requirements must be merged for multicast
25


×