Design and Analysis of Data Communication Problems in Bluetooth Wireless Personal-Area Networks...

Post on 19-Dec-2015

215 views 1 download

transcript

Design and Analysis of Data Communication Problems in

Bluetooth Wireless Personal-Area Networks

Ting-Yu Lin (林亭佑 )

Department of Communication Engineering

National Chiao-Tung University, Bun Lab.

2

Agenda

Bluetooth Standard Overview Talk Structure Piconet Issues Addressing (Parts I & II) Scatternet Problems Resolving (Parts III & IV) Conclusions Future Directions References

3

Bluetooth Standard Overview

Master-driven short-range wireless radio technology Operate at 2.4 GHz unlicensed ISM band TDD/FHSS with nominal rate 1600 hops/sec and 23/79 fre

quencies available, each of 1 Mbps symbol rate Transmission range: 10, up to 100 meters Physical links:

- SCO (Synchronous Connection-Oriented) for voice

slot reservation at fixed intervals

- ACL (Asynchronous ConnectionLess) for data

polling access scheme

4

Bluetooth Standard Overview

Bluetooth protocol stack Addressing

- 48-bit Bluetooth Device Address (BD_ADDR)

- 3-bit Active Member Address (AM_ADDR)

- 8-bit Parked Member Address (PM_ADDR)

Four operational modes

- Active, Sniff, Hold, Park

5

Bluetooth Network Topology

Piconet

- Master can connect to at most 7 active/sniff/hold slaves simultaneously

per piconet

Scatternet

- Interconnecting multiple piconets to form a larger network

Bridge

Bridge

6

Packets Exchange Scenario

MASTER

SLAVE 1

SLAVE 2

SLAVE 3

ACLSCO SCO SCO SCOACLACL ACL

7

Bluetooth Frequency Hopping

8

Talk Structure

BlueRing-RelatedIssues

PiconetSniff Scheduling

(sniff mode)

PiconetPolling Policy(active mode)

Inter-PiconetCo-Channel Interference

Collision Analysis

Part I

Sniff Scheduling for Power Saving

< Low-power sniff mode in Bluetooth specification >

Slot pair

10

Sniff Scheduling

Problem Statement- Open issue: how to determine the sniff-related parameters based on

different traffic loads?- Goal: balancing tradeoff between power conservation and

traffic need

Deficiencies of Previous Works- Each slave is considered independently of others

- Most works are restricted to a naive exponential adjustment in either sniff interval or active window- The placement of active windows on the time axis when multiple sniffed slaves are involved is ignored

11

Sniff Scheduling

Architecture of Our Sniff Scheduling Protocol

LM Evaluator

LM Evaluator

LM Evaluator

Evaluator for Slave1

Evaluator for Slave2

Evaluator for SlavekResource

Pool

Scheduler

S1

SkSearching

S1

S2

Sk

Slave 1

Slave 2

Slave k

Master

.

.

.

.

.

.

Link Manager(LM)

S2

sniff related LMP packets

12

Sniff timing for slave k (unit = slot pair)

Basic Idea

Awake

Sleep

20

60

20 20 20 20

Slot occupancy = (active window size) / (sniff interval)

Our Evaluator is performed periodically to check the slot utilization status and determine an appropriate slot occupancy (reduction/increase/no change) for slave k

= 20/60 = 1/3

Evaluation Period

13

Evaluator

• Uk: the slot utilization of the sniff-attempt slots assigned to slave k. • Bk: the buffer backlog for slave k, indicating the number of packets currently qu

eued in the local Baseband buffer.• Wk: a weighted value derived from Uk and Bk to indicate the utilization ratio of t

ime slots assigned to slave k.

Bmax is the maximum buffer space and 0 ≦ α ≦ 1

Wk = βWk’ + (1-β) Wk Wk

’ is the history value, 0 ≦ β ≦ 1

• Tk,Nk,Ok: the current sniff parameters (sniff interval, active window size, and offset, respectively) associated with slave k.

• Sk: the desired slot occupancy of slave k derived by the following equation. This value is the expected ratio of the new Nk to the new Tk.

where 0 < δ < 1

14

Evaluator for slave k

Uk

Bk/Bmax

Calculator X (factor α)

Calculator Y (factor δ)

Wk Sk

Example Awake

Sleep

20

60

20 20 20 20

Evaluation Period

Uk = 16 (used) / 80 (reserved) = 0.2

Bk/Bmax = 7 (queued) / 50 (buffer size) = 0.14

Wk = 0.5 x 0.2 + 0.5 x 0.14 = 0.17α= 0.5

Sk = 0.17 x 1/3 (slot occupancy) / 0.8 = 0.07δ= 0.8

= 1/15

15

Evaluator for slave k

Possible sniff timings to satisfy 1/15 slot occupancy

15

1 1 1 1 1 1 1 1 1

30

2 2 2 2 2

4

60

4 4

8

120

8

16

Resource Pool (RP)20

60

20 20 20 20

Slave1

7 7

120

7

Slave2

120(max. sniff interva

l)

     

1-D

infinite vector V

2-D

finite matrix M

15 (min. sniff interval)

Recall that the Evaluator for Slave1 concludes that its slot occupancy

should be reduced from 1/3 to 1/15 Possible scheduling

Scheduling Policy

      

Slave1 must first give back the 1/3 slot occupancy

Scheduler tries to find a sniff pattern satisfying

1/15 slot occupancyOr 2/30

Or 4/60

Or 8/120 Two scheduling policies are proposed

- LSIF (Longest Sniff Interval First), which starts searching with the longest interval

- SSIF (Shortest Sniff Interval First), which starts searching with the shortest interval

18

Experimental Environment

2-state MMPP traffic model 5 slaves in the piconet α = 0.7 δ = 0.5 Resource Pool (RP) size = 100 x 4 = 400 (slot pairs)

19

AA: Always Active with Round Robin polling policy

AS_VSI: Always Sniff Varying Sniff Interval

AS_VAW:Always Sniff Varying Active Window

With Buffer Size ≧ 30

Our LSIF/SSIF achieve

(Compared to AA)

37 % reduction in

power consumption 16 % improvement in

throughput

(a) Power Consumption

(b) Throughput

Buffer Size Bmax

Buffer Size Bmax

20

Summary of Contributions

Features of Proposed Solution

- An adaptive sniff scheduling scheme is proposed to

consider multiple slaves simultaneously.

- Our scheduling is more accurate in determining the sniff-

related parameters based on slaves’ traffic loads.

- Our proposal includes the placement of active windows

of sniffed slaves on the time axis.

Part II

Link Polling Policy by Pattern Matching

Observations

1. Few works consider the asymmetric up-/down-link traffics between master and slave.

2. The incorporation of packet type selection into polling policy remains unaddressed before this work.

22

Pattern Matching Polling (PMP) This work focuses on the Bluetooth ACL link.

Assuming error-free, only DH1/3/5 are considered. Bandwidth Efficiency β is defined as the number of payload bytes

per non-empty slot.

β

23

Motivation (A Naive Greedy Polling Example)

Bandwidth Efficiency

β = (16*(20+2)) / (5+3) = 44

unit = bytes/slot

24β = (26*(20+2)) / (5+3+1+1) = 57.2 (23% improvement)

Motivation (A Pattern Matching Polling Example)

Bandwidth Efficiency

25

Two problems need further elaboration in PMP:

Pattern Matching Polling (PMP)

1. How to determine a most bandwidth efficient polling pattern?

2. Given a most efficient pattern, how to schedule polling timings?

26

Parameters- Consider a master-slave pair with λM and λS (bytes/slot) as their traffic loads.

- Let λH = max{λM , λS}, λL = min{λM , λS}, and ratio ρ = λH / λL.

- Denote by NH and NL the units with loads λH and λL , respectively.

- Use numbers 1/3/5 to represent DH1/DH3/DH5 packets.

- A polling pattern is a sequence of packet types that will be exchanged by a

master-slave pair.

Polling Patterns

27

28

Polling Patterns

A length-k pattern (k is a positive integer) consists of two k-tuples: (H1, H2, …, Hk) and (L1, L2, …, Lk), where Hi , Li = 1, 3, or 5, each representing a packet type.

Intuitively, the sequence of packets (H1, L1, H2, L2, …, Hk, Lk) will be exchanged by NH and NL, and the sequence will be repeated periodically, as long as the ratio ρ is unchanged and there is no bursty traffic.

29

Impact of Pattern Length

As k grows, the number of offered traffic ratios ρ will increase exponentially.

30

Bandwidth Efficiency

Given traffic loads λH and λL of a master-slave pair, we propose to select the polling pattern that gives the highest bandwidth efficiency β for use.

31

Let j be a positive integer ≦ k (within one iteration of the pattern)

Polling Timings

Γ1 Γ2 Γk

Reference point

32

Based on λH and λL, the most efficient polling pattern (5, 3) (1, 1) is selected. Γ1 = 16, Γ2 = 26, β = 57.2 (23% improvement)

Note that an overflow bit is also implemented in our PMP policy to prevent buffer overloading when bursty traffic occurs.

Pattern Matching Polling Example

Γ1 Γ2

33

Experimental Environment

7 active slaves in a piconet Buffer size for each slave = 2048 bytes Three other polling strategies are implemented

- NGP: Naive Greedy Polling (p.23)

- ERR: Exhaustive Round Robin(ref. A. Capone et. al.)

- StickyAFP: Sticky Adaptive Flow-based Polling(ref. A. Das et. al.)

34

100

200

300

400

500

600

700

800

900

15 25 35 45 55 65 75 85

Piconet Traffic Load λ (bytes/slot)

Pic

onet

Thr

ough

put

(Kbp

s)

PMP (K=3)

PMP (K=5)

NGP

StickyAFP

ERR

0

200

400

600

800

1000

1200

1400

1600

15 25 35 45 55 65 75 85

Piconet Traffic Load λ (bytes/slot)

Ave

rage

Del

ay(m

s)

PMP (K=3)

PMP (K=5)

NGP

StickyAFP

ERR

K: max. allowable

pattern length

(a) Piconet Throughput

(b) Average Delay

When λ≧ 65 (bytes/slot)

Our PMP achieves

(Compared to NGP)

17 % improvement in

throughput 14 % reduction in

average delay

35

Summary of Contributions

Features of Proposed Solution

- An efficient Pattern Matching Polling (PMP) policy is

proposed to handle asymmetric up-/down-link traffics

and exploit different Bluetooth packet types.

- The ultimate goal is to reduce the unfilled, or even null,

payloads in each busy slot.

When multiple links (master-slave pairs) exist, bandwidth efficiency of each single link does determine the max. allowable throughput within a piconet (piconet capacity).

Part III

BlueRing:A New Scatternet Topology for Bluetooth

37

BlueRing

Scatternet Structure Routing Protocol Topology Maintenance Mechanism

38

Motivation

Deficiencies of Previous Works

- Most star- or tree-shaped scatternet topologies suffer

from a communication bottleneck at the root as the

network enlarges.

- How to route packets once the scatternet is formed

remains unaddressed.

- Topology maintenance (fault-tolerance) issues are

not properly addressed.

39

BlueRing Structure

Upstream/Downstream Piconet Upstream/Downstream Master Upstream/Downstream Bridge

Master/Bridge interleaving

40

BlueRing Routing Protocol

General baseband packet format

Payload header formats: (a) single-slot packets and (b) multi-slot packets

41

BlueRing Routing Protocol Payload formats in BlueRing: (a) single-hop unicast communication,

(b) multi-hop unicast communication, and (c) scatternet broadcast communication

The fields in gray are what added by BlueRing

42

BlueRing Recovery Protocol We propose to use 2 DIACs (from 63 reserved DIACs), say DIAC1 and

DIAC2, to facilitate BlueRing recovery/extension. The general GIAC will be used to invite new hosts to join an existing Bl

ueRing. Bridge missing recovery: (a) DIAC1 discovering and (b) the reconnected

BlueRing.

43

Master missing recovery: (a) DIAC1 discovering and (b) the reconnected BlueRing.

BlueRing Recovery Protocol

44

BlueRing Extension Protocol

In BlueRing, each master should execute GIAC inquiry from time to time.

When the number of slaves belonging to a master exceeds a certain limit, sayα(α≧ 4), we will split it into two piconets.

The master should send out a split_request token to obtain split permission from all other masters (concurrent splitting avoidance).

45

(b)

Once the split request is approved by all piconets on the ring, the master detaches its upstream bridge and two non-bridge slaves.

A BlueRing extension example with α= 4

(a)

(c)

46

Experimental Environment

Only DH1 packets are simulated No mobility is modeled Each ACL connection could be intra- or inter-pico

net communication with data rate of 256K bps

47

Simulated topologies with 21 hosts

(a) Star-shaped structure with a piconet as the central gateway

(b) BlueRing with 3 piconets, each containing 7 slaves

(c) Single-piconet structure containing all 21 nodes in a single piconet (park mode is used)

( a )

( b )

48

(a) Throughput

(21 % increased, compared to Star-shaped)

(b) Average packet delays

(38 % reduced, compared to Star-shaped)

0.00

0.50

1.00

1.50

2.00

2 4 6 8 10 12 14 16

Number of Simultaneous Connections (Traffic Load)

Ave

rage

Pac

ket D

elay

s(S

ec.)

BlueRing

Star-shaped

Single-piconet

100

200

300

400

500

600

700

800

2 4 6 8 10 12 14 16

Number of Simultaneous Connections (Traffic Load)

Thr

ough

put

(Kbp

s)

BlueRing

Star-shaped

Single-piconet

49

Summary of Contributions

Features of Proposed Solution

- Routing on BlueRing is stateless.

- BlueRing architecture is simple and scalable.

- Maintaining a BlueRing is an easy job.

Part IV

Collision Analysisfor a Multi-Piconet Environment

51

Collision Analysis(Multi-Piconet Environment)

Problem Statement

- Co-channel interference between Bluetooth piconets could have negative impact on the network throughput.

52

Motivation

Limitations of Previous Works (ref. A. El-Hoiydi et. al.)

- Only single-slot packets are considered.

- It is assumed that each piconet is fully-loaded. Thus, the results do not reflect general scenarios.

53

Analysis Approach

- Consider DH1/3/5 packets that lack for FEC error tolerance, and assume that they occupy the whole 1-slot, 3-slot, and 5-slot space, respectively.

- For N coexisting piconets, we first analyze the packet success probability for two interfering piconets that are neither time- nor frequency-synchronized.

Collision Analysis(Multi-Piconet Environment)

Goal- Derive the theoretical packet error probability and aggregate network throughput for a N-piconet environment.

54

Collision Analysis

Assume that all piconets have homogeneous packet arrival rates: λ1 for DH1, λ3 for DH3, and λ5 for DH5 (0 ≦λi ≦ 1 for i = 1, 3, and 5).

- Case I: fully-loaded traffic (λ1 + 3λ3 + 5λ5 = 1)

- Case II: non fully-loaded traffic (λ1 + 3λ3 + 5λ5 < 1)

Create a dummy 1-slot packet with arrival rate λ0 to represent an empty slot, where

55

Example with Fully-Loaded Traffic Parameters

- P0 = 78/79

- PS(i): the success probability for an i-slot packet Concept

- PS(1) = 1/9 . P0 . P0 (B1) + 1/9 . P0 . P0 (B2)

+ 1/9 . P0 (B3)

+ 1/9 . P0 (B4)

+ 1/9 . P0 . P0 (B5)

+ 1/9 . P0 (B6)

+ 1/9 . P0 (B7)

+ 1/9 . P0 (B8)

+ 1/9 . P0 (B9)

= 3/9 P02 + 6/9 P0

B1 B2 B3 B4 B5 B6 B7 B8 B9

Slot delimiters

1-slot 3-slot packet 5-slot packet

B?

Assuming λ1 =λ3 =λ5, the possibility of

each slot delimiter

A general probabilistic formula for PS(i) can be derived

56

Collision Analysis

Slot delimiters General formula

Possibility of each slot delimiter

57

Collision Analysis

can be solved recursively as follows:

58

Collision Analysis

Examples

Network throughput of X (a piconet)

Aggregate network throughput of N piconets is N × T

f(1) f(3)

59

Experimental Environment

79 channels are available DH1/3/5 packets are simulated Equal arrival rates for DH1/3/5 packets

(λ1 = λ3 = λ5)

60

N: number of piconets

The results suggest that when N > 42, network throughput starts to degrade as traffic load > 50%

Aggregate Network Throughput against traffic loads for various network sizes (N)

61

Summary of Contributions

Features of Proposed Analysis

- All available packet types (1-slot, 3-slot, and 5-slot) are

considered.

- Each piconet is not necessarily fully-loaded.

62

Conclusions

Sniff Scheduling (piconet)

- Pioneer work to 1. Consider multiple slaves simultaneously when assigning sniff parameters,

2. Schedule different sniff patterns to slaves with different traffic loads,

based on accurate calculation of traffic requirement.

Pattern Matching Polling (piconet)

- Pioneer work to 1. Address the asymmetric up-/down-link traffics between master and slave,

2. Incorporate packet type selection into polling policy.

63

Conclusions (Cont.)

BlueRing (scatternet)

- Pioneer work to propose a scatternet structure with corresponding 1. Simple stateless routing protocol and

2. Structure maintenance mechanism to handle node leaving/joining.

Collision Analysis (multi-piconet environment)

- Pioneer work to 1. Consider all packet types (1-slot, 3-slot, and 5-slot) and

2. Remove the assumption that each piconet is fully-loaded

in the analysis model.

64

Future Directions

Compaction/Re-organization strategies for the Resource Pool (sniff scheduling)

BlueRing performance analysis considering inter-piconet interference

A real implementation of the proposed BlueRing scatternet - Hardware support is uncertain (e.g., bridge functionality)

65

References

1. Ting-Yu Lin and Yu-Chee Tseng, “An Adaptive Sniff Scheduling

Scheme for Power Saving in Bluetooth,” IEEE Wireless

Communications, Dec. 2002.

2. Ting-Yu Lin, Yu-Chee Tseng, and Yuan-Ting Lu, “An Efficient

Link Polling Policy by Pattern Matching for Bluetooth Piconets,”

The Computer Journal (SCI), 2003.

3. Ting-Yu Lin, Yu-Chee Tseng, and Keng-Ming Chang, “Formation,

Routing, and Maintenance Protocols for the BlueRing Scatternet of

Bluetooths,” Wireless Communications and Mobile Computing, 2003.

4. Ting-Yu Lin and Yu-Chee Tseng, “Collision Analysis for a Multi-

Bluetooth Picocells Environment,” IEEE Communications Letters, 2004.