Download Wireless Data Communication - Institut for Elektroniske Systemer

Document related concepts
no text concepts found
Transcript
Wireless Data Communication
by Tatiana Madsen & Hans-Peter Schwefel
•
Mm1
Short range Wireless Communication (TKM)
•
Mm2
IP Mobility Support (HPS)
•
Mm3
Ad hoc Networks (TKM)
•
Mm4
Wireless TCP (HPS)
•
Mm5
Wireless applications and cross-layer aspects (HPS/ TKM)
www.kom.auc.dk/~tatiana/WDC
Wireless Data Communication: MM4, Wireless TCP, Fall03
www.kom.auc.dk/~hps/teaching
Page 1
Tatiana K. Madsen
Hans Peter Schwefel
Content
5.
1. Background
•
•
IP, Transport Layer Protocols
2. TCP functionality
•
6.
Connection set-up, flow/congestion
control
Performance parameters,
Performance Models
Problem statement, link
models, TCP Improvements
Use Case: TCP in GPRS
•
3. TCP Performance Aspects
•
Wireless TCP
Architecture, Properties, TCP
Improvements
7.
Summary/Conclusions
8.
Outlook
+ Exercises
Goal: Make students familiar with
• underlying problems
• solution approaches
• Overview on key technologies
Wrt. Transport layer aspects in wireless IP-based networks
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 2
Tatiana K. Madsen
Hans Peter Schwefel
Background: IP Protocol Stack
Network Layer (Layer 3):
•
•
Internet Protocol (IPv4, IPv6)
Packet (IP datagram) transmission between end-systems [hosts] (packet size
up to 65535 bytes, often restricted by Layer 2 protocols)
•
•
Routing using 32 bit adresses (v4)
Unreliable, connectionless transmission: loss, duplication, reordering can
occur
Application
L5-7
TCP/UDP
L4
IP
L3
Link-Layer
L2
Transport Layer (Layer 4):
•
Most frequent transport protocols
Transmission Control Protocol TCP
User Datagram Protocol
UDP
Application Layer/Services (Layer 5-7)
•
•
TCP based:
HTTP (HyperText Transfer Protocol),
FTP (File Transmission Protocol),
SMTP (Simple Mail Transfer Protocol), Telnet, ...
UDP based:
DNS (Domain Name Service),
Streaming media, VoIP, ...
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 3
Tatiana K. Madsen
Hans Peter Schwefel
Transport Layer Protocols
Goal: data transfer between application
(processes) in end-systems
• support of multiplexing/de-multiplexing
e.g. socket API
data stream/connection identified by:
two IP addresses, protocol number, two port numbers
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 4
Tatiana K. Madsen
Hans Peter Schwefel
Overview: Transport Protocols
• User Datagram Protocol UDP (RFC 768)
– Connectionless
– Unreliable
– No flow/congestion control
• Transmission Control Protocol TCP (RFC 793, 1122, 1323, 2018, 2581)
– Connection-oriented (full duplex)
– Reliable, in-order byte-stream delivery
– Flow/congestion control
• Stream Control Transport Protocol SCTP
– Connection oriented (full-duplex associations)
– Reliable message delivery, support of multiple streams
– Support of multi-homing, flow/congestion control
• Real-Time Transport Protocol RTP
– Uses UDP
– Provides: Time-stamps, sequence numbers
– Supports: codecs, codec translation, mixing of multi-media streams
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 5
Tatiana K. Madsen
Hans Peter Schwefel
Content
1. Background
•
5.
IP, Transport Layers UDP, TCP
•
2. TCP functionality
•
Connection set-up, flow/congestion
control
6.
Performance parameters,
Performance Models
Problem statement, link
models, TCP Improvements
Use Case: TCP in GPRS
•
3. TCP Performance Aspects
•
Wireless TCP
Architecture, Properties, TCP
Improvements
7.
Summary/Conclusions
8.
Outlook
Exercises
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 6
Tatiana K. Madsen
Hans Peter Schwefel
Transmission Control Protocol (TCP): Basics
•
Point-to-point, bi-directional connections (between end-systems)
• Reliable, in-order transport of byte–stream using
– Sequence Numbers
– Acknowlegements
• Flow/Congestion Control:
Prevent flooding of
– Receiver
– Intermediate Systems
Important ‚new‘ Header Fields
– Sequence number: number of first
data byte transmitted in the segment
– ACK number: number of next byte
expected in the reverse data flow
– Window size: number of bytes host
is willing to accept in reverse data flow
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 7
Tatiana K. Madsen
Hans Peter Schwefel
Connection Establishment / Termination
Connection Establishment:
•
•
•
3-way handshake (SYN, SYN-ACK,
ACK)
selection of initial sequence
numbers
agreement on maximum segment
size
Connection end:
•
•
•
Indicated by FIN flag
Signalled for both transmission
directions
‚Alternative‘: RST flag
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 8
Tatiana K. Madsen
Hans Peter Schwefel
TCP Connection State Machine
TCB = TCP Control Block (5-tuple for conn. identification, Seq. nrs., timer values, etc.)
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 9
Additional transitions:
RST reception  state ’CLOSED’
Tatiana K. Madsen
Hans Peter Schwefel
TCP Flow/Congestion Control: Purpose
•
Flow Control:
–
–
Adapt sending rate to receiver speed
Prevent Buffer Overflow at receiver
Approach: Receiver notifies sender about available buffer space
•
Congestion Control
–
–
–
Avoid network overload
Prevent packet loss at buffers in intermediate systems (routers)
‘fair’ sharing of rates between all TCP connections at bottleneck links
Approach: ‘Elastic traffic’ – sending rates adjust dynamically when
overload indicated
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 10
Tatiana K. Madsen
Hans Peter Schwefel
TCP Flow/Congestion Control
•
•
Sliding Window: # packets sent and un-acknowledged limited by
– receiver buffer (receiver advertised window)
– congestion window (purpose: protect intermediate nodes)
Congestion window dynamically adjusted (‚probing‘ for usable bandwidth):
increase gradually until congestion indicated via
– Timeouts
– Duplicate Acknowledgements
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 11
Tatiana K. Madsen
Hans Peter Schwefel
TCP Congestion
Control: Slow Start
Example: Slow-Start
(receiver using delayed Acks)
Slow-start phase:
•
Initial congestion window set to size cwnd=one
segment
4
•
Whenever ACK received: Increase cwnd
by number of newly acknowledged bytes
•
Slow-start phase ends
4
6
• When cwnd > ssthreshold  Congestion
Avoidance
• Packet loss detected (timeout, triple dup ACK)
8
Slow-start initiated after (depends on TCP version)
• connection start
10
• timeout detection
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 12
Tatiana K. Madsen
Hans Peter Schwefel
Slow-Start & Congestion Avoidance
For High-Bandwith Links:
•
•
CWND doubles after each
round-trip time (RTT) in slowstart phase
CWND increases by one
segment size in each RTT
during congestion avoidance
phase
Congestion detected:
•
•
timeout  set ssthresh to
cwnd/2, perform slow-start
[three dup Acks  half cwnd,
ssthresh=cwnd (Fast
Retransmit/Recovery, see later)]
Throughput = CWND*MSS / RTT
(for high-bandwidth links)
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 13
Tatiana K. Madsen
Hans Peter Schwefel
Impact of slow-start: Simulation Result
• Larger connection volume 
higher average throughput
• Upper Limit: Layer-2 throughput
and MaximumWindowSize / RTT
Simulations of GPRS-like
scenario without congestion (no
losses/timeouts/dupACKs)
[Correction:
y-axis in kbit/s]
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 14
Tatiana K. Madsen
Hans Peter Schwefel
Timeout intervals (RTO)
• Based on measured Round-TripTime (RTT):
Timeout value RTO computed from
moving average and variance
estimate of samples of measured
RTTs
• Retransmission  ambiguous
RTT sample: neglect these
samples for RTO computation
•
(Karn‘s algorithm)
In case of retransmissions: increase
timout value RTO geometrically for
each repeated retransmission (up to
some upper bound)
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 15
Tatiana K. Madsen
Hans Peter Schwefel
Fast Retransmit
• Goal: Avoid long delays due to waiting for time-outs
• Method: Use indication given by dupAcks, which may be generated due to
– packet loss, or
– out-of-order packet delivery
• Fast Retransmit:
– Upon receiption of three dupAcks consecutively, assume segment is
lost
– Retransmit lost packet
– Note: 3 dupAcks are also generated if a packet is delivered at least 3
places beyond its in-sequence location
7 9 10 11 8 12
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 16
Tatiana K. Madsen
Hans Peter Schwefel
Fast Recovery (TCP Reno)
•
•
Keep up transmission rate after single lost packet (no slow-start, increase window upon dupAcks)
Avoid bursts of packets after ACK for retransmitted lost packet
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 17
Tatiana K. Madsen
Hans Peter Schwefel
Illustration of flow control mechanism
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 18
Tatiana K. Madsen
Hans Peter Schwefel
TCP flow/congestion control
Additional Approaches (not discussed in detail here):
•
•
•
Zero Window Probing: prevent blocking after full receiver buffer
Silly Window Syndrome: prevent transmission of small fragments
– Delayed ACKs
– Nagle’s Algorithm: buffer data until either MSS filled or ACK has arrived
Delayed Window Update: avoid insignificant window updates
Different TCP versions (selection):
•
•
•
•
Tahoe: Slow-Start Congestion Avoidance, Fast Retransmit followed by Slow-Start
Reno: Tahoe + Fast Recovery (not followed by slow-start!)
New Reno: Reno + ‘partial ACK’ handling
SACK (selective Acknowledgements): only retransmit the lost segments
•
VEGAS: update cwnd based on measurements of delay variations
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 19
Tatiana K. Madsen
Hans Peter Schwefel
Content
1. Background
•
5.
IP, Transport Layers UDP, TCP
•
2. TCP functionality
•
Connection set-up, flow/congestion
control
6.
Performance parameters,
Performance Models
Problem statement, link
models, TCP Improvements
Use Case: TCP in GPRS
•
3. TCP Performance Aspects
•
Wireless TCP
Architecture, Properties, TCP
Improvements
7.
Summary/Conclusions
8.
Outlook
Exercises
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 20
Tatiana K. Madsen
Hans Peter Schwefel
TCP Performance Parameters (Selection)
• Packet based
– # of retransmissions, # of time-out events
– Packet delay (max, min, average, distribution)
• Equals transmisison delay + queueing delay + retransmission time(if applicable)
• Connection based
– Data (file) transfer time
– Average Throughput/Goodput
– Probability of successful transfer
• Fairness:
– Bottleneck scenarios: if N TCP
sessions share same bottleneck
link, each should get 1/N of
link capacity
– multi-hop scenarios, e.g.
• Max-min fairness
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 21
Tatiana K. Madsen
Hans Peter Schwefel
Simulation Model: Congestion Scenario with
Multiplexed ON/OFF Traffic
connections

Scenario: N ON/OFF sources, queueing/loss only at bottleneck router

Here: Investigate average throughput per connection in TCP setting
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 22
Tatiana K. Madsen
Hans Peter Schwefel
Correlation: Connection Size  Throughput
•
•
N=2 bursty TCP sources
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 23
N=30, N=90 TCP sources
Tatiana K. Madsen
Hans Peter Schwefel
Challenge: Traffic/Performance Models for TCP
End-to-End flow/congestion control
 Feedback: network behavior (congestion)  ingress traffic
 No separation traffic model/network model possible
 New traffic/performance models required
Traffic
Model
Network
Model
feedback
Performance
Values
Approaches:
1. Connection level models (e.g. [Heyman et al., Sigmetrics 97])
2. Sender/receiver behavior & fixpoint iteration
3. Integrated models
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 24
(Delay, Loss,
etc.)
Tatiana K. Madsen
Hans Peter Schwefel
Connection Level model:
e.g. [Heyman, Lakshman, Neidhardt]
Modified Processor Sharing model (~M/M/1//N/PS) on connection level:
• N TCP sources share bottleneck node (service rate )
• Maximum Transmission Rate p within each
connection
• For j active connections, each obtains service
at rate
p
when jp 
+
PS
# of customers in queues
corresponds to number of
active connections
/j when jp >
• with attenuation factor 1 derived from TCP behavior
•
R0 = minimal Round-Trip Time
•
B= Buffer Size at bottleneck
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 25
Tatiana K. Madsen
Hans Peter Schwefel
Fixpoint models
Update: loss rate p, delay d
Initial loss
rate p,
delay d
TCP
Model
Average
packet
rate
Network
Model
When stable: result
Network Model:
•
E.g. M/M/1/K model or bulk-arrival queue
TCP model, e.g. [Padhye et al., Sigcomm 98]
b:
# packets acknowledged by ACK
RTT: Average Round-Trip-Time (including queuing delay)
Wmax: Maximum size of congestion window
T0:
Average Time-Out interval
p:
Fraction of retransmitted packets
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 26
Tatiana K. Madsen
Hans Peter Schwefel
Network model example: M/M/1/K queue
•
Poisson arrival of packets (first ’M’  Markovian) with rate 
– ti : arrival time of packet i
– Xi:=ti+1-ti : interarrival time
– Poisson process of rate lambda:


Finite buffer
(size K)
• Xi independent and
• Pr(Xi<x)=1 - exp(- x)
•
•
•
•
Exponentially distributed service times
of rate  (second ’M’)
Single Server (1)
Finite waiting room (buffer) for K packets
Often also specified: service discipline
– Default: First-In-First-Out
– Others: Processor Sharing, Last-In-First-Out,
Earliest Deadline First,...
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 27
Tatiana K. Madsen
Hans Peter Schwefel
M/M/1/K queue: Performance




K




• Finite Birth-Death Process (see e.g. [Cassandras & Lafortune]):
– Probability of i packets in queue [using Chapman-Kolmogorov Equations]
pi := Pr(n=i) = (1-)/(1- K+1) * i , where = /  1, i=0,…,K
– Probability of packet loss:
p(loss) = pK = (1-)/(1- K+1) * K
– Average Delay:
Ď = 1/[ (1-pK)] * /(1- K+1) * [(1- K)/ (1-) – K K ]
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 28
Tatiana K. Madsen
Hans Peter Schwefel
Integrated Models: example
Bottleneck Router
Source 1
B
Source 3
Cmp. Processor
sharing
# active

+
Source 2
1
2
3
2
1
0
1
...
[infinite queue]
Queueing Model with modified (queue-dependent) ON/OFF arrival process:
• ‚Sharing‘ of bandwidth: packet-rate p at source reduced to /j
for j active sources when jp>
• conn. duration extended  #packets in conn. unchanged
• Throttling only during congestion state when queue-length>=B
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 29
Tatiana K. Madsen
Hans Peter Schwefel
Comparison: Models & simulation results
... see [ITCOM01] for details & more results
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 30
Tatiana K. Madsen
Hans Peter Schwefel
Content
1. Background
•
5.
IP, Transport Layers UDP, TCP
•
2. TCP functionality
•
Connection set-up, flow/congestion
control
6.
Performance parameters,
Performance Models
Problem statement, link
models, TCP Improvements
Use Case: TCP in GPRS
•
3. TCP Performance Aspects
•
Wireless TCP
Architecture, Properties, TCP
Improvements
7.
Summary/Conclusions
8.
Outlook
Exercises
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 31
Tatiana K. Madsen
Hans Peter Schwefel
Wireless (Infrastructure) Networks: Challenges
•
Wireless links tend to have the following properties:
– Large delays
– Low throughput
– Bit errors / packet losses due to poor channel conditions (noise, interference, fading)
•
Impact of mobility
– Delay/losses due to hand-over events
•
Protocols in IP family not originally designed for such links
– Increased volume due to headers
– Deficiencies of TCP flow/congestion control
– ... many more (e.g. applications HTTPWAP)
•
Protocol Enhancements are being developed, e.g.
– Robust Header Compression (RoHC)
– Enhancements for Wireless TCP
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 32
Tatiana K. Madsen
Hans Peter Schwefel
TCP-mechanisms in wireless settings
• TCP assumes congestion if packets are dropped
– possibly wrong in wireless networks, here we often have packet loss due to
transmission errors
– furthermore, mobility itself can cause packet loss (handover losses)
or temporary connection disruptions (timeouts or even broken TCP
connections)
 performance of an unchanged TCP degrades severely
– however, TCP cannot be changed fundamentally due to the large base of
installation in the fixed network, TCP for mobility has to remain compatible
– the basic TCP mechanisms are needed to for congestion control in the wired
network parts
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 33
Tatiana K. Madsen
Hans Peter Schwefel
TCP Performance Degradation
Example using Bursty Loss Model:
•
While current state i: packets
corrupted with probability i
After each packet: state transition with
probability pik
•
Average Packet Loss Probability:
At right end of graph:
About 30% packets lost due to wireless link
but approx. 95% TCP throughput reduction!!
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 34
Tatiana K. Madsen
Hans Peter Schwefel
Wireless TCP: Common Approaches for
Enhancement
• Link-Layer Approach
– Local Retransmission of lost packets
– Hide losses from sender
• Explicit Notification Approach
– Explicitly notify TCP sender of the condition of the network / type
of the loss
• End to End Approach
– Enhance TCP Protocol stack at sender and receiver to achieve
better throughput (e.g. TCP SACK)
• Split-Connection Approach
– End-to-End flow control terminated before wireless link
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 35
Tatiana K. Madsen
Hans Peter Schwefel
Wireless TCP: Split Connection
Enhancing Proxy (PEP)
Fixed host (FH)
Server
Applications
Mobile host (MH)
Split-TCP Demon
Applications
TCP
TCP/Enhanced
protocol
IP
IP
Wire Network
Interface
Wireless Network I/F
TCP
IP
Wire Network
Interface
IP
Wireless Network I/F
connection
TCP connection
Wired network
•
•
TCP/Enhanced
protocol
Wireless Network
Proxy is located between the 2 end-hosts to split the TCP connection into 2 parts
Different implementations: Indirect TCP (state-full), Mobile TCP (stateless, send
recv=0 when disconnection detected)
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 36
Tatiana K. Madsen
Hans Peter Schwefel
Wirless TCP: Split Connection (cont`d)
• Advantages
– No Changes in wired network and correspondent host necessary
– Shields the end-host in the wired network from the wireless network
characteristic: Wireless Local Recovery by Proxy
– Possibly reduced header size for optimized transport protocol over wireless
link
– Allows for ‘Smaller’ and simpler wireless protocol between MH and Proxy
• Disadvantages
– Loss of end-to-end TCP semantics
– Not usable with end-2-end encryption (e.g. IPsec), since access to the TCP
header needed
For ‘state-full’ versions:
– Requires buffer management at Proxy
– Requires state transfer when hand-over to different proxy occurs
– Hard state: Failures of proxy can result in loss of data
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 37
Tatiana K. Madsen
Hans Peter Schwefel
Wireless TCP: Link-Layer Approach
TCP
TCP
IP
IP
IP
Layer 2
Layer 2
Layer 2
Layer 1
Layer 1
Layer 1
Proxy
MH
IP
Network
Sender
•
•
•
•
Proxy detects losses over the wireless link
Proxy does local retransmission before the sender timeouts. Hides the
wireless losses from the Sender
TCP-unaware approaches: FEC, local retransmission
TCP-aware approaches: e.g. SNOOP (but: filtering of dup Acks!)
[Source: G. Reuss]
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 38
Tatiana K. Madsen
Hans Peter Schwefel
Wirless TCP: Link-Layer Approach
• TCP-aware approach: SNOOP
–
–
–
–
Buffering of down-stream packets in mobile host (until receipt of Ack)
Local retransmission of lost-packets
Filtering of up-stream dup-Acks
Soft-state at Base-station (loss of state affects performance but not correctness)
Discussion: Link-Layer Approaches
• Advantages
– No modification to TCP layer in end hosts
– Prevent propagation of losses/errors to TCP source
• Disadvantages
– TCP-aware link layer solutions cannot be used with IPSec
– Link-layer retransmission cause RTT variations (and thus possibly TCP timeouts)
– Not usable if data and Ack traverse different paths)
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 39
Tatiana K. Madsen
Hans Peter Schwefel
Wirless TCP: End-to-end approach
• TCP Protocol Stack at Sender and Receiver enhanced
e.g. SACK, FACK, D-SACK, Eifel
• Possible enhancements
– Differentiate Losses
e.g. no slow-start for wireless losses
– Efficient Utilisation of Bandwidth
e.g. no initial slow-start
– Detection of Multiple Losses
• Advantages
– End-to-End semantics and layered architecture of network protocols
are preserved
– IP packet encryption can be used
• Disadvantage
– Modification at end host
[Source: G. Reuss]
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 40
Tatiana K. Madsen
Hans Peter Schwefel
End-2-End Enhancements: SACK
TCP Reno inefficient for multiple packet losses within
congestion window
 Extension: Selective Acknowledgement (SACK)
SACK principles:
• Several (3) SACK blocks mark successfully received sets of data (in TCP
Option header extension)
• Sender maintains scoreboard of successfully transmitted packets
• Special treatments of partial Acks during Fast Recovery
 Allows retransmission of more than one segment per RTT
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 41
Tatiana K. Madsen
Hans Peter Schwefel
Wireless TCP: Performance Comparison (ns
simulation)
Single source scenario with burst errors on
wireless link (1=1  ca 28% packet loss)
 Snoop (Split-TCP) together with SACK
provides best goodput
Wireless Data Communication: MM4, Wireless TCP, Fall03
Source: Master Thesis, D. Höllisch
Congestion scenario (20 ON/OFF TCP
sources) with same wirless link model:
 Combination SACK with Snoop shows
much lower goodput than Snoop by itself
Page 42
Tatiana K. Madsen
Hans Peter Schwefel
Other Improvements
• Shortened Connection set-up
– Transaction oriented TCP (RFC 1644)
• Large Initial Windows
• Hand-over Improvements
– Send (forced) dup-Acks after hand-over
• TCP improvements in ad-hoc (wireless multi-hop) scenarios
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 43
Tatiana K. Madsen
Hans Peter Schwefel
Content
1. Background
•
5.
IP, Transport Layers UDP, TCP
•
2. TCP functionality
•
Connection set-up, flow/congestion
control
6.
Performance parameters,
Performance Models
Problem statement, link
models, TCP Improvements
Use Case: TCP in GPRS
•
3. TCP Performance Aspects
•
Wireless TCP
Architecture, Properties, TCP
Improvements
7.
Summary/Conclusions
8.
Outlook
Exercises
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 44
Tatiana K. Madsen
Hans Peter Schwefel
Motivation: Performance measurements
in GPRS networks
• GPRS system (3 time-slots, coding scheme 2): 40.2 kb/s
‚raw‘ throughput
• Substracting overhead L1-L4 headers: 33kb/s
• BUT in performance measurements using HTTP: 10-20kb/s
 Performance predictions need to consider all protocols,
in particular Transmission Control Protocol (TCP)
Core Network
RAN
HTTP
L5-7
TCP
L4
IP
L3
Link-Layer
L2
Internet
HTTP
Server
BSC
SGSN
Wireless Data Communication: MM4, Wireless TCP, Fall03
GPRS
Backbone
GGSN
Radius/DHCP
Client
Page 45
RADIUS
DHCP
Tatiana K. Madsen
Hans Peter Schwefel
GPRS: General Packet Radio Service
•
•
•
•
Packet Switched Extension of GSM
1996: new standard developed by ETSI
Components integrated in GSM architecture
Improvements:
– Packet-switched transmission
– Higher transmission rates on radio link (multiple
time-slots)
– Volume based charging  ‚Always ON‘ mode
possible
• Operation started in 2001 (Germany)
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 46
Tatiana K. Madsen
Hans Peter Schwefel
GPRS - Architecture
Components:
• CCU: Channel Coding Unit
• PCU: Packet Control Unit
• SGSN: Serving GPRS Support Node
• GGSN: Gateway GPRS Support Node
• GR: GPRS Register
GPRS
GSM
Components
Um
Transmission:
• Packet Based Transmission
• Radio link:
– Radio transmission identical to GSM
– Different coding schemes (CS1-4)
– Use of Multiple Time Slots
• Volume Based Charging
MS
BSS
A
Abis
B
T
S
C
C
U
Gp
Gb
Other
B
S
C
P
C
U
PLMN
Gn
Gs
SGSN
MSC
GGSN
Gi
HLR
G
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 47
GR
PDN
Gr
Tatiana K. Madsen
Hans Peter Schwefel
TCP/IP in GPRS
• No end-2-end IP Routing in GPRS network
• Fragmentation in LLC frames & RLC blocks
• Potential bottleneck: air-interface (10-50kbit/s)
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 48
Tatiana K. Madsen
Hans Peter Schwefel
GPRS Boundary conditions & Simulation
Parameters
GPRS Boundary conditions
• RTT between 700ms and 1sec (for 40 Byte packet with no queueing delay)
• Possible modes: RLC Ack/unAck mode, LLC Ack/unAck mode
• Coding Scheme 2  raw 13.4 kb/s per Time-Slot)
• Possible use of 1-4 downlink time-slots supported in practice (here: 3 time-slots)
• Cell Reselection: between 5-40 seconds disruption of data connection
Simplified Simulation Model
(TCP Reno, fixed packet size, constant transmission delays, no delayed Acks)
Two Scenarios:
• Packetsize 1460 Bytes: Max Throughput (L4) 33kbit/sec
• PacketSize 536 Bytes: Max Throughput (L4) 31.5kbit/sec
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 49
Tatiana K. Madsen
Hans Peter Schwefel
TCP Throughput in simplified GPRS Setting
[Correction: y-axis in kbit/s]
RecWin limits throughput for large connections
Throughput in short connections reduced due to slow-start
Scenario without congestion (single TCP connection)
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 50
Tatiana K. Madsen
Hans Peter Schwefel
Other issues: Choice of Maximum Segment
Size
Parameters:
 Coding Scheme 2
 Downlink: 4 time-slots
 Uplink: 1 time-slot
 Max. Window Size 8100B
 No Impact of Slow-Start
 No losses/congestion
Larger MSS
 reduces overhead
 But increases RTT
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 51
Tatiana K. Madsen
Hans Peter Schwefel
Solution in Practice: Proxies (SplitTCP)
Core Network
RAN
MSP
BSC
SGSN
GPRS
Backbone
GGSN
Internet
HTTP
Server
RADIUS
DHCP
E.g. ‚Mobile Smart Proxy‘ (MSP):
•
•
•
•
TCP Optimizations (Larger initial window, etc.)
Content caching and compression (http)
User authentication (Radius) and access control
Content aware billing
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 52
Tatiana K. Madsen
Hans Peter Schwefel
Content
1. Background
•
5.
IP, Transport Layer Protocols (UDP,
TCP, SCTP, RTP)
2. TCP functionality
•
•
Connection
establishment/termination
flow/congestion control (slow-start,
congestion avoidance, fast
retransmit, fast recovery)
6.
Performance parameters
Simulation Results
Performance Models, in particular
fix-point models (using M/M/1/K
queue)
•
Problem statement
•
Performance degradation
•
TCP Improvements: splitTCP, link-layer approaches
(SNOOP), end-2-end
approaches (SACK)
Use Case: TCP in GPRS
•
3. TCP Performance Aspects
•
•
•
Wireless TCP
Architecture, Properties, TCP
Improvements
7.
Summary/Conclusions
8.
Outlook
Exercises
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 53
Tatiana K. Madsen
Hans Peter Schwefel
Outlook: research topics, Wireless TCP
• TCP optmizations
– Cross-layer
– Trade-off congestion behavior & wireless link performance
enhancement
• (Wireless) TCP modeling
• TCP in ad-hoc networks
Other interesting topics (not touched in this lecture):
• Scheduling for TCP traffic (e.g. Random Early Dropping RED)
• TCP and QoS architectures/mechanisms (e.g. starvation)
• TCP over satellite links
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 54
Tatiana K. Madsen
Hans Peter Schwefel
References
•
•
•
IETF (www.ietf.org)
– RFCs: UDP (768), TCP (793,1122, 1072, 1106, 1110, 2018, 2414, 2582), SCTP (2719,
2960), RTP (1889)
– WGs: PILC,TCPSAT
W. Stevens: TCP/IP illustrated, Vol.1. Addison-Wesley 1994.
TCP modeling
–
–
–
•
•
•
Padhye, Firoiu, Towsley, Kurose: Modeling TCP throughput: A simple model and its empirical validation.
ACM SIGCOMM, 1998.
Heyma, Lakshman, Neidhardt: A new method for analysing feedback-based protocols with applications to
engineering web traffic over the Internet. ACM Sigmetrics, 1997.
Schwefel: Behavior of TCP-like elastic traffic at a buffered bottleneck router. Infocom 2001.
TCP Improvements:
– Fall, Floyd: Simulation-based comparison of tahoe, reno, and tcp sack. Computer
Communication Review, 1996.
J. Schiller: ’Mobile Communications’. Addison-Wesley, 2000.
Tutorials, see next slide
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 55
Tatiana K. Madsen
Hans Peter Schwefel
Acknowledgements
• Student work (all TU Munich)
– Raimund Brandt (Seminar), Helmut Obermeier (Msc Thesis), Daniel Höllisch (Msc Thesis)
• InfotechLecture notes: IP Based Networks and Applications,
Chapter 3 (J. Charzinski), www.jcho.de/jc/IPNA
• Tutorial: IP Technology in 3rd Generation mobile networks,
Siemens AG (J. Kross, L. Smith, H. Schwefel)
• Lecture Notes: Networking Introduction (J. Kurose, K. Ross)
• Lecture notes: Mobile Communciations, Jochen Schiller, www.jochenschiller.de
• Tutorial: TCP for Wireless and Mobile Hosts (N. Vaidya),
•
www.cs.tamu.edu/faculty/vaidya
Siemens AG: D. Weber, S. Rugel, G. Reuss
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 56
Tatiana K. Madsen
Hans Peter Schwefel
BACKUP
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 57
Tatiana K. Madsen
Hans Peter Schwefel
GSM: Global System for Mobile Communication
History:
•
•
•
•
2nd Generation of Mobile Telephony Networks
1982: Groupe Spèciale Mobile (GSM) founded
1987: First Standards defined
1991: Global System for Mobile
Communication,
Standardisation by ETSI (European
Telecommunications Standardisation
Institute) - First European Standard
• 1995: Fully in Operation
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 58
Tatiana K. Madsen
Hans Peter Schwefel
GSM – Architecture
Radio Subsystem (RSS)
•
•
•
BTS: Base Transceiver Station
BSC: Base Station Controller
MSC: Mobile Switching Center
HLR/VLR: Home/Visitor Location
Register
AuC: Authentication Center
EIR: Equipment Identity Register
OMC: Operation and
Maintenance Center
Operation
Subsystem
Base Station
Subsystem
Components:
•
•
•
•
Network and
Switchung Subsystem
Um
Abis
A
VLR
MS
BTS
BSC
HLR
AuC
O
MS
BTS
OMC
BSC
Transmission:
•
•
•
Circuit switched transfer
Radio link capacity: 9.6 kb/s
(FDMA/TDMA)
Duration based charging
MSC
EIR
MS
BTS
Connection to
ISDN, PDN
PSTN
Radio Link
Wireless Data Communication: MM4, Wireless TCP, Fall03
Page 59
Tatiana K. Madsen
Hans Peter Schwefel
Related documents