performance of tcp protocol running over wireless lan network … · 2001. 4. 23. · n tcp is a...
TRANSCRIPT
ENSC 833 Network Protocols And Performance
Final Project Presentations - Spring 2001
Performance of TCP Protocol Running over Wireless LAN
Network using the Snoop Protocol
Chi-ho Ng and Jack [email protected]
The Roadmapn Introduction (Problem and Scope of
Project)n TCP retransmission and window sizen Wireless LAN using TCPn The Snoop Protocoln Opnet Implementation
The Problemn TCP is a reliable protocol with packet
retransmission and congestion control (transmission window adjustment)
n Loss packets seen as network congestion; packets are re-sent with a smaller window size
n Scheme works well in wired networkn However, in wireless networks, with the high bit
error rate, TCP reduces window size excessively and under-utilizes the bandwidth available
Our projectn Investigate the TCP congestion control
policy and its problem on wireless LAN networks
n Research for possible enhancing algorithmsn Investigate the Snoop Protocoln Implement Snoop on Opnetn Compare results with and without Snoop
TCP retransmission policyn For every packet
received, the recipent returns an ACK
n Recipient sends duplicate ACK if a packet is lost
n Sender re-transmits the lost packets
first transmission
retransmission
duplicate acknowledgements(DUPACK)
sender recipient
1
5
34
2
ack1ack1
ack1ack1
2345
TCP transmission window
n 1) Increase the window exponentially to determine the available bandwidth
n 2) When the source fails to receive an acknowledgement, the window size is reduced by half.
n 3) The source increases its window size by one unit every average round trip time
W
W/2
Window Size
slope = 1 /round-trip time
time t
Wireless LAN using TCP
Base StationHost Server
Mobile terminalRouter
(1) Host serverestablishs a TCPconnection withmobile terminaland starts tosend data
(2) High bit errorrate in thewireless channel
(3) Missingacknowledgementstrigger congestioncontrol at hostserver (transmissionwindow is reduced)
Adding the Snoop Agent
Base Station with Snoop AgentHost Server
Mobile terminalRouter
(1) Host serverestablishs a TCPconnection withmobile terminaland starts tosend data
(2) High bit errorrate in thewireless channel
(3) Snoop Agentre-transmits lostpackets locally
The Snoop Protocoln Snoop copies packets to its cache n Starts a retransmission timern Re-transmits the packets if a DupAck is
received or the timer popsn When an Ack is received, deletes the cache
entry
Snoop_Data()
new packet? packet seq num > lastack num?
1) Forwardpacket2) Reset lcoalretransmissiontimer
discard packet
in sequence? forward packet
1)cache packet2)forward packet
yes
no
no
yes
no
yescommon case
congestionloss
Senderretranmission
packetarrives
Snoop_Ack()
new ack?
1) Free cacherecord2) Forward Ackto sender
discard packetDuplicate Ack?
discard packet
Retransmit lostpackets
yes
common case
packet loss
ackarrives
First DupAck?
false ack
RepeatedDupAck
no
ye
sye
s
no
no
Opnet Implementation
2 extra protocol layers
Snoop State Transition Diagram
The Cachetypedef struct
{unsigned int src_ip;unsigned int dest_ip;int src_port;int dest_port;unsigned int seq_num;unsigned int ack_num;unsigned int rcv_win;int urgent_pointer;int data_len;int urg;int ack;int push;int rst;int syn;
int fin;} TcpInfo;
Cache FunctionsFunction DescriptionsnCacheInit Initialize the cache
recordssnCachedPkt Copies a packet into the
cachesnCacheRetrieve Retrieves a packet from
the cachesnCacheDestroy Deletes a packet from
the cache
Packet Error Generatorn Used to create packet lossn Packet lost are uniformly distributed
P a c k e t s D r o p p e d b y P E G a t P E R 3 0 %
0
2 0
4 0
6 0
8 0
1 0 0
0 5 0 0 1 0 0 0 1 5 0 0
T i m e ( s e c o n d s )
To
tal
Pa
ck
ets
Dro
pp
ed
T o t a l S e n d
T o t a l D r o p
PEG State Transition Diagram
Scenario 1 – Single Mobile Upload
n To study how the Snoop Protocol improves the performance
n Upload 100, 000 byte file from Workstation 1
Results
n Upload Response Time
n Improve 68 times at error rate of 30%
Upload Reponse Time For Scenario 1
0200400600800
100012001400
0 20 40 60 80 100
PER (%)
Tim
e (s
eco
nd
s)
Snoop Enabled
Snoop Disabled
Congestion Window Size
n Congestion Window Size
TCP Congestion Window Size at Packet Error Rate 20%
010000200003000040000500006000070000
0 20 40 60 80
Time (seconds)
Cong
estio
n W
indo
w Si
ze (b
its)
Snoop Disabled
Snoop Enabled
Sent Sequence Number
n Each data byte is represented by a sequence number
Sent Sequence Number at PEG 20%
0
50000
100000
0 20 40 60 80Time (seconds)
Tran
smitt
ed S
eque
nce
Num
ber
Snoop Disabled
Snoop Enabled
Packet Cache
n Study how are the packet cached
n Transmission Window: 4 packetsn Number of packets cached at the end is 0
Number of Cached Packets
012345
0 5 10 15
Time (seconds)
Num
ber o
f cac
hed
pack
ets
Difficulty of Project
n Develop Snoop and PEG model from scratch. Need significant amount of time for developing and debugging the code
n Need to place the two models between the ARP and IP nodes. Need to study the source code of ARP and IP node and separate them
Future Work
n Vary the retransmission timer based on calculated round trip delay in the wireless link
Referencesn [1] IEEE 802.11 Workgroupn http://grouper.ieee.org/groups/802/11/index.htmln [2] Performance Enchancing Proxy (PEP) Request for Comments (RFC)n http://community.roxen.com/developers/idocs/drafts/draft-ietf-pilc-pep-
04.htmln [3] Improving TCP/IP Performance over Wireless Networksn http://www.cs.berkeley.edu/~ss/papers/mobicom95/html/mobicom-
final.htmln [4] W.Richard Stevens, TCP/IP Illustrated Volume 1, Addison Wesley,
Professional Computing Series, 1984n [5] Andrew S. Tanenbaum, Computer Networks Third Edition, Prentice-
Hall Press, 1996n [6] Wireless LAN Model Description, Opnet Manual.