1. Introduction
With the continuous development of network technology, we can connect terminal devices to the network via 5G, 4G, 3G, WiFi, etc. [
1,
2,
3,
4,
5]. These terminal devices utilize multiple end-to-end transmission paths. However, regular TCP mainly utilizes a single interface, which cannot effectively utilize multiple ports, resulting in a waste of resources [
6,
7]. MPTCP solves this issue by allowing multiple paths to be used between two end hosts to transport a single data stream [
8,
9,
10,
11,
12], as shown in
Figure 1. In real-world applications, MPTCP has proven its excellent performance. In 2013, Apple officially deployed the MPTCP protocol in its IOS7 commercial operating system. Siri’s intelligent voice service is able to transmit data simultaneously using both WiFi networks and cellular networks, which improves the fluency of the system [
13]. In 2015, South Korea’s Samsung was the first to deploy the MPTCP protocol in its Android smartphone, Galaxy S6. This smartphone can use LTE and WiFi networks in parallel, improving the maximum network connection speed to 1.17 Gbps [
14].
MPTCP can improve bandwidth utilization, increase network throughput [
15,
16,
17] and remain reliable [
18,
19,
20]. However, MPTCP consumes extra energy by opening multiple network interfaces at the same time during use. This has emerged as an energy efficiency issue for battery-powered mobile wireless devices [
21,
22,
23,
24,
25,
26]. The increasing concern in green computing has led to the design of energy-efficient protocols for the current Internet [
27,
28]. We hope that battery-powered mobile devices will be able to receive more data with the same amount of energy consumption, thus saving energy on the network at the same time [
29,
30,
31,
32,
33].
The researchers have proposed several algorithms to tackle the problem of MPTCP energy optimization. Chen et al. [
34] proposed an energy-aware optimization algorithm named eMTCP that uses a traffic offload controller to move the right amount of traffic from a high-energy port to a low-energy port. It works because when a high-energy port has a packet that needs to be transmitted, the subflow interface status detector observes whether the low-energy port is idle and notifies the traffic offload controller if it is idle. In this case, the path with lower energy consumption will take on more traffic. Similarly, energy-saving algorithms were also proposed to reduce energy consumption for mobile devices when MPTCP is enabled in [
35], in which all available paths are periodically probed to transfer the traffic to the most energy-efficient path and mute the other paths. However, when the performance of the path with the lowest energy consumption becomes poor, continuing to use this path will reduce throughput, reduce network performance and prevent existing mechanisms from taking full advantage of all available paths in MPTCP. Thus, knowing which paths should be selected based on which criteria to achieve the goal of both energy consumption and throughput improvement is of critical importance. To achieve this aim, an energy-saving scheduling system for the multipath TCP (ES-MPTCP) algorithm is proposed in this work. The major contributions of this work are summarized as follows.
To reduce energy consumption while maintaining network throughput. We define a target optimization function in the proposed ES-MPTCP algorithm, which takes into account both the average throughput and energy consumption, aiming to efficiently use all available paths and find the appropriate set of subflows for a certain application.
The key challenges in the proposed ES-MPTCP algorithm are how to estimate data volume and energy consumption. In this paper, the transferred data are estimated by the transmission model that considers MPTCP’s four intertwined congestion control algorithms for the congestion window, round-trip time (RTT) and packet loss rate. Energy consumption is estimated by multiplying power consumption with time.
The performance of the proposed ES-MPTCP is validated by conducting experiments on the Linux real experimental platform. The result shows that the ES-MPTCP algorithm can improve throughput and reduce energy consumption. Compared to the eMTCP and lowRTT algorithms, the energy efficiency is increased by 20% and 23%, respectively.
The rest of this paper is organized as follows. In
Section 2, the related work on MPTCP energy optimization is introduced. Then, we presented the energy consumption problem of MPTCP in
Section 3. In
Section 4, we describe the algorithm in four parts, including the optimization model, the energy-saving model, the analytical model for data transmission and the workflow of the proposed ES-MPTCP algorithm. The experimental results and analysis are presented in
Section 5.
Section 6 summarizes the paper and introduces future work.
2. Related Work
Nowadays, the research on MPTCP energy optimization is mainly carried out from two aspects, namely congestion control and path scheduling, as shown in
Table 1. The performance of MPTCP is affected by factors such as bandwidth, packet loss and RTT [
36], which are the basis of congestion control and path scheduling.
There are some algorithms designed from the aspect of congestion control. In [
37], a path’s traffic sharing strategy is utilized to control the energy cost of MPTCP, which can transfer the traffic to a path with a lower energy cost. In [
38,
39], an energy-saving variant of MPTCP for data centers is proposed to improve energy efficiency by minimizing the completion time. In this method, additional subflow cancellation mechanisms are designed to eliminate subflows that increase host CPU power due to link sharing. Peng et al. [
40] considered two main types of mobile applications, real-time applications with a fixed duration and file transfer applications with a fixed data size. For these two applications, path rate adjustment schemes considering network states and energy cost are proposed. Pham et al. [
41] proposed an energy-saving multipath congestion control protocol called emReno. This mechanism makes the size of the congestion window increase inversely proportional to the energy consumption, so more costly paths have less impact on the congestion window. Zhao et al. [
22] summarized the relationship between energy consumption, average throughput, path delay and different network scenarios based on experiments with the MPTCP Linux kernel. The basic parameters of the multi-path congestion control model related to MPTCP energy efficiency are obtained by existing algorithms.
The other algorithms are designed from the aspect of path scheduling. Chen et al. [
34] proposed an energy-aware energy optimization algorithm named eMTCP to move the right amount of traffic from the high-energy port to the low-power port. The idea of the eMTCP algorithm is to set up a subflow interface state detector (SISD) and a traffic offload controller. When the high-energy port has a packet to be transmitted, the subflow interface state detector observes whether the low-power port is idle and notifies the traffic offload controller if it is. Lim et al. [
42] proposed an energy-saving scheduling mechanism called eMPTCP. The eMPTCP has developed an MPTCP energy consumption model, whose key parameters are derived from evaluations of mobile devices with cellular and WiFi interfaces. Benefiting from this model, the optimization region can be identified compared to standard TCP and MPTCP. eMPTCP selects a path for data transmission based on this operating region. In [
35], energy-saving mechanisms are designed to reduce the energy consumption for mobile devices when MPTCP is enabled. All paths are cyclically probed in order to select the most energy-efficient path and mute the other paths. However, the throughput is limited to the level achieved by only one path. In [
43], a method for generating a multi-path scheduler is formalizing the multi-path schedulers as Markov decision processes (MDPs). Based on the energy models of different radio interfaces and the communication history records continuously accumulated by device users, the scheduler for different applications is calculated by solving the Markov decision process offline. These schedulers are evaluated against lots of random application models and some actual applications. In [
44], a novel MPTCP energy-aware multi-path content delivery method driven by the quality of experience (QoE) is proposed, which is named MPTCP-QE. The MPTCP-QE solution first provides an application rate-aware energy-saving sub-flow management strategy to tradeoff the throughput performance and energy consumption for mobile phones. Then, it uses the available bandwidth-aware congestion window rapid recovery strategy to prevent the sender from the unnecessary slow start and rapid utilization of wireless resources. Then, it further introduces a novel receiver-driven energy-efficient SACK strategy to help the receiver detect SACK loss in time and trigger loss recovery in a more energy-efficient manner. Palash et al. [
23] defined three steps to work in cycles to continuously help mobile devices balance bandwidth requirements and energy efficiency.
Table 1.
Comparison table of the state-of-art literatures.
Table 1.
Comparison table of the state-of-art literatures.
Paper | Category | Objective | Description | Network |
---|
Le et al. [37] | Congestion control | Low Energy, Load-balancing | The path traffic sharing strategy is used to control the energy cost of MPTCP and transfer the traffic to the path with low energy cost. | Hybrid Network |
Zhao et al. [38,39] | Congestion control | Low Latency, Low Energy | It is proposed to improve energy efficiency by minimizing completion time. An additional subflow cancellation mechanism is designed to eliminate the subflow that increases the power consumption of the host CPU due to link sharing. | Datacenter Network |
Peng et al. [40] | Congestion control | Low Energy | For real-time application with a fixed duration and file transfer applications with a fixed data size, a path rate adjustment scheme considering network states and energy consumption is proposed. | Wireless Network |
Pham et al. [41] | Congestion control | Low Energy, Load-balancing | This algorithm makes the increase in congestion window inversely proportional to the energy consumption. Therefore, the greater the path energy consumption, the smaller the impact on the congestion window. | Hybrid Network |
Zhao et al. [22] | Congestion control | Low Energy | The relationship between energy consumption, average throughput, path delay and different network scenarios is summarized, and a window increase factor is designed to shift traffic to low delay and energy-saving path. | Datacenter Network |
Chen et al. [34] | Path scheduling | Low Energy, Improved user -perceived quality | The algorithm transfers the traffic from the high-energy port to the low-energy port when the low-energy port is idle. | Wireless Network |
Lim et al. [42] | Path scheduling | Low Energy | The algorithm selects the data transmission path according to the optimization area compared with standard TCP and MPTCP. | Wireless
Network |
Raiciu et al.
[35] | Path
scheduling | Low Energy | All paths are detected circularly to select the most
energy-saving path and eliminate other paths.
However, the throughput is limited to only one path. | Wireless
Network |
Pluntke et al.
[43] | Path
scheduling | Low Energy | This algorithm computes schedulers for different
applications by solving a Markov decision process
offline. | Wireless
Network |
Cao et al.
[44] | Path
scheduling | Low Energy | The algorithm aims to balance the throughput
performance and energy consumption of mobile
phones. | Wireless
Network |
Palash et al.
[23] | Path
scheduling | Low Energy | The need to switch back to a single path is continu-
ously evaluated based on bandwidth requirements
and energy efficiency. | Wireless
Network |
Based on the above analysis, we find that the congestion control-based algorithms improve energy efficiency by limiting the congestion window over the subflow with higher energy consumption, while the scheduling algorithms mainly shift traffic from the high-energy port to the low-energy port. However, knowing which subflows should be selected for different applications based on what criteria is quite challenging. For example, if selecting paths based on the energy cost, as most existing algorithms do, continuing to use the path with lower energy consumption will reduce throughput when the performance of that path deteriorates. Therefore, in order to reduce energy consumption and ensure network throughput, this paper proposes an energy-saving scheduling algorithm, which finds different optimal subflow sets for different applications based on the various current network status.
3. Problems and Motivation
MPTCP can establish multiple TCP transmission paths at the same time and supports the simultaneous transmission of data onto multiple paths. Although MPTCP can improve bandwidth utilization and throughput, it will increase energy costs when maintaining multiple paths to data transmission. Therefore, how to weigh the throughput and energy consumption has become a hot topic of research.
To date, to solve the problem of MPTCP energy consumption, researchers have proposed many algorithms. Existing algorithms mainly use energy cost as the only criterion for path selection. Specifically, traffic is offloaded to a low-energy cost path. However, when the low-energy path performance deteriorates, continuing to use this path will not only increase energy consumption but also reduce throughput.
To verify this problem, we take the eMTCP algorithm as an example and test it in a 3G+3G scenario and a 3G+WLAN scenario based on a Linux real experimental platform. The energy consumption parameters [
45] are shown in
Table 2, where
is denoted as the power cost per unit throughput for receiving data.
is denoted as the sunk power cost for being active. The sunk power cost of WLAN is much smaller than 3G. Thus, the eMTCP algorithm considers the WLAN path as a low energy consumption path, and more data will be carried via the WiFi interface [
34]. The network parameters are set according to the link characteristics of WLAN and 3G [
46] in WANem, which is shown in
Table 3.
The results are shown in
Figure 2a,b, which depict the energy consumption and throughput of eMTCP and lowRTT with different file sizes. Among them, the Lowest-RTT-First (lowRTT) algorithm is the current default scheduler, which sends the packet first on the lowest RTT subflow until its congestion window is filled with the packet. Then, the packet is sent on the next higher RTT subflow [
47]. According to
Figure 1, eMTCP consumes more energy than lowRTT, and the throughput of eMTCP is lower than lowRTT.
To illustrate the reason, the proportion of the packets transmitted over the WLAN path with the eMTCP and lowRTT algorithms when the file size is 800KB and 900KB, respectively, are made into statistics. The results are shown in
Figure 3. According to
Figure 3, we find that the packet proportion of the WLAN path transmission of eMTCP is higher than lowRTT. This means that the WLAN path of the eMTCP algorithm takes on more data than lowRTT. The reason lies in that the eMTCP algorithm always selects the low-energy WLAN path for data transmission when the low-energy cost path is idle.
We also tested the throughput of the WLAN path of the two algorithms: eMTCP and lowRTT.
Figure 4 shows the throughput of the WLAN path with the two algorithms of eMTCP and lowRTT. As depicted in this figure, the throughput of the WLAN path in eMTCP is smaller than that of the WLAN path in lowRTT. This is because the packet loss rate of the WLAN path is about 1%. When the data transmitted by the WLAN path increases, the number of packet losses will increase. Packet loss will cause timeout retransmissions or fast retransmissions, resulting in poor path performance. According to
Figure 3, the WLAN path of the eMTCP algorithm takes on more data than lowRTT. Therefore, the eMTCP algorithm loses a higher number of packets and retransmits a higher number of packets on the WLAN path than lowRTT as depicted in
Figure 5. Therefore, the WLAN path performance of the eMTCP algorithm is worse than that of lowRTT, causing it to have a higher completion time than lowRTT, as depicted in
Figure 6. The completion time is directly proportional to the energy consumption, which increases when the completion time is longer. Therefore, eMTCP consumes more energy than lowRTT.
From the above analysis, we can conclude that it is unwise to use only energy costs as the sole criterion for path selection. If a low-energy path continues to be used when its performance deteriorates, the network’s throughput performance will decrease and energy consumption will increase. To solve this problem, we propose an ES-MPTCP scheduling algorithm. A target optimization function is defined based on both average throughput and energy consumption. The target of ES-MPTCP is to find out the subflows for different applications to reduce energy consumption while ensuring network throughput.
4. The Proposed ES-MPTCP
The ES-MPTCP algorithm aims to reduce energy consumption while ensuring network throughput. The ES-MPTCP algorithm combines energy consumption and throughput to design a target optimization function to determine the appropriate number of subflows to transmit data.
As the target optimization function considers both energy consumption and throughput, we must first know how to estimate them. In this section, we divide it into four parts to describe our algorithm. First, our target optimization function, which considers both the energy consumption and throughput. Then, the energy cost model is designed to estimate each subflow’s energy consumption. Furthermore, the analytical model for the MPTCP data transmission is designed to estimate the total amount of data. Finally, how to find out the optimal subflows by the ES-MPTCP algorithm is given out.
4.1. Optimization Model
Due to the differences between subflows, the throughput and energy consumption varies from one subflow to another. Thus, we have to solve the problem of which subflows should be selected. To achieve this aim, we first describe the designed target optimization function in this subsection.
The target optimization function is defined based on the total throughput and total energy consumption of all subflows to evaluate the overall performance of the network, which can be expressed as:
T is defined as the time for data transmission. is the throughput of subflow, and represents the total throughput of k subflows. denotes the total power consumed of k subflows. represents the total energy consumption of k subflows. We will describe the total power consumption and the total energy consumption in the next subsection.
We can see from Equation (
1) that the larger the total throughput, the smaller the total energy cost and the larger the value of
; thus, the overall performance of the network will improve. In this paper, we need to calculate the
value that maximizes
, which can help reduce energy consumption and ensure network throughput, i.e.,
.
4.2. The Energy-Saving Model
Energy efficiency is defined as the number of bits transmitted per joule energy, which can be described as the ratio of total data size to the sum energy consumption during transmission [
48]. The total data size can be described as the product of the average rate of
and the duration of connection
T. The transmission rate
can be represented as
, where
and
represent the current congestion window and the round trip time on path
r, respectively. The energy consumption can be described as the product of power consumption
and duration of connection
T.
Therefore, the energy efficiency is defined as:
where the power consumption
on subflow
r depends on the throughput
, as shown in Equation (
3), which applies to most wireless interfaces, such as 5G, 3G, and WiFi [
45,
48].
where
is defined as the power consumed per unit throughput when receiving data.
is defined as the sunk power cost for being active.
According to Equations (
2) and (
3), the energy efficiency can be simplified as the ratio of transmission rate and power consumption, which can be formulated as:
4.3. Modeling of Data Transmission
MPTCP’s congestion control process over each subflow is the same as regular TCP. More specifically, the congestion window size is doubled during the slow start phase and increases linearly during the congestion avoidance phase when no packet is lost as defined in Equation (
5). During the transmission of TCP, both Retransmission TimeOut (RTO) and duplicates ACK are treated as packet loss events. If a certain number of duplicate ACKs are received, the sender enters the fast recovery and fast retransmit phase, which sets the congestion window and SSThresh (
) to half the current window size. If an RTO occurs, TCP starts slow start and sets the congestion window to 1 [
49].
We use coupled congestion control in MPTCP to ensure network fairness and improve throughput and apply it to the congestion avoidance phase. Up to now, many coupled congestion control algorithms have been proposed, such as Linked Increases Algorithm (LIA) [
50], Opportunistic LIA (OLIA) [
51], Balanced LIA (Balia) [
52], Weighted Vegas (wVegas) [
53] and mVeno [
18], among which LIA is the default MPTCP congestion control algorithm. In LIA, the congestion window
for each ACK on subflow
r is calculated as:
Otherwise, the window is decreased as for each loss on subflow r.
and are the round trip time and the current window size on path of subflow r, respectively. denotes the set of all available paths for user u. According to this equation, LIA increases the congestion window size up to on any of its paths to keep fairness with regular TCP. Since the first term is usually less than , the second term can be usually ignored.
In this case, a simple loss-throughput formula is provided by a fixed-point analysis [
51] as:
LIA assigns a window proportional to the inverse of the loss probability for path r, and the total rate is equal to the rate obtained by a regular TCP user on the best path, i.e., .
Thus, the theoretical throughput calculation formula of the LIA algorithm can be obtained as:
4.4. The Proposed ES-MPTCP Algorithm
We propose a heuristic algorithm named ES-MPTCP, which is used to solve the problem of obtaining the optimal set of subflows. ES-MPTCP determines the optimal set of subflows k by maximizing . In this subsection, to maximize , we first sort the paths, and then k subflows are selected from all paths, where , and the average throughput and energy consumption of each path are estimated, and the objective optimization function is calculated. Finally, when the objective optimization function for data transmission is at the maximum, we take the subflow set at this time as the optimal subflow set.
4.4.1. Subflows Sorting
The energy efficiency of each subflow is shown in Equation (
4). The performance of the subflow increases as the energy efficiency of the subflow increases. According to Equation (
4), the energy efficiency formula can be described to
From the above formula, it can be seen that the higher the throughput of the subflow, the smaller the
, the higher the energy efficiency of the subflow and the better the performance of the subflow. Thus, according to Equation (
8), we can sort all the available subflows
in the ascending order, and the sorted collection is
. Then ES-MPTCP selects the first
k subflows in the subflow set
to transmit the flow with size of
, for each
k, we calculate
, where
.
4.4.2. The Proposed ES-MPTCP Algorithm
According to Equation (
7), for each
k, where
, we can calculate the average throughput of each path in the
k subflows. Meanwile, the completion time can be calculated as
, where
denotes the number of rounds transmitted by subflow
k.
represents the
of subflow
k, where subflow
k is the slowest subflow among all the
k subflows. Then, the value of the objective optimization function
is obtained according to Equation (
1). Finally, according to
, we obtain the value of
when
is maximum, and we select the subflows
for this application. This process is shown in Algorithm 1. The algorithm is suitable for use in a constantly changing network environment. In MPTCP, we update the set of selected paths in every RTT round.
Algorithm 1: The pseudocode of the proposed ES-MPTCP. |
|
5. Performance Evaluation
In this section, we test the ES-MPTCP algorithm performance based on two scenarios, namely, WLAN+3G and WLAN+WLAN in the Linux real environment and compare it with eMTCP and lowRTT algorithms. We analyze the performance of each algorithm by setting a different file size. The energy consumption, throughput and energy efficiency have all been taken into consideration.
5.1. Experimental Platform
The experimental testbed consists of one file server, two computers with WANem and one client. The network topology is shown in
Figure 7. This topology is widely used in existing works [
46,
54]. The server runs the Linux Ubuntu 12.10 operating system with the kernel version 3.14.33, and the client is running the Linux Ubuntu 14.04 operating system with the kernel version 4.1.0 that all have already applied protocol patches. The server is running on the Dell T1500, equipped with the Intel Xeon E5620 (2.4 GHz/12 M), 16 GB RAM, and a 600 GB Hard Disk. The client is running on the Lenovo E530C, equipped with Intel(R) Core(TM) i3-3110M
[email protected] processor, 4GB RAM and a 600 GB Hard Disk. As described in
Figure 7, the client is equipped with two Gigabit network interface cards to establish two subflows between the MPTCP servers
. We consider this as the common scenario (e.g., a client having two access networks like WiFi/4G) [
46,
55]. We install the MPTCP Linux kernel of version 0.90 [
22] on Ubuntu 14.04 and read energy consumption values from Intel’s RAPL driver in the client’s CPU.
We use the GNU Wget to retrieve binary documents over HTTP to generate TCP data traffic. The size of the Binary files ranges from 16 KB to 1 MB. We conduct experiments with the topology shown in
Figure 7. The energy consumption parameters are shown in
Table 2 [
40]. The network parameters are set with WANem following the link characteristics of WLAN and 3G links [
46], as shown in
Table 3.
5.2. Experimental Results
The default MPTCP with the lowRTT algorithm [
56] first sends packets on the subflow with the lowest RTT until its congestion window is filled with the packet. Then, the packet is sent on the subflow with the next highest RTT. According to
Table 3, the RTT of the WLAN path is lower than the 3G path, so the WLAN path is preferred in MPTCP. The eMTCP works by the fact that when the WLAN path is idle, the WLAN path is preferentially used until the congestion window is full. Then, the 3G path is used. However, once the WLAN path is idle, the data of the 3G path are offloaded to the WLAN path.
We evaluate the performance of ES-MPTCP, eMTCP and lowRTT in a 3G+WLAN scenario with different file sizes. The total energy, the Goodput and the energy efficiency are described in
Figure 8a–c.
The results show that the energy consumption of ES-MPTCP is lower than that of eMTCP and lowRTT, and the energy consumption can be reduced by up to 16.2%. The throughput of ES-MPTCP is higher than that of eMTCP and lowRTT and can increase the throughput by up to 13.6%. The energy efficiency of ES-MPTCP is higher than that of eMTCP and lowRTT, which is up to 20% higher than that of eMTCP and 23% higher than that of lowRTT.
The reason why the performance of eMTCP is worse than ES-MPTCP lies in the fact that eMTCP prefers to use the WLAN path due to its low energy, and it shifts more traffic to the WLAN path. However, random packet loss will occur on the WLAN path, and the number of lost packets increases with the increase in data packets transmitted on the path. This can be validated by
Figure 3 and
Figure 4, which show the proportion (%) of the packets transferred over the WLAN path and the Goodput over the WLAN path with different file sizes. According to these two figures, we find that eMTCP takes on more data over the WLAN path. This results in more packet loss, which triggers retransmission or timeout, resulting in lower throughput, as depicted in
Figure 4. This proves that only energy consumption is used for path selection, which can sometimes lead to performance degradation.
Although the performance of eMTCP is not as good as ES-MPTCP, it is better than lowRTT, which only selects the path according to the RTT of the path, without considering the energy consumption. The proposed ES-MPTCP takes both the RTT and the packet loss rate into consideration, and its target optimization function can choose a suitable path set for data transmission. As shown in
Figure 8a,b, when the file size reaches 600 KB, the throughput of ES-MPTCP is significantly higher than eMTCP and lowRTT. The energy consumption of ES-MPTCP is significantly lower than eMTCP and lowRTT.
In addition, we tested the throughput and the energy consumption for the WLAN path and 3G path. The results are shown in
Figure 9a,b. According to the two figures, when the file is larger than 800 KB, the throughput of the 3G path is higher than the WLAN path and the power consumption is lower than the WLAN path. When the file size is less than 800 KB, the 3G path has lower throughput and higher energy consumption than the WLAN path. Based on these experiments, we can conclude that the path we choose must also vary with the performance of the path when transferring files of different sizes.
When there is no heterogeneity between the two paths, there is no difference between eMTCP and lowRTT algorithms. Therefore, we only compare the lowRTT and ES-MPTCP algorithms in the case of the WLAN+WLAN scenario.
In the WLAN+WLAN scenario, we set different file sizes to evaluate the performance of ES-MPTCP and lowRTT under this scenario. The total energy and the Goodput are illustrated in
Figure 10a,b, respectively. As shown in these figures, the energy consumption of the ES-MPTCP algorithm is lower than the lowRTT algorithm and the throughput of the ES-MPTCP algorithm is higher than the lowRTT algorithm. The reason is as follows. Although the paths are not heterogeneous in the WLAN+WLAN scenario, packets are lost randomly on both paths of WLAN. The performance of the two WLAN paths and their throughputs are different. ES-MPTCP can dynamically adjust the subflows according to the link status in real-time to obtain the optimal subflow set. Therefore, ES-MPTCP performs best.
6. Conclusions and Future Work
In this paper, we study the MPTCP energy-saving optimization scheduling systems, and it is found that many algorithms mainly use energy cost as the only criterion for path selection. The path with lower energy consumption will take on more traffic. When the performance of the low energy consumption path becomes worse, its throughput will decrease and the energy consumption will increase. In this paper, we propose the ES-MPTCP algorithm for this problem. ES-MPTCP designed a target optimization function that can calculate how many subflows to use for data transmission, which can reduce energy consumption while ensuring network throughput. We compare the performance of the proposed ES-MPTCP, lowRTT and eMTCP under different scenarios. The experimental results prove that our algorithm performs better than the other two algorithms, which improves throughput and reduces energy consumption. Future work will involve research into algorithms for optimizing energy consumption in video streaming scenarios and energy performance evaluation of MPTCP in virtualized cloud environments.
Author Contributions
Conceptualization, P.D. and L.Z.; methodology, P.D. and R.S.; validation, R.S.; writing—original draft preparation, P.D. and R.S.; writing—review and editing, P.D., R.S., Y.L., C.N., J.X., K.G. and L.Z.; visualization, R.S. All authors have read and agreed to the published version of the manuscript.
Funding
This research was supported in part by the National Natural Science Foundation of China (Nos. 61602171, 61572191).
Acknowledgments
The authors are grateful to the editors and the reviewers for their insightful comments and suggestions.
Conflicts of Interest
The authors declare no conflict of interest.
References
- Xing, Y.; Han, J.; Xue, K.; Liu, J.; Pan, M.; Hong, P. MPTCP meets big data: Customizing transmission strategy for various data flows. IEEE Netw. 2020, 34, 35–41. [Google Scholar] [CrossRef]
- Wei, W.; Xue, K.; Han, J.; Xing, Y.; Wei, D.S.L.; Hong, P. BBR-based congestion control and packet scheduling for bottleneck fairness considered multipath TCP in heterogeneous wireless networks. IEEE Trans. Veh. Technol. 2021, 70, 914–927. [Google Scholar] [CrossRef]
- Secci, S.; Pujolle, G.; Nguyen, T.M.T.; Nguyen, C.S. Performance-cost trade-off strategic evaluation of multipath TCP communications. IEEE Trans. Netw. Serv. Manag. 2014, 11, 250–263. [Google Scholar] [CrossRef]
- Wang, Z.; Li, T.; Xiong, N.; Pan, Y. A novel dynamic network data replication scheme based on historical access record and proactive deletion. J. Supercomput. 2012, 62, 616. [Google Scholar] [CrossRef]
- Guo, W.; Xiong, N.; Vasilakos, A.V.; Chen, G.; Cheng, H. Multi-source temporal data aggregation in wireless sensor networks. Wirel. Pers. Commun. 2011, 56, 359–370. [Google Scholar] [CrossRef]
- Zhao, J.; Liu, J.; Zhang, C.; Cui, Y.; Jiang, Y.; Gong, W. MPTCP+: Enhancing adaptive http video streaming over multipath. In Proceedings of the 2020 IEEE/ACM 28th International Symposium on Quality of Service (IWQoS), Hang Zhou, China, 15–17 June 2020; pp. 1–6. [Google Scholar]
- Yang, W.; Dong, P.; Cai, L.; Tang, W. Loss-aware throughput estimation scheduler for multi-path TCP in heterogeneous wireless networks. IEEE Trans. Wirel. Commun. 2021, 20, 3336–3349. [Google Scholar] [CrossRef]
- Ferlin, S.; Kucera, S.; Claussen, H.; Alay, O. MPTCP meets fec: Supporting latency-sensitive applications over heterogeneous networks. IEEE/ACM Trans. Netw. 2018, 26, 2005–2018. [Google Scholar] [CrossRef] [Green Version]
- Wei, W.; Xue, K.; Han, J.; Wei, D.S.L.; Hong, P. Shared bottleneck-based congestion control and packet scheduling for multipath TCP. IEEE/ACM Trans. Netw. 2020, 28, 653–666. [Google Scholar] [CrossRef]
- Sathyanarayana, S.D.; Lee, J.; Lee, J.; Grunwald, D.; Ha, S. Exploiting client inference in multipath TCP over multiple cellular networks. IEEE Commun. Mag. 2021, 59, 58–64. [Google Scholar] [CrossRef]
- Wu, F.; Yang, W.; Sun, M.; Ren, J.; Lyu, F. Multi-path selection and congestion control for ndn: An online learning approach. IEEE Trans. Netw. Serv. Manag. 2020, 18, 1977–1989. [Google Scholar] [CrossRef]
- Yao, Y.; Xiong, N.; Park, J.H.; Ma, L.; Liu, J. Privacy-preserving max/min query in two-tiered wireless sensor networks. Comput. Math. Appl. 2013, 65, 1318–1325. [Google Scholar] [CrossRef]
- Available online: Https://support.apple.com/en-us/HT201373 (accessed on 5 February 2022).
- Available online: Http://galaxys5guide.com/samsung-galaxy-s5-features-explained/galaxy-s5-download-booster/ (accessed on 5 February 2022).
- Thomas, Y.; Karaliopoulos, M.; Xylomenos, G.; Polyzos, G.C. Low latency friendliness for multipath TCP. IEEE/ACM Trans. Netw. 2020, 28, 248–261. [Google Scholar] [CrossRef]
- Lee, C.; Jung, J.; Chung, J.-M. Deft: Multipath TCP for high speed low latency communications in 5g networks. IEEE Trans. Mob. Comput. 2020, 20, 3311–3323. [Google Scholar] [CrossRef]
- Kimura, B.Y.L.; Lima, D.C.S.F.; Loureiro, A.A.F. Packet scheduling in multipath TCP: Fundamentals, lessons, and opportunities. IEEE Syst. J. 2021, 15, 1445–1457. [Google Scholar] [CrossRef]
- Dong, P.; Wang, J.; Huang, J.; Wang, H.; Min, G. Performance enhancement of multipath TCP for wireless communications with multiple radio interfaces. IEEE Trans. Commun. 2016, 64, 3456–3466. [Google Scholar] [CrossRef] [Green Version]
- Tong, H.; Wang, T.; Zhu, Y.; Liu, X.; Wang, S.; Yin, C. Mobility-aware seamless handover with MPTCP in software-defined hetnets. IEEE Trans. Netw. Serv. Manag. 2021, 18, 498–510. [Google Scholar] [CrossRef]
- Zhang, Y.; Tourrilhes, J.; Zhang, Z.-L.; Sharma, P. Improving sd-wan resilience: From vertical handoff to wan-aware MPTCP. IEEE Trans. Netw. Serv. Manag. 2021, 18, 347–361. [Google Scholar] [CrossRef]
- Kaup, F.; Wichtlhuber, M.; Rado, S.; Hausheer, D. Can multipath TCP save energy? a measuring and modeling study of MPTCP energy consumption. In Proceedings of the 2015 IEEE 40th Conference on Local Computer Networks, Clearwater Beach, FL, USA, 26–29 October 2015; pp. 442–445. [Google Scholar]
- Zhao, J.; Liu, J.; Wang, H. On energy-efficient congestion control for multipath TCP. In Proceedings of the 2017 IEEE 37th International Conference on Distributed Computing Systems, Atlanta, GA, USA, 5–8 June 2017; pp. 351–360. [Google Scholar]
- Palash, M.R.; Chen, K.; Khan, I. Bandwidth-need driven energy efficiency improvement of MPTCP users in wireless networks. IEEE Trans. Green Commun. Netw. 2019, 3, 343–355. [Google Scholar] [CrossRef]
- Wu, D.; Sun, X.; Ansari, N. An fso-based drone assisted mobile access network for emergency communications. IEEE Trans. Netw. Sci. Eng. 2019, 7, 1597–1606. [Google Scholar] [CrossRef]
- Wan, Z.; Xiong, N.; Ghani, N.; Vasilakos, A.V.; Zhou, L. Adaptive unequal protection for wireless video transmission over ieee 802.11 e networks. Multimed. Tools Appl. 2014, 72, 541–571. [Google Scholar] [CrossRef]
- Wu, M.; Tan, L.; Xiong, N. A structure fidelity approach for big data collection in wireless sensor networks. Sensors 2015, 15, 248–273. [Google Scholar] [CrossRef] [PubMed] [Green Version]
- Nedevschi, S.; Popa, L.; Iannaccone, G.; Ratnasamy, S.; Wetherall, D. Reducing network energy consumption via sleeping and rate-adaptation. In Proceedings of the NsDI’08: 5th USENIX Symposium on Networked Systems Design and Implementation, San Francisco, CA, USA, 16–18 April 2008; Volume 8, pp. 323–336. [Google Scholar]
- Christensen, K.; Reviriego, P.; Nordman, B.; Bennett, M.; Mostowfi, M.; Maestro, J.A. IEEE 802.3 az: The road to energy efficient ethernet. IEEE Commun. Mag. 2010, 48, 50–56. [Google Scholar] [CrossRef]
- Abts, D.; Marty, M.R.; Wells, P.M.; Klausler, P.; Liu, H. Energy proportional datacenter networks. In ACM SIGARCH Computer Architecture News; ACM: Saint-Malo, France, 2010; Volume 38, pp. 338–347. [Google Scholar]
- Klickstein, I.S.; Sorrentino, F. Control distance and energy scaling of complex networks. IEEE Trans. Netw. Sci. Eng. 2018, 7, 726–736. [Google Scholar] [CrossRef] [Green Version]
- Yang, D.; Pang, Y.; Zhou, B.; Li, K. Fault diagnosis for energy internet using correlation processing-based convolutional neural networks. IEEE Trans. Syst. Man, Cybern. Syst. 2019, 49, 1739–1748. [Google Scholar] [CrossRef]
- Xia, F.; Hao, R.; Li, J.; Xiong, N.; Yang, L.T.; Zhang, Y. Adaptive gts allocation in ieee 802.15. 4 for real-time wireless sensor networks. J. Syst. Archit. 2013, 59, 1231–1242. [Google Scholar] [CrossRef]
- Gao, K.; Han, F.; Dong, P.; Xiong, N.; Du, R. Connected vehicle as a mobile sensor for real time queue length at signalized intersections. Sensors 2019, 19, 2059. [Google Scholar] [CrossRef] [Green Version]
- Chen, S.; Yuan, Z.; Muntean, G.-M. An energy-aware multipath-TCP-based content delivery scheme in heterogeneous wireless networks. In Proceedings of the 2013 IEEE Wireless Communications and Networking Conference, Shanghai, China, 7–10 April 2013; pp. 1291–1296. [Google Scholar]
- Raiciu, C.; Nicolescu, D.; Bagnulo, M.; Handley, M. Opportunistic mobility with multipath TCP. In Proceedings of the Sixth International Workshop on MobiArch, Bethesda, MD, USA, 28 June 2011; pp. 7–12. [Google Scholar]
- Paasch, C.; Ferlin, S.; Alay, O.; Bonaventure, O. Experimental evaluation of multipath TCP schedulers. In Proceedings of the 2014 ACM SIGCOMM Workshop on Capacity Sharing Workshop; ACM: Chicago, IL, USA, 2014; pp. 27–32. [Google Scholar]
- Le, T.A.; Hong, C.S.; Razzaque, M.A.; Lee, S.; Jung, H. ecMTCP: An energy-aware congestion control algorithm for multipath TCP. IEEE Commun. Lett. 2012, 16, 275–277. [Google Scholar] [CrossRef]
- Zhao, J.; Liu, J.; Wang, H.; Xu, C. Multipath TCP for datacenters: From energy efficiency perspective. In Proceedings of the IEEE INFOCOM 2017-IEEE Conference on Computer Communications, Atlanta, GA, USA, 1–4 May 2017; pp. 1–9. [Google Scholar]
- Zhao, J.; Liu, J.; Wang, H.; Xu, C.; Gong, W.; Xu, C. Measurement, Analysis, and Enhancement of Multipath TCP Energy Efficiency for Datacenters. IEEE/ACM Trans. Netw. 2020, 28, 57–70. [Google Scholar] [CrossRef]
- Peng, Q.; Chen, M.; Walid, A.; Low, S. Energy efficient multipath TCP for mobile devices. In Proceedings of the 15th ACM International Symposium on Mobile ad Hoc Networking and Computing; ACM: Philadelphia, PA, USA, 2014; pp. 257–266. [Google Scholar]
- Pham, L.; Vo, P.L.; Le, T.-A. An energy-aware multipath congestion control protocol for mobile devices. In Proceedings of the 2017 International Conference on Recent Advances in Signal Processing, Telecommunications & Computing, Da Nang, Vietnam, 9–11 January 2017; pp. 44–48. [Google Scholar]
- Lim, Y.S.; Chen, Y.-C.; Nahum, E.M.; Towsley, D.; Gibbens, R.J. Improving Energy Efficiency of MPTCP for Mobile Devices. arXiv 2014, arXiv:1406.4463. [Google Scholar]
- Pluntke, C.; Eggert, L.; Kiukkonen, N. Saving mobile device energy with multipath TCP. In Proceedings of the Sixth International Workshop on MobiArch; ACM: New York, NY, USA, 2011; pp. 1–6. [Google Scholar]
- Cao, Y.; Chen, S.; Liu, Q.; Zuo, Y.; Wang, H.; Huang, M. Qoe-driven energy-aware multipath content delivery approach for MPTCP-based mobile phones. China Commun. 2017, 14, 90–103. [Google Scholar] [CrossRef]
- Huang, J.; Qian, F.; Gerber, A.; Mao, Z.M.; Sen, S.; Spatscheck, O. A close examination of performance and power characteristics of 4G lte networks. In Proceedings of the 10th International Conference on Mobile Systems, Applications, and Services; ACM: Low Wood Bay, Lake District, UK, 2012; pp. 225–238. [Google Scholar]
- Ferlin, S.; Alay, O.; Hayes, D.; Welzl, M.; Dreibholz, T. Revisiting congestion control for multipath TCP with shared bottleneck detection. In Proceedings of the IEEE INFOCOM 2016—The IEEE International Conference on Computer Communications, San Francisco, CA, USA, 10–14 April 2016. [Google Scholar]
- Dong, P.; Xie, J.; Tang, W.; Xiong, N.; Zhong, H.; Vasilakos, A.V. Performance evaluation of multipath TCP scheduling algorithms. IEEE Access 2019, 7, 29818–29825. [Google Scholar] [CrossRef]
- Wang, W.; Wang, X.; Wang, D. Energy efficient congestion control for multipath TCP in heterogeneous networks. IEEE Access 2017, 6, 2889–2898. [Google Scholar] [CrossRef]
- Dong, P.; Yang, W.; Tang, W.; Huang, J.; Wang, H.; Pan, Y.; Wang, J. Reducing transport latency for short flows with multipath TCP. J. Netw. Comput. Appl. 2018, 108, 20–36. [Google Scholar] [CrossRef] [Green Version]
- Wischik, D.; Raiciu, C.; Greenhalgh, A.; Handley, M. Design, implementation and evaluation of congestion control for multipath TCP. In Proceedings of the Usenix Conference on Networked Systems Design and Implementation, Boston, MA, USA, 30 March–1 April 2011; pp. 99–112. [Google Scholar]
- Khalili, R.; Gast, N.G.; Popovic, M.; Boudec, J.Y.L. MPTCP is not pareto-optimal: Performance issues and a possible solution. IEEE/ACM Trans. Netw. 2013, 21, 1651–1665. [Google Scholar] [CrossRef] [Green Version]
- Peng, Q.; Walid, A.; Hwang, J.; Low, S.H. Multipath TCP: Analysis, design and implementation. IEEE/ACM Trans. Netw. 2016, 24, 596–609. [Google Scholar] [CrossRef] [Green Version]
- Cao, Y.; Xu, M.; Fu, X. Delay-based congestion control for multipath TCP. In Proceedings of the IEEE International Conference on Network Protocols, Austin, TX, USA, 30 October–2 November 2012; pp. 1–10. [Google Scholar]
- Kuhn, N.; Lochin, E.; Mifdaoui, A.; Sarwar, G.; Mehani, O.; Boreli, R. Daps: Intelligent delay-aware packet scheduling for multipath transport. In Proceedings of the 2014 IEEE International Conference on Communications (ICC), Sydney, NSW, Australia, 10–14 June 2014; pp. 1222–1227. [Google Scholar]
- Barik, R.; Ferlin, S.; Welzl, M. A linked slow-start algorithm for MPTCP. In Proceedings of the IEEE International Conference on Communications, Kuala Lumpur, Malaysia, 22–27 May 2016. [Google Scholar]
- Xue, K.; Chen, K.; Ni, D.; Zhang, H.; Hong, P. Survey of MPTCP-based multipath transmission optimization. J. Comput. Res. Dev. 2016, 53, 2512–2529. [Google Scholar]
| Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).