HOME JOURNALS CONTACT

Asian Journal of Scientific Research

Year: 2017 | Volume: 10 | Issue: 3 | Page No.: 110-115
DOI: 10.3923/ajsr.2017.110.115
VoIP Protocols’ Bandwidth Based-Mini/RTP Header Using Different Codecs: A Comparison
Naser K.A. Alajmi, Hadeel Saleh Haj Aliwi and Kamal Alieyan

Abstract: Over the last few years, many multimedia conferencing and Voice over Internet Protocol (VoIP) applications have been developed due to the use of signaling protocols in providing video, audio and text chatting services between at least two participants. This study compares between the bandwidth of the widely common signaling protocol; Inter-Asterisk eXchange Protocol (IAX) based-mini header and other VoIP protocols based-RTP header during the media session using different codecs types. A full duplex bandwidth has been calculated in case of first call, additional call and 30 calls using four common speech codecs. As IAX protocol has a multiplexing feature, so for each additional call, the headers of data link, network and transport protocol are reused. This means that bandwidth value in the first call differs from the value of the additional call. Unlike the other VoIP protocols, both the first and the additional call values are equal since all the headers in the audio packet should be calculated again for each call. The trunking property leads to a performance improvement of IAX protocol over the other VoIP protocols in terms of bandwidth consumption.

Fulltext PDF Fulltext HTML

How to cite this article
Naser K.A. Alajmi, Hadeel Saleh Haj Aliwi and Kamal Alieyan, 2017. VoIP Protocols’ Bandwidth Based-Mini/RTP Header Using Different Codecs: A Comparison. Asian Journal of Scientific Research, 10: 110-115.

Keywords: codec, RTP, VoIP, signaling protocols, header format, IAX, mini frame and bandwidth

INTRODUCTION

Over the last decade, multimedia techniques have been developed rapidly to enable users to communicate between each other over the internet using all types of chatting services such as instant messages, audio and video1-3. In general, chatting applications sessions are handled by using signaling protocols which take place in the session layer (L5) in the Open Systems Interconnection (OSI) model4-9. Layer 5 provides the mechanism for opening, closing and managing a session between end-user application processes.

This study presents the bandwidth measurements for IAX protocol and other VoIP protocols by using different codecs and different number of calls in order to show the higher performance of IAX protocol than other VoIP protocol especially when used by network applications that focus on the data transfer capacity utilization issue.

IAX PROTOCOL

Mark Spencer has created the Inter-Asterisk eXchange (IAX) protocol for asterisk that performs VoIP signaling10,11. Many systems and servers provide the support for IAX protocol such as soft-switches (Asterisk Private Branch exchange) PBX systems and soft-phones. The IAX protocol can manage, control and transmit any type of media (especially the voice call) through the Internet Protocol (IP) networks12. Currently, IAX1 has been changed to IAX2 which is the second version of the IAX protocol. Call Setup, call teardown and real time media exchange functions are supported by IAX protocol13. By using IAX, voice streams are conveyed in binary format. Furthermore, IAX supports the trunk connections concept for any number of calls. The bandwidth usage is reduced when this concept is being used because all the protocol overhead is shared by two IAX nodes for the whole calls. Over a single link, IAX provides multiplexing channels14,15.

The IAX protocol is used for many purposes16,17; firstly, it is to minimize bandwidth usage for both control and media transmissions with specific emphasis on individual voice calls, secondly, to provide Network Address Translation (NAT) transparency, thirdly, to support the ability to transmit dial plan information and lastly, to support efficient implementation of intercom and paging features.

The IAX audio packet format during the media transporting session can be divided into four parts. They are IP header (20 Bytes), UDP header (8 Bytes), IAX mini header (4 Bytes) and the payload (the size of the payload relies on the type of the codec that the protocol uses).

OTHER VOIP PROTOCOLS

The VoIP protocols usually use RTP protocol to carry the payload during the media session except IAX protocol which uses its own header (mini header) to handle the media exchange. Such VoIP protocols-based RTP are: H.323, MGCP, SIP, RSW and Jingle18,19.

The audio packet format during the media transporting session for each of the aforementioned protocols can be divided into four parts. They are IP header (20 Bytes), UDP header (8 Bytes), RTP header (12 Bytes) and the payload (the size of the payload relies on the type of the codec that the protocol uses).

SPEECH CODECS

Following codecs used in this study to find the IAX bandwidth which are G.711, G.726, G.729, GSM20,21,22.

G.711: G.711 is an ITU-T standard for audio companding which is primarily used in telephony. Its formal name is Pulse Code Modulation (PCM) of voice frequencies. G.711 is a very commonly used waveform codec. G.711 is a narrowband audio codec that provides toll-quality audio at 64 kbit sec–1. There are two slightly different versions: μ-law which is basically used in North America and A-law, which is used in the most countries outside North America. Two enhancements to G.711 have been published: G.711.0 utilizes in reducing the bandwidth usage and G.711.1 increases the audio quality by increasing the bandwidth.

G.726: G.726 is an ITU-T ADPCM speech codec standard covering the transmission of voice at rates 16, 24, 32 and 40 kbit sec–1. It was introduced to supersede both G.721, which covered ADPCM at 32 kbit sec–1 and G.723, which described ADPCM for 24 and 40 kbit sec–1. G.726 also introduced a new 16 kbit sec–1 rate. The four bit rates associated with G.726 are often referred to the bit size of a sample which are 2, 3, 4 and 5-bits respectively. The most commonly used mode is 32 kbit sec–1 which doubles the usable network capacity by using half the rate of G.711. G.726 is mainly used on the international trunks in the phone network, as well as, it is the standard codec used in DECT wireless phone systems.

G.729: G.729 is an audio data compression algorithm that compressed digital voice packets of 10 msec duration. It is officially described as coding of speech at 8 kbit sec–1 using code-excited linear prediction speech coding (CS-ACELP). Because of its low bandwidth requirements, G.729 is mostly used in Voice over Internet Protocol (VoIP) applications where bandwidth must be conserved, such as conference calls. G.729 has been extended with various features, commonly designated as G.729A [or A annex], G.729B [or B annex] and G.729AB.

Global System for Mobile (GSM) communication: Full Rate (FR or GSM-FR or GSM 06.10 or sometimes simply GSM) was the first digital speech coding standard used in the GSM digital mobile phone system. The bit rate of the codec is 13 kbit sec–1 or 1.625 bit/audio sample (often padded out to 33 bytes/20 msec or 13.2 kbit sec–1). The quality of the coded speech is quite poor by modern standards but at the time of development (early 1990s), it was a good compromise between computational complexity and quality, requiring only on the order of a million additions and multiplications per second. The codec is still widely used in networks around the world. Gradually FR will be replaced by Enhanced Full Rate (EFR) and Adaptive Multi-Rate (AMR) standards which provide much higher speech quality with lower bit rate.

The bandwidth for the first call and the additional calls are calculated for both protocols. In order to compute the required bandwidth for the number of conversations (n) full duplex, the below formula should be applied23:

(1)

IAX Based-mini header bandwidth: In order to find the bandwidth of the first call for IAX protocol, the supported codec should be identified with its constraints. In general, the payload size of G.711 is 160 bytes and 50 packets can be transmitted per second. Firstly, the total size of the packet (TPS) in the first call must be known by determining five parameters; the size of the protocol header in the data link layer L2 (Ethernet), the size of the protocol header in the network layer (IP), the size of the transport protocol header (UDP), the size of the session protocol header (IAX) and the size of the voice payload (VPS):

TPS = Ethernet+IP+UDP+IAX mini header+VPS
TPS = 18 bytes+20 bytes+8 bytes+4 bytes+160 bytes
  = 210 bytes = 1680 bits

After calculating the total size of packet, the result of TPS is multiplied by the number of packets per second (PPS) in order to find the bandwidth of the first call:

BW = 1680 bits×50 = 84 Kbps for the first call

The IAX protocol has a multiplexing feature, so for each additional call, the headers of data link, network and transport protocol are reused, as a result:

TPS = 4 bytes+160 bytes = 164 bytes = 1312 bits
BW = TPS×PPS = 1312 bits×50
  = 65.6 Kbps for additional call

For example, the bandwidth of the voice chat which includes 30 calls is (Bandwidth of the first call+the bandwidth of the additional 29 calls)×2:

BW30calls = (84 Kbps+65.6 Kbps×29)×2
  = 3972.8 Kbps (approximately 4 Mbps)

In order to find the bandwidth in case of using G.726, the VPS value should be settled to 80 bytes which is the payload size of G.726 audio codec.

Thus:

TPS = 18 bytes+20 bytes+8 bytes+4 bytes+80 bytes
  = 130 bytes = 1040 bits
BW = 1040 bits×50 = 52 Kbps for the first call

The total size of the packet for the additional call can be calculated as:

TPS = 4 bytes + 80 bytes = 84 bytes = 672 bits
BW = TPS×PPS = 672 bits×50
  = 33.6 Kbps for additional call

So, the bandwidth for 30 calls can be founded as follows:

BW30calls = (52 Kbps+33.6 Kbps×29)×2
  = 2052.8 Kbps (approximately 2 Mbps)

In order to find the bandwidth in case of using G.729, the VPS value should be settled to 20 bytes which is the payload size of G.729 audio codec.
Thus:

TPS = 18 bytes+20 bytes+8 bytes+4 bytes+20 bytes
  = 70 bytes = 560 bits
BW = 560 bits×50 = 28 Kbps for the first call

The total of the additional packet size is:

TPS = 4 bytes+20 bytes = 24 bytes = 192 bits
BW = TPS×PPS = 192 bits×50
  = 9.6 Kbps for additional call

As a result:

BW30calls = (28 Kbps+9.6 Kbps×29)×2
  = 612.8 Kbps (approximately 0.6 Mbps)

In order to find the bandwidth in case of using GSM, the VPS value should be settled to 33 bytes which is the payload size of GSM audio codec.
Thus:

TPS = 18 bytes+20 bytes+8 bytes+4 bytes+33 bytes
  = 83 bytes = 664 bits
BW = 664 bits×50 = 33.2 Kbps for the first call

The TPS for the additional call is:

TPS = 4 bytes + 33 bytes = 37 bytes = 296 bits
BW = TPS×PPS = 296 bits×50
  = 14.8 Kbps for additional call

Therefore:

BW30calls = (33.2 Kbps+14.8 Kbps ×29)×2
  = 924.8 Kbps (approximately 0.9 Mbps)

A Comparison among the IAX bandwidth values for each first call, additional call and 30 calls with different types of voice codecs are illustrated in Table 1.

VoIP protocol based-RTP bandwidth: Only IAX has a trunking feature, so for each additional call, the headers of data link, network and transport protocol are reused, whereas, all the IP, UDP, RTP headers with the payload have to be calculated again for each call for the rest of VoIP protocols, as a result, the bandwidth for the first call and the additional call will be the same.

In order to find the bandwidth in case of using G.711, the VPS value should be settled to 160 bytes which is the payload size of G.711 audio codec.
Thus:

TPS = Ethernet+IP+UDP+RTP+VPS
TPS = 18 bytes+20 bytes+8 bytes+12 bytes+160 bytes
  = 218 bytes = 1744 bits
BW = TPS×PPS = 1744 bits×50 = 87.2 Kbps for one call

The bandwidth for 30 calls = (Bandwidth for one call×30)×2

Table 1: IAX bandwidth used by different codecs
IAX: Inter-asterisk exchange, GSM: Global system for mobile communication
BW30calls = (87.2 Kbps×30)×2
  = 5232 Kbps (approximately 5.2 Mbps)

In order to find the bandwidth in case of using G.726, the VPS value should be settled to 80 bytes which is the payload size of G.726 audio codec.
Thus:

TPS = Ethernet+IP+UDP+RTP+VPS
TPS = 18 bytes+20 bytes+8 bytes+12 bytes+80 bytes
  = 138 bytes = 1104 bits
BW = TPS×PPS = 1104 bits×50 = 55.2 Kbps for one call

The bandwidth for 30 calls = (Bandwidth for one call×30)×2

BW30calls = (55.2 Kbps×30)×2
  = 3312 Kbps (approximately 3.3 Mbps)

In order to find the bandwidth in case of using G.729, the VPS value should be settled to 20 bytes which is the payload size of G.729 audio codec.
Thus:

TPS = Ethernet+IP+UDP+RTP+VPS
TPS = 18 bytes+20 bytes+8 bytes+12 bytes+20 bytes
  = 78 bytes = 624 bits
BW = TPS×PPS = 624 bits×50 = 31.2 Kbps for one call

The bandwidth for 30 calls = (Bandwidth for one call×30)×2

BW30calls = (31.2 Kbps×30)×2
  = 1872 Kbps (approximately 1.9 Mbps)

In order to find the bandwidth in case of using GSM, the VPS value should be settled to 33 bytes which is the payload size of GSM audio codec.
Thus:

TPS = Ethernet+IP+UDP+RTP+VPS
TPS = 18 bytes+20 bytes+8 bytes+12 bytes+33 bytes
  = 91 bytes = 728 bits
BW = TPS×PPS = 728 bits×50 = 36.4 Kbps for one call

Table 2: RTP bandwidth used by different codecs
RTP: Real-time transport protocol, GSM: Global system for mobile communication

The bandwidth for 30 calls = (Bandwidth for one call×30×2

BW30calls = (36.4 Kbps×30)×2
  = 2184 Kbps (approximately 2.2 Mbps)

A comparison among the RTP bandwidth values for each first call, additional call and 30 calls with different types of voice codec’s are illustrated in Table 2.

CONCLUSION

Due to having a trunking property by IAX protocol, the performance improvement of IAX over other VoIP protocols in terms of bandwidth consumption has been introduced. Many codecs have been used for bandwidth calculations (G.711, G.726, G.729 and GSM) as well as different number of calls (first call, additional call and thirty calls). This difference in codec type and number of calls are mainly to prove the priority of using IAX protocol rather than other VoIP protocol in some media services that concentrate on the bandwidth consumption issue.

SIGNIFICANT STATEMENT

This study shows the performance improvement of IAX protocol over other VoIP protocols by providing a comparison in terms of bandwidth consumption. Four different codecs have been used during the bandwidth calculations in case of the first call, additional call and 30 calls in order to prove that as having a trunking property in IAX protocol, IAX provides better performance than any other VoIP protocol regardless the codec type supported or the number of calls. This comparison emphasizes the preferential use of IAX protocol in some media services that concentrate on the bandwidth consumption issue.

REFERENCES

  • Goode, B., 2002. Voice over Internet Protocol (VoIP). Proc. IEEE, 90: 1495-1517.
    CrossRef    Direct Link    


  • Aliwi, H.S.H. and P. Sumari, 2013. A comparative study of VoIP protocols. Int. J. Comput. Sci. Inform. Secur., 11: 97-101.
    Direct Link    


  • Aliwi, H.S.H. and P. Sumari, 2014. A comparative study of VoIP, MCS, instant messaging protocol and multimedia applications. Int. J. Adv. Comput. Networks Secur., 4: 67-70.
    Direct Link    


  • Gurbani, V.K., F. Haerens and V. Rastogi, 2005. Interworking SIP and Intelligent Network (IN) applications. RFC 3976, The Internet Society, January 2005, pp: 1-25, https://tools.ietf.org/pdf/rfc3976.pdf.


  • Ingo, H., 2011. Session Initiation Protocol (SIP) and other Voice over IP (VoIP) protocols and applications. Sesca Technologies, Finland. http://openlife.cc/system/files/FSWC%20Henrik%20Ingo%20Article%20SIP,%20VoIP%20and%20FLOSS.pdf.


  • Glasmann, J., W. Kellerer and H. Muller, 2003. Service architectures in H.323 and SIP: A comparison. IEEE Commun. Surv. Tutorials, 5: 32-47.
    CrossRef    Direct Link    


  • Dagiuklas, T., K. Ioannou and A. Garmpis, 2005. A lightweight and scalable VoIP platform based on MGCP/H.323 interworking and QoS management capabilities. Proceedings of the 4th WSEAS International Conference on Information Security, Communications and Computers, December 16-18, 2005, Tenerife, Spain, pp: 548-553.


  • Kolhar, M.S., 2010. Real-time conference gateway for heterogeneous clients: Real-time switching clients and inter-asterisk exchange clients. Ph.D. Thesis, Universiti Sains Malaysia, Penang, Malaysia.


  • Aliwi, H.S.H., S.A. Alomari and P. Sumari, 2013. An efficient audio translation approach between SIP and RSW protocols. Proceedings of the 3rd World Conference on Information Technology, November 14-16, 2012, University of Barcelona, Spain, pp: 31-37.


  • Spencer, M., B. Capouch, E. Guy, F. Miller and K. Shumard, 2010. IAX: Inter-Asterisk eXchange Version 2. February 2010. https://tools.ietf.org/html/rfc5456.


  • Aliwi, H.S.H. and P. Sumari, 2016. The behavior of IAX protocol: A mathematical analysis. Int. J. Comput. Sci. Network Secur., 16: 27-30.
    Direct Link    


  • Reeves, E., 2011. Testing devices that handle inter-asterisk exchange: Version 2 (IAX2) protocol. IXIA Publication.


  • Kolhar, M.S., A. Bayan, T.C. Wan, O. Abouabdalla and S. Ramadass, 2008. Control and media session: IAX with RSW control criteria. Proceedings of the International Conference on Network Applications, Protocols and Services, November 21-22, 2008, University Utara Malaysia, pp: 130-135.


  • Spencer, M. and F.W. Miller, 2004. IAX protocol description. IXIA Publication.


  • Aliwi, H.S.H. and P. Sumari, 2016. Audio/video mapping architecture between different signaling protocols: Problems and suggestions. J. Applied Sci., 16: 178-188.
    Direct Link    


  • Aliwi, H.S.H., P. Sumari and S.A. Alomari, 2013. An efficient interworking between heterogeneous networks protocols and multimedia computing applications. Int. J. Comput. Sci. Inform. Secur., 11: 81-86.
    Direct Link    


  • Aliwi, H.S.H. and P. Sumari, 2014. Real-time audio translation module between IAX and RSW. Int. J. Comput. Networks Commun., 6: 125-133.


  • Saint-Andre, P., 2008. Interworking between the Session Initiation Protocol (SIP) and the Extensible Messaging and Presence Protocol (XMPP): Media sessions. XMPP Standards Foundation, January 4, 2008. http://tools.ietf.org/id/draft-saintandre-sip-xmpp-media-00.html.


  • Saint-Andre, P., 2013. Interworking between the Session Initiation Protocol (SIP) and the Extensible Messaging and Presence Protocol (XMPP): Media sessions. XMPP Standards Foundation, February 20, 2013. https://tools.ietf.org/html/draft-saintandre-sip-xmpp-media-02.


  • ITU-T., 2008. Wideband embedded extension for G.711 pulse code modulation: ITU-T G.711.1. International Telecommunication Union.


  • Toncar, V., 2009. VoIP basics: Overview of audio codecs. Vladimir Toncar.


  • Sun, L., I.H. Mkwawa, E. Jammeh and E. Ifeachor, 2013. Guide to voice and video over IP. Computer Communications and Networks, London, pp: 17-51.


  • BOSCOM., 2011. Voice over IP: Per call bandwidth consumption. Tekdata network solutions. A BOS Company, Staffordshire, UK., pp: 1-4.

  • © Science Alert. All Rights Reserved