Uploaded by hafizhww

Hafizh Paper B.ING

I VoIP Implementation Using OpenFlow
Hafizh Wibowo Widodo 1, Eki Ahmad Zaki Hamidi, MT2, Mufid Ridlo Effendi, MT3
Teknik Elektro Fakultas Sains dan Teknologi UIN Sunan Gunung Djati Bandung
Jln. A.H Nasution no 105
[email protected], [email protected], [email protected]
The development of modern and sophisticated communication can help people to make a long communication. It produces the
digital signal of technological process which has modular capability in IP base this integrated by voice and data
communication. Voice Over Internet Protocol (VoIP) is a technology which able to operate the traffic of voice and packet data
through the IP. The uses of IP is able to thrift the expense. This is because, it does need to make a new infrastructure for the
voice communication. In addition, the infrastucture of VoIP still uses the conventional method, and there is a development of
the infrastructure in SDN (Software Defined Network). SDN is a new technology in computer network field, and the use of SDN
is able to decrease the difficulty in network setting. In implementing VoIP by switch OpenFlow, it can be built by using the
application with a freeware, such as X-lite as the user agent or client, asterisk as the VoIP server, and G.711 as the codec by
use the OpenvSwitch or virtual switch OpenFlow which has a function to continue the packets in VoIP service. Testing of the
system is done in two parts, OpenvSwitch and VoIP. The result of OpenvSwitch test is that the flow which has been made in
OpenvSwitch can be used to forward the set of VoIP service, therefore server and client be connected. VoIP testing performed
need 10 times for its experiment, the result of this experiment is 10,0002421 ms, throughput 171,195 Kbps, jitter 0,424 ms,
packet loss 0%.
Keywords: Software Defined Network, OpenFlow, OpenvSwitch, VoIP
I. Introduction
The development of technology, especially information
technology brings a very fundamental change for the world of
telecommunications. Because the need for communication is
needed everyone to do an interaction or conversation, because
communication is a basic human activity. It must be admitted
that man can not live without communication, because man is
a social being. And in this era of globalization the use and
application of increasingly sophisticated and modern
communication technology that allows to communicate with
people who are in a distant place. This results in the presence
of digital signal processing technology that has modular
capability with IP (Internet Protocol) based technology
integrated between data and voice communications [1].
VoIP (Voice Over Internet Protocol) is a technology capable
of passing voice, video and data traffic in the form of packets
over an IP network. The use of IP networks enables cost
savings because there is no need to create new infrastructure
for voice communications and the use of data bandwidth
(bandwidth) is smaller than the regular phone [2]. There are
currently three types Different methods and most commonly
used in VoIP services are ATA (Analog Telephone Adapter),
IP Phones, Computer to Computer [3]. Infrastructure that
exists today besides using infrastructure with convenonal
methods has also developed the infrastructure-based SDN
(Software Defined Network).
SDN (Software Defined Network) or split architecture is a
new concept that allows network operators to manage routers
and switches flexibly using software running from external
servers. SDN or (Software Defined Network) promises an
advantage of (1) management centralization and multi-vendor
network control (2) automated development and management
(3) continuous innovation in network capabilities and services
without having to reconfigure each device) can be
deprogrammed by admin (5) increased reliability of network
security, network management automatically (6) uniform
network policy implementation and can anticipate in reducing
errors (7) small network controls to be applied
comprehensively and broad policy on user sessions app
device [4].
SDN is closely associated with OpenFlow so many people
assume that SDN is OpenFlow. SDN was born from the
OpenFlow protocol proposed by Nick McKeown and his
colleagues. OpenFlow is a communication specification
between control plane and OpenFlow data plane is an open
standard applied to SDN [5]. An OpenFlow switch consists of
the first two types of hardware-base switches, these switches
have modified hardware using a special OS to implement
OpenFlow protocol and the second type is a base switch
software that uses Unix or Linux systems to implement all
OpenFlow functions [6 ].
Considering the flexibility of SDN (Software Defined
Network) based on OpenFlow that enables it to be
implemented in VoIP (Voice Over Internet Protocol) service.
Based on the above exposure will be developed VoIP service
using OpenFlow switch.
II. Teory
2.1 VoIP (Voice Over Internet Protocol)
*VoIP is an internet-based telephone service, because VoIP
utilizes the Internet infrastructure so that communication with
this service does not cost the phone to allow for cost savings
compared to traditional telephony, as it does not need to build
new infrastructure for voice communications and more data
wide usage small compared to regular phones [2]. Based on
the definition of VoIP is a technology capable of sending data
in the form of sound, video and data in the form of packets in
real-time using the Internet protocol network. Basically this
technology is to convert analog sound signals and then
converted into digital formats and translated into IP packets,
which are then transmitted over the internet network.
*And to do its job of channeling VoIP voice signals must be
supported by several components such as terminal, gateway,
gatekeeper, multi point control unit (MCU). Terminal is a
device that is directly related to the application usage,
terminal equipment used to connect VoIP there are various
one of them headphone. The VoIP gateway is an interface
between traditional phones and IP networks and enables
interoperability of different network technologies to
communicate with each other, this VoIP gateway is a
computer or a router configured to connect phone calls to IP
networks on the gateway of encoding and compressing calls
and data packetization digital sound. Network IP is a network
that uses TCP / IP as a rule in transferring data from source to
destination, this IP network component is a router and
transmission media, the router has the ability to choose the
shortest path and best for all datagrams to the destination
gateway. The datagram arriving at the router is queued in the
wait process buffer and then processed and routed to the next
router [1].
2.2 VoIP Service Method
In using the service on VoIP (Voice Over Internet Protocol)
is divided into three types of services in general namely:
1.) IP Phone
Is a telephone device owned RJ-45 port with the existence of
this port then this network device can be connected with
router connected in network.
2.) Analog Telephone Adapter
It is a tool used to connect one or more conventional telephone
services to a digital or VoIP system.
3.) Pc to Pc
It is a use of a call made by using a PC to communicate like
this will require some additional tools such as microphone,
earphone, soundcard and softphone application in doing VoIP
2.3 Codec
Compression / decompression has the ability to determine the
process of encode and decode. Basically the codec can be one
of the sound quality factor in communicating. The selection
of codecs should be tailored to the needs, eg free and open
source codecs are GSM, Internet Low Bitrate Codec and
G.711 while licensed codecs are G.729 and G.723. for the
G.711 codec is divided into a-law and u-law. One comparison
of these two codecs is that u-law is used in north america and
japan, whereas a-law is used for international relations [10].
2.4 SDN (Software Defined Network)
With the state of the network began to saturate the reasons for
the number of studies using SDN platform (Software Defined
Network). SDN is the main approach to network
virtualization, this idea comes from Stanford University [13].
SDN (Software Defined Network) is a new paradigm in the
networking world that can implement some functions in the
software. SDN is a completely different way to traditional
networks because SDN can manage networks in a centralized
form. The rapidly expanding SDN technology can implement
existing network functions, aiming for efficiency and
delivering reliable services [15].
2.5 OpenFlow
OpenFlow is a relatively new protocol designed and
implemented at Stanford University in 2008. This protocol
aims to control the Data Plane Switch that is physically
separated with Control Plane using a controller on a server.
Control plane can communicate with plane data through the
OpenFlow protocol, the widely available and widely accepted
standard for SDN is OpenFlow [4].
2.5 OpenvSwitch
The OpenFlow switch consists of two types, the first being a
hardware-based switch, which has been commercially sold by
several vendors. This type of switch has modified its hardware
by using TCAM (Ternary Content Addressable Memory).
And on the second type is a software-based switch that uses a
Unix or Linux system to implement the OpenFlow switch [6].
OpenvSwitch Is a form of implementation of the OpenFlow
switch that can be used either pure virtual switch in a virtual
environment and as a software switch that aims to connect a
separate physical node. The OpenFlow or OpenvSwitch
switch is a reference developed by Standford University and
then continued with Open Networking Foundation (ONF).
OpenFlow switches include the basic functional components
required by networking devices to support OpenFlow.
OpenFlow designers find the fact that from networking
devices even though their flow-tables are different from each
vendor but have a common function. Networking devices are
usually produced using Ternary Content Addresabble
Memorry (TCAM). OpenFlow designers exploit these
common functions used in forming the logical architecture of
the OpenFlow switch [8].
Table 1 Implementation Support
III. Research Methodology
The research for this final project has several steps. The steps
are prepared to support the research process to run
systematically. From several stages, then arranged in the form
of a diagram or flowchart as follows
PC Server
Asus A43s Core i3
System Operation
PC Client 1
Ram 2 Gb
Ubuntu 14.04
Soundcard External
Asterisk IP PBX
System Operation
Windows 8.1
X-Lite Softphone
PC Client 2
Soundcard External
System Operation
Windows 8.1
X-Lite Softphone
Figure 1 Research Methodology Flowchart
Switch OpenFlow
Switch TP-Link
Intel Core 2 duo 2.80
System Operation
Linux Debian 8
Ram 1 Gb
Hardisk 80 Gb
(Open Virtual
3 buah Network
Interface Card
8 port RJ45
No configuration
IV. Design and Implementation
4.2 Asterisk Configuration
The design used in this study is the design of VoIP server
using Asterisk software with Ubuntu 16.04 as the operating
system. Next to the VoIP client using X-Lite Softphone so that
it can make the acceptance of calls with fellow clients who
have registered on the VoIP server. And to implement VoIP
service using OpenFlow switch then use OpenvSwitch as
OpenFlow virtual switch with Debian 8 Linux operating
system with additional network interface card (NIC) that
serves as a liaison between server and client, then test analysis
using wireshark software with testing parameters such as
delay, jitter, packet loss and throughput.
After the Asterisk installation process, some system
configuration must be performed. Most Asterisk
configurations are located in the directory / etc / asterisk.
The SIP.conf file contains parameters related to SIP
configuration for the Asterisk server, by giving the command
"nano /etc/asterisk/sip.conf" which serves to create a
numbering and password on the client that will be used to
enable the client to communicate with other clients .
4.1 Design of Network Topology
The physical topology of the network used in this system is as
follows :
Figure 3 Process SIP.conf configuration file
Figure 2 VoIP Network Topology Using OpenFlow Switch
4.1.1 Implementation Support
To do this research required some supporting components that
are divided into two kinds, namely hardware (hardware) and
software (software). Both support each other in this study:
[800] : is an extension used as an address or phone number on
client 1
[5060] : is a service port used in VoIP
[Type] : is a group tagging
[Host] : serves as declaring the host used by the user and
dynamic is the account can be used from any host
[Username] : is a context name that will appear when there is
an incoming call
Context : is a naming that is used in extension configuration
Secret: password
[Dtmf mode] : is a technique of sending numbers of phone
number formers.
[Nat] : in mode Nat
After the configuration process in the SIP.conf file the next
stage is to configure the file extensions.conf which serves to
create a pattern of calls that will be done by using the
command "nano /etc/asterisk/extensions.conf"
Figure 6 Softphone ready for use
4.3 Configuration Switch
Figure 4 Configuration Process file extensions.conf
4.2 Configuration Softphone
After the x-lite softphone installation process must be done
some system configuration that aims to fellow clients who
have registered on the VoIP server can receive and make calls.
Switch functions as a traffic management contained on
computer networks, and switches also serve as a medium for
sending a data packet to get to the destination by finding the
best and optimal path and ensure the delivery of data packets
to its destination. In this final project use OpenvSwitch or
OpenFlow virtual switch and TP-link T1-SF11008D switch.
4.3.1 Configuration OpenvSwitch
In this study used OpenvSwitch which aims to create a virtual
network by implementing VoIP services. To install and run it
can be done in the following ways:
1. The first thing to do is to install OpenvSwitch by giving
commands on the debian server terminal using the apt-get
install OpenvSwitch-switch.
2. After the installation process is complete then run a
command with ovs-vsctl add-br ovs0 and input the command
ovs-vsctl add-port eth0 to eth3 to create a bridge and virtual
port, and ovs0 is the name of the virtual switch that has been
created .
3. The next step when the OpenFlow virtual switch has been
created then a check is done by giving the ovs-vsctl show
4. When the vitual switch is done then the next process is to
check the port bridge on OpenvSwitch with the command ovsdpctl show.
5. If all processes on OpenvSwitch have been done then the
next is to perform an up-port that aims to port in a virtual
switch in the active state (Up) and ready to use.
6. Add add-flow to OpenvSwitch with command ovs-ofctl
add-flow ovs0.
Figure 5 Configuration process softphone
After the configuration process has been done and in the
process of creating an account that already matches the name,
number and password it will automatically VoIP softphone
will detect the changes to the parameters (conditions are
already connected in one network). If the configuration stage
is no problem it will be seen softphone or VoIP client that is
ready to be used in receiving or making calls, can be seen in
the picture below:
4.3.2 Implementasi Switch TP-Link T1-SF1008D
Switch functions as a traffic management contained in
computer networks and switches also served as a medium for
sending a data packet to get to the destination by finding the
best and optimal path and ensure the delivery of data packets
to destination. The TP-link switch in this final project is used
as a medium for sending a packet from a VoIP server to a
VoIP client. In TP-Link T1-SF1008D switch is no
configuration and installation process because this switch is
plug and play so it can be directly used.
V. Testing and Analysis
In this research, several test scenarios were conducted in VoIP
with the aim of obtaining a comparison result between using
VoIP service using OpenFlow switch and using TP-Link T1SF1008D switch and then taken the average value from each
5.1 Testing VoIP Calls on OpenFlow Switch
The first process on OpenvSwitch is an up-port that aims to
keep the ports in the virtual switch active (Up) and ready for
Figure 7 Process Dump-flow OpenvSwitch
After the add-flow process on OpenvSwitch has been done
then the next process is to ensure that the network connection
on the VoIP server via OpenvSwitch to the client one and two
are well connected. The test is done by "ping" the terminal
with the command "ping" for client one and
"ping" for client two.
Figure 5 Up Port OpenvSwitch
The second process is to create a flow on OpenvSwitch with
the command ovs-ofctl add-flow ovs0
Figure 6 Process Add-flow OpenvSwitch
• ovs-ofctl is a command that serves to manage OpenFlow
• Add-flow is a command in creating flow
• Priority is a command to set priorities on packages that have
the greatest priority value.
• Arp is a link between data link layer and IP layer on TCP /
• In_port = 2 is a command to perform input for example port
2 is used to be a port of a VoIP server
• Nw_dst is the packet destination address to be sent
• Action = output: 2 is a command to output packets through
a particular port eg port 2
The next process is to do a dump-flow function to see the
package used, and the reference to the dump-flow is n_packet
be one of the references seen because n_packet appears
several times the package was used, in this test n_packet
obtained not 0 means flow is often used
Figure 8 Process Check Connectivity
Each client is given a registration list to configure the call
number that has been made on the VoIP server (Asterisk) so
that the client can make a call with the number of the call.
Here's a list of dial numbers on each VoIP client.
Tablel 2 List Number Client VoIP
Nomor Dial
IP Address
Client 1
Client 2
In making a call in VoIP every client must already be
registered on the VoIP server. This calling process is very
similar to the usual communication done on the phone, to see
the VoIP client is active on the server is to give commands on
the asterisk -r sip show peers.
5.2 Analysis Quality of Service
It is the ability of a network to provide the capability of a
network to provide better services to certain traffic on
different types of technology platforms. And in the results
obtained VoIP research will be compared with the
recommendations ITU-T and TIPHON on VoIP service
quality standards as below:
Figure 9 VoIP client already registred on server
After one VoIP client account with dial number 800 and client
account two with dial number 801 already registered on the
server then VoIP client can make a call. By pressing the dial
number that has been registered on the server, as in the
following picture:
Delay (≤ 150 ms, ITU-T G.114)
Jitter ( ≤ 75 ms, TIPHON)
Packet Loss ( ≤ 5%, ITU-T G.114)
measurement is done by using variation of switches used. The
switches used for measurement are the OpenFlow
(OpenvSwitch) virtual switch and the TP-Link T1-SF1008D
switch. retrieval of data is done as much as 10 times call with
time once call is 5 minutes. Measurements were made with
wireshark software with G.711 codec.
A. Analysis Delay
Delay directly related to the data transfer speed of a network,
delay is very influential on real-time data such as voice data
in VoIP applications. The greater the delay value the worse
the quality of the network and the quality of data received by
the listener [19]:
Figure 10 VoIP client when calling
in the picture above is the condition where the client one with
dial number 800 will make a call with the two clients who
have dial number 801. In this waiting process, the client two
there is an incoming call sign from the client one who is
waiting whether the call request is accepted or rejected. Select
the phone logo to receive communications.
Figure 11 Graphic comparison chart of VoIP delay value
Figure 11 Client VoIP on the phone
If the communication process is running (client two answers
the phone), then the information contained on the status of
softphone client one and two changed to like picture 5.8
above, "on the phone" information indicates that the client one
and the two clients are operating communications.
the process of delay measurement on VoIP communications
using OpenvSwitch has an average delay value of 10.0002421
ms, while using TP-Link switch has an average delay value of
10.000989 ms. From the result of sound quality measurement
on VoIP service applied by OpenvSwitch and TP-Link switch
still considered good, because according to recommendation
from ITU-T and TIPHON the recommended delay value is
less than 150 ms.
From the results of the measurement of the value of delay in
this study is influenced by the value of throughput. The value
of throughput is inversely proportional to the value of delay,
the greater the throughput value the smaller the delay
B. Analysis Throughput
Measurement throughput is done to know the rate of data in a
call, so it can be recommended requirements on the minimum
bandwidth that will be used.
Figure 14 Graphic comparison chart of VoIP jitter value
Figure 12 Graphic comparison chart of VoIP throughput
In the measurement of throughput with the longer duration of
speech by using VoIP service, then the value of delay caused
greater, this affects the value of a throughput. Because the test
is limited to 5 minutes of talk time, so the average throughput
value of OpenvSwitch is 171,195 kbps, while using TP-Link
switch has a mean value of throughtput of 171,196 ms.
Because in this experiment only use two client and still reside
in local network and use media cable so that value obtained in
this research is relatively same.
C. Analysis Jitter
Jitter is a delay variation between packets that occur in the IP
network, the magnitude of jitter value is influenced by the
variation of traffic load and the amount of packet
accumulation in the IP network [19].
Based on the measurement VoIP service using OpenvSwitch
and TP-Link switches, the average result is 0% so that it can
be categorized as very good condition, because the
standardization of TIPHON categorizes that the quality of
network with 0% value is very good.
Based on the results of testing VoIP service (Voice Over
Internet Protocol) which has been displayed in graphical form
done by using OpenvSwitch and TP-Link switches with some
test scenarios. Can be concluded by analyzing the data
generated by wireshark software, from the test results that
have been done can be seen in the following table:
Table 2 Analysis of network performance
Quality of Service
Packet Loss
10,0002421 ms
171,195 Kbps
0,424 ms
Switch TP-Link
10,0001989 ms
171,196 Kbps
0,435 ms
VI. Conclution
In this final project has been realized VoIP using OpenFlow
switch by using OpenvSwitch as OpenFlow virtual switch. A
QoS measurement of communication sessions using SIP
(Session Innitiation Protocol) for signaling, RTP (Real-Time
Protocol) protocol for transport and G.711 audio codecs can
be inferred from the design, implementation and testing of this
system in the results as follows:
1. VoIP using OpenFlow switch is successfully implemented.
2. The use of priority on OpenvSwitch in this test is not very
influential because the network used is small scale, but on a
large scale will have an effect.
3. The VoIP service port used on OpenvSwitch is random.
4. Testing of VoIP is done as much as 10 times the experiment
with the results obtained with an average delay of 10,0002421
ms, throughput 171,195 Kbps, 0.424 ms jitter, packet loss 0%
Figure 13 Graphic comparison chart of VoIP jitter value
VII. Suggestion
D. Analysis Packet Loss
Packet Loss is the loss of one or more data packets running on
the network or in other words data packets that fail in
achieving the goal [19].
Some suggestions that can be used for the development of
VoIP implementations using OpenFlow switches are:
1. Adding controllers to OpenFlow switches for large
networks will make it easier for administrators to manage
2. In order to cangkupan VoIP more widely suggested to be
connected with ATA (Analogue Telephone Adapter) so it can
connect on analog telephone network.
[1]. Lazuardi, N., 2009. Perencanaan Jaringan Komunikasi
VoIP (Voice Over Internet Protokol) Menggunakan Asterisk
SIP (Session Initiation Protocol).
[2]. Yuniati, Y., Fitriawan, H. and Patih, D.F.J., 2014. Analisa
Perancangan Server VoIP (Voice Internet Protocol) dengan
Opensource Asterisk dan VPN (Virtual Private Network)
Sebagai Pengaman Jaringan Antar Client. Jurnal Sains dan
Teknologi Industri, 12(1), pp.112-121.
[3]. Wahyuddin, M.I., 2009. Implementasi VoIP Computer To
Computer Berbasis Freeware Menggunakan Session
Initiation Protocol. , 3(1), pp.50–59.
4]. Kartadie, R. and Satya, B., 2015. Uji Performa
Implementasi Software-Based OpenFlow Switch Berbasis
Network. DASI, 16(3), p.87.
[5] Cui, Hongyan, et al. "Accurate Network Resource
Allocation in SDN according to Traffic Demand." (2015).
openflow halaman 26
[6]. Kartadie, R., Utami, E. and Pramono, E., 2014. Prototipe
Infrastruktur Software-Defined Network Dengan Protokol
Kontroler. DASI, 15(1), p.24.
[7]. Gojali, I., 2013. Modul Jaringan Komputer.
[8]. Salwa, M.I., 2016. Implementasi DHCP server multi
subnet menggunakan switch OpenFlow. Universitas Islam
Negeri Sunan Gunung Djati Bandung.
[9]. Mahardwiani, I., 2015. Desain dan implementasi telepon
Telekomunikasi Politeknik Negeri Bandung. Politeknik
Negeri Bandung.
[10]. Ilma, U.Z., 2011. Rancang bangun dan analisa Quality
of service (QoS) pada sistem Voice Over Internet Protocol
(VoIP) menggunakan opensource Elastix. Institut Sains dan
Teknologi Nasional.
[11]. Supriyanto, 2013. Jaringan Dasar 1. Available at:
[12].Syamsu, S.,Modul Jaringan Komputer. Stimik AKBA
[13] Li, Y., & Wang, G. (2013). SDN-based switch
implementation on network processors. Communications and
Network, 5(03), 434.
[14] Tulloh, R., Negara, R.M. and Hidayat, A.N., 2015.
Simulasi Virtual Local Area Network (VLAN) Berbasis
Software Defined Network (SDN) Menggunakan POX
Controller. JURNAL INFOTEL, 7(2), pp.129-136.
[15] Baek, Sun Uk, et al. "Implementation and Verification of
QoS Priority over Software Defined Networking."
Proceedings on the International Conference on Internet
Computing (ICOMP). The Steering Committee of The World
Congress in Computer Science, Computer Engineering and
Applied Computing (WorldComp), 2016
[16]. ONF Market Education Committee, 2012. Softwaredefined networking: The new norm for networks. ONF White
[17]. Risdianto, A.C., Arif, M. & Mulyana, E., 2013. Buku
Komunitas SDN-RG: Pengantar SDN
[18] Thorpe, Christina, et al."iMOS: Enabling VoIP QoS
Monitoring at Intermediate Nodes in an OpenFlow SDN."
Cloud Engineering Workshop (IC2EW), 2016 IEEE
International Conference on. IEEE, 2016.
[19]. Ketut Sudiarta, P. and Sukadarmika, G., 2012.
Penerapan Teknologi VoIP Untuk Mengoptimalkan
Penggunaan Jaringan Intranet Kampus Universitas
Udayana. Majalah Ilmiah Teknologi Elektro, 8(2).
The writer was born in Bandung
on October 3 1994 from a father
who named Widodo and mother
named I karliah. The writer is the
first of two brothers.
Formal education pursued:
1. SD Negeri Sukarela 4 Bandung graduated in 2006
2. SMP Negeri 50 Bandung graduated in 2009
3. SMA Negeri 16 Bandung graduated in 2012
Writer completing undergraduate program in the Department
of Electrical Engineering Faculty of Science and Technology
UIN Sunan Gunung Jati Bandung in 2012 and graduated in
2017. In the completion of the final project, the author
conducted research and thesis writing with
“VoIP Implementation Using OpenFlow Switch” Guided by
Mr. Eki Ahmad Zaki Hamidi, MT. and Mr. Mufid Ridlo
Effendi, MT.