26 Nov 2006

VoIP Episode 5: VoIP over UMTS mouth-to-ear delay

I have received some queries about the delay encountered by VoIP calls. Thanks for the interaction and questions, keep them coming.

In this post I will summarise the various reasons that cause delay of VoIP speech over a UMTS network, or over any network for that matter.
I should mention here that I am not trying to show that VoIP over UMTS is any better or worse than conventional UMTS (I will only do that for a high consultancy fee! ;-) ).

Let us first "dissect" a VoIP call:
Before you start a VoIP call (and during the call) signalling messages are exchanged between the two VoIP terminals and possibly with some other network elements. These are carried using the Session Initiation Protocol (SIP). When you talk into your handset speaker, your analogue voice signal is "encoded" as a string of bits. A number of bits are then packed together in one packet and all the necessary headers are added to it. These packets are then transmitted over the network. They propagate through one or more packet switched networks before they reach their destination. At the destination, the received packets are then reordered and a decoder transforms the digital bits to an audible audio signal.

The sources of delay are numerous:

  • First, there is the coding delay, which is the time spent on transforming your speech into a digital stream of bits. This can be minimised by powerful DSP/electronics.
  • Then there is the time it takes to compile a packet and add headers to it (packetisation delay). For example, if a packet contains X voice samples, then it has experienced a delay from the instant of the first sample to the instant the packet was complete and ready for transmission. Obviously the bigger the packets are, the longer is the packetisation delay.
  • There is also the propagation delay. This is the time the packet takes to traverse the various networks before it reaches its destination. This could be the propagation time over the air interface, or over the various packet core elements. This is essentially determined by the speed of the different physical mediums over which VoIP packets are transmitted: wires, optical cables, radio ...etc
  • In addition to this, there is the summation of queuing delays encountered by the packet at each node in the network(s). For example, we have seen in a previous post that a VoIP packet may have to queue for a HSDPA radio resource, or the packet may have to queue at some of the routers and switches before it reaches its destination. The various routers and switches along the route of the packet can be loaded differently, so some packets may be delayed more than others.
  • When the packets arrive at the destination, they may not arrive in the right order, because they may traverse different routes before arriving at the destination and because some of them are delayed more than others. Therefore, the receiver has to buffer the packets in order to wait for the slower ones and reorder the packets before submitting them to the decoder. This is called "De-jittering". The de-jittering introduces another delay before the packets are decoded into an audible signal again.
  • There is also the delay associated with call signalling. You can not start talking until it rings at the other side and the called party answers. Because of the large SIP messages this delay could also be long. The same issues arises when the call ends, which does not really affect the user perceptions as much as it keeps some network resources tied up for a while.

I hope this answered your questions. I will talk about how some of the advanced 3GPP features will address some of the delay issues in a coming post, so stay tuned!.

© Copyright belongs to the author. Do not cite or quote without the express permission of the author

No comments: