Optimizing TCP Performance in Multi-AP Residential Broadband Connections via Mini-Slot Access

The high bandwidth demand of Internet applications has recently driven the need of increasing the residential download speed. A practical solution to the problem has been proposed aggregating the bandwidth of 802.11 Access Points (APs) backhauls in range via 802.11 connections. Since 802.11 devices are usually single-radio, the communication to multiple APs on different radio-channels requires the introduction of a time-division multiple access (TDMA) policy at the client station. Current investigation in this area supposes that there is a sufficient number of TCP flows to saturate the Asymmetric Digital Subscriber Line (ADSL) behind the APs. However, this may be not guaranteed according to the user traffic pattern. As a consequence, a TDMA policy introduces additional delays in the end-to-end transmissions that will cause degradation of the TCP throughput and an under-utilization of the AP backhauls. In this paper, we first perform an in-depth experimental analysis with a customized 802.11 driver of how the usage of multi-AP TDMA affects the observed Round-Trip-Time (RTT) of TCP flows. Then, we introduce a simple analytical model that accurately predicts the TCP RTT when accessing the wireless medium with a Multi-AP TDMA policy. Based on this model, we propose a resource allocation algorithm that runs locally at the station and it greatly reduces the observed TCP RTT with a very low computational cost. Our proposed scheme can improve up to 1:5 times the aggregate throughput observed by the station compared to state-of-the-art multi-AP TDMA allocations. We also show that the throughput performance of the algorithm is very close to the theoretical upper-bound in key simulation scenarios.


I. INTRODUCTION
Asymmetric digital subscriber line (ADSL) has become the 'de-facto' standard for residential broadband access to the Internet. In addition, the density of ADSL deployments with 802.11 Wireless Local Area Network (WLAN) connectivity tends to be high, specially in urban areas [1]. The interplay between these two technologies introduces interesting technical challenges and opportunities that can be exploited. First, WLAN access rates are typically an order of magnitude higher than the bottleneck of the end-to-end path, which is either the ADSL [2] or the backbone [3]. Second, the set of ADSL links in the neighborhood are generally underutilized [2]. As a consequence, there is potential to bundle the Access Points (APs) backhaul bandwidth via 802.11 connections. However i) APs usually operate on independent radio-channel and ii) users typically connect to these APs with single-radio commodity 802.11 cards. Because a single-radio card cannot simultaneously connect to more than one AP, it has been proposed to rely on the standard 802.11 Power Saving (PS) mode to implement a Time-Division Multiple Access (TDMA) policy. Stations spend enough time to either collect all the bandwidth from each AP [4] or to provide a fair sharing of the aggregated resources [5] by sequentially cycling through the APs in a round-robin fashion [6].
Unfortunately, multi-AP TDMA policies hurt the throughput performance of single TCP flows by increasing their Round-Trip-Time (RTT). To illustrate this effect, we consider the scenario in Fig. 1, where one station is connected to N APs. We focus on the time that the station spends connected to one of the APs, say AP 1 . When the station is connected to AP 1 , it starts receiving the buffered TCP data packets. While connected, the station normally receives TCP data and replies with TCP ACKs. These TCP ACKs will trigger the transmission of new TCP data from the sender. Because of the end-to-end wired delay, these TCP data may arrive to AP 1 right after the station has already moved to the next AP. These packets will be buffered by AP 1 until the station connects again to it. The result is that the time duration of the connectivity and non-connectivity periods may result in TCP flows observing a RTT artificially larger than the actual end-to-end wired delay.
Motivated by the aforementioned problem, the main contributions of this paper are: 1) an in-depth analysis of the effect of multi-AP TDMA on TCP flows by performing numerous experiments using our prototype station that connects to multiple APs. 2) an analytical model that correlates the TCP congestion control with the multi-AP TDMA policy.
3) a cost-efficient resource allocation algorithm, named min-max disconnection time, that distributes the time spent by the station to the APs in minislots (part of the TDMA slot) to minimize the total disconnection time from the APs.
We evaluate our model and show that it accurately fits the experimental results. We further study the algorithm via extensive simulations and we show that it performs very close to the theoretical upper bound. The rest of the paper is organized as follows. Section II reviews related work, and Section III presents our prototype implementation of multi-AP TDMA used in the experimental tests. Then, Section IV investigates the performance degradation of TCP on the multi-AP TDMA scenario, and it introduces an accurate analytical model. Section V validates the analytical model via both experiments and simulations. The resource allocation algorithm is introduced and validated in Section VI. Finally Section VII concludes the paper.

II. RELATED WORK
The need for 802.11 resource allocation schemes has been extensively studied in the literature [7]- [9]. Many of the proposed schemes rely on either non-standard compliant features [10], or completely develop an entire new MAC protocol [11]. Both strategies may be undesirable, and so we avoid them. Given that, the resource allocation scheme that more closely relates to ours is [12], that studied the problem of absence of application-specific 802.11 resource allocation schemes. As a solution, they designed and implemented an overlay MAC layer (OML) to divide the time into slots of equal size. Then, they used a distributed algorithm to allocate the slots across the competing nodes, where each competing node receives a number of slots proportional to its weight function. However, the authors let as an open issue the understanding of the increased delay for TCP flows in presence of the slotted mechanism [12].
Although overlay solutions are easy to be implemented, they are often sub-optimal and difficult to scale because of the overlapping and duplication of similar functionalities at different layers (e.g. in the driver and in the card firmware). The VirtualWiFi project [6] proposed an architecture  [13] proposed an architecture similar to one in [4] and it focused on the support of a seamless Wi−Switcher Station Relation between duty cycle and wireless period.

III. CONNECTING TO MULTIPLE APS WITH OFF-THE-SHELF HARDWARE
In this section, we briefly describe WiSwitcher [14], the experimental 802.11 station that we have implemented and it will be used in the rest of this paper as the basis for the experimental tests.
In WiSwitcher, the wireless driver of the single radio interface is virtualized, i.e., it appears as independent Virtual STAtions (VSTA i ) associated to their respective Access Points AP i . Each VSTA i connects to Internet via AP i , regardless of the AP i radio-frequency. Let us consider the scenario with one station in Fig. 2(a), connected to three APs. In this example, WiSwitcher configures 3 virtual stations VSTA 1 , VSTA 2 and VSTA 3 . Each of these VSTAs connects to one ADSL via its AP in range.
As we can see in Fig can only buffer packets. We denote wireless period T as the amount of time to cycle through all the VSTAs. A summary of the main variables used in this section and the rest of the paper is given in Table I.

A. MAC Protocol
WiSwitcher manages the multiple backhaul connections relying on the 802.11 PS mechanism.
Particularly, referring to the example in 2) When the duty cycle expires, VSTA 1 sends a frame to inform AP 1 that is going to PS mode and waits for its MAC ACK. According to the 802.11 protocol, AP 1 starts to buffer the packets directed to it.
3) WiSwitcher assigns the control of the card to VSTA 2 and switches to the AP 2 radiofrequency.
4) VSTA 2 sends a frame to announce that it can send and receive traffic and it waits for its MAC ACK.
5) The process continues until the station has cycled through all the VSTAs (a wireless period T ).
In the implementation, we incur in a channel-switching cost -i.e. the time where WiSwitcher cannot send and receive any traffic -of 1.2 ms for uplink traffic and 1.5 ms for downlink traffic.
This cost is less than half of the one obtained in the time-division implementation given in [4], [13]. This result has been achieved using 802.11 standard-compliant solutions, such as a MAC virtual queue per AP, and an efficient management of a hardware buffer size of one (1) data packet. The bulk of the cost of WiSwitcher is caused by the hardware operation delay, which is in the order of 800 µsec in our Atheros chipset-based cards. This cost is hardware dependent and in other chipset implementations is reduced to 200 − 500 µsec [13].
Furthermore, the implementation achieves a fine-grained timing at MAC/PHY level, thus avoiding any additional variance of the delay in the packet transmission, and it considers an independent instance of the rate selection algorithm for each VSTA. This allows us to connect to APs with different link qualities. The reader is referred to [14] for an in-depth description of the MAC implementation.

B. Network Layer Functionalities
At the network layer, three functionalities are needed: Scheduler: it calculates the percentage of time (duty cycle) to spend on each AP in order to maximize some utility function. In this work, the duty cycles are fixed via user-space commands.
Load balancer: it assigns the new TCP flow from the upper layers to the different VSTAs so that the total load received from each AP maintains the proportions indicated by the scheduler.
Since the load balancer is not the main objective of this work, we use the same per-flow basis scheduler presented in [4].

Reverse-NAT:
In order to guarantee transparency to higher layers, we implement a reversenetwork address translation (NAT) module with two functions: i) ensure that the packets leave the host with the correct source IP address (i.e. the one corresponding to the outgoing VSTA, as assigned by the AP) and ii) that the incoming packets are presented to the OS with the expected IP address, a dummy IP address in our implementation. Reverse-NAT modules were also present in [4] and [13].

IV. TCP OVER MULTI-APS TDMA
In this section, we first show an experimental test that enlightens the correlation between the end-to-end throughput and the delay added by the TDMA policy, and then we introduce an analytical model that characterizes the TCP RTT for a station connected to multiple APs. The importance of the model is that it not only gives insights into the problem, but it will be also used to validate the resource allocation algorithm later defined in the paper.

A. Example of TCP Throughput over Multi-AP TDMA policy
We experimentally test the side-effect of the multi-AP TDMA policy on a (long-lived) TCP session. Figure 3 shows the average TCP throughput obtained by a station spending 50% of its time (that is duty cycle of f 1 = 0.5) to one AP, as a function of the end-to-end wired delay d 1 .
For the test, we consider a wireless period T = 100 ms, which gives a connection of f 1 T = 50 ms on AP 1 . Each point is the average TCP throughput obtained over 5 independent tests of 300 s.
In the tests, the average experimental congestion signal rate we measured is of ≈ 0.4%. These losses are likely generated on the wireless link 1 .
We can see from Fig. 3 that the station gets a similar throughput for both d 1 = 50 ms and d 1 = 100 ms. This is caused by the similar RTT observed for 50 and 100 ms. The result is that the TCP data arriving at the AP with 50 ms of end-to-end wired delay have to wait for an extra-buffering time at the AP, due to the disconnection of (1 − f 1 )T = 50 ms. This reduces the 1 As a result of using SACK, TCP congestion signals are mainly caused by fast retransmissions due to duplicated ACKs because its goal is to avoid retransmission timeouts. For all SACK-based TCPs, multiple losses within one RTT are treated as a single congestion signal. In this paper we use congestion signal and packet loss interchangeably, and always refer to losses at TCP layer. throughput observed by the TCP flow for d 1 = 50 ms. More exactly, there are small valleys in the throughput: a disconnection of 50 ms increases the buffer size of the AP. Further increasing the end-to-end wired delay from 50 to 100 ms, there is a higher and higher probability that downlink packets will arrive at the AP when the station is connected to it. This will reduce the buffering time at the AP (and thus the observed RTT), that will deliver the packets in a shorter time, with a slight increase of the throughput 2 .

B. Modeling the TCP RTT over Multi-AP TDMA
We can model the dependency of the TCP RTT on the end-to-end delay and the duty cycle by observing all the possible cases in which TDMA affects the observed RTT. In what follows, we consider the uplink case (e.g. the VSTA is sending data to a remote server), but it is straightforward to see that the RTT computations are symmetric for both the uplink and downlink cases. We distinguish three conditions: 1) We consider the case of Fig. 4(1) in which the station sends the TCP data at time t i , during its duty cycle. Also we assume that the end-to-end delay d i is such that the TCP ACK arrives from the TCP server before the station disconnects from the AP. In that case, we see that the observed RTT from TCP is d i .
2) Next, we consider the case of Fig. 4(2), where the station sends the TCP data at time t i , during its active period, but the end-to-end delay d i is such that the TCP ACK arrives from the server during the time reserved to other VSTAs. The AP i will buffer the packet in its queue until the station reconnects again at time 0 of the next wireless period. In this case, the observed RTT for the TCP packets is T − t i , where T is the wireless period.
Note that, as long as (1 − f i )T > (d i mod T ), there will be always some packet that will wait in the AP 2 downlink buffer because of the disconnection period.
3) Finally, we consider the case of Fig. 4(3), wherein the TCP data is buffered at the station at time t i , during the sleeping period in the AP. However, we experimentally verified by monitoring the AP queues that case (3) does not occur in the TCP steady state, and no new TCP data is buffered during the sleeping period. The reason is that, in the TCP steady   Finally, in order to take into account that the station takes some time for processing and transmitting the TCP ACKs, as verified experimentally, we consider that: i) the TCP ACKs arrive exponentially distributed over the duty cycle, because there is a high probability that some TCP ACK is waiting in the AP i downlink buffer when the station re-connects to it (in the beginning of a duty cycle) ii) one TCP DATA is sent right after the reception of a TCP ACK.
This assumption considers the case when, in average and steady state, throughput does not either increase or decrease iii) When f i T is very small, some of the TCP data scheduled during the connection period will inevitably be sent at the next connectivity period, due to buffering delay.
Based on these assumptions, we statistically calculate the RTT distribution, considering as input the wireless period T , the duty cycle f i and the end-to-end delay d i . Despite the simplicity of the model, Section V-A will show that the model matches the experimental results.
Mapping the modeled TCP RTT to Throughput: Although a wide variety of TCP algorithms are used on the Internet, the current most popular implementation is TCP Reno [15]. Then, in order to map the RTT given by the model to throughput, we use the Mathis TCP model [16], which is intended to predict TCP end-to-end throughput as: BW ≤ MSS RTT · 1 √ p , where RTT is the Round-Trip-Time observed by the station, MSS is the TCP Maximum Segment Size and p is the packet loss rate 3 .

V. EVALUATION
In this section: • we validate the accuracy of the TCP RTT model presented in the previous section, comparing it with experimental results.
• we show that long disconnection time severely affects the TCP throughput.
• we demonstrate that, for any duty cycle, the best strategy is to reduce the wireless period T as much as possible.
• we show that the selection of the wireless period T must be done based on the smallest duty cycle min i f i of the station.
In what follows we discuss the details of the experimental and simulation setup.  For each experimental test, we establish one TCP Reno connection over each AP, ran 5 independent tests of 300 secs and plot the average values obtained. To achieve independent tests, the station is configured so that the TCP metrics are reset after each test.

B. Impact on Throughput per TCP flow
In this section we study the throughput observed by a TCP flow opened on one AP. Fig. 6(a) depicts the experimental throughput when the duty cycle of one AP is 50%. We observe that even for small delays, the throughput performance may be dramatically affected. As an example, when we operate with a disconnection time of 75 ms, we observe a quasi-constant throughput when the end-to-end wired delay spans from 75 to 150 ms. This is caused by the similar RTT observed at 75 and 150 ms of end-to-end wired delay.
Even more evident is the case where the VSTA is connected for the same amount of time -hence for a connection time of f 1 T = {15, 25, 50, 75} ms -but for a smaller duty cycle to AP 1 , e.g. 10% of its time. We can also see from Fig. 6(b) that the penalty in throughput is more severe as the disconnection time grows. For example, when the disconnection time is 675 ms, the average throughput is more than three times smaller than the throughput achieved when the disconnection time is 135 or 225 ms.

C. Reducing the Wireless Period
Based on the analysis in the previous section, in order to reduce the impact of TDMA on the TCP throughput, we have to keep the disconnection time as small as possible. Since the disconnection time is equal to T − f i T =(1 − f i )T , this also implies that, for a fixed f i , the wireless period T should be kept small. We study this issue with experimental tests. Figure 7 shows the throughput achieved as a function of the percentage of time connected to one AP. In the tests, we use different wireless periods (T = {30, 50, 100, 150} ms) and we fix the end-to-end delay to 100 ms. The figure show that similar performance are achieved with wireless periods of T = 50 ms and T = 100 ms, while throughput can be severely affected choosing a wireless period of T = 150 ms, once the time of connection is above 45%.
However, T cannot be reduced as much as we want. For T = 30 ms, the station gets slightly less throughput for small duty cycles. In fact, there are two limiting factors: i) there is a time spent by the 802.11 card to switch AP (called switching cost, as described in details in Section VI-A) ii) the frequent AP switching introduces an extra congestion signal rate of ≈ 0.01 − 0.08%, caused by an inefficient management of the transmission queues at the driver in off-the-shelf APs [14]. As a practical design aspect, since the congestion signal rate and the switching cost affect more severely smaller duty cycles, we can conclude that the selection of the wireless period T should be based on the smallest duty cycle at the station. In the next section, we provide an accurate description of the selection of the wireless period T and its correlation with the other parameters.

VI. INCREASING THE AGGREGATED THROUGHPUT
In this section we aim at improving the aggregate throughput at the station by i) introducing the assignment of slots to each VSTA, and ii) allocating the slots via a distributed resource allocation algorithm. The objective is to minimize the total disconnection time such as the TCP throughput of single flows is increased.

A. Concept of Slotted Operation
Instead of connecting to each AP i for a consecutive amount of time f i · T , we introduce the concept of slot assignment and we give g i ≥ 1 slots to each VSTA i . For this scope, according to the analysis in Section V-C, we first define SlotTime as the minimum amount of time allowed in the system at which the effect of the switching cost and the packet losses can be neglected on the connection with the smallest duty cycle.
In order to select such a SlotTime, based on our empirical data, we get at least 85% of the expected throughput -defined as the throughput that would be achieved without any cost of switching -with only 6 ms of connection time over a wireless period of 12 ms, at least 90% with 10 ms over 20 ms, and at least 95% of the expected throughput with a connection time of 15 ms over a wireless period of 30 ms (see [14] for details). These values are lower-bounds, because achieved when the AP queue is constantly backlogged. With Internet traffic, APs are backlogged only in the beginning of the duty cycle (because of the downlink packets already in the AP queue at the time of starting the duty cycle), while instead transmit at the end-to-end transmission rate for the rest of the duty cycle [4]. Then, SlotTime = 10 − 15 ms safely gets the expected throughput.
However, an allocation of slots of equal length SlotTime would increase the wireless period T , with immediate drawbacks on the performance. As an example, if the station is connected to two APs with scheduler output f 1 = 0.27 and f 2 = 0.73, we would need 27 slots for AP 1 and 73 slots on AP 2 . A SlotTime set to 15 ms would result in a wireless period of 15 · 100 = 1500 ms, which is computational inefficient.
Driven by the experiments and simulations of the previous section, we resolve this problem with the following principles: • we calculate the wireless period as: T = SlotTime min i f i , that is, the procedure reduces the wireless period T , based on the smallest duty cycle of the station (as demonstrated in Section V-C).
• we derive the number of slots locally assigned to each VSTA i as: for a total number of slots of G = g i .
• we determine the slot size per VSTA i as: SlotTime i = f i T g i . This may give slots of different sizes among different VSTAs.
Note that the solution can be transparently applied to the systems proposed in [4], [5], [13], considering the different switching costs of these systems to compute SlotTime.
In order to measure the disconnection cost of the VSTA i during two transmissions in the slots S i (l) and S i (l +1) we take into account the costs of the intermediate slots Therefore, we introduce the following cost function: . Furthermore, we suppose that SlotTime 3 = 10 ms, SlotTime 1 = 12 ms and SlotTime 2 = 15 ms. Then, we calculate the disconnection cost between S 1 (1)=1 and S 1 (2)=4 as c 1,1 = C 2 + C 3 = 15 + 10 = 25 ms.

B. Resource allocation algorithm
We now present three different, fully decentralized, slot allocation mechanisms with different performance and computational costs that aim to reduce the impact that the multi-AP TDMA has on single TCP flows 5 .
Blind Resource Allocation. We have seen in Section V-A that a multi-AP TDMA policy increases the observed RTT of the TCP packets. We have also seen that this increase is exactly the disconnection time in the worst case. In other terms, for VSTA i , and given an allocation that produces a disconnection time of max l=1,2,...g i c i,l , we would have The TCP throughput achieved by the above allocation can be approximated as where MSS and p i are the parameters of the Mathis model defined in Section IV-B [16]. It follows that, in order to minimize the throughput penalty caused by disconnection, we need to solve the following problem: The slot assignment obtained from solving (1) depends on the correct estimation of the loss rates {p i } and end-to-end delays {d i }. In a realistic deployment, an accurate prediction of these values may be not available. In the absence of any end-to-end delay information we can 5 We also tested an allocation mechanism with random assignment of the slots, using as a constraint that each slot is assigned to a given VSTAi with a probability equal to fi. Although this random assignment may decrease the buffering time at the AP in certain configurations, we found that it generally increases the jitter observed by TCP, and then reduces the observed downlink throughput.
reformulate the problem simply as the minimization of the inverse of the maximum disconnection times as follows: where the variables C i , SlotTime, f i and g i are defined in Table I.

Min-Max Disconnection Time Allocation Algorithm.
The blind resource allocation algorithm defined above can be prohibitively expensive. In order to reduce its complexity, we define a min-max disconnection time heuristic approach. This algorithm considers that, in average, the TCP throughput is more severely affected by the amount of time that each VSTA i is not connected to the corresponding AP i . Therefore, the algorithm tries to minimize the disconnection time, starting with the connection with the largest duty cycle (i.e., the AP backhaul with the highest utilization). The algorithm operates as follows: 1) First, it allocates the slots to the VSTA with max(g i ).
2) Next, the VSTAs with lower number of slots will be served one by one. At each step, the selected i-th VSTA i analyzes only the slots not previously assigned and it calculates the vector S i to satisfy the condition: min max l=1,2,...g i (S i (l + 1) − S i (l)), that is, it selects the g i slots to minimize the maximum distance between each pair of consecutive slots assigned to the VSTA i .
3) Finally, at the last step, the remaining set of slots are assigned to the VSTA with min(g i ).
The last VSTA i to allocate is the one with the smallest duty cycle. For that one, SlotTime is already chosen such as its performance is not affected

Upper-bound
We also calculate the upper-bound for the TCP aggregate throughput: for each delay, we compute the TCP aggregate throughput for all the feasible solutions and select the one that achieves the maximum throughput. Note that this upper bound can not be calculated in practice and we include it for comparison purposes.

C. Simulation results
We now evaluate the above algorithms -and particularly the aggregate throughput achieved by the min-max disconnection time allocation -via simulations in different scenarios: i) high number of APs ii) VSTAs with different duty cycle and delay and iii) different slot size per VSTA. In the tests, we consider one long-lived TCP flow for each VSTA and we suppose that the end-to-end communication is limited by the RTT delay, so that we do not reach the maximum capacity of the end-to-end path. For each test, we generate 10000 samples of RTT 6 and we use a congestion signal rate of 0.32%, as the one measured experimentally by connecting to one AP in range with high signal-to-noise ratio, and measuring the average number of congestion signals per acknowledged packet 7 . Note that each TCP flow experiences a different RTT, according to the specific duty cycle and slots' assignment. Note also that more TCP flows may be sent per AP and other congestion signal rates may be used (even higher, according to the link quality and the 802.11 PHY rate), but do not add a new contribution to this section.  Policy"), that is, spending consecutive 60 ms on VSTA 1 , and then 15 ms on VSTA 2 , VSTA 3 , VSTA 4 , and VSTA 5 , sequentially. 6 Similar results were achieved with 1000 samples. More samples then 10000 can be used, but it would adversely affect the simulation time, without impact on the results. 7 We use the congestion signal rate connecting to one AP, because, as discussed in Section V-C, current off-the-shelf APs implementations add at each AP a certain packet loss rate, that may limit the performance in experimental implementations.
The reader is referred to [14] for more details. In this work, we do not consider these implementation issues, (that, however, do not currently allow a validation of the resource allocation algorithm with real experiments), and assume that the limiting factor is the time spent by the 802.11 card to switch AP.   We observe that the min-max disconnection time allocation improves the throughput in all the cases, thanks to the reduction of the disconnection time. The min-max algorithm improves the throughput by up to 1.5 times respect to the case without any resource allocation. Note that for an end-to-end wired delay of 0 − 5 ms, the min-max disconnection time algorithm has a slight lower aggregate throughput. This is because, with this very small delay, the higher number of AP switching increases the probability that the TCP packet needs to wait at the next connection period before being ACKed. Fig. 8(b) also depicts the throughput achieved by running the algorithm in (2) (labeled "Alg. 1"). We can see that the heuristic approach performs identically to the blind resource allocation.
Finally, we run a test with all possible slot allocations. We verify for each delay the configura-tion that achieves the upper bound, according to the methodology given in Section VI-B (labeled "Upper Bound"). We observe that, despite the high cost and the need for an optimal calculation of the end-to-end delay per connection and the packet loss rate, the upper bound algorithm only slightly increases the aggregate throughput observed by the station respect to the min-max disconnection time approach. The main reason behind this result is that the key parameter that affects the end-to-end TCP throughput is the disconnection time from the AP, which is taken into account in the min-max disconnection time approach, rather than the extra-buffering time at the AP. The corresponding number of slots given by the resource allocation algorithm are g 1 = 4, g 2 = 1, g 3 = 3. We also suppose that SlotTime = 12.5 ms.
In this example, we consider that the VSTAs experience different delays. Particularly we suppose that for a given delay x on VSTA 1 , the delay on VSTA 2 is x + 20 ms and the delay on VSTA 3 is x + 40 ms. We then calculate the aggregated throughput summing the throughput achieved on the three VSTAs at a function of the delay x.
Without using the resource allocation algorithm, VSTA 1 would be disconnected 50 ms, VSTA 2 for 87.5 ms, and VSTA 3 for 62.5 ms. The min-max disconnection time algorithm increases the granularity of the AP assignment so that VSTA 1 will be disconnected for 12.5 ms, VSTA 2 (still) for 87.5 ms, and VSTA 2 for at most 37.5 ms. Note that the TCP throughput at VSTA 2 can be improved only by reducing the SlotTime, since it uses just one slot per period and a resource allocation algorithm cannot contribute to improve VSTA 2 throughput.
In Fig 9(b), we observe that the ratio between the aggregated throughput obtained by the minmax disconnection time algorithm over the one obtained without any algorithm is higher (up to 1.5 times) in most cases. Particularly, the min-max disconnection time allocation algorithm gets higher throughput corresponding to the scenarios where the delay added by the disconnection periods causes higher RTT. In general, the resource allocation algorithm can significantly improve the performance, since the VSTAs have different throughput demands. Our resource allocation algorithm tries to meet these demands by selecting the slot combination that minimizes the disconnection time.
The results in Fig. 10(b) show that the min-max disconnection time algorithm still achieves the best trade-off between performance and computational cost. Particularly, we can see from "Alg. 1/NoPolicy" line, that the throughput achieved by the min-max disconnection time algorithm ËÐÓØÌ Ñ 2 12.5 msecs ËÐÓØÌ Ñ 3   is very similar to the one defined in the equation 2. Besides, in some scenario the min-max disconnection time algorithm achieves a slightly higher throughput, despite the cost of only 7 runs compared to the 252 runs needed in (2).

VII. CONCLUSION
The aggregation of the ADSL bandwidth via 802.11 wireless communication and multi-AP TDMA could dramatically increase the RTT observed by TCP flows. In this paper we studied this problem, both via extensive experiments with our prototype implementation and via a simulator that accurately correlates the TCP RTT with the time spent by the wireless station on each AP. We presented a simple model that accurately predicts the main effects caused by TDMA schemes on the observed TCP RTT, and we introduced a resource allocation algorithm that improves the aggregated throughput respect to state-of-the-art approaches with a complexity that grows linearly with the number of APs. Our solution does not require modifications to the rest of the network, and it can be applied to existing solutions that aggregate the AP backhaul bandwidth.
Furthermore, we showed that its throughput performance is very close to the theoretical upper bound for a number of key scenarios. We believe that our approach will help to provide an efficient solution to aggregate multiple AP backhauls independently of the type of TCP traffic.