Analytic Model of Delay Variation Valid for RTP
CESNET
technical report number 16/2007
also available in PDF, and
PostScript formats.
Miroslav Vozňák, František Hromek
29.11.2007
1 Abstract
This technical report focuses on the design of a mathematical model of end-to-end delay of a VoIP connection, in particular on a delay variation. It describes all partial delay components and mechanisms, its generation, facilities and its mathematical formulations. A new approach to the delay variation model is presented; its validation has been done by an experiment.
Keywords: VoIP, RTP, delay, jitter, Poisson, M/D/1/k
2 Introduction
A delay is one of the main issues in packet-based networks and as such, it poses one of the major threats to QoS mechanisms. The delay can have various causes including propagation, handling or processing. There are several types of delays in an IP network which differ from each other as to where they are created, mechanism of their creation or some other attributes. Each delay component influences the result voice packet delay in a different way. This report provides a detailed description of individual delay components, and explains mechanisms of their creation. Subsequently, it focuses on the creation of a mathematical model of a VoIP end-to-end delay in the network. The delay components should be classified based on the place of their creation, see Figure:
Coder delay and packetization delay in transmitter,
Queuing delay, serialization delay and propagation delay in transmission network,
De-jitter delay, de-packetization delay and decompression delay in receiver.
3 Delay components
We can find two types of delay in the transmitter. The first is a coder delay and is affected by the used codec. It has two components: the frame size delay and the look-ahead delay. Their values are exactly defined for any particular coder, e.g. for the ITU-T G.711 (PCM) codec it is 0.125 ms frame size without look-ahead and for the ITU-T G.729 (CS-ACELP codec) it's the frame size value 10 ms and 5 ms look-ahead. The second type of delay in the transmitter is the packetization delay. This delay occurs when data blocks are encapsulated into packets and transmitted by the network. The packetization delay is set as multiples of the packetization period used by particular codec and specifies how many data blocks are transmitted in one packet [PD00], [Voz01].
The estimation process is given by the following equation:
![]()
where
- TPD is packetization delay [ms],
- PS is payload size [b],
- CBW is codec bandwidth [kbit/s].
We can incur three types of delays in the receiver. The first type is the de-jitter delay which is closely related to the variable delay in the network when it is necessary to eliminate a variance of these variable components using supplementary buffer store in the receiver, this buffer is called a playout buffer. Its size is typically adjusted as a multiple of the packetization delay because of an optimization. If this value is adjusted statistically, then jitter buffer sizes are about 30-90 ms, a typical value is 60 ms. If the variable playout buffer is used, the size is adapted based on the real-time delay variation. In this case the typical maximum value is about 150 ms [FAM04].
The second type is a depacketization delay. Its mechanism is very similar to that of the packetization delay mentioned above. The depacketization is a reverse packetization and therefore the size of depacketization delay of one block in the frame is in correlation with its packetization delay. In real traffic the delay of each block within the frame of one packet occurs, always only for the value of the packetization delay. This is why we count with only one constant packetization delay value.
The third type is a decompression delay. The decompression delay, similarly to the coder delay depends on the compressing algorithm selection. On average, the decompression delay is approximately 10 % of the compressing codec delay for each voice block in the packet. But it is very dependent on the computing decoder operation and mainly on the number of voice blocks in one packet. This decompression delay might be defined by the following formula:
![]()
where
- TDCD is decompression delay [ms],
- N is number of the voice blocks in the packet,
- TCD is coder delay [ms].
The last component of our classification is a delay in the transmission network. Again, there are three types of this delay. The first one depends on the transmission rate of the used interface and it is called as a serialization delay. The packet sending takes some time. This time depends on the transmission medium rate and on the size of packet. Relation (3) shows estimation of the time:
![]()
where
- TSER is serialization delay [ms],
- LS is line speed [kbit/s],
- HL is header length [b].
The second type of a delay originated in the transmission network is the propagation delay. This delay relates to the signal transmission, i.e. to its physical regularities of the propagation in the surroundings. It depends on the used transmission technology, in particular on the distance over which the signal is transmitted. Today's networks are mostly built on single mode optical fibers. The speed of light in optical fiber is v = 2.07⋅10-8 [m/s], from which the propagation delay should be defined using the following formula:
![]()
where
- TProp is propagation delay [ms]
- L is line length [km]
- v is speed of light in optical fiber = 2.07⋅10-8 [m/s]
The last type is the delay which occurs in active elements of the transmission network and relates to handling of RTP packets, in particular in the router queues. This delay is the most significant part of the jitter. A delay variation or a jitter is a metric that describes the level of disturbance of packet arrival times compared to the ideal arrival time. Such disturbances can be caused by queuing or by processing [PD00], [Voz02].
4 Delay variation model
A description of queuing delay mechanisms for VoIP traffic is a complex ask. This topic is discussed in many publications and queuing theory provides solution to many issues. It involves mathematical analysis of processes including arrival at the input of a queue, waiting in the queue and the serving at the front of the queue and providing the appropriate performance parameters of the designed model.
It is proven that in certain circumstances the voice traffic can be modelled by a source signal the probabilistic random variable distribution of which matches Poisson's probability distribution. We can usually trace an influence of a jitter in the routers equipped with low-speed links. These routers often operate with PQ optimization (Priority Queuing). Priority queuing is mainly used for serving the voice flow and is based on apreferred packet sorting so that the selected packets are placed into priority queue [PD00].
A router with four FIFO queues (at least two are necessary) is shown in Figure. Each queue has been assigned a different priority, there is a classifier making the decision in which of the queues to place the packet and a scheduler picking the packets starting with the higher priority queue, next with lower priority etc. Any packets in the high priority queue must be served first. When the queue is empty, a queue with lower priority can be served.
If there is an effectively utilized packet fragmentation mechanism on the output of the line, it is possible to mitigate the influence of the serialization delay in data packets with a lower priority than that of the voice packets. In this case, for the modelling requirements of traffic loading and delay in router, it is sufficient to watch a delay only in the priority queue. Servicing requirement technique in the priority queue corresponds to the model of queuing system M/D/1/k, where k is size of buffer. The model notation used corresponds with Kendall's notation of queuing models [GH98].
In order to create an analytical model of the switching delay we can ignore the buffer size and count with a system of sufficient buffer size in which the loss of preferred packets doesn't occur. If this M/D/1/k model can be replaced by M/D/1/∞ model, we are able to create an analytical expression of switch buffer store seizing. Consequently it is easier to gain an analytical model of the delay in the queue.
The conditions for validating the designed model are:
the arrival process is a Poisson process with an exponentially distributed random variable, we consider that every source of a stream corresponds to the Poisson distribution and therefore their sum also corresponds to Poisson distribution [4],
λ(t) is an arrival rate and this rate is a constant λ, it means we assume that only one type of the codec is used and there are M-sources,
a service process in priority queue is FIFO (First In First Out),
μ is service rate and it is a constant because the same codec is used,
we assume that the number of waiting positions in a priority queue is infinite.
We express the utilization of the system in equation (5) and for stability we must have 0 ≤ ρ < 1.
![]()
where
- λ is arrival rate [s-1]
- μ is service rate [s-1]
- ρ is system utilization
We can express the arrival rate by the following equation:
![]()
and the service rate by the equation (7) below:
![]()
where
- TSER is serialization delay [s],
- TS is processing time (handling by processor) [s].
The probability that k attempts will be waiting in the queue is:
![]()
![]()
![]()
Equation (11) determines mean service time (1/μ is the service time of one request).
![]()
N in equation (12) stands for the mean number of attempts in the system:
![]()
We assume that there are M sources with Poisson distribution of inter-arrival times and that all RTP streams use the same codec. Then we can express the arrival rate as follows:
![]()
We know the transmission speed of the low-speed link and subsequently we can derive the equation for the calculation of the service rate in the system. We apply the relation (3) to the relation (7) and obtain the following result:
![]()
We apply the relations (13) and (14) to (5) and obtain the following equation for the system utilization:
![]()
Equation (16) derived from equations (13), (14), (15) and (11) above expresses the mean service time:
![]()
Figure illustrates the relation between the probability, number of calls and service time of the designed model (this graph is for G.729 codec and the 256 kbps serial link).
Likewise a relation for the probability that k-attempts will be waiting in the queue can be derived from equations (13), (14) and(15) applied to (8), (9) and (10) :
![[equation]](eq17.png)
![]()
![]()
The probability of waiting in the queue is expressed in the following relation (20):
![]()
5 Experiment
A test bed for the estimation of the designed model consisted of two routers interconnected by means of a serial interface with PPP Multilink. The VoIP calls were emulated by IxChariot tester which was used for endpoints and in a console mode for evaluation of the VoIP calls. IXIA IxChariot is a test tool for simulating VoIP traffic to predict device and system performance under various conditions. This tool was used for measuring and traffic simulation. The tests were performed between pairs of network - connected computers. IxChariot endpoints created the RTP streams between pairs and the results were sent to the console and analyzed. Figure illustrates the situation.
The configuration of the serial interface is described below. The bandwith value determines the bandwidth that will be used by the interface in range from 128 to 2048 Kbps.
interface Serial1/0 description Seriove rozhrani- DTE bandwidth 2048 no ip address encapsulation ppp load-interval 30 no fair-queue ppp multilink ppp multilink group 1
The queuing mechanism used in this case was priority queuing. The highest priority queue was reserved for RTP packets with the lowest destination port 16384 and the highest port number 32767. The IP RTP Priority command shown in the following example of configuration was used to provide the highest priority to RTP packets. The last parameter is the maximum bandwidth allowed for this queue.
interface Multilink1 ip address 192.168.2.5 255.255.255.0 ppp multilink ppp multilink fragment delay 20 ppp multilink interleave ppp multilink group 1 max-reserved-bandwidth 100 ip rtp priority 16384 16383 2000
Other parameters such as type of codec, timing and number of the RTP sessions also had to be specified directly in the IxChariott tool. The tests ran in an environment with and without a traffic saturation which was done by a UDP generator. The tests were automatically performed by a batch file which was created for this purpose. The files stated below were used to initialise tests and the results were exported to HTML files. These files define the conditions for the performance of the tests and are executed by the following commands:
runtst 1024-711-01-20-1.tst fmttst.exe 1024-711-01-20-1.tst 1024-711-01-20-1.tst.txt -c fmttst.exe 1024-711-01-20-1.tst 1024-711-01-20-1.tst.html -h sleep 30
The first line refers to the runtst program which runs a test that is passed as a parameter. The second line refers to the fmttst program which exports the results to a text file while the third line exports the results to an HTML file. The command sleep 30 was inserted there because of errors in the initialization of the endpoints. Once the tests have been finished, we have identified several parameters. Figure shows an example of the final result.
The results were classified in the groups as follows: MOS, R_factor, jitter and one way delay. With this we could determine average values for all measured results.
It is important to say that the measures were made at different speed (128, 256, 512, 1024 and 2048 kbps) both in an environment without saturation and with saturation. The duration of the test was set to 1 minute during which all observed parameters were recorded at one-second intervals. Every test was repeated five times in order to eliminate any aberrations. We have obtained results of more than 5000 measurements.
6 Conclusion
The designed mathematical model works with a voice traffic approximation supported by a traffic source with Poisson's probability distribution. The described way does not exactly imitate real characteristics of voice traffic, in particular a certain tendency to form clusters. Therefore it was assumed that with the increasing line load the mathematical model will not return absolutely exact information. The measurements showed that in most cases the designed mathematical model returns data with ±6 % accuracy up to the 80 % line load. With the increasing number of simultaneous calls and with the decreasing line load the accuracy of gained data increases. Even though individual voice flows do not match the model of signal source with the Poisson's probability distribution, their sum approximates to this model, in particular with the growing number of calls. Where 10 simultaneous calls do not load the output line by more than 40 %, the exactness of the model reaches ±1.5 %. As most of designed VoIP networks operate with a much higher number of simultaneous connections, we can assume that the model will return sufficiently exact assessment of an average delay in the network.
We would like to thank our colleagues Michal Halas from the Slovak Technical University for collaboration and Eduardo Rocha, an Erasmus student of the Universidade de Aveiro (now PhD student at the same university) who spent a lot of time in the VoIP laboratory and performed thousands of measurements [VH07], [HKV07] and [VRK07].
References
| [PD00] | Peters J., Davidson J.: Voice over IP Fundamentals. Indianopolis: Cisco Press, 2000. |
| [Voz01] | Vozňák M.: Výpočet šířky pásma pro hovor v sítích s protokolem IP. In IV. Seminář EaTT 2001, Ostrava: VŠB-TU. [Czech] |
| [FAM04] | Fujimoto K., Ata S., Murata M.: Adaptive playout buffer algorithm for enhancing perceived quality of streaming applications. Telecommunication Systems 25(3-4): 259-271, 2004. |
| [Voz02] | Vozňák M.: Voice over IP and jitter avoidance on low speed links. In Research in Telecommunication Technology (RTT 2002). Žilina, 2002. |
| [GH98] | Gross D., Harris C.: Fundamentals of Queuing Theory. New York: John Wiley & Sons, 1998. |
| [VH07] | Vozňák M., Halás M.: Model end-to-end zpoždění pro VoIP. In Širokopásmové sítě a jejich aplikace, UP Olomouc, 2007, p. 128-131. [Czech] |
| [HKV07] | Halás M., Kyrbashov B., Vozňák M.: Factors influencing voice quality in VoIP technology. In 9th International Conference on Informatics 2007, pp. 32-35, Bratislava, 2007, p. 32-35. |
| [VRK07] | Vozňák M., Rocha E., Kyrbashov B.: End-to-end delay of VoIP. In Research in Telecommunication Technology (RTT 2007), Žilina, 2007, p. 466-469. |