TCP Optimization for Wireless Networks
TCP Optimization for Wireless Networks
INTERNATIONAL UNIVERSITY
Nguyễn Lê Anh Vũ
i
HoChiMinh City, Vietnam 2010
________________________________
(Typed Committee name here)
________________________________
(Typed Committee name here)
________________________________
(Typed Committee name here)
________________________________
(Typed Committee name here)
THESIS COMMITTEE
(Whichever applies)
ii
ACKNOWLEDGMENTS
I would like to express my sincere thanks and gratitude to my advisor MSc. Le
Thanh Son for his continuous guidance, suggestions and the long hours he spent for me
during the entire period of my research. I was able to fulfill my aspiration to develop
thesis with the motivation and inspiration instilled in me by my advisor. I would also like
to thank all my friends whose constant support and care has always kept me motivated.
Finally, I would like to thank International University for providing me with
background knowledge to make this work possible.
iii
TABLE OF CONTENTS
ACKNOWLEDGMENTS............................................................................................iii
LIST OF FIGURE........................................................................................................vi
CCROMYMS...............................................................................................................viii
ABSTRACT.................................................................................................................ix
CHAPTER 1: INTRODUCTION.................................................................................1
iv
CHAPTER 5: Approach to improving TCP performance over wireless network……..20
CHAPTER 7: CONCLUSION…………………………………………………………..37
LIST OF REFERENCES……………………………………………………………….38
v
LIST OF FIGURES
vi
Figure 16: Architecture of MTCP................................................................................32
Figure 17: Comparison of Congestion Window Sizes: M-TCP has a larger congestion
window than regular TCP with disconnections............................................................34
Figure 18: Comparison of goodput: M-TCP has higher goodput than regular TCP with
disconnections..............................................................................................................35
Figure 19: Comparison of RTOs: M-TCP achieves a much smaller RTO than regular
TCP with disconnections..............................................................................................36
vii
CCRONYMS
ACK Acknowledgement
BS Base Station
viii
ABSTRACT
The objectives of this research find out a solution to improve TCP performance in
wireless network. Improving TCP performance in wireless environment that allows
wireless devices work better on the network infrastructure available in the wired network
and use applications and services effectively that have been developed in wired network.
There have been several approaches to improve TCP for data transmission over
wireless networks. They are divided into four basic methods:
• Link layer solution: Instead of using retransmit mechanism be end-to-end,
link-layer solution just only transfers data at link layer. When transferring
data over wireless link that happen packet looses frequently, this way be
transfer data over many stages which decrease error on transmission link
when transferring data over long distance.
• Split connection: The main idea of this mechanism is splitting each TCP
connection between sender and receiver into two separate parts via base
station. This mechanism is the same as link layer mechanism, but the
difference is that it happens in TCP layer.
• Explicit Notification: TCP thinks that looses packet because of congestion
network. Many mechanisms is developed which FH (fixed host) can
recognize the real reason of packet looses. Main ideal be send explicit
notification for sender.
• End-to-end: This approach must not find out support solution. Instead,
this way improving flow control mechanism of TCP. In addition to, TCP
also add features to adapt with causes of packet looses.
This research will concentrate on split connection to improve TCP performance with
a detailed focus on Indirect TCP (I-TCP) and Mobile TCP (M-TCP). In addition to
compare approaches together with other, help capture the overall problems that TCP in
wireless be also contracted the same time, and research knowledge about wireless
ix
networks in particular and data transmission in general.
x
CHAPTER 1: INTRODUCTION
Wireless networks are being used on a generous and popular access to Internet.
The technical data transmission in wired networks has been developed and stable
operation. However, for the wireless network, data transmission becomes more difficult
and less performance than wired networks. The main reason to data transmission protocol
is TCP does not really work effectively on wireless networks. While most popular
applications today are developed based TCP as web, mail, ftp, remote access ... making
access to network services for wireless networks become difficultly and slowly. Original
TCP was designed for wired networks and computer fixed. With a fixed network, the
biggest problem is that TCP is resolve packet loss due to congestion. Packet loss due to
errors in data transmission line is not large and is reduced to the development of wireless
transmission equipment. According to the original design, confirm the TCP packet loss is
purely due to congestion, and reduce speed to regulate congestion. In wireless networks,
in addition to congestion, because the influence of the environmental transmission is not
good, the packet loss occur easily due to have errors the transmission line, or due to the
devices move to leads to loss of connection (called packet loss due to error). In the case
of packet loss due to errors, TCP is handled the same way as when congestion will make
to reduce speed of transmission. This really is not necessary (because there were no
congestion occur) and reduces the performance of TCP in wireless environment.
Thus, the objectives of this research find out approach to improve TCP
performance in wireless network. Improving TCP performance in wireless environment
that allows wireless devices work better on the network infrastructure available in the
wired network and use applications and services effectively that have been developed
wired network [1].
There have been several approaches to improve TCP for data transmission over
1
wireless networks. But, the approach to the problem how TCP is not reduces speed of
data transmission if cause of data loss is not due to congestion. Some methods solve
problems about quality of environmental such as schools improve the quality of
environment or solutions to support the TCP when transmit in the environment that
having ability to lost packet due to high error (wireless network).
This research will focus split connection to improve TCP performance. In
addition to compare approaches together with other, help capture the overall problems
that TCP in wireless be also contracted the same time, and research knowledge about
wireless networks in particular and data transmission in general.
2
CHAPTER 2: OVERVIEW OF WIRELESS NETWORK.
BS
MH
FH
NETWORK
FH
BS
MH
3
same the mechanism of TCP. Like the FEC, ARQ make latency to increases in the
process, thereby, the TCP increase RTT, making TCP detect loss of data slowly or may
occur cases that TCP enable to retransmission while the retransmission of ARQ has been
completed.
Wireless network conclude 2 types: wireless LAN and wireless WAN:
A wireless LAN (or WLAN, for wireless local area network, sometimes referred
to as LAWN, for local area wireless network) is one in which a mobile user can connect
to a local area network (LAN) through a wireless (radio) connection. The IEEE 802.11
group of standards specify the technologies for wireless LANs. 802.11 standards use the
Ethernet protocol and CSMA/CA (carrier sense multiple access with collision avoidance)
for path sharing and include an encryption method, the Wired Equivalent Privacy
algorithm.
A Wireless LAN or WLAN is a wireless local area network, which is the linking
of two or more computers without using wires. WLAN utilizes spread-spectrum
technology based on radio waves to enable communication between devices in a limited
area, also known as the basic service set. This gives users the mobility to move around
within a broad coverage area and still be connected to the network.
Mobile connectivity provided by wireless networks allows users to access
information anytime and anywhere. The growth of telephone system is accompanied with
an increased number of wireless-enabled laptops and Personal Digital Assistants (PDAs).
Cellular networks evolved from 1G analog systems to 2G systems (Global System for
Mobile communication(GSM) and Packet Data Convergence Protocol(PDC-P)), and 3G
systems (Wideband Code-Division Multiple Access(CDMA) and cdma2000). During the
past decade, the quality of wireless links has been improved in terms of Bit-Error Rate
(BER) and link bandwidth.
Generally, wireless network have some limitations compared with wired network:
a. Bandwidth
The speed of bandwidth in wireless networks increases quickly as they evolved from
4
1G analog systems to 2G systems(10-20 kbps for uplink and downlink connections), to
2.5G(20-20 kbps uplink and 10-40 kbps downlink connections), and 3G systems (up to
64 kbps uplink and 384 kbps downlink) [15].
Data rates different due to the interference and mobility from other users [15].
Mobile users share the bandwidth within a cell. As users move among cells, they affect
the bandwidth available to other users. Furthermore, a user may move to another cell
with higher or lower bandwidth. These factors cause variable wireless link data rates.
TCP was designed to handle the changes in bandwidth with its self-clocking scheme.
However, a sudden increase in RTT could still cause spurious time.
b. High bit error rate (BER)
Wireless networks experience random losses. BER in wireless networks is
significantly higher than in wireline networks. Packet error rates range from 1% in
microcell wireless networks, up to 10% in macrocell networks [11]. Even with
optimized link layer retransmission algorithms in 3G networks, such as Radio Link
Protocol (RLP) and Radio Link Control (RLC), packet error rate remains ~1%.
c. Long and variable delay
Wireless links have a large latency. Typical RTts in 2.5G and 3G network vary
from a few hundred milliseconds to one second [15]. In addition to, wireless link often
change delay time suddenly. It may cause spurious TCP timeout and fast retransmits. The
following reasons cause delay time changes:
Temporary disconnection: the main reason is handoff that the activity when a
mobile user moves from between cells. Handoff can make to lost or increase the time
delay on transmission lines. In handoff period, it takes some time to ‘odd BS’ send
information and data for the ‘new BS’. If during this period, BS will cancel buffer
without transferring information to the new BS, amount of large data can be lost. In
wireless networks, especially WWAN, moving from the coverage of a BS to another BS
is more frequent. Thus, increased latency or lost connectivity is also influence to the
ability of TCP operation.
5
Link recovery: wireless link recovers from a temporary link downtime due to
radio interference or mobility of the user. For example, the user mobile movies through a
tunnel or building.
Traffic priority: for example, when there is a mixed traffic of voice and data,
voice traffic has higher priority.
Path asymmetry: Cellular networks, especially 2.5 and 3G systems, may run
asymmetric uplink and downlink data rates.
6
CHAPTER 3: TRANSMISSION CONTROL
PROTOCOL
TCP ensures the transfer of data reliable to sender and true order through error
control mechanism and flow control. TCP checks to ensure that no packet is be lost by
assigning each packet with a sequence number This number is used to ensure that data is
given to the destination with the order. Receiver sent back ACK (acknowledgment) for
packet received successfully; a timer (in sender place) will send message “time-out” if
not received ACK from receiver during a round-trip time (RTT), and data (considered
lost) will be sent back. TCP use checksum (value checks) to consider if any bytes broken
during transmission, this value will be calculated for each block of data in sender place
before it is sent, and checked at receiver place. Major versions of TCP are Tahoe, Reno
and NewReno. They differ mainly in their congestion control algorithms.
Firstly, TCP was originally designed for data transmission on wireless network.
With the development of global network, along with the development of transmission
equipment reliability, the biggest problem of TCP is congestion. For a long time, TCP
was developed to serve anti-congestion on transmission lines.
7
3.1. TCP and congestion control.
TCP detects network congestion via duplicate ACKs and timeout. TCP checks to
ensure that no packet is lost by assigning each packet with a sequence number (seqno).
This number is used to ensure that data is given to the destination with the order.
Receiver sent back ACK (acknowledgment) for packet received successfully; a timer (in
sender place) will send message “time-out” if not received ACK from receiver during a
round-trip time (RTT), and data (considered lost) will be sent back. TCP use checksum
(value checks) to consider if any bytes broken during transmission, this value will be
calculated for each block of data in sender place before it is sent, and checked at receiver
place.
• Increasing cwnd by one segment size per RTT and having cwnd for every
8
window experiencing a packet loss( Additive Increase Multiplicative Decrease
AIMD).
• ACK clocking (self-clocking) the arrival of ACKs at the sender, used to trigger
transmission of new data.
The slow start threshold (ssthresh) may continue high and will be reduce when
congestion occurs. When congestion is detect by Rto mechanism, cwnd is set to IW
(initial window) and sshresh is set to 0.5xcwnd.
In both situations, slow start is used as long as cwnd <ssthresh. Slow start ends
when cwnd>ssthresh or when congestion is detected. When cwnd=ssthresh, the sender
may use either slow start or congestion avoidance.
9
approximate this update on every incoming non-duplicate ACK:
In most cases, TCP operates in the congestion avoidance phase. Congesion avoidance
ends only when congestion is detected.
Fast retransmit takes advantage of this feature by assuming that duplicate ACKs
indicates dropped packets. Instead of waiting for an ACK until the timer expires, the
source resends packets if three such duplicate ACKs are received. This occurs before the
timeout period and thus improves network throughput. For example, if a host receives
packet 5 and 7, but not 6, it will send a duplicate ACK for packet 5 when it receives
packet 7 (but not packet 6).
Fast recovery is a mechanism that replaces slow start when fast retransmit is used.
Note that while duplicate ACKs indicate that a segment has been lost, it also indicates
that packets are still flowing since the source received a packet with a sequence number
higher than the missing packet. In this case, the assumption is that a single packet has
been dropped and that the network is not fully congested. Therefore, the sender does not
need to drop fully back to slow start mode but to half the previous rate.
10
Note that the preceding mechanisms are called Reno. RFC 2582 (The NewReno
Modification to TCP's Fast Recovery Algorithm, April 1999) describes a modification to
Reno to cover situations in which ACKs do not cover all of the outstanding data when
loss was detected.
11
Figure 3: Slow start algorithm
When it’s received dup SCK three times, the value of ssthresh reduce and equal
the half with value of CWnd, but not less than 2. Retransmit process is executed to
retransmit “packets lost”. Also, CWnd assigned value equal with ssthresh plus three
segment size (if calculated following to size) or plus the three packages (if calculated
12
following to the package). This has indirect control window (w = min (awnd, CWnd)).
Each dup ACK, cwnd increase one (= 1). Thus:
13
Differently with sending ACK mechanisms, such as Tahoe, Reno or NewReno
(also known as Cumulative acknowledgment mechanism), SACK does not send ACK for
each segment to which to send the ACK for a group of segment. In that include
information about the volume of segment continuously. Since then, it may infer the
segment loss.
TCP 1
TCP 2
ACK 2
TCP 3
TCP 4
ACK 2
TCP 5
TCP 6
ACK 2
[1:1][3:3][5:5]
ACK 2
[1:1][3:3][5:6]
14
The advantage of the SACK compared with CACK that SACK permit source
discover multiple segment loss that CACK not do.
15
Figure 6: Option SACK information
With option 5 (option with type = 5), the block of segment continuous be stored
in pairs (left, right) continuous. So there are n blocks described in information of option
5. Size of option 5 is 8 * n +2. Thus, 40bytes that the TCP for option may have maximum
four blocks. If the Timestamp Option is also used, then the maximum of n is only 3.
Connection establishment period is also period which sender and receiver agree
that having used to SACK or not.
16
SYN
SACK-enable
ACK/SYN
SACK-enable
ACK
17
CHAPTER 4: PROBLEM WITH TCP OVER WIRELESS
NETWORK
18
Since 1988, when the congestion control functions were first introduced, the
performance of TCP has been greatly improved. However, TCP still suffers large
performance degradation over wireless links due to characteristics specific to wireless
environment that affect the behavior of TCP's congestion control and avoidance
mechanisms. These mechanisms were designed and optimized for traditional wireline
networks where packet losses are predominantly due to network congestion. In wireless
networks, packet losses are mainly caused by the high bit error rate (BER) and hand-offs.
Since TCP cannot differentiate packet losses caused by congestion from losses
introduced by the wireless links, its performance degrades [6] [9].
Over the past decade, many researchers have tried on improving TCP
performance over wireless network. Many researches have proposed to solve the problem
of non-congestion related packet losses misinterpreted by TCP.
The main characteristic of a wireless network is the high link BER. It violates the
fundamental assumption of TCP that packet losses caused by link errors are
negligible( much less than 1%) and that packet losses are caused only by network
congestion. High BER in wireless networks causes packet loss regardless of network
congestion. This will cause TCP to unnecessarily reduce its transmission rate. The main
cause for TCP’s performance degradation in a mixed wireless/wireline environment is its
inability to detect the origin of the packet loss.
When a packet loss is detected, TCP employs congestion control algorithms to
reduce the transmission rate. A single packet loss will cause duplicate ACKs and cwnd to
be reduced by half according to the fast retransmit and fast recovery algorithm. TCP
resolves the congestion in the network by lowering its transmission rate. However,
lowering the transmission rate will degrade TCP performance if the packet loss is not
cause by network congestion.
19
sender or make the sender aware of the causes of segment losses. The first approach
resolves the error within the wireless domain without the TCP sender being aware of the
error. These solutions often modify the base station and/or the mobile host. If the link
error is well shielder from the sender, modifying the sender is not necessary. The
examples are I-TCP, M-TCP.
• Link layer
20
• Split connection
• Explicit notification
• End-to-end
S OLUTIO N
S P LIT E XP LICIT
LINK LA Y E R E ND-TO -E ND
CONNE CTIO N NOF ITICA TIO N
S yndrom e
P artial A ck
21
FH-BS connection BS-MH connection
It separates the flow control and congestion control functionality on the wireless
link from that on the fixed network. This separation is desirable because of the vastly
different characteristics of the two kinds of links — the fixed links (Ethernet or long-haul
links and ATM in the future) are becoming faster and more reliable every day whereas
the wireless links (especially the outdoor links) are still very slow and are extremely
vulnerable to noise and loss of signal due to fading which result in higher bit error rates.
A separate transport protocol for the wireless link can support notification of
events such as disconnections, moves and other features of the wireless link such as the
22
available bandwidth etc. to the higher layers which can be used by link aware and
location aware mobile applications.
Indirection allows the base station (mobile support router or MSR) to manage
much of the communication overhead for a mobile host. Thus, a mobile host (e.g. a small
palmtop) which only runs a very simple wireless protocol to communicate with the MSR
can still access fixed network services such as WWW which may otherwise require a full
TCP/IP stack running on the mobile.
Wireline network I-TCP allow BS manages moreMHconnection between FH and MH. BS plays a role of
proxy presenting MH implement complicated protocol, simplify works of MH in the case MH is
FH
simple device [5]. BS
(MSR)
23
Figure 11: MSR is a proxy in I-TCP
MSR play a role of proxy, open 2 connections via 2 sockets, when MH move to
new location, MSR control handoff process and move all information to new MSR [8].
24
Figure 12: handoff process of I-TCP (move to new location)
The figure above shows the setup for an I-TCP connection , the first MH establish
connection to FH via MSR-1 then move to location of MSR-2, when MH request to
connect via I-TCP to FH in MSR-1 location, MSR-1 set up socket for MH (MH socket)
to manage connection of MH and set up socket for FH (FH socket) to manage connection
of FH. When MH move to MSR-2 location, connection status of I-TCP in MSR-1 are
moved to MSR-2, MSR-2 setup new 2 sockets to I-TCP similar with establishment in
MSR-1. When end-to-end connection is established the status part (FH-MSR) I-TCP does
not change when FH move, so does not need to re-setup with new MSR [8]. This ensures
that TCP connection with FH completely transparent.
25
I-TCP Ack and semantic are no end-to-end, since the connection is split into 2
connections, FH cannot know the packet arrive MH or not, so it cannot recovery when
occur error. Otherwise, I-TCP has no notification mechanism in application layer, so
application base on I-TCP depend on MSR and connection between MSR.
• MHMICP process establish new MSR to default router and send greeting message
to MSR that contain present I-TCP and address of MSR-1
• I-TCP establish socket for both wireline and wireless networks, and prepare
request I-TCP handoff for MSR-1. I-TCP send Ack to MSRMICP.
• MSRMICP send forwarding pointer to MSR-1, notify the MSR-1 that which MSR
will manage MH
• MSRM in MSR-1 send message MHout with address of MH that move out MSR-
1
• When receiving MHout, I-TCP freeze all connection relate to MH and send notice
that request handoff to MSR-2 to confirm that MSR-2 prepare and send status of
all connection I-TCP to MSR-2
26
• I-TCP at MSR-2 receive status of connection and boot each connection, then send
Ack to MSR-1 to notice that complete handoff process (Ack).
27
The most important draw-back of I-TCP is that it does not maintain the true end-
to-end semantics of TCP. The base station acknowledges the packets from the wired node
even before they reach the destination. As mentioned before, since the base station
buffers all the packets it is not an issue. But if the base station crashes or the buffered
packets are lost due to some reason, the wireless node can never recover them. So it does
not guarantee the reliability, which is fundamental to TCP. But in practice I-TCP is seen
to perform well, as the odds of the base station crashing is very less and even if it does
crash, the wired node has no means of contacting the wired node anyway.
Figure 1 shows the network architecture suitable for M-TCP deployment. It has a
three level hierarchy. At the lowest level, each cell contains mobile hosts (MH)
communicating with their mobile support stations (MSS). A Supervisor Host (SH)
controls several MSSs. The SHs are connected to the wireline network, and they handle
most routing and other protocol details for the mobile users. They also maintain
connections for mobile users, handle flow-control, and are responsible for maintaining
the negotiated quality of service. These SHs, thus, perform the function of gateways [3].
The fixed hosts (FH) reside in high-speed wireline networks.
28
Figure 14: Proposed architecture
According to the hierarchy above, we simplify the model as figure 2. M-TCP split
TCP connection in two at the SH. The TCP client at the SH (called SH-TCP) receives
segments transmitted by the sender on the fixed network and it passes these segments to
the M-TCP client for delivery to the MH. ACKs received by M-TCP at the SH are
forwarded to SH-TCP for delivery to the TCP sender [4].
When SH-TCP receives a segment from TCP sender, it passes the segment to the
M-TCP client. However, it does not ACK this data until the MH does. It is easy to see
that this behavior ensures that end-to-end TCP semantics are maintained. However, how
do we ensure that the sender does not go into congestion control when ACKs do not
arrive (because the MH was temporarily disconnected and did not receive the data, or
could not send the ACKs)?
29
Figure 15: Setting up a TCP connection
When SH_TCP forward ACK from MH to FH, it holds the last byte ACK, it
means it just ACK the sequence number up to Ack – 1 to FH in normal way and one last
byte is always left unacknowledged. When timeout happens, SH-TCP sends this last byte
ACK to FH. This ACK will also contain a TCP window size update that sets the sender’s
window size to zero . When FH receives this ACK and is forced into persist mode. While
in this state, it will not suffer from retransmit timeouts and will not exponentially back off
its retransmission timer, nor will it close its congestion window. This state of the sender
does not change no matter how long the disconnection period lasts. Because only new
ACK packet can force the host into persistence mode according to the normal TCP
protocol, this is the reason why we keep the last byte ACK [4].
When MH is reconnected, MH will send a reconnection ACK to M-TCP, then M-
TCP checks the packet and knows that MH is reconnected, therefore it will retransmit all
the packets which have not been acknowledged to MH and forward the ACK packet to
SH-TCP and FH so that SH-TCP and FH can resume their full window size and go out of
persistence mode, begin sending data again. Since the sender never timed out, it never
performed congestion control or slow-start. Thus the sender can resume transmitting at
full-speed!
30
We ignore the high BER, because we believe that in most mobile environments
link layer solution will ensure that the bit error seen at the TCP layer is small.
Even if the mobile environment does have high BER, the M-TCP sender will
come out of persist mode quickly and resume regular data transmissions. This is because,
when in persist mode, M-TCP will send persist packets to the MH who will be forced to
respond when it receives these packets. Currently, the persist packets are generated at
increasing intervals starting at 5 seconds and doubling until the interval becomes 60
seconds. We could change the interval to be equal to the RTT between the SH and the
MH to ensure earlier recovery (we have not implemented this simply because of our
assumption of low BER).
• Advantage of M-TCP
The efficiency of the TCP connection is not decreased due to disconnection since
the sender is prevented from going into exponential backoff and slow-start.
If the MH moves from the domain of one SH into the domain of another SH, the
old SH does not need to forward the socket buffers ( as in I-TCP). When the MH
temporarily disconnects while moving between the two SHs, the old SH’s SH-TCP
shrinks the TCP sender’s window to zero. When the MH connects to the new SH, SH-
TCP at the new SH grows the sender’ window to its full size which causes the sender to
automatically retransmit all outstanding segments to the new SH.
Summary:
31
protocol. Firstly, all segment through only one BS. Secondly, I-TCP is not end-to-end
connection, I-TCP suitable with WLAN use mobile IP.
32
CHAPTER 6: Performance Comparison
33
Normal TCP protocol is used in all hosts and router. Disconnections are
scheduled every 5 minutes. Each breakdown time is 30 seconds. The reason to choose 30
seconds is based on the fact we found out: If the disconnection time is greater than 30
seconds, the connection will be closed by the FH. In order to provide comparable result,
we pick 30 seconds as the breaking duration.
Scenario 3: M-TCP with disconnections
M-TCP is deployed on SH. Disconnections are scheduled every 5 minutes. Each
breakdown time is 30 seconds. The same data stream was fed into the network by FH in
these 3 scenarios. The disconnection period is the last 30 seconds of every 5-minute
interval.
6.2. Result Comparison
Figure 17 shows the comparison of the congestion window size (cwnd) on FH.
We can see the M-TCP line is quite close to the TCP on ideal network condition. We can
notice that there are a few horizontal segments in the M-TCP line, which indicate the
period when FH was in persist mode (during which cwnd is frozen). Contrarily, the cwnd
in normal TCP scenario dropped drastically during the disconnection period and never
rose as high as M-TCP. This suggests that M-TCP does help preventing the cwnd from
decreasing during hand-offs.
34
Figure 17: Comparison of Congestion Window Sizes: M-TCP has a larger
congestion window than regular TCP with disconnections
6.2.2. Goodput.
Figure 18 illustrates the goodput for three simulation scenarios. The top line is the
simulated disconnections and the bottom line is regular TCP with simulated
disconnections. It illustrates that in a network with disconnections, M-TCP has a higher
goodput than regular TCP. This is expected because M-TCP tends to have larger
congestion window size that enables more data to be transmitted. Moreover, even though
each disconnection period lasts only 30 sec, the performance difference is still visible. In
deployed mobile network environment, the hand-off time may range from 10 sec to a few
minutes [4]. If we have taken into account the effects of retransmission timer, the
difference in goodput would have been much greater. The longer the disconnection is, the
larger number of packets will be lost and the longer the retransmission timeout will last.
35
Furthermore, the longer the retransmission timeout, the longer FH waits to try to probe
the connectivity of the network, and the longer it takes for FH to re-establish the
transmission each time network recovers.
Figure 18: Comparison of goodput: M-TCP has higher goodput than regular TCP
with disconnections.
36
Figure 19: Comparison of RTOs: M-TCP achieves a much smaller RTO than
regular TCP with disconnections.
37
CHAPTER 7: CONCLUSIONS
In this research, we first studied various issues and related work dealing with TCP
in wireless network. We then proposed split connection protocol to improving TCP
performance in wireless networks with high bit rate and handoff. TCP connections were
simulated in a mixed wireline and wireless network using the opnet simulator. Over , split
connection approach improve TCP performance such as congestion window size,
goodput, RTO.
Future improvements of this thesis may include: A comparing of I-TCP and other
approach for improving TCP performance over wireless network. Even though we have
illustrated the effectiveness of split connection approach, but these approach could be
further improved.
38
LIST OF REFERENCES
39
[10] J. Postel, J. Reynolds - RFC 1042: Standard for the transmission of
IP datagrams
over IEEE 802 networks – 2/1998.
[11] I. Stojmenovic, handbook of Wireless Networks and Mobile
Computing. New York, NY: John Wiley&Sons,2002.
[15] H.Inamura, G. Montenegro, R. Ludwig, A.Gurtov, and F.Khafizov,
“TCP over second (2.5G) and third (3G) generation wireless networks,’’
IETF RFC 3481, February 2003.
40