cs380y junior thesis1 the performance of tcp/ip over bluetooth chris snow supervisors: serguei...
TRANSCRIPT
CS380y Junior Thesis 1
The Performance of TCP/IP over Bluetooth
Chris Snow
Supervisors:
Serguei Primak, Electrical Engineering
Hanan Lutfiyya, Computer Science
CS380y Junior Thesis 2
Introduction
Ask your questions any time!
Who am I ? What is the point of this research?
CS380y Junior Thesis 3
Topics of Discussion
A brief intro to Bluetooth Wireless channel modeling TCP/IP in a wireless environment Simulations and results So what does this all mean?
CS380y Junior Thesis 4
Bluetooth
A short range (usually 10m), low-power wireless protocol
Used in mobile phones, PDAs, laptop computers, wireless headsets, …..
Allows for automatic detection and connection establishment
The ultimate plug-and-play solution!
CS380y Junior Thesis 5
Bluetooth usage scenario A mobile phone supporting data
and a laptop computer With a Bluetooth connection, the
laptop can use the phone’s data connection to get Internet access
No cables needed! Just put the phone beside the computer (or even in your pocket – up to 10m)
CS380y Junior Thesis 6
“In-depth” Bluetooth
Devices form piconets, with 1 master and up to 7 slaves
Any Bluetooth device can act as a master or a slave! Roles change…
Devices can be part of more than one piconet at the same time
Scatternets can be formed – collections of piconets
CS380y Junior Thesis 7
Bluetooth Packets
There are about 15 types of Bluetooth packets
The important variations between types are: size (number of time slots) and use of forward error correction (FEC)
The six important types are: 1,3, and 5 time slots, w/ and w/o FEC
CS380y Junior Thesis 8
Wireless Channels
The channel is whatever medium the message passes through between sender and receiver – in this case, the air, walls, buildings, etc.
It is very difficult to characterize a wireless channel, because it is both spatially and temporally varying …
CS380y Junior Thesis 9
Fading Channels
The error pattern of the channel is not uniformly distributed
Some event may cause increased loss in the channel for a period of time, then the channel state improves
This is a fading channel – a major area of communications research
CS380y Junior Thesis 10
Modeling Wireless Channels In order to simulate a fading
channel, we need to develop a model
This model should represent the quality of the channel as a function of one or more parameters
A common model is the Gilbert-Elliot (GE) model
CS380y Junior Thesis 11
The single channel Gilbert-Elliot Model In the GE model, the channel
modeled as a two-state Markov process
Either the channel is “good” or it is “bad”
The model has several parameters: correlation, probability of a Good channel, and the probabilities of error given that we are in the Good or the Bad state
CS380y Junior Thesis 12
Gilbert-Elliot (cont’d)
The correlation relates successive packets in time.
With non-zero correlation, the channel has some tendency to stay in the same state on transitions
Every time a packet is received, the new state is computed (Good or Bad) and the packet reception is evaluated based on the relevant probability of error
CS380y Junior Thesis 13
Two-channel GE model
When we have two channels, we can model them in several ways:
Uncorrelated – the two channels are completely unrelated (e.g. they are physically remote)
Completely correlated – identical behaviour on the two channels (e.g. they pass through the same physical space)
CS380y Junior Thesis 14
Two channels (cont’d)
The third option is to provide some level of correlation between the channels
This model defines 4 aggregate states based on the state of each channel (e.g. G1G2, G1B2, etc)
We can then define the transition equations based on the correlation of each channel and the correlation between channels (alpha)
The spatially correlated channel can be studied to examine the effect of different correlation levels
CS380y Junior Thesis 15
TCP/IP
The TCP protocol provides for connections between hosts on an IP network
Includes many performance enhancers, including “sliding windows” and “back-off”
The main problem: TCP/IP was designed for a wired network such as Ethernet
CS380y Junior Thesis 16
TCP/IP with wireless
In a wireless environment, many things cause packet loss
TCP/IP’s mechanisms for dealing with failed transmits are not optimal for a wireless channel
So why use TCP/IP ? Interoperability….
CS380y Junior Thesis 17
The simulations
I extended the Bluehoc package (an open-source Bluetooth simulator) to use the one- and two-channel models described above
Then I studied the effects of different correlations, error rates, etc
CS380y Junior Thesis 18
GE model in Bluehoc
For performance reasons, the error model in Bluehoc is packet-based (either a packet is received, or it isn’t)
The previous model just provided a table of probabilities of error, based on packet type and distance (calculated based on channel measurements by Rappaport)
CS380y Junior Thesis 19
Fixing the GE model
Different packet types and distances have different probabilities of error!
The GE model assumes a fixed probability of error – we shouldn’t constantly change it
This creates a big problem, because the error sequence now varies depending on the packet sequence ordering, which isn’t right
CS380y Junior Thesis 20
The solution
To fix this, we establish a baseline error rate (the maximum – 5 slot length, without FEC), which is fixed
“Scaling” is done based on the actual distance and packet type
Instead of the prob. of error in a bad state being 1, we modify it based on the packet type and distance
CS380y Junior Thesis 21
Back to simulating
Now that we have fixed the GE model, we can apply it to some simulations
The main study involves an FTP connection between one master, and one or two slaves
CS380y Junior Thesis 25
Correlation Sharing
The previous two graphs show the throughput as a function of C2 correlation
C1 correlation is fixed at 0 (i.e. the errors occur randomly)
Note that the C2 performance doesn’t change very much
However, the C1 performance looks much like the single-channel results
CS380y Junior Thesis 26
Correlation Sharing 2
What happens here is that because the two channels are correlated (the alpha parameter), the state of C2 affects C1
Even though C1 has randomly occurring errors, the spatial correlation causes some portion of the C2 error stream to be superimposed on C1
This means that the effective correlation value for C1 isn’t actually zero
C2 is not affected by correlation sharing, because C1 has zero correlation
CS380y Junior Thesis 27
So what does this mean? In some circumstances, the performance
predicted by a simple model may be completely different than the actual performance
The use of a more realistic channel model (with non-uniform distribution of error) provides a more accurate model of performance
TCP/IP performance over a Bluetooth link could be really bad, depending on the physical situation
CS380y Junior Thesis 28
Acknowledgements
Thanks to Hanan and Serguei for acting as supervisors!
C. Snow, and S. Primak, “Performance Evaluation of TCP/IP in Bluetooth Based Systems”, Proc. IEEE VTC Spring ’02, in press.