Providing reliable multimedia streaming and conversational voice requires network support beyond standard best-effort IP delivery.
For per-flow reservations and aggregate QoS architecture, see Integrated Services, RSVP, and Differentiated Services.
Network Support Strategies
- Dimensioning best-effort networks:
- Overprovision link capacity so that link utilization remains low and congestion never occurs.
- Advantage
Low complexity; no special scheduling or queue management needed in routers. - Disadvantage
High bandwidth costs; difficult to estimate maximum traffic demand spikes.
- Quality of Service (QoS) guarantees:
- Classify, prioritize, shape, and police traffic so that delay-sensitive flows receive guaranteed network treatment.
Four Principles for QoS Guarantees
- Packet marking and class-based forwarding:
- Routers must distinguish between traffic classes. Edge devices mark packets (e.g., audio vs. HTTP web browsing).
- Class isolation and policing:
- The network must protect compliant flows from misbehaving applications.
- If a VoIP application sends data faster than its declared rate, policing mechanisms at the edge must drop or remark non-compliant packets.
- Efficient resource sharing:
- While providing isolation, resources should be shared efficiently.
- Call admission control (CAC):
- Because network capacity is finite, an application must declare its QoS requirements during session setup. The network will block new calls (returning a busy signal) if it cannot satisfy requested guarantees without degrading existing flows.
Packet Scheduling Mechanisms
Packet scheduling determines the transmission order of queued packets on an outgoing link interface.
1. First-Come First-Served (FCFS)
Packets are transmitted in exact order of arrival. Does not support class differentiation.
2. Priority Queueing
Packets are classified and placed into distinct priority queues. The router always transmits from the highest-priority non-empty queue.
- Risk
High-priority traffic can completely starve lower-priority queues.
3. Round-Robin Queueing
Packets are separated into classes. The scheduler cycles through classes, transmitting one packet from each non-empty queue in sequence. Prevents starvation.
4. Weighted Fair Queueing (WFQ)
An advanced generalized round-robin scheduler. Each traffic class is assigned a weight .
- Over any time interval, class receives a guaranteed minimum throughput share equal to: where is the total outgoing link capacity.
Traffic Policing Mechanisms
Policing limits traffic to ensure it does not exceed declared parameters:
- Average rate: Average number of packets permitted per unit time over a long time window.
- Peak rate: Maximum sending rate allowed over a short time window.
- Burst size: Maximum number of packets permitted to arrive consecutively without idle delays.
Token Bucket Algorithm
The token bucket mechanism enforces burst size and average rate constraints:
- A bucket holds up to tokens.
- Tokens are generated at a constant rate tokens/second. If the bucket is full, arriving tokens are discarded.
- When a packet of size 1 unit arrives, it must consume 1 token to be transmitted. If no token is available, the packet is queued or dropped.
- Burst bound
Over any time interval , the maximum number of packets admitted into the network is bounded by:
Guaranteed Upper Bound on Delay
When a token-bucket flow receives WFQ rate , its burst-delay component is bounded by:
The bound applies when the reservation and scheduler admit the flow.