Tải bản đầy đủ (.pdf) (76 trang)

A study of TCP performance in wired cum ad hoc environments

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (703.12 KB, 76 trang )



A STUDY OF TCP PERFORMANCE
IN WIRED-CUM-AD HOC ENVIRONMENTS












YANG LUQING
(B. ENG., NUPT, P. R. CHINA)










A THESIS SUBMITTED
FOR THE DEGREE OF MASTER OF ENGINEERING
DEPARTMENT OF ELECTRICAL AND COMPUTER ENGINEERING


NATIONAL UNIVERSITY OF SINGAPORE
2003




Acknowledgements
I would like to express my deep and sincere gratitude to Dr. Winston Seah, who
guides me all the way to the ad hoc network world, and sparks this research with his
constant help, tremendous efforts, and precious enlightenment. I am also cordially
grateful to Dr. Yin Qinghe, who always gives me valuable inspirations and helpful
suggestions during our discussions. It is a great pleasure to have them as my
supervisors, and to work with them together.
I also thank NUS and I
2
R for providing me with this opportunity to pursue my
M.Eng study here. So many friends in NUS and I
2
R help me both in my research and
in my life here, especially I would like to acknowledge the assistance of Mr. Li Feng
and Mr. Teh Keng Hoe.
Finally, special thanks must go to my wife and my parents, who support me with
their love and encourage me to do my best in life.



I


Contents

SUMMARY IV
ABBREVIATIONS VI
LIST OF FIGURES VII
LIST OF TABLES IX
CHAPTER 1. INTRODUCTION 1
1.1 O
VERVIEW OF AD HOC NETWORKS 1
1.2 OVERVIEW OF TCP PERFORMANCE IN AD HOC NETWORKS 3
1.3 THESIS CONTRIBUTIONS 4
1.4 THESIS ORGANIZATION 5
CHAPTER 2. LITERATURE REVIEW 7
2.1 I
NTRODUCTION 7
2.2 PROPOSED TCP ALGORITHMS 7
2.3 TCP PERFORMANCE IN AD HOC NETWORKS 10
2.3.1 Improving TCP Performance in MANET 10
2.3.2 TCP Interactions with Lower Layer Protocols 11
2.4 S
UMMARY 13
CHAPTER 3. EVALUATION OF TCP ALGORITHMS IN WIRED-CUM-AD
HOC ENVIRONMENTS 14
3.1 I
NTRODUCTION 14
3.2 S
IMULATION CONFIGURATION 14
3.3 S
IMULATION RESULTS AND DISCUSSIONS 15

II


3.3.1 Static Scenario without Congestion 16
3.3.2 Static Scenario with Congestion 23
3.3.3 Scenario with Node Mobility 28
3.3.4 Impact of Rerouting on Vegas Performance 33
3.3.5 Conclusions of Evaluation Results 37
3.4 S
UMMARY 38
CHAPTER 4. IMPROVING FAIRNESS BETWEEN TCP FLOWS IN WIRED-
CUM-AD HOC ENVIRONMENTS 39
4.1 I
NTRODUCTION 39
4.2 PROBLEM IDENTIFICATION 39
4.3 DESIGN OF THE SCHEME 41
4.4 SIMULATION RESULTS 43
4.4.1 Simulation Environment 43
4.4.2 Simulation Results 45
4.5 A
NALYSIS AND DISCUSSIONS 55
4.6 LIMITATION OF OUR APPROACH AND FUTURE WORK 57
4.7 SUMMARY 58
CHAPTER 5. CONCLUSIONS AND FUTURE WORK 59
5.1 C
ONCLUSIONS 59
5.2 FUTURE WORK 60
PUBLICATION LIST 62
REFERENCES 63


III



Summary
With the rapid advancement in mobile computing devices and wireless communication
technology, the demand for continuous network connectivity regardless of physical
location has spurred interest of the use of ad hoc networks, which are instantly
deployable and find their applications in disaster rescue, battlefield, and many other
scenarios.
Ad hoc networks may operate in a standalone fashion, or may be connected to wired
networks, such as the Internet. Actually many foreseeable applications of ad hoc
networks require connections to be established between wired network and wireless ad
hoc network for various purposes, such as Internet surfing, database update, etc. We
call this kind of connection patterns wired-cum-ad hoc networks. As the de facto
transport protocol in the Internet, TCP, is sure to be used over ad hoc networks. Many
researchers have studied TCP performance in ad hoc networks that operate in a
standalone fashion. However, few researches have been done to investigate TCP
performance in wired-cum-ad hoc environments, which motivates us to conduct this
research.
This thesis provides an in-depth study on TCP performance in wired-cum-ad hoc
networks. Two important properties of TCP, throughput and fairness, are both
addressed. First, a comprehensive evaluation of different TCP algorithms performance
in wired-cum-ad hoc environments is done, and the results give clear answers to
questions like which TCP algorithm should be implemented in this specific scenario,
and how to tune TCP parameters to optimize its performance. Moreover, this thesis
also presents a scheme that successfully eliminates the severe unfairness between TCP

IV

flows spanning wired and IEEE802.11-based wireless ad hoc networks. Simulation
results show that our scheme improves the fairness between TCP flows greatly without
incurring much throughput loss.


V


Abbreviations
ACK TCP Acknowledgement
AODV Ad hoc On-demand Distance-Vector routing protocol
ARP Address Resolution Protocol
BER Bit Error Rate
CBR Constant Bit Rate
CTS Clear To Send
cwnd Congestion Window
DSDV Dynamic Destination-Sequenced Distance Vector routing
DSR Dynamic Source Routing
ECN Explicit Congestion Notification
ELFN Explicit Link Failure Notification
FIFO First In First Out
FTP File Transfer Protocol
ICMP Internet Control Message Protocol
IETF Internet Engineering Task Force
MAC Media Access Control
MANET Mobile Ad hoc NETwork
maxcwnd Maximum congestion window size
NS Network Simulator
RFC Request For Comments
RTO Retransmission TimeOut
RTS Request To Send
RTT Round Trip Time
SSA Signal Stability based Adaptive routing
SACK TCP Selective Acknowledgement

ssthresh TCP Slow Start Threshold
TCP Transmission Control Protocol
UDP User Datagram Protocol


VI


List of Figures
Figure 3.1 The static scenario without wired cross traffic 16
Figure 3.2 MAC layer trace of TCP and IEEE 802.11 interaction 19
Figure 3.3 Static scenario with congestion on wired links 23
Figure 3.4 TCP goodput (kb/s), CBR = 1.6 Mb/s, Exp = 0.4 Mb/s 25
Figure 3.5 TCP goodput (kb/s), CBR = 1.5 Mb/s, Exp = 0.4 Mb/s 26
Figure 3.6 Scenario for mobility impact study 29
Figure 3.7 TCP performance in mobile environments 30
Figure 3.8 Scenario for studying rerouting impact on Vegas 34
Figure 3.9 Rerouting impact on Vegas (Goodput: Kb/s) 35
Figure 3.10 Congestion window size comparison 36

Figure 4.1 Testbed for identification of unfairness 40
Figure 4.2 Scenario A for simulation 43
Figure 4.3 Goodput of normal scheme, wired link delay = 5ms 46
Figure 4.4 Goodput of our scheme, wired link delay = 5ms 46
Figure 4.5 Maxcwnd = 4, wired link delay = 5ms, normal scheme 47
Figure 4.6 Maxcwnd = 4, wired link delay = 5ms, our scheme 47
Figure 4.7 Maxcwnd = 8, wired link delay = 5ms, normal scheme 48
Figure 4.8 Maxcwnd = 8, wired link delay = 5ms, our scheme 48
Figure 4.9 Goodput of normal scheme, wired link delay = 45ms 49
Figure 4.10 Goodput of our scheme, wired link delay = 45ms 50

Figure 4.11 Scenario B for simulation 51
Figure 4.12 Goodput of normal scheme for scenario B 51
Figure 4.13 Goodput of our scheme for scenario B 52

VII

Figure 4.14 Maxcwnd = 8, normal scheme for scenario B 53
Figure 4.15 Maxcwnd = 8, our scheme for scenario B 53
Figure 4.16 Pure ad hoc scenario with extreme unfairness 54
Figure 4.17 ACK sequence progress, normal scheme 54
Figure 4.18 ACK sequence progress, our scheme 54



VIII


List of Tables
Table 3.1 TCP goodput (W0 to node 1, kb/s) 17
Table 3.2 TCP goodput (W0 to node 2, kb/s) 17
Table 3.3 TCP goodput (W0 to node 3, kb/s) 17
Table 3.4 TCP goodput (W0 to node 4, kb/s) 17
Table 3.5 TCP goodput (W0 to node 5, kb/s) 18

Table 4.1 Parameter settings in ns 44
Table 4.2 Parameter settings in our scheme 44








IX



Chapter 1. Introduction
1.1 Overview of Ad Hoc Networks
The Internet Engineering Task Force’s (IETF) Mobile Ad Hoc Networks (MANET)
Working Group [1] describes mobile ad hoc network as an autonomous system of
mobile routers (and associated hosts) connected by wireless links, the union of which
forms an arbitrary graph. The routers are free to move randomly and organize
themselves arbitrarily. Thus, the network's wireless topology may change rapidly and
unpredictably. Such a network may operate in a standalone fashion, or may be
connected to the larger Internet. In real applications, ad hoc networks are multiple hop
wireless networks consisting of a large number of radio-equipped nodes that may be as
simple as autonomous (mobile or stationary) sensors to laptops mounted on vehicles or
carried by people.
Ad hoc networks have several salient features that make it different from wired
network, and cellular network:
• Node Functions. Each node in wireless ad hoc networks not only plays the role
of a communication endpoint, but also a router between nodes that are multiple
hops apart, i.e., every node has the obligation to forward packets for others
besides enjoying services from other nodes.
• Node Mobility. The unpredictable movement of nodes leads to rapidly
changing network topology as well as frequent link breakages, which pose
tough challenges on the design of routing protocol, and affect TCP
performance severely.
1

Chapter 1. Introduction
• Node Operation. Each node depends on batteries to provide energy for
transmission and processing, thus power must be conserved at every node to
maximize node lifetime. Meanwhile, the raw bandwidth of the wireless channel
is limited. Media access contention, fading and interference make the effective
bandwidth even much less than the raw bandwidth. In short, ad hoc nodes
operate in a power-constrained and bandwidth-constrained mode.
Ad hoc networks are self-organizing and instantly deployable, thus it is very suitable
for those situations where the fixed infrastructure does not exist or is destroyed as well
as situations where it is not suitable or impossible for men to access. It finds its
important applications in battlefield, disaster rescue, etc. In fact, with the rapid
development of communication technology and constant optimization of network
protocol performance, the scope of MANET applications will be broadened further to
include many civilian applications.
Besides operating standalone, sometimes ad hoc nodes may need to establish
connections with servers in wired networks. We call this kind of connection patterns
“wired-cum-ad hoc networks”. For example, a node that finds the potential target may
need to send the collected data back to its command center for processing and further
decisions; or the command center needs to update the node with the latest target
information or database. Another foreseeable and important application is that the ad
hoc nodes may need to access the Internet at times. With the popularity of the Internet,
this may become a basic feature of the future commercial products of ad hoc networks.
All the above applications require TCP connections to span both wired domain and
wireless ad hoc domain.

2
Chapter 1. Introduction
1.2 Overview of TCP Performance in Ad Hoc Networks
The Transmission Control Protocol (TCP) is a reliable, connection-oriented, full-
duplex transport protocol. It is used by many end-user applications, such as Web

browser, e-mail, and FTP. Actually the vast majority of today’s Internet traffic is
carried by TCP. As the de facto transport protocol on the Internet, the use of TCP over
ad hoc networks is a certainty.
TCP assumes packet loss as a signal of network congestion. If it observes successful
transmission of its packets, TCP will increase the congestion window gradually to
detect extra bandwidth. Once packet loss is detected, TCP will invoke congestion
control measures to avoid further congestion, such as reduction of congestion window,
or exponential backoff of the retransmission timer. In this way, TCP successfully
avoids the likely network collapse caused by congestion while fully utilizing the
network resource dynamically.
TCP is designed and tuned well for wired networks over these years. However, in ad
hoc environments, the assumption of TCP that packet loss signals congestion becomes
quite problematic. Besides packet loss caused by inherent wireless channel errors,
which has been extensively studied and solved by numerous works in research on TCP
performance in general wireless environments, one unique characteristic of ad hoc
networks, node mobility, poses severe challenges on TCP.
The random movement of nodes causes frequent link breakages, or worse, network
partitions, which forces TCP to invoke congestion control. The problem does not lie in
the fact that TCP invokes congestion control, but lies in the fact that even if new route
is found, TCP may need several RTTs to finish the slow start phase to fully utilize the
available bandwidth, or in the worst case TCP may be still be in the backoff state
waiting for next timeout to send the packet again, both of which result in low

3
Chapter 1. Introduction
throughput and waste of network resources. Moreover, in ad hoc networks, TCP
performance is deeply affected by the underlying routing protocol and MAC protocol,
which often play determinant roles in the performance TCP can achieve. The
mechanisms of lower layer protocols may have great impacts on TCP performance
through their interactions with the TCP algorithms.

Many researches have been done to study TCP performance in pure ad hoc
networks. However, no research has been done to evaluate different TCP
algorithms’ performance in wired-cum-ad hoc environments. This is the first
motivation of our research. Furthermore, [2] found the extreme unfairness between
TCP connections crossing wired network and wireless ad hoc network, but no solution
has been proposed in the literature, this is the second motivation of our research.
1.3 Thesis Contributions
There are two major contributions in this thesis. First, our research [3] gives clear
answers to questions like which TCP algorithm should be implemented in wired-cum-
ad hoc networks, and how to tune TCP parameters to optimize its performance. These
results provide valuable guidelines on implementations of TCP in this specific
environment. Second, a scheme [4] is presented to eliminate the extreme unfairness
between TCP flows crossing wired network and wireless ad hoc network without
incurring much throughput loss, which is the first proposal in the literature to solve this
problem. The details of these contributions are as follows:
• We show that New Reno and SACK are the best candidates for deployment. As
far as the ability to handle congestion, New Reno and SACK are clearly better
than Reno. Meanwhile, compared with Vegas, New Reno and SACK perform
more robustly in all scenarios. The performance difference between New Reno
and SACK is slight and there is no obvious winner. Vegas may lead to

4
Chapter 1. Introduction
significant throughput loss in wired-cum-ad hoc environments because it
cannot always update its notion (c.f. section 2.2 and chapter 3) of base RTT
accordingly when rerouting occurs. Therefore, Vegas cannot be deployed until
there is practical solution for this problem, though Vegas outperforms other
TCP variants in some static scenarios and is recommended as the best TCP
algorithm for ad hoc environments by some previous research in the literature.
• We have determined that the value of TCP minimum RTO has great impact on

TCP performance in mobile environments. The choice of its value and the
impact brought by RTO rounding up behavior recommended in RFC2988
deserves further research. It is clear that to achieve a desirable throughput, TCP
maxcwnd for end hosts of the wired-cum-ad hoc connection should be set to
large values as long as it is allowed by their buffer capacity.
• Lastly, this thesis presents a scheme to eliminate the extreme unfairness
between TCP flows crossing wired network and wireless ad hoc network. It is
the first scheme proposed in the literature to tackle this issue and it improves
the fairness greatly without significant throughput loss, though this scheme is
not perfect in eliminating the unfairness in all scenarios. The heuristic in the
scheme is also very helpful for future use in the design of MAC protocols for
wireless ad hoc networks.
1.4 Thesis Organization
In the remaining part of this thesis, we first review the prevalent TCP algorithms and
existing TCP performance studies in Chapter 2. Chapter 3 presents the thorough
performance evaluation of different TCP algorithms in wired-cum-ad hoc
environments. After studying TCP performance from a throughput perspective,
Chapter 4 describes our scheme and shows that it is able to eliminate the severe

5
Chapter 1. Introduction
unfairness between TCP flows crossing wired network and wireless ad hoc network.
Then, Chapter 5 concludes this thesis and points out future work. A publication list
follows the five chapters.

6


Chapter 2. Literature Review
2.1 Introduction

The proliferation of portable computing device and advancement in communication
technology have led to significant interest in the design and evaluation of protocols for
ad hoc networks. After much work has been done on the development of routing
protocols, researchers started to study TCP performance over ad hoc networks. This
chapter first reviews four prevalent TCP algorithms, Reno, New Reno, SACK, and
Vegas, then presents a survey of existing research on TCP performance over ad hoc
networks.
2.2 Proposed TCP Algorithms
There are four prevalent and widely recognized TCP algorithms, viz. Reno [5], New
Reno [6], SACK [7], and Vegas [8]. Actually, most TCP variants are Reno-based
except Vegas. Therefore, we sometimes use “Reno-based TCP” to refer to Reno, New
Reno, and SACK. Vegas differs from others in its unique congestion avoidance
technique. For a better understanding, we introduce Reno first. Five mechanisms
characterize the behavior of Reno:
• Slow start: Beginning from one packet or a larger value, cwnd (congestion
window) is increased by one for every received non-duplicate ACK, until the
source’s estimation of network capacity, ssthresh (slow start threshold), is
reached. During slow start phase, cwnd is increased exponentially, aiming to
alleviate the burstiness of TCP while quickly filling the pipe.
7
Chapter 2. Literature Review
• Congestion avoidance: Once cwnd exceeds ssthresh, a TCP sender switches to
a slower cwnd increase rate of one packet for every window's worth of ACK.
This phase is called congestion avoidance, during which cwnd grows linearly
to detect any extra bandwidth.
• Timeout: TCP sender maintains a retransmission timer to ensure data delivery
in the absence of any feedback from the remote data receiver. If the desired
ACK does not come back within the timer duration, TCP will go to slow start
again, backoff RTO (Retransmission TimeOut) exponentially, and retransmit
the earliest unacknowledged packet.

• Fast retransmission: If three or more duplicate ACK are received in a row,
TCP assumes it as a strong indication that a packet has been lost. It then
performs a retransmission of what appears to be the missing packet, without
waiting for the retransmission timer to expire. This is called fast
retransmission, which avoids timeout for a single packet loss and leads to
higher channel utilization and throughput.
• Fast recovery: After fast retransmission of what appears to be the missing
packet, congestion avoidance instead of slow start is performed. This is fast
recovery. ssthresh is set to half of the cwnd value. When the ACK that
acknowledges new data arrives, TCP set cwnd to ssthresh and increase cwnd
linearly.
Based on Reno, both New Reno and SACK improve Reno’s ability to handle
multiple packet losses in a single window of data, which is common in heavily
congested networks or wireless environments.
New Reno modifies Reno by incorporating a response to partial acknowledgement
received during fast recovery to keep TCP in fast recovery state until all the data lost

8
Chapter 2. Literature Review
from that window has been recovered. New Reno successfully avoids multiple
reductions of congestion window in fast recovery and reduces the chance of
retransmission timeout.
Due to the limited information available from cumulative acknowledgment, a Reno
sender can only learn about a single lost packet per RTT. To overcome this limitation,
SACK introduces the selective acknowledgment mechanism to inform a TCP sender of
the packets that have been correctly received, combined with the selective repeat
retransmission policy, which makes the TCP sender retransmit only those missing data
packets.
TCP Vegas, however, differs significantly from the above three TCP algorithms in
three aspects:

• New congestion avoidance technique: In every RTT, Vegas computes the
difference between expected throughput and actual throughput. It compares the
difference with two thresholds,
α
and
β
. According to the result of comparison,
it decides to increase cwnd, or decrease cwnd, or keep the current cwnd size.
• New retransmission mechanism: Vegas keeps a fine-grained timer for every
packet it sent. Whenever it receives a duplicate ACK, it checks if this timer has
expired. If so, Vegas retransmits the corresponding packet without waiting for
three duplicate ACK. When receiving the first or second ACK after
retransmission of lost packet, Vegas checks this timer again.
• Modified slow start behavior: Vegas uses a congestion detection mechanism,
which is similar to its congestion avoidance technique, to decide when to
change to congestion avoidance phase. This makes it less likely to overshoot
the network during slow start phase.

9
Chapter 2. Literature Review
TCP Vegas uses the smallest RTT it experiences as base RTT to compute the
expected throughput. However, in ad hoc networks node mobility causes frequent
rerouting and thus the base RTT should also be updated in time to reflect this fact.
Therefore, whether Vegas can update its notion of base RTT correctly may affect its
performance in ad hoc environments. This thesis will address this issue in Chapter 3.
In short, Vegas does congestion control based on its inference of network condition.
On the contrary, Reno-based TCP algorithms keep increasing congestion window until
packet loss occurs, i.e., they detect congestion by creating packet loss. Therefore,
Vegas is proactive whereas Reno, New Reno, and SACK are reactive.
2.3 TCP Performance in Ad Hoc Networks

Generally speaking, research efforts on TCP performance in ad hoc environments can
be classified into two categories:
• Proposals for improving TCP performance in ad hoc networks
• Studies on cross-layer interactions between TCP and lower layer protocols
Therefore, our survey is also presented following this classification.
2.3.1 Improving TCP Performance in MANET
Holland and Vaidya [9] investigate the impact of frequent link breakages on TCP
performance. They show that TCP’s inability to differentiate congestion loss from the
link failure loss leads to significant throughput degradation. They propose an approach
called Explicit Link Failure Notification (ELFN), the objective of which is to let the
routing protocol provide TCP with route failure information so that TCP can avoid
responding to route failures as if congestion occurred. Upon receiving ELFN, a TCP
source suspends packet transmission and freezes its state, including retransmission
timer and congestion window. Meanwhile, it probes the network periodically to see if a

10
Chapter 2. Literature Review
new route is established. After finding a route, the sender restores its previous state
instantly and resumes as normal. Chandran et al. propose a similar scheme called TCP-
Feedback or TCP-F [10]. It differs from TCP-ELFN in the fact that instead of probing
the network, TCP-F relies on Route Reestablishment Notification (RRN) provided by
the underlying routing protocol to know when route is reestablished.
These feedback-based schemes rely on route failure information from routing
protocols, which makes them expensive for deployment due to their dependence on
specific routing protocol. In addition, Monks et al. [11] show that with this approach
TCP throughput may be degraded by false routing failure notification, which is caused
by MAC layer contentions and leads to frequent unnecessary TCP source freezing.
Liu and Singh [12] propose ATCP, which does not require information from the
routing protocol. They add a thin layer to listen for network state information provided
by ECN [13] and ICMP [14]. ECN is used to provide congestion indication, whereas

ICMP message “Destination Unreachable” is used to provide link failure information.
With this approach, the TCP stack need not to be modified, but the requirement of
implementing ECN and ICMP on every ad hoc node really increases the complexity.
Wang and Zhang [15] present TCP-DOOR where a TCP sender can distinguish
route changes from network congestion by detection of out-of-order delivery,
thereafter improve the performance of TCP by not invoking unnecessary congestion
control. The advantage of their approach is that it does not rely on any feedback from
the lower layer, which makes it easy to implement and also applicable to wired-cum-ad
hoc environments, though it may be not as efficient as those feedback-based schemes.
2.3.2 TCP Interactions with Lower Layer Protocols
Tang and Gerla [16] provide insights into the interactions between TCP and various
MAC layer protocols in multi-hop networks. In particular, they address the issue of fair

11
Chapter 2. Literature Review
sharing of MAC with multiple TCP flows. Their results indicate that further research is
necessary to make TCP and MAC layer protocol work consistently well together in ad
hoc environments.
Xu and Gerla [2] investigate the fairness issue between TCP connections across
wireless ad hoc network and the Internet with testbed implementation. They show that
unfair channel sharing between TCP flows leads to extreme unfairness, which often
forces some TCP flows to stop transferring any more data despite all links being in
good states. It is the first and only research that studies TCP behavior in wired-cum-ad
hoc environments.
Xu and Saadawi [17] evaluate several prevalent TCP algorithms performance in
pure ad hoc networks. They argue that Vegas performs best in most cases due to the
interactions between TCP and IEEE 802.11 protocol [18]. They also recommend using
four segments as TCP maximum window size, at which TCP performs best and all
TCP variants differ little in their performance.
Meanwhile, several researchers study the TCP performance over different routing

protocols in ad hoc networks. Dyer and Boppana [19] compare TCP performance over
on-demand routing protocols and over adaptive proactive routing protocols. They
argue that the adaptive proactive routing protocols are better for TCP than on-demand
protocols. A simple heuristic, fixed-RTO, is also proposed to improve TCP throughput.
Ahuja et al. [20] compare TCP performance over DSDV [21], DSR [22], AODV [23],
and SSA [24] routing protocols. They find that SSA prefers the stable routes, whereas
DSR and AODV prefer shorter routes, which makes the former help TCP to achieve
higher throughput in highly mobile environments.

12
Chapter 2. Literature Review
2.4 Summary
From the literature review, two conclusions can be drawn. First, unlike cellular
networks or wireless LAN, TCP performance in ad hoc networks is not only decided
by the TCP algorithm itself, but is a result of joint interactions between TCP, routing
protocol, and MAC protocol. In view of this, any TCP improvement scheme design
must take the interactions between TCP and lower layer protocols into account.
Second, a separate study on TCP performance in wired-cum-ad hoc environments is
necessary because it has its own problem to be solved and its own special requirements
on TCP parameter tuning, such as how to set TCP maximum congestion window size,
and how to set TCP minimum retransmission timeout value. On the one hand, not all
the conclusions drawn from pure ad hoc scenarios hold in wired-cum-ad hoc scenarios.
On the other hand, compared with traditional wired-cum-wireless network that only
has one hop in wireless domain, wireless-cum-ad hoc network differs in that it has
multiple wireless hops. Moreover, TCP performance over wired-cum-ad hoc network
is a topic that has seldom been investigated before in the literature, as opposed to TCP
performance over traditional wired-cum-wireless network that has been intensively
studied. This is just the reason why this thesis specially focuses on TCP performance
study in wired-cum-ad hoc environments.


13


Chapter 3. Evaluation of TCP Algorithms in Wired-cum-Ad
Hoc Environments
3.1 Introduction
As described in Chapter 1 and Chapter 2, it is very likely for TCP to be used in the
wired-cum-ad hoc environments. However, no work has been done to investigate
which TCP algorithm should be adopted, and how TCP parameters should be tuned to
improve its performance. Bearing these questions in mind, we start our work in this
chapter.
Section 3.2 introduces the simulation configuration. In Section 3.3, we evaluate
different TCP algorithms’ performance in various scenarios in the wired-cum-ad hoc
environments. Based on the evaluation results, we present a recommendation on TCP
implementation in this section as well. Finally, Section 3.4 concludes our work in this
chapter.
3.2 Simulation Configuration
We use the NS simulator [25] with ad hoc extensions provided by MONARCH project
[26] to perform simulations. The four prevalent TCP algorithms, viz. Reno [5], New
Reno [6], SACK [7], and Vegas [8] are evaluated. FTP session with infinite backlogs
is used to generate TCP traffic. DSR [22] is selected as routing protocol for our
targeted wired-cum-ad hoc scenarios. NS implements the IEEE 802.11 MAC
protocol’s Distributed Coordination Function at MAC layer.
14
Chapter 3. Evaluation of TCP Algorithms
The buffer management policy for both wired and wireless nodes is drop-tail with
queue limit of 50 packets, unless otherwise stated. All packet size of TCP, CBR, and
exponential traffics are 1000 bytes. Here, exponential traffic refers to the widely used
ON/OFF traffic. During ON periods, packets are generated at a constant burst rate.
During OFF periods, no traffic is generated. Burst times and idle times are taken from

exponential distributions. The wireless parameter settings are modeled after the
commercially available WaveLAN product with a bandwidth of 2 Mb/s and a nominal
transmission range of 250 meters. In all static scenarios, each wireless node is 200
meters apart, which allow them only to communicate with their immediate neighbors
successfully. TCP receiver enables delayed acknowledgement option [27]. Two
reasons make us decide to use delayed acknowledgement. First, most of the hosts on
the Internet enable this option. Second, [17] shows that in pure ad hoc networks
delayed acknowledgement improves TCP throughput. We use goodput as the metric
for evaluation. We compute goodput as the number of bits received by the receiver in a
unit time, excluding those duplicate data.
3.3 Simulation Results and Discussions
In this section, we study TCP performance in wired-cum-ad hoc networks step by step.
First, we study TCP performance in the simplest scenario where there is no
background traffic and no mode mobility. Second, we add background traffic to study
congestion impacts on TCP performance in the wired-cum-ad hoc networks. Third, we
take node mobility into considerations. Lastly, we specially point out that Vegas is not
a robust TCP algorithm under mobile environments because it may not always update
its notion of base RTT accordingly after rerouting.

15

×