Improving Network Performance of IP PBX Based Telecommunication System

IP-PBX based communication has become a human need in the era of technology. Some researchers design a wireless telecommunication system based on IP PBX using Raspberry Pi. The previous researches have small network coverage and problematic on the ability of the system to support multiple concurrent connections. Based on these problems, these research aims are to expand the coverage area and increase the number of concurrent calls. This study used Asterisk FreePBX for the media configuration of the servers. The clients: laptops and smartphone devices used Linkin and Bria softphone. The testing was conducted in terms of voice and video services in the form of signal strength, CPU performance of servers, and network performance parameters such as delay, jitter, and packet loss. The results obtained that the CPU performance of the servers for seven calls simultaneously is around 16.9% compared with previous research, at an average of 45%. Based on ETSI standards, the measurement of network performance parameters when communicating between clients outperform than previous research. The clients can communicate well up to 390 meters.


Introduction
Telecommunication is an important thing in daily life. Even telecommunication can be considered as one of the basic needs of human in the era of technology. The development of technology, especially in the field of wireless communications, has made communication more effective and efficient. One of the most effective telecommunication technologies has been developing is an IP based communications network technology such as Voice over Internet Protocol (VoIP) [1][2] [3]. VoIP is an IP based communication which allows internet connection can perform speech call directly. The analog speech data is converted into digital data, then packetized and transmitted over a packet-switched network [4]. There are some advantages to using VoIP. Some of them are the VoIP is cheaper than conventional telephone and more flexible because it can be installed on any Ethernet or IP address [5].
VoIP uses the Session Initiation Protocol (SIP) as a signaling protocol to support the exchange of messages among the endpoints. The main functions of SIP are to establish, modify, and end a program session relating to one or several clients [6]. The traffic management of the VoIP is managed by IP-based switching devices like IP-PBX. The IP-PBX has an ability to connect between IP phones via TCP/IP protocols on both LAN and Internet [7]. IP-PBX is implemented based on Asterisk. Asterisk builds a real-time connection for VoIP technology to realize the VoIP system, such as MGCP, SIP, SCCP, H.323 [8] [9]. The Asterisk is managed by FreePBX. FreePBX is a GUI application that supports services such as voicemail, ring groups, call routing, on-hold music, and call queues [10].
Several researchers have observed IP based communications technology. The research in [11] measures the performance of the IP based communication using Raspberry Pi Model B. The  Figure 1 shows that the research began by determining the devices, both software, and hardware. Then proceed with the installation and configuration of these devices to build a network system. After the installation and configuration process, testing is done to find out whether these devices can be connected to the network system. If the test is successful, then continue with server configuration. Server configuration using Asterisk on FreePBX software through a web interface. After successfully configuring the server, the tests are conducted on server and network performances. The results are then analyzed in relation to the problem statement of this research. The results of the analysis are then concluded.

Software and Hardware
The software used in this research is Asterisk FreePBX, Softphone: Linphone and Bria, PuTTY, Web Browser, Wireshark, and Wifi Network Monitoring. The research also utilized some hardware devices for both servers and clients. The server consists of Raspberry Pi 3, MicroSD memory card, Network Adapter TP-Link WN722N, eight dBi Omni-directional Antenna TP-Link ANT2408CL, and Powerbank. The server can be seen in Figure 2. The clients comprise laptop HP Pavilion dm1-4000au, laptop Asus A46CB series, Smartphones Lenovo A6000 Plus, and smartphone Alcatel OneTouch Flash 2. Figure 3 shows the client devices.

Network Topology
Network topology is the pattern of connecting structure between the nodes in a network. Topology deals with the mechanisms used to manage nodes in accessing the network to prevent conflict. This system uses a wireless network transmission medium on two servers and some clients. Therefore, the network topology used is the topology WLAN ESS mode. WLAN ESS mode is a set of two or more controllers where the clients can access mobile anyplace within the range covered by the multiple controllers. Therefore, the ESS mode can reach a wider area compared to a basic WLAN. The network topology is shown in Figure 4.

Stages of System Design
There are some processes conducted in building the telecommunication system. The stages of the processes in detail can be seen in Figure 5.

Operating System Installation
Raspberry Pi uses a Linux-based operating system installed on a Micro SD memory card. The operating system used in this research is RasPBX, which is a lite version of Raspbian based operating system. The RasPBX includes the Asterisk and FreePBX software.

Server Configuration
Servers are configured using Asterisk. The servers are controlled and managed by FreePBX through a web interface. The software sets several extensions as phone numbers for clients in the servers. The server also manages outbound routes and other settings to organize communications between clients. Some configuration parameters on FreePBX to control and manage the Asterisk can be seen in Table 1.

Client Configuration
The stages of design on the client-side are: connecting the client on the access point, installing softphone, and registering on the server. The softphone for laptop is the Linphone, while for the smartphone is the Bria, which is the SIP-based softphone protocol. SIP-based softphone protocol is a software that allows clients to make telephone connections over the internet without a physical phone. The SIP protocol which performs signaling to establish, monitor, and terminate the connection when the communication end is carried out by the softphone.
Linphone configuration for a SIP account can be seen in Figure 6. The SIP configurations account includes a SIP identity and a SIP proxy address. The SIP identity is the client extension with IP gateway from the server while the SIP Proxy Address is the IP from the server gateway.  Figure 7 shows the account configuration for the client. The configuration includes Account Name, Display Name, Username, Password, and Domain. All the account configurations based on the account registered in FreePBX.

Network performance
Measurements of network performance parameters of the telecommunication system were done in the line of sight (LOS) condition. The measurement parameters are signal strength, CPU performance of servers, and network performance parameters such as delay, jitter, and packet loss that refer to ETSI: TIPHON standard. The networks performances are measured by both Wireshark and Wifi Network Analyzer. The Wireshark can diagnose and record networking traffic in real-time while the Wifi Networks Analyzer is used to detect the signal strength of the Wifi signal on the system. The testing was conducted by creating three scenarios of communication. The scenarios are: a. Communication between smartphones b. Communication between smartphone and laptop c. Communication between laptops The voice calls use PCMA coded while the video calls use H.264 with display VGA (640 x 480 pixels).

Performance Parameters
The reliable performance on any network will guarantee the availability of services for clients. Therefore, it is needed to measure some parameters to know the network performance of the system. The parameters are jitter, packet loss, and delay [14][15] [16]:  Delay is an accumulation of delay times from sender to receiver. The recommendation standard for delay by ETSI: TIPHON shows in Table 1.  Jitter (delay variation) is the variation of arrival time intervals between packages in the receiver device. The difference in the arrival time can be caused by some factors such as the capacity of the network, and congestion. Table 1 describes the recommendations of jitter by ETSI: TIPHON.  Packet Loss is the overall lost packets when sending packet data between source and destination. The packet loss can be caused by collisions, the full capacity of the network or packet drops caused by the endless TTL packet. The standard of Packet Loss by ETSI: TIPHON can be seen in Table 2. , and packet loss (<4%) perform good communication between the clients. The quality of service of the network is degraded from perfect quality to bad quality as the values of the parameters increase.

Signal testing
The test was conducted to measure signal strength from server to server and from server to clients with various distances. The default four dBi antenna of the transmitter TP-Link wireless network adapter type TL-WN722N was replaced with an eight dBi antenna of TP-LINK type ANT2408CL in order to increase signal strength level. The measurements were done in Line of Sight condition. Figure 8 shows the topology of signal testing.

Performance parameter testing
The performance parameter testing, the client, performs a call both voice and video communication alternately every 10 meters along 130 meters away. Figure 10 illustrates the measurement of the performance parameter of the system.  Figure 11 shows the results of the signal testing both from server to server and from server to

CPU performance testing
The testing is done by doing multiple calls simultaneously, then observing the CPU performance level on the Raspberry Pi server. The test results can be seen in Figure 12. Figure 9 shows the CPU utilization increases consistently with the number of concurrent calls. The increasing CPU usage due to the CPU has more work to complete and serve the connection process requests. To reduce the workload of the server, the research uses two servers so that the server performance can be distributed. In general, the percentage of CPU utilization reaches the values at about 16.9% when seven calls are served concurrently by the servers. Figure 9 also shows that the research result 16.9% outperforms the previous research with CPU usage at around 45% [11].  Figure 13 and Figure 14 show respectively, the average delay for voice and video communication.  The delay that occurs in video communication at a distance from 10 to 130 meters shows no significant increase with increasing the distances. The average delay in 3 scenarios is between 25.28 and 50.42. The delay illustrates that up to a distance of 130 m, propagation delay in this study does not affect the quality of service of the systems.

Delay
Based on ETSI: TIPHON standards for delay [16], both voice and video communications can communicate well at a radius of 130 meters from the server. Therefore, the communication between clients can be done until a distance of 390 m.

Jitter
Average jitter for voice communication is described in Figure 15, while for video communication in Figure 16.  The graphics show that video communication made by smartphone and smartphone (scenario A) has an average jitter smaller than communication from smartphone to laptop (scenario B) and laptop to laptop (scenario C). Scenario A has an average jitter at about 23 ms lower than the other two scenarios. The differences might be caused by the processing of data packets on the smartphone better than on the laptop.
Based on ETSI: TIPHON standards for jitter [16], both voice and video communications can communicate well at a radius of 130 meters from the server. Therefore, the communication between clients can be done up to a distance of 390 m. Figure 17 and Figure 18 illustrate the result of packet loss (%) testing for communication at a distance from 10 to 130 meters from the server. Figure 17 shows the voice communication at a distance of up to 130 meters from the server. The average packet loss varies from 0 to 0.28%. a. Scenario A: the average packet loss from 0 -0.06%. b. Scenario B: the average packet loss from 0 -0.06%. c. Scenario C: the average packet loss appears from a distance of 110 m to 130 meters, which ranges from 0.24 to 0.28%.

Packet loss
The average packet loss for voice communication in all three scenarios is very small. Package loss in scenarios A and C show no significant increase in all distances. In scenario B, the packet loss increases sharply, starting at a distance from 100 to 130 m. The highest packet loss in scenario B is at a distance of 130 m, with a loss of the packets at around 0.28%. a. Scenario A: the packet loss occurs when calling at a distance from 80 to 130 meters from the server, which ranges between 0.06 -0.1%. b. Scenario B: the packet loss appears from the distance of 100 m to 130 m, where the packet loss for about 0.64 -0.86%. c. Scenario C: at a distance between 100 and 130 m from the server, there is some packet loss, which ranges from 2.64 -3.72%.
The graphic for video communication shows that the packet loss in scenario A is very small, where the highest packet loss is only about 0.1%. Likewise, in scenario C the highest packet loss is around 0.86% at a distance of 130 meters. Scenario B has a higher packet loss compared to 2 other scenarios, which is approximately 3.72%. However, packet loss is still in the range of good quality.
Based on ETSI: TIPHON standards for packet loss [16], the packet loss less than 4 % are categorized in good quality. Therefore, both voice and video communications can communicate well until a radius of 130 meters from the servers and 390 meters between clients.

Conclusion
This research has succeeded in designing an IP PBX-based wireless communication system with a wider covered area and better CPU performance of servers. The use of 8 dBi omnidirectional antennas and two servers increases the range of the covered area so that the clients can communicate well until 390 meters. The use of 2 servers can also distribute server workloads, thereby reducing CPU utilization of the servers. CPU usage reaches the values at about 16.9% when seven calls are served concurrently by the servers. Based on ETSI: RSII and TIPHON standards, communication testing up to 390 meters, QoS parameters such as delay, jitter, and packet loss, the telecommunication system meet good quality standards.