Assessment of TCP Multi-Pathization Method on IoT Devices by SDN based on WebQoE

. This paper assesses QoE for a Web service (WebQoE) for the TCP multi-pathization method by SDN by experiments with subjects. The multi-pathization method is one of the QoS controls for IoT networks; it can multi-pathize a TCP connection without any changes of terminals or protocols. The previous work of the authors has evaluated QoS of Web services but has not assessed QoE. This paper assesses QoE of an online map service for the multi-pathization method by experiments with subjects. In the experiment, the authors treat various environments which di ﬀ ers in the amount of load tra ﬃ c. The obtained results show that WebQoE for the multi-pathization method is always higher than that without the method. Consequently, the paper conﬁrms that the multi-pathization is e ﬀ ective from point of users’ view.

formed by SDN, a control which satisfies the above two requirements can be realized without using any new protocols such as MPTCP.
On the other hand, it is expected that Web services will be used on IoT devices due to the improvement of performance of IoT devices. As a result, it is required to study an application of the method of [2] to Web services. Reference [4] evaluates the QoS when using Web service with TCP multi-pathization method with SDN, and confirms the effectiveness to the Web service of the multipathization method. However, [4] does not treat QoE. In Web services, QoE is the most important because users finally decide the QoS of a Web service. It is indispensable to assess QoE of the TCP multi-pathization method for Web services.
In this paper, we assess QoE for a Web service(WebQoE) with TCP multi-pathization method by SDN by experiments with subjects and confirm its effectiveness from the viewpoint of QoE. The paper is organized as follows. Section II shows the TCP multipathization method we use in this study. Section III describes the details of the experiment. Section IV concludes this paper.

TCP Multi-Pathization method
The TCP multi-pathization proposed in [2] has the following four advantages.
• By using SDN, the method can be realized without modifying the end terminals. • Under congestion, throughput can be improved by using multiple paths. • It is possible to suppress the congestion on the network by branching the traffic into multiple paths. • When one path breaks, end-to-end fault tolerance can be improved by using another path.
The multi-pathization method adopt OpenFlow as SDN.
In this method, a TCP connection is multi-pathed by distributing packets to the paths on the OpenFlow switch where the path branches according to the congestion degree of the path and the packet length. The OpenFlow switch on each path sends statistics of its own network interface to the OpenFlow controller at a regular interval. The OpenFlow controller calculates the amount of traffic per unit time for each path. Based on this, the OpenFlow controller controls the OpenFlow switch to transfer packets whose packet length is more than or equal to the threshold value to a path with high traffic volume, and other packets to a path with low traffic volume.

Purpose
In this experiment, we assess WebQoE of the TCP multipathization method by SDN. Note that we also compare it with normal TCP(single path).

Experiment environment
Our experiment environment is shown in Fig.1. This environment is composed of an OpenFlow controller, four OpenFlow switches(we refer to them as OpenFlow Switch 1 through OpenFlow Switch 4), a Web client, a Web server, a load client, a load server, and a network emulator. As an OpenFlow controller framework, we adopt Trema(0.4.6) [5]. The OpenFlow switches are realized with Open vSwitch(2.8.90)[6], which is virtual OpenFlow switch software.

Evaluation scale
We treat the usability defined in ISO 9241-11 [7] as We-bQoE parameters and select one scale of them: the satisfaction. In order to assess the satisfaction for a Web service we utilize the five-grade rating scale method [8] whose terms for evaluation are very satisfied' satisfied' neither satisfied nor dissatisfied' dissatisfied' and very dissatisfied'. The terms for evaluation are assigned a number from 5 to 1 respectively. Thus we treat the mean of the voted score as a QoE parameter.

QoE evaluation experiment
In our experiment, we prepare two paths between the Web client and the Web server(Path1, Path2). Path 1 is the upper path via OpenFlow Switch 2 in Fig.1; Path 2 is the lower path via OpenFlow Switch 3. Note that only path 1 is used for communication by normal TCP(single path). In order to generate congestion over one of the paths, load traffic is generated over Path 1 for normal TCP and over Path 2 for multi-pathization method. To change the amount of traffic over the path, we change the number of TCP connections of the load traffic. As shown in Table 1, this experiment uses six experimental environments: Env1, Env2, Env3, Env4, Env5, and Env6. This paper utilizes a map service, which are Web services widely used around the world, as a target. We construct a map service as a Web server, based on the information published in OpenStreetMap [9], which is a project aimed at creating geographic information data. The subjects access the Web service on the Web client and use the map service for 90 seconds while the experimenter changes the delay and load traffic. The number of subjects is 10.
In each experimental environment, delay is added between OpenFlow Switch 1 and OpenFlow Switch 2 by the network emulator. In this experiment, six round trip delay values of 0 ms, 25 ms, 50 ms, 100 ms, 150 ms, and 200 ms are utilized. Also, the threshold of packet length used to determine the packet branching in this method is set to 300 bytes in [2] which is the proposal source of this method. However, we believe that this threshold needs to be reexamined when applying this method to Web services. Therefore, the following preliminary experiment will be conducted.

Threshold examination experiment
In order to investigate the threshold used for packet branching in this method, we perform QoS evaluation experiments with multiple thresholds. The experimental environment is the same as the QoS and QoE evaluation experiment. TCP throughput is used as an evaluation scale. The TCP throughput here is defined as the amount of TCP data transfer(Kbyte/sec) per unit time between sending and receiving. ApacheBench is used to measure TCP throughput. ApacheBench is a web server benchmark tool bundled with Apache HTTP Server [10].
In order to determine the threshold options, we investigate the packet length distribution when communicating from the Web client to the map service in the Web server. Figure 2 shows the measured packet length distribution. By examining the details of each packet, we found the following. Packets for establishing/disconnecting TCP connections such as SYN packets and FIN packets are distributed in a group of 40 to 79 bytes. HTTP communication packets are distributed in a group of 160 to 319 bytes. ACK packets are distributed in a group of 1514 bytes. Packets for establishing/disconnecting TCP connections such as SYN packets and FIN packets are important because of the large number of TCP connections in Web service communication. Also, in this method, packets smaller than the threshold value are branched to an uncongested path. Therefore, there are two threshold options: 80 bytes that emphasize only TCP connection establishment/disconnection, and 300 bytes that also emphasize HTTP communication. Using the multi-pathization method that set these two threshold the single-path communication method, we measured TCP throughput when communication is performed between the Web client and the Web server for one minute with load and delay. The number of TCP connections for load traffic is five, and five types of delays of 0, 10, 25, 50, and 100 ms are used. The result is shown in Figure 3.
Looking at the figure 3, it can be seen that the throughput is highest when the threshold is 300 bytes. In addition, when the threshold is 80 bytes, the overall throughput is slightly lower than when the threshold is 300 bytes. Based on the above results, in this study, the packet length threshold used to determine packet branching in the multipathization method is set to 300 bytes. Figure 4 depicts the satisfaction: In Fig. 4 the abscissa axis is the delay for Path 1 and the ordinate axis is the sat-  [4] in Fig. 5. The communication environment and network topology of [4] are all the same as those of this paper. Reference [4] measures the TCP throughput as a QoS parameter. Figure 5 depicts the measured TCP throughput; the abscissa axis is the delay for Path 1 and the ordinate axis is the TCP throughput; it also shows the regression lines in which the delay is an independent variable and the TCP throughput is a dependent variable.   [4] From Fig.4 we see that the satisfaction of this method is always higher than that of normal TCP regardless of the delay when the number of load TCP connections is same like the TCP throughput. Also, in normal TCP, regardless of the number of load TCP connections, the satisfaction decreases so much as the delay increases. However, in this method, when the number of load TCP connections is 50 or 100, the satisfaction does not decrease so much as the delay increases. Contrary to this, when the number of load TCP connections is 150, the satisfaction decreases as normal TCP. Therefore, when the load on the path is large, although the satisfaction is higher than that of normal TCP, we can see that the influence of delay appears in the degree of satisfaction. Here, Fig. 5 shows that the QoS(TCP throughput) decreases as the delay increases even when using this method, regardless of the number of load TCP connections. However, from Fig. 4, except when the number of load TCP connections is 150, the increase of the delay does not degrade the satisfaction by this method so much.

Results and Discussion
From the other point of view, in normal TCP, the satisfaction decreases as the number of load TCP connections increases. However, in this method, the satisfaction can keep high even if the number of load TCP connections increases. Also, we see that, when TCP connections of load is 50 or 150 and the delay is from 50 ms to 100 ms, the satisfaction is greatly reduced in normal TCP. However, in this method, regardless of the number of load TCP connections, the increase of the delay does not degrade the satisfaction. Therefore, even if the delay increases while using Web services, QoS degrades but QoE does not deteriorate significantly. That is this method can maintain a high user experience for Web service from point of users' view.
From the above, we confirm that this method can provide higher satisfaction than normal TCP, and it is easy to maintain QoE against deterioration of communication environment such as increase of load TCP connections and delay. Therefore, we confirmed the effectiveness of this method for using Web services from the viewpoint of QoE.

Conclusion
In this study, we evaluated the effectiveness of the TCP multi-pathization method by SDN from the viewpoint of QoE. As the result of the experiments with subjects, the satisfaction of the multi-pathization method is always higher than that of the normal TCP, and the effectiveness in using Web services is confirmed.
As our future works, we consider evaluating in other web services such as shopping services. Also, the threshold of packet length used for packet branching in the multipathization method is set to 300 bytes in this study. In the future, we will investigate appropriate thresholds for each Web service, and enable them to be changed dynamically for each Web service.