A Novel Flow Control Scheme for Improving TCP ... - Semantic Scholar

3 downloads 330 Views 328KB Size Report
splitting a TCP connection between the mobile host and fixed host into ... shadow price such as congestion losses, queuing delay or ECN marking ..... Fig.3(b) Utilization vs. queue size, topology 1. S1. D1. B. G1 n1. G2 n2 n4. S2. S3. S4. D2 n3.
A Novel Flow Control Scheme for Improving TCP Fairness and Throughput over Heterogeneous Networks with Wired and Wireless Links Fei Peng

Hussein Alnuweiri

Victor C.M. Leung

Dept. of Electrical & Computer Engineering, University of British Columbia Vancouver, BC, Canada, V6T 1Z4. {feip, hussein, vleung}@ece.ubc.ca

Abstract- Most of the recent research on TCP over heterogeneous networks has concentrated on differentiating between packet drops caused by link congestion versus drops caused by link errors. Handling the two types of packet drop differently avoids significant throughput degradations caused by frequent TCP window shut downs due to non-congestive drops. However, TCP also exhibits inherent unfairness for connections with long round-trip times and connections that traverse multiple congested routers. In heterogeneous networks, the difference in bit error rates between wireless and wired links aggravates the situation even more. In this paper, we propose a New TCP bandwidth allocation (NTBA) algorithm to solve these problems. The primary contribution is a wireless access node algorithm with a simple new shadow price scheme provided by the network node. The advantage of our algorithm is that it simplifies the TCP sender-side implementation and keeps the receiver-side protocol stack unchanged. We propose to apply Wireless Explicit Congestion Notification (WECN) to decouple congestion control from loss recovery in wireless networks. Simulation results show that not only can the combined NTBA/WECN mechanism improve TCP fairness, but it can also maintain very good throughput performance in the presence of wireless channel losses. Keywords- Transport Control Protocol, wireless networks, Explicit Congestion Notification, Fairness, Shadow Price

I. INTRODUCTION As the Internet expands to integrate wireless and wireline networks, the traffic volume of wireless users is growing rapidly. Therefore, it is very important to maintain end-to-end fairness and QoS between wired and wireless users. Much of the recent research on TCP performance over wired-wireless hybrid networks focused on distinguishing different types of losses since this is widely known as the main reason of TCP performance degradation in such networks. The solutions are roughly classified into link layer protocols, splitconnection protocols and end-to-end protocols [1]. The link layer approaches aim to repair high corruption losses locally, however at the cost of a loss of available bandwidth or the introduction of new path dynamics (extra delay, jitter, packet reordering, etc). Therefore, corruption losses still remain a major concern for the transport layer. Split-connection This work was supported by a Collaborative R&D Grant from Spectrum Signal Processing and the Natural Sciences and Engineering Research Council (NSERC) of Canada..

protocols isolate mobility and wireless related problems by splitting a TCP connection between the mobile host and fixed host into wired connection and wireless connection. While effective, these protocols violate the end-to-end semantics. End-to-end protocols adjust TCP operations to improve performance in the presence of wireless losses in a way that maintains end-to-end semantics, such as Explicit Congestion Notification (ECN) [2], TCP Veno [3], TCP-Jersey [4], Jitterbased TCP [3], TCP Westwood [3]. Among them, only ECN is a proposed standard draft by IETF. Consequently, one effective approach is to employ ECN with a few modifications to avoid window reduction caused by wireless errors [4]. We call this approach Wireless ECN (WECN). Besides significant throughput degradation caused by misinterpretation of random loss as an indication of network congestion, it is well known that TCP suffer from inherent unfairness towards connections with long round trip time (RTT) and connections that have to traverse multiple congested routers. These problems would exist in both wired and wireless environment. So far, TCP fairness over heterogeneous wireless networks has not received much attention in the research community. Most proposals such as Kelly [6], Fast TCP [7] and a Fast TCP related enhancement [8] aimed at improve TCP fairness in wired networks. Their shadow price such as congestion losses, queuing delay or ECN marking is based on traffic load, which would produce a perverse incentive for the link to increase congestion and cause difficulties for the algorithm to determine parameters such as the rate of convergence and to adapt network changes such as routing. These major concerns in wired networks would be exacerbated by the characteristics of wireless networks. Applications of these techniques to wireless networks require further investigation. To solve the unfairness suffered by connections with long RTTs and passing through multiple congested routers in mixed wired/wireless networks, we propose a New TCP Bandwidth Allocation (NTBA) algorithm with a different shadow price scheme from [6]-[8]. We also combine NTBA with WECN [4] to effectively separate congestion control and loss recovery.

0-7803-8939-5/05/$20.00 (C) 2005 IEEE

The organization of the paper is as follows. Section 2 presents the NTBA algorithm. Implementation of the NTBA algorithm in the access node, internal network node its combination with WECN at the end nodes are described in Section 3. Network configurations of the simulations and the metrics for performance evaluations are given in Sections 4 and 5, respectively. The simulation results are analyzed in Section 6. We conclude the paper in section 7. II. NEW TCP BANDWIDTH ALLOCATION ALGORITHM Consider a network with a set of J resources (routers). Let a route r identify a non-empty subset of J, and write j ∈ r to indicate that route r passes through resource j. Let R be the set of possible routes. We associate a router with a user or a TCP connection, and use xr to denote the rate allocated to user r, for each r ∈ R. For each resource j ∈ r we define a forward delay t → jr incurred from the user to the resource, and a return

delay t ← jr incurred from the resource back to the user. The ← round trip delay associated with route r is thus Tr = t → jr + t jr .

Consider the delayed discrete time system in [6], with strictly positive gain parameters kr,   x r [t + 1] = x r [t ] + k r  β r − x r [t − Tr ] u j [t − t ← ] (1) jr   j∈R   where βr > 0 represents the amount that user r pays per unit time to receive in return a rate xr proportional to βr;    u j [t ] = p j  x r [t − t → ] (2) jr  , j∈J, r∈R,   r: j∈r  The variable uj(t) denotes the implied shadow price per bit of flow through resource j at time t. Let the stable point be xr and suppose that, at this point, pj is differentiable, where the   derivative is p ′j = p ′j  x s  . The system (1)-(2) is locally    s: j∈s  stable if the following condition is satisfied for all r ∈ R,

Assuming cj is constant, means that uj(t) (and pj) are constants and the derivative p ′j = 0 . If we substitute for uj(t), and pj in (1)-(3) with (4), we obtain a new system named NTBA that doesn’t have to base on traffic load for shadow price, it is therefore easy to determine the system convergence rate by choosing the appropriate kr from (3). To design a network, it is reasonable for the network owner to know the contractual payment βr at the beginning of the period. By contrast, our algorithm improves the certainty of the shadow price so as to avoid triggering excess traffic into the network which would otherwise cause congestion. At the stable point, we have xr =



 kr   

∑ j∈r

pj +

   π  x s  < 2 sin   2( 2Tr + 1)  s: j∈s 

∑ ∑ p ′j

j∈r

(3)

The shadow price (2) used in [6]-[8] is based on the traffic load described in [2]. Since it is hard for the end systems to accurately estimate the traffic load at the resource link according to (3), we are motivated to propose a new shadow price scheme. Suppose cj is the bandwidth for the link j. Ajr=1 if j ∈ r, and Ajr=0 otherwise. This defines a 0-1 matrix A = (Ajr, j ∈ J, r ∈ R). Define the link rates vector c = (cj, j∈ J) and the connection rate vector x = (xr, r∈ R), we have, u j (t ) = p j =

cj

∑A j∈r

jr β r

and Ax ≤ c

(4)



j∈r

(5)

pj

Now, let wr denote the TCP window size, and note that wr, Tr are variables that change with time. Then we get, x r × Tr = wr , x r ≥ 0, Tr ≥ 0 (6) Differentiating (6) on both sides, we get: Tr dx r + x r dTr = dwr (7) Since uj(t) is determined by (4), we can combine (1) and (8) to obtain the dynamics of window size as follows:

  wr [t + 1] = wr [t ] + k r  β r − x r [t − Tr ] p j Tr [t ]   (8) j∈r   + x r [t ](Tr [t + 1] − T [t ])







βr

Note that if the end-to-end propagation delay does not change significantly, then the RTT will be stabilized at a fixed point and the convergence rate of the window algorithm will be determined by (3) with pj replaced by (4) and p ′j = 0 . III. IMPLEMENTATION OF NTBA ALGORITHM A. Support from Congested Node Suppose that the network knows the price each user pays (as described in section 2) as well as the number of connections (by routing packets) and the available bandwidth. The network can convey p j in (4) to the data source, for instance using the IPv6 option field. The modifications to congested node are: (1) add a state variable for storing p j , which is updated when the congested node detects the establishment of a new connection or the termination of an old connection; (2) when receiving a data packet, add p j to the ABW field in the packet option field if the original value is valid, otherwise, replace the field with p j . With this modification, the value in the ABW field becomes p j when the ACK of the packet returns to the access node.

∑ j∈r

This feature is supported at IPv6 system. To maintain backward compatibility, we suggest the congested node to superimpose the ABW features on top of its current TCP. We employ Random Early Detection (RED) and ECN at both access node and intermediate node where congestion

0-7803-8939-5/05/$20.00 (C) 2005 IEEE

would happen. Since instant marking provides the sender with more accurate buffer information, we track instant queue length by setting a large queue weight. To improve robustness by avoiding the loss of ECN, we setting ECN with probability 1 instead of setting ECN with a lower probability.

B. Support in Access Nodes Since the access node forwards the data packets and their corresponding ACKs in opposite directions, we implement the NTBA algorithm at the access. The main functions of the access node are to separate the ACK flow from normal data traffic, identify the connection to which the ACK belongs, detect the ECN bit set by downstream network nodes, and calculate the appropriate window size with NTBA algorithm. In the following, we describe the window-size calculation performed by the NTBA algorithm. To implement (8), we divide time into discrete window cycles. The window size, RTT and average rate of user r in cycle i are denoted, respectively, by wr(i), Tr(i), and xr(i), where wr(i) is obtained by detecting the number of packets in the window when the sequence number of the backward ACK is equal to that of the first packet sent in this window, Tr(i) is the duration and xr(i) is calculated by wr(i)/Tr(i). The change in window size during Tr(i) cycles is rewritten from (8) as, ∆w r ( i +1) = ( k r ( β r − x r (i −1)

∑p

j )Tr (i −1) )Tr ( i )

+ x r ( i −1) (Tr ( i ) − Tr ( i −1) )

j∈r

(9) where p j was defined in (4) and obtained from the Available Bandwidth (ABW) field in a returned IPv6 ACK option field from internal nodes. Each ACK should cause the window size to be changed by ∆wr ( i +1) / wr ( i ) , with wr(i) ACKs from the previous cycle. This value is added to the receiver’s advertised window (RCVW) in each ACK. Due to the cumulative characteristic of ACKs, a large number of data segments can be acknowledged by one new ACK after the loss recovery phase resulting in a burst of data packets to enter the network. In wireless networks, recovery of transmission losses can contribute to more traffic bursts if the congestion window is allowed to grow large. To smooth these bursts we propose to modify the NTBA algorithm using a variable THRESH. We consider two configurations denoted as NTBA/ECN and NTBA/WECN, explained in more detail later. For NTBA/ECN, the THRESH is set to half the current window size (CWND) when either ECN or packet loss are detected. For NTBA/WECN, THRESH is set to half CWND only when ECN is detected. Furthermore, when CWND is detected as 1 or 2, THRESH is reset to 1 or 2, respectively, for both configurations.

of congestion. With NTBA/WECN, the source congestion window is changed according to the value in the TCP option field provided by the NTBA algorithm. The option filed is implemented at the access node or is marked by the congested node. This achieves the separation of loss recovery from congestion control. With NTBA/ECN, the source node reduces its congestion window in response to both packet loss and ECN. In either of above cases, ECN or packet loss has a higher priority in window control than ACK option field provided by the NTBA algorithm. The TCP retransmission mechanism does not have to be modified in any way. Stability of NTBA with ECN or WECN enhancement: when the end system reduces the window size according to the arrival of ECN or packet losses, the old equivalence of the NTBA algorithm is broken followed by the start of a new equivalent status. The packet loss would delay the time for the oscillated window return to the optimal point because of retransmission. Since the system always goes back and start again, the NTBA algorithm will maintain stability even under packet loss and ECN signaling. IV. SIMULATION CONFIGURATION The topology, the link bandwidths and propagation delays of two test networks are shown in Fig.1 and Fig.2. We use topology 1 shown in Fig.1 to examine the effects of many competing connections over a single bottleneck link. Then, we use topology 2 shown in Fig.2 to examine the effects of a wireless link on a TCP connection with long RTT that must also traverse a number of congested hops shared by TCP connections over wired links with short RTTs. To test the fairness between wired and wireless connections, Fig.1 employs a wireless link between n1 and D1 only, and wired links between n1 and the other destination nodes. Fig.2 employs wireless link only between receiver D1 and node B. The NTBA algorithm is implemented at the access nodes n1 in Fig.1 and ni in Fig.2. At the congested node n0 in Fig.1 and ni, Gi and B in Fig.1, the minthresh, is set to half the buffer capacity and the maxthresh is set to the buffer capacity. To set instant queue length, we set large queue weight to 0.2. This resulted in an unexpected match with [4]. To smooth traffic burst, we deploy the THRESH scheme of section 3.2, and limit the window-size increment by the NTBA algorithm to 4 packets per normal ACK (if CWND < 4×THRESH), otherwise it is limited to 1 packet per normal ACK. For a partial ACK that acknowledges some but not all of the packets, we increase the window size to 3/4 of the value S o u rc e

Si

Di

D e a s t in a tio n

n0

A ccess N ode

n1

B a s e S ta t io n D1

S1 S2

D2

S3

C. Support from TCP Layer

D3 S4

Since the main purpose of NTBA is to indicate “No Congestion”, we propose to apply WECN to NTBA for the purpose of effectively decoupling congestion control and loss recovery. The basic idea of WECN [5], is to use ECN with an adaptive algorithm to replace packet-loss as the main indicator

n0

n1 D4

S5 D5

S6

: w ir e d lin k : 1 .5 M b / s , 2 .5 m s d e la y

:

w ir e d lin k :

: w ir e le s s lin k : 1 M b /s , 2 . 5 m s d e la y

D6

1 0 M b /s ; S 1 = 0 m s , S 2 = 5 m s , S 3 = 4 9 m s , S 4 = 9 5 m s , S 5 = 1 4 5 m s , S 6 = 2 9 5 m s

Fig. 1. Network topology 1 of simulation model (Config1)

0-7803-8939-5/05/$20.00 (C) 2005 IEEE

Si

Destination D2

S1

n1 S2

ni

Di

Source

G1

Gi

Access Node Gateway D3

n2

G2

S3

: Wired Link 1.5 Mb/s, 10ms delay : Wireless Link 1 Mb/s, 10 ms delay

D4

n3 S4

G3

fairness of the allocation is defined as:

B Base Station D5

n4

B

Fairness ≡ D1

S5

:Wired Link 10 Mb/s, 50 ms delay

Fig. 2. Network topology 2 of simulation model

calculated by the NTBA algorithm. It is important to note that the above parameters (of 4 and 3/4) can be changed according to different configuration environments. The wireless TCP connection has the same network condition as the wired one except that the wireless link has a bit error-rate (BER) > 0 whereas no bit errors occur in the wired links. BER is introduced via a widely-adopted uniform random process on the wireless link. From [6], a larger kr satisfying (3) could generally lead to faster convergence. We choose a kr=50 for both topologies. We use long-lived TCP connections with simulation runs of 150 seconds. Such connections are short enough to ignore changes in traffic characteristics but long enough compared to RTTs to easily adjust traffic levels. Each TCP segment is 1000 bytes long. We first examine a range of queue sizes (buffer capacity) from 20 to 100 packets at a high BER of 10-5. Then, we examine a range of BER values with a fixed buffer capacity. Five TCP mechanisms are compared by simulations using the ns-2 simulator [9]. The benchmark mechanism, denoted as Reno, is a standard TCP Reno. The ECN mechanism employs ECN based on TCP Reno. The WECN mechanism is the same as ECN except that it disables window control in response to packet losses. The other mechanisms NTBA/ECN and NTBA/WECN combine NTBA with ECN and WECN. In topology 1 and topology 2, the NTBA/WECN and WECN mechanisms are evaluated by applying the respective mechanism only to the connection with the wireless link, while the wired connections employ NTBA/ECN and ECN. V. PERFORMANCE METRICS Aassuming pi = 1, each user is allocated up to 1/n of the bottleneck link capacity for n users proportionally sharing that link. Jain’s metric is applicable in this context. Defining bi as the number of original bits (i.e., not counting retransmissions) successfully transferred over a link during some time interval divided by the product of link-rate and time-interval, the

Fig.3(a) Fairness vs. queue size, topology 1

∑ b) n × (∑ b (

n 2 i =1 i n 2 ) i =1 i

This metric ranges continuously in value from 1/n to 1, with 1 corresponding to the best proportional fairness of equal allocation for all users. The second metric is the utilization metric used for topology1 in Fig.1 is defined as the sum of connections’ bi over a link. The closer the utilization metric approaches 1, the higher the link capacity is utilized. Utilization ≡

( segments _ acked ) * ( segment _ size) (link _ rate) * time

The third metric is the Utilization Deviation for topology2 in Fig.2., defined as, 2

Utilization Deviation ≡

∑ Utilization

i

− 0 .5

i =1

2

The ideal bandwidth shared by each connection is half the bandwidth of the bottleneck link. If both the utilization and the fairness are good, the Utilization Deviation is very small; otherwise, it can be very large. VI. SIMULATION RESULTS AND ANALYSIS Figs.3 and 4 compare the (a) fairness and (b) utilization of different schemes over a range of queue sizes for topology1 and topology2, with BER=10-5 over the wireless links. Figs.3(a) and 4(a) show that in terms of fairness NTBA/WECN and NTBA/ECN outperform other schemes over a wide range of queue sizes. This demonstrates that NTBA is a robust algorithm that improves fairness performance over mixed wired/wireless networks. NTBA/WECN also achieves better fairness than NTBA/ECN since WECN avoids unnecessary window reductions caused by wireless channel loss, thus improving the throughput of the wireless link and resulting in better fairness performance. Figs. 3(b) and 4(b) also show that in terms of total utilization, NTBA/WECN offers minor improvement over NTBA/ECN. This is because the wired connections can occupy the rest of bandwidth lost by the shared wireless connection. NTBA/WECN, however, yields a more consistent improvement in topology2 both in terms of fairness and

Fig.3(b) Utilization vs. queue size, topology 1

0-7803-8939-5/05/$20.00 (C) 2005 IEEE

Fig.4(b) Utilization Deviation vs. queue size, topology 2

Fig.4(a) Fairness vs. queue size, topology 2

utilization over NTBA/ECN and other schemes. This shows that the NTBA/WECN scheme is more useful for a wireless connection traversing multiple nodes and sharing links with wired connections than wireless connection that traverse one node only. From Figs.3 and 4, it is apparent that to realize the performance advantages of NTBA/WECN, a sufficiently large buffer size (> 50 packets) should be used. When the buffer size is smaller than 50, it is difficult for NTBA/WECN to effectively utilize bandwidth. However, a buffer size that is too large (e.g., > 90 packets) would not be helpful as the congestion windows can get very large resulting in an increased congestion losses and decreased utilization. Finally, we evaluate the performance of the different schemes over a wireless link with BER ranging from 10-5 to 10-9. Fig. 5(a) and (b) show the fairness and utilization, respectively, for topology 2 networks having buffer size = 50 packets, but with all the connections incorporating wireless links. Results for other configurations are very similar. At high BER, NTBA/WECN has better fairness and utilization than other schemes. When the BER of the wireless link falls below 10-7, NTBA/ECN is just as effective as NTBA/WECN, since both benefit from the fairness enhancement of NTBA. In comparison, TCP Reno generally yields lower utilization and fairness performance under congestion or wireless losses. VII. CONCLUSIONS AND FUTURE WORK We have presented simulation results to show that the NTBA/WECN algorithm, with its new shadow price scheme, can improve TCP fairness and utilization in heterogeneous networks in which the wireless link suffers from high BER, long Round-trip time and traversing multiple congested

Fig. 5(a) Fairness vs. BER, topology 2

routers. The algorithm is implemented mostly in the access node that requires minimal changes to the end systems. The work presented in this paper is preliminary. Additional simulations are needed to explore the parameter space such as incorporating more realistic traffic models and with more realistic error models. To better evaluate fairness performance, other factors such as variation rapidity of wireless link characteristics should be considered. REFERENCES [1] [2] [3] [4] [5] [6] [7] [8] [9]

H. Elaarag, “Improving TCP performance over mobile networks”, ACM Computing Surveys, vol. 34, pp. 357–374, September 2002. K.K. Ramakrishnan, S. Floyd, and D. Black. “The Addition of Explicit Congestion Notification (ECN) to IP”, RFC 3168, Proposed Standard, September 2001. E. H-k. Wu, M-Z. Chen, “JTCP: Jitter-Based TCP for Heterogeneous Wireless Networks,” IEEE J. Select. Areas. Commun, vol. 22, pp. 757766, May 2004. K.Xu, Y. Tian, and N. Ansari, “TCP-Jersey for Wireless IP Communications,” IEEE J. Select. Areas. Commun, vol. 22, pp. 747756. May 2004. F. Peng, S.D. Cheng and J. Ma, “A Proposal to apply ECN into wireless and mobile networks”, The 10th Annual Internet Society Conference (INET), Yokohama, Japan, July 2000. R. Johari and D. Tan, “End-to-end congestion control for the Internet: delays and stability”, IEEE/ACM Transactions on Networking 9(2001) 818-832. C. Jin, David X. Wei and Steven H. Low, “Fast TCP: Motivation, Architecture, Algorithms, Performance”, IEEE Infocom, Hongkong, March 2004. F. Paganini, Z. Wang, J. Doyle, S. Low, “congestion control for high performance, stability and fairness in general networks”, to appear in IEEE Transaction on Networking. Network Simulator-ns-2, http://www.isi.edu/nsnam/ns.

Fig.5(b) Utilization Deviation vs. BER, topology2

0-7803-8939-5/05/$20.00 (C) 2005 IEEE