Performance of VoIP Applications in a Simple Differentiated Services Network Architecture
Borut Klepec Triglav Insurance Company Ljubljana Lendavska 5, 9000 Murska Sobota
[email protected]
Abstract IP networks were designed to support non-real time applications, such as file transfer or e-mail. These applications are characterised by their bursty traffic and high bandwidth demands at burst times, but they are not highly sensitive to delay or delay variation (jitter). On the other hand VoIP application requires timely packet delivery with low delay, jitter and packet loss values. Integration of voice and data onto a single network is becoming a priority for many network operators. To achieve that goal IP networks must be enhanced with mechanisms that ensure the quality of service required to carry real-time traffic such as voice. Three parameters emerge as the primary factors affecting voice quality within networks that offer VoIP technologies: clarity, end-to-end delay and echo. To support interactive voice application on an IP network we must be able to control four QoS categories: bandwidth, delay (latency), jitter and packet loss. In this paper we present the behaviour of packet transit times for a VoIP application that produces 8 kbps data stream. We simulate a simple network with one upstream, one downstream and one backbone link. Two scheduling principles are configured in network nodes (routers): FIFO and priority queuing. We present probability distribution functions for packet delay of VoIP traffic at different network loads. We then compare the performance of VoIP applications on the network with priority queuing (voice have priority over data) and FIFO queuing. 1. Introduction In VoIP applications a source voice signal is first packetized and then transmitted over an IP network. The network inevitably introduces some variation in the delay for each transmitted packet. That variation in delay is traditionally called jitter. The receiver depacketizes voice data and then attempts to faithfully playback the original voice signal. This is done by buffering the incoming data in order to remove the jitter introduced by the network and then replaying the signal at a designated playback point. Any data that arrives before its playback
Anton Kos University of Ljubljana Faculty of Electrical Engineering Tržaška 25, 1000 Ljubljana
[email protected]
point can be used in the reconstructed signal, data arriving after the play back point is useless and can not be used in the reconstructed voice signal [2] . In order to set the playback point, the application needs to have some information about packet delays (absolute or statistical delay boundaries). VoIP applications can often tolerate loss of a certain portion of packets with a minimal distortion in the signal. The delay in packet networks derives from several causes. In the practice there is a large fixed component of the total transmission delay, to which its variable part is added. The later is greatly related to the time each packet spends in network node service queues. In order to predict its level of performance an application must determine what percentage of packets should arrive to the receiver before their playback point. Applications can keep the playback point fixed, or better, they can measure packet delay and then adaptively move the playback point. For this kind of adaptation the probability distribution function of packet delays must be available. 2. Differentiated Services Network Schemes using a single bit priority filed in IP packets have recently been proposed as a low-cost solution to enhance the single class best-effort service model in the current Internet. In our work we have simulated the behaviour of a differentiated services network, that uses Clark and Crowcroft model for service differentiation (a scheme for delay sensitive traffic). This scheme is based on presumption, that low delay is a primary QoS feature and that mechanisms for differentiating IP traffic with regard to delay should exist. The model is implemented in routers by the strict priority queuing, where high priority queue is served first until it is empty. When no packets are waiting in the high priority queue then low priority packets in the low priority queue are serviced. This service model is often called Premium Service. This scheme relies on tagging algorithms. However, there is no general algorithm to tag the packets. They can be tagged by source applications, by ingress routers or elsewhere in the network. For quality monitoring and for
simulations: first with FIFO queuing and second with strict priority queuing in routers. Queue lengths in routers were defined as follows: node 1 and node 4: 5120 Bytes, node 2 and node 3: 102400 Bytes. TCP window was set to 16 packets. All voice traffic (measured voice and background voice packets) is assigned high priority and WWW and FTP traffic are assigned low priority. We have modelled three typical network applications (FTP, WWW, and voice) and added background traffic to obtain desired network load. The background traffic consists of WWW and voice traffic (flowing in both directions between nodes 2 and 3) while the observed traffic (flowing from node 1 to node 4) consists of the traffic from all three applications (see Figure 2). Source
accounting purposes it is important to monitor the share of high priority packets in the data flow. A simple analytic model of a Premium Service is solved in [1] providing an expected queue delay for high priority packets and upper delay bound for low priority packets. 3. Simulations Solving analytical models often suffers from a model simplification and provides solution for stationary case and Poisson traffic modelling. Although analytic approach plays a great role in model understanding, simulations are necessary for providing a check on the
diff bit
high priority packets
1
output queue
0
priority scheduling
low priority packets
Figure 1: A model for traffic differentiation
Backgr. Voice(s)
WWW2(s)
Backgr. Voice(d)
WWW3(d)
WWW1(s)
voice(s)
node 1
10 ms 2Mb
node 2
10 ms 45Mb
node 3
10 ms 2Mb
node 4
FTP(s)
Figure 2: Network topology
presumptions of the model and to help develop researchers intuition. We have worked on a simple differentiated services network model to confirm correctness of analysis with simulations and to further explore results with finding voice packet delay probability distributions. Our network consists of four routers, one uplink, one backbone link and one downlink, as shown in figure 2. We have measured performances in forward direction only (from node 1 to node 4) although traffic is flowing in both directions. We have simulated three scenarios: light (50%), medium (90%) and heavy (near 100%) backbone link load. In every scenario we have made two
for measured voice packets is at node 1 and its destination at node 4. Traffic is modelled as following: Property Packet size distribution Interarrival time
Audio
FTP
fixed (10 B)
1500 B
fixed (10 ms)
10 MB file once only
Table 1: Traffic properties
WWW Self Similar Self Similar
0,135
0 0,120
0
0,105
1000
0,090
1000
0,075
2000
0,030
2000
0,135
3000
0,120
3000
0,105
4000
0,090
4000
0,075
5000
0,060
5000
0,045
6000
0,030
6000
0,060
Frequency DS50
0,045
Frequency BE50
Figures 3 and 4: VoIP packets delay distribution at 50% backbone link utilisation for best-effort (BE) and differentiated services (DS)
Frequency BE90
0
0 0,030
0,135
500 0,120
500
0,105
1000
0,090
1000
0,075
1500
0,060
1500
0,135
2000
0,120
2000
0,105
2500
0,090
2500
0,075
3000
0,060
3000
0,045
3500
0,030
3500
0,045
Frequency DS90
Figures 5 and 6: VoIP packets delay distribution at 90% backbone link utilisation for best-effort (BE) and differentiated services (DS)
0
0 0,135
500 0,120
500
0,105
1000
0,090
1500
1000
0,075
1500
0,060
2000
0,135
2000
0,120
2500
0,105
2500
0,090
3000
0,075
3000
0,060
3500
0,045
4000
3500
0,030
4000
0,045
Frequency DS100
0,030
Frequency BE100
Figures 7 and 8: VoIP packets delay distribution at 100% backbone link utilisation for best-effort (BE) and differentiated services (DS)
4. Results To gain an idea of implementing a traffic differentiation in IP network we collect average delays for voice traffic in every scenario (ms): Queuing/Load FIFO Priority
Light 35,7 32,8
Medium 53,3 33,6
Heavy 67,0 33,2
Table 2: Average delays for voice packets (ms) In the table we can see how introduction of traffic differentiation influences end-to-end VoIP packets delay. Note that propagation delay on the observed path is 30 ms. But this is not the only advantage for voice traffic. Equally significant for good voice application performance are the distributions of packet delays, which are shown in figures 3 to 8. In the figures frequency of voice packets that arrived to the destination within certain delay boundaries is shown. Figure 3 shows the delay distribution for voice application in a best-effort network architecture where queues in routers are served using the FIFO queuing discipline. Figure 4 shows packet delay obtained with the same traffic parameters but using priority queuing in all routers on the path. We can clearly observe shifting of the delay towards the minimum possible delay for this topology, which is at 30 ms. At medium network load delays in best effort architecture get more dispersed. Only a small portion of VoIP packets is close to the minimum possible delay on the path. With the same network load and priority queuing in network nodes for VoIP traffic far more packets experience near minimum delay and the distribution has shorter tail. This is even more noticeable at maximum network load (near 100% of backbone link utilisation). However, in our simulations only a small fraction of high priority voice packets were transmitted (less than 3% of the total link capacity). When this share becomes significant a decline of performance for low-priority applications is observed as shown in simulation results in [4] . Deterministic upper bounds on the end-to-end packet delay in packet-switched networks have been first derived by Parekh and Gallager. These types of delay bounds are the worst case scenarios. When many streams are multiplexed, it becomes unlikely that all sources offer a packet at the same time instant. Consequently, the actual delay experienced by an arbitrary packet is smaller than the deterministic upper bound. In the case of a large number of multiplexed flows, statistical upper bounds were proposed to provide more realistic values for the delay [3] . Conclusion When we have a good information about the VoIP delay distribution, we can set the playback point at the receiving application in a better way. Choosing this fixed delay at the receiver has great influence on the latency of
the conversation and on the other side on voice quality. By setting the playback point to early, we have a great deal of late packets (these packets are lost as they had missed their playback point); by setting it to late, the conversation becomes over-delayed. In our work we present delay distributions of various scenarios to help better define the playback point at the receiving end of a voice application. Though differences between best-effort and differentiated services architecture, when observing only average delays for voice traffic at light loaded network, are not significant, there is another more interesting aspect. Packets with high priority are squeezed closer to the minimum possible delay margin (the propagation delay). For voice carrying packets this is of crucial importance, as the playback point in the VoIP application can be set accordingly lower. References [1] M. May, J.-C. Bolot, A. Jean-Marie, C. Diot: Simple Performance Models of Differentiated Services for the Internet, Proceedings of INFOCOM 1999. [2] D. D. Clark, S. Shenker, L. Zhang: Supporting RealTime Applications in an Integrated Services Packet Network: Architecture and Mechanism, Proceeding of ACM SIGCOMM, August 1992. [3] M. Mandjes, K. van der Wal, R. Kooij, H. Bastiaansen: End-to-end delay models for interactive services on a large-scale IP network, Proceedings of 7th IFIP workshop modeling and evaluation of ATM/IP networks, Antwerp, Belgium. [4] Anton Kos, Borut Klepec: Supporting Real-time Applications in Differentiated Services Network, International Symposium on Telecommunications VITEL 2000, Ljubljana, 16. - 17. oktober 2000.