Quality of Service
Quality of Service
24.1
• Content
– Quality
– Data Flow Characteristics
• Reliability
• Delay
• Bandwidth
• Jitter
– Techniques that can be used to improve the quality of service.
• FIFO Queue
• Priority Queue
• Weighted Queue
– Traffic Shaping
• Leaky Bucket
• Token Bucket
QUALITY OF SERVICE
⚫ Quality of service (QoS) is an internetworking issue
that refers to a set of techniques and mechanisms
that guarantees the performance of the network to
deliver predictable service to an application
program.
Data Flow characteristics
Delay:
⚫ Source to destination delay is another characteristic.
Bandwidth:
⚫ Different applications need different bandwidths.
Jitter:
⚫ It is the variation of delay for packets belonging to the same flow.
⚫ For example, if four packets depart at times 0, 1, 2, 3 and arrive at
20, 21, 22, 23, all have the same delay, 20 units of time.
⚫ On the other hand, if the above four packets arrive at 21, 23,
21,and 28, they will have different delays: 21, 22, 19, and 24.
⚫ For applications such as audio and video, the first case is
completely acceptable; the second case is not. For these
applications, it does not matter if the packets arrive with a short or
long delay as long as the delay is the same for all packets.
⚫ High jitter means the difference between delays is large; low jitter
means the variation is small.
Techniques that can be used to improve the
quality of service.
Scheduling
⚫ It is at the router that a packet may be delayed, suffer from jitters ,be
lost or to be assigned the required bandwidth
⚫ Priority queuing,
⚫ If the average arrival rate is higher than the average processing rate,
the queue will fill up and new packets will be discarded.
Priority queuing
⚫ In priority queuing, packets are first assigned to a priority class.
⚫ Each priority class has its own queue.
⚫ The packets in the highest-priority queue are processed first.
⚫ Packets in the lowest-priority queue are processed last
⚫ A priority queue can provide better QoS than the FIFO queue because
higher priority traffic, such as multimedia, can reach the destination with
less delay.
⚫ The queues are weighted based on the priority of the queues; higher
priority means a higher weight.
⚫ If the system does not impose priority on the classes, all weights can
be equal. In this way, we have fair queuing with priority.
Traffic shaping
⚫ It is a mechanism to control the amount and the rate of the traffic sent
to the network.
⚫ If a bucket has a small hole at the bottom, the water leaks from the
bucket at a constant rate as long as there is water in the bucket.
⚫ The rate at which the water leaks does not depend on the rate at which
the water is input to the bucket unless the bucket is empty.
⚫ The input rate can vary, but the output rate remains constant.
⚫ Bursty chunks are stored in the bucket and sent out at an average rate
Leaky bucket implementation
⚫ A FIFO queue holds the packets.
⚫ Traffic with fixed-size packets - the process removes a fixed
⚫ The leaky bucket is very restrictive. It does not credit an idle host.
⚫ For example, if a host is not sending for a while, its bucket becomes
empty. Now if the host has bursty data, the leaky bucket allows only an
average rate. The time when the host was idle is not taken into account.
24.19
Token bucket
⚫ It allows idle hosts to accumulate credit for the future in the form of
tokens. For each tick of the clock, the system sends n tokens to the
bucket.
⚫ The system removes one token for every cell (or byte) of data sent.
⚫ Let the bucket capacity is 10,000 tokens and tokens are added at the
rate of 1000 tokens per second. If the system is idle for 10 seconds ,the
bucket collects 10,000 tokens and becomes full. Now the host can
consume all these tokens in one tick with 10,000 cells, or the host takes
1000 ticks with 10 cells per tick.
⚫ The host can send bursty data as long as the bucket is not empty.
⚫ The token bucket can easily be implemented with a counter.