Вы находитесь на странице: 1из 10

The Second International Conference on Innovations in Information Technology (IIT05)

PERFORMANCE EVALUATION OF TCP IN MOBILE AD-HOC NETWORKS


H. M. El-Sayed College of Information Technology, UAE University, UAE (helsayed@uaeu.ac.ae) O. Bazan,U. Qureshi, M. Jaseemuddin WINCORE Lab, Ryerson University, Toronto, Ont., Canada (obazan, jaseem)@ee.ryerson.ca Correspondence Email: helsayed@uaeu.ac.ae ABSTRACT
Wireless Mobile Ad-hoc networks offer challenges to TCPs congestion control mechanism related to its inability of distinguishing between losses induced by congestion and others types of losses. There are numerous proposals to deal with this issue that can be broadly categorized to either end-system based or network-assisted. In this paper we present a summary of those proposals with emphasis on their distinguishing characteristics. We also present the performance study of an end-system based mechanism that performs precise detection of network states by measuring appropriate metrics. We evaluated its performance under variety of network conditions running different class of routing protocols: DSR (reactive) and DSDV (proactive). Our performance study shows the effect of different factors in isolation and in combination with each other on the TCP performance, and the impact of routing protocol design approaches in the TCP stability.

Keywords: TCP Performance, Mobile Ad-hoc Networks, Routing protocols DSR and DSDV.

1. INTRODUCTION
Wireless Mobile ad-hoc networks (MANET) offer unique challenges and opportunities to network designers and administrators. They increase system capacity, reduce deployment cost as they require no supportive infrastructure, and reduce administrative cost as they are selfconfigurable and self-adaptable. However, their inherent characteristic of frequent topology changes adds complexity to routing and transport connection management. Since TCP carries more than 80% of Internet traffic and support most widely used applications, its consistent and stable performance is desirable for application service delivery in MANET. Although TCP provides reliable end-to-end delivery of data over wired networks, several recent studies have indicated that TCP performance degrades significantly in MANET [1]-[3]. In MANETs, the main problem of TCP lies in assuming every packet loss or delay exceeding retransmit timeout as a signal of indicating congestion in the network even though the source of loss or delay might be unrelated to congestion, such as losses due to high BER of wireless channel, delays due to reordering of packets in case of frequent route changes etc. Over the last few years, numerous enhancements have been proposed to improve TCP performance in MANETs, but most of them have focused only on one or subset of the factors contributing to the degradation of TCP performance. The proposed mechanisms either depend on feedbacks from the network or detecting network states at the end nodes. In our performance study, we started with a detailed investigation of the main factors affecting the performance of TCP in MANETs and a comparative analysis that shows how different proposed approaches dealt with these issues. After that, we investigated the impact of routing protocols on TCP performance under variety of channel and network conditions. We selected DSR [4] and DSDV [5], which represent two different classes of routing protocols reactive and proactive, respectively. In our simulations, we employed performance metrics defined in [6] that can be used to detect network states by measuring their values at end nodes. The paper is organized as follows: Section 2 provides an overview of TCP in MANET. Section 3 describes the DSR and DSDV algorithms. Section 4 describes the simulation setup and results. Finally, we conclude the paper with directions for future work. 1

The Second International Conference on Innovations in Information Technology (IIT05)

2. TCP IN MANET
Although TCP provides reliable end-to-end delivery of data over wired networks, several recent studies have indicated that TCP performance degrades significantly in mobile ad hoc networks [1]-[3]. This is mainly because TCP considers any packet loss and/or delay as a congestion signal although MANETs encounter several types of losses and delays that are not related to congestion. Non-congestion losses/delays mainly occur because TCP cannot adapt well to such mobile wireless multi-hop networks. The following subsections discuss different factors that affect TCP performance in MANET, and present several approaches that have been proposed in the literature to improve TCP performance. 2.1 Factors Affecting TCP Performance in MANETs In addition to the traditional problems of wireless networking, the mobile multihop ad hoc environment brings more challenges to TCP. In this section, we present a detailed analysis of all the factors that cause degradation in the performance of TCP in MANETs. High BER: Wireless links are susceptible to high bit error rates due to signal attenuation, Doppler shift and multipath fading. This leads to the loss of TCP data segments or acknowledgments. Hence, the TCP sender will unnecessary invoke congestion control. Path Asymmetry: In MANETs, it may manifest in several forms like bandwidth asymmetry, loss rate asymmetry, and route asymmetry. If the ACKs get bunched up, the sender may transmit data in a burst, which could lead to packet loss on the forward path. Also, disruption of the ACK stream can disrupt window growth and degrade performance to a fraction of the available bandwidth. Route Failures: The main cause of route failures is node mobility. The route reestablishment duration depends on the underlying routing protocol, mobility patterns of nodes, and traffic characteristics. It is possible that discovering a new route may take significantly longer than the RTO at the sender. As a result, the TCP sender will unnecessary invoke congestion control. Network Partitioning: It is due to node mobility or energy-constrained operation of nodes. If the sender and the receiver of a TCP connection lie in different partitions, all the sender's packets get dropped by the network resulting in the sender invoking congestion control. Frequent disconnections cause a condition called serial timeouts at the TCP sender. This may lead to long idle periods during which the network is connected again, but TCP is still in the back off state. TCP congestion window size: In MANETs, since the routes change many times during the lifetime of a TCP connection, the relationship between the congestion window size and the tolerable data rate becomes too loose. In [7], the authors show that if the congestion window size is greater than an upper bound, the TCP performance will degrade. Also, the authors in [8] reported that, given a specific network topology and flow patterns, there exists an optimal TCPs window size W* by which TCP achieves the best throughput. But, unfortunately, TCP operates at an average window size that is much larger than W*; this leads to increased packet loss due to the contention on the wireless channel. Power Scarcity: Because batteries carried by each mobile node have limited power supply, the life time is limited. Since each node is acts as a router as well as an end system, unnecessary retransmissions of TCP segments consume this scarce power resource causing inefficient utilization of available power. Multipath routing: Some routing protocols maintain multiple routes between source and destination to minimize the frequency of route re-computation. Unfortunately, this sometimes results in a significant number of out-of-sequence packets arriving at the receiver causing the generation of duplicate ACKs which cause the sender to invoke congestion control. Interaction between MAC protocol and TCP: In a multi-hop environment, the interaction of the 802.11 MAC protocol with the TCP protocol mechanisms may lead to unexpected serious 2

The Second International Conference on Innovations in Information Technology (IIT05)

problems [9]. These problems include instability, link capture effect and one-hop unfairness. The main causes of these problems are the hidden station and exposed station problems of the 802.11 MAC protocol 2.2 TCP Performance improvement through detection of network states Several approaches have been proposed to improve TCP performance in MANETs. Most of these approaches rely on differentiating between the network states that cause packet losses and taking the appropriate reaction in each case. The approaches either depend on feedback from the network layer to the transport layer, or mainly end-to-end approaches in which the transport layer does the entire job alone. 2.2.1 Network Feedback Approaches In these approaches, network implements a monitoring mechanism that generates a notification message when it detects an abnormal event so that TCP may react. In [10], TCP-F is proposed to overcome the TCP false reaction towards route failures in MANETs. As soon as the network layer at any node detects the disruption of a route, it explicitly sends a Route Failure Notification packet to the source. Consequently, the TCP sender stops sending packets and freeze all its variables (such as timers and congestion window size). When one of the intermediate nodes learns about a new route to the destination, it sends a Route Re-establishment Notification packet to the source. The TCP sender leaves the snooze state, restarts the timers from their frozen values and resumes the transmission based on the stored sender window and timeout values. Similarly, the approach in [11] uses an Explicit Link failure Notification to inform the TCP sender about the route failure. The only difference from TCP-F is that the sender in the snooze state periodically probes the network and when an ACK is received, it considers it as an indication of route reestablishment. A modified version of this approach is introduced in [12] and known as TCP-RC. TCP-RC recomputed the congestion window size and the slow start threshold for the TCP connection after the route is reconstructed instead of using the frozen values. An obvious limitation of this approach is that these techniques need to be deployed at every node. ATCP, proposed in [13], deals with the problems of high BER, route failures, network partitioning and multipath routing. A thin layer called ATCP is inserted between TCP and IP layers. The ATCP layer monitors TCP state and the state of the network (based on ECN and ICMP message) and takes appropriate action. The ATCPs four possible states are: Normal, Congested, Loss, disconnected. When ATCP sees that three duplicate ACKs have been received, it considers it a channel loss and only transmits the unacknowledged segments. Congestion is detected by ECN message. In case of temporary network partitioning, the ATCP receives an ICMP Destination Unreachable message. Hence, it puts the TCP sender in the persist state, sets TCP's congestion window (cwnd) into one and enters itself in the disconnected state. TCP periodically generates probe packets until it start receives their ACKs. This removes TCP from persist mode and moves ATCP back into normal state. TCP-BuS (TCP Buffering capability and Sequence information) is another approach used to detect route failures [14]. When a node detects a route failure, it sends an Explicit Route Disconnection Notification to the source containing the sequence number of the TCP segment pending in the head of the node's transmit queue. All the intermediate nodes will buffer the packets in their queues. When a route is discovered, the receiver sends to the sender the last sequence number it has successfully received. The sender only transmits the lost packets and the intermediate nodes starts sending the buffered packets. The authors in [15] propose a new approach called Split TCP to improve the performance of TCP in terms of fairness and throughput. This approach depends on splitting long TCP connections into shorter localized segments. The interfacing node between two localized segments is called proxy. The proxy intercepts TCP packets, buffers them and acknowledges their receipt to the source (or previous proxy) by sending a local acknowledgment (LACK). Upon the receipt of a LACK from the next proxy (or the final destination), a proxy will purge the packet from its buffer. The source keeps transmitting according to the rate of arrival of LACKs from the next 3

The Second International Conference on Innovations in Information Technology (IIT05)

proxy, but purges a packet from its buffer only upon receipt of an end-to-end ACK for that packet from the destination. This keeps the end-to-end reliability of TCP. In [7], the authors address the aspect: how to properly set TCP's congestion window limit (CWL) to achieve optimal performance. They turned the problem of setting TCP's CWL into identifying the bandwidth-delay product (BDP) of a path which is the maximum number of packets that the path can support without causing congestion. By considering the transmission interference of the IEEE 802.11 MAC layer protocol, they derived an upper bound of BDP, which is approximately 1/5 of the round-trip hop-count (RTHC). Based on this upper bound, they proposed to use an adaptive CWL setting strategy to adjust TCP's maximum window size according to the current path's RHTC. In MANET, RHTC of a path can be obtained through a source routing protocol or by using a TTL-like counter in the IP header to carry the hop count of the path. 2.2.2 End-to-End Approaches End-to-end approaches requite no network support. The end nodes (sender or receiver) can detect the network state by measuring appropriate traffic parameters. For example, high volume of out of order delivery signifies route change. In [16], a heuristic is employed to distinguish between route failures and congestion without relying on feedback from other network nodes. When timeouts occur consecutively, this is taken to be evidence of a route loss. The unacknowledged packet is retransmitted again but the RTO remains fixed until the route is reestablished and the retransmitted packet is acknowledged. TCP-DOOR (Detection of Out-Of-Order and Response) is another pure end-to-end approach to improve TCP performance by detecting and responding to out-of-order (OOO) packet delivery events, which are interpreted as an indication of route failure [17]. The non-decreasing property of ACK sequence numbers makes it simple for the sender to detect OOO delivery of non-duplicate ACK packets. To detect OOO delivery of duplicate ACK packets, they use one-byte TCP option which is incremented with each duplicate ACK. ADTCP [6] is an end-to-end approach which is based on the use of multi-metric joint identification in order to detect different network states in order to take the appropriate reaction. They introduced four different metrics to be measured which we used in our simulations. The first metric IDD (inter-packet delay difference) reflects the congestion level along the forwarding delivery path. IDD is unaffected by random channel errors and packet sending behaviors but can be influenced by non-congestion conditions like mobility induced out-of-order packet delivery. The second metric is STT (short-term throughput) which is also used to detect network congestion. STT is less sensitive to short term out-of-order packet delivery than IDD but it is affected by bursty channel errors. Thus, they combine IDD and STT to jointly identify network congestion. The other two metrics are used for non-congestion state identification. POR (packet out-of-order delivery ratio) is intended to indicate a route change event while PLR (packet loss ratio) is used to measure the intensity of channel error. Upon each packet arrival at the receiver, it calculates the above four metrics, estimate the network state and send the state information to the sender with every ACK packet so the sender can take the suitable action. 2.2.3 Comparative Analysis Comparing the two approaches, we find that end-to-end approaches are easier to implement and provide more flexibility, while feedback approaches are more accurate as the information is coming directly from the network. Furthermore, it is clear that each approach deals only with one or subset of the factors causing the bad performance of TCP in MANETs. However, most commonly, these solutions deal with route failures. Actually, this is reasonable because in such a dynamic environment the frequency of route failures is very high due to node mobility. We also find that most of the presented approaches take reactive actions. In these approaches, TCP takes different actions rather than invoking congestion control when a non-congestion loss occurs. Some approaches are preventive (e.g. Split TCP). The target of this kind of approaches is 4

The Second International Conference on Innovations in Information Technology (IIT05)

to reduce the probability of other losses that may lead to false notification and unnecessary congestion control reaction. In section 4 we show the results of our performance study on end-system based TCP.

3. ROUTING IN MANET
Routing protocols for mobile ad hoc networks can be broadly categorized as: (i) On-demand protocols, and (ii) Link-state protocols. In On-demand routing protocols a source learns the routes when it is ready to send a packet to the destination. Depending upon caching the route remains valid until the destination becomes unreachable or cache times. In contrast a node running linkstate protocol maintains routing tables containing routes to every other node in the network. All nodes periodically update their tables to maintain a consistent and up-to-date view of the network. When the network topology changes the node propagates update messages through out the network. For this study we selected DSR representing on-demand and DSDV representing link state routing protocols. Dynamic Source Routing (DSR): DSR employs two mechanisms: (i) Route Discovery mechanism to discover the route for the first time, and (ii) Route Maintenance mechanism to repair an existing route. During route discovery the source broadcasts a route request packet, which contains a route record that is a list of nodes forming the route. Every node includes its address in the packet and broadcasts the packet further unless the node finds itself to be the target of the route request or has the requested route in its cache. In that case, the node returns a route reply packet including the list of the nodes on the path extracted from the route request packet. Destination-Sequenced Distance Vector (DSDV): In DSDV, every node in the network maintains a routing table of route entries that contain the destination prefix, the next hop to the destination, sequence number generated by the destination, and metric of the path. Nodes advertise routing information by broadcasting routing table update packets periodically or immediately after the network topology changes. DSDV uses hop count as the route metric.

4. SIMULATION RESULTS
This section discusses results of our simulation of TCP in ad-hoc network to evaluate its performance under variety of network conditions. We used ns-2 simulator with CMU wireless extension. We simulated 15 nodes in the area of 800mx800m moving randomly at the pedestrian speed of 0-10m/s. We considered IEEE 802.11 MAC with maximum rate 2 Mbps in free space. The effective communication range for each node is set to 250 meters. We used Random Way Mobility Model to create mobility patterns as input to our simulation. We created 38 mobility patterns and selected five out of them for our study, which were catching the major dynamics. We simulated a TCP connection between node 0 and 7 running from 10sec to 150sec of the simulation time. The TCP sends 1460 bytes, and its congestion window does not exceed 8 packets. The simulation runs for 300 seconds. We simulated congestion condition by introducing CBR traffic into the network during 60-80 seconds of simulation time. The CBR traffic carries 1460 bytes packets at the rate of 4.672 Mbps. We detect the network state by measuring, at the receiver, the metrics presented in [6] which are: IDD, STT, POOR and PLR (discussed in section 2.2.2). Also, we measured the Round Trip Time (RTT). We simulated congestion, channel error, routing changes and network partitioning conditions by isolating them from each other. Figures 1 and 2 show TCP throughputs for all five mobility scenarios under both congestion and non- congestion conditions for both DSR and DSDV respectively.

The Second International Conference on Innovations in Information Technology (IIT05)

Figure 1: TCP Throughput for DSR (a) under no congestion, and (b) under congestion

The Second International Conference on Innovations in Information Technology (IIT05)

Figure 2: TCP Throughput for DSDV (a) under no congestion, and (b) congestion It is evident from the above figures that the extent and duration of congestion varies for different mobility scenarios. In particular, we can observe that the congestion can be effective in reducing 7

The Second International Conference on Innovations in Information Technology (IIT05)

the TCP throughput for as long as the path for CBR traffic intersects with the path of the TCP connection. We can observe all three possibilities of path intersection in different mobility scenarios, for example: (1) Full path intersection in MS3, (2) Partial path intersection in MS5, and (3) No path intersection in MS4. This shows that the traffic congestion in an ad-hoc network may dissipate because of node mobility. We computed packet out of order delivery and losses under different channel error condition. We found that the throughput degradation is approximately the same for both DSR and DSDV. However, it is evident that packet losses for DSR are less than packets losses for DSDV under the same channel error condition, whereas packets out of order ratio is higher for DSR than for DSDV. This shows that the causes of throughput degradation are different for both protocols. In case of DSR, the route reply packets from downstream nodes refresh routes in the cache of upstream nodes under normal conditions. But channel error may corrupt some of the route reply packets causing caches expired without being refreshed. When the source finds stale route in the cache it invokes route discovery to find new routes. This happens for large number of packet delivery as shown by the high amount of packets delivered out of order. In case of DSDV, the route is computed once on the basis of least metric or latest sequence number and stored in a table. The routing table is periodically refreshed by routing advertisements generated by all the nodes in the network. When the routing advertisements are lost due to channel error the routing table becomes stale without being refreshed, which leads to long routing outage and high packet losses. We simulated the combined effects of congestion, channel error and mobility on TCP throughput for both DSR and DSDV. We chose mobility scenario MS3 to illustrate the study because of its worst-case behavior. Figure 3 shows the TCP throughput graphs for both DSR and DSDV under the same congestion, channel error and mobility conditions. It is evident from the figure that both DSR and DSDV show jittery performance due to channel error and congestion. DSR is more responsive to routing changes hence it picks up new routes of large RTT variation. In contrast, DSDV tends to react slowly to routing changes hence it exhibits less jittery performance. However, it comes with the penalty of high packet losses and long routing outages.

MS3

Figure 3 (a): TCP throughput for: DSR 8

The Second International Conference on Innovations in Information Technology (IIT05)

MS3

Figure 3 (b): TCP throughput for DSDV

CONCLUSION
In this study, we simulated TCP session in mobile ad-hoc network running two different classes of routing protocols DSR representing on-demand and DSDV representing link state protocol, under a variety of network conditions. Our main conclusions are as follows: (1) Congestion exhibits more dynamic behavior due to node mobility. Congestion duration varies depending upon the path intersection whereas congestion level varies due to session intersections. (2) Channel error causes packet losses and packets out of order delivery because of routing changes. (3) Asymmetric routes result in RTT variations. (4) Combined effects of channel error, congestion and mobility result in increasing congestion level, packets out of order ratio and packet loss ratio. Furthermore, the main source of throughput degradation in DSR seems to be POOR whereas in DSDV it seems to be PLR. We need to conduct further study of other protocols of the above classes to identify routing mechanisms that contribute to different factors of TCP performance.

REFERENCES
[1] G. Anastasi, M. Conti and E. Gregori, IEEE 802.11 Ad Hoc Networks: Protocols, Performance and Open Issues, A book chapter. Ad Hoc Networking edited by S. Basagni, M. Conti, S. Giordano and I. Stojmenovic. IEEE Press and John Wiley and Sons, Inc, New York, 2004. [2] I. Chlamtac, M. Conti, and J. Liu, Mobile ad hoc networking: imperatives and challenges, Ad Hoc Networks Journal, vol.1, no. 1, pp. 13-64, Jul. 2003. [3] A. Al Hanbali, E. Altman, P. Nain, A Survey of TCP over Mobile Ad Hoc Networks, Research Report no. 5182, INRIA Sophia Antipolis research unit, May 2004 . [4] D. B. Johnson and D. A. Maltz, Dynamic Source Routing in Ad hoc wireless networks, Mobile Computing, edited by Tomas Imielinski and Hank Korth, Kluwer Academic Publishers, ISBN: 0792396979, Section 5, pages 153-181, 1999. [5] C. E. Perkins and P. Bhagwat, Highly Dynamic Destination-Sequenced Distance-Vector Routing (DSDV) for Mobile Computers, Proceeding of the ACM SIGCOMM Conference on Communications Architectures, Protocols and Applications, London, UK, pages 234-244.

The Second International Conference on Innovations in Information Technology (IIT05)

[6] Z. Fu and B. Greenstein, Design and Implementation of a TCP-Friendly Transport Protocol for Ad Hoc Wireless Networks, IEEE International Conference on Network Protocols (ICNP'02), pages 216228, Paris, France, Nov. 2002. [7] K. Chen, Y. Xue, and K. Nahrstedt, On setting TCP's congestion window limit in mobile Ad Hoc networks, in Proc. of IEEE ICC, Anchorage, Alaska, USA, May 2003. [8] Z. Fu, P. Zerfos, H. Luo, S. Lu, L. Zhang, and M. Gerla, The impact of multihop wireless channel on TCP throughput and loss, in Proc. of IEEE INFOCOM, San Francisco, USA, Apr. 2003. [9] S. Xu and T. Saadawi, Does the IEEE 802.11 MAC protocol work well in multihop wireless ad hoc networks?, IEEE Communications Magazine, vol. 39, no. 6, pp. 130-137, Jun. 2001. [10] K. Chandran, S. Raghunathan, S. Venkatesan, and R. Prakash, A feedback based scheme for improving TCP performance in Ad-Hoc wireless networks, in Proc. of the International Conference on Distributed Computing Systems (ICDCS 98), Amsterdam, Netherlands, May 1998. [11] G. Holland and N. Vaidya, Analysis of TCP performance over mobile ad hoc networks, ACM Wireless Networks, vol. 8, no. 2, pp. 275-288, Mar. 2002. [12] J. Zhou, B. Shi and L. Zou, Improve TCP Performance in Ad-Hoc network by TCP-RC, Proc. Of the 14th IEEE international symposium on Personal, Indoor and Mobile Radio Communications, pp. 216-220, Sept. 2003. [13] J. Liu and S. Singh, ATCP: TCP for mobile ad hoc networks, IEEE Journal on Selected Areas in Communications, vol. 19, no. 7, pp. 1300-1315, Jul. 2001. [14] D. Kim, C. Toh, and Y. Choi, TCP-BuS: Improving TCP performance in wireless ad hoc networks, Journal of Communications and Networks, vol. 3, no. 2, pp. 175-186, Jun. 2001. [15] S. Kopparty, S. Krishnamurthy, M. Faloutous, and S. Tripathi, Split TCP for mobile ad hoc networks, in Proc. of IEEE GLOBECOM, Taipei, Taiwan, Nov. 2002. [16] T. Dyer and R. Boppana, A comparison of TCP performance over three routing protocols for mobile ad hoc networks, in Proc. of ACM MOBIHOC, Long Beach, CA, USA, pp. 56-66,2001. [17] F. Wang and Y. Zhang, Improving TCP performance over mobile ad hoc networks with out-of-order detection and response, in Proc. of ACM MOBIHOC, Lausanne, Switzerland, pp. 217-225, Jun. 2002.

10

Вам также может понравиться