Multipath TCP in LTE Networks

The results of experiments with Multipath TCP (Multipath Transmission Control Protocol) in LTE (3GPP Long Term Evolution) networks are presented. Our results show increased resiliency and availability of network Multipath TCP connection. Using multiple sub-flows over diverse network paths inside Multipath TCP session results in greatly increased bandwidth and availability. When Multipath TCP is used the behavior of this protocol is consistent in situation of adding new sub-flow or removing flow on a faulty line. Different strategies for path selection are possible with great impact on Multipath TCP session performance. Network structure consisting of few connections with similar parameters is optimal for full mesh Multipath TCP path topology. In this case the behavior of Multipath TCP predictable.


Introduction
Despite the fact that the world of communications is rapidly changing now, the TCP is still main protocol for Internet communication today.It is well designed and very reliable, and major applications all over the world depend on them.There is a great increase in a number of devices connected to Internet nowadays and what is more important these devices typically have more than one active interface connected to Internet network at a time.First one is WiFi (Wireless Fidelity) interface and second one is 3G/LTE modem.With decreasing price for mobile broadband data and increasing FUP (Fair User Policy) limits it obvious that there are new possibilities to improve connection stability and network throughput by utilizing multiple interfaces at a time.It is also necessary to increase throughput and preserve fairness among data flows in large Data centers, which is possible through replacing TCP by Multipath TCP as described in [1].
At this point, it is necessary to mention big limitation of TCP.This protocol is not able to take advantage of multiple active interfaces, which means that TCP can utilize only one interface at a time.There are some other protocols that were meant to replace TCP, but it has not happene yet, and TCP is still main protocol for Internet communication.One of that protocols is SCTP (Stream Control Transmission Protocol), [2], [3].It is one of the newer protocols that were developed with multihoming in mind.SCTP has many interesting features like fail-over and possibility to use multiple paths at the same time.However, SCTP is still not widely used.This situation is caused mainly by the fact that Internet applications have to be redesigned to implement SCTP and NAT (Network Address Translation) is also problematic with SCTP.
In the new era of modern communications, we find Multipath TCP very promising.This new protocol is capable of using multiple interfaces and splitting one TCP session to multiple ones utilizing different network paths.
In this paper, we would like to demonstrate results of performance measurement of Multipath TCP over real mobile broadband networks.We focused our measurement especially on LTE networks.
The paper is organized as follows.At first we introduce Multipath TCP protocol and its specific implementation.Then we describe the methodology of our measurement and result evaluation.Then we show results of measurements on real LTE network.

Multipath TCP
Multipath TCP [4] is an extension of Advantages of Multipath TCP: • Reliability and connection persistency: it is possible to add or remove paths without connection loss.
• Increased throughput: every single connection through diverse path increase amount of available throughput.
• Transparent for applications: applications communicate the same way as on TCP.
Disadvantages of Multipath TCP: • Fixed topology: Only client server communication.
• TCP options problem: TCP/IP headers are changed on many devices in network (NAT (Network Address Translation), IPS (Intrusion Prevention System), Firewalls etc.).TCP/IP packet fields which could be modified through network devices are shown in the Fig. 1.
When initial connection is established and both hosts are aware of opposing host IP addresses, it is possible to open new sub-flows utilizing unused addresses.New sub-flows are typically initialized on host, which initiated original communication, but it is not limited to only opening connections by initiator.Another host can initiate new sub-flows too.These additional connections are established using MP_JOIN option in TCP header and special bit indicates if newly created sub flow is backup flow or if it becomes part of the connection immediately.This is further described in section 3.2 of RFC 6824 [4].Sub flows can be established between any combinations of hosts IP addresses.If any sub-flow fails, there is no connection drop or packet loss in case that at least one sub-flow is still alive and working.
One of the points of interest in our research is congestion avoidance and control in Multipath TCP.Because of utilizing multiple flows algorithm for congestion avoidance and control, it is different from the algorithm used in standard TCP.Congestion control for standard TCP protocol is described by Alg. 1.Additionally, at the start of a connection and after retransmission timeout, an exponential increase is used in all further presented algorithms.
The variables used in the pseudocode are defined as follows: • CW : congestion window size.
• CW P : congestion window size for path P .
• P S: packet size.
• n: number of paths.
Different implementations of Multipath TCP use different algorithms.Let's take a closer look on two of them.The first one is Equally-Weighted TCP (EWTCP).In this scenario, each flow runs its own AIMD (Additive Increase/Multiplicative Decrease) algorithm.This algorithm is modified because increase Algorithm 1 Regular TCP -AIMD.decrease CW by CW 2 ; 7: end for More about design, implementation and evaluation of congestion control can be found in [6].Another point of interest in Multipath TCP can be an algorithm, which is used to choose paths for Multipath TCP session.Proper path selection for Multipath TCP sub-flows can dramatically influence connection performance metrics.To ensure specific latency, jitter or bandwidth it is crucial to select proper paths, which can fulfill desired requirements on network connection.In our measurement, we used full mesh topology because of its simplicity and because of the underlying network topology we used for measurement Fig. 2. We used server with two Gigabit Ethernet interfaces connected to Internet over network with more than sufficient capacity.On the client side, we used two LTE modems.Multipath TCP was setup for utilizing all combinations of IP addresses available.IP addresses were configured as one IP address per interface.As a traffic source and traffic destination, we used Iperf tool [7].

MP-TCP
There are also other approaches to path selection like Adaptive Path Selection for Multipath Transport Protocols in the Internet [8] or Multipath TCP Path Selection using PCP [9].Advanced algorithm for path selection takes its place in more complex topologies with different capacity and quality paths.

Methodology
Compared to the traditional TCP there are no tools to analyze Multipath TCP data flows.Therefore, the simple methodology was chosen.The methodology analyzes each data stream and then determine the overall transfer rate.This approach is based on the methodology published in [10].It uses generated TCP data flow by program named Iperf.Flow is generated between a client and a server.Connection of the server to the Internet must be at least the sum of the individual transmission speeds of all tested technologies.On the client, it is actual data flow captured over all used interfaces (LTE modems).After that program tcptrace [11] was used to obtain detailed information about transmission speed, delay, sequence numbers and various statistics from the actual TCP sessions.The results obtained from the tcptrace analysis and program Iperf were then processed by the analysis tool UDA (Universal Data Analyzer).

1) Universal Data Analyzer Framework
UDA is a modular software tool for processing and analyzing data obtained from the measurement and simulation.Supported data sources include various tools (tcpdump, tcptrace, python, bash) and simulation tool OMNeT++ [12].UDA framework is being developed under a grant TA02011015 and will soon be released under one of the open license.For the analysis of Multipath TCP protocol, the module in UDA framework was created.This module uses information about each contribution flow and creates an image of total throughput over Multipath TCP connection.Also, it performs basic statistical analysis.The actual output of this module is then presented in this work as graphs and additional statistical information.

Results
The aim of the measurement is to verify the behavior of the current implementation of the protocol Multipath TCP in an environment of LTE mobile network.The first objective was to test the ability of the combining individual channels in varying environment of mobile networks.The second objective was to test the ability to regenerate after failure of one of the used channels.All presented measurements were performed in the uplink direction.For a data flow generation, we used the TCP protocol (Iperf).The experiment was set in a way that one of the modems had worse signal then other.This is reflected in a difference in the delay profiles of the individual transmission channels.Parameters of the radio interface and the place of measurement are summarized in Tab. 1 (where RSRP is Reference Signal Received Power and RSRQ is Reference Signal Received Quality).The measurement process was divided into three parts:

1) Common TCP Flow Measurement
In the first part we verified the maximum throughput of the data channel without the participation of Multipath TCP protocol.The results are shown in Tab. 2 and in the Fig. 3.
Tab. 2: Summary results of the measurement of the single common TCP flow.
43.25 ms, σ = 1.94 ms Measurement duration 25 s The results correspond to measurements carried out in a given place using other applications on mobile phones and computers.Measurements were performed at the interface ppp1 which had a better signal.The measured data confirms the behavior of LTE technology, which due to significantly lower delays (compared to technologies GPRS/EDGE or older generation of UMTS) can create much better conditions for data transfer using TCP protocol.Also the transmission speed and delay have very low dispersion.

2) Multipath TCP Throughput Measurement
Verification of the ability to combine different transmission channels was performed in the second measurement.This measurement used the same configuration of the measuring data stream as in the first measurement.The results obtained are shown in Tab. 3 and in the Fig. 4.
In the results can be seen that interface ppp0 had worse signal compared to ppp1 which resulted in the higher values of RTT while maintaining similar levels of total throughput.The Fig. 5 also shows the behavior of individual transmission rates for each channel.The total transfer rate corresponds to the sum of the contributing data streams.Even with worsened conditions on the physical layer of channel ppp0, Multipath TCP was able to bring together the different data  streams.There is also an increase in radio resource utilization via MP-TCP.When utilizing MP-TCP the final throughput at single modem interface is higher than the throughput of single TCP Flow as shown on Fig. 2 and Fig. 4.

3) Multipath TCP Disconnecting Measurement
Ability to recover from the failure of one of the channels was verified in the third measurement.The configuration of measuring data stream was same as in the previous two cases.During the measurements the antenna from channel number 1 (ppp1 interface) were randomly disconnected (2×).This disconnection resulted in signal loss, and therefore the connection was interrupted.
The results of the measurements are shown in Tab. 4 and Fig. 6 and Fig. 7.The graph with total transfer rate Fig. 6 has also transfer rate obtained from the Iperf tool.
Tab. 4: Summary results of the measurement of the Multipath TCP flows with disconnection of the ppp1 interface.

Parameter Value
T hroughput  Progression of throughput in Fig. 6 confirms proper operation of the activation and deactivation of channels.When one of the channels is disabled, the established TCP connection is not terminated, but throughput fall to sum of available connections.The activation of a new or previously disabled transmission chan- nel has no impact on the stability of existing connection.Delays in each channel (see Fig. 7) corresponds to the behavior that has been found in previous measurements.The total throughput of Multipath TCP obtained by our methodology is identical to the throughput obtained from the output of Iperf.

Conclusion
The presented measurements demonstrate capability of Multipath TCP to utilize multiple network paths effectively and provide increased availability and bandwidth.The experiments prove that this protocol is mature now and is ready for production use.
Our experiments show that this protocol has minimum overhead, and final bandwidth is the sum of subflows bandwidth.If there is diversity among network sub-flow path, then bandwidth is maximized.Multipath TCP also reacts very well on link fault, where neither packet loss is detected nor is latency increased.If faulty line is back in operating state Multipath TCP adds new sub-flow almost instantly, thus increasing bandwidth to its original state.Because of increased resiliency and availability by Multipath TCP connection it would be convenient to deploy this protocol into industrial networks where these features are demanded.
As future work, we will focus on Multipath TCP protocol analysis improvement mainly on RTT and jitter.We will also invest in testing Multipath TCP with other tools, namely tools for measuring systems of realtime.We would like to use methodologies for measurement and analysis presented for VoIP networks [13] and industrial networks [14].

Fig. 1 :
Fig.1: TCP/IP packet fields (in red) which could be modified through network devices.

Fig. 3 :
Fig. 3: Throughput and round trip time measurement of single TCP flow.

Fig. 6 :
Fig. 6: Throughput measurement of Multipath TCP flows with disconnection of the ppp1 interface.

Fig. 7 :
Fig. 7: Round trip time measurement of Multipath TCP flows with disconnection of the ppp1 interface.
Internet Protocol) addresses then source host can finally open additional sub-flows to the destination host.Every sub-flow is treated as a standard TCP connection when transported through the network.It is possible to use different IP addresses or different port numbers with single IP address on source host or destination host side of communication.
TCP, which allows single connection to be split over multiple network paths.At first a single network connection is established to the destination host.When the initial connection is established and source host is aware of destination host IP ( The second one is The Coupled Congestion Control.In this scenario, the congestion windows are not maintained for each sub-flow separately but there is one common congestion window for all sub-flow belonging to one connection.Coupled Congestion Control is described by Alg. 3.
1: CW is Global Congestion Window size maintained for all sub flows.2: for every incoming ACK from path P do 5: for every each loss on path P do 6: Table of measurement parameters.