Multimedia Applications
Multimedia Applications <ul><li>Multimedia requirements </li></ul><ul><li>Streaming </li></ul><ul><li>Recovering from Jitt...
Application Classes  <ul><li>Typically: </li></ul><ul><ul><li>sensitive to delay, but </li></ul></ul><ul><ul><li>can toler...
Application Classes (more) <ul><li>Streaming </li></ul><ul><ul><li>Clients request audio/video files from servers and pipe...
Application Classes (more) <ul><li>Unidirectional Real-Time: </li></ul><ul><ul><li>similar to existing TV and radio statio...
Multimedia Challenges <ul><li>TCP/UDP/IP suite provides best-effort, no guarantees on expectation or variance of packet de...
Challenges (more) <ul><li>Most router implementations: </li></ul><ul><ul><li>use only First-Come-First-Serve (FCFS)  </li>...
Solution Approaches in IP Networks <ul><li>Just add more bandwidth and enhance caching capabilities (over-provisioning)! <...
Encoding and compressing Audio <ul><li>Pulse Code Modulation (PCM) </li></ul><ul><ul><li>Sample at a fixed rate </li></ul>...
Video Compression <ul><li>Raw rate: </li></ul><ul><ul><li>images: 24 or 30 per second. </li></ul></ul><ul><ul><li>Size: 10...
Streaming <ul><li>Important and growing application due to  </li></ul><ul><ul><li>reduction of storage costs,  </li></ul><...
Streaming <ul><li>User interactive control is provided, e.g. the public protocol  Real Time Streaming Protocol (RTSP) </li...
Streaming From Web Servers: I <ul><li>Audio: in files sent as HTTP objects </li></ul><ul><li>Video (interleaved audio and ...
Streaming From Web Server: II <ul><li>Alternative: set up connection between server and player, then download </li></ul><u...
Meta file requests
III: Using a Streaming Server <ul><li>This gets us around HTTP, allows a choice of UDP vs. TCP and the application layer p...
Options When Using a Streaming Server <ul><li>Use UDP, and Server sends at a rate (Compression and Transmission) appropria...
Real Time Streaming Protocol (RTSP) <ul><li>For user to control display: rewind, fast forward, pause, resume, etc… </li></...
Meta File Example <ul><li>< title>Twister</title>  </li></ul><ul><li><session>  </li></ul><ul><li><group language=en lipsy...
RTSP Operation
Jitter: Definitions <ul><li>Input: t 0 , …, t n </li></ul><ul><li>Delay Jitter: </li></ul><ul><ul><li>Delay jitter J </li>...
Fixed Playout Delay (Delay Jitter)
Adaptive Playout Delay (Rate Jitter) <ul><li>Objective is to use a delay value that tracks the network delay performance a...
Recovery From Packet Loss <ul><li>Loss is in a broader sense:  </li></ul><ul><ul><li>packet never arrives or </li></ul></u...
I: Recovery From Packet Loss - FEC <ul><li>FEC is Forward Error Correction </li></ul><ul><li>Simplest FEC scheme adds a re...
II: Recovery From Loss - Mixed Quality <ul><li>Include two qualities </li></ul><ul><ul><li>High quality </li></ul></ul><ul...
Piggybacking Lower Quality Stream
III: Recovery From Loss - Interleaving <ul><li>Divide audio data to smaller units and interleave </li></ul><ul><li>Upon lo...
Real-Time Protocol (RTP) <ul><li>Provides standard packet format for real-time application </li></ul><ul><li>Typically run...
Real-Time Protocol (RTP) <ul><li>Timestamp : 32 bytes; gives the sampling instant of the first audio/video byte in the pac...
RTP Control Protocol (RTCP) <ul><li>Protocol specifies report packets exchanged between sources and destinations of multim...
Quality of Service Support
QoS in IP Networks <ul><li>IETF groups are working on proposals to provide QoS control in IP networks, i.e., going beyond ...
Principles for QoS Guarantees <ul><li>Consider a phone application at 1Mbps and an FTP application sharing a 1.5 Mbps link...
Principles for QOS Guarantees (more) <ul><li>Applications misbehave (audio sends packets at a rate higher than 1Mbps assum...
Principles for QOS Guarantees (more) <ul><li>Alternative to Marking and Policing: allocate a set portion of bandwidth to e...
Principles for QOS Guarantees (more) <ul><li>Cannot support traffic beyond link capacity </li></ul><ul><ul><li>Two phone c...
Summary
Scheduling And Policing Mechanisms <ul><li>Scheduling: choosing the next packet for transmission </li></ul><ul><ul><li>FIF...
 
Policing Mechanisms <ul><li>(Long term)  Average Rate   </li></ul><ul><ul><li>100 packets per sec or 6000 packets per min?...
Policing Mechanisms <ul><li>Token Bucket mechanism, provides a means for limiting input to specified  Burst Size  and  Ave...
Integrated Services <ul><li>An architecture for providing QOS guarantees in IP networks for individual application session...
Call Admission <ul><li>Session must first declare its QoS requirement and characterize the traffic it will send through th...
Call Admission <ul><li>Call Admission: routers will admit calls based on their R-spec and T-spec and base on the current r...
Integrated Services: Classes <ul><li>Guaranteed QoS : this class is provided with  firm bounds  on queuing delay at a rout...
QoS Routing: Multiple constraints  <ul><li>A request specifies the desired  QoS requirements   </li></ul><ul><ul><li>e.g.,...
Example of QoS Routing A B D = 30, BW = 20 D = 24, BW = 55 D = 5, BW = 90 D = 3, BW = 105 D = 5, BW = 90 D = 10, BW = 90 D...
Example of QoS Routing A B D = 30, BW = 20 D = 24, BW = 55 D = 5, BW = 90 D = 3, BW = 105 D = 5, BW = 90 D = 10, BW = 90 D...
Differentiated Services <ul><li>Intended to address the following difficulties with Intserv and RSVP; </li></ul><ul><li>Sc...
Differentiated Services <ul><li>Approach:  </li></ul><ul><ul><li>Only simple functions in the core, and relatively complex...
Edge Functions at DiffServ (DS) <ul><li>At DS-capable host or first DS-capable router </li></ul><ul><li>Classification : e...
Core Functions <ul><li>Forwarding : according to “Per-Hop-Behavior” or PHB specified for the particular packet class; such...
Classification and Conditioning <ul><li>Packet is marked in the Type of Service (TOS) in IPv4, and Traffic Class in IPv6 <...
Classification and Conditioning <ul><li>It may be desirable to limit traffic injection rate of some class; user declares t...
Forwarding (PHB) <ul><li>PHB result in a different observable (measurable) forwarding performance behavior </li></ul><ul><...
Forwarding (PHB) <ul><li>PHBs under consideration: </li></ul><ul><ul><li>Expedited Forwarding : departure rate of packets ...
Differentiated Services Issues <ul><li>AF and EF are not even in a standard track yet… research ongoing </li></ul><ul><li>...
DiffServ Routers Classifier Meter Policer Marker DiffServ  Edge  Router Extract DSCP Local conditions PHB PHB PHB PHB Sele...
IntServ vs. DiffServ IP IntServ network DiffServ network &quot;Call blocking&quot; approach &quot;Prioritization&quot; app...
Comparison of Intserv & Diffserv Architectures
Comparison of Intserv & Diffserv Architectures
Upcoming SlideShare
Loading in …5
×

Part I: Introduction

468 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
468
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
15
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • DiffServ edge router utilises these functions in order to perform its task: - Classification (based on for example application, user or load) - Marking (of the DiffServ packets) - Metering (for policing or marking purposes) - Policing (handling of non-conformant traffic) DiffServ core router will treat an IP packet based on 1) DS codepoint 2) Local conditions DS codepoint is actually an index to a table that contains so called Per Hop Behaviors (PHB). Per Hop Behavior is the set of rules how the packet (or actually the aggregate flow that the packet belongs to) is treated. The local conditions can be, for example, the occupancy level(s) of the buffer(s) of the router. Based on these two pieces of information, the edge router treats the packet. For example, the packet may be discarded or accepted for buffering.
  • This figure illustrates the basic principles of Integrated Services and Differentiated Services methods. With Integrated Services -method the network creates &amp;quot;bit pipes&amp;quot; through the IP network. If there is congestion, the user does not get such a bit pipe. With Differentiated Services method the idea is to equip the IP packet with some priorities. Effectively, these provide IP packets with different capabilities to &amp;quot;fight&amp;quot; their way through the congestion points of the network. If there is congestion, the packets with poor priorities will be discarded first. However, the user may always get at least something through.
  • Part I: Introduction

    1. 1. Multimedia Applications
    2. 2. Multimedia Applications <ul><li>Multimedia requirements </li></ul><ul><li>Streaming </li></ul><ul><li>Recovering from Jitter and Loss </li></ul><ul><li>RTP </li></ul>
    3. 3. Application Classes <ul><li>Typically: </li></ul><ul><ul><li>sensitive to delay, but </li></ul></ul><ul><ul><li>can tolerate packet loss </li></ul></ul><ul><ul><ul><li>would cause minor glitches that can be concealed </li></ul></ul></ul><ul><li>Data contains audio and video content (“continuous media”), three classes of applications: </li></ul><ul><ul><li>Streaming </li></ul></ul><ul><ul><li>Unidirectional Real-Time </li></ul></ul><ul><ul><li>Interactive Real-Time </li></ul></ul>
    4. 4. Application Classes (more) <ul><li>Streaming </li></ul><ul><ul><li>Clients request audio/video files from servers and pipeline reception over the network and display </li></ul></ul><ul><ul><li>Interactive: user can control operation (similar to VCR: pause, resume, fast forward, rewind, etc.) </li></ul></ul><ul><ul><li>Delay: from client request until display start can be 1 to 10 seconds </li></ul></ul>
    5. 5. Application Classes (more) <ul><li>Unidirectional Real-Time: </li></ul><ul><ul><li>similar to existing TV and radio stations, </li></ul></ul><ul><ul><ul><li>but delivery on the network </li></ul></ul></ul><ul><ul><li>Non-interactive, just listen/view </li></ul></ul><ul><li>Interactive Real-Time : </li></ul><ul><ul><li>Phone conversation or video conference </li></ul></ul><ul><ul><li>More stringent delay requirement than Streaming and Unidirectional because of real-time nature </li></ul></ul><ul><ul><li>Video: < 150 msec acceptable </li></ul></ul><ul><ul><li>Audio: < 150 msec good, <400 msec acceptable </li></ul></ul>
    6. 6. Multimedia Challenges <ul><li>TCP/UDP/IP suite provides best-effort, no guarantees on expectation or variance of packet delay </li></ul><ul><li>Streaming applications delay of 5 to 10 seconds is typical and has been acceptable, but performance deteriorate if links are congested (transoceanic) </li></ul><ul><li>Real-Time Interactive requirements on delay and its jitter have been satisfied by over-provisioning (providing plenty of bandwidth), what will happen when the load increases?... </li></ul>
    7. 7. Challenges (more) <ul><li>Most router implementations: </li></ul><ul><ul><li>use only First-Come-First-Serve (FCFS) </li></ul></ul><ul><ul><li>Limited packet processing and transmission scheduling </li></ul></ul><ul><li>To mitigate impact of “best-effort” protocols, we can: </li></ul><ul><ul><li>Use UDP to avoid TCP and its slow-start phase… </li></ul></ul><ul><ul><li>Buffer content at client and control playback to remedy jitter </li></ul></ul><ul><ul><li>Adapt compression level to available bandwidth </li></ul></ul>
    8. 8. Solution Approaches in IP Networks <ul><li>Just add more bandwidth and enhance caching capabilities (over-provisioning)! </li></ul><ul><li>Need major change of the protocols : </li></ul><ul><ul><li>Incorporate resource reservation (bandwidth, processing, buffering), and new scheduling policies </li></ul></ul><ul><ul><li>Set up service level agreements with applications, monitor and enforce the agreements, charge accordingly </li></ul></ul><ul><li>Need moderate changes (“Differentiated Services”): </li></ul><ul><ul><li>Use two traffic classes for all packets and differentiate service accordingly </li></ul></ul><ul><ul><li>Charge based on class of packets </li></ul></ul><ul><ul><li>Network capacity is provided to ensure first class packets incur no significant delay at routers </li></ul></ul>
    9. 9. Encoding and compressing Audio <ul><li>Pulse Code Modulation (PCM) </li></ul><ul><ul><li>Sample at a fixed rate </li></ul></ul><ul><ul><ul><li>value is an arbitrary real number </li></ul></ul></ul><ul><ul><li>Quantization: map samples to a given set of values </li></ul></ul><ul><ul><li>Encoding: encode the values as bits. </li></ul></ul><ul><li>Examples: </li></ul><ul><ul><li>sample rate 8000/sec. & 256 values : 64Kbps </li></ul></ul><ul><ul><li>CD: sample 44,100/sec. & 16 bits : 705.6 Kbps </li></ul></ul><ul><li>Compressions: </li></ul><ul><ul><li>Depend on the output rate: </li></ul></ul><ul><ul><ul><li>GSM (13 Kbps) G.729 (8 Kbps) G.723.3 (6.4 or 5.3 Kbps) </li></ul></ul></ul><ul><ul><ul><li>MP3 (128 or 112 Kbps) </li></ul></ul></ul>
    10. 10. Video Compression <ul><li>Raw rate: </li></ul><ul><ul><li>images: 24 or 30 per second. </li></ul></ul><ul><ul><li>Size: 1024 x 1024 = 1 M pixels </li></ul></ul><ul><ul><li>pixel encoding 24 bit </li></ul></ul><ul><ul><li>Rate: 576 or 900 Mbps !!! </li></ul></ul><ul><li>Compression schemes (many): </li></ul><ul><ul><li>MPEG 1 (1.5 Mbps) CD quality </li></ul></ul><ul><ul><li>MPEG 2 (3-6 Mbps) DVD quality </li></ul></ul><ul><ul><li>Motion JPEG </li></ul></ul><ul><ul><li>H.261 (for ISDN) </li></ul></ul><ul><li>Variable rate compression </li></ul><ul><li>Compression is a world of its own </li></ul>
    11. 11. Streaming <ul><li>Important and growing application due to </li></ul><ul><ul><li>reduction of storage costs, </li></ul></ul><ul><ul><li>increase in high speed net access from homes, </li></ul></ul><ul><ul><li>enhancements to caching and </li></ul></ul><ul><ul><li>introduction of QoS in IP networks </li></ul></ul><ul><li>Audio/Video file is segmented and sent over either TCP or UDP, public segmentation protocol: Real-Time Protocol (RTP) </li></ul>
    12. 12. Streaming <ul><li>User interactive control is provided, e.g. the public protocol Real Time Streaming Protocol (RTSP) </li></ul><ul><li>Helper Application: displays content, which is typically requested via a Web browser; e.g. RealPlayer; typical functions: </li></ul><ul><ul><li>Decompression </li></ul></ul><ul><ul><li>Jitter removal </li></ul></ul><ul><ul><li>Error correction: use redundant packets to be used for reconstruction of original stream </li></ul></ul><ul><ul><li>GUI for user control </li></ul></ul>
    13. 13. Streaming From Web Servers: I <ul><li>Audio: in files sent as HTTP objects </li></ul><ul><li>Video (interleaved audio and images in one file, or two separate files and client synchronizes the display) sent as HTTP object(s) </li></ul><ul><li>A simple architecture is to have the Browser requests the object(s) and after their reception pass them to the player for display </li></ul><ul><ul><li>- No pipelining </li></ul></ul>
    14. 14. Streaming From Web Server: II <ul><li>Alternative: set up connection between server and player, then download </li></ul><ul><li>Web browser requests and receives a Meta File (a file describing the object) instead of receiving the file itself; </li></ul><ul><li>Browser launches the appropriate Player and passes it the Meta File; </li></ul><ul><li>Player sets up a TCP connection with Web Server and downloads the file </li></ul>
    15. 15. Meta file requests
    16. 16. III: Using a Streaming Server <ul><li>This gets us around HTTP, allows a choice of UDP vs. TCP and the application layer protocol can be better tailored to Streaming; many enhancements options are possible (see next slide) </li></ul>
    17. 17. Options When Using a Streaming Server <ul><li>Use UDP, and Server sends at a rate (Compression and Transmission) appropriate for client; to reduce jitter, Player buffers initially for 2-5 seconds, then starts display </li></ul><ul><li>Use TCP, and sender sends at maximum possible rate under TCP; retransmit when error is encountered; Player uses a much large buffer to smooth delivery rate of TCP </li></ul>
    18. 18. Real Time Streaming Protocol (RTSP) <ul><li>For user to control display: rewind, fast forward, pause, resume, etc… </li></ul><ul><li>Out-of-band protocol (uses two connections, one for control messages (Port 554) and for media stream) </li></ul><ul><li>RFC 2326 permits use of either TCP or UDP for the control messages connection, sometimes called the RTSP Channel </li></ul><ul><li>As before, meta file is communicated to web browser which then launches the Player; Player sets up an RTSP connection for control messages in addition to the connection for the streaming media </li></ul>
    19. 19. Meta File Example <ul><li>< title>Twister</title> </li></ul><ul><li><session> </li></ul><ul><li><group language=en lipsync> </li></ul><ul><li><switch> </li></ul><ul><li><track type=audio </li></ul><ul><li>e=&quot;PCMU/8000/1&quot; </li></ul><ul><li>src = &quot;rtsp://audio.example.com/twister/audio.en/lofi&quot;> </li></ul><ul><li><track type=audio </li></ul><ul><li>e=&quot;DVI4/16000/2&quot; pt=&quot;90 DVI4/8000/1&quot; </li></ul><ul><li>src=&quot;rtsp://audio.example.com/twister/audio.en/hifi&quot;> </li></ul><ul><li></switch> </li></ul><ul><li><track type=&quot;video/jpeg&quot; </li></ul><ul><li>src=&quot;rtsp://video.example.com/twister/video&quot;> </li></ul><ul><li></group> </li></ul><ul><li></session> </li></ul>
    20. 20. RTSP Operation
    21. 21. Jitter: Definitions <ul><li>Input: t 0 , …, t n </li></ul><ul><li>Delay Jitter: </li></ul><ul><ul><li>Delay jitter J </li></ul></ul><ul><ul><li>For every k: |t 0 + kX - t k |  J </li></ul></ul><ul><ul><li>X = (t n - t 0 ) / n </li></ul></ul><ul><li>Rate Jitter </li></ul><ul><ul><li>Rate Jitter A </li></ul></ul><ul><ul><li>I k = t k - t k-1 </li></ul></ul><ul><ul><li>For every k and j: |I j - I k |  A </li></ul></ul><ul><li>Jitter and buffering </li></ul><ul><ul><li>delay versus jitter </li></ul></ul>
    22. 22. Fixed Playout Delay (Delay Jitter)
    23. 23. Adaptive Playout Delay (Rate Jitter) <ul><li>Objective is to use a delay value that tracks the network delay performance as it varies </li></ul><ul><ul><li>Modify the inter-packet times </li></ul></ul><ul><li>Estimate the inter-arrival time </li></ul><ul><ul><li>Similar to estimates of RTT and deviation in TCP </li></ul></ul><ul><ul><li>Use the estimate for playout rate </li></ul></ul>
    24. 24. Recovery From Packet Loss <ul><li>Loss is in a broader sense: </li></ul><ul><ul><li>packet never arrives or </li></ul></ul><ul><ul><li>arrives later than its scheduled playout time </li></ul></ul><ul><li>Retransmission is inappropriate for Real Time applications, </li></ul><ul><li>Other methods are used to reduce loss impact. </li></ul>
    25. 25. I: Recovery From Packet Loss - FEC <ul><li>FEC is Forward Error Correction </li></ul><ul><li>Simplest FEC scheme adds a redundant chunk made up of exclusive OR of a group of n chunks; </li></ul><ul><ul><li>redundancy is 1/n; </li></ul></ul><ul><ul><li>can reconstruct if at most one lost chunk; </li></ul></ul><ul><ul><li>playout time schedule assumes a loss per group </li></ul></ul><ul><li>More errors ... </li></ul>
    26. 26. II: Recovery From Loss - Mixed Quality <ul><li>Include two qualities </li></ul><ul><ul><li>High quality </li></ul></ul><ul><ul><li>Low quality </li></ul></ul><ul><li>If high quality lost, play low quality. </li></ul><ul><ul><li>Better lower quality than nothing </li></ul></ul><ul><li>Send the low quality with the next high quality </li></ul><ul><li>Can recover from single losses </li></ul><ul><li>Bandwidth blowup: </li></ul><ul><ul><li>Depends on the low quality </li></ul></ul>
    27. 27. Piggybacking Lower Quality Stream
    28. 28. III: Recovery From Loss - Interleaving <ul><li>Divide audio data to smaller units and interleave </li></ul><ul><li>Upon loss, the missing data is spread out </li></ul><ul><li>Has no redundancy, but can cause delay in playout beyond Real Time requirements </li></ul>
    29. 29. Real-Time Protocol (RTP) <ul><li>Provides standard packet format for real-time application </li></ul><ul><li>Typically runs over UDP </li></ul><ul><li>Specifies header fields below </li></ul><ul><li>Payload Type : 7 bits, providing 128 possible different types of encoding; eg PCM, MPEG2 video, etc. </li></ul><ul><li>Sequence Number : 16 bits; used to detect packet loss </li></ul>
    30. 30. Real-Time Protocol (RTP) <ul><li>Timestamp : 32 bytes; gives the sampling instant of the first audio/video byte in the packet; used to remove jitter introduced by the network </li></ul><ul><li>Synchronization Source identifier (SSRC) : 32 bits; an id for the source of a stream; assigned randomly by the source </li></ul>
    31. 31. RTP Control Protocol (RTCP) <ul><li>Protocol specifies report packets exchanged between sources and destinations of multimedia information </li></ul><ul><li>Three reports are defined: Receiver reception, Sender, and Source description </li></ul><ul><li>Reports contain statistics such as the number of packets sent, number of packets lost, inter-arrival jitter </li></ul><ul><li>Used to modify sender transmission rates and for diagnostics purposes </li></ul>
    32. 32. Quality of Service Support
    33. 33. QoS in IP Networks <ul><li>IETF groups are working on proposals to provide QoS control in IP networks, i.e., going beyond best effort to provide some assurance for QoS </li></ul><ul><li>Work in Progress includes RSVP, Differentiated Services, and Integrated Services </li></ul><ul><li>Simple model for sharing and congestion studies: </li></ul>
    34. 34. Principles for QoS Guarantees <ul><li>Consider a phone application at 1Mbps and an FTP application sharing a 1.5 Mbps link. </li></ul><ul><ul><li>bursts of FTP can congest the router and cause audio packets to be dropped. </li></ul></ul><ul><ul><li>want to give priority to audio over FTP </li></ul></ul><ul><li>PRINCIPLE 1: Marking of packets is needed for router to distinguish between different classes; and new router policy to treat packets accordingly </li></ul>
    35. 35. Principles for QOS Guarantees (more) <ul><li>Applications misbehave (audio sends packets at a rate higher than 1Mbps assumed above); </li></ul><ul><li>PRINCIPLE 2: provide protection (isolation) for one class from other classes </li></ul><ul><li>Require Policing Mechanisms to ensure sources adhere to bandwidth requirements; Marking and Policing need to be done at the edges: </li></ul>
    36. 36. Principles for QOS Guarantees (more) <ul><li>Alternative to Marking and Policing: allocate a set portion of bandwidth to each application flow; can lead to inefficient use of bandwidth if one of the flows does not use its allocation </li></ul><ul><li>PRINCIPLE 3: While providing isolation, it is desirable to use resources as efficiently as possible </li></ul>
    37. 37. Principles for QOS Guarantees (more) <ul><li>Cannot support traffic beyond link capacity </li></ul><ul><ul><li>Two phone calls each requests 1 Mbps </li></ul></ul><ul><li>PRINCIPLE 4: Need a Call Admission Process; application flow declares its needs, network may block call if it cannot satisfy the needs </li></ul>
    38. 38. Summary
    39. 39. Scheduling And Policing Mechanisms <ul><li>Scheduling: choosing the next packet for transmission </li></ul><ul><ul><li>FIFO </li></ul></ul><ul><ul><li>Priority Queue </li></ul></ul><ul><ul><li>Round Robin </li></ul></ul><ul><ul><li>Weighted Fair Queuing </li></ul></ul><ul><li>We had a lecture on that! </li></ul>
    40. 41. Policing Mechanisms <ul><li>(Long term) Average Rate </li></ul><ul><ul><li>100 packets per sec or 6000 packets per min?? </li></ul></ul><ul><ul><ul><li>crucial aspect is the interval length </li></ul></ul></ul><ul><li>Peak Rate : </li></ul><ul><ul><li>e.g., 6000 p p minute Avg and 1500 p p sec Peak </li></ul></ul><ul><li>(Max.) Burst Size : </li></ul><ul><ul><li>Max. number of packets sent consecutively, ie over a short period of time </li></ul></ul><ul><li>Units of measurement </li></ul><ul><ul><li>Packets versus bits </li></ul></ul>
    41. 42. Policing Mechanisms <ul><li>Token Bucket mechanism, provides a means for limiting input to specified Burst Size and Average Rate. </li></ul><ul><li>Bucket can hold b tokens ; </li></ul><ul><li>tokens are generated at a rate of r token/sec </li></ul><ul><ul><li>unless bucket is full of tokens. </li></ul></ul><ul><li>Over an interval of length t , the number of packets that are admitted is less than or equal to ( r t + b) . </li></ul>
    42. 43. Integrated Services <ul><li>An architecture for providing QOS guarantees in IP networks for individual application sessions </li></ul><ul><li>relies on resource reservation, and routers need to maintain state info (Virtual Circuit??), maintaining records of allocated resources and responding to new Call setup requests on that basis </li></ul>
    43. 44. Call Admission <ul><li>Session must first declare its QoS requirement and characterize the traffic it will send through the network </li></ul><ul><li>R-spec : defines the QoS being requested </li></ul><ul><li>T-spec : defines the traffic characteristics </li></ul><ul><li>A signaling protocol is needed to carry the R-spec and T-spec to the routers where reservation is required; </li></ul><ul><li>RSVP is a leading candidate for such signaling protocol </li></ul>
    44. 45. Call Admission <ul><li>Call Admission: routers will admit calls based on their R-spec and T-spec and base on the current resource allocated at the routers to other calls. </li></ul>
    45. 46. Integrated Services: Classes <ul><li>Guaranteed QoS : this class is provided with firm bounds on queuing delay at a router; envisioned for hard real-time applications that are highly sensitive to end-to-end delay expectation and variance </li></ul><ul><li>Controlled Load : this class is provided a QoS closely approximating that provided by an unloaded router; envisioned for today’s IP network real-time applications which perform well in an unloaded network </li></ul>
    46. 47. QoS Routing: Multiple constraints <ul><li>A request specifies the desired QoS requirements </li></ul><ul><ul><li>e.g., BW, Delay, Jitter, packet loss, path reliability etc </li></ul></ul><ul><li>Two type of constraints : </li></ul><ul><ul><li>Additive: e.g., delay </li></ul></ul><ul><ul><li>Maximum (or Minimum): e.g., Bandwidth </li></ul></ul><ul><li>Task </li></ul><ul><ul><li>Find a (min cost) path which satisfies the constraints </li></ul></ul><ul><ul><li>if no feasible path found, reject the connection </li></ul></ul>
    47. 48. Example of QoS Routing A B D = 30, BW = 20 D = 24, BW = 55 D = 5, BW = 90 D = 3, BW = 105 D = 5, BW = 90 D = 10, BW = 90 D = 5, BW = 90 D = 7, BW = 90 D = 5, BW = 90 D = 14, BW = 90 Constraints: Delay (D) < 25, Available Bandwidth (BW) > 30
    48. 49. Example of QoS Routing A B D = 30, BW = 20 D = 24, BW = 55 D = 5, BW = 90 D = 3, BW = 105 D = 5, BW = 90 D = 10, BW = 90 D = 5, BW = 90 D = 7, BW = 90 D = 5, BW = 90 D = 14, BW = 90 Constraints: Delay (D) < 25, Available Bandwidth (BW) > 30
    49. 50. Differentiated Services <ul><li>Intended to address the following difficulties with Intserv and RSVP; </li></ul><ul><li>Scalability : maintaining states by routers in high speed networks is difficult sue to the very large number of flows </li></ul><ul><li>Flexible Service Models : Intserv has only two classes, want to provide more qualitative service classes; want to provide ‘relative’ service distinction (Platinum, Gold, Silver, …) </li></ul><ul><li>Simpler signaling : (than RSVP) many applications and users may only want to specify a more qualitative notion of service </li></ul>
    50. 51. Differentiated Services <ul><li>Approach: </li></ul><ul><ul><li>Only simple functions in the core, and relatively complex functions at edge routers (or hosts) </li></ul></ul><ul><ul><li>Do not define service classes, instead provides functional components with which service classes can be built </li></ul></ul>
    51. 52. Edge Functions at DiffServ (DS) <ul><li>At DS-capable host or first DS-capable router </li></ul><ul><li>Classification : edge node marks packets according to classification rules to be specified (manually by admin, or by some TBD protocol) </li></ul><ul><li>Traffic Conditioning : edge node may delay and then forward or may discard </li></ul>
    52. 53. Core Functions <ul><li>Forwarding : according to “Per-Hop-Behavior” or PHB specified for the particular packet class; such PHB is strictly based on class marking (no other header fields can be used to influence PHB) </li></ul><ul><li>BIG ADVANTAGE : </li></ul><ul><li>No state info to be maintained by routers! </li></ul>
    53. 54. Classification and Conditioning <ul><li>Packet is marked in the Type of Service (TOS) in IPv4, and Traffic Class in IPv6 </li></ul><ul><li>6 bits used for Differentiated Service Code Point (DSCP) and determine PHB that the packet will receive </li></ul><ul><li>2 bits are currently unused </li></ul>
    54. 55. Classification and Conditioning <ul><li>It may be desirable to limit traffic injection rate of some class; user declares traffic profile (eg, rate and burst size); traffic is metered and shaped if non-conforming </li></ul>
    55. 56. Forwarding (PHB) <ul><li>PHB result in a different observable (measurable) forwarding performance behavior </li></ul><ul><li>PHB does not specify what mechanisms to use to ensure required PHB performance behavior </li></ul><ul><li>Examples: </li></ul><ul><ul><li>Class A gets x% of outgoing link bandwidth over time intervals of a specified length </li></ul></ul><ul><ul><li>Class A packets leave first before packets from class B </li></ul></ul>
    56. 57. Forwarding (PHB) <ul><li>PHBs under consideration: </li></ul><ul><ul><li>Expedited Forwarding : departure rate of packets from a class equals or exceeds a specified rate (logical link with a minimum guaranteed rate) </li></ul></ul><ul><ul><li>Assured Forwarding : 4 classes, each guaranteed a minimum amount of bandwidth and buffering; each with three drop preference partitions </li></ul></ul>
    57. 58. Differentiated Services Issues <ul><li>AF and EF are not even in a standard track yet… research ongoing </li></ul><ul><li>“ Virtual Leased lines” and “Olympic” services are being discussed </li></ul><ul><li>Impact of crossing multiple ASs and routers that are not DS-capable </li></ul>
    58. 59. DiffServ Routers Classifier Meter Policer Marker DiffServ Edge Router Extract DSCP Local conditions PHB PHB PHB PHB Select PHB Packet treatment DiffServ Core Router
    59. 60. IntServ vs. DiffServ IP IntServ network DiffServ network &quot;Call blocking&quot; approach &quot;Prioritization&quot; approach IP DSCP
    60. 61. Comparison of Intserv & Diffserv Architectures
    61. 62. Comparison of Intserv & Diffserv Architectures

    ×