You are on page 1of 6

Call Admission Control and Traffic Engineering of VoIP

James Yu and Imad Al-Ajarmeh


jyu@cs.depaul.edu iajarmeh@gmail.com
DePaul University
Chicago, Illinois, USA

ABSTRACT. This paper presents an extension of the


The limiting resource in the network is the number of
Erlnag-B model for traffic engineering of Voice over IP
trunks between switches. For enterprise users, this
(VoIP). The Erlang-B model uses traffic intensity and
resource is the number of trunks (N1) between their PBX
Grade of Service (GoS) to determine the number of trunks
and the local switch. If an enterprise subscribes too few
in circuit-switched networks. VoIP traffic, however, is
trunks, the end-user would experience a high probably of
carried over packet-switched networks, and network
blocking. If the enterprise subscribes too many trunks
capacity is measured in bits per second instead of the
and many of them are not used, it is a waste of money.
number of trunks. In this paper, we propose a new
On the carrier network, the limiting resource is the
measurement scheme to translate network bandwidth into
number of trunks (N2) between a local switch and a
the maximum call load. With this new metric, the Erlang-
tandem/toll switch.
B model is applicable to VoIP. We conducted
experiments to measure the maximum call loads based on
VoIP traffic is carried over packet-switched networks, and
various voice codec schemes, including G.711, G.729A,
the concept of trunks is not applicable. However, the
and G.723.1. Our results show that call capacity is most
need for Call Admission Control (CAC) of VoIP calls is
likely constrained by network devices rather than physical
the same as circuit-switched networks. The CAC
connections. Based on this result, we recommend
mechanisms are usually classified as measurement-based
considering both packet throughput (pps) and bit
control and resource-based control [2]. For measurement-
throughput (bps) in determining the max call load. If
based control, a monitoring tool is required to gauge the
network capacity is constrained by pps, codec schemes
network load status and to determine whether to accept
would have almost no effect on the maximum call load,
new calls or not [3]. A protocol, such as RSVP, is
while the sampling rate could easily double or half the
required to reserve the bandwidth before a call setup. In
call load.
the case of resource-based control, resources are
provisioned and dedicated for VoIP traffic. The resource
Key Words: VoIP, Erlang B, CAC, Traffic Engineering
for VoIP is usually calculated in network bandwidth [4].
These two methods are also referenced as link-utilization-
1. Introduction based CAC and site-utilization-based CAC [5]. Another
This paper presents a traffic engineering model for Voice reference of these two methods is measurement-based
of IP (VoIP). The Erlang-B model has been used to CAC and parameter-based CAC [6]. In both CAC
engineer the voice traffic of circuit-switched networks for methods, the voice quality shall be assured after a call
many years [1]. The purpose of the model is to calculate admission is granted.
the resources (outgoing trunks) based on the Grade of
Service (GoS) and traffic intensity. An example of We are proposing a new approach to applying the Erlang-
circuit-switched network is illustrated in Figure 1. B model for the VoIP traffic. This approach is based on a
new measure, max call load, as a comparable measure of
voice trunks. With this new parameter, the Erlang-B
model can be easily adopted for the VoIP traffic. This
approach is similar to the resource-based control where
the network is provisioned for VoIP either through
dedicated links or a Quality of Service (QoS) mechanism.

2. The Erlang B Model


2.1 Traffic Measurements
Figure 1 Circuit-Switched Telephone Network In a circuit-switched network, the limiting resource is the
number of circuits which is also known as trunks (N).

Second International Conference on Digital Telecommunications (ICDT'07)


0-7695-2910-0/07 $20.00 © 2007
The traffic load to the network is measured by Traffic Traffic engineering for the enterprise network has two
Intensity which is defined as components. One is the engineering of the trunk capacity
Traffic Intensity (A) = Call Rate × Call Holding Time (number of DS0’s) to the Public Switched Telephone
Network (PSTN) and the Erlang-B model is applicable for
The measurement unit of Traffic Intensity is Erlang
this application. The other is the network capacity (in bps)
which is the traffic load of one circuit over an hour. The
on the enterprise intranet. In this paper, we assume the
third parameter of the Erlang-B model is Grade of Service
VoIP traffic is carried on a dedicated network or a QoS-
(GoS):
capable network for VoIP traffic. The Call Admission
GoS = probability of an incoming call being blocked Control (CAC) is implemented on the Call Manager. If
For a typical circuit-switched network, the reason for a the network has sufficient bandwidth to ensure voice
call being blocked is that all trunks are busy. quality for an incoming call, the call manager will
establish a call connection; otherwise, the call request is
2.2 The Model rejected.
The Erlang B model is commonly used to determine the The second VoIP architecture is the access network,
mathematical relationship of the traffic measurements where an enterprise subscribes to the VoIP service
defined in Section 2.1. The Erlang B model has the
through an internet service provider (ISP). The network
following assumptions: architecture is illustrated in Figure 3. Because the VoIP
1. Infinite number of sources: The model implies that traffic is carried over the public Internet which does not
a large number of users who could make a call support QoS, we cannot apply Call Admission Control in
through the network. this architecture. The engineering of trunks from the ISP
2. Random call arrival: The call arrival follows the voice gateway to the PSTN follows the Erlang-B model
Poisson distribution, which also implies that the inter described in Section 2.2.
arrival time follows the exponential distribution.
3. Blocked calls are cleared: When a call is blocked,
the user will get a recording or a fast busy tone. The
call request is discarded by the network.
4. Random holding time: The holding time (call
duration) also follows the exponential distribution.
Based on the above assumptions, we can derive the
mathematical formula for the Erlang B model: Figure 3 VoIP for Access Networks
N k
GoS = ( A ÷ N! ) ÷ [ ∑ ( A ÷ k! ), k=0,N ] The third VoIP architecture is tandem service over the
Due to the popularity of the Erlang B model, an on-line carrier network, where both Time Division Multiplexed
calculator is available to calculate the model parameters (TDM) and VoIP traffic is converged to IP packets and
[7]. From an end-user perspective, it does not matter carried over the carrier’s IP backbone as illustrated in
whether voice is encoded in IP packets or not. Therefore, Figure 4.
the above assumptions are applicable to both circuit-
switched and packet-switched traffic.
3. Voice over IP (VoIP) Network
3.1 Network Architecture
This paper studies three VoIP architectures: enterprise
network, access network of internet service provider, and
VoIP carrier network. The VoIP network for enterprise is
illustrated in Figure 2.
Figure 4. VoIP for IP-based Carrier Networks
As we can see from Figure 4, the softswitch performs the
function of Call Admission Control. If the IP backbone
has capacity to ensure voice quality for an incoming call,
the call is accepted and the softswitch uses the SS7
signaling to establish a connection over the IP backbone.
Otherwise, the call request is rejected.

Figure 2 VoIP for Enterprise Networks

Second International Conference on Digital Telecommunications (ICDT'07)


0-7695-2910-0/07 $20.00 © 2007
3.2 VoIP Traffic Analysis effect of the IP networks. VoIP endpoints provide
VoIP encapsulates digitized voice in IP packets. The jitter-buffers to compensate for this variation, and
standard Pulse Code Modulation (PCM) uses 256 packets are kept and re-sequenced in the jitter buffer
quantization level and 8,000 samples per seconds. As a for proper decoding. Buffering increases the overall
result, we have a digitized voice channel of 64 kbps latency so the jitter buffer size should be chosen so
(DS0). If we use 20ms sampling rate, each sample will be that the overall latency (delay) remains within the
acceptable range. Packets arriving outside the jitter
64,000 bps × 20 ms = 1,280 bits = 160 bytes buffer boundaries will be discarded. Jitter
This digitized voice is then encapsulated in an calculations should also consider voice activity
RTP/UDP/IP packet as illustrated in Figure 5 [8]. detection, out of order packets, and lost packets.

Layer- IP UDP RTP Payload


c. Packet Loss: Several reasons might lead to packet
2 header header header 12 160 loss in a network such as network congestion,
header 20 bytes 8 bytes bytes bytes transmission interference, attenuation, and physical
link errors. ITU-T G.114 recommends that packet
Figure 5. VoIP Packet Frame loss be kept bellow 1%. It should also be noted that
some packets might reach the intended host and yet
If the layer-2 is Ethernet, the 802.3 frame header, Frame be dropped because they are delayed more than the
Control Sequence (FCS), preamble, CRC, and jitter buffer value. Therefore, measuring packet loss
InterFrameGap (IFG) add additional 38 bytes. If the must also include the jitter buffer loss which is a
layer-2 is Point-to-Point Protocol (PPP), its header and factor of jitter buffer size and packet delay variation.
FCS are 7 bytes
d. Vocoding (voice codec): the vocoding scheme is
PCM is the standard codec scheme for G.711, which does another important factor in determining voice quality
not use any voice compression algorithm. If a codec due to the compression algorithm, redundancy and
compression algorithm is used, the bandwidth for a voice lost packet hiding techniques implemented in the
channel is reduced to 8 kbps for G.729A and 5.3-6.3 kbps codec.
for G.723.1. A summary of voice codec schemes is
shown in Table 1 [9]. Based on the above parameters, the ITU-T standard
provides the following guideline for the voice quality
Table 1. Vocoding and VoIP Overhead measurement [10]:
(with 20ms sampling rate)
Table 2. VoIP Quality Measurement
G.711 G.729A G.723.1
Raw BW in bps 64,000 8,000 6,300 Network Good Acceptable Poor
Parameter
VoIP Payload (bytes) 160 20 16
Delay (ms) 0-150 150-300 > 300
VoIP overhead (802.3) 78 78 78
Jitter (ms) 0-20 20-50 > 50
VoIP overhead (PPP) 47 47 47
Packet Loss 0-0.5 % 0.5-1.5% > 1.5%
BW in bps (802.3) 95,200 39,200 37,600
BW in bps (PPP) 82,800 26,800 25,200
The most common voice quality measurement is the
* The bandwidth (BW) is for one voice channel.
Mean Opinion Score (MOS) where different voice
samples are collected and played back to a group of
3.3 Measurement of Voice Quality
people who rank the voice quality between 1 and 5 (1 is
On the VOIP network, the major factors that determine the worst and 5 is the best). An MOS of 4 or better is
voice quality are the following: considered toll quality.
3.4 Erlang B Model for VoIP
a. Delay: This is a measure from speaker’s mouth to
listener’s ear delay, which includes coding/decoding, We propose to use the Erlang-B model to engineer the
packetization, processing, and network delay. The VoIP traffic. The concept of traffic intensity (call arrival
ITU-T G.114 recommendation for the one-way delay rate and call holding time) is the same as circuit switched
to be less than 150 ms in order to maintain a quality network. The number of trunks in the Erlang-B model is
conversation. not applicable to a packet-switched network. Therefore,
we propose to use the maximum number of simultaneous
b. Jitter: This is a measure of the variation in time of calls with toll quality. This parameter is also referenced
arrival for consecutive packets. This variation is as maximum call load in this paper. We will provide an
caused by the queuing, serialization and contention experimental framework to measure this parameter in

Second International Conference on Digital Telecommunications (ICDT'07)


0-7695-2910-0/07 $20.00 © 2007
Section 4. This parameter is comparable to the number of number of messages in the batch without causing any
trunks used in the Erlang-B model. congestion or packet loss. When network congestion or
packet loss happens, it implies poor voice quality.
4. Experimental Design and Analysis
4.1 VoIP Traffic Emulation During the experiment, we also monitor the CPU
utilization of the sender and receiver. If the CPU
We developed an empirical framework to emulate the utilization is above 60%, we consider the experiment
VoIP traffic in the lab environment. The emulated VoIP invalid as the bottleneck is on the CPU and not on the
traffic is the UDP traffic with the payload size equal to network. We also conducted a baseline measurement
the RTP header and vocoding data using 20ms sampling where we use the message size close to the MTU of 1,500
rate. The lab configuration is illustrated as follows: bytes. The purpose of the baseline measurement is to
demonstrate that the experiment is able to achieve the line
speed performance. The expected results (theoretical
limit) are calculated from Table 1 and summarized in
Table 3.
Table 3. Theoretical Limit of VoIP Call Capacity
(Max Call Load)
Figure 6a. VoIP Emulation over Switched Ethernet Links G.711 G.729A G.723.1
FD FT1 (768k) 9 28 30
FD E1 (2.0M) 24 74 79
FD 2×E1 (4.0M) 48 149* 158*
10BaseT (HD) 52 127* 133*
10BaseT (FD) 105 255 266
100BaseTX (FD) 1,050 2,551 2,660
Figure 6b. VoIP Emulation over Serial Interface *Note that a Full Duplex Serial link of 4.0M carries
more calls than a half duplex 10BaseT link because PPP
has less overhead than Ethernet. (See Table 1).

The following section presents the experimental results,


and we compare the experimental results with the
Figure 6c. VoIP Emulation over Routed Ethernet theoretical limit as follows:
Utilization = experiment result ÷ theoretical limit
This new metric is based on the max call load of a
network link, and it is different from the traditional
measure of data throughput and link utilization.

4.2 Experiment Results


Figure 6d. VoIP Emulation over Routed Fast Ethernet
The first experiment is a VoIP traffic test over a full
The switched Ethernet environment is for the baseline duplex 10/100BaseTX link. The key measurement is the
measurement which is to validate the measurement tool maximum number of simultaneous calls with toll quality
and the measurement process. The low speed link (serial (max call load), and the data is presented in Table 4. The
interface up to 2M) is to emulate the enterprise intranet, column labeled “utilization” is the comparison to the
and the high speed link (4M and up) is to emulate a theoretical limit presented in Table 3.
carrier IP backbone.
Table 4. 10BaseT Full Duplex Switched Link
In each experiment run, the sender sends a batch of UDP Message Codec Max call Utilization
messages (with a sequence number and a time stamp on Size (bytes) Load (U)
each message) to the receiver. When the receiver receives 1450 (baseline) --- 96%
the message, it echoes back immediately. When the 160 G.711 105 100%
sender receives the echoed message, it computes the delay 20 G.729A 251 98%
and then sends the message with a new time stamp and a 16 G.723.1 261 98%
new sequence number. The number of messages in the When we tried to run this experiment over the
batch is similar to the TCP window for flow control and 100BaseTX link, the CPU utilization of Linux machine
congestion control. Our objective is to have a maximum

Second International Conference on Digital Telecommunications (ICDT'07)


0-7695-2910-0/07 $20.00 © 2007
reaches 98%. Therefore, the experiment of 100M is The observations from these experiments are summarized
considered not applicable for measuring the max call as follows:
load. The 2nd experiment is over a serial link with two
1. We are able to achieve line speed performance (96%
routers and we configure the link speeds (in bps) of 768K,
or better) using the max message size in all
2M, and 4M. The results are given in Table 5.
experiments. This result confirms the validity of the
measurement tool and the experiment process.
Table 5. Full Duplex Serial Link
Codec Serial Link Serial Link Serial Link (4M)
2. The data shows close to 100% utilization on switched
(768K) (2M) (two routers) Ethernet (Table 4.).
(two routers) (two routers)
Max Util. Max Util. Max Util. 3. In the cases of routed network, we observed close to
Load Load Load 100% utilization on low speed links, but poor
Baseline --- 98% --- 98% --- 98% utilization on high speed links.
G.711 9.2 99% 24.2 100% 40.0 83%
G.729A 28.0 98% 61.5 82% 70.0 47% 4. G.711 always yields better utilization than G.729A
G.723.1 29.7 97% 62.8 79% 71.1 45% which is comparable to G.723.1.
5. Although G.729A and G.723.1 compress the voice
The third experiment is to emulate VoIP over three payload by a factor of 8-10, their improvement to the
routers with 10BaseT link (half duplex), and the results max call load is less than 10% on high speed links.
are presented in Table 6. During the experiment run, we
The experimental results raise a question about how to
also monitor the CPU utilization of traffic transmitter and
measure call loads for VoIP. Many other studies calculate
receiver. The CPU utilization on the transmission side is
the call load based on the bit throughput (bps), and our
40% for G.723.1 and G.729A and 20% for G.711. The
experiment shows that bps alone does not work for VoIP.
utilization is much lower on the receiver side, less than
10% in all cases. The fourth experiment is to emulate
4.3. Packet Throughput and Max Call Load
VoIP over a routed full duplex 100BaseTX link. In this
experiment, we used a Linux-Based router on a Pentium 4 In the case of low utilization, it always involves routers.
machine, and the CPU utilization for sender and receiver This observation leads to the study of packet throughput
is less than 40% in all cases. of network devices. The routers used in this experiment
are Cisco 2610 and Cisco 2620. According to the product
Table 6. 10 and 100BaseTX Routed Links specifications [11], these routers are able to carry 1,500
Codec Half Duplex Full Duplex packets per second (pps). If Cisco Express Forwarding
(10BaseT) (100BaseTX) (CEF) is enabled and the traffic pattern is applicable, the
Max Call Util. Max Call Util.
Load Load router could achieve 15,000 pps. Each VoIP call requires
Baseline --- 97% --- 97% two connections, and each packet is counted twice as it
G.711 41 78% 390 37.1% goes through the incoming port and the outgoing port. If
G.729A 73 57% 465 18.3% we use 20ms sampling rate and 64-byte frames, the
G.723.1 74 56% 468 17.6% calculated max call load of a router would be
15,000 ÷ (1000 ÷ 20) ÷ 4 = 75 calls/sec
A summary of the observed call loads versus expected This number is consistent with all the experimental results
call loads is shown in Figure 7. of the routers. In other words, the max call load is
bounded by the router capacity rather than the link
100% capacity. When we use a Linux machine as a router, we
G.711 are able to achieve a much higher call load, close to 470
G.729A
80%
G.723.1 calls/sec (Table 6), but this number is still far below the
60%
link capacity of 100BaseTX. In our experiment, each
router has only two interfaces. If the call load is
40% constrained by the router, adding more interfaces to the
router would further lower the utilization
20%

0%
If a carrier has a high-end router, such as Cisco 12000
Switched 768K 2M 4M 10BaseT 100M series with the capability of 4,000,000 pps, this router
(10M) (Serial) (Serial) (Serial) (HD) (FD) could handle up to
Figure 7. Call Utilization of Various Links 4M ÷ (1000 ÷ 20) ÷ 4 = 20,000 calls/sec
based on the 20ms sampling rate.

Second International Conference on Digital Telecommunications (ICDT'07)


0-7695-2910-0/07 $20.00 © 2007
This capacity would be sufficient to achieve the Acknowledgement
theoretical limit of G.711 on a gigabit link, but still fall
This research project is partially supported by the Quality
short for G.729A and G.723.1 on the same link. If we
Instruction Council (QIC) grant of DePaul University.
choose a more aggressive sampling rate, such as 10ms,
The authors would like to thank ISP, Inc. at British
this capacity would not meet the demand of G.711 for a
Columbia, Canada for its generous donation of a high
single gigabit link while most routers have multiple
capability Linux server for the experiment.
gigabit links and OC-3/OC-12 links.
REFERENCES
If the congestion is on a network device (as we observe in [1] Cisco, “Voice Design and Implementation Guide”
our experiments), using a compression scheme would not http://www.cisco.com/warp/public/788/pkt-voice-
solve the congestion problem. This is because most general/9.html
commonly used codec schemes require the same packet
[2] Cisco, “VoIP Call Admission Control”
throughput. The choice of the sampling rate, 10ms vs.
http://www.cisco.com/univercd/cc/td/doc/cisintwk/int
20ms, would double or half the max call load. It should
solns/voipsol/cac.htm
also be noted that Robust Header Compression (ROHC
defined in RFC 3409) for RTP/UDP/IP does not improve [3] Solange R. Lima, Paulo Carvalho, and Vasco Freitas.
max call load if the limiting factor is on pps instead of “Admission Control in Multiservice IP Networks:
bps. ROHC reduces the header overhead but does not Architectural Issues and Trend,” IEEE
reduce the number of packets. Communications, Vol. 45 No. 4, April 2007, 114-121
[4] Erlang and VoIP Bandwidth Calculator,
5. Conclusions http://www.voip-calculator.com/calculator/eipb/
The Erlang-B model has been used by the telecom [5] Shenquan Wang, et. al. “Design and Implementation
industry to determine the call capacity of circuit-switched of QoS Provisioning System for Voice over IP,”
networks for many years. We are proposing to use the IEEE Transactions on Parallel and Distributed
max call load as a comparable measure of network trunks. Systems, Vol 17 No. 3, March 2006
With this modification, the Erlang-B model is applicable
to determine the call capacity of VoIP networks. SIP call [6] Xiuzhong Chen, et. al. “Survey on QoS Management
manager or softswitch can then apply the Erlang-B model of VoIP,” International Conference on Computer
to implement a Call Admission Control algorithm to Networks and Mobile Computing, IEEE 20-23
accept or reject an incoming call request on the packet October 2003, 68-77.
switched network that does not “naturally” provide a [7] Erlang on-line Calculator,
blocking concept. http://www.erlang.com/calculator/
[8] Bruce Thompson and Xiaomei Liu, “Bandwidth
The traditional calculation of max call load is based on Management for the University Edge,” Cisco, NCTA
network bandwidth, and our experiment shows that this 2005
approach fails to work on routed networks with high [9] John Downey, “Understanding VoIP Packet Sizing
speed links. Our experiment shows that packet and Traffic Engineering,” SCRE Cable-Tec Expo
throughput of network devices is likely to be the White Paper (June 2005)
constraint for VoIP traffic. When doing traffic http://www.cisco.com/application/pdf/en/us/guest/net
engineering for VoIP network, network administrators sol/ns4/c654/cdccont_0900aecd803956d3.pdf
should calculate not only the physical bandwidth of
network interfaces but also the capacity (measured in pps) [10] A. Markopoulou, F. Tobagi, and M. Karam,
of network devices. If a network device is the limiting "Assessing the Quality of Voice Communications
factor for VoIP, codec schemes would have no effect on over Internet Backbones", in IEEE/ACM
the call capacity; instead, sampling rate could easily Transactions on Networking, Vol.11, Issue 5,
double or half the call load. October 2003, pp.747-760.
[11] Cisco Portable Product Sheet – Router Performance
We also acknowledge one deficiency in applying the http://www.cisco.com/warp/public/765/tools/quickref
Erlang-B for VoIP traffic. Many VoIP implementations erence/routerperformance.pdf
support silence suppression. During the silence time, the [12] Jorn Seger, “Modeling Approach for VoIP Traffic
VoIP end-device (an IP phone or a VoIP gateway) may Aggregations for Transferring Tele-traffic Trunks in
not transfer any packet while the Erlang-B model assumes a QoS enabled IP-Backbone Environment”,
the same packet transmission rate as the talking state. International Workshop on Inter-Domain
This issue could be addressed by applying a new model Performance and Simulation, Austria, February 2003.
for traffic intensity as presented in [12], and such a model
is a direction of our future research.

Second International Conference on Digital Telecommunications (ICDT'07)


0-7695-2910-0/07 $20.00 © 2007