An Efficient Mechanism of TCP-Vegas on Mobile IP Networks

Cheng-Yuan Ho, Yi-Cheng Chan, and Yaw-Chung Chen Department of Computer Science and Information Engineering National Chiao Tung University 1001 Ta Hsueh Road, Hsinchu 30050, Taiwan, R.O.C. [email protected], [email protected], [email protected]

Abstract— Mobile IP network provides hosts the connectivity Mobile IP [2], [3]. to the Internet while changing locations. However, when using MIP (Mobile ) provides hosts with the TCP Vegas over a mobile network, it may respond to a handoff ability to change their point of attachment to the network by invoking a congestion control algorithm, thereby resulting in performance degradation, because TCP Vegas is sensitive to the without compromising their ability in communications. The change of RTT (Round-Trip Time) and it may recognize the mobility support provided by MIP is transparent to other increased RTT as a result of network congestion. Since TCP protocol layers so as not to affect those applications which do Vegas could not differentiate whether the increased RTT is due not have mobility features. MIP introduces three new entities to route change or network congestion. This work investigates required to support the protocol: the Home Agent (HA), the how to improve the performance of Vegas after a Mobile IP handoff and proposes a variation of TCP Vegas, so-called Demo- Foreign Agent (FA) and the Mobile Node (MN). Further Vegas, which is able to detect the movement of two end-hosts of information on MIP functionality can be found in [2], [3]. With a connection, and re-measure the BaseRTT (Minimum Round- the introduction of IPv6, MIPv6 [8] excludes the FA, because Trip Time) if necessary. The proposed mechanism maintains FA’s functionality has been distributed amongst the MNs and end-to-end semantics, and operates under the existing network Dynamic Host Configuration Protocol (DHCP) enabled hosts. infrastructure. Demo-Vegas presents a simple modification in the two end sides of a connection and uses one reserved bit in TCP Therefore we will often refer to the word ‘agent’ (i.e. mobility header. Simulation results demonstrate that Demo-Vegas features agent) as a generalization to identify HAs and FAs in MIPv4 higher performance than Vegas in Mobile IP networks. and HAs in MIPv6. There are several problems of using TCP scheme in a Index Terms— TCP, TCP-Vegas, and Mobile IP. Mobile IP network. Since TCP is tuned to perform well in traditional wired networks in which most packet losses are due to congestion. However, in a wireless mobile network, packet I. INTRODUCTION losses usually occur due to either random loss or handoff. After HE Internet is an infrastructure interconnecting a large a handoff, the throughput of TCP Vegas may be decreased due T number of heterogeneous computer networks using to a longer BaseRTT of the new routing path, which is usually TCP/IP protocol suite (Transmission Control Protocol/Internet caused by either triangular routing or route optimization. In Protocol). TCP Vegas [1] ensures end-to-end integrity of data this paper, we focus on the performance of TCP Vegas after transfer, while IP performs datagram routing and internetwork- Mobile IP handoff. We propose a modification of TCP Vegas, ing functions. With the fast prevalence of Internet, the popular called Demo-Vegas (Detect Mobility Vegas). When a node usage of laptop and notebook computers and the deployment resides in its home network, it communicates normally. While of wireless communication devices, users demand the mobility it enters into a foreign network, it will get a new IP address, of hosts, i.e., they expect that the hosts can change their loca- called COA (Care of Address). Demo-Vegas is able to detect tions continuously without interrupting current communication the movement of both a sender and a receiver based on their sessions. COAs. It is simple with very little overhead because only one However, current IP routers make use of IP address for reserved bit in TCP header is used, and a small modification in datagram routing decisions. After a host moves from one the end side is made. This facilitates incremental deployment network to another, datagrams destined to the original address in today’s Internet. Our intensive simulation shows that Demo- will not be routed to the new location. To receive datagrams Vegas significantly improves the overall TCP Vegas throughput at the new location, a host must obtain a new network in mobile environment. address and advertise it. To provide an economical solution The rest of this paper is organized as follows. Section II in- which implements mobility support over the existing Internet troduces TCP Vegas and Mobile IP. Related work is described infrastructure, the Mobile-IP Working Group of the Internet in Section III. We characterize the motivation, scheme, and Engineering Task Force (IETF) has compiled a series of pseudo code of Demo-Vegas in section IV. Section V presents Internet Drafts and Request for Comments (RFC) to define the simulation results and Section VI concludes the paper.

1-4244-0222-0/05/$20.00 (c)2005 IEEE This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the Proceedings IEEE Infocom. Authorized licensed use limited to: National Chiao Tung University. Downloaded on January 21, 2010 at 12:44 from IEEE Xplore. Restrictions apply. II. BACKGROUND: TCP VEGAS AND MOBILE IP the sum of propagation delay and packet processing time. A. TCP Vegas If the fixed delay becomes shorter, it will not cause any problem. Otherwise if there is a longer fixed delay, it could not Vegas [1] uses the difference in the expected and actual differentiate whether the increased RTT is due to route change flow rates to estimate the available bandwidth in the network. or network congestion. The sender may reduce its window size When the network is not congested, the actual flow rate and it may cause inefficient throughput. In short, while Vegas would be close to the expected flow rate. On the other hand, presumes that packet delay or loss is due to congestion, in if the actual rate is smaller than the expected rate, it indicates wireless networks, packet delays can also be due to changes that buffers in the network are filling up and the network is in mobile IP address. approaching congestion. This difference in flow rates can be calculated as Diff = Expected – Actual, where Expected and B. Mobile IP Actual are the expected and actual rates, respectively. MIP extends the existing IP protocol to support host mobil- (i) Congestion Avoidance ity while preserving a security level as good as today’s Internet In its congestion-avoidance phase, Vegas uses two threshold standards. The basic idea is to use an authenticated registration values, α and β (whose default values are 1 and 3, respec- procedure between a MN and a HA in its home network, tively), to control the adjustment of the congestion window and via a FA while MN is visiting a foreign network. The size at the source host. Let d denote the minimum-observed mobility bindings is created between MN’s home IP address packet round-trip time (also known as BaseRTT), D denotes and a temporary COA, which is granted by the FA or selected the actual round-trip time (RTT), and W denotes the size of autonomously by the MN (with DHCP), in the visited network. the congestion window size, then Expected = W/d and Actual The binding information is stored in the HA and FA, and =W/D. In addition, W is measured in segments as is normally updated whenever a MN moves to the jurisdiction of a different done in any TCP version. The estimated backlog of packets FA. While datagrams sent to a correspondent node (CN) are in the network queues can then be computed as routed through normal means using the CN’s IP address (if (D − d) FA permits), datagrams sent to the MN are routed to the ∆=( )×BaseRTT = W × . Expected – Actual D (1) MN’s home network as the CN only knows the MN’s home IP address. Once the mobile registration is completed, the HA For every RTT, the congestion-avoidance algorithm adjusts W will intercept these datagrams on behalf of the MN, and use as follows:  the mobility binding to redirect the datagrams to the FA by  W +1,if∆ <α means of tunneling. Based on the current binding for the MN, W ← W − 1,if∆ >β  the FA forwards the datagrams to the MN. W, otherwise(α ≤ ∆ ≤ β). The triangular routing of datagrams to the MN through Conceptually, Vegas tries to keep at least α packets but no its home network may be inefficient, particularly if the CN more than β packets per flow queued in the network. Thus, is much closer to the MN’s visited network than the home when there is only one Vegas connection, W converges to a network. A route optimization method, incorporated in a point that lies between window + α and window + β where superset of Mobile IP called the Internet mobile host protocol window is the maximum window size without considering (IMHP), has been proposed [4]. Route optimization is a the queuing in the network. backward compatible extension to the Mobile IP. The idea is to allow an HA to take the available MN’s current binding to (ii) Slow Start the requesting CN, or a specific router on behalf of the CN. In Like Reno, Vegas uses a slow-start mechanism that allows either case, the node must maintain a cache of MN’s bindings, a connection to quickly ramp up to the available bandwidth. called the cache agent (CA), which can tunnel datagrams However, unlike Reno, to ensure that the sending rate will directly to the MN’s current COA, bypassing the MN’s home not increase too fast to congest the network during the slow network and eliminating the triangular routing. start, Vegas doubles its congestion window size only every other RTT, and calculates the difference between the flow III. RELATED WORK rates (Diff ) and ∆ given in (1) in every other RTT. When Because the related work of Vegas in this area is not much, ∆ >γ(whose default is 1), Vegas leaves the slow-start we present some TCP modifications targeted to Mobile IP phase, decreases its congestion window size by 1/8 and enters networks instead. The first approach is M-TCP, which forces the congestion-avoidance phase. the sender to enter a TCP persist mode when an intermediate Since Vegas estimates the BaseRTT to compute the expected node detects a disconnection [5]. The Mobile End Transport flow rate and adjust congestion window size, it is important Protocol (METP) is a split-connection protocol that replaces to get an accurate BaseRTT. When one or both of two end the TCP/IP protocol stack over the wireless interface which hosts of a connection stay connected with each other while uses a simpler protocol with smaller headers [6]. In order changing the location, the routing path may change and lead to set up a communication with a fixed host, the routing to rerouting, which in turn may result in ∆ bias and throughput and flow control functionality of the MT (mobile terminal) is degradation due to the change of end-to-end fixed delay, undertaken by the BS (base station). An interesting feature of

This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the Proceedings IEEE Infocom. Authorized licensed use limited to: National Chiao Tung University. Downloaded on January 21, 2010 at 12:44 from IEEE Xplore. Restrictions apply. METP is that it exploits a ACK and retransmission 0311516 mechanism to deal with the errors in the wireless link. The 16-bit source port number 16-bit destination port number BS maintains both a sending and a receiving buffer along with 32-bit sequence number state information for each connection. It delivers ACKs of TCP packets back to the source host; then a separate process 32-bit acknowledgment number 20 bytes undertakes the transfer of buffered packets to the MT. 4-bit S U A P R S F Reserved header I R C S S Y I 16-bit window size (6 bits) Lightweight Mobility Detection and Response (LMDR) [7] length G G K H T N N holds a counter that represents the number of times a side has 16-bit TCP checksum 16-bit urgent pointer changed attachment points. There are 24 bits in LMDR TCP option to represent TCP Option Type (8 bits), TCP Option options (if any) Length (8 bits), Reserved bits (2 bits), CNTR (3 bits), and ECNT (3 bits) respectively. In addition, the value of CNTR data (if any) is decremented once for every subnet change, and the value of ECNT is the echoed value of CNTR. When the source concludes that there has been a remote subnet change, it will do two steps. First, it resets the congestion control state, Fig. 1. The ‘SIG’ bit in TCP header records the change of receiver’s COA. RTTM state, and RTO timer as if this is a new connection. Second, for each “stale ACK”, which is the acknowledgement corresponding to data sent on the old path, is received, it that the receiver’s COA has been changed. In the beginning, doesn’t adjust the congestion window and send any new data the value of ‘SIG’ bit is set to 0. Once a receiver detects the into the network until there is a timeout or destination tells change of its COA, it will alter the ‘SIG’ bit value to inform source to send new data. When CN doesn’t support the route the source to re-measure the BaseRTT. We do not only set optimization, this mechanism may be not efficient. the ‘SIG’ bit in the first packet because the packets may get lost during handoff. Whenever a sender receives an ACK, it IV. DEMO-VEGAS compares the value of the ‘SIG’ bit with its current value. If A. Motivation they are different, the sender will re-measure the BaseRTT. TCP Vegas is a rate based mechanism, it adjusts the con- Since idea is simple and space is limitative, we omit the gestion window based on the current congestion window size, pseudo codes in this section. The proposed scheme can im- BaseRTT, and newly measured RTT. Vegas can successfully prove the performance of TCP Vegas based on the simulation avoid the congestion in the network, so there are implementa- results in the following section. tions of Vegas in some operating systems such as Linux and V. P ERFORMANCE EVA L UAT I O N NetBSD. However, it would compute ∆ bias when the fixed A. The Simulation Environment delay of routing path changes. Since Vegas could not detect a prolonged BaseRTT, so it decreases the congestion window size until the value of ∆ is between α and β. As a result, CN on a Mobile IP network, Vegas may not utilize the bandwidth 5Mbps 5ms efficiently. We propose a variant of TCP Vegas, Demo-Vegas, to solve this issue. Our method does not influence the original Router scheme on the wired network. B. The Scheme of Demo-Vegas When a node moves from its home network to a foreign 5Mbps 5Mbps 5Mbps Xms Yms Zms network, it will change its COA to receive packets. Since the HA FA1 FA2 fixed delay of routing path may be changed, we modify the 1Mbps 1Mbps 8ms* 1Mbps 8ms* end hosts including both the sender and receiver to detect their 8ms* location change in Demo-Vegas. In the sender side, while the MN MN MN sender knows that its COA is changed (if it moves to another foreign network) or is cancelled (if it moves back to its home network), it will re-measure the BaseRTT. In the receiver side, Fig. 2. A simple topology for simulation experiments. a receiver will tell the sender to re-measure BaseRTT when it changes its COA. Thus, we use a reserved bit in TCP header, The simulation experiments are conducted using the ns2 called ‘SIG’ bit as shown in Fig. 1, to represent the change [9], version 2.26. A simulation network topology is shown in of receiver’s COA. The sender records the value of ‘SIG’ Fig. 2, where CN and MN represent end hosts. CN and MN and the receiver will keep the ‘SIG’ bit value of each ACK are the two end sides which execute either Vegas or Demo- unchanged until its COA is changed again. When the value Vegas. The application service in our simulation is FTP. The of ‘SIG’ bit changes from 0 to 1 (or from 1 to 0), it means receiver sends an ACK for every data packet received. For

This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the Proceedings IEEE Infocom. Authorized licensed use limited to: National Chiao Tung University. Downloaded on January 21, 2010 at 12:44 from IEEE Xplore. Restrictions apply. the convenience of presentation, we assume that all window The RTT is at least 38 ms or 34 ms respectively depending sizes are measured in number of fixed-size packets, which are on whether the MN is in the foreign network 1 or in the 1000 bytes. Router, HA, FA1 and FA2 represent three finite- foreign network 2. In Vegas, the sender is unable to tell the buffer gateways. The buffer size in each gateway is set to 50 routing path change from congestion, so the latter is assumed. packets. For the constant-load experiment, drop-tail gateways Therefore it reduces the congestion window size and thus the with FIFO service are assumed. The bandwidth is 5 Mbps throughput decreases. While in Demo-Vegas, the sender is for all wired links. The propagation delay is 5 ms from CN able to detect the receiver’s location change through ‘SIG’ bit to router, X ms from router to HA, Y ms from router to and consequently re-measures the BaseRTT. The throughput FA1, and Z ms from router to FA2, respectively. From an of Vegas and Demo-Vegas are shown in Fig. 3, where we can agent (HA, FA1 or FA2) to MN, the bandwidth is 1 Mbps observe that Demo-Vegas outperforms Vegas when the MN is and wireless transmission delay is a multiple of 8 ms which in the foreign networks. includes both packet transmission delay and the propagation We are interested in the influence of using reverse tunnel, in delay. The former may account the layer 2 retransmission due the second simulation, the MN moves from (150, 275) to (400, to unsuccessful frame delivery, while the later can be ignored 275) at the 10th second and comes back at the 60th second because the propagation delay is much smaller comparing with a speed 10m/s. Since a FA could not help a visiting MN with the packet transmission delay. In addition, this is a two route the ACKs which may be blocked by a firewall or other dimensional plane in topology. The distance of radio coverage security systems in the visited FA. Therefore, the MN must for the agent is 75 meters. The position of HA is (200, 300), use reverse tunnel to send ACKs back to its HA, then the HA FA1 is (350, 300) and FA2 is (500, 300). routes the ACKs to the CN. Here, the BaseRTT is about 32 ms, CN is the source host, MN is the destination host, X=3 B. Simulation Result and Y=1 (in order to distinguish one-way tunnel from two-way TCP Vegas re-initializes the BaseRTT and re-transmits tunnel). Fig. 4 shows that FA helps route the ACKs from MN the lost packets when a short session finishes its handoff when the MN is in the foreign network. In other words, only process. Therefore, in following simulations, we show the the mechanism of tunnel is used here. On the contrary, in Fig. comparisons between TCP Veags and our mechanism using 5 FA does not route the ACKs through itself from MN, so MN a long session, and focus on their behavior after the handoff(s). must use the reverse tunnel to send the ACKs. When the MN 1) Configuration with a fixed sender and a mobile receiver:

In the first simulation, CN is the sender, MN is the receiver, 700

X=3, Y=3 and Z=1. The BaseRTT is about 32 ms if the packet 600 is transmitted successfully the first time. The MN moves with 500 a speed of 10 m/s from (150, 275) to (350, 275) at the 10th th 400 Demo-Vegas second, then moves to (550, 275) at the 40 second. It starts Vegas to come back (350, 275) at the 70th second, then return to 300 th (150, 275) at the 100 second. When MN is in the foreign 200 Throughput(Kbps) network, the datagrams are routed from CN to HA, tunneled 100 from HA to FA, and FA de-tunnels these datagrams to MN. 0 The ACKs are routed directly from MN to CN through the FA. 0 102030405060708090100 Time(s)

700 Fig. 4. Throughput of Vegas and Demo-Vegas. CN is the source host, MN 600 is the destination host, X=3 and Y=1.

500 700 Demo-Vegas 400 Vegas 600

300 500

400 Demo-Vegas 200 Vegas Throughput(Kbps) 300 100 200 Throughput(Kbps) 0 100 0 10 20 30 40 50 60 70 80 90 100 110 120 130 Time(s) 0 0 102030405060708090100 Time(s)

Fig. 3. Throughput of Vegas and Demo-Vegas. When MN is in the foreign network, datagrams are tunneled from HA to FA. X=3, Y=3 and Z=1, Sender: Fig. 5. Throughput of Vegas and Demo-Vegas. The conditions are same as CN, Receiver: MN. in Fig. 4 except using reversed tunnel.

This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the Proceedings IEEE Infocom. Authorized licensed use limited to: National Chiao Tung University. Downloaded on January 21, 2010 at 12:44 from IEEE Xplore. Restrictions apply. is in the foreign network, the RTT is at least 34 ms and 40 will assume the congestion occurs in the path and decrease the ms, as shown in Fig. 4 and Fig. 5, respectively. Accordingly, congestion window size. In Demo-Vegas, once a MN changes the throughput of Vegas in Fig. 4 is better than that in Fig. its COA, it informs the sender to re-measure the BaseRTT. 5. However, Demo-Vegas always performs better throughput Therefore, the throughput of Demo-Vegas can be kept at a than Vegas no matter which mechanism is used, as observed steady value no matter the MN leaves from or comes back to in both Fig. 4 and Fig. 5, because it can detect the change of its home network. In addition, the way of route optimization routing path. in IPv4 is much like that in mobile IPv6, so Demo-Vegas is In the third simulation, the CN supports the route optimiza- still suitable in IPv6 network. tion which enables datagrams to be routed directly from CN to Due to the space limitation, we only show the results of MN (or from MN back to CN) when MN moves to a foreign configuration with a fixed sender and a mobile receiver. Fur- network. Similarly, the CN is sender, the MN is receiver and thermore, the diagrams of configuration with a fixed receiver the movement of the MN is same as the second simulation. and a mobile sender, or two mobile nodes are just like that with There are two situations here, in the first one the BaseRTT of one fixed node and one mobile node. From Figures 3∼7, we the new routing path is longer than the old one, while in the could observe that the performance of Demo-Vegas is much second one, it is just the opposite. Figure 6 shows the former better than Vegas when one side is fixed and the other side is case with X=1 and Y=3. When MN is in the foreign network, mobile because Demo-Vegas could re-measure the BaseRTT the throughput of Vegas is not very low because it could not in time. Thus, when both end sides are mobile, the throughput detect the change of fixed delay in the routing path. However, of Demo-Vegas will be still better than Vegas. in Fig. 7, when the MN moves back to its home network, the VI. CONCLUSIONS throughput is decreased to a small value. Here, we set X=3 and Y=1 to represent that the BaseRTT of the new routing path is We propose and evaluate a new variant of TCP Vegas, shorter than the old one when the MN moves into a foreign called Demo-Vegas, to improve the performance over Mobile network. When MN returns back to its home network, Vegas IP network. In this work, we achieve a significantly higher throughput comparing with original TCP Vegas on a Mobile IP network. Demo-Vegas could detect the change of routing path 700 then re-measure the BaseRTT to avoid computing the value of ∆ 600 bias. From the numerical result of Vegas and Demo-Vegas with triangular routing, reverse tunnel and route optimization 500 Demo-Vegas from the simulations, it shows that Demo-Vegas is more 400 Vegas suitable than Vegas on a Mobile IP network. In addition,

300 Demo-Vegas will still work well when the IPv4 environment changes to IPv6. Furthermore, the ‘SIG’ bit setting propagates 200

Throughput(Kbps) past the NAT mechanism that enables mobile IP, to the remote 100 host, forcing that host to recalculate its Vegas parameters. 0 The mechanism of Demo-Vegas is simple and can be easily 0 102030405060708090100 implemented on existing operating systems. We are going to Time(s) modify Demo-Vegas to fit the node in the micro mobility networks in the future works.

Fig. 6. Throughput of Vegas and Demo-Vegas with CN supporting route REFERENCES optimization and longer RTT in a foreign network. [1] L. Brakmo and L. Peterson, ‘TCP Vegas: End-to-End Congestion Avoidance on a Global Internet’, IEEE J. Sel. Areas Commun., VOL. 700 13, NO. 8, pp. 1465-1480, October 1995 600 [2] C. Perkins, ‘IP Mobility Support’, IETF RFC 3220, January 2002 [3] C. Perkins, ‘IP Mobility Support for IPv4’, IETF RFC 3344, August 500 2002 [4] A. Myles, D. B. Johnson, and C. E. Perkins, ‘A Mobile Host Protocol 400 Demo-Vegas Supporting Route Optimization and Authentication’, IEEE J. Sel. Areas Vegas Commun., VOL. 13, pp. 839-849, June 1995. 300 [5] K. Brown and S. Singh, ‘M-TCP: TCP for Mobile Cellular Networks’, 200 ACM SIGCOMM Computer Communication Review, VOL. 27, NO. 5,

Throughput(Kbps) pp. 19-43, October 1997 100 [6] K. Wang and S. Tripathi, ‘Mobile-End Transport Protocol: An Alterna- tive to TCP/IP over Wireless Links’, Proc. IEEE INFOCOM, VOL. 3, 0 pp. 1046-1053, April 1998. 0 102030405060708090100 [7] Y. Swami, K. Le, and W. Eddy, ‘Lightweight Mobility Detection and Time(s) Response (LMDR) Algorithm for TCP’, IETF Internet-Draft draft- swami-tcp-lmdr-04, August 2004 [8] D. Johnson, C. Perkins, and J. Arkko, ‘Mobility Support in IPv6’, IETF Fig. 7. Throughput of Vegas and Demo-Vegas with shorter RTT in a foreign Internet-Draft mobileip--24, June 2003 network and CN supporting route optimization. [9] http://www.isi.edu/nsnam/ns/

This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the Proceedings IEEE Infocom. Authorized licensed use limited to: National Chiao Tung University. Downloaded on January 21, 2010 at 12:44 from IEEE Xplore. Restrictions apply.