Tcp Performance of Mobile Ip in Wireless Networks

Tcp Performance of Mobile Ip in Wireless Networks

TCP PERFORMANCE OF MOBILE IP IN WIRELESS NETWORKS

A Thesis

Presented to

The Faculty of the College of Graduate Studies

Lamar University

In Partial Fulfillment

of the Requirements for the Degree

Master of Science

by

Jean-Pierre Nziga

May 2003

DEDICATION

This thesis is dedicated to my lovely wife

Yolande

and to my beautiful daughter

Lazlo.

The completion of this work has been possible with their patience and understanding.

ACKNOWLEDGEMENTS

I wish to thank the members of my committee for their support and patience. Their gentle

and firm direction has been most appreciated.

Dr. KOH and Dr. QI were particularly helpful in guiding me towards a qualitative

methodology.

I would like to seize this opportunity to thank Dr. Osborne for his confidence in my

abilities and his guidance throughout this thesis.

TABLE OF CONTENTS

PAGE

LIST OF TABLES………………………………………………………………………..ix

LIST OF FIGURES……………………………………………………………………….x

LIST OF ACRONYMS……………………………………………………………...…..xv

CHAPTER

1.INTRODUCTION ………………………………………………………….…….1

2.MOBILE NETWORKING AND MOBILE IP …………………………….……..4

2.1 Mobile IP Functionality………………………………….………………..4

2.2 Mobile IP Mechanisms……………………………………………………5

2.2.1 Care-Of-Address Discovery………………………………………6

2.2.2 Care-Of-Address Registration…………………………………….6

2.2.3 Care-Of-Address Tunneling……………………………………….7

3.TRANSMISSION CONTROL PROTOCOL……………………………………..9

3.1 TCP behavior over the wired network…………………………………….9

3.2 TCP behavior over the wireless network…………………………..…….11

3.3 Suggestions for TCP improvement over the wireless link………...……..13

3.3.1 Link-Layer Solutions…………………………………………....13

3.3.1.1 TCP-Aware LL Protocols……………………………….14

3.3.1.2 TCP-Unaware LL Protocols…………………………….15

3.3.2 Split Connections Solutions……………………………………...15

3.3.3 TCP Modifications Solutions………………………………….....16

3.3.3.1 TCP Sack………………………………………………...16

3.3.3.2 TCP Fack………………………………………………...16

3.3.3.3 TCP Santa Cruz…………………………………………..17

3.3.3.4 Explicit Congestion Notification………………………...17

3.3.3.5 Explicit Loss Notification………………………………..18

3.3.3.6 Fast Retransmits………………………………………….18

3.3.4 New Transport Protocols Solutions……………………………...19

3.3.4.1 Wireless Transmission Control Protocol………………...19

3.3.4.2 Wave-and-Wait protocol…………………………………20

3.3.4.3 TCP-Probing……………………………………………..20

4.TCP FLAVORS ON NS SIMULATOR…………………………………..……..21

4.1 Definitions……………………………………………………………...... 21

4.2 TCP Tahoe…………………………………………………………….....22

4.3 TCP Reno……………………………………………………………..….22

4.4TCP Newreno…………………………………………………..………...23

4.5 TCP Sack……………………………………………………..…………24

4.6TCP Fack……………………………………………………………..….24

4.7TCP Vegas……………………………………………………….…..…..26

5.ROUTING PROTOCOLS…………………………………………………….....28

5.1 Definitions………………………………………………………………..29

5.2Destination-Sequenced Distance Vector (DSDV)………….………...….29

5.3 Ad hoc On-demand Distance Vector (AODV)………………………..…30

5.4 Dynamic Source Routing (DSR)…………………………….………..…31

5.5 Temporally Ordered Routing Algorithm (TORA)……..………………...32

6.SIMULATION ENVIRONMENT – NS SIMULATOR……………………...…34

6.1 NS Generality……………………………………………………...……..34

6.2 NS Overview……………………………………………………………..34

7.EXPERIMENTAL DESIGN AND RESULTS ANALYSIS………………...….39

7.1 Objectives………………………………………………………………..39

7.2 Topology……………………………………………………………...….39

7.3 Test Cases…………………………………………………………....….41

7.4 Metrics…………………………………………………...………………42

7.5 Results Analysis…………………………………………………………42

7.5.1 Methodology for Analyzing packet ID and Congestion Window

graphs…………………………………………………………….42

7.5.2 Routing protocols effects on our topology ……………………...45

7.5.3 Impact of Bandwidth and link delay on Packet received.………..51

7.5.3.1 Bandwidth = 1Mb………………………………………..51

7.5.3.2 Bandwidth = 5.5Mb……………………………………...58

7.5.3.3 Bandwidth = 10Mb………………………………………65

7.5.4 Sender Congestion Window behavior…………………………...73

7.5.5 Round Trip Time of the Communication……………………..….93

7.5.6 Impact of speed on TCP performance……………………..…..100

8.CONCLUSION AND FUTURE WORK………………………………………142

8.1 Conclusion……………………………………………………………...142

8.2Future Work…………..………………………………………………...144

LIST OF REFERENCES……………………………………………………………….145

LIST OF TABLES

TABLE PAGE

7.1 Packet Number received by the Mobile Node at 40 KM/H……………………..72

7.2 Number of Window’s Size Reduction during the connection at 40 KM/H……..73

7.3 Packet Number received by the Mobile Node at 40 KM/H,

60 KM/H and 80 KM/H………………………………………………………...101

7.4 Number of Window’s Size Reduction during the connection at 40 KM/H,

60 KM/H and 80 KM/H………………………………………………………...116

LIST OF FIGURES

FIGUREPAGE

6.1 Simplified User’s View of NS………………………………………………..…35

6.2 C++ and Otcl: the Duality…………………………………………………..……37

6.3 Architecture View of NS……………………………………………………..….37

7.1 A Simplified wireless topology…………………………………………….……39

7.2 Topology used in this thesis…………………………………………………...…41

7.3 Behavior of TCP sequence number (or Packet_Id)……………………………...43

7.4 Behavior of TCP sender congestion window……………………………….……45

7.5 Pkt_id –10 Mb - 2 ms – AODV – Tahoe, Reno, Newreno,

Vegas, Fack, Sack………………………………………………………………..47

7.6Pkt_id –10 Mb - 2 ms – TORA – Tahoe, Reno, Newreno,

Vegas, Fack, Sack………………………………………………………………..48

7.7 Pkt_id –10 Mb - 2 ms – DSDV – Tahoe, Reno, Newreno,

Vegas, Fack, Sack………………………………………………………………..49

7.8 Pkt_id –10 Mb - 2 ms – DSDV, TORA, AODV – Tahoe ……………….……..50

7.9 Pkt_id –1 Mb - 2 ms, 5 ms, 10 ms – DSDV – Tahoe……………….…….……..52

7.10 Pkt_id –1 Mb - 2 ms, 5 ms, 10 ms – DSDV – Reno……………….…………….53

7.11 Pkt_id –1 Mb - 2 ms, 5 ms, 10 ms – DSDV – Newreno……………….………...54

7.12 Pkt_id –1 Mb - 2 ms, 5 ms, 10 ms – DSDV – Fack……………….…….……....55

7.13 Pkt_id –1 Mb - 2 ms, 5 ms, 10 ms – DSDV – Sack……………….…….……....56

7.14 Pkt_id –1 Mb - 2 ms, 5 ms, 10 ms – DSDV – Vegas……………….…………...57

7.15 Pkt_id –5.5 Mb - 2 ms, 5 ms, 10 ms – DSDV – Tahoe……………….…………59

7.16 Pkt_id –5.5 Mb - 2 ms, 5 ms, 10 ms – DSDV – Reno……………….….……….60

7.17 Pkt_id –5.5 Mb - 2 ms, 5 ms, 10 ms – DSDV – Newreno……………….………61

7.18 Pkt_id –5.5 Mb - 2 ms, 5 ms, 10 ms – DSDV – Fack……………….……….….62

7.19 Pkt_id –5.5 Mb - 2 ms, 5 ms, 10 ms – DSDV – Sack……………….………….63

7.20 Pkt_id –5.5 Mb - 2 ms, 5 ms, 10 ms – DSDV – Vegas……………….….…...…64

7.21 Pkt_id –10 Mb - 2 ms, 5 ms, 10 ms – DSDV – Fack……………….…………...66

7.22 Pkt_id –10 Mb - 2 ms, 5 ms, 10 ms – DSDV – Tahoe……………….………….67

7.23 Pkt_id –10 Mb - 2 ms, 5 ms, 10 ms – DSDV – Reno……………….…………...68

7.24 Pkt_id –10 Mb - 2 ms, 5 ms, 10 ms – DSDV – Newreno……………….……….69

7.25 Pkt_id –10 Mb - 2 ms, 5 ms, 10 ms – DSDV – Sack………………..…………..70

7.26 Pkt_id –10 Mb - 2 ms, 5 ms, 10 ms – DSDV – Vegas……………….………….71

7.27 CWND –1 Mb - 2 ms – DSDV – Tahoe……………….……………….………..75

7.28 CWND –10 Mb - 5 ms – DSDV – Tahoe……………….……………….……....76

7.29 CWND –10 Mb - 10 ms – DSDV – Tahoe……………….………………...…...77

7.30 CWND –1 Mb - 2 ms – DSDV – Reno……………….…………………………78

7.31 CWND –1 Mb - 5 ms – DSDV – Reno…………..……….……………….…….79

7.32 CWND –10 Mb - 5 ms – DSDV – Reno……………….………………….…….80

7.33 CWND –1 Mb - 2 ms – DSDV – Newreno……………….…………………..…81

7.34 CWND –1 Mb - 5 ms – DSDV – Newreno……………….………………..…...82

7.35 CWND –10 Mb - 5 ms – DSDV – Newreno……………….……………....…...83

7.36 CWND –1 Mb - 2 ms – DSDV – Sack……………….………………..….…….84

7.37 CWND –1 Mb - 5 ms – DSDV – Sack……………….…………………...…….85

7.38 CWND –10 Mb - 5 ms – DSDV – Sack……………….………………….……..86

7.39 CWND –1 Mb - 2 ms – DSDV – Fack……………….…….…………….……..87

7.40 CWND –1 Mb - 5 ms – DSDV – Fack……………….…….…………………....88

7.41 CWND –10 Mb - 10 ms – DSDV – Fack……………….…….…….…….….….89

7.42 CWND –5.5 Mb - 2 ms – DSDV – Vegas…………………….…………………90

7.43 CWND –5.5 Mb - 5 ms – DSDV – Vegas……………….…….………….….….91

7.44 CWND –5.5 Mb - 10 ms – DSDV – Vegas……………….…….……………….92

7.45 RTT –10 Mb - 5 ms – DSDV – Tahoe……………….…….…………….……...94

7.46 RTT –10 Mb - 5 ms – DSDV – Newreno……………….…….……….….….….95

7.47 RTT –10 Mb - 5 ms – DSDV – Reno……………….…….……………….…….96

7.48 RTT –10 Mb - 5 ms – DSDV – Vegas……………….…….…………….………97

7.49 RTT –10 Mb - 5 ms – DSDV – Fack……………….…….…………….………..98

7.50 RTT –10 Mb - 5 ms – DSDV – Sack……………….…….…………….……..…99

7.51 Pkt_id –10 Mb - 2 ms, 5 ms, 10 ms – DSDV – Tahoe-60KM/H………….…..103

7.52 Pkt_id –10 Mb - 2 ms, 5 ms, 10 ms – DSDV – Tahoe-80KM/H………….…...104

7.53 Pkt_id –10 Mb - 2 ms, 5 ms, 10 ms – DSDV – Reno-60KM/H………….…….105

7.54 Pkt_id –10 Mb - 2 ms, 5 ms, 10 ms – DSDV – Reno-80KM/H…………..…....106

7.55 Pkt_id –10 Mb - 2 ms, 5 ms, 10 ms – DSDV – Newreno-60KM/H…………....107

7.56 Pkt_id –10 Mb - 2 ms, 5 ms, 10 ms – DSDV – Newreno-80KM/H…………...108

7.57 Pkt_id –10 Mb - 2 ms, 5 ms, 10 ms – DSDV – Vegas-60KM/H……….……...109

7.58 Pkt_id –10 Mb - 2 ms, 5 ms, 10 ms – DSDV – Vegas-80KM/H………….…...110

7.59 Pkt_id –10 Mb - 2 ms, 5 ms, 10 ms – DSDV – Fack-60KM/H………...………111

7.60Pkt_id –10 Mb - 2 ms, 5 ms, 10 ms – DSDV – Fack-80KM/H……………..….112

7.61 Pkt_id –10 Mb - 2 ms, 5 ms, 10 ms – DSDV – Sack-60KM/H……………..….113

7.62 Pkt_id –10 Mb - 2 ms, 5 ms, 10 ms – DSDV – Sack-80KM/H………………...114

7.63 CWND –10 Mb - 5 ms – DSDV – Tahoe - 60KM/H…………………………..117

7.64 CWND –10 Mb - 10 ms – DSDV – Tahoe - 80KM/H…………………………118

7.65 CWND –10 Mb - 5 ms – DSDV – Reno- 60KM/H…………………………….119

7.66 CWND –10 Mb - 5 ms – DSDV – Reno- 80KM/H…………………………….120

7.67 CWND –10 Mb - 5 ms – DSDV – Newreno - 60KM/H……………………….121

7.68CWND –10 Mb - 10 ms – DSDV – Newreno - 80KM/H……………………...122

7.69CWND –10 Mb - 5 ms – DSDV – Fack - 60KM/H……………………………123

7.70 CWND –10 Mb - 10 ms – DSDV – Fack - 80KM/H…………………………..124

7.71 CWND –10 Mb - 5 ms – DSDV – Sack - 60KM/H……………………………125

7.72 CWND –10 Mb - 10 ms – DSDV – Sack - 80KM/H…………………….…….126

7.73 CWND –10 Mb - 2 ms – DSDV – Vegas - 60KM/H…………………….…….127

7.74 CWND –10 Mb - 10 ms – DSDV – Vegas - 80KM/H…………………………128

7.75 RTT –10 Mb - 5 ms – DSDV – Tahoe - 60KM/H……………………..……….130

7.76 RTT –10 Mb - 5 ms – DSDV – Tahoe - 80KM/H……………………..……….131

7.77 RTT –10 Mb - 5 ms – DSDV – Reno - 60KM/H………………..……..………132

7.78 RTT –10 Mb - 5 ms – DSDV – Reno - 80KM/H……………………..………..133

7.79 RTT –10 Mb - 5 ms – DSDV – Newreno - 60KM/H…………………….…….134

7.80 RTT –10 Mb - 5 ms – DSDV – Newreno - 80KM/H…………………………..135

7.81 RTT –10 Mb - 5 ms – DSDV – Fack - 60KM/H……………………..………...136

7.82 RTT –10 Mb - 5 ms – DSDV – Fack - 80KM/H…………...…………..………137

7.83 RTT –10 Mb - 5 ms – DSDV – Sack - 60KM/H……...………………..………138

7.84 RTT –10 Mb - 5 ms – DSDV – Sack - 80KM/H…………………...…..………139

7.85 RTT –10 Mb - 5 ms – DSDV – Vegas - 60KM/H…………………...…………140

7.86 RTT –10 Mb - 5 ms – DSDV – Vegas - 80KM/H…………………...…………141

LIST OF ACRONYMS

ABRAssociatively Based Routing

ACIRIAT& T Center for Internet Research at ICSI

ACKAcknowledgement

AODVAd hoc On Demand Distance Vector

ARQAutomatic Repeat Request

BERBit Error Rate

BSBase Station

BSENBad State Explicit Notification

CLRClear

CMUCarnegie Mellon University

COACare-Of-Address

CONSERCollaborative Simulation for Education and Research

CWNDCongestion Window

D-ACKDuplicate Acknowledgement

DARPADefense Advanced Research Projects Agency

DSDVDestination-Sequenced Distance Vector

DSRDynamic Source Routing

ECNExplicit Congestion Notification

ELNExplicit Loss Notification

FAForeign Agent

FackForward Acknowledgement

FECForward Error Correction

FHFixed Host

HAHome Agent

I-TCPIndirect Transmission Control Protocol

IEEEInstitute of Electrical and Electronics Engineers

IETFInternet Engineering Task Force

IPInternet Protocol

ISIInformation Sciences Institute

KM/HKilometer per Hour

LANLocal Area Network

LBLLawrence Berkeley National Laboratory

LLLink Layer

M-TCPMobile Transmission Control Protocol

MACMedia Access Control

MbMegabits per second

MD5Message Digest 5

MHMobile Host

MITMassachusetts Institute of Technology

MNMobile Node

MONARCHMobile Networking Architecture

MSSMaximum Segment Size

NAMNetwork Animator

NSNetwork Simulator

OPTOptimization

OtclObject Oriented Tcl

PDAPersonal Digital Assistant

QRYQuery

RFCRequest For Comment

RREPReply Packet

RREQRoute request

RTORetransmission Timeout

RTTRound Trip Time

SackSelective Acknowledgement

SAMANSimulation augmented by Measurement sand Analysis for Networks

STARSource Tree Adaptive Routing

TCPTransmission Control Protocol

TORATemporally Ordered Routing Algorithm

TULIPTransport Unaware Link Improvement Protocol

UCBUniversity of California at Berkeley

UDPUser Datagram Protocol

UPDUpdate

USCUniversity of South California

VINTVirtual Inter Network Testbed

WANWide Area Network

WRPWireless Routing Protocol

WTCPWireless Transmission Control Protocol

WWPWave-and-Wait Protocol

.

1