performance of tcp protocol running over wireless lan network … · 2001. 4. 23. · n tcp is a...

26
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 Chow [email protected] [email protected]

Upload: others

Post on 29-Mar-2021

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

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]

[email protected]

Page 2: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

The Roadmapn Introduction (Problem and Scope of

Project)n TCP retransmission and window sizen Wireless LAN using TCPn The Snoop Protocoln Opnet Implementation

Page 3: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

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

Page 4: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

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

Page 5: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

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

Page 6: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

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

Page 7: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

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)

Page 8: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

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

Page 9: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

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

Page 10: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

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

Page 11: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

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

Page 12: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

Opnet Implementation

Page 13: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

2 extra protocol layers

Page 14: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

Snoop State Transition Diagram

Page 15: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

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;

Page 16: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

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

Page 17: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

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

Page 18: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

PEG State Transition Diagram

Page 19: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

Scenario 1 – Single Mobile Upload

n To study how the Snoop Protocol improves the performance

n Upload 100, 000 byte file from Workstation 1

Page 20: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

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

Page 21: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

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

Page 22: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

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

Page 23: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

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

Page 24: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

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

Page 25: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

Future Work

n Vary the retransmission timer based on calculated round trip delay in the wireless link

Page 26: Performance of TCP Protocol Running over Wireless LAN Network … · 2001. 4. 23. · n TCP is a reliable protocol with packet retransmission and congestion control (transmission

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.