characterizing the transport behaviour of the short
TRANSCRIPT
Characterizing the Transport Behaviour of the
Short Message ServiceEarl Oliver
David R. Cheriton School of Computer ScienceUniversity of Waterloo
MobiSys 2010June 17, 2010
1
Tuesday, September 14, 2010
Takeaways
• Studied the channel characteristics of SMS from the perspective of mobile devices sending bursts of messages (bulk senders)
2
Tuesday, September 14, 2010
Takeaways
• Studied the channel characteristics of SMS from the perspective of mobile devices sending bursts of messages (bulk senders)
• Design and implement an efficient and reliable SMS-based data transport protocol
2
Tuesday, September 14, 2010
SMS in mobile systems
• Prolific use of SMS
• ubiquity
• reliability
• low-cost*
3
Tuesday, September 14, 2010
SMS in mobile systems
• Prolific use of SMS
• ubiquity
• reliability
• low-cost*
• convenient APIs
3
Tuesday, September 14, 2010
SMS in mobile systems
• Prolific use of SMS
• ubiquity
• reliability
• low-cost*
• convenient APIs
• endpoint addressability
3
Tuesday, September 14, 2010
Existing use of SMS
• Typically constrained to single messages
• Stop-and-wait protocol used to send larger amounts of data
4
Tuesday, September 14, 2010
Existing use of SMS
• Typically constrained to single messages
• Stop-and-wait protocol used to send larger amounts of data
• Easy to implement
4
Tuesday, September 14, 2010
Existing use of SMS
• Typically constrained to single messages
• Stop-and-wait protocol used to send larger amounts of data
• Easy to implement
• Network communication often a secondary concern
4
Tuesday, September 14, 2010
Alternatives to SMS
• Cellular data services
• low-latency, high data rate
5
Tuesday, September 14, 2010
Alternatives to SMS
• Cellular data services
• low-latency, high data rate
• end-points behind NAT
5
Tuesday, September 14, 2010
Alternatives to SMS
• Cellular data services
• low-latency, high data rate
• end-points behind NAT
• sparsely deployed in developing regions
5
Tuesday, September 14, 2010
Alternatives to SMS
• Cellular data services
• low-latency, high data rate
• end-points behind NAT
• sparsely deployed in developing regions
• MMS, EMS
5
Tuesday, September 14, 2010
Alternatives to SMS
• Cellular data services
• low-latency, high data rate
• end-points behind NAT
• sparsely deployed in developing regions
• MMS, EMS
• can transfer large amounts of data
5
Tuesday, September 14, 2010
Alternatives to SMS
• Cellular data services
• low-latency, high data rate
• end-points behind NAT
• sparsely deployed in developing regions
• MMS, EMS
• can transfer large amounts of data
• poorly supported and not universally available
5
Tuesday, September 14, 2010
Goal
• Develop a portable library to exchange large mounts of data over SMS
6
Tuesday, September 14, 2010
Goal
• Develop a portable library to exchange large mounts of data over SMS
• How do we efficiently maximize the use of the SMS channel?
6
Tuesday, September 14, 2010
Goal
• Develop a portable library to exchange large mounts of data over SMS
• How do we efficiently maximize the use of the SMS channel?
• Minimize message overhead
6
Tuesday, September 14, 2010
Goal
• Develop a portable library to exchange large mounts of data over SMS
• How do we efficiently maximize the use of the SMS channel?
• Minimize message overhead
• Maximize data throughput
6
Tuesday, September 14, 2010
Outline
• Channel characterization
• Transport protocol design
• Evaluation
7
Tuesday, September 14, 2010
Source Destination
Delay and loss rate
Service center
8
Previous work
• Zerfos (IMC 2006)
Tuesday, September 14, 2010
Source Destination
Service center
Our work
• We examine channel properties from the perspective of mobile devices using the service as mass message senders
9
Tuesday, September 14, 2010
Source Destination
Transmission time, delay, loss rate,
message reordering
Transmission time, delay, loss rate,
message reordering
Black box
Our work
• We examine channel properties from the perspective of mobile devices using the service as mass message senders
9
Tuesday, September 14, 2010
Sources of variability
Source Destination
Base station andcontroller
Base station andcontroller
Service center
10
Tuesday, September 14, 2010
Sources of variability
Source Destination
Base station andcontroller
Base station andcontroller
Service center
Dedicatedchannel request
10
Tuesday, September 14, 2010
Sources of variability
Source Destination
Base station andcontroller
Base station andcontroller
Service center
Dedicatedchannel request
10
Tuesday, September 14, 2010
Sources of variability
Source Destination
Base station andcontroller
Base station andcontroller
Service center
Dedicatedchannel request
ALOHA
10
Tuesday, September 14, 2010
Sources of variability
Source Destination
Base station andcontroller
Base station andcontroller
Service center
Channel allocation
10
Tuesday, September 14, 2010
Sources of variability
Source Destination
Base station andcontroller
Base station andcontroller
Service center
Message transmit
10
Tuesday, September 14, 2010
Sources of variability
Source Destination
Base station andcontroller
Base station andcontroller
Service center
10
Tuesday, September 14, 2010
Sources of variability
Source Destination
Base station andcontroller
Base station andcontroller
Service center
Transmit time
10
Tuesday, September 14, 2010
Sources of variability
Source Destination
Base station andcontroller
Base station andcontroller
Service center
Transmit time
Page and dedicatedchannel request
10
Tuesday, September 14, 2010
Sources of variability
Source Destination
Base station andcontroller
Base station andcontroller
Service center
Transmit time
Page and dedicatedchannel request
10
Tuesday, September 14, 2010
Sources of variability
Source Destination
Base station andcontroller
Base station andcontroller
Service center
Transmit time
Channel allocation
10
Tuesday, September 14, 2010
Sources of variability
Source Destination
Base station andcontroller
Base station andcontroller
Service center
Transmit time
10
Tuesday, September 14, 2010
Sources of variability
Source Destination
Base station andcontroller
Base station andcontroller
Service center
Transmit timeDelay
10
Tuesday, September 14, 2010
Sources of variability
Source Destination
Base station andcontroller
Base station andcontroller
Service center
Transmit timeDelay
Loss rate,reordering rate
10
Tuesday, September 14, 2010
Experiment
11
Transmission time
Delay
Loss rate
Reordering rate
Intra-burst time
Transmission index
Network interface
Time-of-day} }{{ X
Channel characteristics Experimental parameters
Tuesday, September 14, 2010
Experiment
1234
Intra-burst time
Transmission index
Network interface
Time-of-day
12
Tuesday, September 14, 2010
Experiment
1234
Intra-burst time
Transmission index
Network interface
Time-of-day
12
Tuesday, September 14, 2010
Experiment
1234
Intra-burst time
Transmission index
Network interface
Time-of-day
12
Tuesday, September 14, 2010
Experiment
1234
Intra-burst time
Transmission index
Network interface
Time-of-day
12
Tuesday, September 14, 2010
Experiment
1234
Intra-burst time
Transmission index
Network interface
Time-of-day
12
Tuesday, September 14, 2010
Methodology
• Transfer repeated bursts of messages between pairs of stationary BlackBerrys and USB tethered Nokia cell phones
13
Tuesday, September 14, 2010
Methodology
• Transfer repeated bursts of messages between pairs of stationary BlackBerrys and USB tethered Nokia cell phones
• Major Canadian GSM provider (Rogers)
13
Tuesday, September 14, 2010
Methodology
• Transfer repeated bursts of messages between pairs of stationary BlackBerrys and USB tethered Nokia cell phones
• Major Canadian GSM provider (Rogers)
• 80,000 messages
13
Tuesday, September 14, 2010
Methodology
• Transfer repeated bursts of messages between pairs of stationary BlackBerrys and USB tethered Nokia cell phones
• Major Canadian GSM provider (Rogers)
• 80,000 messages
• See paper for details of variable isolation and experiment methodology
13
Tuesday, September 14, 2010
Summary of key resultsFinding Design impact
Transmission timeTransmission timeTransmission time is
independent of intra-burst time, index, time-of-day.
Protocol does not need to regulate message
transmission.
Message lossMessage loss
Loss rate independent of experiment parameters.
(0 - 4%)
Messages are more likely to be highly delayed and reordered than lost.
14
Tuesday, September 14, 2010
Summary of key resultsFinding Design impact
Transmission timeTransmission timeTransmission time is
independent of intra-burst time, index, time-of-day.
Protocol does not need to regulate message
transmission.
Message lossMessage loss
Loss rate independent of experiment parameters.
(0 - 4%)
Messages are more likely to be highly delayed and reordered than lost.
14
Tuesday, September 14, 2010
Summary of key resultsFinding Design impact
Transmission timeTransmission timeTransmission time is
independent of intra-burst time, index, time-of-day.
Protocol does not need to regulate message
transmission.
Message lossMessage loss
Loss rate independent of experiment parameters.
(0 - 4%)
Messages are more likely to be highly delayed and reordered than lost.
14
Tuesday, September 14, 2010
Finding Design impactMessage reordering rateMessage reordering rate
Messages are reordered at a mean rate of 3.4%.
The protocol must be tolerant of message
reordering.
15
Tuesday, September 14, 2010
Finding Design impactMessage delayMessage delay
Delay is independent of intra-burst size.
Protocol does not need to regulate message
transmission.
Delay is highly correlated with the network interface and
time-of-day.
The protocol must tolerate highly variable delay.
16
Tuesday, September 14, 2010
Finding Design impactMessage delayMessage delay
Delay is independent of intra-burst size.
Protocol does not need to regulate message
transmission.
Delay is highly correlated with the network interface and
time-of-day.
The protocol must tolerate highly variable delay.
16
Tuesday, September 14, 2010
0
0.2
0.4
0.6
0.8
1
1 10 100 1000
CD
F
Message delay (seconds)
Tethered cell phonePearl8820Bold
17
CDF of message delay
Delay is highly correlated with the network interface and
time-of-day.
The protocol must tolerate highly variable delay.
Tuesday, September 14, 2010
0
0.2
0.4
0.6
0.8
1
1 10 100 1000
CD
F
Message delay (seconds)
Tethered cell phonePearl8820Bold
10
20
30
40
50
60
70
80
90
100
110
120
Midnight 3am 6am 9am Noon 3pm 6pm 9pm
Del
ay (s
econ
ds)
Time of the day
Mean delay 99% CIGlobal mean
17
CDF of message delay Mean message delay over a day
Delay is highly correlated with the network interface and
time-of-day.
The protocol must tolerate highly variable delay.
Tuesday, September 14, 2010
Delay is independent of transmission index.
The protocol may be agnostic to the quantity of messages
transmitted.
0
20
40
60
80
100
120
140
0 10 20 30 40 50
Mea
n de
lay
(sec
onds
, 99%
CI)
Transmission index
18
Mean delay vs. transmission index
Tuesday, September 14, 2010
Despite high delays and reordering, messages are
received at a steady rate in batches.
The protocol may assume a relatively constant message
arrival rate.
19
0
0.2
0.4
0.6
0.8
1
1 10 100
CD
F
Inter-arrival time (seconds)
CDF of message inter-arrival time
Tuesday, September 14, 2010
Despite high delays and reordering, messages are
received at a steady rate in batches.
The protocol may assume a relatively constant message
arrival rate.
90% of messages delivered withinβ x mean
inter-arrival time
β≅3
19
0
0.2
0.4
0.6
0.8
1
1 10 100
CD
F
Inter-arrival time (seconds)
CDF of message inter-arrival time
Tuesday, September 14, 2010
• Preliminary experimentation
• Bi-directional SMS communication
• Increases transmission time and delay
20
Tuesday, September 14, 2010
• Preliminary experimentation
• Bi-directional SMS communication
• Increases transmission time and delay
• Message reordering (~45%)
20
Tuesday, September 14, 2010
• Preliminary experimentation
• Bi-directional SMS communication
• Increases transmission time and delay
• Message reordering (~45%)
• Losses are frequent (> 20%)
20
Tuesday, September 14, 2010
Outline
21
• Channel characterization
• Transport protocol design
• Evaluation
Tuesday, September 14, 2010
Transport Protocol Design
• Goals
• Minimize message overhead
• Maximize throughput
22
Tuesday, September 14, 2010
Transport Protocol Design
• Goals
• Minimize message overhead
• Maximize throughput
• Flow control and error control
• Simplified version of NETBLT: SMS-TP
22
Tuesday, September 14, 2010
SMS-TP
Selective ACKWaits and avoids
bidirectional communication
Fragment 1
23
Tuesday, September 14, 2010
SMS-TP
Unfettered message
transmission
Selective ACKWaits and avoids
bidirectional communication
Fragment 1
23
Tuesday, September 14, 2010
SMS-TP
Single selective ACK tolerates
messagereordering
Unfettered message
transmission
Selective ACK
Final ACK
Waits and avoids bidirectional
communication
Fragment 1
23
Tuesday, September 14, 2010
SMS-TP
Selective ACK
When to send ACK?
ACK
Final ACK
Fragment 1
23
Fragment 2
Tuesday, September 14, 2010
SMS-TP
Selective ACK
When to send ACK?
ACK
Final ACK
Final ACK
Fragment 1
23
Fragment 2
Tuesday, September 14, 2010
90% of messages are delivered within
β x mean inter-arrival time
SMS-TP (receiver)
24
Tuesday, September 14, 2010
90% of messages are delivered within
β x mean inter-arrival time
SMS-TP (receiver)
EWA of inter-arrival
time
24
Tuesday, September 14, 2010
90% of messages are delivered within
β x mean inter-arrival time
SMS-TP (receiver)
EWA of inter-arrival
time
24
Tuesday, September 14, 2010
90% of messages are delivered within
β x mean inter-arrival time
SMS-TP (receiver)
EWA of inter-arrival
time
Message arrives within ACK timer
24
Tuesday, September 14, 2010
90% of messages are delivered within
β x mean inter-arrival time
SMS-TP (receiver)
EWA of inter-arrival
time
Message arrives within ACK timer
Final ACK
24
Tuesday, September 14, 2010
90% of messages are delivered within
β x mean inter-arrival time
SMS-TP (receiver)
EWA of inter-arrival
time
Message arrives within ACK timer
24
Has the databeen transferred?
Retransmit?
Tuesday, September 14, 2010
SMS-TP (sender)
Setup delay(1 RTT)
Fragment 2
ACK timer set to γ x setup
delay
ACK timer expires
25
Tuesday, September 14, 2010
SMS-TP (sender)
Setup delay(1 RTT)
Final ACK
Fragment 2
ACK timer set to γ x setup
delay
Detects duplicate fragment,
retransmit final ACK
ACK timer expires
25
Tuesday, September 14, 2010
Outline
26
• Channel characterization
• Transport protocol design
• Evaluation
Tuesday, September 14, 2010
Evaluation
• Implementation
• CLDC compliant Java library
• Free for download
27
Tuesday, September 14, 2010
Evaluation
• Implementation
• CLDC compliant Java library
• Free for download
• Evaluation
27
Tuesday, September 14, 2010
Evaluation
• Implementation
• CLDC compliant Java library
• Free for download
• Evaluation
• Field trial
27
Tuesday, September 14, 2010
Evaluation
• Implementation
• CLDC compliant Java library
• Free for download
• Evaluation
• Field trial
• Simulation
27
Tuesday, September 14, 2010
Field trial
28
Sender
Receiver
Sender
Receiver
SMS-TP SMS-TP
SMS-TP SMS-TP
Tuesday, September 14, 2010
Field trial
28
Stop-and-wait
Sender
Receiver
Sender
Receiver
SMS-TP
Stop-and-wait
SMS-TP
Stop-and-wait
SMS-TP
Stop-and-wait
SMS-TP
Tuesday, September 14, 2010
Field trial
28
Stop-and-wait
Optimal
Sender
Receiver
Sender
Receiver
SMS-TP
Stop-and-wait
Optimal
SMS-TP
Stop-and-wait
Optimal
SMS-TP
Stop-and-wait
Optimal
SMS-TP
Tuesday, September 14, 2010
Field trial
28
512 Bytes -32 KB
Stop-and-wait
512 Bytes - 32 KB
Optimal
Sender
Receiver
Sender
Receiver
SMS-TP
Stop-and-wait
Optimal
SMS-TP
Stop-and-wait
Optimal
SMS-TP
Stop-and-wait
Optimal
SMS-TP
Tuesday, September 14, 2010
29
Outperforms existing by a factor of two due to consolidation of ACKs
8.5% off calculated optimalPipelined transmission results in:
545% increase in performance
Tuesday, September 14, 2010
Sender
Receiver
29
Message overhead
0
50
100
150
200
250
300
350
400
450
500
512 B 1 KB 2 KB 4 KB 8 KB 16 KB 32 KB
Num
ber o
f SM
S m
essa
ges
Data size
Stop-and-waitSMS-TP (alpha = 0.5, beta = 3, gamma = 2)
Calculated optimal
Stop-and-wait
Optimal
SMS-TP
Stop-and-wait
Optimal
SMS-TPOutperforms existing by a factor of two due to consolidation of ACKs
8.5% off calculated optimalPipelined transmission results in:
545% increase in performance
Tuesday, September 14, 2010
Sender
Receiver
29
Data throughput
0
5
10
15
20
25
30
35
40
45
512 B 1 KB 2 KB 4 KB 8 KB 16 KB 32 KB
Thro
ughp
ut (b
ytes
/ se
cond
)
Data size
Stop-and-waitSMS-TP (alpha = 0.5, beta = 3, gamma = 2)
Calculated optimal
Message overhead
0
50
100
150
200
250
300
350
400
450
500
512 B 1 KB 2 KB 4 KB 8 KB 16 KB 32 KB
Num
ber o
f SM
S m
essa
ges
Data size
Stop-and-waitSMS-TP (alpha = 0.5, beta = 3, gamma = 2)
Calculated optimal
Stop-and-wait
Optimal
SMS-TP
Stop-and-wait
Optimal
SMS-TPOutperforms existing by a factor of two due to consolidation of ACKs
8.5% off calculated optimalPipelined transmission results in:
545% increase in performance
Tuesday, September 14, 2010
Simulation
• Study may not reflect conditions of a developing region (Zerfos’06)
30
Tuesday, September 14, 2010
Simulation
• Study may not reflect conditions of a developing region (Zerfos’06)
• Loss rate
30
Tuesday, September 14, 2010
Simulation
• Study may not reflect conditions of a developing region (Zerfos’06)
• Loss rate
• Delay
30
Tuesday, September 14, 2010
Simulation
• Study may not reflect conditions of a developing region (Zerfos’06)
• Loss rate
• Delay
Sender
Receiver
30
Tuesday, September 14, 2010
Simulation
• Study may not reflect conditions of a developing region (Zerfos’06)
• Loss rate
• Delay
SMS-TP SMS-TPSender
Receiver
30
Tuesday, September 14, 2010
Simulation
• Study may not reflect conditions of a developing region (Zerfos’06)
• Loss rate
• Delay
SMS-TP SMS-TPSender
ReceiverSMS-SIM
30
Tuesday, September 14, 2010
Simulation
• Study may not reflect conditions of a developing region (Zerfos’06)
• Loss rate
• Delay
SMS-TP SMS-TPSender
ReceiverSMS-SIM
Loss rate: 1% - 10%
30
Tuesday, September 14, 2010
Simulation
• Study may not reflect conditions of a developing region (Zerfos’06)
• Loss rate
• Delay
SMS-TP SMS-TPSender
ReceiverSMS-SIM
Delay: 30 seconds - 3 minutes
30
Tuesday, September 14, 2010
SMS-TP SMS-TPSender
Receiver
31
SMS-SIM
A loss rate increase has statistically insignificant impact on throughput
6 fold increase in delay, 50% decrease in throughput
50% better than stop-and-wait in a well provisioned network
Delay and loss have a negligible impact on message overhead- except under high loss and high delay situations
Tuesday, September 14, 2010
0
50
100
150
200
250
20 40 60 80 100 120 140 160 180
Num
ber o
f SM
S m
essa
ges
Delay (seconds)
Loss rate = 0.01Loss rate = 0.05
Loss rate = 0.1
Message overhead
SMS-TP SMS-TPSender
Receiver
31
SMS-SIM
A loss rate increase has statistically insignificant impact on throughput
6 fold increase in delay, 50% decrease in throughput
50% better than stop-and-wait in a well provisioned network
Delay and loss have a negligible impact on message overhead- except under high loss and high delay situations
Tuesday, September 14, 2010
0
50
100
150
200
250
20 40 60 80 100 120 140 160 180
Num
ber o
f SM
S m
essa
ges
Delay (seconds)
Loss rate = 0.01Loss rate = 0.05
Loss rate = 0.1
Message overhead
0
5
10
15
20
25
30
35
40
45
20 40 60 80 100 120 140 160 180
Thro
ughp
ut (b
ytes
/ se
cond
)
Delay (seconds)
Loss rate = 0.01Loss rate = 0.05
Loss rate = 0.1
Data throughput
SMS-TP SMS-TPSender
Receiver
31
SMS-SIM
A loss rate increase has statistically insignificant impact on throughput
6 fold increase in delay, 50% decrease in throughput
50% better than stop-and-wait in a well provisioned network
Delay and loss have a negligible impact on message overhead- except under high loss and high delay situations
Tuesday, September 14, 2010
Summary
• Studied the channel characteristics of SMS from the perspective of mobile devices sending bursts of messages
32
Tuesday, September 14, 2010
Summary
• Studied the channel characteristics of SMS from the perspective of mobile devices sending bursts of messages
• Design and implement an efficient and reliable SMS-based data transport protocol
32
Tuesday, September 14, 2010
Summary
• Studied the channel characteristics of SMS from the perspective of mobile devices sending bursts of messages
• Design and implement an efficient and reliable SMS-based data transport protocol
• Reduces message overhead by 50%
32
Tuesday, September 14, 2010
Summary
• Studied the channel characteristics of SMS from the perspective of mobile devices sending bursts of messages
• Design and implement an efficient and reliable SMS-based data transport protocol
• Reduces message overhead by 50%
• Increases throughput by as much as 545%
32
Tuesday, September 14, 2010