57
DelayCheck : Scheduling Voice Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman CSE, IITB, India Partha Dutta IBM Research, India Vijay Gabale CSE, IITB, India SyNerG: Sy stems and Ne twor ks G roup Department of CSE, IIT Bombay, India COMSNETS 2011

DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

DelayCheck: Scheduling Voice Over Multi-hop Multi-channel

Wireless Mesh Networks

Ashish ChiplunkarCSE, IITB, India

Bhaskaran RamanCSE, IITB, India

Partha DuttaIBM Research, India

Vijay GabaleCSE, IITB, India

SyNerG: Systems and Networks GroupDepartment of CSE, IIT Bombay, India

COMSNETS 2011

Page 2: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Wireless Mesh Networks & Our Focus

Goal: Effective and efficient scheduling of # of voice calls in a mesh network

Wireless mesh networks

(WiFi/WiMAX/802.15.4) for real-time applications

Usage: Voice applications for

community networking, local voice telephony

Lo3: Low cost, Low power, Local voice for developing regions

Page 3: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Voice over Wireless Mesh Networks

● CSMA based MAC gives poor throughput and delay [Raman, Chebrolu ’05].

Page 4: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Voice over Wireless Mesh Networks

● CSMA based MAC gives poor throughput and delay [Raman, Chebrolu ’05].

● Usage of 802.15.4 radios● Low radio capacity (250 Kbps).● CSMA breaks down for 2 simultaneous calls on 802.15.4

links [Gabale, Raman '10].

Page 5: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Voice over Wireless Mesh Networks

● CSMA based MAC gives poor throughput and delay [Raman, Chebrolu ’05].

● Usage of 802.15.4 radios● Low radio capacity (250 Kbps).● CSMA breaks down for 2 simultaneous calls on 802.15.4

links [Gabale, Raman '10].

● TDMA based MAC to support voice calls (e.g. LiT).

Page 6: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Voice over Wireless Mesh Networks

● CSMA based MAC gives poor throughput and delay [Raman, Chebrolu ’05].

● Usage of 802.15.4 radios● Low radio capacity (250 Kbps).● CSMA breaks down for 2 simultaneous calls on 802.15.4

links [Gabale, Raman '10].

● TDMA based MAC to support voice calls (e.g. LiT).

● Scheduling transmission over TDMA mesh is an interesting & important problem.

Page 7: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Voice over Wireless Mesh Networks

● CSMA based MAC gives poor throughput and delay [Raman, Chebrolu ’05].

● Usage of 802.15.4 radios● Low radio capacity (250 Kbps).● CSMA breaks down for 2 simultaneous calls on 802.15.4

links [Gabale, Raman '10].

● TDMA based MAC to support voice calls (e.g. LiT).

● Scheduling transmission over TDMA mesh is extensively studied.

Page 8: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Voice over Wireless Mesh Networks

● CSMA based MAC gives poor throughput and delay [Raman, Chebrolu ’05].

● Usage of 802.15.4 radios● Low radio capacity (250 Kbps).● CSMA breaks down for 2 simultaneous calls on 802.15.4

links [Gabale, Raman '10].

● TDMA based MAC to support voice calls (e.g. LiT).

● Scheduling transmission over TDMA mesh is extensively studied.

Are we reinventing the wheel?

Page 9: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

End-to-end delay requirement of VoIP packets: 250ms [Hardy ’02]

● 802.15.4 radio with 250Kbps data rate

Parameter WiFi WiMAX 802.15.4

Data Rate &Slot Size

~ 54 – 1 Mbps,~ 50 – 400 us

~ 75 Mbps,~ 50 – 400 us

250 Kbps,~ 6 ms

TDMA Frame ~ 10 – 30 ms ~ 10 – 30 ms ~ 60 – 80 ms

No. of Data Slots 200 – 25 200 – 25 6 - 8

Voice over Wireless Mesh Networks

Page 10: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

● End-to-end delay requirement of VoIP packets: 150-250ms [Hardy ’02].

● 802.15.4 radio with 250Kbps data rate

Parameter WiFi WiMAX 802.15.4

Data Rate &Slot Size

~ 54 – 1 Mbps,~ 50 – 400 us

~ 75 Mbps,~ 50 – 400 us

250 Kbps,~ 6 ms

TDMA Frame ~ 10 – 30 ms ~ 10 – 30 ms ~ 60 – 80 msNo. of Data Slots 200 – 25 200 – 25 6 - 8

Voice over Wireless Mesh Networks

Page 11: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

● End-to-end delay requirement of VoIP packets: 150-250ms [Hardy ’02].

● 802.15.4 radio with 250Kbps data rate

Efficient scheduling algorithm for strict packet-level delay constraint & admission control?

Parameter WiFi WiMAX 802.15.4

Data Rate &Slot Size

~ 54 – 1 Mbps,~ 50 – 400 us

~ 75 Mbps,~ 50 – 400 us

250 Kbps,~ 6 ms

TDMA Frame ~ 10 – 30 ms ~ 10 – 30 ms ~ 60 – 80 msNo. of Data Slots 200 – 25 200 – 25 6 - 8

Voice over Wireless Mesh Networks

Page 12: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Our Requirements

Parameter Algorithm

Optimization goalMax. Calls admitted

Multi-radio, Multi-channel Yes, Yes

Joint routing & scheduling Yes

Admission control based on delay constraint

Yes

Page 13: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Comparison with Prior Work

ParameterScheduling &

CAC WiMAX, [Sahoo'10]

Joint channel assign & link scheduling,

[Alicherry'05]

Min. Length TDMA

schedule, [Djukic'09]

Generalized link

activation, [Narlikar'06]

Algorithm

Optimization goalCAC for delay & jitter constraints

Network thrput w.r.t

fairness

Min. End-to-end delay

Max. Link scheduling

Max. Calls admitted

Multi-radio, Multi-channel No, No No, Yes No, No No, Yes Yes, Yes

Joint routing & scheduling No Yes No Yes Yes

Admission control based on delay constraint

Yes No No No Yes

Page 14: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Prior Work and DelayCheck

ParameterScheduling &

CAC WiMAX, [Sahoo'10]

Joint channel assign & link scheduling,

[Alicherry'05]

Min. Length TDMA

schedule, [Djukic'09]

Generalized link

activation, [Narlikar'06]

DelayCheck

Optimization goalCAC for delay & jitter constraints

Network thrput w.r.t

fairness

Min. End-to-end delay

Max. Link scheduling

Max. Calls admitted

Multi-radio, Multi-channel No, No No, Yes No, No No, Yes Yes, Yes

Joint routing & scheduling No Yes No Yes Yes

Admission control based on delay constraint

Yes No No No Yes

DelayCheck: Efficient scheduling for real-time traffic

Page 15: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Delay Constrained Scheduling in WiFi Mesh?

Admission control based on strict delay constraint

802.11 TDMA mesh [Fractel setting], frame

200ms 100 slts, 3 chns, 500 clients.

Prior work:

Calls accepted but delay exceeded!

Page 16: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Delay Constrained Scheduling in WiFi Mesh?

Admission control based on strict delay constraint

DelayCheck:

Delay constrained, + greater no. of calls accepted!

802.11 TDMA mesh [Fractel setting], frame

200ms 100 slts, 3 chns, 500 clients.

Page 17: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Outline of Talk

DelayCheck problem formulation

Delay of a hop in TDMA scheduling

DelayCheck algorithm: 3 phases

Polynomial algorithm when delay is input

Simulation results

Implementation issues

Conclusion

Page 18: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

DelayCheck: Problem Formulation

Page 19: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

DelayCheck: Scheduler Inputs

# of slots

Src-Dst, delay f(k+1)

Netw, Interf. graph

# of radios, channels

Curr. 'k' flows, sched state

Online Scheduler

Centralized scheduler

Channel conditions do not change with time

Slot-level channel switching

Unsplittable flows (single path for a flow)

Flows arrive over time (online problem)

6 slots in a scheduling interval Schedule repeats

Page 20: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

DelayCheck: Scheduler Constraints

Centralized scheduler

Channel conditions do not change with time

Slot-level channel switching

Unsplittable flows (single path for a flow)

Flows arrive over time (online problem)

Constraints:Primary interference, Secondary interference, End-to-end delay

# of slots

Src-Dst, delay f(k+1)

Netw, Interf. graph

# of radios, channels

Curr. 'k' flows, sched state

Online Scheduler

Link Scheduling

Delay Constraint

Channel Assignment

Route Selection

Page 21: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

DelayCheck: Scheduler Output

New sched/ f(k+1) rejected

Centralized scheduler

Channel conditions do not change with time

Slot-level channel switching

Unsplittable flows (single path for a flow)

Flows arrive over time (online problem)

Objective:Maximize # of calls admitted

Output: Assign a routing path, time slot & channel for each link

# of slots

Src-Dst, delay f(k+1)

Netw, Interf. graph

# of radios, channels

Curr. 'k' flows, sched state

Link Scheduling

Delay Constraint

Channel Assignment

Route Selection

Online Scheduler

Constraints:Primary interference, Secondary interference, End-to-end delay

Page 22: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

DelayCheck: Algorithm

Page 23: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Delay of a hop in TDMA scheduling

Sl(L1)

A B CL1 L2

TDMA frame (Scheduling Interval)Case 1: In order scheduling.

Scheduling Delay = {Sl(L2) – Sl(L1)} + {Sl(L3) - Sl(L2)}

DL3

Links on a path for a flow

Direction of packet traversal

Sl(L2) Sl(L3)

Control slot

Data slot

Page 24: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Delay of a hop in TDMA scheduling

Sl(L1)

A B CL1 L2

TDMA frame (Scheduling Interval)Case 1: In order scheduling.

Scheduling Delay = {Sl(L2) – Sl(L1)} + {Sl(L3) - Sl(L2)}

TDMA frame (Scheduling Interval)Case 2: Out of order scheduling.

Scheduling Delay = {N – Sl(L1) + Sl(L2)} + {N – Sl(L2) + Sl(L3)}

DL3

N slots

Links on a path for a flow

Direction of packet traversal

Sl(L2) Sl(L3)

Sl(L3) Sl(L2) Sl(L1)

Control slot

Data slot

Page 25: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Delay of a hop in TDMA scheduling

Sl(L1)

A B CL1 L2

TDMA frame (Scheduling Interval)Case 1: In order scheduling.

Scheduling Delay = {Sl(L2) – Sl(L1)} + {Sl(L3) - Sl(L2)}

TDMA frame (Scheduling Interval)Case 2: Out of order scheduling.

Scheduling Delay = {N – Sl(L1) + Sl(L2)} + {N – Sl(L2) + Sl(L3)}

DL3

N slots

Links on a path for a flow

Direction of packet traversal

Sl(L2) Sl(L3)

Sl(L3) Sl(L2) Sl(L1)

A packet’s scheduling delay on a hop depends on whether incoming and outgoing links are scheduled in-order or out-of-order [Djukic ’07].

Delay of a path = sum of the scheduling delay of every hop on the path.

Deterministic/TDMA scheduling ensures that a packet faces only scheduling delay but no queuing delay.

Control slot

Data slot

Page 26: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Delay of a hop in TDMA scheduling

Sl(L3)

A B CL1 L2

DL3

Links on a path for a flow

Direction of packet traversal

Sl(L2) Sl(L1)

Out of order link scheduling spans multiple TDMA frames, but overall end-to-end scheduling delay of a path can still be less than the given delay constraint.

Control slot

Data slot

Sl(L1) Sl(L2) Sl(L3)

TDMA frame (Scheduling Interval)Case 2: Out of order scheduling.

Scheduling Delay = {N – Sl(L1) + Sl(L2)} + {N – Sl(L2) + Sl(L3)}

End-to-end delay < deadline

Page 27: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

How Do We Solve The Scheduling Problem?

Joint Routing, Scheduling

Ensuring DelayConstraint

Maximum # of Voice Calls

Page 28: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

DelayCheck: Solution Sketch

● Delay constrained scheduling is NP-hard.● DelayCheck is an online heuristic.

● Three phases upon receiving a flow request

1. Construct auxiliary graph G’ from G and already

scheduled flow

• Every path in G’ is a feasible schedule of a given delay (assuming 1-hop/2-hop interference).

2. Use Dijkstra's algorithm to find shortest path in G’.

3. Post processing to tweak the schedules with

interference arising in pathological cases.

G’ is auxiliary graph, G is network connectivity graph

Page 29: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Phase I: Constructing Auxiliary Graph

A BX Y

Direction of flow from X to Y Selected

Path

Graph edge

CDirected auxiliary graph G’F = (X, Y, D). (D = 3 slots.)

Page 30: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Phase I: Constructing Auxiliary Graph

A BX Y

(A,1,1,1)

(A,2,1,1)

(A,1,1,2)

(A,2,1,2)X

(B,1,1,2)

(B,2,1,2)

(B,1,1,3)

(B,2,1,3)(A,1,1,3)(A,2,1,3)

(Y,1,1,3)

(Y,2,1,3)

Selected Path

Graph edge

(A,3,1,1)

(A,3,1,2)

(A,3,1,3)

(B,3,1,2)

(B,3,1,3)(Y,3,1,3)

C

(C,3,1,3)

(C,1,1,3)

(C,2,1,3)

Directed auxiliary graph G’F = (X, Y, D). (D = 3 slots.)

A vertex in G’ is a tuple (v, s, c, d), free slot s, free channel c, d <= D.

(B,1,1,2)

Direction of flow from X to Y

# of slots = 3# of radios = 1# of channels = 1# of delay values = 3

Scheduling interval = TDMA frame

Page 31: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Phase I: Constructing Auxiliary Graph

A BX Y

(A,1,1,1)

(A,2,1,1)

(A,1,1,2)

(A,2,1,2)X

(B,1,1,2)

(B,2,1,2)

(B,1,1,3)

(B,2,1,3)(A,1,1,3)(A,2,1,3)

(Y,1,1,3)

(Y,2,1,3)

Selected Path

Graph edge

(A,3,1,1)

(A,3,1,2)

(A,3,1,3)

(B,3,1,2)

(B,3,1,3)(Y,3,1,3)

C

(C,3,1,3)

(C,1,1,3)

(C,2,1,3)

Directed auxiliary graph G’F = (X, Y, D). (D = 3 slots.)

A vertex in G’ is a tuple (v, s, c, d), free slot s, free channel c, d <= D.

Link between (v, s, c, d) and (v’, s’, c’, d’) in G provided 4 rules are met.

• Rule 1: v and v’ are neighbors in G’, ensures connectivity in routing path • Rule 2: there are free radios at v and v’, eliminates primary interference • Rule 3: channel c’ in slot s’ free and non-interfering with previous (s, c) link eliminates secondary interference • Rule 4: d’ = d + N – (s’ – s) if s > s’ (out-of-order scheduling, N = #slots in a frame) = d + s’ – s if s < s’ (in-order scheduling), ensures delay constraint

(B,1,1,2)

Direction of flow from X to Y

Page 32: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Phase I: Constructing Auxiliary Graph

A BX Y

(A,1,1,1)

(A,2,1,1)

(A,1,1,2)

(A,2,1,2)X

(B,1,1,2)

(B,2,1,2)

(B,1,1,3)

(B,2,1,3)(A,1,1,3)(A,2,1,3)

(Y,1,1,3)

(Y,2,1,3)

Selected Path

Graph edge

(A,3,1,1)

(A,3,1,2)

(A,3,1,3)

(B,3,1,2)

(B,3,1,3)(Y,3,1,3)

C

(C,3,1,3)

(C,1,1,3)

(C,2,1,3)

Directed auxiliary graph G’F = (X, Y, D). (D = 3 slots.)

A vertex in G’ is a tuple (v, s, c, d), free slot s, free channel c, d <= D.

Link between (v, s, c, d) and (v’, s’, c’, d’) in G provided 4 rules are met.

• Rule 1: v and v’ are neighbors in G’, ensures connectivity in routing path • Rule 2: there are free radios at v and v’, eliminates primary interference • Rule 3: channel c’ in slot s’ free and non-interfering with previous (s, c) link eliminates secondary interference • Rule 4: d’ = d + N – (s’ – s) if s > s’ (out-of-order scheduling, N = #slots in a frame) = d + s’ – s if s < s’ (in-order scheduling), ensures delay constraint

(B,1,1,2)

Direction of flow from X to Y

Page 33: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Phase I: Constructing Auxiliary Graph

A BX Y

(A,1,1,1)

(A,2,1,1)

(A,1,1,2)

(A,2,1,2)X

(B,1,1,2)

(B,2,1,2)

(B,1,1,3)

(B,2,1,3)(A,1,1,3)(A,2,1,3)

(Y,1,1,3)

(Y,2,1,3)

Selected Path

Graph edge

(A,3,1,1)

(A,3,1,2)

(A,3,1,3)

(B,3,1,2)

(B,3,1,3)(Y,3,1,3)

C

(C,3,1,3)

(C,1,1,3)

(C,2,1,3)

Directed auxiliary graph G’F = (X, Y, D). (D = 3 slots.)

A vertex in G’ is a tuple (v, s, c, d), free slot s, free channel c, d <= D.

Link between (v, s, c, d) and (v’, s’, c’, d’) in G provided 4 rules are met.

What does a link in G' mean? Say link between w = (A,1,1,1) and w' = (B,2,1,2).

Link (A,B) in G is scheduled In slot 2 On channel 1 Delay of the path so far (from the source) is 2.

Direction of flow from X to Y

Slot 2, chanl 1, delay 2

Page 34: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Phase I: Constructing Auxiliary Graph

A BX Y

(A,1,1,1)

(A,2,1,1)

(A,1,1,2)

(A,2,1,2)X

(B,1,1,2)

(B,2,1,2)

(B,1,1,3)

(B,2,1,3)(A,1,1,3)(A,2,1,3)

(Y,1,1,3)

(Y,2,1,3)

Selected Path

Graph edge

(A,3,1,1)

(A,3,1,2)

(A,3,1,3)

(B,3,1,2)

(B,3,1,3)(Y,3,1,3)

C

(C,3,1,3)

(C,1,1,3)

(C,2,1,3)

Directed auxiliary graph G’F = (X, Y, D). (D = 3 slots.)

A vertex in G’ is a tuple (v, s, c, d), free slot s, free channel c, d <= D.

Link between (v, s, c, d) and (v’, s’, c’, d’) in G provided 4 rules are met.

Properties: Paths from source to a node of the form (destination, *, *, *)

Links on the path have an interf-free slot and channel assignment. Packet reaches the destination within delay constraint.

Direction of flow from X to Y

Page 35: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Phase II: Apply Dijkstra's Algorithm

A BX Y

(A,1,1,1)

(A,2,1,1)

(A,1,1,2)

(A,2,1,2)X

(B,1,1,2)

(B,2,1,2)

(B,1,1,3)

(B,2,1,3)(A,1,1,3)(A,2,1,3)

(Y,1,1,3)

(Y,2,1,3)

Selected Path

Graph edge

(A,3,1,1)

(A,3,1,2)

(A,3,1,3)

(B,3,1,2)

(B,3,1,3)(Y,3,1,3)

C

(C,3,1,3)

(C,1,1,3)

(C,2,1,3)

Direction of flow from X to YUse Dijkstra's algorithm to

find a shortest path from src to dst in G'.

Heuristic: Minimizing length of the path minimizes # of resources used.

A resource here is given by (e, s, c): using a slot s with a channel c on a link e.

Page 36: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Phase II: Apply Dijkstra's Algorithm

A BX Y

(A,1,1,1)

(A,2,1,1)

(A,1,1,2)

(A,2,1,2)X

(B,1,1,2)

(B,2,1,2)

(B,1,1,3)

(B,2,1,3)(A,1,1,3)(A,2,1,3)

(Y,1,1,3)

(Y,2,1,3)

Selected Path

Graph edge

(A,3,1,1)

(A,3,1,2)

(A,3,1,3)

(B,3,1,2)

(B,3,1,3)(Y,3,1,3)

C

(C,3,1,3)

(C,1,1,3)

(C,2,1,3)

X-A A-B B-Y X-A A-B B-Y

Slot 2Ch 1

Delay 1

Slot 3Ch 1

Delay 2

Slot 1Ch 1

Delay 3 TDMA frame

Schedule Schedule repeats

Direction of flow from X to YUse Dijkstra's algorithm to

find a shortest path from src to dst in G'.

Heuristic: Minimizing length of the path minimizes # of resources used.

A resource here is given by (e, s, c): using a slot s with a channel c on a link e.

Page 37: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Phase II: Apply Dijkstra's Algorithm

A BX Y

(A,1,1,1)

(A,2,1,1)

(A,1,1,2)

(A,2,1,2)X

(B,1,1,2)

(B,2,1,2)

(B,1,1,3)

(B,2,1,3)(A,1,1,3)(A,2,1,3)

(Y,1,1,3)

(Y,2,1,3)

Selected Path

Graph edge

(A,3,1,1)

(A,3,1,2)

(A,3,1,3)

(B,3,1,2)

(B,3,1,3)(Y,3,1,3)

C

(C,3,1,3)

(C,1,1,3)

(C,2,1,3)

Use Dijkstra's algorithm to find a shortest path from src to dst in G'.

Heuristic: Minimizing length of the path minimizes # of resources used.

A resource here is given by (e, s, c): using a slot s with a channel c on a link e.

Note 1: Minimizing # resources performs close to optimal in simulation.

Note 2: Algorithm is pseudo-polynomial (complexity O((V x S x C x D)2) – but can be made polynomial by adding weights to edges.

Direction of flow from X to Y

Page 38: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Phase II: Polynomial in D

(B,3,1,2)

(V, S, C, D): 4th value – delay

(Y,1,1,3) delay

Page 39: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Phase II: Polynomial in D

(B,3,1,2)

(Y,1,1,m+1)

(V, S, C, M): 4th value – hop

Delay = f (s, s') = 3 – (3 – 1) = 1

(B,3,1,m)

(Y,1,1,3) delay

hops

(V, S, C, D): 4th value – delay

Page 40: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Phase II: Polynomial in D

Dijkstra's algorithm to find “minimum length path which has least delay”. (Complexity O((V x S x C x V)2).

Rule 4 changed: there is link between two nodes (v, s, c, m) and (v', s', c', m+1) in G' with delay (s' – s) mod N.

Formulate and solve real-life constrained fuel problem: minimize toll required to pay, consuming least amount of petrol (with toll/road = 1).

(B,3,1,2)

(Y,1,1,m+1)

(V, S, C, M): 4th value – hop

Delay = f (s, s') = 3 – (3 – 1) = 1

(B,3,1,m)

(Y,1,1,3) delay

hops

(V, S, C, D): 4th value – delay

Page 41: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Phase III: Post-processing

Circular pond

Nodes placed along the pond

L1 & L

5 : 3 hops away,

but may still interfere.

L5

L1

L2

L3

L4

Detect such interfering links.

Reschedule on different slot or channel.

Page 42: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

DelayCheck: Features

● Online algorithm.

● Polynomial time algorithm (heuristic) for delay constrained scheduling.

● Joint routing, channel assignment and scheduling along with strict packet-level delay constraint.

● Low memory and CPU requirements (explain shortly).

First algorithm to have above set of features

Page 43: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Comparing against Optimal Solution

Integer Linear Programming (ILP) formulation for the delay-constrained, multi-hop, multi-radio, multi-channel routing & TDMA scheduling problem.

Offline algorithm which may reschedule existing flows while scheduling given input flow.

Gives upper bound on number of calls accepted by an offline scheduler.

Necessary condition with lower bounds on in-order and out-of-order scheduling

Page 44: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

DelayCheck: Simulation Results

Page 45: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Simulation Set Up

Simulation Setup: – 802.15.4 wireless mesh (Lo3) – 2 Km * 2 Km, 25 infrastructure node and 100 clients – 1 radio per node, 4 channels – At every client, exponential distribution of • inter-call duration (mean = 0.5hrs to 2hrs) • call duration (mean = 2min) – TDMA frame of 60ms with 8 data slots of 6ms each – Duration: 12 hrs

Metrics: – Scheduler efficiency – Call rejection rate

Page 46: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Comparing against Optimal Solution

DelayCheck scheduler efficiency = 93%

DelayCheck performs close to optimal.

Page 47: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Comparing against Optimal Solution

DelayCheck outperforms even-odd scheduler.

Even-odd scheduler efficiency = 69%

Page 48: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Comparing against Optimal Solution

Online DelayCheck scheduler performs close to offline scheduler.

Calls rejected by DelayCheck quite close to calls rejected by offline scheduler

Page 49: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Comparing against Optimal Solution

Call rejection rate reduced by 2 fold.

Comparing number of calls rejected by DelayCheck and even-odd scheduling.

Page 50: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

DelayCheck: Implementation

Page 51: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Implementing In Practice

Storage requirement of graph? E.g. 25 nodes, 100 slots, 10 channels, 10 hops: O(1010).

Observation: Graph need not be stored, connectivity checking can be done on-the-fly in O(1).

Only storage: Cost matrix O(n). ~64KB.

Page 52: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Implementing In Practice

CPU requirement to search the state space? E.g. 25 nodes, 100 slots, 10 channels, 10 hops, 2.2GHz CPU, 2GB RAM: 8 seconds.

Observation: search space can be suitably partitioned, e.g. Highest numbered slot allotted.

During search we consider most likely partition, then go on exploring bigger partitions. Time reduced to ~ 1 second.

Storage requirement of graph? E.g. 25 nodes, 100 slots, 10 channels, 10 hops: O(1010).

Observation: Graph need not be stored, connectivity checking can be done on-the-fly in O(1).

Only storage: Cost matrix O(n). ~64KB.

Page 53: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

DelayCheck: Concluding Remarks

Goal: Efficient, delay constrained scheduler to maximize number of voice calls

Joint routing, channel assignment, link scheduling Works in 3 phases Can be extended for 'm'-hop interference model Delay-constrained scheduling

Feasibility & effectiveness via implementation & evaluation Close to optimal behavior 2 x improvement over prior work Low memory & CPU requirement yet being efficient

Page 54: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

DelayCheck publication/presentation at:http://www.cse.iitb.ac.in/~vijaygabale/

Vijay [email protected]

SyNerG: Systems and Networks Grouphttp://www.cse.iitb.ac.in/synerg

COMSNETS 2011

Thanks! Questions???

This work is funded by:IU-ATC Project, DST, Goverment of India and

UK EPSRC Digital Economy Programme

Page 55: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Phase II: Incorporating 2-hop Interference

(v, s, c, m) (s, c): Check for interference on previous hop

• Rule 3: channel c’ in slot s’ free and non-interfering with previous (s, c) link, eliminates secondary interference

Page 56: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Phase II: Incorporating 2-hop Interference

(v, s, c, m) (s, c): Check for interference on previous hop

• Rule 3: channel c’ in slot s’ free and non-interfering with previous link e:(s, c) and link before e, e1:(s1, c1) , eliminates secondary interference

(v, s, c, s1, c1, m) (s, c, s1, c1): Check for interference on previous two hops in the path

Page 57: DelayCheck: Scheduling Voice Over Multi-hop Multi-channel ...€¦ · Over Multi-hop Multi-channel Wireless Mesh Networks Ashish Chiplunkar CSE, IITB, India Bhaskaran Raman ... Voice

Effect of Multi-channel Scheduling

Using multiple channels can increase call acceptance by 2-fold.

Increase in call acceptance, 5 channels seem sufficient