Professional Documents
Culture Documents
10/1/2012
Delay (latency)
Average time for data to get from one endpoint to its destination
Jitter
Variation in end-to-end delay
10/1/2012
Why do we care?
We want to provide users with
Good interactive performance Glitch-free, delay-free streaming video Good quality IP telephony
10/1/2012
Examples
VoIP: low bandwidth, low latency (<150 ms), low jitter (<30 ms) Video streaming: high bandwidth, longer latency OK Remote login: low bandwidth, relatively low latency, high reliability File transfer: high bandwidth, high latency OK, high jitter OK , high reliability
10/1/2012
Network
Available bandwidth Bandwidth mismatch
congestion
10/1/2012
Contributors to congestion
Bandwidth mismatch
10 Gbps 50 Mbps
Aggregation
1 Gbps
1 Gbps
Contributors to latency
Packetization on host
Create IP & MAC packets
Serialization
Send data onto the network One packet at a time others are queued
Queuing delay
Wait for interface to be available
2012 Paul Krzyzanowski 10/1/2012 7
Contributors to jitter
Packets arrive at a router or switch at the same time
Used to lead to collision on a shared link
Buffers store packets Transmitted FIFO, not all at once! Dequeuing creates jitter
FIFO output queue
10/1/2012
Traffic Control
Classifies, queues, and schedules traffic within the network
10/1/2012
10
Hard QoS
Network makes commitment to deliver the required quality of service
Host makes a reservation
Traffic flows are reserved
2012 Paul Krzyzanowski 10/1/2012 11
Host-based
Each host observes network conditions and adjusts its behavior
Feedback-based
Hosts sends data without reserving resources Host gets congestion feedback from a router or detects packet loss & adjusts its transmission rate
10/1/2012
12
Congestion Control
Congestion:
Caused by more incoming traffic than we can route
Three approaches
Admission control (input)
Prevent congestion that has been detected from getting worse Do not allow packets for a specific flow, new flows, new virtual circuits
10/1/2012
13
IP handles congestion by dropping packets Explicit Congestion Notification (ECN) allows end-to-end notification of congestion (RFC 3168)
10/1/2012
14
Controlling Jitter
output queues Incoming packet
Scheduler
10/1/2012
Classifier
Transmitted packet
15
Scheduler
10/1/2012
Classifier
Transmitted packet
Priority
If there are always packets in a high priority queue, we get head of line blocking (simply packets holding up other packets)
Flow Detection
Flow: stream of related packets between hosts
In IP, set of packets from one address:port to another address:port with same protocol
Soft state
Keeping state for a flow makes resource allocation easier (e.g., route, average packet size, packet arrival rate) This is called a soft state. There is usually no signaling information that is used to create these states.
Weight
10/1/2012
18
Bandwidth Management
Traffic Shaping
Goal: regulate average rate of data transmission per flow Queue packets during surges and release later Example: high-bandwidth link to low-bandwidth link
Traffic Policing
Goal: Monitor network traffic and discard offenders Discard traffic that exceeds allotted bandwidth
10/1/2012
19
Bucket = packet queue buffer If a packet comes in and bucket is full, discard packet
Buffer overrun
10/1/2012
20
To transmit a packet
The bucket must hold and destroy a token(s)
The token bucket allows a host to save up permission to send large bursts later
Bucket size determines maximum burstiness
10/1/2012
21
Add a token every 1/r seconds If # tokens > b (bucket is full), discard the token When packet arrives (size = n bytes): if # tokens is < n Traffic shaping: queue (delay) the packet until there are enough tokens Traffic policing: drop the packet else transmit the packet and remove n tokens
(in implementation, the tokens are just one number, not a collection)
2012 Paul Krzyzanowski 10/1/2012 22
10/1/2012
23
Quality of Service in IP
IP was not designed with QoS controls in mind IP cannot (normally) take advantage of QoS controls offered by an underlying network (LAN)
You cant count on a specific underlying network for end-to-end service
10/1/2012
24
Unreliable delivery
Software to the rescue TCP/IP But leads to jitter
10/1/2012
25
Inefficient Packets
Some software generates lots of tiny packets
Can lead to head-of-line blocking Nagles algorithm:
Buffer new data if unacknowledged TCP/IP data outstanding
Header/packet compression
Link-to-link Header compression (RFC 3843) Payload compression (RFC 2393) Trade-off: $ delivery vs. $ compression Routers have to be aware
10/1/2012
26
Use on Internet (especially across ISPs) limited due to peering agreement complexities
10/1/2012
27
p p p x x x - Priority: 0-7
Each router uses this value to determine how to prioritize the packet it affects per hop behavior of the router
Underlying mechanism
Resource Reservation Protocol (RSVP)
10/1/2012
29
10/1/2012
30
Other mechanisms
Multi-Protocol Layer Switching (MPLS)
Make packet routing more efficient more like layer 2 Each packet is assigned a routing label (based on destination & packet priority) Routers make queuing and forwarding decisions based on this label MPLS routers can create end-to-end circuits using any protocol QoS parameters
Traffic Class ECN (Explicit Congestion Notification)
10/1/2012
31
Other mechanims
802.1p: control QoS at the MAC layer (layer 2)
Eight traffic classes defined in an ethernet frame This is not an IP QoS mechanism
Priority 0 1 2 3 4 5 6 7 Traffic Background Best effort Excellent effort Critical Video <100 ms latency Voice <10 ms latency Internetwork control Network control
10/1/2012
32
10/1/2012
33
10/1/2012
34
10/1/2012
35
ATM
Traditional voice networking
Circuit switching
Too costly Poor use of resource Does not lend to multicasting
Fixed-size cells provide for predictive scheduling Large cells will not hold up smaller ones Rapid cell switching
10/1/2012
36
ATM
ATM cell
53-byte cell: 48-byte data, 5-byte header
10/1/2012
37
ATM
Small cells lots of interrupts
622 Mbps link: 12 million interrupts per second
The End
10/1/2012
39