Scheduling Algorithms for TDMA Wireless

0 downloads 0 Views 2MB Size Report
6.15 Routing and Neighbour Tables in a 802.16 Router. . . . . . . . . . . . . . 132 xi ... Distributed Coordination Function. DSL. Digital Subscriber Line (modem). DSR.
Scheduling Algorithms for TDMA Wireless Multihop Networks

by

Petar Djukic

A thesis submitted in conformity with the requirements for the degree of Doctor of Philosophy Graduate Department of Electrical and Computer Engineering University of Toronto

c 2008 by Petar Djukic Copyright

Abstract Scheduling Algorithms for TDMA Wireless Multihop Networks Petar Djukic Doctor of Philosophy Graduate Department of Electrical and Computer Engineering University of Toronto 2008 Current and future wireless standards use TDMA to provide guaranteed Quality-ofService (QoS) in the network. While these standards specify how transmissions should occur, they do not discuss scheduling algorithms to find when transmissions should occur (transmission schedules). Despite the technological advances, the question of finding transmission schedules has existed for the past twenty years without a satisfactory answer. This thesis presents a new class of scheduling algorithms for Time Division Multiple Access (TDMA) wireless multihop networks. These algorithms have three major advantages. First, they take into account overhead and delay. With reduced overhead, transmission schedules have much higher throughput than what is possible with previous approaches. The algorithms can also be customized to produce schedules with specific delay properties. Scheduling to achieve a specific delay opens up a new dimension in wireless scheduling that was previously not possible. Second, the algorithms provide a simple and computationally efficient way to specify exact constraints on end-to-end flows in the network. These constraints provide us with a way to solve two important cross-layer design problems in TDMA wireless multihop networks. Third, the algorithms can be distributed in a very natural way. The distributed versions of the algorithms achieve the same performance as the centralized algorithms. The practical value of the algorithms is shown by simulating their usage in two different types TDMA wireless multihop networks. ii

Dedication

I dedicate this thesis to my parents, who are my greatest inspiration.

iii

Acknowledgements

I would like to thank my supervisor, Professor Shahrokh Valaee, for giving me the opportunity of going to graduate school, teaching me how to be a researcher and helping me become a better writer. I would also like to thank the Rogers family and LG Electronics for financially supporting my research. I would like to thank my supervisory committee members, Professor Ben Liang and Professor Alberto Leon-Garcia; my examination committee members, Professor Jorg Liebeherr, Professor Frank Kschischang and Professor Baochun Li; and the external reviewer Professor Halim Yanikomeroglu, for their feedback. I would also like to thank Professor Daniel James for chairing my second defence. I would like to thank my colleagues, Jacob Eshet and Ryan Parker, for interesting discussions. I would like to thank my parents for encouraging me to go to graduate school and for giving me support when I needed it. Without you, my degrees would not be possible. I would like to thank my sister, Mila, and her husband, Milos, for being supportive of all my efforts. Finally, I would like to thank my wife, Theresa, for her support and encouragement. Theresa, you are my sunshine.

iv

Table of Contents List of Tables

ix

List of Figures

x

List of Algorithms

xiii

List of Abbreviations

xiv

1 Introduction 1.1

1

Mesh Networks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2

1.1.1

Overview of 802.16 Mesh Networks . . . . . . . . . . . . . . . . .

5

1.1.2

Overview of 802.11s Mesh Networks . . . . . . . . . . . . . . . . .

8

1.2

Overview of the Thesis . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8

1.3

Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

13

1.3.1

Centralized TDMA Scheduling . . . . . . . . . . . . . . . . . . . .

14

1.3.2

Distributed TDMA Scheduling

. . . . . . . . . . . . . . . . . . .

16

1.3.3

802.16 Scheduling algorithms . . . . . . . . . . . . . . . . . . . .

18

1.3.4

Joint Rate Control and Scheduling . . . . . . . . . . . . . . . . .

19

1.3.5

TDMA over 802.11 . . . . . . . . . . . . . . . . . . . . . . . . . .

20

1.4

Statement of Contributions

. . . . . . . . . . . . . . . . . . . . . . . . .

2 Network Model and Problem Statement v

21 24

2.1

Time Division Multiple Access MAC . . . . . . . . . . . . . . . . . . . .

24

2.2

Link Layer Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

26

2.2.1

Wireless Interference between Links . . . . . . . . . . . . . . . . .

27

2.2.2

Link Conflict Graphs . . . . . . . . . . . . . . . . . . . . . . . . .

29

Network Layer Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

30

2.3.1

Link and End-to-end Rates . . . . . . . . . . . . . . . . . . . . .

31

2.3.2

Link Capacity . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

33

TDMA Scheduling Problems . . . . . . . . . . . . . . . . . . . . . . . . .

34

2.4.1

TDMA Delay Aware Scheduling . . . . . . . . . . . . . . . . . . .

35

2.4.2

Minimum Length TDMA Delay Aware Scheduling . . . . . . . . .

36

2.4.3

Joint Rate Control and Scheduling . . . . . . . . . . . . . . . . .

43

2.4.4

Joint Routing and Scheduling . . . . . . . . . . . . . . . . . . . .

43

2.3

2.4

3 TDMA Scheduling

45

3.1

Conflict-Free Schedules for Fixed N . . . . . . . . . . . . . . . . . . . . .

46

3.2

Centralized Bellman-Ford Scheduler . . . . . . . . . . . . . . . . . . . . .

50

3.3

Decentralized Bellman-Ford Scheduler

. . . . . . . . . . . . . . . . . . .

55

3.3.1

Iterative Schedule Construction . . . . . . . . . . . . . . . . . . .

55

3.3.2

Feasible Schedule Detection . . . . . . . . . . . . . . . . . . . . .

60

3.4

Equivalent Transmission Orders . . . . . . . . . . . . . . . . . . . . . . .

61

3.5

Validity of the Iterative Search . . . . . . . . . . . . . . . . . . . . . . . .

64

3.6

Relationship to Graph Colouring . . . . . . . . . . . . . . . . . . . . . .

66

4 TDMA Delay Aware Scheduling

70

4.1

TDMA Delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

71

4.2

Min-Max TDMA Delay Scheduling . . . . . . . . . . . . . . . . . . . . .

75

4.3

One Frame Delay Scheduling for Tree Topologies . . . . . . . . . . . . . .

78

4.4

Rate Controlled Server model of TDMA Networks . . . . . . . . . . . . .

81

vi

4.4.1

Connection Rates on a Single TDMA Link . . . . . . . . . . . . .

82

4.4.2

End-to-end Connection Rates . . . . . . . . . . . . . . . . . . . .

84

5 Scheduling Algorithms for 802.16 Mesh Networks 5.1

86

802.16 Mesh Standard . . . . . . . . . . . . . . . . . . . . . . . . . . . .

88

5.1.1

Physical Layer . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

88

5.1.2

802.16 TDMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

89

5.1.3

802.16 Data Sub-frame Scheduling Protocols . . . . . . . . . . . .

91

5.2

Applicability of the Model to 802.16 Networks . . . . . . . . . . . . . . .

93

5.3

End-to-End QoS in 802.16 Mesh Networks . . . . . . . . . . . . . . . . .

95

5.4

802.16 Centralized Scheduling Algorithms . . . . . . . . . . . . . . . . .

97

5.4.1

IEEE 802.16 Scheduling Algorithm . . . . . . . . . . . . . . . . .

98

5.4.2

Graph Colouring Algorithms . . . . . . . . . . . . . . . . . . . . . 100

5.4.3

Load-balancing Algorithm . . . . . . . . . . . . . . . . . . . . . . 101

5.4.4

Bellman-Ford Scheduling Algorithm . . . . . . . . . . . . . . . . . 102

5.5

Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 5.5.1

Example 1: Small Topology . . . . . . . . . . . . . . . . . . . . . 104

5.5.2

Example 2: Chains . . . . . . . . . . . . . . . . . . . . . . . . . . 107

5.5.3

Example 2: 5 × 3 Grid . . . . . . . . . . . . . . . . . . . . . . . . 110

6 TDMA Scheduling for 802.11 Mesh Networks

113

6.1

802.11 Distributed Coordination Function . . . . . . . . . . . . . . . . . 114

6.2

802.16 Mesh Coordination Function . . . . . . . . . . . . . . . . . . . . . 116

6.3

802.16 Embedded over 802.11 Hardware . . . . . . . . . . . . . . . . . . 118

6.4

Bandwidth Comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

6.5

Simulation Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 6.5.1

Example 1: Simple Topology . . . . . . . . . . . . . . . . . . . . . 124

6.5.2

Example 2: Chains . . . . . . . . . . . . . . . . . . . . . . . . . . 127 vii

6.6

Implementation under Linux OS . . . . . . . . . . . . . . . . . . . . . . . 127 6.6.1

Mesh Network Addressing . . . . . . . . . . . . . . . . . . . . . . 130

6.6.2

QoS Aware Convergence Sub-layer . . . . . . . . . . . . . . . . . 131

6.6.3

User End-to-End Security . . . . . . . . . . . . . . . . . . . . . . 134

7 Joint Rate Control and Scheduling

136

7.1

Enhanced Network Model . . . . . . . . . . . . . . . . . . . . . . . . . . 138

7.2

Joint Rate Control and Scheduling . . . . . . . . . . . . . . . . . . . . . 139

7.3

7.4

7.2.1

The Lagrangian Dual . . . . . . . . . . . . . . . . . . . . . . . . . 142

7.2.2

Sub-gradient Algorithm for the Lagrangian Dual . . . . . . . . . . 143

7.2.3

Correctness of the Sub-gradient Algorithm . . . . . . . . . . . . . 146

7.2.4

Exhaustive Search for Transmission Orders . . . . . . . . . . . . . 152

Practical Implementations of the Algorithm . . . . . . . . . . . . . . . . 153 7.3.1

Centralized Algorithm . . . . . . . . . . . . . . . . . . . . . . . . 154

7.3.2

Decentralized Algorithm . . . . . . . . . . . . . . . . . . . . . . . 155

Application to 802.16 Mesh Networks . . . . . . . . . . . . . . . . . . . . 156

8 Conclusion

160

9 Future Directions

163

A Complexity Results

165

A.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 A.2 Computational Complexity of 3-GFTO . . . . . . . . . . . . . . . . . . . 169 A.3 Computational Complexity of N -GFTO . . . . . . . . . . . . . . . . . . 175 A.4 Complexity of TDMA scheduling . . . . . . . . . . . . . . . . . . . . . . 180 B Copyright Notices

182

B.1 Copyright permission for IEEE published work . . . . . . . . . . . . . . . 182 B.2 Copyright permission for Taylor and Fracis published work . . . . . . . . 184 viii

List of Tables 5.1

Comparison of 802.11a and 802.16 OFDM . . . . . . . . . . . . . . . . .

89

5.2

Comparison of 802.11a and 802.16 Raw Data Rates . . . . . . . . . . . .

90

5.3

802.16 Frame Lengths . . . . . . . . . . . . . . . . . . . . . . . . . . . .

90

6.1

802.11a Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115

ix

List of Figures 1.1

Mesh networks. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2

1.2

Small Mesh Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4

1.3

TCP Throughput with 802.11a . . . . . . . . . . . . . . . . . . . . . . .

5

1.4

A simple 802.16 Schedule for the topology in Fig. 1.2 . . . . . . . . . . .

7

1.5

TCP Throughput with 802.16 . . . . . . . . . . . . . . . . . . . . . . . .

7

1.6

TDMA Scheduling Delay . . . . . . . . . . . . . . . . . . . . . . . . . . .

9

2.1

TDMA Framing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

25

2.2

A simple mesh topology . . . . . . . . . . . . . . . . . . . . . . . . . . .

27

2.3

Conflicts in TDMA Wireless Networks . . . . . . . . . . . . . . . . . . .

28

2.4

Conflict graph for the topology in Fig. 2.2 . . . . . . . . . . . . . . . . .

29

2.5

Time Axis and Virtual Slots Axis . . . . . . . . . . . . . . . . . . . . . .

37

2.6

Relationship between α and ρ . . . . . . . . . . . . . . . . . . . . . . . .

41

3.1

Interpretation of Costs . . . . . . . . . . . . . . . . . . . . . . . . . . . .

50

3.2

Augmented Conflict Graph . . . . . . . . . . . . . . . . . . . . . . . . . .

52

3.3

Example Algorithm Convergence . . . . . . . . . . . . . . . . . . . . . .

58

3.4

Average Convergence Time . . . . . . . . . . . . . . . . . . . . . . . . . .

59

3.5

Split transmissions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

62

3.6

Equivalent Transmission Orders . . . . . . . . . . . . . . . . . . . . . . .

63

3.7

Splitting of Vertices in Conflict Graph . . . . . . . . . . . . . . . . . . .

67

x

4.1

TDMA Delay Aware Scheduling . . . . . . . . . . . . . . . . . . . . . . .

71

4.2

Single Hop Delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

72

4.3

Rate Controlled Server . . . . . . . . . . . . . . . . . . . . . . . . . . . .

83

5.1

The cost of multiple transmissions . . . . . . . . . . . . . . . . . . . . . .

96

5.2

TDMA Delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

96

5.3

A simple example of a mesh network . . . . . . . . . . . . . . . . . . . .

98

5.4

802.16 schedules for the topology in Fig. 5.3 . . . . . . . . . . . . . . . .

99

5.5

Performance of Scheduling algorithms for the topology in Fig. 5.3 . . . . 106

5.6

Performance of Scheduling algorithms for Chains

5.7

Oscillations of the load-balancing algorithm for 3 node Chains . . . . . . 110

5.8

Performance of Scheduling algorithms for the 5 × 3 grid . . . . . . . . . . 111

6.1

802.11 Distributed Coordination Function . . . . . . . . . . . . . . . . . 115

6.2

Efficiency of 802.11 DCF . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

6.3

Efficiency of 802.16 MCF . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

6.4

Modified Network Stack . . . . . . . . . . . . . . . . . . . . . . . . . . . 118

6.5

Embedding 802.16 PDU over 802.11a . . . . . . . . . . . . . . . . . . . . 119

6.6

Efficiency of embedded 802.16 mesh protocol . . . . . . . . . . . . . . . . 121

6.7

Comparison of Data Rates . . . . . . . . . . . . . . . . . . . . . . . . . . 122

6.8

Example Mesh Network . . . . . . . . . . . . . . . . . . . . . . . . . . . 125

6.9

802.16 Schedule used for the topology in Fig. 6.8 . . . . . . . . . . . . . . 125

. . . . . . . . . . . . . 109

6.10 Cumulated traffic for the topology in Fig. 6.8 . . . . . . . . . . . . . . . 126 6.11 Throughput for the topology in Fig. 6.8 . . . . . . . . . . . . . . . . . . . 127 6.12 Throughput for Chain Topology . . . . . . . . . . . . . . . . . . . . . . . 128 6.13 Linux Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 6.14 Subnets in a 802.16 mesh network. . . . . . . . . . . . . . . . . . . . . . 130 6.15 Routing and Neighbour Tables in a 802.16 Router. . . . . . . . . . . . . . 132 xi

6.16 Network Scenario for Fig. 6.15. . . . . . . . . . . . . . . . . . . . . . . . 134 6.17 End-to-end VPN tunnelling. . . . . . . . . . . . . . . . . . . . . . . . . . 135 7.1

Interpretation of Proposition 7.3 . . . . . . . . . . . . . . . . . . . . . . . 149

7.2

Convergence of the RateControl-And-Schedule algorithm . . . . . 158

A.1 Relationship between NP-complete problems . . . . . . . . . . . . . . . . 168 A.2 The Conflict Sub-graph . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 A.3 Feasible values of σo

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170

A.4 Instance of 3-GFTO corresponding to Example A.1 . . . . . . . . . . . . 173 A.5 The N node OR Graph . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176 A.6 Instance of N -FTO corresponding to Example A.1 . . . . . . . . . . . . . 178

xii

List of Algorithms 1

Schedule-MinLen-General(Gc , d, Nd , Ts , D) . . . . . . . . . . . . . .

39

2

Schedule-Fixed-TransmissionOrder (Gc , ∆, o, N ) . . . . . . . . . .

53

3

Schedule-MinLen-MinMaxDelay (Gc , d, Nd , Ts , P) . . . . . . . . . .

76

4

Rank-MinDelay (P, E) . . . . . . . . . . . . . . . . . . . . . . . . . .

79

5

Schedule-MinLen-MinDelay (Gc , d, Nd , Ts , P) . . . . . . . . . . . . .

80

6

RateControl-And-Schedule(ǫ, o) . . . . . . . . . . . . . . . . . . . 144

xiii

List of Abbreviations 3-FTO

(problem) of finding a feasible transmission order over N = 3 slots

3-GC

(problem) of a graph colouring with N = 3 colours

3-GFTO

(problem) of finding a generalized feasible transmission order over N = 3 slots

ACK

(802.11) acknowledgement

AODV

Ad-Hoc On Demand Distance Vector (routing)

ARQ

Automatic Repeat Request

bps

bits-per-second

CLI

Command line interface (language)

CO

Central office

CTS

(802.11) clear-to-send

CS

Convergence sub-layer

CSI

Centralized scheduling interface

DAS

Delay aware scheduling (problem)

DCF

Distributed Coordination Function

DSL

Digital Subscriber Line (modem)

DSR

Dynamic Source Routing (protocol)

DI

Data interface

FTP

File transfer protocol

GPS

Generalized Processor Sharing

ID

(mesh) Identifier

xiv

IEEE

Institute of Electrical and Engineers

IP

Internet Protocol

ISI

Inter-symbol Interference

JRC-S

Joint rate control and scheduling (problem)

kbps

kilo bits-per-second (103 bps)

MAC

Medium Access Control

Mb

Mega bytemega bits-per-second (106 bytes)

Mbps

Mega bits-per-second (106 bps)

MCF

Mesh Coordination Function

ML-S

Minimum length scheduling (problem)

ML-DAS

Minimum length, delay aware scheduling (problem)

N -FTO

(problem) of finding a feasible transmission order over N > 3 slots

N -GFTO

(problem) of finding a generalized feasible transmission order over N > 3 slots

NAT

Network Address Translation

NAT-T

(IPsec) NAT traversal

NP

(class) of non-deterministically polynomially bounded

OFDM

Orthogonal Frequency Division Multiplexing

OFDMA

Orthogonal Frequency Division Multiple Access

OS

Operating System

OSPF

Open Shortest Path First (routing protocol)

PLCP

Physical Layer Convergence Procedure

POP

Point–of–Presence

QoS

Quality–of–Service

RCS

Rate Controlled Server

RFC

Request for Comments

RTS

802.11 request-to-send

RTT

(TDMA delay) return trip time

xv

SAP

Service Access Point

TCP

Transmission Control Protocol

TDMA

Time Division Multiple Access

TOS

Type-of-Service (field)

VPN

Virtual private network

WFQ

Weighted Fair Queueing

WT

Wireless terminal

xvi

Chapter 1 Introduction Recent technological advances have prompted the development of new Medium Access Control (MAC) standards such as 802.16 [1] and 802.11s [2], which use Time Division Multiple Access (TDMA) [3] to guaranteed Quality-of-Service (QoS). While the new standards specify how wireless transmissions should be scheduled with TDMA, they do not specify when transmissions should be scheduled. Determining when transmissions should occur is done with TDMA scheduling algorithms, which are the main topic of this thesis. TDMA MAC protocols are well suited for two types of wireless multihop networks: sensor and mesh networks. Sensor networks are wireless multihop networks, which consist of many, small, devices that monitor a certain phenomena. Terminals in a sensor network work together to deliver collective data to a sink, which forwards them to the observer [4]. Since the sensor devices have batteries with small capacity and are usually placed in hard to reach places, the main challenge in sensor networks research is decreasing energy use for wireless communications. Sensor networks do not have a clear commercial application, however there are many examples of their use for military, environmental, health and some home applications [4]. Mesh networks are also wireless multihop networks used to provide wireless access 1

2

Chapter 1. Introduction 



















 





 



































 

 









  

 









 











 











 





















 





 





 





























 

 









c

2007 CRC Press. Copied under licence from Access Copyright, from P. Djukic and S. Valaee, “802.16 mesh networking,” in WiMax: Standards and Security (S. Ahson and M. Ilyas, eds.), pp. 147-174, CRC Press, 2007. Further reproduction prohibited.

Figure 1.1: Mesh networks. over wide geographical areas [5–15]. In mesh networks, nodes are placed close to each other and can have high rate connections. The main challenge in mesh networks research is to provide high QoS to users of the network. TDMA technology helps solve the limited power problem in sensor networks and helps with providing QoS in mesh networks. In sensor networks, TDMA eliminates needless collisions in the wireless channel, which decreases energy used for wireless retransmissions [16, 17]. In mesh networks, the elimination of collisions in the wireless channel means that packets can be delivered without contention delays, so QoS is increased [3]. While the algorithms discussed in the thesis can be used for both sensor networks and mesh networks, the focus in this thesis, in terms of applications, is on mesh networks.

1.1

Mesh Networks

Wireless mesh networks interconnect access points spread out over a large geographical area. Wireless terminals connect to the access points on their first hop. Then, the mesh part of the access points forwards wireless terminal traffic over the wireless mesh backbone to the Point-of-Presence (POP) where it can go to the Internet (Fig. 1.1).

Chapter 1. Introduction

3

The POP is the only node in the network connected to the Internet and can act as a base-station (mesh coordinator). In urban areas, mesh networks interconnect wireless hot-spots. Mesh networks decrease the cost of running hot-spots, since they only require a single POP broadband connection for the whole network. The alternative of connecting every hot-spot with a broadband connection is too costly. For example, using a mesh network to interconnect 133 existing hot-spots in the Toronto downtown area would decrease the total cost of running the hot-spots by 70% [18]. Interconnection of wireless hot-spots is the main application of mesh networks reflected by the fact that most current manufacturers design mesh nodes for this purpose [5–10] Wireless mesh networks can also be used to provide wireless broadband access in rural areas [13–15]. The main problem in providing first-hop connectivity in rural areas is that the distance from an individual house to the Central Office (CO) is more than one mile, so the service providers need to install fibre-optic lines to each house, which is very expensive. Wireless mesh network can be used to implement a “wireless last mile”. This is the idea behind roof-top networks [12], where each house has a mesh node on its roof that connects it to other houses and provides Internet access to the house. Other implementations of the “wireless last mile” use cellular type wireless networks such as 802.16 based nodes. However, these implementations require expensive spectrum or line-of-sight paths to each house making them hard to install and maintain. Current mesh networks use 802.11 technology to interconnect the mesh backbone [9–11]. The 802.11 technology makes the network less expensive to operate since it uses license-free spectrum bands. However, 802.11 technology was not designed for mesh networks. In particular, 802.11 lacks the extensions to provide QoS in multihop wireless environments [19], which is needed to support service level agreements with the customers who pay to use the network. We show why 802.11 is ill-suited for mesh networks with a small ns-2 simulation [20].

4

Chapter 1. Introduction 0

1

0

3

2

1

3

2

(a) Connectivity Graph

(b) Logical Connection Graph

c

2007 IEEE. Reprinted, with permission, from P. Djukic and S. Valaee, “Towards guaranteed QoS in mesh networks: Emulating WiMAX mesh over WiFi hardware”, in The Fourth Workshop on Wireless Ad hoc and Sensor Networks WWASN, 2007.

Figure 1.2: Small Mesh Network

Consider the small topology in Fig. 1.2a, which shows the connectivity in the network with the dashed lines. If two nodes are connected with dashed lines, they overhear each others transmissions. Fig. 1.2b shows the logical topology of the network, where only some of the links are selected to be active (shown with directed lines). The routes are chosen with a simple minimum-hop distance criterion. This is in-line with the current implementations of mesh networks, which use OSPF [2, 9]. We set up the traffic in the network the way it would be in a typical mesh network with the three mesh nodes 1, 2, and 3 connecting to the base-station (node 0). We have setup three TCP connections, one for each mesh node, that transfer a large file (5Mb) using the FTP protocol. Fig. 1.3 shows the instantaneous throughput of the three flows with respect to time. The MAC protocol used in the simulation is 802.11a [21], which we have added to the simulator by modifying 802.11b protocol available with ns-2 to make the scenario more realistic compared to current mesh networks [9]. All links in the network have raw bit-rates of 6.0Mbps. The flow number corresponds to the identification of the node that initiates the traffic. Flows 1, 2, and 3 start respectively at 5s, 10s, and 15s from the beginning of the simulation. The figure shows the unfairness and unpredictability of service that happens with 802.11. When flow 3 starts at time 15 seconds it does not

5

Chapter 1. Introduction Instantaneous Throughput 300

Flow 1 Flow 2 Flow 3

Throughput (kbps)

250

200

150

100

50

0 0

20

40

60

80

100

Time (s)

c

2007 IEEE. Reprinted, with permission, from P. Djukic and S. Valaee, “Towards guaranteed QoS in mesh networks: Emulating WiMAX mesh over WiFi hardware”, in The Fourth Workshop on Wireless Ad hoc and Sensor Networks WWASN, 2007.

Figure 1.3: TCP Throughput with 802.11a get any service. At around time of 35 seconds into the simulation, flow 3 takes over the channel. This is similar to the previously reported findings about 802.11 [19]. The problem shown in Fig. 1.3 is due to the collisions in the wireless channel. This problem is resolved by the 802.16 [1] and 802.11s [2] mesh technologies. IEEE 802.16 uses TDMA technology to provide QoS and IEEE 802.11s draft proposes that mesh nodes also use scheduled MAC access to provide QoS. We now briefly review the operation of the 802.16 mesh protocol. We give a detailed overview of the 802.16 mesh protocol in Chapter 5. We also review the proposed TDMA operation of 802.11s.

1.1.1

Overview of 802.16 Mesh Networks

IEEE 802.16 uses TDMA to guarantee QoS in the mesh backbone. In TDMA, link bandwidth is allocated over frames with a fixed number of slots and a scheduler assigns

Chapter 1. Introduction

6

slots to links. During each slot, a number of links that do not conflict with each other transmit simultaneously. Two links conflict if transmissions by one link prevent packet receptions at the other link. The bandwidth of each link is proportional by the number of slots assigned to it in the frame and the number of bits in each slot, which depends on the modulation used in the slots. The 802.16 mesh protocol specifies two scheduling protocols for assignment of link bandwidths (slots): centralized and decentralized scheduling protocols. The centralized scheduling protocol is used by the base-station (mesh coordinator) to establish networkwide schedules. The nodes request end-to-end bandwidth from the base-station (BS), which may be multiple hops away. In turn, the BS responds with a network wide schedule, which was determined based on the requests. On the other hand, the decentralized scheduling protocol is used to negotiate pairwise bandwidth assignments between the nodes. The centralized scheduling protocol can be used to establish network-wide endto-end QoS, while the decentralized scheduling protocol is not expected to establish end-to-end QoS [22]. The 802.16 mesh protocol does not specify scheduling algorithms that can be used to find TDMA schedules, for either of the two protocols. We have implemented 802.16 MAC and physical layers in ns-2 and used this implementation to compare the performance of 802.16 to 802.11a. We use the same four node scenario as in the 802.11a simulation (Fig. 1.2). The physical layer is using 20MHz of bandwidth per channel (same as 802.11a) and the frame length is 10ms. All links are using the modulation that makes their raw bit-rates similar to the raw bit-rate used in the 802.11a simulation (Fig. 1.3). Fig. 1.4 shows a TDMA schedule that divides TDMA slots equally among the six links in the network, giving each link equal bandwidth. The schedule has no spatial reuse, which would allow non-conflicting links to transmit at the same time. Fig. 1.5 shows the instantaneous throughput of the three connections. First, we observe that the instantaneous throughput is stable, unlike the throughput of 802.11a

7

Chapter 1. Introduction

0 1 0 3 1 2

1 0 3 0 2 1 0

2.0ms

4.0ms

6.0ms

8.0ms

Data

Control

10.0ms

Unused

Figure 1.4: A simple 802.16 Schedule for the topology in Fig. 1.2

Instantaneous Throughput 160

Flow 1 Flow 2 Flow 3

140

Throughput (kbps)

120 100 80 60 40 20 0 0

20

40

60

80

100

Time (s)

c

2007 IEEE. Reprinted, with permission, from P. Djukic and S. Valaee, “Towards guaranteed QoS in mesh networks: Emulating WiMAX mesh over WiFi hardware”, in The Fourth Workshop on Wireless Ad hoc and Sensor Networks WWASN, 2007.

Figure 1.5: TCP Throughput with 802.16

Chapter 1. Introduction

8

(Fig. 1.3). Second, we observe that flow 3 does not interfere with flows 1 and 2. Third, we observe that when both node 1 and node 2 are active, they are sharing the link without interfering with each other. All three observations are easily explained by the fact that the channel is shared with collision-free TDMA. We note that the peak throughput with the 802.16 MAC (Fig. 1.5) is lower than the peak throughput with the 802.11 MAC (Fig. 1.3). This is because the bandwidth of each link in the 802.16 simulation is limited by the schedule we use in the simulation. The 802.16 schedule (Fig. 1.4) does not optimize link bandwidths with respect to end-to-end connection needs. The main topic of this thesis are TDMA scheduling algorithms, which optimize link bandwidth according to end-to-end connection needs.

1.1.2

Overview of 802.11s Mesh Networks

IEEE is currently in the process of ratifying a new version of the 802.11 standard, optimized for multi-hop operation, 802.11s [2]. Most of the 802.11s standard is concerned with inter-operability in the mesh backbone network layer. For example, the standard specifies how to use OSPF [23] and AODV [24] routing protocols in the backbone. However, the 802.11s standard also specifies a TDMA mode of operation for the nodes in the backbone. The TDMA operation is accomplished by synchronizing the beacons of mesh nodes and then announcing TDMA schedules in the beacons. Although in the rest of the thesis, we apply our algorithms to 802.16 and 802.11 mesh networks. Our algorithms can be applied to any TDMA-based wireless mulltihop network.

1.2

Overview of the Thesis

This thesis designs minimum delay TDMA scheduling algorithms, applicable to TDMAbased mesh networks. Previously, TDMA scheduling algorithms were designed to find

9

Chapter 1. Introduction

e1

e3

v1

e5

v2

v3

e2

e4

v4 e6

(a) Topology of a four node network

... 0 e1 e2 e3 e4 e5 e6 Tf

... e4 e5 e6 2Tf e1 e2

3Tf

(b) Round Trip Delay

0 e1 e3 e5 e6 e4 e2 Tf (c) Round Trip Delay c

2007 IEEE. Reprinted, with permission, from P. Djukic and S. Valaee, “Link scheduling for minimum delay in spatial re-use TDMA”, in Proceedings of INFOCOM, 2007.

Figure 1.6: TDMA Scheduling Delay the “minimum length” TDMA schedules [27–36]. Minimum length TDMA schedules use the minimum number of slots in each frame to schedule all links. In the case of TDMA protocols with fixed frame length such as 802.16, minimum length TDMA scheduling is equivalent to maximizing TDMA frame utilization. Although the scheduling algorithms in this thesis can be used for more than minimum length TDMA scheduling, we frame the thesis in terms of minimum length scheduling to allow for easier comparison with previous work in this area of research. Previous approaches to minimum length TDMA scheduling do not account for TDMA scheduling delay. TDMA scheduling delay occurs when packets arriving on an inbound link must wait for the subsequent frame to be transmitted on the outbound link. The delay can be large if the outbound link is scheduled to transmit before the inbound link in the same frame. TDMA scheduling delay accumulates at every hop in the network, so the total delay experienced on the return path can be large. We define TDMA scheduling delay formally in Section 4. Here, we use an example to show how it is related to the link transmission order.

10

Chapter 1. Introduction Consider the network in Fig. 1.6a and the transmission order e1 e5

e6 . We use ei

e2

e3

e4

ej to mean link ei transmits before link ej . The frame length

is Tf seconds and we show the transmission times of the links with ticks on the time axis. With this transmission order, a packet is delayed for approximately one frame at node v3 and node v2 , while waiting for links e4 and e2 , respectively, to transmit in the next frame (Fig. 1.6b). So, the return-trip time (RTT) for a packet travelling between v1 and v4 is close to three frames. On the other hand, if the order of transmissions is e1

e3

e5

e6

e4

e2 , the TDMA scheduling delay at nodes v3 and node v2 is

removed (Fig. 1.6c). So, RTT for all nodes is one frame. The main contribution of the thesis is to answer the following important research question: Given an assignment of end-to-end connection rates, is there a TDMA schedule that also minimizes end-to-end TDMA scheduling delay? We call this the TDMA delay aware link scheduling problem. The second contribution of the thesis is the solution to the joint scheduling and rate control problem in TDMA wireless networks. This is a progression of the first problem, where instead of assuming that end-to-end rates are known, which leaves open where the end-to-end rates come from and how to modify them if no schedule that supports them exists, we jointly find the best set of end-to-end rates and a schedule that supports them. We assume that only one channel is available for the network, however, as we show in Chapter 9, the algorithms in our thesis can be extended to multi-channel networks. We decompose the TDMA delay aware link scheduling problem in two parts. First, we solve the problem without TDMA delay in Chapter 3, and then we solve the TDMA delay aware link scheduling problem in Chapter 4. In Chapter 3, we develop a new class of conflict-free TDMA scheduling algorithms. A TDMA schedule is conflict-free, if all links, whose packets collide in simultaneous transmissions, transmit at non-overlapping time intervals. We start by stating the necessary and sufficient conditions that a TDMA schedule is conflict-free as a set of linear

Chapter 1. Introduction

11

inequalities. The conflict-free linear inequalities correspond to pairwise conflicts in the network and each inequality is defined by the transmission duration of the links in the conflict, the activation times of the links in the conflict and the transmission order of the links. We use the inequalities in a linear search algorithm that finds the minimum length TDMA schedules. For fixed transmission orders, the inequalities can be solved with the Bellman-Ford algorithm, so schedules can be found in polynomial time. In Chapter 4, we show that the transmission order defines the end-to-end TDMA scheduling delay. This allows us to formulate a {0, 1}-integer linear program that finds a min-max delay for a subset of paths in the network. The number of binary variables in the linear program is equal to the number of conflicts in the network and corresponds to the link transmission order. The {0, 1}-integer linear program is hard to solve in online situations, so we devise a method for tree networks that finds transmission orders whose TDMA delay is fixed to one frame. This method is limited to networks, which are managed as trees. However, since mesh networks are usually managed as trees [2, 9], the method still has high applicability. We apply the scheduling algorithms from Chapter 3 and Chapter 4 to 802.16 mesh networks in Chapter 5. We show, with simulations, that compared to previously proposed TDMA scheduling algorithms, our scheduling algorithms decrease overhead and end-toend delay. Since 802.16 mesh networks are not available at this time, we also propose a software patch for 802.11 mesh networks, which makes them operate as TDMA mesh networks in Chapter 6. The software patch embeds 802.16 packets into 802.11 broadcast packets and pads the 802.11 broadcast payload, so that the broadcasts are aligned to 802.16 TDMA frame boundaries. With the patch and our scheduling algorithms, the network performance is improved in the multiples of what is possible with 802.11 alone. We apply the results of Chapter 3 to solve the joint rate control and scheduling problem in TDMA wireless networks in Chapter 7. The joint rate control and scheduling problem finds a set of end-to-end rates, which optimize a network utility, subject to

Chapter 1. Introduction

12

the existence of a schedule that can support these rates. Distributed rate control has an important practical application in wireless multi-hop networks, such as mesh networks. Because of the need for their cost-effectiveness, mesh networks should operate autonomously, meaning that mesh nodes should decide their end-to-end connection rates independently and without operator assistance (distributed rate control). In this case, we assume that the operator specifies the characteristics of the end-to-end rates, such as fairness, maximum throughput or maximum profit and the network should autonomously provide end-to-end rates achieving these characteristics. We formulate the joint rate control and wireless scheduling problem as a utilization maximization, subject to networking constraints for end-to-end connections and scheduling constraints for the existence of a schedule that supports the end-to-end rates, which are the inequalities we define in Chapter 3. The utility function is chosen so that at the optimum point, the end-to-end connection rates satisfy some criterion specified by the network operator. We use the Lagrangian dual of the joint rate control and wireless scheduling problem to decompose the networking aspects of the problem (utilization maximization and networking constraints) from TDMA scheduling. The Lagrangian dual allows us to develop an iterative sub-gradient algorithm to solve the original problem. In each iteration, the algorithm maximizes network utilization and TDMA schedules independently of each other. As the iterations progress, TDMA schedules get closer to the end-to-end rates and in the final iteration, the TDMA schedule matches the optimum end-to-end rates. . We devise centralized and decentralized versions of the sub-gradient algorithm. In the centralized version of the algorithm all end-to-end rates and schedules are determined by a single, global network controller. In the decentralized version of the algorithm, end-to-end rates are determined independently by each connection, and a centralized TDMA scheduler finds the schedules. We show how to adapt the decentralized algorithm

Chapter 1. Introduction

13

to 802.16 mesh networks and evaluate the performance of the algorithm. We also show that since TDMA networks are stop-and-go queueing systems [43–45], network stability is independent of the joint routing and scheduling algorithm, i.e. network queues are always finite.

1.3

Related Work

We now review the related literature. We note that the general literature on wireless scheduling is more comprehensive than our summary. However, we focus on works that deal strictly with TDMA scheduling. We start by reviewing the related work in centralized and decentralized TDMA scheduling algorithms [27–42]. Since finding conflict-free TDMA schedules is computationally hard, many of the algorithms are either heuristics or make simplifying assumptions about the operation of the underlying MAC protocol. The algorithms do not account for TDMA delay, which is an important QoS requirement for real-time applications. Second, we review TDMA scheduling algorithms proposed for 802.16 mesh networks. Since 802.16 mesh protocol is fairly new, there are only a few algorithms proposed for it [46–48]. Some of the algorithms make the assumption that links can be scheduled multiple times in the frame, even though the standard has no explicit mechanism to allow for this. The overhead of multiple transmissions in the frame is so large that even the simplest scheme, proposed in the 802.16 standard, which schedules transmissions without spatial re-use has higher throughput than these algorithms. None of the algorithms takes into account TDMA delay. Third, we review the related research into joint rate control and scheduling for wireless networks [49–53]. Previous approaches in this area approximate scheduling constraints. This means that the link rates determined by scheduling constraints may not match

Chapter 1. Introduction

14

the link rates that can be obtained with scheduling algorithms, so the solutions to the problem are sub-optimal. Unlike the previous approaches, we derive exact scheduling constraints that always match the schedules found by our scheduling algorithms, so our solution to the joint rate control and scheduling problem is optimal. Finally, we review the works that use TDMA on 802.11 networks, as interim solutions, until 802.11s becomes available. These are engineering approaches, which are complementary to our work.

1.3.1

Centralized TDMA Scheduling

Previously proposed TDMA scheduling algorithms are designed to use graph colouring to find schedules with the minimum frame length [27–36]. In graph colouring approaches the wireless network is represented with a “conflict” graph, in which vertices are links and arcs are pairs of links which conflict with each other. Conflict (interference) graphs were first introduced in the seminal TDMA paper [3] and used as a tool for ad-hoc networks [25–29]. We note that in many of the works we discuss in this section, the conflict graph is not explicitly defined, however this is the underlying method used to find conflict-free schedules. A vertex colouring on the conflict graph represents a conflictfree TDMA schedule, if each colour is assigned to the same slot in each TDMA frame. A minimum vertex colouring is a minimum length schedule, since it uses the least number of slots in each frame. We define the relationship between minimum length schedules and end-to-end throughput formally in Chapter 2. In [31], the authors provide a polynomial time algorithm that finds a minimum length TDMA schedule that can carry a given bandwidth allocation. The authors assume that the only conflicts in the network are the conflicts between links with a common node (primary conflicts), so they are able to define conflict-free scheduling conditions in terms of edge (link) colourings for the topology graph. This type of scheduling does not account for secondary conflicts, which exist between links that do not share a node, but can still

Chapter 1. Introduction

15

overhear each other. We give an exact definitions of different types of link conflicts in Section 2. The scheduling algorithms based on edge colouring in the topology graph are also called matching algorithms since a matching is an independent set of edges in the graph. Two edges are independent if they do not share a vertex. In [33, 34], the authors also use the assumption that secondary conflicts can be eliminated in the network and find TDMA schedules with edge colouring on a multi-edged version of the topology graph. The number of edges between two nodes is directly proportional to the required link rate between the nodes, so this approach takes into account end-to-end rates. By reversing the link directions, the secondary conflicts can be removed from schedules found with edge colouring [36], however this forces all links to have the same number of slots in the frame and hence the same rate. The edge colouring approach can be expanded to take secondary conflicts into account if the edge colouring is enhanced to consider conflicting links that are two or more hops away from each other [35]. This approach approximates secondary conflicts by ensuring that conflicting links in an extended neighbourhood have different colours. The precise secondary conflicts can be specified with the conflict graph for the network [29]. With conflict graphs, schedules can be found with vertex colouring. The approach in [29] only allows for equal link rate TDMA allocations. It is also possible to find TDMA schedules if assumptions are made about the topology of the network. For example, [30] shows how to find TDMA schedules when topologies are assumed to be trees. In the case of tree topologies, conflict-free schedules can be found in polynomial time. The conflict graph for the wireless network is explicitly used in [27, 28] where the authors use the independent vertex set polytope of the conflict graph to state the conditions for the existence of a schedule with arbitrary link durations. While not explicitly using graph colouring, the independent vertex set approach is closely related to graph colouring due to the relationship between the independent sets and graph colouring [56]. Since there are an exponential number of independent sets in the graph, the authors pro-

Chapter 1. Introduction

16

pose a heuristic which iteratively adds independent sets to the feasibility conditions. We also use the conflict graphs, but we do not require the set of all independent sets in the conflict graph to state the exact conditions for the existence of schedules. In comparison to [27, 28], our feasibility conditions only have a polynomial number of constraints. It is also possible to model conflicts as “soft” conflicts [37–42], where links are allowed to transmit at the same time, even if they are in each others range. The effect of simultaneous transmissions is modelled as lower signal-to-noise ratio of received wireless signals. While this approach takes into account the details of the physical layer, it also has several problems. First, the underlying model depends heavily on the technology used in the physical layer; for example, [37–42] assume single carrier modulation, while 802.16 technology uses OFDM. Second, these approaches require the transmitter power settings, link gains and noise levels to be known throughout the network, which may be very hard to realize. TDMA protocols such as 802.16 do not provide this type of information to their management layers for the whole network. Third, as it is pointed out in [57], the end result “schedules” of [37–42] have all links transmitting all the time. To our knowledge, no MAC protocol allows all links to transmit all the time.

1.3.2

Distributed TDMA Scheduling

Finding TDMA schedules in a distributed way is an important problem in mesh networks, since the network may be so large that a single network controller cannot establish network wide schedules. Most distributed algorithms in this section are obtained by distributing centralized scheduling algorithms. When the scheduler is distributed, it is important how the algorithm notifies every node in the network that a schedule is converged. This requirement is necessary because in TDMA MAC protocols such as 802.16, TDMA schedules are negotiated to be valid over many frames. In [32], the authors provide a distributed TDMA scheduling algorithm and they assume that secondary conflicts are removed with the use of multiple orthogonal channels.

Chapter 1. Introduction

17

The algorithm controls the feasibility of link bandwidths by enforcing a set of local conditions on a tree topology, which is inconsistent with the synchronized TDMA mesh protocols such as 802.16. In [36], the authors propose a distributed scheduling algorithm, which finds an edge colouring in the topology graph. The authors also propose a second distributed algorithm, which removes secondary conflicts by reversing the direction of link transmissions. In [58] the authors devise a distributed scheduling algorithm from a centralized algorithm that finds a “maximally fair” allocation of slots to links. The maximal allocation ensures that TDMA slots are distributed fairly among the links, however it does not take into account the requirements of end-to-end flows. The authors specify how the algorithm termination is detected. In [59] the authors first provide a centralized scheduling algorithm that finds maximal independent set in the conflict graph. The authors use the complement of the conflict graph and find maximal cliques in this graph, which is equivalent to finding the maximal independent set in the conflict graph. The authors then propose a distributed version of the algorithm, which is basically a slot negotiation protocol similar to the 802.11 RTSCTS exchanges. This protocol is not compatible with standardized TDMA solutions and it requires constant re-negotiation of TDMA slots. In [60], authors provide a scheduling algorithm tightly coupled with a schedule activation algorithm. The algorithm uses a wave to allow an opportunity for every node to negotiate a conflict free schedule with its two hop neighbourhood. Once a new schedule is negotiated in the local neighbourhood, the wave moves down the network tree. The scheduling technique used in [60] allows multiple link transmissions in the same frame. It is also possible to distribute the scheduling approaches based on “soft” conflicts [39,42], however as we pointed out earlier, these approaches are not applicable to current TDMA MAC protocols.

Chapter 1. Introduction

1.3.3

18

802.16 Scheduling algorithms

TDMA scheduling has been a research topic for some time, however most of that research is not appropriate for the 802.16 mesh protocol. We identify two main reasons for the disconnect between the previous research in TDMA scheduling protocols and 802.16. First, many previous approaches do not model all conflicts that exist in TDMA wireless networks [31–34]. In these works, the authors assume that only the links sharing a node in common conflict (primary conflicts). It is possible to resolve secondary conflicts by assigning orthogonal frequencies to links in secondary conflicts. However, finding this frequency assignment is hard [61, 62]. Also, the 802.16 standard does not completely resolve the use of multiple frequencies, meaning that any solution using multiple frequencies requires new additions to the standard. Second, many of the algorithms in current literature do not take transmission overhead into account. In the colouring approaches [31–34], the scheduling algorithm assigns colours to transmission opportunities in the frame before it begins to colour the links. After the colouring, each link has a set of colours different from the colours used by the links it conflicts with. Since colours correspond to transmission opportunities, the resulting assignment of transmission opportunities is also conflict-free. However, this approach allows links to transmit multiple times in the frame. For example, if a link is assigned two colours for its transmissions and these colours correspond to non-consecutive transmission opportunities, the link transmits twice in the frame. In 802.16, with the second transmission, the link loses at least 28.8kbps of bandwidth at the lowest modulation and coding and 259kbps at the highest modulation and coding and 10ms frame size. There are some heuristic scheduling algorithms that have been proposed specifically for 802.16 mesh networks [46–48]. These algorithms take “secondary” conflicts into account and schedule links to take advantage of spatial re-use. One of the algorithms, [48], also takes 802.16 overhead into account and schedules links once per frame. However, these algorithms still do not take into account TDMA scheduling delay. We discuss these

Chapter 1. Introduction

19

algorithms in more detail in Chapter 5.

1.3.4

Joint Rate Control and Scheduling

The joint rate control and scheduling problem finds a set of end-to-end rates, which optimize a network utility, subject to the existence of a schedule that can support these rates. The joint rate control and wireless scheduling problem was decoupled into distributed rate control and wireless scheduling with the Lagrangian dual method in [49]. Enabling the decoupling is the ability to declare a set of sufficient and necessary conditions that a given set of end-to-end rates can be scheduled and also find a schedule to satisfy these end-to-end rates. In [49], the wireless scheduling problem was abstracted as a set of generic feasibility constraints, which represent any scheduling algorithm. In [50], a weighted matching scheduling algorithm was proposed for the joint rate control and scheduling problem. The matching algorithm only accounts for primary conflicts. The bounds for the maximal matching scheduling are also too pessimistic, so one has to resort to having “imperfect” scheduling constraints in the primal joint rate control and wireless scheduling problem. Scheduling constraints are imperfect if the link rates resulting from the final schedule calculated by joint rate control and scheduling algorithm do not match the constraints. It is possible to define conflict-free TDMA scheduling conditions in terms of edge colouring polyhedron for the network [31]. It can be shown that schedules corresponding to these scheduling conditions can be found in polynomial time [31], however authors also point out that this not a practical solution. It is also possible to declare a set of necessary conditions for the existence of a schedule [34] and then use a matching algorithm for scheduling [63]. The problem with these approaches is that they do not account for secondary conflicts, which exist in TDMA wireless networks. They also have a lot of overhead, which decreases end-to-end throughput. Without the secondary conflicts, it is also possible to take the dual approach of [49,50] and have fully distributed

Chapter 1. Introduction

20

scheduling [52]. We consider all conflicts in the network through conflict graphs. Conflict graphs are also used in [27,28] where authors use the independent set polytope of the conflict graph to state the existence of a schedule with arbitrary link durations. However, unlike [27,28] where there are an exponential number of independent sets in the graph, our feasibility conditions only have a linear number of constraints so it is possible to use them in the joint routing and scheduling optimization.

1.3.5

TDMA over 802.11

In [64], the authors propose an overlay MAC layer for 802.11 mesh networks. The overlay uses admission control to ensure that real-time flows receive good quality of service, however the overlay itself does not improve the performance of the underlying 802.11 hardware. A different MAC overlay layer is proposed in [65]. This overlay improves the performance of 802.11 with loose TDMA synchronization. Even though the overlay MAC in [65] uses TDMA-like access to the wireless channel, it still only provides best effort service. In contrast, our approach uses small frame size and synchronization from the 802.16 protocol to provide guaranteed access to the channel. The embedded 802.16 proposed in this thesis can be used with software based MAC platforms, such as [66]. In that software platform, 802.11 operation is modified as far as the network driver will allow it, so that the network cards behave almost as a software TDMA radio transceiver. On the other hand, the approach we take in Chapter 6 is appropriate even in the more general case, where the specific hardware used in [66] is not available, since our embedding does not make any assumptions about 802.11 hardware beyond what is specified in the standard [67].

Chapter 1. Introduction

1.4

21

Statement of Contributions

In this thesis, we introduce the TDMA delay aware link scheduling problem. Our formulation extends the recent related works [27–36], which do not take TDMA scheduling delay into account. We provide a set of linear constraints that comprise necessary and sufficient conditions for the existence of a TDMA transmission schedule. The advantage of our approach is threefold. First, unlike [33, 34] where scheduling constraints capture the necessary conditions only, our linear constraints comprise both necessary and sufficient conditions for the existence of a schedule. Second, there are only a few linear constraints – one for every conflict in the network – so we do not have to resort to an approximation as in [28]. Third, the linear constraints capture the exact TDMA conflicts in the network making our scheme applicable to 802.16 and 802.11s networks, and more efficient than [35]. We have also established the relationship between TDMA schedules and TDMA delay. Similar results have been reported before in the context of stop-and-go queueing systems [43–45]. However in this thesis, instead of approximating TDMA delay as in [43], we give the precise expression for the delay and formulate an optimization that finds the minimum delay. The theoretical results on TDMA scheduling are presented in Chapter 3 and Chapter 4 and have been published or submitted for publication as: • P. Djukic and S. Valaee, “TDMA delay aware link scheduling for multi-hop wireless networks”, Submitted to IEEE Transactions on Networking, May 2007. • P. Djukic and S. Valaee, “Link scheduling for minimum delay in spatial re-use TDMA”, in Proceedings of INFOCOM, 2007. • P. Djukic and S. Valaee, “Quality-of-service provisioning in multi-service TDMA mesh networks”, in Proceedings of the 20th International Teletraffic Congress, 2007.

Chapter 1. Introduction

22

We solve the joint rate control and scheduling problem in TDMA wireless networks. The joint rate control and scheduling makes mesh networks autonomous and removes the need for operator input. We present the solution for the joint rate control and scheduling problem in Chapter 7. We have also submitted this work for publication as: • P. Djukic and S. Valaee, “Joint rate control and TDMA scheduling for multihop wireless networks”, Submitted to SECON 2008 Our theoretical work also allows us separate the complexity of finding optimal schedules from scheduling. If transmission orders are known, schedules can be found in polynomial time with the Bellman-Ford algorithm. This has important applications in future scheduling approaches. For example, TDMA schedules, taking into account both the transmission overhead and the required link durations, can be found with the distributed Bellman-Ford algorithm that does not require the direct knowledge of the full network topology. The Bellman-Ford algorithm has two additional advantages. First, the schedules found with the distributed Bellman-Ford algorithm are identical to the schedules found with the centralized Bellman-Ford algorithm, so distributing our scheduling algorithm has no impact on scheduling performance. Second, the Bellman-Ford algorithm can be easily modified to detect when all nodes have the same schedule, so it is easy to determine when new schedules should be activated. We present the distributed TDMA scheduling algorithm results in Chapter 3 and we have published this result as: • P. Djukic and S. Valaee, “Distributed link scheduling for TDMA mesh networks”, in Proceedings of ICC, 2007. We have applied our scheduling algorithms to 802.16 mesh networks [1]. Our approach works especially well in 802.16 mesh networks since we limit the number of transmissions each link is allowed in the frame. The limitation on the number of transmissions is required in 802.16 and it also significantly reduces overhead. Our results are presented in Chapter 5 and have been published or submitted for publication as:

Chapter 1. Introduction

23

• P. Djukic and S. Valaee, “Scheduling algorithms for 802.16 mesh networks,” in WiMax/MobileFi: Advanced Research and Technology (Y. Xiao, ed.), pp. 267288, Auerbach Publications, 2007. We also examine implementation of 802.16 mesh protocol over current 802.11 hardware. The method requires only software changes on the nodes using 802.11a for mesh communications, meaning that the mesh networks installed with 802.11 hardware today can be upgraded with a software patch to take advantage of the QoS available in 802.16. The hybrid system can achieve throughput in multiples of what is possible with 802.11 hardware alone. These results are presented in Chapter 6 and have been published or submitted in: • P. Djukic and S. Valaee, “Getting the most of WiFi mesh networks with 802.16 mesh emulation”, Accepted for publication in Journal of Ad Hoc and Wireless Sensor Networks, Old City Publishing, (November 2007). • P. Djukic and S. Valaee, “Towards guaranteed QoS in mesh networks: Emulating WiMAX mesh over WiFi hardware”, in The Fourth Workshop on Wireless Ad hoc and Sensor Networks WWASN, 2007. • P. Djukic and S. Valaee, “802.16 MCF for 802.11a based mesh networks: A case for standards re-use”, in Proceedings of 23rd Queen’s Biennial Symposium on Communications, 2006. • P. Djukic and S. Valaee, “802.16 mesh networking,” in WiMax: Standards and Security (S. Ahson and M. Ilyas, eds.), pp. 147-174, CRC Press, 2007.

Chapter 2 Network Model and Problem Statement In this chapter, we present the network model used throughout the thesis and pose the TDMA scheduling problems solved in the thesis. Our model makes few assumptions about the operation of the underlying hardware and also follows the assumptions in the related research of TDMA scheduling [31]. We make few assumptions about the operation of the hardware since this is consistent with the design of network elements where the management part of the network elements is implemented in software and interacts with the actual hardware through a (simple) interface. We show later how to apply this model to 802.16 mesh networks, as well as, to 802.11 mesh networks using a TDMA software upgrade.

2.1

Time Division Multiple Access MAC

In TDMA MAC protocols, the time is divided into slots of fixed duration, which are then grouped into frames. The duration of each slot is Ts seconds and there are a total of Nf slots in each frame making the frame duration Tf = Nf Ts seconds. The first Nc slots, Tc = Nc Ts seconds, of the frame are called the control sub-frame and are reserved 24

Chapter 2. Network Model and Problem Statement

Control (Tc = Nc Ts )

25

Data (Td = Nd Ts )

Active (ρNd Ts )

Figure 2.1: TDMA Framing for control traffic, while the last Nd slots, Td = Nd Ts seconds, of the frame are called the data sub-frame and are reserved for data traffic (Fig. 2.1). In the rest of the thesis, we assume that the Nc and Nd are fixed, without the loss of generality. Wireless nodes exchange messages in the control frame to negotiate a common transmission schedule in the data sub-frame. The schedule repeats in every frame until the load (traffic demands) change. A schedule assigns slots to links in the frame, which determines link rates. For example, if a link is assigned 15 slots in each frame, the modulation on the link allows 96 bits to be carried in each slot and the frame duration is Tf = 10ms, the link rate is 144kbps. We note that this is the maximum rate that can be achieved on the link. If the link uses 64 byte packets, it can only send two packets in each frame, without fragmentation, making the actual link rate 102.4kbps. This inefficiency is unavoidable in TDMA networks, however as we show in Chapter 6, TDMA eliminates collisions in the wireless channel, which more than makes up for this inefficiency. Link rates and resulting schedules are determined from end-to-end rates. End-toend connections request their end-to-end rates and a scheduler grants end-to-end rates through a schedule. Since a schedule does not change between requests, it is possible that a schedule is temporarily not matched with the required end-to-end connections. However, in TDMA protocols such as 802.16 the duration of this temporary condition is in the order of milliseconds. In the rest of the thesis we use the following definition of utilization.

Chapter 2. Network Model and Problem Statement

26

Definition 2.1 (Frame Utilization). The ratio of slots carrying traffic to the total number of slots in the data sub-frame is called frame utilization ρ. One of the goals of the thesis is to find scheduling algorithms, which minimize ρ, for a given number of slots in the data sub-frame, Nd , and a given set of requested end-to-end rates. This is consistent with the rest of the literature in TDMA scheduling, which looks for minimum length TDMA schedules – schedules that minimize ρ. We show, later in this chapter, that frame utilization is minimal when the schedule length is minimal and that this is synonymous to maximizing the end-to-end throughput.

2.2

Link Layer Model

We model the network with a topology graph connecting the nodes in the wireless range of each other. We assume that if two nodes are in the range of each other, they establish (logical) links in the MAC layer, so the TDMA network can be represented with a connectivity graph G(V, E, ft ), where V = {v1 , . . . , vn } is the set of nodes, E = {e1 , . . . , em } is the set of directed links and ft : E → V × V assigns links to pairs of nodes. The connectivity map, ft , enforces the fact that all links are directed, so for a link ek ∈ E, ft (ek ) = (vi , vj ) means that the traffic on the link is transmitted from vi to vj . For example in Fig. 2.2, ft (e6 ) = (v3 , v6 ) meaning that when node v3 transmits a MAC packet to node v6 , it marks the packet to indicate its association with link e6 , so nodes other than v6 know to discard the packet. Since all transmissions are over the wireless channel, we use the number of bits transmitted in each slot to model channel quality. The number of bits in each slot depends on the modulation and coding, which are chosen based on the signal-to-noise ratio for the link. For a given power assignment P : E → R+ , which specifies the power at which links transmit, signal-to-noise ratios are fixed throughout the network, so the number of bits that can be transmitted in each slot can be represented with the mapping

27

Chapter 2. Network Model and Problem Statement e1 v1

e3

e5

v2 e2

v3

e8 v4

e4

e7 e10

v5 e9

e6

v6

Figure 2.2: A simple mesh topology b(P) : E → {B1 , B2 , . . . , Bmax }, where B1 is the number of bits carried in a slot with the minimum modulation and coding and Bmax is the number of bits carried in a slot with the maximum modulation and coding. We use the notation b(P) to indicate that the modulations are set with respect to the power setting P. Bit-rate, in bits-per-seconds, can be recovered from the number of bits in each slot slots used in this thesis by dividing the number of bits in the slot with the slot duration. In the sequel, we assume that power is fixed, b(P) , b. However, this assumption does not introduce any loss of generality. For example, in 802.16 the scheduling algorithms are used to find schedules every few frames, so if the power changes the scheduler catches up within a few milliseconds from the time of the change.

2.2.1

Wireless Interference between Links

Wireless links interfere (conflict) with other links, if their packets collide in simultaneous transmissions. We first examine conflicts between individual links and then show how to construct the conflict graph for the network, which keeps track of conflicts between all links. These conflicts are based on the “distance” model of interference [77], which assumes that if two links are out of communication range of each other, they do not interfere with each other. More realistic models are also possible [77], however we do not take these into account in this thesis. We note that when the conflict graph, we present

Chapter 2. Network Model and Problem Statement

28

c

2007 IEEE. Reprinted, with permission, from P. Djukic and S. Valaee, “Link scheduling for minimum delay in spatial re-use TDMA”, in Proceedings of INFOCOM, 2007.

Figure 2.3: Conflicts in TDMA Wireless Networks later, is constructed, these more realistic models can be taken into account. We show five types of transmission conflicts between isolated pairs of links in Fig. 2.3. The first three types of conflicts are between the links that share a neighbour – primary conflicts. In the case of the transmitter-transmitter (t-t) conflict, the parallel transmissions garble each other at the common receiver. In the case of the receiver-receiver (r-r) conflict, a single transmitter cannot separate packets intended for two different receivers. The transmitter-receiver (t-r) conflict happens because the nodes cannot transmit and receive at the same time. It is possible to remove this conflict if nodes can transmit in full duplex. However, in the rest of the thesis, we assume that nodes transmit in half-duplex, so we take this conflict into account. In addition to the three direct neighbour conflicts, TDMA networks also have a restriction on their second hop neighbour links – secondary conflicts. We show this as the transmitter-receiver-transmitter (t-r-t) conflict. In the t-r-t conflict, the two conflicting links are shown with a solid line. They cannot transmit at the same time because the two transmitters share a neighbour, which hears both transmissions, shown with the dashed line for the overheard transmission. Only the first four conflicts need to be considered in TDMA networks [29]. However, a fifth type of conflict also exists in wireless networks. We show this as the receiver-

29

Chapter 2. Network Model and Problem Statement c30

c26 c12

e1

c1

c15

e3

c2

c14 c27

c3

c20

e5

c4

c19

c16

e8

c21

c33

c9

c11

c25

θ2 

c6

c13

e2

c10

c7 c31

c28

c17

e4 c8

c29

e9

c5

c18

e10

c24

e7

c23 θ1  c22

c32

e6

Figure 2.4: Conflict graph for the topology in Fig. 2.2 transmitter-receiver (r-t-r) conflict. In the r-t-r conflict, the two conflicting links cannot transmit at the same time because the two transmitters can overhear each other. Normally, this is not a problem since a sender can transmit while other transmissions are ongoing. However, in 802.11 networks [67] this conflict exists because during requestto-send (RTS)/clear-to-send (CTS) handshake between a transmitter and a receiver, the transmitter cannot send an RTS packet if it overhears another transmission [29]. In this thesis, since we assume that the network is using TDMA, the r-t-r conflict does not exist in any of our conflict graphs.

2.2.2

Link Conflict Graphs

We keep track of conflicts between links with conflict graphs. Conflict graphs can be defined with a triplet Gc (E, C, fc ), where E is the set of links, C = {c1 , . . . cr } is the set of TDMA conflicts, one for each of the r conflicting pairs of links, and fc : C → {{ei , ej }, for all ei , ej ∈ E} associates the conflicts with pairs of links. We use the notation {·} for unordered sets and (·) for ordered sets, so fc defines an undirected graph. The graph is undirected since conflicts are symmetrical.

Chapter 2. Network Model and Problem Statement

30

We use a conflict graph with an arbitrary assignment of directions to the arcs, − → − → − → G c (E, C, f c ), where f c : C → E × E. The arbitrary orientation of the arcs does not cause any loss of generality, however it simplifies derivation of our results. We use a six node topology (Fig. 2.2) to demonstrate how the arcs in the conflict graph are created. The vertices in the conflict graph are the 10 links from the connectivity graph. The links that conflict with each other (e.g. e1 and e6 ) are connected with an arc in the conflict graph (c27 , Fig. 2.4). On the other hand, links that do not conflict with each other (e.g. e2 and e6 ) are not connected with an arc in the conflict graph. In the case of Fig. 2.4, the orientation of the conflict arcs corresponds to link identifiers: − → f c (ck ) = (ei , ej ) if i < j, ∀ck ∈ C.

(2.1)

Note that this orientation is arbitrary; the schedules do not depend on the selected orientation. The arbitrary orientation only serves to simply the algebraic manipulations.

2.3

Network Layer Model

We assume that a routing protocol establishes routes between nodes. The routes are represented with ordered sets of links (end-to-end paths in the topology graph). For example, Pl = (ei , . . . , ej ), where ft (ei ) = (vk , vl ) and ft (ej ) = (vm , vn ), is a path connecting the nodes vk and vn . The set of all paths is represented with P. In mesh networks, each mesh node is connected to the base-station with two paths [1]. The first path is the uplink path directed from the mesh node to the base-station and the second path is the downlink path directed from the base-station to the mesh node. The uplink and the downlink paths may be represented with disjoint sets: P up = {P2up , . . . , Pnup } and P down = {P2down , . . . , Pnup } where there are (n − 1) paths on the uplink, one for each node, and (n − 1) paths on the downlink, also one for each node. We use the convention that v1 is the base-station, which serves as the POP for the network.

Chapter 2. Network Model and Problem Statement

31

Since the traffic from the base-station does not traverse the mesh, there are no paths to or from the base-station. The two sets of paths combine to form P = P up ∪ P down .

2.3.1

Link and End-to-end Rates

Paths are associated with end-to-end connections, which introduce load into the network. Even though the load is measured in terms of bits-per-second, the end-to-end connections use packets to transmit their information. We assume that the network has a negotiating mechanism that allows connections to request end-to-end rates and that allows the basestation to grant (assign) end-to-end rates. We associate the map of requested end-to-end rates g : P → R+ in bits per second with the end-to-end rates. Even though we are using the notation that end-to-end rates are real numbers, in reality the rates are discrete values since these values must be rounded to fit protocol packets that negotiate bandwidths, e.g. 802.16 scheduling packets. We use the vector notation to represent requested end-to-end rates, so g = [g1 , . . . , gp ]T . Given the requested end-to-end connection rates, we find requested link rates, r : E → R, by adding up the traffic of the connections traversing each link: rj =

X

gl I(ej ∈ Pl ),

∀ej ∈ E

(2.2)

Pl ∈P

where I(·) is the indicator function, which is 1 when its argument is true and 0 when its argument is false. In the sequel, we represent this map with the vector r = [r1 , . . . , rm ]T . In mesh networks, the uplink and downlink connection requests can be represented with separate maps g up : P up → R+ and g down : P down → R+ , so each ej ∈ E requires a link rate of rj =

X

Pl

glup I(ej ∈ Plup ) +

∈P up

X

Pl

gldown I(ej ∈ Pldown ).

(2.3)

∈P up

We note that one of the sums in (2.3) is always zero, since links are unidirectional and uplink and downlink paths are disjoint. The number of requested slots for each link in the frame matches the requested link

Chapter 2. Network Model and Problem Statement

32

rate: 

 rj ∆j = Tf , bj

∀ej ∈ E,

(2.4)

where ⌈·⌉ is the ceiling function, rj is the link rate, bj is the number of bits ej transmits in each slot, Tf is the frame duration in seconds. The duration of ej ’s transmission is found by multiplying the number of slots by the duration of each slot

dj = ∆j Ts ,

∀ej ∈ E.

(2.5)

We note that this rate is the maximum rate that is allowed on a link. If the network uses a packetized protocol, it may be possible for a link to have no packets that are ready for transmission during its allocated time. In this case, the potential link bandwidth is unused, which is a inefficiency inherent to TDMA protocols. The scheduler may need to decrease some of the link durations in order to schedule the links. The scheduler may also allow links to transmit multiple times in a frame. In either case, the actual rate on link ej is obtained with: # h ib ˆ bj dj j ˆ − nj h = ∆j − n j h , rˆj = Ts Tf Tf "

(2.6)

ˆ j = dˆj /Ts the where dˆj is the actual time allocated to the link with the schedule, ∆ resulting number of slots allocated to the link, nj is the number of times the link transmits in the frame and h is the overhead of each transmission, in slots. We represent this link rates with the vector rˆ = [ˆ r1 , . . . , rˆm ]T . For example, in 802.16 mesh networks operating at the 20MHz bandwidth, slot duration is Ts = 12.5µs and if the frame duration is Tf = 10ms, there are Nf = 800 slots in the frame. Each link transmission has an overhead of 3 slots. At the lowest modulation and coding of BPSK-1/2 each slot carries 96 bits, so if a link needs 115.2kbps it should be allocated 15 slots (187.5µs) in each frame at the lowest modulation. However, if the link

Chapter 2. Network Model and Problem Statement

33

transmits twice in the frame, it should be allocated 18 slots, increasing the overhead. In the worst case, the link may transmit five times in the frame in which case it is allocated 30 slots (each of the 5 transmissions has 3 data slots and 3 slots of overhead), making the overhead 100%. Based on the requests, the network grants each mesh node the maximum end-to-end rate (load) of x : P → R+ bits per second with each connection (path). We also use vector notation to represent the path load, so x = [x1 , . . . , xp ]T , where p is the number of paths in the network (cardinality of P). We find achievable connection rates (the maximum allowed load) from the assigned connection rates and the actual link rates. We assume that the nodes use a mechanism such as Weighted Fair Queueing (WFQ) [78] to share the bandwidth among multiple connections traversing a link. With WFQ, connections get a share of bandwidth on the links they traverse proportional to their weight on the link. For example, if connections traversing a link are weighted according to their end-to-end rates, the share of the bandwidth the connection associated with path Pl ∈ P gets on link ej is gl rˆj /rj , since rj is the sum of all end-to-end rates traversing the link (2.2). The achievable connection rate is found by considering the minimum bandwidth the connection gets on all the links on the path: xˆl = min

ej ∈Pl

2.3.2

rˆj gl , rj

∀Pl ∈ P.

(2.7)

Link Capacity

For a fixed TDMA schedule, the link capacity constraints used in wireline networks [79] are also valid in TDMA networks X

Pl ∈P

xl I(ej ∈ Pl ) ≤ rˆj ,

∀ej ∈ E,

(2.8)

Chapter 2. Network Model and Problem Statement

34

where we used (2.3) to derive the link rates and xl is the end-to-end rate granted to the lth connection. In vector notation, these capacity conditions can be written as

H T x − rˆ  0m ,

(2.9)

where  is member-wise vector comparison, x = [x1 , . . . , xm ]T is the vector of granted end-to-end rates, 0m is a m × 1 vector of 0s and H is a p × m matrix whose (l, j) entry is hlj = I(ej ∈ Pl ).

(2.10)

An equivalent way of stating the link capacity constraints is to use the number of ˆ j seconds in each slots link ej is assigned in the frame. If link ej is assigned dˆj = Ts ∆ frame its rate is given by (2.6). So, in TDMA mesh networks, the link capacity condition can also be expressed in terms of link durations as

HT x −

dˆ h 1 b·  − b, Tf TS Tf

(2.11)

where b = [b1 , . . . , bm ]T is the set of link bit-rates and “·” is the member-wise (Hadamard) product of two vectors and we assume that each link transmits once in the frame.

2.4

TDMA Scheduling Problems

In this chapter, we formally pose the TDMA delay aware scheduling (DAS) problem, the minimum length TDMA delay aware scheduling (ML-DAS) problem and the joint scheduling and rate control (JRC-S) problem. The DAS problem looks for a conflictfree schedule that supports a set of given end-to-end rates. Since the DAS problem may give no schedule if the end-to-end rates are not supported, we also pose the MLDAS problem. The ML-DAS problem is a refinement of the DAS problem that finds a shortest length TDMA schedule that supports a set of given end-to-end rates. We show

35

Chapter 2. Network Model and Problem Statement

that the solution to the ML-DAS problem finds the end-to-end rates corresponding to the maximum concurrent flow [80] in the network. The minimum length scheduling (ML-S) problem, which is the same as the ML-DAS problem without the delay considerations, is the way TDMA scheduling problems were posed in previous works [27–36]. Finally, we pose the JRC-S problem as a maximum network utility optimization problem, adapted to TDMA networks. The JRC-S problem does not require end-to-end rates as an input.

2.4.1

TDMA Delay Aware Scheduling

We represent TDMA schedules with a pair of maps S(s, d), where s = [s1 , . . . , sm ]T is the vector of activation times, corresponding to how long (in seconds) after the beginning of the data sub-frame links start their transmissions and d = [d1 , . . . , dm ]T is the vector of link durations (in seconds), corresponding to the amount of time each link transmits when active. Since the transmissions are restricted to the data sub-frame, start times and link durations are restricted to be non-negative and less than the duration of the data m sub-frame Td , s ∈ Rm [0,Td ] and d ∈ R[0,Td ] (Fig. 2.1). We distinguish the requested schedule

ˆ S(s, d), where link durations d are obtained with (2.5), from the granted schedule S(s, d), where link durations dˆ = [dˆ1 , . . . , dˆm ]T are set by the scheduler, based on the requested link rates r and what the scheduler is able to schedule. We have shown in the introduction that a TDMA schedule produces a delay on each path in the network. We define the relationship between a schedule S(s, d) and endto-end delay in Chapter 4. However, in order to define the problems solved by the thesis, we introduce the notation for it. Delays on the paths are represented with a map delay

D : P → R+ and with a vector of delays D = [D1 , . . . , Dl ]T . We use S(s, d) 7−→ D to indicate that the schedule S(s, d) produces end-to-end TDMA delays D. We also use the notation D ∈ D to indicate that the end-to-end delays satisfy properties defined by the set D, which is a subset of the power set of the set of real p-tuples, Rp . We define some specific cases of D in Chapter 4.

36

Chapter 2. Network Model and Problem Statement

If we obtain the requested link durations d from the requested end-to-end rates g with (2.5), the DAS problem can be stated as:

Find s ∈ Rm [0,Td ] s.t ∃S(s, d) ∈ SCF (Td ) delay

S(s, d) 7−→ D ∈ D,

(2.12a) (2.12b) (2.12c)

m where SCF (Td ) = {S(s, d), s ∈ Rm [0,Td ] , d ∈ R[0,Td ] : links can be scheduled} is the set of

all conflict-free schedules and we assume that d is an input to the optimization. We define the set of conflict-free schedules more precisely in Chapter 3. The first constraint (2.12b) ensures that the schedule is conflict-free and the second constraint (2.12c) ensures that the schedule satisfies the delay properties of the set D. Scheduling algorithms that solve the TDMA delay aware scheduling problem (2.12) are covered in Chapter 3. The problem with this formulation is that it only gives a yes or no answer to the question: Is there a TDMA schedule with the given delay properties that supports the given end-to-end rates? If no schedule supports the end-to-end rates, the question becomes how to best modify the end-to-end rates so that a schedule can be found. Next, we present two alternatives to (2.12) that take both end-to-end rates and scheduling into account.

2.4.2

Minimum Length TDMA Delay Aware Scheduling

We modify the DAS problem (2.12) into the ML-DAS problem. In the minimum length formulation, the goal is to find the shortest TDMA schedule that supports the given

37

Chapter 2. Network Model and Problem Statement Nc TS ρNd TS (1 − ρ)Nd TS zTf

(z − 1)Tf

Time

(z + 1)Tf

∆i πi − N

πi = σi + zi N

πi + N

Slots (ei )

∆j πj − N (z − 1)N

πj = σj + zj N (z + 1)N

zN

πj + N

Slots (ej ) (z + 2)N

Figure 2.5: Time Axis and Virtual Slots Axis end-to-end rates. This problem can be stated as follows:

max

α≤1,s

α

(2.13a)

s.t ∃S(s, αd) ∈ SCF (Td ) delay

S(s, αd) 7−→ D ∈ D,

(2.13b) (2.13c)

where the constraints are the same as the constraints in (2.12). We show shortly that maximizing α is the same as minimizing the length of the TDMA schedule. We find schedules that maximize α in (2.13) in two parts. First, we map TDMA schedules onto an axis that measures time in terms of slots – the virtual slots axis (Fig. 2.5). Each active period in the data sub-frame is mapped into N slots on the virtual slots axis (control sub-frames do not exist on the virtual axis). While Nd is the maximum possible length of a schedule, N is the number of slots required to schedule all links. In the case that, N ≤ Nd the requested end-to-end flows can be scheduled. Otherwise, N > Nd and the end-to-end rates need to be scaled down in order to find the schedule. On the virtual slots axis, a TDMA schedule S(s, d) corresponds to a virtual TDMA schedule Sv (σ, ∆, N ), where σ = [σ1 , . . . , σm ]T is the vector corresponding to the indices of slots in the virtual frame in which links begin transmitting, ∆ = [∆1 , . . . , ∆m ]T is the vector corresponding to the number of consecutive virtual slots each link uses while

Chapter 2. Network Model and Problem Statement

38

active and N is the number of slots in a virtual frame. Each of the m link activation times, si , is mapped onto a virtual activation time σi on the virtual slots axis and each of the m link durations di is projected onto ∆i slots on the virtual slots axis. We note that σ is restricted to be non-negative and less than N , σ ∈ Zm [0,N ) . Since there may be more slots in the frame on the virtual axis than in the frame on the time axis, we use the following rule to relate the starting times and the durations on the two axis s = αTs σ

and d = αTs ∆,

(2.14)

where α=

Nd , max{N, Nd }

(2.15)

We denote the set of all conflict-free feasible virtual schedules over N slots with v SCF (N ). If the virtual schedule transmissions do not overlap, neither do the TDMA

schedule transmissions obtained by multiplying the virtual schedules with Ts , so v Sv (σ, ∆, N ) ∈ SCF (N ) ⇐⇒ S(αTs σ, αTs ∆) ∈ SCF (Td ),

(2.16)

where Td = Ts Nd . The second part in solving (2.13) is an iterative procedure that finds the schedule that maximizes α (Schedule-MinLen-General algorithm). Inputs to the algorithm are the conflict graph, Gc , requested link durations, d, data sub-frame length Nd , slot duration Ts and the characteristics of end-to-end delay D. The algorithm finds the number of slots required by links to fulfil the duration request d (step 1). Then, the algorithm searches for the minimum number of slots required to schedule all links (steps 2–6). At each iteration, the algorithm tries to find a virtual schedule that fits into N slots, Sv (σ, ∆, N ) and also satisfies the required delay properties (step 3 ). If the schedule that fits into N slots cannot be found, N is incremented and α is updated. The scheduling

Chapter 2. Network Model and Problem Statement

39

Algorithm 1 Schedule-MinLen-General(Gc , d, Nd , Ts , D) 1: ∀ej ∈ E : ∆j ← ⌈dj /Ts ⌉ 2: N ← 1, α ← 1 delay v 3: while ∄Sv (σ, ∆, N ) ∈ SCF (N ) : S(αTs σ, αTs ∆) 7−→ D ∈ D do 4: N ←N +1 5: α ← Nd / max{N, Nd } 6: end while ˆ j ← ⌊α∆j ⌋ // this is the maximum α 7: ∀ej ∈ E : ∆ ˆ Nd ) 8: Find Sv (σ, ∆, ˆj 9: ∀ej ∈ E : sj ← Ts σj , dˆj ← Ts ∆ ˆ 10: return S(s, d)

algorithms used in step 3 of the Schedule-MinLen-General algorithm are the main focus of the thesis and are covered in Chapter 3 and in Chapter 4. In Chapter 3, we show that N has a certain monotonicity property that ensures that α at step 7 of the algorithm is minimum. After finding the minimum N , the algorithm scales the link durations (step 7) with ˆ N ), where α, which is maximum, resulting in a scaled down virtual schedule Sv (σ, ∆, ˆ 1, . . . , ∆ ˆ m ]T . Finally, the algorithm uses the scaled down link durations, ∆, ˆ = [∆ ˆ to ∆ find a schedule that fits into Nd slots and produces an actual schedule by multiplying each virtual start time with the slot duration Ts (steps 7 and 8). In Chapter 3, we show that the algorithm is guaranteed to find a virtual schedule that fits into Nd slots at step 9. In Chapter 3 we show how to refine Schedule-MinLen-General algorithm to find minimum length TDMA schedules when delay is not an issue. We call the schedules obtained with the Schedule-MinLen-General algorithm minimum length schedules because they have the minimum length on the virtual slots axis. In Chapter 4 we refine the Schedule-MinLen-General algorithm to find schedules with specific delay properties. Previous approaches in TDMA scheduling [27–36] also find minimum length TDMA schedules. Indeed, those works can be formulated to use the generalized algorithm with a specialization of step 3 and without steps 7-10. Steps 6-10 can be eliminated, if frame sizes are not fixed and the arbitrary frame size can always be set to Tf = Tc + N Ts . We

Chapter 2. Network Model and Problem Statement

40

scale down link durations in steps 7-10 and avoid this assumption for two reasons. First, the assumption does not hold in 802.16 mesh networks, where the whole network should be rebooted to change the frame size [1]. Second, as we show in Chapter 4, TDMA delay is directly proportional to frame duration. So, having a longer frame size increases delay and it is advantageous to have small frame sizes.

The reason for solving the minimum length scheduling problems is that this type of scheduling has a nice interpretation as the maximum concurrent flow problem in TDMA networks [34,80]. The maximum concurrent flow problem finds a schedule from requested rates, g, that results in granted end-to-end rates, x, that maximize the minimum ratio of the requested end-to-end rate to granted end-to-end rate among connections, subject to existence of a schedule that supports the end-to-end rates x. This problem can be stated as follows:

max

ˆ x,s,d≥0

min

Pl ∈P



xl gl

ˆ : HT x − s.t ∃S(s, d)



dˆ h 1 b· − b Tf TS Tf delay

ˆ 7−→ D ∈ D. S(s, d)

(2.17a) (2.17b) (2.17c)

The constraint (2.17b) ensures that the end-to-end rates x are supported by a feasible schedule and the constraint (2.17c) ensures that the resulting schedule has delay properties represented by the set D.

It can be easily seen that a solution to the minimum length TDMA scheduling problem (2.13) also solves the maximum concurrent flow problem (2.17). Assume that we have a schedule S(s, α∗ d), where α∗ d are scaled down link durations obtained from the virtual schedule in step 9 of the Schedule-MinLen-General algorithm. Then, by (2.7) we

41

Chapter 2. Network Model and Problem Statement

ρ

1

α N

Nd Figure 2.6: Relationship between α and ρ have X

xl I(ej ∈ Pl ) ≤

Pl ∈P

X rˆj rˆj X gl I(ej ∈ Pl ) = gl I(ej ∈ Pl ) = rˆj , r r j j P ∈P P ∈P l

(2.18)

l

for every path Pl ∈ P. So, the end-to-end rates obtained with (2.7) satisfy (2.17b) for any schedule. Also, by (2.4) and (2.6) we have rˆj (α∗ ∆j − h)bj gl = min gl ej ∈Pl rj ej ∈Pl rj Tf   bj ∗ gl = min α gl − h ej ∈Pl rj Tf h = α∗ gl − max ≥ α∗ gl , ej ∈Pl ∆j

xl = min

(2.19)

for every path Pl ∈ P. So, xl ≥ α∗ , ∀Pl ∈ P gl

←→

min

Pl ∈P



xl gl



≥ α∗

(2.20)

and since α∗ is maximum the end-to-end rates, it solves (2.17). There are four reasons to solve the maximum concurrent flow problem. First, without the delay constraints, this problem is often viewed as the problem of finding the endto-end “capacity” of wireless networks [34]. Second, this problem corresponds to the “minimum length” or “maximum utilization” TDMA scheduling problem, which is the

Chapter 2. Network Model and Problem Statement

42

way TDMA scheduling has been previously addressed in literature [27–36]. We show the relationship between α and ρ in Fig. 2.6. We find the utilization ρ with

ρ=

min{N, Nd } . Nd

(2.21)

Since N is the minimum number of slots required to schedule all links, α is maximum, ensuring that frame utilization ρ of the final schedule is minimum. If N < Nd the algorithm finds a minimum ρ and the link durations are not scaled down. On the other hand, if N > Nd the network runs at 100% utilization and maximum α ensures that the end-to-end link rates are as close as possible to the requested rates. Third, this optimization produces end-to-end rates that satisfy a limited proportional fairness property. If we restrict the rates to the rates that are multiples of some α and g

x = {αg, 0 ≤ α ≤ 1},

(2.22)

where x = [x1 , . . . , xm ]T , then at the optimum point, ∗

α = min Pl ∈P



xl gl



,

(2.23)

the end-to-end flows satisfy the proportional fairness [79]. This can be easily observed, since for all other α ≤ α∗  X αgl − α∗ gl X X xl − gˆl α∗ = = 1− ≤ 0. αg αg α l l P ∈P P ∈P P ∈P l

l

(2.24)

l

Fourth, as we show in Chapter 5 this way of framing the problem fits nicely into the 802.16 scheduling framework.

Chapter 2. Network Model and Problem Statement

2.4.3

43

Joint Rate Control and Scheduling

The second problem solved in the thesis generalizes the first problem. We note that optimization (2.17) needs the requested end-to-end rates g before it can proceed. This requires operator input, which is not desirable in mesh networks. We generalize the problem so that the requested rates are not necessary and at the optimum point, the granted end-to-end rates, x, satisfy a property such as proportional fairness, max-min fairness or maximum profit. This general optimization is

max Ul (xl ) x,s,dˆ

ˆ ˆ : HT x − 1 b · d  − h b s.t ∃S(s, d) Tf TS Tf ˆ delay S(s, d) 7−→ D ∈ D,

(2.25a) (2.25b) (2.25c)

where Ul : R → R are the utility functions associated with each end-to-end rate. Utility functions are chosen so that at the optimum point, the end-to-end rates satisfy a property desired by the operator, such as fairness, maximum throughput or fairness. We discuss the choice of utility functions in Chapter 7. The two constraints are the same as in (2.17). We note that with this optimization, requested rates g are not necessary.

2.4.4

Joint Routing and Scheduling

In both problems, we ignore the routing aspects by using a set of fixed paths in (2.17b) and (2.25b). If we look for the best rates over the set of all paths, we will arrive at a multi-commodity problem. In the multi-commodity version of the problem, there are p commodities corresponding to p end-to-end connections, where it is possible that there are more end-to-end connections than nodes in the network p ≥ n. At the source node for connection φ, vi , xφi > 0 is the number of bits sent to the connection’s destination in one frame. In mesh networks, 2 ≤ i ≤ n for uplink connections and i = 1 for the

Chapter 2. Network Model and Problem Statement

44

downlink connections. On the other hand, at the destination node for connection φ, vj , −xφj is the number of bits reaching the node for the connection in one frame. In mesh networks, 2 ≤ j ≤ n for downlink connections and j = 1 for uplink connections. In the multi-commodity version of the problems, the capacity constraints (2.17b) and (2.25b) can be replaced with the following set of constraints for each node: X

ej ∈{vi }+

rˆjφ −

X

ek ∈{vi }−

rˆkφ =

1 φ x , Tf i

∀φ ∈ {1, . . . , p}, ∀vi ∈ V,

(2.26)

where rˆjφ is the rate allocated to commodity φ on link ej , and {vi }+ and {vi }− are respectively the set of outgoing and incoming links of the node. Formulating the problems with (2.26) would lead to a joint routing and scheduling problem. We chose not to formulate the problems in this way for two reasons. First, this formulation increases the complexity of the original problem since multi-commodity problems are notoriously hard to solve, even without the scheduling constraints [81]. Second, the solution to the multi-commodity optimization provide multiple paths between the source and destination, which would complicate the routing in the network. For 802.16 network, we require the solution to provide a set of routes that form a tree. While it is possible to frame the optimization in this way, this results in the even more difficult unsplittable-flow problem [82]. Nevertheless, the main result of this thesis is the formulation of the scheduling constraints, which provide a way to formulate the joint routing and scheduling problem.

Chapter 3 TDMA Scheduling In this chapter, we examine the TDMA scheduling problem when the number of slots in each frame on the virtual slots axis is fixed and end-to-end delay is not an issue. We discuss the problem of delay constrained TDMA scheduling in Chapter 4. We start by proving the main proposition of this thesis, which gives a set of sufficient and necessary conditions for a conflict-free TDMA schedule to exist on a given number of slots. The conflict-free scheduling proposition gives a way to define the class of all conflict-free TDMA schedules and a way to find schedules with the Bellman-Ford algorithm. The proposition states that conflict-free schedules depend on simultaneously finding a “transmission order” in the frame and a set of “potentials” on the conflict graph, which correspond to a schedule. With the fixed transmission order, the potentials (schedule) can be found with the Bellman-Ford algorithm. We devise centralized and decentralized scheduling algorithms based on the Bellman-Ford algorithm. We show that the centralized Bellman-Ford algorithm can be used in the iterative procedure to find minimum length TDMA schedules in polynomial time. The decentralized scheduler can

Portions reprinted, with permission, from P. Djukic and S. Valaee, “Link scheduling for minimum delay in spatial re-use TDMA”, in Proceedings of INFOCOM, 2007, and P. Djukic and S. Valaee, “Distributed c link scheduling for TDMA mesh networks”, in Proceedings of ICC, 2007, both 2007 IEEE.

45

46

Chapter 3. TDMA Scheduling be used to find schedules when only local information is available in the network.

At the end of the chapter, we show that the Schedule-MinLen-General algorithm algorithm is optimal. We also compare TDMA scheduling with graph colouring.

3.1

Conflict-Free Schedules for Fixed N

We now derive the necessary and sufficient conditions that make a virtual schedule Sv (σ, ∆, N ) conflict-free. A schedule is conflict-free if the transmissions of conflicting links do not overlap. We observe that the repetitive nature of TDMA schedules means that a virtual activation time σi for link ei actually represents a series of activation times on the virtual slots axis (Fig. 2.5). The series of virtual activation times can be derived from σi by adding multiples of N slots, Πi = {σi + zi N, zi ∈ Z}. Conversely, σi can be found from any activation time πi ∈ Πi with the modulo operator:

σi = πi

(mod N ),

(3.1)

and zi can be found with zi =

πi − σi N

(3.2)

We establish the sufficient and necessary conditions that make a schedule conflict-free, − → by considering a pair of links ei and ej that conflict with ck : f c (ck ) = (ei , ej ). Take any activation time πi ∈ Πi for link ei and choose the next activation time for a conflicting link ej , πj = min{π ∈ Πj : π ≥ πi } (Fig. 2.5). In this case, ej should not transmit before ei finishes its transmission

πj ≥ πi + ∆i ⇔

π j − π i ≥ ∆i ,

(3.3)

47

Chapter 3. TDMA Scheduling and ej should stop transmitting before ei transmits again

πj + ∆j ≤ πi + N ⇔

π j − π i ≤ N − ∆j .

(3.4)

The equations can be combined to arrive at the following conflict-free condition:

∆i ≤ π j − π i ≤ N − ∆ j .

(3.5)

In the above example, we assume that ei transmits first in each frame. If we change the order of transmissions we have:

∆j ≤ π i − π j ≤ N − ∆ i .

(3.6)

We can combine the two conflict-free conditions further since their ranges of πj − πi are mutually exclusive: ∆i ≤ πj − πi + ok N ≤ N − ∆j ,

(3.7)

where ok = 0 if πj − πi > 0 and ok = 1 if πj − πi < 0. The extra variable ok specifies a relative order of transmissions, which prompts us to refer to it as the “transmission order” in the rest of the thesis. A subset of activation times πi ∈ Πi , ∀ei ∈ E, can be interpreted as a “potential” on the conflict graph, if we take π = [π1 , . . . , πm ] to be a function on the vertices of the conflict graph, π : E → Z. In this case, the conflict-free conditions for a schedule can be stated in terms of potentials in the conflict graph:

Proposition 3.1 (Conflict-Free Schedules). A set of slot demands ∆ has a conflict-free virtual schedule Sv (σ, ∆, N ) if and only if there exists a potential π : E → Z, such that − → for every arc ck ∈ C with its corresponding pair of conflicting links f c (ck ) = (ei , ej ) the

48

Chapter 3. TDMA Scheduling conflict-free condition

∆i ≤ σj − σi + N I(σj < σi ) ≤ N − ∆j

(3.8)

holds, where I(·) is the indicator function, which is 1 when its argument is true and 0 when its argument is false. Proof. Suppose we have a conflict free schedule Sv (σ, ∆, N ). This means that for every pair of conflicting links ei and ej , starting times σi and σj satisfy (3.8) and so present a valid potential. On the other hand, if there is a potential π, for which (3.7) is true, then by construction of (3.7) πj ∈ Πi every link ej , so we can use the modulo property to find conflict-free starting times σ.

By construction of the proposition, we chose TDMA schedules in which conflicting links do not overlap. So, the proposition gives a way to define the set of conflict-free schedules: Definition 3.1. The set of conflict-free schedules on the virtual axis is v SCF (N )

n m = σ ∈ Zm [0,N ) ,∆ ∈ Z[0,N ) , ∀ck ∈ C : fc (ck ) = {ei , ej } : ∆i ≤ σj − σi + N I(σj < σi ) ≤ N − ∆j

o

(3.9) .

The importance of potentials becomes clear from the “only if” part of the proposition, which gives a way to find feasible conflict-free schedules for N slots with the following {0, 1}-integer linear program:

Find π, o s.t l ≤ C T π − N o ≤ N 1 − u π ∈ Zm , o ∈ {0, 1}r ,

(3.10a) (3.10b) (3.10c)

Chapter 3. TDMA Scheduling

49

where o = [o1 , . . . , om ]T , π = [π1 , . . . , πm ]T , 1 is a column vector of m 1’s, C is the m × r incidence matrix of the conflict graph defined as   − →   1, if f c (ck ) = (ei , ej )     → Cik = −1, if − f c (ck ) = (ej , ei )       0, otherwise,

(3.11)

l = [l1 , . . . , lr ]T and u = [u1 , . . . , ur ]T where for each ck ∈ C with corresponding vertices − → f c (ck ) = (ei , ej ), lk = ∆i , uk = ∆j . We note that if N = Nd this search problem corresponds to the TDMA delay aware scheduling problem (2.12), without the delay constraint. The TDMA scheduling problem in this form is a special case of the periodic event scheduling problem (PESP) [84–88]. If the transmission order o is known, the conflictfree conditions become a set of linear difference equations and TDMA schedule can be found in polynomial time [84]. With the fixed order, the difficulty due to the cyclicity of TDMA scheduling is removed and the problem becomes the same as the problem of finding the critical path in a Gantt charts of large projects [83, pp. 261]. The cyclicity of TDMA introduces complexity into the scheduling problem since it makes the precedence relative, rather than absolute as in classical critical path problem. If the transmission order o is known, the TDMA schedule can be found in polynomial time, with the Bellman-Ford shortest path algorithm [89] or the Dijkstra shortest path algorithm [83]. In Chapter 4, we show that the transmission order is directly related to TDMA delay and propose exact and heuristic methods to find transmission orders with minimum delay. For now, we assume that the transmission order is known prior to solving the inequalities (3.10) and devise centralized and decentralized versions of the Bellman-Ford TDMA scheduling algorithm. The complexity of the PESP problem was shown to be NP-complete by reduction from

50

Chapter 3. TDMA Scheduling N − ∆ j − N ok ′

ck ei

ej



ei

[∆i − N ok , N − ∆j − N ok ] ck

c2k ej

(a) Single Edge with Double Costs

−∆i + N ok (b) Double Edges with Single Costs

c

2007 IEEE. Reprinted, with permission, from P. Djukic and S. Valaee, “Link scheduling for minimum delay in spatial re-use TDMA”, in Proceedings of INFOCOM, 2007.

Figure 3.1: Interpretation of Costs Graph K-Colourability [86,87], reduction from Hamiltonian path [84] and reduction from linear-ordering [88]. Those proofs show that finding both the transmission order and the schedule is an NP-complete problem. We show an alternative proof of NP-completeness in Appendix A, which shows that NP-completeness of TDMA scheduling is in finding the transmission order alone.

3.2

Centralized Bellman-Ford Scheduler

In general, finding a schedule for a fixed number of slots is NP-complete. However, if the transmission order o is fixed, the scheduling problem becomes that of finding a solution to a set of difference equations. The solution to these difference equations can be found efficiently using the Bellman-Ford shortest path algorithm [89], on a modified conflict graph. We transform the arcs in conflict graph so that the cost of traversing the arcs is taken from the upper and lower bounds in the difference equations. The upper bound is treated as the cost of traversing an arc in the positive direction, while the lower bound is treated as the cost of traversing the arc in the negative direction. This situation is illustrated in Fig. 3.1, where arc ck in the scheduling graph is replaced with two arcs. ′

The first arc is denoted with ck corresponding to the original arc in the conflict graph ′

and c2k corresponds to the arc going in the opposite direction of the original ck . If the

51

Chapter 3. TDMA Scheduling original arc is traversed in the positive direction, ei

ej in Fig. 3.1a, this is equivalent



to traversing the upper arc ck with the cost N − ∆j − N ok in Fig. 3.1b. Similarly, if the original arc is traversed in the negative direction, ej

ei in Fig. 3.1a, this is equivalent



to traversing the lower arc c2k with the cost −∆i + N ok in Fig. 3.1b. Then, we add a new vertex s to the graph and connect it to each of the original vertices in the graph with an arc of cost 0 and an arc pointing out of s (Fig. 3.2). We ′

denote each new arc with c2r+j if it connects s with ej , where r is the number of conflicts in the original conflict graph. The addition of the new vertex creates a scheduling graph − → ′ ′ Gs (Ec ∪ s, Cs , f s ), where Cs = {c1 , . . . , c2r+m } are the arcs in the scheduling graph obtained from the transformed arcs in the conflict graph and the arcs connecting s to the rest of the network and

− → ′ f s (ck ) =

    (ei , ej ),    

(ej , ei ),       (s, ek−2r ),

− → if k ≤ r, f c (ck ) = (ei , ej ) − → if r < k ≤ 2r, f c (ck ) = (ei , ej )

(3.12)

if k > 2r

The graph has the following cost function for each of its arcs



ws (ck ) =

    N − ∆j − N ok ,     −∆i + N ok ,       0,

− → if k ≤ r, f c (ck ) = (ei , ej ) − → if r < k ≤ 2r, f c (ck ) = (ei , ej )

(3.13)

if k > 2r.

Proposition 3.2 (Shortest Path Tree in Gs is the schedule). The distance from s to − → each ej ∈ Ec in the graph Gs (Ec ∪ s, Cs , f s ) is a conflict-free schedule.

Proof. Suppose that for each ej ∈ E, πj is the minimum distance from s to ej in the − → ′ scheduling graph Gs (Ec ∪ s, Cs , f s ). Then, for all arcs ck ∈ Cs , k ≤ r originating at ei

52

Chapter 3. TDMA Scheduling

ej

N− ∆j



−N

ck

ok



+N

j

c k+

c 2k

i −∆

0

ok

s ck+i

0

ei

− → Gs(E ∪ s, Cs, f s)

c

2007 IEEE. Reprinted, with permission, from P. Djukic and S. Valaee, “Link scheduling for minimum delay in spatial re-use TDMA”, in Proceedings of INFOCOM, 2007.

Figure 3.2: Augmented Conflict Graph and terminating at ej (Fig. 3.2), we have

πj ≤ πi + N − ∆j − N ok ′

and for all arcs ck ∈ Cs , r < k ≤ 2r originating at ej and terminating at ei we have

πi ≤ πj − ∆j + N ok .

Combining this for every pair of connected vertices in the scheduling graph, we get the conflict-free conditions (3.8). Clearly, Bellman-Ford algorithm [89] or Dijkstra’s algorithm [83] operating on the scheduling graph can find the shortest distance from s to all nodes in the graph, which correspond to a schedule.1 We now modify the Bellman-Ford algorithm so that it can 1 While Dijkstra’s algorithm is normally limited to graphs with positive costs [90], in [83] it is shown that “positive costs” can be negative costs of arcs traversed in their opposite direction.

53

Chapter 3. TDMA Scheduling Algorithm 2 Schedule-Fixed-TransmissionOrder (Gc , ∆, o, N ) 1: πi ← ∞, ∀ei ∈ E 2: for all ek ∈ E do 3: for all ck ∈ C do − → 4: {ei , ej } ← f c (ck ) 5: πj ← min{0, πj , πi + N − ∆j − ok N } 6: πi ← min{0, πi , πj − ∆i + ok N } 7: end for 8: end for 9: for all ck ∈ C do − → 10: {ei , ej } ← f c (ck ) 11: if πj > πi + N − ∆j − ok N or πi > πj − ∆i + ok N then 12: return nil 13: end if 14: end for 15: σi ← πi (mod N ), ∀ei ∈ E 16: return σ = [σ1 , . . . , σm ]T

find schedules directly on the conflict graph, avoiding the transformation of the scheduling graph. The reason for using the Bellman-Ford algorithm is that, unlike Dijkstra’s algorithm, it can work with local information only and it can be easily distributed. We show how to distribute the Bellman-Ford scheduling algorithm in the next section. Normally, the Bellman-Ford algorithm [89, pp.532–535] is run on the scheduling graph for every vertex and for every vertex it “relaxes” all the arcs in the graph. Relaxation checks if the current distance known on the head of the arc is less than the sum of the distance to the tail of the arc and the cost of traversing the arc and updates the distance − → ′ ′ of the head of the arc if necessary. For an arc ck ∈ Cs : f s (ck ) = (ei , ej ) the relaxation is the following well known Bellman-Ford equation ′

πj = min{πj , πi + ws (ck )}

(3.14)

At the end of the algorithm, the Bellman-Ford algorithm checks if the set of distances valid or a “negative cycle” was found. The Schedule-Fixed-TransmissionOrder algorithm shows the modified

54

Chapter 3. TDMA Scheduling

Bellman-Ford algorithm, running on the conflict graph for the network. We obtain the modified algorithm from the standard Bellman-Ford algorithm run on the scheduling − → graph Gs (Ec ∪ s, Cs , f s ). The modified algorithm achieves the same effect on the con− → flict graph Gs (Ec , Cc , f c ) with steps 2-8. We note that when the algorithm examines arc ′

ck in steps 5 and 6 it simultaneously checks the Bellman-Ford relaxation for arcs c2r+i ′





and ck in step 5 and c2r+j and c2k in step 6 in the scheduling graph (Fig. 3.2). The 0 in the minimum comes from the fact that the cost from s to all vertices in the scheduling graph is 0.

Steps 9–14 of the algorithm check for negative cycles. A negative cycle has the sum of arc weights along it add to less than 0 [89]. If a negative cycles exists in the conflict graph (scheduling graph), we cannot find a schedule for those allocations. This means that the link durations are too high for the number of slots allowed for the schedule N and the while condition in step 3 of the Schedule-MinLen-General algorithm is false, so Schedule-MinLen-General algorithm increases the number of slots N in step 4. We define negative cycles more formally later in this chapter to define an alternative set of necessary and sufficient conditions that a feasible schedule exists over N slots.

The search for a feasible o with the {0, 1}-integer search (3.10) and the BellmanFord scheduling algorithm lead us to two different refinements of steps 3 and 8 in Schedule-MinLen-General algorithm. First, if the transmission order o is unknown prior to the start of the algorithm, step 3 is the {0, 1}-integer search (3.10), which produces a feasible transmission order, o, while step 8 is the Bellman-Ford scheduler. Second, if o is known prior to the start of the algorithm, both step 3 and step 8 of the algorithm are the Bellman-Ford scheduler.

55

Chapter 3. TDMA Scheduling

3.3

Decentralized Bellman-Ford Scheduler

In this section, we present a distributed TDMA scheduling algorithm, which is based on the Schedule-Fixed-TransmissionOrder algorithm. With this scheduling algorithm, the nodes can find network wide schedules even if they only have access to local neighbourhood information. We assume requested link rates are feasible, i.e. there are no negative cycles in the conflict graph. We do not include a negative cycle detection algorithm. However, we note that this is a well studied problem with both centralized [89] and distributed [91] solutions. As in the centralized scheduling case, we assume that a transmission order is known and distributed throughout the network. We distribute the transmission order with a ranking function R : E → Z, which indicates the preferred order of transmissions. Given the ranking, the transmission order o is defined with the following rule: ∀ck ∈ − → C, with f c (ck ) = (ei , ej ),

ok = I(Rj < Ri ) =

   0,   1,

if Rj ≥ Ri

(3.15)

otherwise

We show how to calculate rankings from a given transmission order in Appendix A. For now, we assume that the network has a mechanism that calculates the rankings and distributes them throughout the network. We describe one such mechanism in Chapter 4.

3.3.1

Iterative Schedule Construction

In order to distribute schedule construction, we associate an independent scheduler with each link in the network. We denote a scheduler associated with link ei with Si . Each scheduler resides on the node where its associated link originates. For example, for the topology in Fig. 2.2, scheduler S1 resides on node v1 , S2 and S3 are on node v2 , S4 , S5 and S6 are on node v3 , S7 and S8 are on node v4 , S9 is on node v5 and S10 is on node v6 .

Chapter 3. TDMA Scheduling

56

The nodes keep track of link conflicts with topological information about the twohop neighbourhood of the node. This information can be obtained, directly, from the routing tables2 or from the MAC neighbour table.3 Given the two-hop topology around node vi , the node can determine the set of conflicting links for each of its links (schedulers) and provide them with a partial view of the conflict graph. Since each scheduler corresponds to a vertex in the conflict graph, it can find the shortest route from s to itself with the distributed Bellman-Ford algorithm as independent routers would. We note that node s does not actually have to exist in order to find the distance to it; it is sufficient to modify the Bellman-Ford equations appropriately (i.e. steps 5 and 6, Schedule-Fixed-TransmissionOrder algorithm). The scheduler’s owner node facilitates the scheduling algorithm by providing it with procedures for communication with other schedulers and a table of its conflicting schedulers (schedulers it is directly connected to in the conflict graph). The communication between the schedulers is facilitated with the use of a reliable transmission protocol such as TCP. When a node receives a scheduling message request from one of its schedulers, it uses the two-hop neighbour table to find the node where the receiving scheduler resides and then forwards the message to that node using the reliable transmission protocol. Conversely, when a node receives a scheduling message for one of it’s schedulers it delivers the message to that scheduler. We note that it takes at most two TDMA frames for any message to reach a peer scheduler. The conflict table for a scheduler contains an entry for each of its conflicting schedulers. An entry in the table corresponding to scheduler Sj contains the distance from s to Sj in the conflict graph, πj . The conflict table is initiated by the scheduler’s owner node with the information available about the two-hop neighbourhood of the node. Initially, each conflicting entry Sj in the conflict table for Si is initialized with πj = ∞, while 2 3

For example, OLSR keeps a two-hop neighbourhood [92]. 802.16 neighbour table keeps track of the two-hop neighbourhood.

Chapter 3. TDMA Scheduling

57

πi = 0. Each scheduler finds the shortest route from s to itself with an enhanced version of the distributed Bellman-Ford algorithm [93]. Unlike the original distributed Bellman-Ford algorithm, which only uses one update message type, the version we present uses two types of messages: UPD and ACK. A scheduler ej sends the UPD message with the current values of πj , ∆j and Rj to its conflicting schedulers, when πj changes. Upon receiving the update message from Sj , scheduler Si updates its distance to s with  n o   min 0, πi , πj + N − ∆j − N I(Ri < Rj ) , if i > j πi = n o   min 0, πi , πj − ∆j + N I(Ri < Rj ) , if i < j,

(3.16)

where we assumed that direction on the conflicts depends on link identifiers, i.e. it is assigned with (2.1). Scheduler Si sends an ACK message to the originator of the UPD message, Sj ; if πi changes, Si also sends the UPD message to all of its conflicting schedulers. We note that with the UPD messages alone, this distributed algorithm is the distributed version of Schedule-Fixed-TransmissionOrder algorithm so it converges to the shortest distances between each link and s in the conflict graph [93]. We use the ACK messages to detect when the schedule has converged. When a scheduler has received acknowledgements from all of its neighbours, it is said to be locally scheduled because all of its neighbours have updated their schedule with its update. The network is scheduled when all schedulers are locally scheduled, since that is when no new updates are generated in the network with (3.16). We introduce synchronization in the Bellman-Ford iteration with a rule that UPD messages are sent during even numbered frames. In the odd numbered frames, the only messages are the messages forwarded to schedulers two hops away in the mesh topology and ACK messages. Since this transmission schedule for UPD messages is equivalent to performing all updates and computations at the beginning of even numbered frames, the

58

Chapter 3. TDMA Scheduling

Algorithm Convergence 350

Schedule Valid Local π1 Local π2 Local π3 Local π4 Local π5 Local π6

300

π (slots)

250

200

150

100

50

0

0

0.5

Time (sec)

1

1.5

c

2007 IEEE. Reprinted, with permission, from P. Djukic and S. Valaee, “Distributed link scheduling for TDMA mesh networks”, in Proceedings of ICC, 2007.

Figure 3.3: Example Algorithm Convergence algorithm is equivalent to the synchronized version of the Bellman-Ford algorithm [93]. Therefore, in the worst case, the scheduling procedure converges in the number of steps equal to the longest path in the conflict graph. Since there are m + 1 vertices in the scheduling graph, the scheduling algorithm converges in at most 2m frames. We note that in practise this number is much lower since a schedule may exist prior to the first UPD message, in which case there would only be a small number of updates [93]. We implement the scheduling procedure with the OMNeT++ discrete time simulator [94]. We show an example of algorithm convergence in Fig. 3.3, where we used a 4 node chain topology (Fig. 1.6a). We assign the ranks randomly. In the scenario, we use frame length of Tf = 10ms, Nc = 35 Nd = 365 data slots per frame and slot duration of 25µs long, corresponding to a subset of parameters specified in 802.16. The link change times are a Poisson arrival process with an average inter-arrival time of 25ms and link durations are picked from a uniform distribution with the mean of 50 slots. Before a link

59

Chapter 3. TDMA Scheduling Convergence vs. Chain Length 0.22

Scenario 1 Scenario 2 Scenario 3 Scenario 4 Worst Case

0.2

Convergence Time (seconds)

0.18 0.16 0.14 0.12 0.1 0.08 0.06 0.04 0.02

3

4

5

6

7

8

9

10

11

12

Number of Nodes

c

2007 IEEE. Reprinted, with permission, from P. Djukic and S. Valaee, “Distributed link scheduling for TDMA mesh networks”, in Proceedings of ICC, 2007.

Figure 3.4: Average Convergence Time change is requested, we check if that link duration will result in a feasible schedule with a centralized negative cycle detection algorithm [89]. If a link duration is infeasible, we decrease it until it becomes feasible. Fig. 3.3 shows the locally converged schedule times for each of the links and it also shows when the algorithm is globally converged. So, the distributed algorithm works. We use chain topologies to further show the convergence properties of the scheduling algorithm (Fig. 3.4). We have used the same setup as in the previous experiment, except that the link times are Poisson with an average of 100ms and we vary the chain length in each simulation. We show four different scenarios and the worst case convergence of the algorithm. In each of the four scenarios, we pick a different set of link ranks. The number of links in the network grows linearly with the number of nodes and so does the worst case convergence time of the algorithm (“Worst Case”, Fig. 3.4) . However, as the number of nodes grows the average time for the schedule to converge does not increase with the number of nodes in either one of our scenarios. The reason for this is that very

Chapter 3. TDMA Scheduling

60

few of the link changes result in schedule changes for the entire network.

3.3.2

Feasible Schedule Detection

In order for the distributed Bellman-Ford scheduling algorithm to be practical, the network needs a mechanism to detect when a schedule has converged and a new schedule should take place. We use a tree based wave termination detection procedure for this purpose [95]. It is also possible to have wave termination detection procedures on arbitrary topologies [96, 97], however we limit ourselves to trees since mesh networks are naturally organized as trees. The schedule detection procedure is initiated by the base-station after a previous detection procedure has terminated. The base-station starts the procedure by multicasting an SDA-DOWN message through the routing tree for the network.4 As the wave of SDADOWN messages traverses the network, it resets the state of each node as done. When a leaf node is reached, the wave reverses and the leaf node sends an SDA-UP message back to the base-station. As the nodes transmit the SDA-UP messages, they also record their schedule, so that the schedule is not lost if there are further link changes. The SDA-UP messages collect the state of the nodes in the tree, so when the base-station receives SDA-UP from all of its children, it can decide if the scheduling algorithm has converged. The validity of the algorithm depends on the transmission rules used to forward the SDA-UP messages and the payload of the messages. Each node in the tree transmits an SDA-UP message to its parent when it has received an SDA-UP message from each of its children and it has detected that all of its schedulers are locally scheduled. The payload of the SDA-UP messages indicates the combined state of the node and all other nodes in the sub-tree rooted at the node. A node transmits an SDA-UP message with the payload done only if it is in the done state and all the tokens it collects from its children are also done. Otherwise, the node transmits a SDA-UP message with the payload working. In 4

The termination detection procedures requires that the uplink and downlink trees coincide.

Chapter 3. TDMA Scheduling

61

order for the algorithm to work correctly, a node must change its state to working if it transmits a UPD message while waiting for tokens from its children. If a node enters the working state, it remains in it until the next wave. The base-station detects that the distributed scheduling has finished when it receives SDA-UP messages with the payload done from all of its children. If the base-station receives one or more messages with the payload working, it restarts the algorithm with the SDA-DOWN messages. The validity of this termination algorithm is formally shown in [95]. After detecting that a schedule has converged, the base-station sends an SDA-DONE message to indicate that the schedule has converged and the new schedule should start. The SDA-DONE message carries the time when the new schedule should become valid. The validity time of the schedule depends on the broadcast mechanism used to transmit SDA-DONE messages. If the messages are broadcast in the control part of the frame, the schedule becomes valid in 2n/κ frames, where n is the number of mesh nodes and κ is the number of distinct nodes that can broadcast in the control part of each frame. On the other hand, if the messages are transmitted in the data sub-frame, the worst case detection delay is given by Dmax , where Dmax is the longest return path TDMA delay among all of the nodes in the network. We discuss the return path TDMA delay in the next chapter.

3.4

Equivalent Transmission Orders

In schedules found with Schedule-Fixed-TransmissionOrder algorithm, links transmit once in the virtual frame. However, when the starting times are transferred back to the frame on the time axis, the link’s transmission may be split over two frames. Link ei will be scheduled twice for transmission in the frame if σi + ∆i > N (Fig. 3.5). The first transmission starts at time Tc + si with the duration of Td − si seconds and the

62

Chapter 3. TDMA Scheduling ∆i σi

zN

(z + 1)N slots (ei )

Tc zTf

Td − si

Tsci + di − Td

(z + 1)Tf

(z + 2)Tf

time

Figure 3.5: Split transmissions

second transmission starts at the beginning of the next data sub-frame with the duration of si + di − Td seconds. So, this scheme limits the number of transmissions by any link to at most two in a frame. The number of split transmissions can be minimized in at most N steps. The algorithm that minimizes the number of split transmissions shifts the feasible potential π ∗ in iterations. In each iteration a new potential π = [π1 , . . . , πm ]T is obtained from the potential in the previous iteration by increasing every πi by 1. Then, the algorithm converts the shifted potential the virtual schedule Sv (σ, ∆, N ) with the modulo operation and counts the number of links with split transmissions. The algorithm picks the potential whose virtual schedule has the fewest links with split transmissions as the potential to be converted to the final virtual schedule. Each of the shifted potentials π has the same transmission order, o, as the original feasible potential π ∗ . However, each virtual schedule σ obtained from a shifted potential π has its own transmission order o(σ) , which may be different from o. The two orders may be different since the potential on each vertex in the conflict graph πi is related to the link’s virtual activation time with πi = σi + zi N and for an arc ck , with the endpoints − → f c (ck ) = (ei , ej ), zi may be different from zj , while the feasibility conditions (3.7) are still true for the virtual activation times σi and σj . If we substitute πi = σi + zi N into

63

Chapter 3. TDMA Scheduling N = 20 0

N = 20 0 πi = 20, σi = 0

∆i = 7

∆i = 7

∆j = 8 πi = σi = 15

πi = σ i = 7 πi = σi = 12 ∆j = 8 (a) Original

(b) Shifted up by 5 slots

Figure 3.6: Equivalent Transmission Orders

(3.7), we get: (σ)

(σ)

∆i − ok N ≤ σj − σi ≤ N − ∆j − ok N,

(3.17)

where (σ)

ok = zj − zi + ok ,

− → ∀ck ∈ C : f c (ck ) = (ei , ej ).

(3.18)

So, the change in the relative transmission order may happen if ok = 0 and zj − zi = 1, or if ok = 1 and zj − zi = −1.

For example, Fig. 3.6 shows a potential for links ei and ej on a cycle with N = 20 slots, − → where f c (ck ) = (ei , ej ). In the original schedule (Fig. 3.6a), ei ’s transmission is broken in two parts since σi + ∆i = 22. If we shift the schedule by 5 slots clockwise (Fig. 3.6b), so that πi = 20 and σi + ∆i = 7, both links transmit once in the frame. We note that in both the original schedule and the shifted schedules ok = 1 since πi > πj . However, (σ)

(σ)

for the original schedule ok = 1 while for the shifted schedule ok = 0, consistent with zj − zi = 0 for the original schedule and zj − zi = −1 for the shifted schedule.

64

Chapter 3. TDMA Scheduling

3.5

Validity of the Iterative Search

We now establish that a linear search is sufficient to find the minimum ρ. We first formally define negative cycles and then we apply a well-known network flow theorem [83] to conflict graph to show that the linear search is sufficient to find the minimum ρ. − → − → Definition 3.2 (Negative Cycle). A cycle θ in the conflict graph G c (E, C, f c ) with the virtual frame size of N slots and link durations ∆ : E → Z[0,N ) is called a negative cycle if

ck

  X  X  N − ok N − uk − lk − ok N < 0, ∈{θ}+

ck

(3.19)

∈{θ}−

where a cycle is an ordered set of conflicts θ ∈ C r , {θ}+ is the set of arcs in θ traversed in the positive direction and {θ}− is the set of arcs in θ traversed in the negative direction. − → − → Theorem 1 (Feasible Differential Theorem [83]). The conflict graph G c (E, C, f c ) with a fixed N , link durations ∆ : E → Z[0,N ) and a fixed transmission order o, has a conflictfree schedule if and only if there are no negative cycles in the conflict graph, i.e. if for every cycle θ in the conflict graph

ck

  X  X  N − ok N − uk − lk − ok N ≥ 0. ∈{θ}+

ck

(3.20)

∈{θ}−

The Feasible Differential Theorem gives a way to define a set of all feasible transmission schedules for schedules over N slots. Definition 3.3 (Feasible Transmission Orders). The set of all feasible transmission or− → − → ders for the conflict graph G c (E, C, f c ) and link durations ∆, over N slots is n − → o − → r O(N, ∆) = o ∈ {0, 1} : (3.20) is true for all cycles in G c (E, C, f c ) .

(3.21)

Proposition 3.3 (Monoticity of N ). If there exists a virtual schedule Sv (σ, ∆, N ), then ′



there exists a schedule for N + 1 slots, i.e. O(N , ∆) ⊆ O(N, ∆) if N ≤ N .

65

Chapter 3. TDMA Scheduling Proof. We re-arrange (3.20) to get:

X

ck ∈{θ}+

(1 − ok ) +

X

ck ∈{θ}−

ok ≥



1  N

X

uk +

ck ∈{θ}+

X



lk  .

ck ∈{θ}−

(3.22)

We note that the right side of the expression is positive and decreases with N , proving the proposition. Corollary 3.1 (Optimality of the Schedule-MinLen-General algorithm). If the Schedule-MinLen-General algorithm uses optimization (3.10) in step 2, ρ is minimum. If the Schedule-MinLen-General algorithm is given a transmission order and it uses the Bellman-Ford algorithm to find the schedule in step 2, ρ is minimum for that transmission order. For a fixed transmission order, the Bellman-Ford scheduling algorithm finds a feasible schedule in O(mr) steps, where m is the number of links and r is the number of conflicts [89]. Since N has the monotonicity property, we can use the binary search in steps 2–4 of the Schedule-MinLen-General algorithm instead of the linear search. So, with a known transmission order, the minimum utilization schedule can be found in at most P O(mr ln Nmax ) steps, where Nmax = m i=1 ∆i is the number of slots required to schedule

all links without any spatial re-use. In Chapter 4, we show that the transmission order is directly related to TDMA delay and we devise a polynomial time algorithm that finds TDMA schedules with one frame TDMA delay in polynomial time. The monotonicity of N can also be used to show that scaling down of the schedule does not change the feasibility of transmission orders. Corollary 3.2 (Scaling Preserves Feasibility). If there exists a virtual schedule ˆ Nd ), where Sv (σ, ∆, N ), then there exists schedule Sv (ˆ σ , ∆, ˆ i = ⌊α∆i ⌋ , ∀ei ∈ E : ∆

(3.23)

66

Chapter 3. TDMA Scheduling ˆ 1, . . . , ∆ ˆ m ]T , σ ˆ = [∆ ∆ ˆ = [ˆ σ1 , . . . , σ ˆm ]T and 0 ≤ α ≤ 1.

Proof. If Nd ≥ N , α = 1 and by the monotonicity of N , the proposition is true. If Nd < N , we observe that the right side of (3.22) becomes 

1  N

X

uk +

ck ∈{θ}+

X





α  uk + lk  Nd ck ∈{θ}+ ck ∈{θ}−   X X 1  ⌊αuk ⌋ + ≥ ⌊αlk ⌋ , Nd + −

lk  =

ck ∈{θ}−



X

ck ∈{θ}

X

(3.24)

ck ∈{θ}

where the equality holds because of the definition of α and the inequality holds because of rounding down. So, the scaling does not introduce any negative cycles and we can find σ ˆ with the Bellman-Ford algorithm.

3.6

Relationship to Graph Colouring

We now examine the relationship between graph colouring and our TDMA scheduling approach. We are motivated by the fact that all previous approaches to TDMA scheduling use graph colouring to produce conflict-free schedules [27–36]. As we show in Chapter 5, graph colouring approaches result in low end-to-end throughput in 802.16 network since they introduce high overhead. We start by outlining the proof of NP-completeness of TDMA scheduling by reduction from graph colouring [86] because it shows the close relationship between graph colouring and scheduling. Formally, the graph colouring problem is defined as follows: Problem 3.1 (Graph Colouring). Given an undirected graph G(V, E, fg ), where fg : E → {{vi , vj }, vi , vj ∈ V } relates graph nodes V to graph edges E, is there a graph colouring κ : V → {0, . . . , K − 1} such that connected vertices have different colours, i.e.

∀ek ∈ E : fg (ek ) = {vi , vj },

κi 6= κj ?

(3.25)

67

Chapter 3. TDMA Scheduling



N ′j

] iN

ok

]



iN

ok

i



− ∆ cn i −

N

− ,N iN

ok − k

[∆

]

i ′j N

N o ij

iN

j N,

−o



ok

oi ′

∆j ]

N o ij



[1 −





k

ei′

−∆ j

,N

∆j ]

[∆j − ojk N, N − ∆k − ojk N ]

[∆i − 1 − oii′ N, N − 1 − oii′ N ]

N o ij

− ,N N o ij c l

,N

ei





[∆



]

oi

i [∆

cm

ek

∆j

N

j

i [∆

− [1

ei

,N



oi

ej

ej

ek [∆j − ojk N, N − ∆k − ojk N ]

(a) Small Conflict Graph

(b) Splitting of ei

Figure 3.7: Splitting of Vertices in Conflict Graph To reduce NP-completeness of TDMA scheduling from graph colouring, we need to show that given any instance of graph colouring we can produce, in polynomial time, an instance of TDMA scheduling that has a valid schedule if and only if the instance of graph colouring has a valid colouring with K colours. We follow the argument in [86]. − → We give the undirected graph G(V, E, fg ) an arbitrary orientation to get G(V, E, f g ) and treat each vertex in the graph as a link. Graph G(V, E, fg ) has a colouring if and only if − → G(V, E, f g ) has a TDMA schedule S(σ, ∆, K), where σ : V → Z[0,K) and ∆ : V → 1. − → To see why this reduction works, take any arc ek ∈ E : f g (ek ) = (vi , vj ) then for σi , σj ∈ [0, K − 1)

1 ≤ σj − σi + KI(σj < σi ) ≤ K − 1

←→

σi 6= σj

(3.26)

To get the colouring from the schedule set κi = σi , ∀vi ∈ E and (3.25) is satisfied. On the other hand, to get the schedule from a colouring set σi = κi , ∀vi ∈ E and Proposition 3.1 is satisfied. So, when link durations are the same, graph colouring solves TDMA scheduling. Graph colouring can be used to solve the TDMA scheduling problem, even if link durations are not the same. In this approach to TDMA scheduling, we create a new conflict graph from the original conflict graph by “splitting” the vertices associated with

Chapter 3. TDMA Scheduling

68

the links (Fig. 3.7). We split each vertex in the original conflict graph the number of times equal to the duration of the link associated with the vertex. For example, in Fig. 3.7 we split vertex ei into to vertices whose total duration is ∆i . The vertices are split until the new graph has Nmax vertices and the duration of each vertex is 1 slot. In the new graph, all vertices whose links conflict also conflict. In addition, we also add conflicts between the vertices associated with the same link. A graph colouring in the new graph corresponds to a conflict-free TDMA schedule, which allows links to transmit multiple times in the same frame. If we have transmission order, which corresponds to valid schedule in the new graph, we can find a graph colouring in the new graph with the Bellman-Ford algorithm. While it may seem suspect that the Bellman-Ford algorithm can find a colouring in a graph, since graph colouring is an NP-complete problem [98], this is not a new result. In [101, 102] it is shown that graph colourings can be found with shortest path algorithms, if arc orientations are known. In the new conflict graph, the “transmission order” is the orientation of the arcs. We explore the relationship between TDMA scheduling and graph colouring in terms of NP-completeness in Appendix A. The splitting approach is the way that the TDMA scheduling problem was framed in previous research [27–36]. Previously, virtual TDMA schedules were represented with a slot assignment map A : E × M → {0, 1} where M = {0, . . . , N − 1}, and a set of PN −1 weights β : M → [0, 1] such that t=0 βt = 1 [3, 28, 29, 31, 34, 36]. The meaning of the assignment map is that link ei transmits in slot t if A(ei , t) = 1 and that duration of

slot t is βt Td seconds. An assignment map A defines a conflict-free schedule if conflicting links do not transmit at the same time,

A(ei , t) + A(ej , t) ≤ 1, ∀t ∈ M, ∀ck ∈ C : fc (ck ) = {ei , ej }.

(3.27)

The search for a minimum N , which has a conflict-free assignment matrix A is equivalent

Chapter 3. TDMA Scheduling

69

to minimum vertex-colouring [103, p. 68] or in the special case where secondary conflicts are ignored it is equivalent to minimum edge-colouring, in the topology graph, [31]. In addition to significantly increasing the size of the scheduling problem, the assignment matrix A also does not allow an easy way to limit the number of times a link transmits in a frame. We show with simulations that the impact of multiple transmissions in each frame has a significant impact on end-to-end rates, making our schedule representation by far superior to the assignment matrix A. This schedule representation is a special case of our method, where each slot occupied by a link is viewed independently from other slots occupied by the link. The algorithm can easily be extended to allow links to transmit more than once in a frame. Indeed, weights β are used as a heuristic that approximates our method, but they are not always applicable to the underlying technology (e.g. 802.16 where βt is fixed).

Chapter 4 TDMA Delay Aware Scheduling In this chapter, we devise exact and heuristic methods to find transmission orders with minimum TDMA delay. First, we show that the TDMA delay is directly related to the transmission order in the frame, which allows us to define the set of allowable delays D in terms of transmission orders. We formulate a {0, 1}-integer program that finds a feasible transmission order over N slots and also minimizes the maximum TDMA delay among all paths. This optimization is used in step 3 of the Schedule-MinLen-General algorithm. With the min-max optimization in step 3 of the Schedule-MinLen-General algorithm, we find the minimum slot size, Nmin , and a transmission order o ∈ O(Nmin , ∆) ∩ D(t) (Fig. 4.1a), where O(Nmin , ∆) is the set of feasible transmission orders over Nmin slots and D(t) is the set of all transmission orders with the delay less than t. Since in each iteration the {0, 1}-integer program finds the minimum t, when the algorithm finishes, we have the maximum concurrent flow in the network and a max-min delay among all paths in the network. We also propose an algorithm that finds transmission orders on tree networks. This

Portions reprinted, with permission, from P. Djukic and S. Valaee, “Link scheduling for minimum c delay in spatial re-use TDMA”, in Proceedings of INFOCOM, 2007 IEEE.

70

71

Chapter 4. TDMA Delay Aware Scheduling {0, 1}r

o

O(Nmin, ∆) D(t) (a) Exact

{0, 1}r

o

O(N, ∆) ′

O(N , ∆)

D(Tf )

(b) Heuristic

Figure 4.1: TDMA Delay Aware Scheduling scheduling algorithm is also a refinement of the Schedule-MinLen-General algorithm. The algorithm first finds a transmission order o ∈ D(Tf ) – a transmission order that produces a one-frame TDMA delay (Fig. 4.1b). Then, the algorithm uses the Bellman-Ford scheduler in step 3 of the Schedule-MinLen-General algorithm to see if a schedule can be found with N slots. If a schedule does not exist over N slots, the ′



algorithm increases N , until it finds N such that o ∈ O(N , ∆). At the end of the chapter, we show that TDMA networks are stop-and-go queueing systems and show that WFQ on each link can be achieved by rate limiting end-to-end connections at their source.

4.1

TDMA Delay

In this section, we derive the expression for TDMA delay. First, we find the expression for TDMA delay for a single-hop since TDMA delay occurs when a packet arrives to a node and has to wait for the next outgoing link to transmit. Then, we add up TDMA

72

Chapter 4. TDMA Delay Aware Scheduling ej

ei vk

di

sj

vl

vm

0 sj si

Tf

si + Tf

sj + Tf

sj + Tf

si + Tf

di Tc

Tc

Tf

vk

sj − si + Tf + tp

dj

vm

sj − si + tp

0 si

vl

ej

ei

dj

time

time

(a) sj > si

(b) sj < si

Figure 4.2: Single Hop Delay

delay at each hop on the path to get the expression for the end-to-end TDMA delay. We start by observing what happens to data packets when they traverse a TDMA network. Consider a path Pl = {. . . , ei , ej , . . .} where ei ∈ {vl }+ and ej ∈ {vl }− (the fragment of the path containing ei and ej is shown in Fig. 4.2). We use the notation that ei ∈ {vl }+ are outgoing links of vl and ej ∈ {vl }− are the incoming links of vl . In every frame, link ei sends rˆi Tf bits to node vl , which forwards them on link ej . We assume that the end-to-end rate for the connection is limited by (2.7), so data arriving on ei is always transmitted by the next transmission of ej . We show how single-hop TDMA delay occurs in Fig. 4.2 for two different schedules Sa (s, d) (Fig. 4.2a) and Sb (s, d) (Fig. 4.2b). We align the time axis to the beginning of the data sub-frame to simplify exposition. In schedule Sa (s, d), sj > si , so the first bit of a packet sent from vk to vm experiences the delay of sj − si + tp , where tp is the propagation delay. In schedule Sb (s, d), si > sj , so when the packet arrives at vl it has to wait for ej to transmit in the next frame. In this case, the TDMA delay from vk to vm is sj − si + Tf + tp , where Tf is frame duration. In the sequel, we drop the propagation

73

Chapter 4. TDMA Delay Aware Scheduling delay tp since it is independent of scheduling.

The single-hop TDMA delay is directly related to the transmission order for the schedule. For example, the TDMA schedule Sa (s, d) corresponds to a virtual schedule − → (σ) Sv (σ, ∆, N ) for which ok = 0 and f c (ck ) = (ei , ej ). However if the virtual schedule (σ)

Sv (σ, ∆, N ) corresponds to TDMA schedule Sb (s, d), the transmission order is ok = 1 − → and f c (ck ) = (ei , ej ). We conclude that if a conflict ck is traversed in the positive − → direction, i.e. packet is transmitted from ei to ej , and f c (ck ) = (ei , ej ), the TDMA delay is: (σ)

tk = sj − si + ok Tf .

(4.1)

− → On the other hand, if f c (ck ) = (ej , ei ), i.e. the conflict is traversed in the opposite direction, the TDMA delay is: (σ)

tk = sj − si + (1 − ok )Tf .

(4.2)

A path in the topology graph corresponds to a path in the conflict graph. The path in the conflict graph can be obtained by finding the conflicts needed to visit − → − → the vertices of the conflict graph G c (V, E, f c ) listed in Pl . For example, the return path P1 = (e1 , e3 , e6 , e10 , e4 , e2 ) in Fig. 2.2 corresponds to the path (cycle)1 θ1 = {c12 , c10 , c22 , c18 , c13 , c11 }, marked in Fig. 2.4.

In the same topology, the re-

turn path P2 = (e1 , e3 , e5 , e8 , e9 , e7 , e4 , e2 ) in Fig. 2.2 corresponds to the cycle θ2 = {c12 , c15 , c20 , c25 , c24 , c17 , c13 , c11 }, also marked in Fig. 2.4. The two cycles share arcs c11 , c12 , c13 in the conflict graph.

We find the end-to-end TDMA delay for a path Pl by finding the delay incurred while 1 Both paths and cycles are ordered sets of arcs in a graph. The difference between a cycle and a graph is that a cycle is closed.

74

Chapter 4. TDMA Delay Aware Scheduling traversing the corresponding path θl in the conflict graph:

Dl =

  X  X  (σ) (σ) τk + ok Tf − τk + ok Tf − Tf ,

(4.3)

ck ∈{θl }−

ck ∈{θl }+

− → where τk , sj − si is “tension on” ck ∈ C : f c (ck ) = (ei , ej ), {θP }+ is the set of conflicts traversed in their direction and {θP }− is the set of conflicts traversed in their opposite direction. In the rest of this section and the next section, we concentrate on TDMA delay on return paths. The return path delay is important for applications that use TCP as the transport protocol since the throughput of TCP is inversely proportional to the return path delay [104]. Schedulers that minimize TDMA delay of unicast end-to-end connections such as Voice-over-IP traffic can be derived similar to the way we derive the scheduler for return path TDMA delay. The set of return paths PR can be obtained by fusing unicast paths. For example, in mesh networks, the set of return paths can be obtained by fusing the downlink and uplink paths: PR = {Pl : Pl = Plup ∪ Pldown , l = 2 . . . n}

(4.4)

On a return path, TDMA delay depends on the transmission order only,

Dl =

X

ck ∈{θl

}+

(σ)

ok Tf +

X 

ck ∈{θl

}−

(σ)

1 − ok



Tf ,

(4.5)

where all tension terms cancel out. For example, the summation over the tension terms for the cycle θ1 in Fig. 2.4 is: τ12 +τ10 + τ22 − τ18 − τ13 − τ11 = (π3 − π1 ) + (π6 − π3 ) + . . . − (π2 − π1 ) = 0.

(4.6)

75

Chapter 4. TDMA Delay Aware Scheduling

The cancellation of tensions in (4.3) is a well-known graph property [83], which is also used in Kirchhoff’s voltage law [105]. We use vector notation to represent cycles to make formulae more compact. A cycle (l)

(l)

(l)

θl in the conflict graph is defined by the vector θl = [θ1 , . . . , θr ]T , where θk = 1 if (l)

(l)

ck ∈ {θl }+ , θk = −1 if ck ∈ {θl }− and θk = 0 if ck ∈ / θl . For example, the cycle θ1 in Fig. 2.4, corresponds to the vector θ1 ∈ {0, 1}33 where θ1 (10) = θ1 (12) = θ1 (22) = 1, θ1 (11) = θ1 (13) = θ1 (18) = −1 and all other entries in the vector are 0. In vector notation, TDMA delay on a return path is:

  Dl = θlT o(σ) + Kl Tf (σ)

(σ)

where o(σ) = [o1 , . . . , or ]T and Kl =

P

ck ∈{θP }−

(4.7)

1 is a constant for the cycle.

We now define the set of transmission orders, which produce a TDMA delay less than a given maximum delay:

Definition 4.1 (Delay Constrained Transmission Orders). The set of transmission orders for which the delay on every path is less than some maximum t is o n   D(t) = o ∈ {0, 1}m : θlT o(σ) + Kl Tf ≤ t, ∀Pl ∈ PR

4.2

(4.8)

Min-Max TDMA Delay Scheduling

We formulate a {0, 1}-integer program that finds a transmission order that minimizes the end-to-end TDMA delay on the set of return paths PR , while ensuring that a feasible virtual schedule exists over N slots. An objective function that finds such schedules is the min-max delay defined as min maxPl ∈PR Dl . We combine the formula for the virtual delay (4.5) with the polyhedron of feasible transmission orders to formulate a {0, 1}-

Chapter 4. TDMA Delay Aware Scheduling

76

Algorithm 3 Schedule-MinLen-MinMaxDelay (Gc , d, Nd , Ts , P) 1: ∀ej ∈ E : ∆j ← ⌈dj /Ts ⌉ 2: N ← 1, α ← 1 3: while mint∈R,o∈{0,1}m ,π∈Rm {t : o ∈ O(N, ∆), o ∈ D(t)} = ∞ do 4: N ←N +1 5: α ← Nd / max{N, Nd } 6: end while 7: {o∗ , π ∗ , t} ← argmint∈R,o∈{0,1}m ,π∈Rm {t : o ∈ O(N, ∆), o ∈ D(t)} ˆ j ← ⌊α∆j ⌋ // this is the maximum α 8: ∀ej ∈ E : ∆ ∗ 9: σ ← Schedule-Fixed-TransmissionOrder(Gc , ∆, o∗ , N ) ˆj 10: ∀ej ∈ E : sj ← Ts σj∗ , dˆj ← Ts ∆ ˆ 11: return S(s, d)

integer program that finds a schedule with the min-max delay for a fixed N :

min t π,o,t i h s.t θlT o + Kl Tf ≤ t,

(4.9a) Pl ∈ PR

(4.9b)

l ≤ CT π − N o ≤ N 1 − u

(4.9c)

π ∈ Zm , o ∈ {0, 1}r , t ≥ 0,

(4.9d)

Constraints (4.9b) ensure that all feasible transmission orders are in D(t), while t is minimized; therefore the solution of (4.9) is min-max optimum. The other constraints (4.9c) define the polyhedron of conflict-free schedules for a fixed N . We use the min-max optimization (4.9) in step 2 of Schedule-MinLen-General algorithm to arrive at Schedule-MinLen-MinMaxDelay algorithm.

In ev-

ery iteration of the while loop (step 3, Schedule-MinLen-MinMaxDelay algorithm), the algorithm solves (4.9). ∞ if no solution exists over N slots.

We use the convention that (4.9) returns By Corollary 3.1, at step 7, the algo-

rithm has the minimum N , so it retrieves the transmission order and uses it to find the schedule with the Schedule-Fixed-TransmissionOrder algorithm. Since we round down the link durations in step 8 of the algorithm, by Corollary 3.2

77

Chapter 4. TDMA Delay Aware Scheduling

Schedule-Fixed-TransmissionOrder algorithm is guaranteed to find a conflict-free schedule at step 9. We note that since N is maximum, we have the maximum concurrent flow schedule and that since t is minimum, we also have a schedule that minimizes the maximum delay among all paths in the network. The dummy variable t is used to find the min-max value of delay among all paths in (4.9). We note that if (4.9) also includes a constraint limiting t, i.e. t ≤ Dmax , then Schedule-MinLen-MinMaxDelay algorithm would find the maximum concurrent flow schedule where the delay on all paths is limited by Dmax . Nevertheless, we use (4.9) without the limitation on t so that we find the minimum Nmin , which maximizes concurrent throughput and does not take into account delay, first and then find the min-max delay on all paths. In step 7 of the Schedule-MinLen-MinMaxDelay algorithm, optimization (4.9) provides a transmission order o∗ as well as a potential π ∗ corresponding to a virtual schedule.

The algorithm then uses Schedule-Fixed-TransmissionOrder

algorithm in step 9 to find the final schedule.

Since the last step of the

Schedule-Fixed-TransmissionOrder algorithm is to use the modulo operator to find starting times σ, the final transmission order o(σ) may be different from o∗ . We now show that despite the differences, the delay produced by the two transmission orders is the same. Proposition 4.1 (Modulo Operator Does Not Change Delay). Suppose that transmission order o∗ , obtained in step 7 of Schedule-MinLen-MinMaxDelay algorithm, is used by the Bellman-Ford scheduler to find a virtual schedule Sv (σ ∗ , ∆, N ) with transmission order o(σ) in step 9 of Schedule-MinLen-MinMaxDelay algorithm. The TDMA delay induced by o(σ) is the same as the TDMA delay induced by o∗ . − → (σ) Proof. For a conflict ck ∈ C : f c (ei , ej ), o(σ) and o∗k are related with ok = zj − zi + o∗k by (3.18), where zi , zj ∈ Z are the number of times N divides πi∗ and πj∗ respectively, obtained with (3.2). If we define tension between the z variables as τkz = zj − zi for

Chapter 4. TDMA Delay Aware Scheduling

78

− → z T ∀ck ∈ C : f c (ei , ej ) and the vector of tensions τ z = [τ1z , . . . , τm ] , it follows that θlT o∗ = θlT τ z + θlT o(σ) = θlT o(σ) .

(4.10)

Since the sum of tensions around a cycle adds up to zero, θlT τ z = 0 [83]. This leads us to the conclusion that

 T ∗    θl o + Kl Tf = θlT o(σ) + Kl Tf = Dl ,

(4.11)

meaning that the two transmission orders have the same TDMA delay.

4.3

One Frame Delay Scheduling for Tree Topologies

The min-max formulation (4.9) is hard to solve because it requires a search for o over the space of all {0, 1}r vectors, for example this search can be performed with the standard branch-and-bound technique [106] or with a branch-and-cut technique [86]. In this section, we take advantage of the fact that many multi-hop wireless networks have tree topologies and propose an algorithm that finds transmission orders on tree topologies that have a one frame TDMA delay. Since the two most important and common examples of wireless multi-hop networks with tree topologies are sensor networks and mesh networks, the heuristic is applicable in a wide array of scenarios. The algorithm first finds a transmission order with the one frame TDMA delay and then uses this transmission order to find a TDMA schedule. The Rank-MinDelay algorithm finds a one frame TDMA delay transmission order as the ranking function R : E → Z, which indicates the preferred order of transmissions. Initially, the algorithm sets the rank of all the nodes to zero. The algorithm then examines each return path Pl ∈ PR , link-by-link, and assigns a rank to each link as a function of the distance from the root of the routing tree. We assume that the base-station is v1 ∈ V . For links on

79

Chapter 4. TDMA Delay Aware Scheduling Algorithm 4 Rank-MinDelay (P, E) 1: Ri ← 0, ∀ei ∈ E 2: for all Pl ∈ P do 3: el = Pl (1) 4: for all k = 2 to k = |Pl | do 5: ek = Pl (k) 6: Rk = max{Rk , Rl + 1} 7: el = ek 8: end for 9: end for 10: return R

a return path Pl = {ei , . . . , ek , el , . . . ej }, where ei ∈ {v1 }+ and ej ∈ {v1 }− , the rank is assigned as follows:

Rk = max{Rk , Rl + 1}, ∀ek , el ∈ Pl : el

where we use the notation that el

ek ,

(4.12)

ek means that ek follows el on the path. We note

that the distance of the link is defined as its placement on the return path and not its topological distance from the root of the tree. For the example in Fig. 2.2, we have R1 = 0, R3 = 1, R5 = R6 = 2, R8 = R10 = 3, R9 = 4, R7 = 5, R4 = 6 and R2 = 7. We note that the Rank-MinDelay algorithm can be easily distributed. The basestation broadcasts a probe through the network. When the probe reaches a node at the end of a tree branch, it is returned back to the base-station. The probe carries a value of the current highest rank on the path Rmax , which is initialized to 0. When the probe arrives to a node, that node sets the rank of the next outgoing link on the path with (4.12) and sets Rmax as the rank of outgoing link. We use the Rank-MinDelay algorithm to devise the complete scheduling algorithm from the Schedule-MinLen-General algorithm. The algorithm first finds the transmission order o from the minimum delay ranking function with (3.15) (steps 3-4). Then, the algorithm finds the maximum scaling α and scales down the schedule if necessary (steps 5-9). Finally, the algorithm finds the minimum delay schedule

Chapter 4. TDMA Delay Aware Scheduling

80

Algorithm 5 Schedule-MinLen-MinDelay (Gc , d, Nd , Ts , P) 1: ∀ej ∈ E : ∆j ← ⌈dj /Ts ⌉ 2: N = 1, α = 1 3: R = Rank-MinDelay(P, E) − → 4: ∀ck ∈ C : f c (ck ) = (ei , ej ), ok = I(Rj < Ri ) 5: while Schedule-Fixed-TransmissionOrder (Gc , ∆, o, N )={} do 6: N ←N +1 7: α ← Nd / max{N, Nd } 8: end while ˆ j ← ⌊α∆j ⌋ // this is the maximum N 9: ∀ej ∈ E : ∆ 10: σ ← Schedule-Fixed-TransmissionOrder(Gc , ∆, o, N ) ˆj 11: ∀ej ∈ E : sj ← Ts σj , dˆj ← Ts ∆ ˆ 12: return S(s, d) (steps 10-11). We note that since the Rank-MinDelay algorithm is a refinement of Schedule-MinLen-General algorithm, it is optimal in terms of α. We now show that it also produces schedules with the minimum possible delay of one frame. Proposition 4.2. If the ordering o, derived from the ranking R : E → Z has a feasible schedule, then for ∀Pl ∈ PR : Dl = Tf .

(4.13)

Proof. Consider a return path Pl = {ei , . . . ej }, where ei ∈ {v1 }+ and ej ∈ {v1 }− , and its corresponding cycle θl in the conflict graph. Assume that cl is the last conflict in θl , connecting ej and ei in the conflict graph. Since Rj > Ri , cl = 1 if cl ∈ {θl }+ and cl = 0 if cl ∈ {θl }− . On the other hand, for all other ck ∈ {θl } \ {cl }, ok = 0 if ck ∈ {θl }+ \ {cl } and ok = 1 if ck ∈ {θl }− \ {cl }. The delay can be found as: Dl =

X

ck ∈{θl

ok Tf +

}+

= ol Tf +

X

ck ∈{θl

X

(1 − ok )Tf

}−

(1 − ok )Tf

ck ∈{θl }− \{cl }

= ol Tf + {θl }− Tf − {θl }− \ {cl } Tf = Tf ,

where | · | is the cardinality of a set and \ is the set difference.

(4.14)

Chapter 4. TDMA Delay Aware Scheduling

81

Even though the above construction allows spatial re-use for links on different paths, it does not allow spatial re-use between links on the same path. This allows us to state an upper bound on utilization ρ for the minimum delay ranking. Proposition 4.3 (Upper bound on Utilization). If the ordering o, derived from the ranking R : E → Z has a feasible schedule, then ρ is upper bounded with 

Nmin ρ ≤ min 1, Nd



where Nmin = max

Pl ∈PR

X

∆i ,

(4.15)

ei ∈Pl

Proof. Consider any return path Pl = {ei , . . . ej }, where ei ∈ {v1 }+ and ej ∈ {v1 }− , and cycle θ¯l obtained by following the path in its opposite direction. Assume that cl is the last conflict in θl , connecting ej and ei in the conflict graph, as in the proof of the previous proposition. For the reverse cycle, the left side of (3.22) simplifies to 1 because for all conflicts in ck ∈ θ¯l , 1 − ok = 0 if ck ∈ {θ¯l }+ \ {cl } and ok = 0 if ck ∈ {θ¯l }− \ {cl }. For the last conflict cl , 1 − ok = 1 if cl ∈ {θ¯l }− and ok = 1 if ck ∈ {θ¯l }+ . So, for the feasible P potential condition, (3.22), to hold, the minimum cycle size must be Nmin ≥ ei ∈Pl ∆i . Maximum is obtained by considering all paths in PR .

4.4

Rate Controlled Server model of TDMA Networks

In this section, we use the standard RCS modelling technique [44, 107], which is used to model stop-and-go queueing systems, to show how share link capacity with traffic shaping at the source of each end-to-end connection. We use RCS to derive the maximum endto-end rate available to each connection. In RCS, servers use per-connection shapers to

Chapter 4. TDMA Delay Aware Scheduling

82

shape traffic at each hop. We use the standard technique [107] to find the “minimum” shaper, which determines the maximum achievable end-to-end rate. We show that the minimum shaper framework fits naturally with the stop-and-go nature of spatial TDMA networks, where all traffic entering the network is shaped on its first hop. We observe that a spatial TDMA network is a stop-and-go queueing system [43–45]. Stop-and-go queueing is non-work conserving service discipline where each server is active periodically and all servers use the same frame duration for their on-off cycling. In spatial TDMA, each link is equivalent to a server in stop-and-go queueing, where the servers are active when TDMA links are transmitting. The activity periods of the links (servers) are mandated by the TDMA schedule where a link ei ∈ E is active for dˆi seconds every Tf seconds.

4.4.1

Connection Rates on a Single TDMA Link

A rate controlled server consists of p shapers, one for each connection traversing the server, and a schedules that determines the order in which packets from various connections are served (Fig. 4.3). We assume that each shaper is a leaky-bucket with the bucket size of 0 bits and a positive leaking rate and we denote the leaking rate of connection l traversing the link ei with ̺il .2 With the leaky-bucket assumption, the maximum number of bits that link ei is expected to serve in each frame is

Bi = Tf

X

̺il I(ei ∈ Pl ),

(4.16)

∀Pl ∈P

where P is the set of paths used by connections and I(·) is the indicator function, which is 1 when its argument is true and 0 when its argument is false. We use the maximum number of bits that the connection is required to serve in 2 We chose this shaper to simplify derivation of the maximum end-to-end rate. However, the choice of the shaper is not important, as long as it limits the amount of traffic in one frame to ̺il Tf .

83

Chapter 4. TDMA Delay Aware Scheduling

Ai1 (t)

LB(0, ̺i1 )

Ai2 (t)

LB(0, ̺i2 )

ON[si , si + di ]Tf

ei .. . Aip (t)

ri =

bi TS

LB(0, ̺il )

Figure 4.3: Rate Controlled Server each frame, Bi , to derive a bound on the leaky-bucket rates. First, we observe that a link (server) achieves its maximum rate if it is active during the whole frame. So, the maximum rate on link ei is ri = bi /TS . However, the links are active according to a TDMA schedule, so the maximum achievable rates are given by (2.6). Using the maximum achievable rate, we find that the number of bits that link ei can serve in each frame is ˆi = rˆi Tf = (α∆i − h)bi , B

(4.17)

where rˆi is actual link rate, which takes into account the overhead of each transmission h and the link duration in the frame dˆi . Second, we note that in order for the system to be stable, the total number of bits that should be offered on the link in each frame should be smaller than the number of ˆi . This leads us to the following bits that the link can transmit in the frame, Bi ≤ B restriction on the maximum rates for each connection: X

̺il I(ei ∈ Pl ) ≤ rˆi ,

(4.18)

∀Pl ∈P

which is the same as (2.9). The limit on the sum of all rates does not specify how much of the total available rate should be allocated to each connection. For example, a good way to divide the available

Chapter 4. TDMA Delay Aware Scheduling

84

link rate is to allocate connection rates according to their preassigned weights, e.g. with GPS. For GPS like allocation of connection rates, the leaky-bucket rate for connection l traversing the link ei should be set to

̺il = P

gl rˆi , gj I(ei ∈ Pl )

(4.19)

∀Pj ∈P

where gl is the weight assigned to connection l. Note that in addition to giving each connection a proportional share of the link bandwidth, the assignment of leak rates with (4.19) also ensures (4.18).

4.4.2

End-to-end Connection Rates

With RCS, each of the shapers on a path can be replaced by a shaper at the ingress router, which is obtained by taking a minimum across all shapers in the path [107]. In the case of our model, we assume that all shapers are leaky-bucket shapers with bucket size of 0 bits and a positive leak rate. So, for a connection l, we set the leaky-bucket rates to ̺l = min ̺il ei ∈Pl

(4.20)

and the maximum end-to-end rate achieved by the connection is

xl = ̺l = min P ei ∈Pl

gl rˆi . gj I(ei ∈ Pl )

(4.21)

∀Pj ∈P

In practise, since spatial TDMA is a stop-and-go queueing system, the link on the first hop acts as the minimum shaper. For example, assume that the first link on the path Pl is ei and that the connection sends at most ̺l Tf bits in each frame. These bits are transferred through the network in a single swoop as long as transmissions of each link in the path carries ̺l Tf bits for the connection. The sufficient condition to ensure

Chapter 4. TDMA Delay Aware Scheduling

85

that each link can transfer ̺l Tf bits for the connection is to set it with (4.20). When it was first proposed, stop-and-go queueing was used to keep the traffic in the network uniform [43]. As we have just shown, once the traffic of a connection enters the network, it is shaped on the first link and it maintains its shape end-to-end. In fact, as long as the shaper limits the amount of traffic on the connection to at most ̺l Tf there is no queueing delay anywhere in the network.

Chapter 5 Scheduling Algorithms for 802.16 Mesh Networks IEEE 802.16 mesh standard [1] uses TDMA to provide guaranteed QoS. The performance of 802.16 mesh networks is dependent on the ability of the management layers to schedule links. In this chapter, we apply the scheduling algorithms from Chapter 4 to 802.16 mesh networks and compare their performance to the performance of other 802.16 scheduling algorithms proposed in literature [46–48]. We limit the scheduling to the same channel to simplify exposition, if multiple channels are pre-assigned to the links the scheduling would be performed independently on each channel, with the same algorithm. Throughout the chapter, we assume that the networks use OFDM in the physical layer, since the 802.16 standard [1, pp. 2] mandates this physical layer scheme for its mesh mode. Scheduling TDMA links has been a research topic for some time, however most of this research is not applicable to the 802.16 mesh protocol. We identify three main reasons

Portions copied under licence from Access Copyright, from P. Djukic and S. Valaee, “Scheduling algorithms for 802.16 mesh networks,” in WiMax/MobileFi: Advanced Research and Technology (Y. c Xiao, ed.), pp. 267-288, Auerbach Publications, 2007. Further reproduction prohibited. Auerbach Publications, 2007.

86

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

87

for the disconnect between the previous research in TDMA scheduling algorithms and requirements of the 802.16 mesh protocol. First, many of the previous approaches do not model all conflicts that exist in TDMA wireless networks [31–34]. In these works, the authors assume that only the links sharing a node in common conflict (this research ignores secondary conflicts, which exist in 802.16 TDMA networks). Second, TDMA scheduling algorithms in literature do not take transmission overhead into account, which is large in 802.16 networks. Finally, these scheduling approaches ignore TDMA scheduling delay. TDMA scheduling delay occurs when packets arriving on an inbound link must wait for the subsequent frame to be transmitted on the outbound link. Since TDMA scheduling delay accumulates at every hop in the network, the end-to-end delay experienced on a path can be large. There are also many heuristic scheduling algorithms that have been proposed specifically for 802.16 mesh networks [46–48]. These algorithms take “secondary” conflicts into account and schedule links to take advantage of spatial re-use. One of the algorithms [48] also takes 802.16 overhead into account and schedules links once per frame. However, these algorithms still do not take into account TDMA scheduling delay. This chapter applies the scheduling algorithms from Chapter 4 to 802.16 mesh networks. We also provide a realistic comparative analysis with other 802.16 scheduling algorithms [46–48] in terms of end-to-end delay and end-to-end throughput. We take into account 802.16 mesh protocol overhead when evaluating end-to-end throughput, which is sometimes ignored [46, 47]. We also take into account TDMA scheduling delay, which is an important QoS parameter, but (other than our research in Chapter 4) is not considered in previous work. We show with simulations that the Bellman-Ford scheduling algorithms have the best performance in terms of end-to-end throughput and end-to-end TDMA scheduling delay. The rest of the chapter is organized as follows: Section 5.1 summarizes the 802.16 mesh standard and its two scheduling protocols. Section 5.2 shows that the network model

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

88

from Chapter 2 fits perfectly to 802.16 mesh networks and defines the QoS measures we use to evaluate scheduling algorithms. Section 5.4 summarizes 802.16 centralized scheduling algorithms available in literature [46–48] and explains how to implement the scheduling algorithms from Chapter 4 in 802.16 mesh networks. Section 5.5 simulates the algorithms and compares their performance in terms of end-to-end throughput and end-to-end TDMA scheduling delay.

5.1

802.16 Mesh Standard

In this section, we describe the 802.16 mesh standard [1]. We start by describing the 802.16 OFDM physical layer. Then, we describe how TDMA is implemented in 802.16 mesh networks by combining OFDM symbols into 802.16 transmission opportunities and how transmission opportunities are assigned to links with 802.16 scheduling protocols.

5.1.1

Physical Layer

IEEE 802.16 mesh physical layer uses OFDM in the licensed and license-exempt 5GHz frequency bands. OFDM transforms blocks of bits into constant duration symbols carried on a set of frequency orthogonal carriers. The bandwidth of the final OFDM signal is the frequency range occupied by all carriers. The raw data rate of 802.16 depends on the duration of each OFDM symbol, which depends on wireless bandwidth, and the number of bits carried in each OFDM symbol. Table 5.1 compares the OFDM physical layers used by 802.11a and 802.16. Both 802.16 and 802.11a use OFDM to achieve high data rates. However, 802.16 also uses TDMA to provide QoS. IEEE 802.16 can use hardware with 10MHz, in the licensed 5GHz frequency band, or 20MHz, in the license-exempt 5GHz frequency band, while 802.11a uses 20MHz in the license-exempt 5GHz frequency band. The OFDM symbol duration, TSymbol , is the sum of the raw symbol duration TFFT , which depends on the

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

89

Table 5.1: Comparison of 802.11a and 802.16 OFDM Parameter Data Carriers Total Carriers TFFT TG TSymbol

802.11a (20 MHz)

802.16 (10MHz)

802.16 (20MHz)

48 52 3.2µs 0.8µs 4µs

192 256 22 92 µs 2 97 µs 25µs

192 256 11 91 µs 7 1 18 µs 12.5µs

c

2006 IEEE. P. Djukic and S. Valaee, “802.16 MCF for 802.11a based mesh networks: A case for standards re-use”, in Proceedings of 23rd Queen’s Biennial Symposium on Communications, 2006.

bandwidth of each carrier, and the symbol guard time TG , which is added to each symbol to prevent ISI.1 The number of carriers used by 802.16 is 256, where only 192 are data carriers. The number of data carriers used by 802.11a is 48. This means that 802.16 carries four times more bits per symbol than 802.11a does, however the OFDM symbol length is about four times longer for 802.16 operating at 20MHz bandwidth, which makes the raw data rates of the two protocols comparable. The number of bits carried in an OFDM symbol depends on the modulation scheme used during its transmission. The lowest modulation is BPSK-1/2 with 96 bits per OFDM symbol, resulting in a raw data rate of approximately 7.7Mbps. The highest modulation is 64QAM-3/4 with 864 bits per OFDM symbol, resulting in the raw data rate of approximately 70Mbps. Table 5.2 compares 802.16 with 10MHz and 20MHz bandwidths to 802.11a. We see that 802.16 operating at 20MHz has raw data rates comparable to the raw data rates of 802.11a. We compare the throughput of 802.16 MAC and 802.11a MAC protocols in Chapter 6.

5.1.2

802.16 TDMA

IEEE 802.16 groups symbols into equal duration frames. We show the frame sizes allowed by the 802.16 mesh standard in Table 5.3. Framing has two purposes. First, the 1 Since [1] leaves the choice of TG open to interpretation, we chose values which will result in integer values for OFDM slots in a frame.

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

90

Table 5.2: Comparison of 802.11a and 802.16 Raw Data Rates Modulation BPSK-1/2 BPSK-3/4 QPSK-1/2 QPSK-3/4 16QAM-1/2 16QAM-3/4 64QAM-2/3 64QAM-3/4

Bits Data Symbol 802.11a 802.16

24 36 48 72 96 144 192 216

96 X 192 288 384 576 768 864

Mbits Bit-rate second 802.11a 802.16 802.16 20MHz 10MHz 20MHz

6.0 9.0 12.0 18.0 24.0 36.0 48.0 54.0

3.84 X 7.68 11.52 15.36 23.04 30.72 34.56

7.68 X 15.36 23.04 30.72 46.08 61.44 69.12

c

2006 IEEE. P. Djukic and S. Valaee, “802.16 MCF for 802.11a based mesh networks: A case for standards re-use”, in Proceedings of 23rd Queen’s Biennial Symposium on Communications, 2006.

Table 5.3: 802.16 Frame Lengths Frame Duration OFDM Symbols OFDM Symbols (ms) 10MHz BW 20MHz BW 2.5 100 200 4 160 320 5 200 400 8 320 640 10 400 800 12.5 500 1000 20 800 1600

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

91

frame boundaries are used to synchronize mesh nodes. Second, the frame structure allows the division of control and data traffic into the control sub-frame and data sub-frames. OFDM symbols in both control and data sub-frames are grouped into transmission opportunities. In the control sub-frame, transmission opportunities consist of 7 OFDM symbols and there are a total of MSH-CTRL-LEN transmission opportunities in each control sub-frame. MSH-CTRL-LEN is a parameter set by the network operator. In the data sub-frame, the size of transmission opportunities is determined by dividing the number of OFDM symbols in the data sub-frame with 256. The standard restricts the number of transmission opportunities in the data sub-frame to at most 256 because the duration fields in the scheduling control packets are 8 bits long. For example, if the frame size is 10ms, there are 800 OFDM symbols in the frame. If there are MSH-CTRL-LEN = 10 transmission opportunities in the control sub-frame, there are 730 OFDM symbols left for the data sub-frame and each data sub-frame opportunity has DataTxOppSize = 3 OFDM symbols. Because the number of OFDM symbols in each transmission opportunity is always rounded up, there may be less than 256 transmission opportunities in each frame. In this example, there are DataTxOppNum = 243 transmission opportunities in each data sub-frame. The 802.16 standard mandates how transmission opportunities are assigned in the control sub-frame with specialized scheduling protocols and algorithms. The 802.16 standard mandates two scheduling protocols, which provide a mechanism to assign transmission opportunities to links in the data sub-frame and exchange packets in the control sub-frame. The standard leaves open how to decide the best assignment of transmission opportunities – scheduling algorithms.

5.1.3

802.16 Data Sub-frame Scheduling Protocols

IEEE 802.16 specifies two different protocols for negotiation of schedules in the data sub-frame: centralized and decentralized scheduling protocols. The centralized schedul-

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

92

ing protocol assigns transmission opportunities in the first MSH-CSCH-DATA-FRACTION × DataTxOppNum transmission opportunities of the data sub-frame, where the percentage of data sub-frame transmission reserved for centralized scheduling, MSH-CSCH-DATAFRACTION, is specified by the network operator. The decentralized scheduling protocol assigns transmission opportunities in the last (1 − MSH-CSCH-DATA-FRACTION) × DataTxOppNum transmission opportunities of the data sub-frame.

In the centralized scheduling protocol, mesh nodes request end-to-end rates from the base station. The base-station uses the end-to-end rate requests and assigns link rates in the network. The assignment of link rates creates a routing tree in the mesh. After assigning the link rates, the base station multicasts the assignment through the mesh. Mesh nodes use the link rate assignment to determine all starting times and link durations in the frame (a common, global, schedule).

In the decentralized scheduling protocol, neighbouring mesh nodes negotiate local schedules. First, a node wishing to change its allocation of transmission opportunities sends a request for transmission opportunities to its neighbours. One, or more of the neighbours, correspond with a range of available transmission opportunities. The node chooses a subrange of these transmission opportunities and confirms that it will use them with a third message.

In centralized scheduling end-to-end bandwidth is assigned and guaranteed by the base station, while in decentralized scheduling, nodes negotiate slot assignments with their neighbours with no guarantees on end-to-end rates. In the rest of the chapter, we limit our investigation to scheduling algorithms for centralized scheduling protocols and assume that MSH-CSCH-DATA-FRACTION = 100%.

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

5.2

93

Applicability of the Model to 802.16 Networks

We defined a network model for TDMA networks in Chapter 2. Now, we relate this model to 802.16 mesh networks using the 802.16 centralized scheduling protocol. In accordance with the 802.16 mesh standard, we assume that mesh nodes send requests and the base-station determines network wide schedules based on these requests. In this chapter, we assume that all mesh nodes have the same, constant, bandwidth request. We relax this assumption in Chapter 7 and show how mesh nodes can dynamically and independently choose bandwidth requests so that in the equilibrium the network as a whole achieves some QoS objective. After receiving the requests, we assume that the base station uses a routing algorithm that forms two spanning trees in the network. The first tree is associated with the uplink traffic and it consists of the links carrying the uplink traffic (to the base station). The second tree is associated with the downlink traffic and contains links carrying downlink traffic (to the mesh nodes). In our simulations, we use the minimum spanning tree algorithm to find the two trees. After receiving the requests, the base-station uses the routing tree to find the set of uplink and downlink paths P up and P down and the required link rates with (2.3), which we repeat here

rj =

X

Pl ∈P up

glup I(ej ∈ Plup ) +

X

gldown I(ej ∈ Pkdown ),

Pl ∈P up

where giup is the uplink request for node vi and gidown is the downlink request for node vi . With the known link rates, the number of OFDM symbols used by each link in a frame is found from the modulation on the link and the frame duration. IEEE 802.16 mesh standard mandates that each transmission have one guard OFDM symbol before data is transmitted and one or two guard OFDM symbols after data is transmitted, so

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

94

the number OFDM symbols link ej uses in each frame is: 

 rj Tf ∆j = DataTxOppSize + h , bj

(5.1)

where h is the number of guard OFDM symbols (h = 2 or h = 3), ⌈·⌉ is the ceiling function, bj is the number of bits in each transmission opportunity and Tf is the frame duration. Link rates are represented with the map b : E → {96, . . . , 864}, where 96 is the number of bits carried in an OFDM symbol with the BPSK-1/2 modulation and 864 is the number of bits carried in an OFDM symbol with 64QAM-3/4 modulation (Table 5.2).

The final number of symbols assigned to the link may be different than what is assigned with (5.1) since 802.16 mandates that the number of OFDM symbols used in each transmission be a multiple of transmission opportunity size. In the sequel, we assume that the base-station rounds ∆j up to the nearest number of transmission opportunities, i.e. ∆j (mod DataTxOppSize) = 0.

Frame utilization ρ has a nice practical interpretation in 802.16 mesh networks. The first ρ × Nd slots of the data sub-frame are allocated with centralized scheduling and the last (1 − ρ) × Nd slots of the data sub-frame are assigned with decentralized scheduling. In terms of 802.16 mesh networks, the search for minimum N (maximum ρ) can be interpreted in two ways. First, if the number of centralized scheduling transmission opportunities is unknown, the search for minimum N maximizes the percentage of the frame used for best-effort traffic (decentralized portion). Second, if the number of centralized scheduling transmission opportunities is known, minimum N (maximum scaling factor α) maximizes the concurrent throughput of connections scheduled with the centralized scheduling algorithm (2.19).

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

5.3

95

End-to-End QoS in 802.16 Mesh Networks

We now define QoS metrics used to evaluate various scheduling algorithms in the next section. First, we show how calculate end-to-end rates from schedules so that we can compare scheduling algorithms based on their supported end-to-end rates. Then, we show how to calculate end-to-end TDMA delay from a given schedule so that we can compare scheduling algorithms based on their TDMA delay. Ideally, a centralized scheduling algorithm assigns the number of transmission opportunities to each link corresponding to the requested end-to-end rates. However, the scheduling algorithms we review in the following section may have to scale down the link durations in order to schedule all links, resulting in granted end-to-end rates different from the requested rates. In some cases, the algorithms also have more than one transmission in a frame, which increases overhead and decreases end-to-end rates supported by the schedule. We find the end-to-end rates in two steps. First, we find the actual rate assigned to link ej , given the number of transmission opportunities assigned to the link, ˆ j: ∆ rˆj =

ˆ j × DataTxOppSize − nj × h) × bj (∆ , DataTxOppSize × Tf

(5.2)

where nj is the number of times link ej transmits in each frame. Then, we use (2.7) to find the achievable end-to-end rate a connection can expect. ˆ j = 0 and nj = 1, then −ˆ If we set ∆ rj is the overhead due to guard time. We plot this overhead in (5.1) for h = 3. We observe that the overhead can be quite large if the frame size is small (> 1Mbps if Tf = 2.5ms and modulation is 64QAM-3/4). However, the overhead decreases as the frame size increases or if the modulation decreases, so for the lowest modulation of BPSK-1/2 and frame size of 10ms the overhead is 28.8 kpbs. In Chapter 4, we showed how to find the end-to-end TDMA delay with (4.3). Here, we show that the same analysis holds for 802.16 networks even if there are multiple transmissions in the frame. We show how TDMA scheduling delay occurs in 802.16 mesh

96

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

Frame Duration vs. Overhead (h=3) 1200 BPSK−1/2 BPSK−3/4 64 QAM−3/4

1000

Overhead (kbps)

800

600

400

200

0

2.5

4

5

8

10 12.5 Frame Duration (ms)

20

Figure 5.1: The cost of multiple transmissions

sj − si si

fi sj

sj − si + Tf

fj

si + Tf

Time

sj

fj si

(a) Delay fi < sj

fi

sj + Tf

(b) Delay fi > sj

Figure 5.2: TDMA Delay

Time

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

97

networks in Fig. 5.2. In this scenario, ei is an incoming link on a mesh node and link ej is an outgoing link on the same mesh node. The packets traverse link ei first and then link ej and are delayed at the mesh node, between the transmissions of ei and ej . We use the notation that sj is the first transmission opportunity link ej transmits in and fj is the last transmission opportunity ej transmits in. In Fig. 5.2a, fi < sj so packets forwarded on ej experience the delay of sj − si , from the time they were transmitted on ei to the time they are forwarded on ej . In Fig. 5.2b, fi > sj so when packets arrive at the mesh node on ei they have to wait for the next transmission of ej . In this case, packets forwarded on ej experience the delay of sj − si + Tf , from the time they were transmitted on ei to the time they are forwarded on ej . We note that the same delay can be observed if ei or ej transmit multiple times in a frame, since 802.16 would fragment the upper layer packets for multiple transmissions on ei and then the packets have to be fully de-fragmented at the common node, before they can be routed and forwarded on ej . On a path, the total TDMA scheduling delay is given by the sum of the waiting times at each node on the path and the time required to transmit the packet on the last link. On path Pl = (ei , . . . , ej ) the end-to-end delay is

Dl = dj +

X

el ,ek ∈Pl :el

where we use the notation el

[sk − sl + Tf I(fl > sk )] ,

(5.3)

ek

ek to indicate that ek is traversed after el on the path

and we add dj to account for the time it takes to transfer packets on the last hop. We ignore propagation delay since it is independent of scheduling.

5.4

802.16 Centralized Scheduling Algorithms

In this section, we briefly review the operation of 802.16 centralized scheduling algorithm proposed in the 802.16 standard [1] and scheduling algorithms proposed in literature

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks e1

e3

v1

v2

e6 v3

e2

e5

e8

98

v4 e7

e4

v5

Figure 5.3: A simple example of a mesh network [46–48]. We also review the operation of the Bellman-Ford TDMA scheduling algorithms from Chapter 3 and show how these algorithms can be applied to 802.16 mesh networks. We compare the algorithms with simulations in the next section. Throughout this section, we use the topology in Fig. 5.3 to find 802.16 schedules. We compare the performance of the algorithms on this topology in the next section. In this topology, all nodes request 600kbps uplink and downlink end-to-end rates from the base-station. We set the 802.16 frame duration to 10ms for a total of 800 OFDM symbols in each frame and we set the size of the control sub-frame to 70 OFDM symbols, leaving 730 OFDM symbols for the data sub-frame. We set MSH-CSCH-DATA-FRACTION = 100% so that the entire data sub-frame is used for centralized scheduling. With these parameters, each transmission opportunity consists of 3 OFDM symbols, for a total of 243 transmission opportunities in the data sub-frame. We set the overhead of 802.16 to 3 OFDM symbols, so for every transmission there is one transmission opportunity of overhead. For every transmission in the frame, this overhead is equivalent to 28.8kbps at the lowest modulation and 259kbps at the highest modulation.

5.4.1

IEEE 802.16 Scheduling Algorithm

IEEE 802.16 [1] uses an example to propose a simple algorithm to assign transmission opportunities. This algorithm assigns transmission opportunities during a breadth-first

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

e1 e2 e3 e4 e5 e6 e7 e8 0

100

200

300

400

500

600

700

800

Centralized Scheduling

Control Sub-frame

(a) IEEE 802.16 e1 e2 e3 e4 e5 e6 e7 e8 0

100

200

300

400

500

600

700

800

Centralized Scheduling

Control Sub-frame

(b) Graph Colouring e1 e2 e3 e4 e5 e6 e7 e8 0

100

200

300

400

500

600

700

800

Centralized Scheduling

Control Sub-frame

(c) Load Balancing, iteration 1 e1 e2 e3 e4 e5 e6 e7 e8 0

100

200

300

400

500

600

700

800

Centralized Scheduling

Control Sub-frame

(d) Load Balancing, iteration 2 e1 e2 e3 e4 e5 e6 e7 e8 0

100

200

300

400

500

600

700

800

Centralized Scheduling

Control Sub-frame

(e) Bellman-Ford (Optimum) e1 e2 e3 e4 e5 e6 e7 e8 0

100

200

300

400

Control Sub-frame

500

600

700

800

Centralized Scheduling

(f) Bellman-Ford (MinDelay)

Figure 5.4: 802.16 schedules for the topology in Fig. 5.3

99

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

100

traversal of the routing tree. The first visited link, in the traversal of the tree, is assigned transmission opportunities at the beginning of the data sub-frame. The link traversed next is assigned the next set of transmission opportunities and so on, until all links are assigned transmission opportunities. If the total number of assigned transmission opportunities is larger than the number of transmission opportunities reserved for centralized scheduling, the algorithm scales down and rounds link durations, so they fit in the frame. Since this algorithm does not allow spatial re-use, it has low end-to-end rates. We show the schedule obtained with the 802.16 algorithm in Fig. 5.4a; as expected none of the link transmissions overlap, since there is no spatial re-use in the schedule.

5.4.2

Graph Colouring Algorithms

A graph colouring based 802.16 scheduling algorithm is proposed in [46]. This algorithm assigns transmission opportunities in rounds. In each round, the algorithm assigns one transmission opportunity to the link with the highest number of outstanding transmission opportunities and all other links that do not conflict with it. Those links then have one less outstanding transmission opportunity. Rounds are repeated until either there are no free transmission opportunities left or demands of all links are satisfied. The graph colouring algorithm introduces spatial reuse (Fig. 5.4b), but it allows the links to transmit multiple times in the frame. We see shortly that despite the spatial re-use, the graph algorithm performs worse than the 802.16 algorithm due the overhead of multiple transmissions. A similar algorithm, the Transmission-Tree scheduling (TTS) algorithm, is proposed in [47]. TTS algorithm also assigns transmission opportunities to non-interfering links in iterations. However, the TTS algorithm leaves the decision of the next assigned link open. For example, instead of choosing the link with the highest number of outstanding transmission opportunities, the algorithm may choose the next assigned link randomly. Since the TTS algorithm is very similar to the graph colouring algorithm, we only examine

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

101

the performance of the graph colouring algorithm in the next section.

5.4.3

Load-balancing Algorithm

A load-balancing algorithm for 802.16 node scheduling was proposed in [48]. Node scheduling can be used for 802.16 link scheduling if the uplink and downlink traffic are scheduled in their own, non-overlapping, parts of the data sub-frame. For example in Fig. 5.3, the downlink schedule for nodes v2 , v3 , v4 and v5 corresponds to the schedule for links e1 , e3 , e6 and e4 . For the uplink, node schedule for v2 , v3 , v4 , v5 corresponds to the link schedule for e2 , e5 , e7 and e8 . We modify the node load balancing algorithm [48] to schedule links. The link scheduling version algorithm increases spatial re-use in the network, since it allows the uplink and downlink links to be scheduled simultaneously. The load-balancing algorithm works in iterations. At the beginning of each iteration, the algorithm finds links’ satisfaction with the schedule from a previous iteration. The satisfaction is directly proportional to the ratio of the link rate achieved with the schedule and the rate assigned to the link by the base station. For link ej , the satisfaction is sj = rˆj /rj , where rˆj is obtained from the previous schedule with (5.2) and rj is the required rate on the link. After finding link satisfactions, the algorithm schedules the links. First, the algorithm schedules the link with the smallest satisfaction at the beginning of the data sub-frame. Then, the algorithm schedules the rest of the links in the order of increasing satisfactions. Each link is scheduled as close to the beginning of the data sub-frame as possible, so that its transmission does not overlap with transmissions of its conflicting links. Scheduling links in this way takes advantage of spatial re-use in the network, however links scheduled towards the end of the frame may get a smaller number of transmission opportunities than what they were assigned by the base station (their transmissions are truncated). The links that were truncated get more transmission opportunities in the next iteration of the load-balancing algorithm. In the next iteration, the algorithm recalculates

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

102

the satisfaction of the links. Links that were truncated in the previous schedule (previous iteration of the algorithm) have the lowest satisfaction, so in the next iteration of the algorithm they are scheduled towards the beginning of the frame. Scheduling the links sooner in the frame, ensures that their transmissions are longer, making their rate higher than in the previous frame. On the other hand, links that were not truncated in the previous iteration have the highest satisfaction index, so they are scheduled towards the end of the frame where they may be truncated. We show the schedule obtained in the first iteration of the load-balancing algorithm in Fig. 5.4c and the schedule obtained in the second iteration of the load-balancing algorithm in Fig. 5.4d. In the first iteration of the algorithm, the transmission of link e5 is truncated and link e8 is not even scheduled. The situation is improved in the next iteration of the algorithm, where link e8 is scheduled to transmit first and link e5 is scheduled to transmit second. They are allocated more transmission opportunities in the schedule, but at the expense of link e2 , which is scheduled last and truncated. Link e7 is scheduled at the beginning of the frame in both iterations since in either iteration it does not interfere with the links scheduled at the beginning of the frame.

5.4.4

Bellman-Ford Scheduling Algorithm

We proposed the Bellman-Ford TDMA scheduling algorithm in Chapter 3 and Chapter 4. Bellman-Ford scheduling allows spatial re-use to increase the end-to-end rates in the mesh backbone, limits the number of link transmissions to one per frame to decrease overhead and also takes into account TDMA scheduling delay. In Chapter 3, we showed how to decompose the TDMA scheduling problem into two parts: finding a good transmission order and then finding a throughput optimal schedule for this transmission order. Using the decomposition, we proposed a polynomial time TDMA scheduling algorithm, with two steps (the Schedule-MinLen-MinDelay algorithm). First, the algorithm finds a link transmission order with a TDMA scheduling

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

103

delay of one frame for all paths in the network. The algorithm achieves this by traversing all paths and setting the transmission order of links further down the path after the transmission order of the links earlier in the path. In effect the algorithm is setting the Tf terms in (5.3) to 0. Second, the algorithm finds a transmission schedule with the Bellman-Ford algorithm running on the conflict graph for the network. We also propose an algorithm that finds a transmission order with an exhaustive search in the first step (the Schedule-MinLen-MinMaxDelay algorithm). Schedule-MinLen-MinMaxDelay algorithm searches for the transmission order that has the highest bandwidth and then searches for a transmission order that minimizes the maximum delay across all paths. We note that since we prove the optimality of the two Bellman-Ford algorithms, we expect these algorithm to perform better than other algorithms. The other algorithms are based on heuristics and no results are available about their optimality. Our TDMA scheduling approach fits perfectly into 802.16 centralized scheduling. First, the base-station uses Schedule-MinLen-MinMaxDelay algorithm or Schedule-MinLen-MinDelay algorithm to find the transmission order (link rankings) and the scaling factor α that maximizes the concurrent end-to-end throughput of mesh nodes. Then, the base-station multicasts the ranking and the scaled-down link bandwidths. Second, the nodes use the ranking and the link bandwidths they receive from the base-station and their knowledge of the network topology to calculate the network wide TDMA schedule with the Bellman-Ford algorithm. We assume that the network wide topology is known to all nodes. If this assumption is not true, the nodes can use the distributed version of the scheduling algorithm, which relies on local topology information only. We show the schedule obtained with Schedule-MinLen-MinMaxDelay algorithm, which finds the optimum transmission order in Fig. 5.4e and the schedule obtained with the Schedule-MinLen-MinDelay algorithm, which finds the one frame

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

104

delay transmission order, in Fig. 5.4d. The optimum schedule is found with an exhaustive search for a transmission order with the highest end-to-end throughput, while in the schedule with one frame delay transmission only one order is considered. In this topology the two schedules are identical. We see later that one of the drawbacks of the one frame delay transmission order scheduling is that spatial re-use is not allowed between links on the same path. However, if there are more distinct paths in the network, there is more spatial re-use (as in the topology in Fig. 5.3)

5.5

Simulation Results

In this section, we compare the performance of scheduling algorithms from the previous section with simulations. We start with the simple topology in Fig. 5.3. We then simulate the performance of the algorithms on chain and grid topologies. In all simulations, we use the 802.16 parameters from the last section.

5.5.1

Example 1: Small Topology

In Fig. 5.5, we compare the performance of schedules in Fig. 5.4, in terms of end-to-end throughout and TDMA scheduling delay. We find the uplink and downlink throughput of the schedules with (2.7) and (5.2) and find the end-to-end TDMA scheduling delay with (5.3). We do not take into account the overhead of upper layer protocols. Fig. 5.5a and Fig. 5.5b show the uplink and downlink throughput of each source. The graph colouring algorithm has the lowest end-to-end throughput (“Graph Colouring” in Fig. 5.5a and Fig. 5.5b). This may seem surprising since that algorithm uses spatial re-use to increase the capacity of the network, however the algorithm also introduces a large amount of overhead, which decreases the end-to-end throughput. The 802.16 algorithm has the next higher end-to-end throughput, despite the fact that it is not using any spatial re-use (“IEEE 802.16” in Fig. 5.5a and Fig. 5.5b). The load-balancing

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

105

provides different end-to-end throughput in each iteration. In the first iteration, the effect of link e8 having no transmission opportunities (Fig. 5.4c) manifests as source v5 has 0 uplink throughput (“Load Balancing, Iteration 1” Fig. 5.5a). The situation is improved in the second iteration, where source v5 has some uplink throughput (“Load Balancing, Iteration 2” in Fig. 5.5b). However, the uplink throughput of all sources is decreased in the second iteration because link e2 is truncated (Fig. 5.4d) and link e2 is the bottleneck for all uplink traffic flows (Fig. 5.3). The end-to-end throughput is the best for two Bellman-Ford algorithms (“Bellman-Ford (Optimum)” corresponding to the Schedule-MinLen-MinMaxDelay algorithm and “Bellman-Ford (MinDelay)” corresponding to Schedule-MinLen-MinDelay algorithm). This is expected since their performance optimal in terms of concurrent flows in the network. We note that the only algorithms exhibiting “fairness” are the 802.16 algorithm and the two Bellman-Ford algorithms. For these algorithms, the end-to-end throughput is approximately the same for all nodes. On the other hand, the graph colouring algorithm is not fair. For example, on the uplink the graph colouring algorithm allocates twice as much throughput to node v2 than it does to node v5 . From iteration to iteration, the load-balancing algorithm can be even worse. For example, source v5 , which has 0 uplink throughput in the first iteration of the load-balancing algorithm. However, the average of the load-balancing algorithm over 50 iterations (“Load Balancing, 50 Iterations” in Fig. 5.5a and Fig. 5.5b) shows that while the load-balancing is “unfair” in the shortterm, the algorithm is more “fair” over the long term, since all nodes get about the same amount throughput over the 50 iterations of the algorithm. However, in this topology the algorithm also favours uplink traffic over the downlink traffic. We compare the TDMA scheduling delay on the return paths in the network in Fig. 5.5c. The return path delay is important for applications that use TCP as the transport protocol since the throughput of TCP is inversely proportional to the return path delay [104]. The lowest TDMA scheduling delay (10ms for all nodes) is obtained by

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

1000 900

Uplink Throughput (kbps)

800 700

IEEE 802.16 Graph Colouring Load Balancing, iteration 1 Load Balancing, iteration 2 Load Balancing, 50 iterations Bellman−Ford (Optimum) Bellman−Ford (MinDelay)

600 500 400 300 200 100 0

2

3

4

5

Source

(a) Uplink Throughput 1000 900

Downlink Throughput (kbps)

800 700

IEEE 802.16 Graph Colouring Load Balancing, iteration 1 Load Balancing, iteration 2 Load Balancing, 50 iterations Bellman−Ford (Optimum) Bellman−Ford (MinDelay)

600 500 400 300 200 100 0

2

3

4

5

Source

(b) Downlink Throughput 50 45 40 35

IEEE 802.16 Graph Colouring Load Balancing, iteration 1 Load Balancing, iteration 2 Load Balancing, 50 iterations Bellman−Ford (Optimum) Bellman−Ford (MinDelay)

Delay (ms)

30 25 20 15 10 5 0

2

3

4

5

Source

(c) Return-Trip Delay

Figure 5.5: Performance of Scheduling algorithms for the topology in Fig. 5.3

106

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

107

the two Bellman-Ford algorithms. This is not surprising since both algorithms minimize the TDMA scheduling delay. The other algorithms have higher TDMA scheduling delay. The delay is the highest for source 4, which is furthest away from the base station. For example, in the load-balancing algorithm source 4 experiences the TDMA scheduling delay of 40ms, which is four times as much as the delay of the two Bellman-Ford algorithms. We note that if the frame size was increased to 20ms the TDMA scheduling delay would be 80ms since it is directly proportional to frame duration Tf .

5.5.2

Example 2: Chains

In this section, we examine performance of scheduling algorithms on chain topologies. In each scenario, we create a chain of mesh nodes where one of the end nodes is the base-station and all other nodes in the topology request uplink and downlink end-to-end rates of 3.0Mbps. We chose 3.0Mbps as the requested rate because, with our physical layer parameters, this is close to the maximum possible with just two nodes in the chain. Fig. 5.6a and Fig. 5.6b show the performance of different algorithms in terms of uplink/downlink end-to-end throughput, as the size of the chain – the number of sources – increases (the naming is the same as in Fig. 5.5). We show the average end-to-end throughput among all nodes in the network. The Schedule-MinLen-MinMaxDelay algorithm has the best performance in terms of end-to-end throughput.

The

Schedule-MinLen-MinDelay algorithm and the 802.16 scheduling algorithm have the same bandwidth. The reason for this is that when the end-to-end TDMA scheduling delay is limited to one frame, there is no spatial re-use among links on the same path. However, in general the transmission orders found with this transmission order do allow spatial re-use among links on the different paths (Fig. 5.4f). Despite taking advantage of spatial re-use, the graph colouring algorithm has the worst performance due to multiple transmissions in the frame. Even with just one source, when it is possible to schedule all requested end-to-end bandwidths, the colouring algorithm only achieves 75% of the

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

108

requested end-to-end bandwidths.

The load-balancing algorithm performs worse than in the previous scenario. The reason for decreased performance is that the amount of bandwidth requested on the links exceeds the amount of bandwidth that can be scheduled in one frame. Only a few links transmit in each schedule, in effect cancelling out the benefits of spatial re-use. We show how this happens in Fig. 5.7, where we plot two iterations of the load-balancing schedule for the three node chain. The load-balancing schedule always oscillates between these two schedules. In both schedules link e2 is scheduled for about 100 OFDM symbols, adding up to less than 200 OFDM symbols over the two frames. On the other hand, link e1 is scheduled for over 500 slots over the two frames, giving it twice the bandwidth. So, nodes v2 and v3 have half as much uplink bandwidth than downlink bandwidth since link e2 is their bottleneck link (Fig. 5.7c). This observation also explains the variability in the end-to-end throughput of the load-balancing algorithm.

Fig. 5.6c shows the maximum delay as the chain length increases.

The

Schedule-MinLen-MinDelay algorithm has a constant one frame TDMA delay, consistent with the claims in Chapter 4. The Schedule-MinLen-MinMaxDelay algorithm has higher delay than the Schedule-MinLen-MinDelay algorithm. This is expected, since the bandwidth optimum Bellman-Ford algorithm optimizes the schedule for bandwidth and delay at the same time. The 802.16 algorithm introduces an even larger delay because it ranks the links with the breadth-first search of the routing tree. In case of chains, the breadth first search increases TDMA scheduling delay because it forces all the link on the uplink to transmit before the links on the downlink. The graph colouring approach has the largest delay, approximately twice as large as the delay of the optimum Bellman-Ford algorithm. We do not show the delay for the load-balancing algorithm because the formula for end-to-end scheduling delay does not work with the oscillations exhibited by the load-balancing algorithm.

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

3500 IEEE 802.16 Graph Colouring Load Balancing, 50 iterations Bellman−Ford (Optimum) Bellman−Ford (MinDelay)

3000

Uplink Throughput (kbps)

2500

2000

1500

1000

500

0

2

3

4

5 Chain Length

6

7

8

(a) Uplink Throughput 3500 IEEE 802.16 Graph Colouring Load Balancing, 50 iterations Bellman−Ford (Optimum) Bellman−Ford (MinDelay)

Downlink Throughput (kbps)

3000

2500

2000

1500

1000

500

0

2

3

4

5 Chain Length

6

7

8

7

8

(b) Downlink Throughput 50 IEEE 802.16 Graph Colouring Bellman−Ford (Optimum) Bellman−Ford (MinDelay)

45 40 35

Delay (us)

30 25 20 15 10 5 0

2

3

4

5 Chain Length

6

(c) Return-Trip Delay

Figure 5.6: Performance of Scheduling algorithms for Chains

109

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

110

e1 e2 e3 e4 0

100

200

300

400

500

600

700

800

Centralized Scheduling

Control Sub-frame

(a) Odd-frame Schedules e1 e2 e3 e4 0

100

200

300

400

500

Control Sub-frame

600

700

800

Centralized Scheduling

(b) Even-frame Schedules

e3

e1 v1

v2 e2

v3 e4

(c) Three Node Chain

Figure 5.7: Oscillations of the load-balancing algorithm for 3 node Chains

5.5.3

Example 2: 5 × 3 Grid

In this section, we examine the performance of scheduling algorithms on a 5 × 3 grid. We place the base-station in the centre of the topology and pick sources at random. After picking the sources, we find paths to the base-station with the minimum spanning tree algorithm. Each source requests an end-to-end rate of 3.0Mbps. We repeat the selection of sources 50 times. We plot the results for end-to-end throughput and end-to-end delay in Fig. 5.6. We do not run the optimum Bellman-Ford scheduling algorithm in our examples because it takes a very long time. We note that despite spatial re-use, the graph colouring algorithm achieves at most as much bandwidth as the 802.16 scheduling algorithm that does not use spatial reuse. The delay of the graph colouring algorithm is better than the delay of the 802.16 algorithm, however it is still significantly larger than the delay of the Bellman-Ford algorithm. The load-balancing appears to work better than the Bellman-Ford algorithm, sometimes, on

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

1400 IEEE 802.16 Graph Colouring Load Balancing, 50 iterations Bellman−Ford (MinDelay)

1200

Uplink Throughput (kbps)

1000

800

600

400

200

0

1

2

3

4 Number of Sources

5

6

7

(a) Uplink Throughput 1400 IEEE 802.16 Graph Colouring Load Balancing, 50 iterations Bellman−Ford (MinDelay)

Downlink Throughput (kbps)

1200

1000

800

600

400

200

0

1

2

3

4 Number of Sources

5

6

7

6

7

(b) Downlink Throughput 50 IEEE 802.16 Graph Colouring Bellman−Ford (MinDelay)

45 40 35

Delay (us)

30 25 20 15 10 5 0

1

2

3

4 Number of Sources

5

(c) Return-Trip Delay

Figure 5.8: Performance of Scheduling algorithms for the 5 × 3 grid

111

Chapter 5. Scheduling Algorithms for 802.16 Mesh Networks

112

the uplink. However, the short term behaviour of the algorithm is such that it often starves out links for one or more frames. This would produce extremely large delays in the network, making the algorithm unusable in 802.16 mesh networks.

Chapter 6 TDMA Scheduling for 802.11 Mesh Networks Currently deployed mesh networks use 802.11 wireless devices for wireless mesh connectivity [9–11]. However, 802.11 medium access control is not appropriate for commercial applications of mesh networks since DCF, used to coordinate 802.11 transmissions, cannot provide QoS [19]. In this chapter, we propose upgrading the software on the existing nodes with an implementation of 802.16 mesh protocol that can work with the existing 802.11a hardware. Our method requires only software changes on the nodes using 802.11a for mesh communications. This means that the mesh networks installed with 802.11a hardware today can be upgraded with a software patch to take advantage of 802.16 MAC and do not have to wait for hardware upgrades to 802.11s. The importance of this approach is that it increases the operational lifetime of current mesh networks by providing them with TDMA MAC layer, which can provide guaranteed QoS.

Portions reprinted, with permission, from P. Djukic and S. Valaee, “Towards guaranteed QoS in mesh networks: Emulating WiMAX mesh over WiFi hardware”, in Proceedings of The Fourth Workshop on c Wireless Ad hoc and Sensor Networks WWASN, 2007 IEEE and P. Djukic and S. Valaee, “802.16 MCF for 802.11a based mesh networks: A case for standards re-use”, in Proceedings of 23rd Queen’s c Biennial Symposium on Communications, 2006 IEEE.

113

Chapter 6. TDMA Scheduling for 802.11 Mesh Networks

114

Our approach has several advantages, rooted at the ability to re-use the 802.16 standard. First, there is no need to specify a new mesh overlay MAC protocol; the 802.16 standard gives a detailed description of the mesh protocol. The 802.16 mesh protocol specifies the synchronization mechanism used to align all transmissions to frame boundaries, as well as the mechanism to negotiate TDMA allocations in each frame. In addition to the mesh protocol, the 802.16 standard also specifies procedures for network entry and MAC layer encryption for mesh nodes, which are missing in 802.11. First, we show how the 802.11 DCF works and how 802.16 packets can be embedded in 802.11 broadcast packets. Then, we use ns-2 simulations to show that with the 802.16 embedded over 802.11 hardware, the end-to-end throughput increases in the multiples of what is possible with 802.11 alone. Finally, we show how we plan to implement the embedding on mesh nodes running Linux OS with 802.11 hardware.

6.1

802.11 Distributed Coordination Function

Current wireless mesh networks use IEEE 802.11a protocol to implement node-to-node connectivity [9,67]. 802.11a achieves high raw bit rates by using an OFDM based physical layer in the 5GHz license-exempt band. However, even with the high bit rates, 802.11a is not the most appropriate protocol for mesh networks because of high overhead and the unfairness that can affect end-to-end flows. We first describe the 802.11 DCF and then show its efficiency. IEEE 802.11 DCF uses collision avoidance to decrease the number of packet collisions in the network. Collision avoidance is based on the use of the basic procedure (Fig. 6.1a). In the basic procedure, the transmitter senses the channel until it becomes free. Once the channel is free, the transmitter waits for a duration of TDIFS = 34µs (Table 6.1) and then calculates an additional “back-off” waiting time. The back-off time is chosen randomly in the interval of [CWmin, CWmax] × TaSlotTime seconds (CWmin and CWmax are QoS

Chapter 6. TDMA Scheduling for 802.11 Mesh Networks

(a) The Basic Procedure

115

(b) RTS-CTS-ACK Exchange Procedure

Figure 6.1: 802.11 Distributed Coordination Function Table 6.1: 802.11a Timing Value TEIFS TDIFS TSIFS TACK TRTS Duration (µs) 658 34 16 76 84

TCTS 76

TaSlotTime 9

parameters that can be specified by the user, while TaSlotTime = 9µs). After waiting for the end of the back-off time the transmitter sends a packet. In addition to the basic procedure, the nodes also have the option of using RTSCTS-ACK exchanges to coordinate their transmissions. The RTS and CTS messages are exchanged after the transmitter has performed the basic procedure. The exchange is used to announce to neighbouring nodes that a transmission will take place. As a part of the exchange, the transmitter announces how long the transmission will last, so that the neighbouring nodes can set their virtual sensing timers. Nodes do not transmit while their virtual timers are set. After a successful packet reception, the receiver sends the ACK packet so that the sender knows the transmission was successful. Using the values for 802.11a timing constants (Table 6.1), we find that the overhead of the full RTS-CTS-ACK exchanges is 318µs per packet. The overhead of RTS-CTS-ACK exchanges significantly decreases the efficiency of 802.11a (Fig. 6.2). The efficiency is defined as the amount of time needed to transmit a packet on its own divided by the amount of time it takes to transmit the packet with the RTS-CTS-ACK exchange with no collisions (and no back-off). Later, we show that RTS-CTS-ACK exchanges are also not a good way to eliminate collisions in the

116

Chapter 6. TDMA Scheduling for 802.11 Mesh Networks Efficiency vs. Packet Size

80

Efficiency %

60

40

BPSK-1/2 QPSK-3/4 16QAM-3/4

20

0 500

1000 Packet Size (bytes)

1500

2000

Figure 6.2: Efficiency of 802.11 DCF wireless channel, which is the reason why a new coordination mechanism is necessary for multi-hop 802.11 mesh networks. Fig. 6.2 shows the efficiency as a function of packet size for BPSK-1/2,QPSK-3/4 and 16QAM-3/4 rates, corresponding to raw data rates of 6.0Mbps, 18.0Mbps, and 36.0Mbps, respectively (Table 5.2). We see that the efficiency increases with the packet size and the efficiency decreases as the raw data rate increases. The low efficiency of RTS-CTS-ACK exchanges is the main reason that the 802.16 packet embedding described in Section 6.3 uses 802.11 broadcast packets, which do not use the RTS-CTS-ACK exchanges.

6.2

802.16 Mesh Coordination Function

We have described 802.16 MCF in Chapter 5. Now we examine the efficiency of 802.16 operating at 20MHz (Fig. 6.3), as a comparison to 802.11a, which also operates at 20MHz. In case of 802.16, the efficiency is defined as the amount of time needed to transmit a

117

Chapter 6. TDMA Scheduling for 802.11 Mesh Networks Efficiency vs. Packet Size 100 90

Efficiency %

80 70 60 50

BPSK-1/2 QPSK-3/4 16QAM-3/4

40 30

0

500

1000 Packet Size (bytes)

1500

2000

Figure 6.3: Efficiency of 802.16 MCF

packet on its own divided by the amount of time it takes to transmit the packet with 802.16 headers and guard times. We plot the efficiency as a function of packet size for BPSK-1/2, QPSK-3/4 and 16QAM-3/4 rates (Table 5.2). We see that the efficiency of 802.16 is much higher than the efficiency of 802.11a DCF (Fig. 6.2). As the packet size increases, the efficiency of all three rates converge much more quickly than in the case of 802.11a. The reason for this is that the overhead time is only 37.5µs (three 12.5µs slots) in the case of 802.16, whereas the overhead time for 802.11a is 318µs. Also the size of the 802.16 header is only 8 bytes compared to 22 bytes of the 802.11 header. IEEE 802.16 has the smaller header because it does not transmit MAC addresses in each transmission. All that is needed to identify the transmitter and the receiver is the link identifier which is 2 bytes long.

Chapter 6. TDMA Scheduling for 802.11 Mesh Networks

118

c

2006 IEEE. P. Djukic and S. Valaee, “802.16 MCF for 802.11a based mesh networks: A case for standards re-use”, in Proceedings of 23rd Queen’s Biennial Symposium on Communications, 2006.

Figure 6.4: Modified Network Stack

6.3

802.16 Embedded over 802.11 Hardware

In this section, we outline how the 802.16 packets are embedded into 802.11a broadcasts. The embedding is done with a software patch residing on the mesh nodes (Fig. 6.4). The software upgrade is implemented as an overlay MAC layer on the mesh nodes. We insert an 802.16 mesh driver between the network layer and the 802.11 driver. The 802.16 driver emulates the 802.16 mesh protocol by packing packets coming from the network layer into 802.16 PDUs, which are then passed to the 802.11 network interface for transmission. Each 802.16 packet is embedded into an 802.11a broadcast packet, so that the resulting packets can be scheduled with the 802.16 mesh protocol. In order to achieve true TDMA, necessary for the operation of 802.16 mesh protocol, we force the 802.11 back-off procedure to use at most one slot by setting the 802.11 QoS parameter

Chapter 6. TDMA Scheduling for 802.11 Mesh Networks

119

c

2007 IEEE. Reprinted, with permission, from P. Djukic and S. Valaee, “Towards guaranteed QoS in mesh networks: Emulating WiMAX mesh over WiFi hardware”, in The Fourth Workshop on Wireless Ad hoc and Sensor Networks WWASN, 2007.

Figure 6.5: Embedding 802.16 PDU over 802.11a

CWmin = CWmax = 1.1 Incoming 802.16 packets are also padded so that the resulting 802.11 packets can be aligned on TDMA boundaries. Fig. 6.5 shows the embedding of the 802.16 packets into the 802.11a broadcast packets.2 Since 802.16 mesh protocol coordinates the nodes and it also provides ARQ services, RTS-CTS-ACK exchanges are not necessary. We have shown in Section 6.1 that the RTSCTS-ACK exchanges decrease the efficiency of the 802.11a protocol, so removing them also makes our protocol more efficient than the 802.11a DCF. The length of the PLCP preamble includes 12 training symbols as well as one OFDM symbol that carries the PLCP header, for a total of 13 symbols each with the duration of 4µs [21]. 802.11 headers include 2 bytes for the symbol field (specific to 802.11a), as well as 24 bytes for 802.11 MAC headers [21, 67]. The transmission time required to transfer L bits of the 802.16 embedded packet 1

For real implementations, this assumption depends on the firmware support. For example, the Intel PRO/Wireless 2900bg cards allow this change [108]. 2 It is possible to embed the packets in conjunction with the sub-network access protocol (SNAP) [109]. However, this is not necessary under Linux because the kernel allows the definition of custom ethernet types. Therefore, we opted to use an embedding with a smaller size (without the SNAP sub-header).

Chapter 6. TDMA Scheduling for 802.11 Mesh Networks

120

(Fig. 6.5) is given by :

802.11 Ttran



 214 + L = 95µs + × 4µs, 802.11 rmod

(6.1)

where 95µs is the total time required for the TDIFS , TaSlotTime and the time required for 13 symbols of PLCP preamble. In (6.1), 214 bits of overhead come from 802.11a headers 802.11 (208 bits) and the minimum of 6-bit pad, and the rmod is the number of data bits in an

802.11 OFDM symbol. The bottom part of Fig. 6.5 shows how 802.16 MAC interprets the embedded transmission. We force the 802.16 MAC to use 4 802.11a OFDM symbols as a single 802.16 OFDM symbol. We set the symbol duration TSymbol = 16µs. We modify the settings for the 802.16 MAC protocol to make the front guard time 9 OFDM symbols and the back guard time OFDM symbol. We choose the value of 9 for the front guard because that is longer than the time required to transmit 802.11a overhead with any modulation rate. The number of back guard symbols is the minimum required to transmit 802.11a padding. The 802.16 overlay MAC layer transmission time is:

802.16 Ttran

=



  P + 64 802.11 , + 10 × 16µs > Ttran 802.16 rmod

(6.2)

802.16 where rmod is the number of data bits in an 802.16 symbol, P is the size of the network

layer packet in bits and 64 bits of overhead come from the 802.16 MAC headers. Because of the number of guard symbols, the transmission time seen by the 802.16 overlay MAC is strictly greater than the time required to transmit the packet over 802.11a, ensuring 802.11a collisions do not occur. If a corrupted packet is received by a node, the DCF on the receiver node selects a timeout of TEIFS = 658µs before the basic procedure can start on that node. This timer is cancelled if another packet is received correctly before the timer expires. The embedding

121

Chapter 6. TDMA Scheduling for 802.11 Mesh Networks Efficiency vs. Packet Size

Efficiency %

80

60

40

BPSK-1/2 QPSK-3/4 16QAM-3/4

20

0 0

500

1000 Packet Size (bytes)

1500

2000

Figure 6.6: Efficiency of embedded 802.16 mesh protocol

module always checks if the previous transmission was successful before transmitting a new packet, and it cancels all packets requested by the 802.16 module during active transmissions. Even though 802.16 schedules ensure there are no collisions, the packets may still get corrupted over the wireless channel. This procedure makes sure that if an EIFS timer is on at a transmitter node, the packets from that node do not get delayed past the start time of the next transmitting node. At most one packet from any transmitter will collide with packets from another node. If a collision happens, the DCF back-off mechanism cannot increase CWmax more than 1 so (6.2) still holds. Fig. 6.6 shows the efficiency of the embedded 802.16. The efficiency of the embedded 802.16 is defined as the amount of time required to transmit the packet on its own divided by the amount of time it actually takes to transmit the packet and all headers and the waiting times required by 802.11a. We plot the efficiency as a function of packet size for BPSK-1/2, QPSK-3/4 and 16QAM-3/4 rates (Table 5.2). We see that the efficiency of 802.16 is higher than the efficiency of 802.11a DCF (Fig. 6.2), however it is lower

Chapter 6. TDMA Scheduling for 802.11 Mesh Networks

122

Achievable Bandwidth vs. SDU Size (QPSK−3/4) 25

20

BW (Mbps)

15

10

802.16 (embedded) 802.16 (10MHz) 802.16 (20MHz) 802.11a (RTS−CTS−ACK) 802.11a (broadcast)

5

0

0

504

1008 SDU Size (bytes)

1512

2016

c

2007 IEEE. Reprinted, with permission, from P. Djukic and S. Valaee, “Towards guaranteed QoS in mesh networks: Emulating WiMAX mesh over WiFi hardware”, in The Fourth Workshop on Wireless Ad hoc and Sensor Networks WWASN, 2007.

Figure 6.7: Comparison of Data Rates than the efficiency of 802.16 (Fig. 6.3). This supplements our observations from the previous section. The efficiency of the embedded scheme is smaller than 802.16 because the overhead of transmitting the packet is higher, e.g. 10 symbols compared to three symbols for 802.16. The efficiency of the embedded scheme is higher than 802.11 because the duration of the 10 802.16 overhead symbols is shorter than the 318µs added in each transmission using RTS-CTS-ACK exchanges.

6.4

Bandwidth Comparison

Fig. 6.7 compares the bandwidth of the embedded transmissions to the bandwidths that can be achieved using 802.16 and 802.11a when the modulation is QPSK-3/4. The bandwidth is defined as the number of bits divided by the actual time required to transmit those bits. The bandwidth for 802.11a DCF is found by assuming that there are no collisions in the channel and the sender and receiver use RTS-CTS-ACK exchanges. We

Chapter 6. TDMA Scheduling for 802.11 Mesh Networks

123

note that this is a very optimistic view of the 802.11 bandwidth. First, we observe that the achievable bandwidth of the embedded scheme (“802.16 (embedded)”) is comparable to the bandwidth that can be achieved using 802.16 hardware. The achievable bandwidth of the embedded scheme is always less than what can be achieved with 802.16 hardware operating at 20MHz (“802.16 (20Mhz)”), and more than the bandwidth of 802.16 hardware operating at 10MHz (“802.16 (10Mhz)”). This corresponds to the fact that the actual symbol duration is 16µs in the embedded scheme compared to 12.5µs and 25µs for 802.16 hardware operating at 20MHz and 10MHz, respectively. Second, we observe that the achievable bandwidth is higher than the achievable bandwidth of 802.11a DCF (“802.11 (RTS-CTS-ACK)”). This is because the embedded scheme has less overhead, even with the added padding. In fact, the 802.11a bandwidth shown in the figure is a very optimistic view of 802.11a bandwidth since it does not take into account collisions, nor regular back-offs. In practise, the throughput of 802.11a is much lower, especially with multiple active connections. Third, the achievable bandwidth of the embedded 802.16 is lower than the bandwidth that could be achieved by using broadcasts only (“802.11 (broadcast)”). This is due to the padding of 802.11a broadcast packets. Again, the bandwidth shown for the 802.11a broadcast is optimistic since we are not accounting for back-off time.

6.5

Simulation Results

In this section, we simulate the performance of the MAC layers discussed in the previous sections with ns-2 [20]. We have changed the ns-2 simulator to include 802.11a physical layer, 802.16 with its physical layer and 802.16 embedded over 802.11a. For the simulations using 802.16 mesh protocol, we have also implemented Bellman-Ford 802.16 scheduling algorithms discussed in Chapter 5.

Chapter 6. TDMA Scheduling for 802.11 Mesh Networks

124

In all of our scenarios, the traffic is setup the way it would be in a typical mesh network with the mesh nodes connecting to the base-station (point-of-presence). Each node sets up an FTP connection to the base-station and the base-station sets up an FTP connection to each mesh node. Each FTP connection is used to transfer a large file (10Mb). Since the network is static it does not make sense to use any ad-hoc network routing protocols such as AODV [110] or DSR [111], rather the routes are chosen with a simple minimum-hop distance criterion. This is in-line with the current implementations of mesh networks, which use OSPF [2, 9]. In our simulations, we use the 802.16 physical layer operating at 20MHz since the standard mandates this for the license-exempt 5GHz band, which is also used by 802.11a. We use 20ms frame size. With this frame duration, 802.16 operating at 20MHz has 1600, 12.5µs long slots in each frame, while 802.16 embedded in 802.11a has 1250, 16µs slots. The first, 35 slots of the frame are allocated for the control sub-frame (5 control sub-frame transmission opportunities). The rest of the slots are allocated for the data sub-frame, in terms of 7 slot long transmission opportunities for 802.16 operating at 20MHz and 5 slot long transmission opportunities for 802.16 embedded over 802.11a hardware. For simplicity, we use centralized scheduling only, so the entire data sub-frame is allocated with the centralized scheduling protocol.

6.5.1

Example 1: Simple Topology

Fig. 6.9 shows a small mesh network we use to examine the performance of our embedding scheme. Node v1 acts as the base-station. All links use the modulation of QPSK-3/4. We use the Schedule-MinLen-MinDelay algorithm for TDMA scheduling in the network (Fig. 6.9). In the case of the network in Fig. 6.8, the scheduler is able to allocate uplink and downlink bandwidths 384kbytes/second for each node in the case of 802.16 embedded over 802.11a hardware and 484kbytes/second for 802.16 operating at 20MHz. In both cases, the round trip TDMA scheduling delay is 20ms for each node.

Chapter 6. TDMA Scheduling for 802.11 Mesh Networks

e2

e5

v1

v3

v4

e4

e6

e1

e3

v2

Figure 6.8: Example Mesh Network

e1 e2 e3 e4 e5 e6 0

200

400

Control Sub-frame

600

800

1000

1200

1400

1600

Centralized Scheduling

(a) 802.16 @ 20MHz e1 e2 e3 e4 e5 e6 0

250 Control Sub-frame

500

750

1000

1250

Centralized Scheduling

(b) 802.16 Embedded Over 802.11a

Figure 6.9: 802.16 Schedule used for the topology in Fig. 6.8

125

Chapter 6. TDMA Scheduling for 802.11 Mesh Networks

126

Accumulated Traffic vs. Time 70 802.16 (20MHz) 802.16 (embedded) 802.11a (RTS−CTS−ACK)

Accumulated Traffic (Mbytes)

60

50

40

30

20

10

0

0

10

20

30

40

50 Time

60

70

80

90

100

Figure 6.10: Cumulated traffic for the topology in Fig. 6.8

We compare the total accumulated traffic of 802.16 operating at 20MHz, our embedding scheme and 802.11a for the first 100 seconds of the simulation in Fig. 6.10. We also compare total throughput of each node (uplink and downlink) during the first 100 seconds of the simulation in Fig. 6.11. We use the same naming scheme as in Fig. 6.7. We see that 802.16 performs better than our embedding scheme. This is because our embedding technology is limited by the overhead of 802.11a. All simulations use maximum transmission unit size of 512 bytes, which results in 802.16 operating at 20Mhz to be about 70% more efficient than 802.16 embedded over 802.11a (Fig. 6.7). We see from Fig. 6.11 that throughput of 802.16 operating at 20Mhz is 68% higher than the throughput of 802.16 embedded over 802.11a consistent with our observations in Fig. 6.7. However, our embedding scheme still performs significantly better than 802.11a, because it does not waste bandwidth on unnecessary collisions. In addition to increasing total throughput by 33%, our scheme also ensures that the wireless channel is shared more evenly than in 802.11a. For example, with our embedding scheme, throughput of node 4 improves more than 3 times (Fig. 6.11).

Chapter 6. TDMA Scheduling for 802.11 Mesh Networks

127

350 Node 2 Node 3 Node 4

Average Throughput (kbytes/sec)

300

250

200

150

100

50

0

802.16 (20MHz)

802.16 (embedded)

802.11a (RTS−CTS−ACK)

Figure 6.11: Throughput for the topology in Fig. 6.8

6.5.2

Example 2: Chains

In this section, we examine the performance of scheduling algorithms on chain topologies. In each scenario, we create a chain of mesh nodes where one of the end nodes is the base-station and all other nodes in the topology are regular mesh nodes. We use the Bellman-Ford scheduler to find all transmission schedules for 802.16 mesh protocol simulations. We plot total throughput, achieved by all nodes, in Fig. 6.12. We see that our embedding scheme performs at least almost 3 times better than 802.11a for the 3 node chain and almost 5 times better than 802.11a for the 6 node chain. The performance gain is significantly higher than what is shown in Fig. 6.7 because 802.16 mesh protocol eliminates collisions that would normally exist if 802.11a hardware was used on its own.

6.6

Implementation under Linux OS

Portions copied under licence from Access Copyright, from P. Djukic and S. Valaee, ”802.16 mesh networking,” in WiMax: Standards and Security (S. Ahson and M. Ilyas, eds.), pp. 147-174, CRC

Chapter 6. TDMA Scheduling for 802.11 Mesh Networks

128

450 802.16 (20MHz) 802.16 (embedded) 802.11a (RTS−CTS−ACK)

400

Total Throughput (kbps)

350

300

250

200

150

100

50

0

3

4

5

6

Chain Length

Figure 6.12: Throughput for Chain Topology In this section, we show how the embedded 802.16 transmission described in Section 6.3 can be implemented in the Linux OS [112]. Actual implementation described in this section is beyond the scope of the thesis. This section presents a design document suitable for implementation as a future work. Fig. 6.13 shows the architecture of the Linux kernel implementation. The implementation adds a Linux kernel module, that behaves like a network card (“802.16 Driver”). The module binds itself to a real wireless card, and acts as a proxy on behalf of that card. The module is also linked in with the 802.16 module (“802.16 implementation”), which we have already tested with ns-2. Packets coming from the network layer are first accepted by the 802.16 driver, and then passed to the 802.16 implementation. The 802.16 implementation queues up the packets until they should be transmitted according to the schedule for connection that the packets are traversing. When packets come from the wireless card, Linux kernel transfers them to the 802.16 module where they are filtered out, stripped of 802.16 header data, and passed on to the network layer. The kernel c Press, 2007. Further reproduction prohibited. CRC Press, 2007.

Chapter 6. TDMA Scheduling for 802.11 Mesh Networks

129

Figure 6.13: Linux Implementation module also interacts with the OSPF routing process on the node. Since the 802.16 protocol is connection oriented, the OSPF should be notified when a new node joins the network, and the connection to that node is created. The kernel module sends a message to OSPF to indicate the presence of a new link to a neighbour. In addition to the kernel module, our implementation requires a CLI program that resides in user space and that forwards management SAP primitives to the 802.16 implementation. The CLI program supports the commands necessary to manage the 802.16 module. This interface is very similar to the scripting commands we use in our ns-2 implementation. The Linux implementation presents several challenges not present when we integrated our 802.16 module into ns-2. First, the Linux kernel default timer support is in the order of milliseconds and we need microsecond support for our 802.16 module. This means that the module should be implemented on Linux distributions with real-time support and microsecond clock precision. Real-time linux support is distributed as a patch for the “vanilla” kernel sources [113]. Second, we have the requirement that the wireless card should support changing of CWmin and CWmax. We have found that the Linux driver for the Intel PRO/Wireless 2200BG card, which supports 802.11abg operation, has a

Chapter 6. TDMA Scheduling for 802.11 Mesh Networks

130

c

2007 CRC Press. Copied under licence from Access Copyright, from P. Djukic and S. Valaee, “802.16 mesh networking,” in WiMax: Standards and Security (S. Ahson and M. Ilyas, eds.), pp. 147-174, CRC Press, 2007. Further reproduction prohibited.

Figure 6.14: Subnets in a 802.16 mesh network. QoS interface, which allows setting of CWmin and CWmax [108]. We have also found that the Linux driver for the Atheros based 802.11a chipsets allows setting of CWmin and CWmax [114].

6.6.1

Mesh Network Addressing

The 802.16 mesh network protocol specifies how addressing is accomplished in the MAC layer. We now propose a network layer addressing scheme that keeps mesh routers simple to implement. We partition the network into access networks and the mesh backbone. There is an access network at every mesh node, allowing WTs to connect to the mesh in the network layer (Fig. 6.14). In order to keep the address space for the whole network small, each access network uses the same block of private IP addresses in the range 192.168.2.0/24 [115]. The mesh nodes use network address translation (NAT) [116] to allow WTs to access the mesh backbone. In the backbone, mesh routers use a range of private addresses different from the range in the access networks. We assume that mesh routers are assigned addresses in the

Chapter 6. TDMA Scheduling for 802.11 Mesh Networks

131

range 10.0.0.0/8 with the assignment of IP addresses closely matching the assignment of 16-bit 802.16 mesh IDs. We set the last 16-bits of the IP address to the mesh ID and keep bits 8-15 of the addresses for subnet classification. For example, address 10.1.0.4 corresponds to the address of mesh router 4 on subnet 1. Since the base-station acts as a point-of-presence for the network, it also provides NAT services for the packets traversing the mesh backbone. We assign each mesh router to multiple subnets to simplify how QoS is enforced in the network (Fig. 6.14). The backbone network uses two subnets, one with high QoS (centralized scheduling) and one with low QoS (distributed scheduling). We use the source marking model of QoS [117], where WTs mark the level of service they require in the TOS field of their outgoing IP packets [117, 118]. Mesh routers examine the TOS field of packets coming from their access network and depending on the QoS specified, either forward the packet over the high QoS subnet or the low QoS subnet. This way all per packet QoS decisions are made at the edge of the mesh backbone and the forwarding engine on each mesh router is simplified. The QoS classification of packets is done by the routing module, before the convergence sub-layer, which we describe next.

6.6.2

QoS Aware Convergence Sub-layer

The 802.16 standard specifies that the IP layer should be connected to the 802.16 MAC layer with a CS that classifies IP packets to MAC connections. The standard omits the details of how CS should operate. In this section, we propose a CS that uses an assignment of QoS subnets to mesh router logical interfaces and an assignment of logical interfaces to 802.16 logical connections that takes advantage of 802.16 QoS in the network layer. The CS is designed to work together with the 802.16 scheduler, so that packets traversing the high QoS subnet are sent over the centralized scheduling tree and the packets traversing the low QoS subnet are routed dynamically with a protocol such as OSPF [23] over the links scheduled with the decentralized scheduling protocol. We include

Chapter 6. TDMA Scheduling for 802.11 Mesh Networks

132

c

2007 CRC Press. Copied under licence from Access Copyright, from P. Djukic and S. Valaee, “802.16 mesh networking,” in WiMax: Standards and Security (S. Ahson and M. Ilyas, eds.), pp. 147-174, CRC Press, 2007. Further reproduction prohibited.

Figure 6.15: Routing and Neighbour Tables in a 802.16 Router. the 802.16 decentralized scheduling in this discussion for completeness, even though we did not address decentralized 802.16 scheduling elsewhere in the thesis. The main complication in implementing 802.16 with a routing such as OSPF is that in centralized scheduling a large number of MAC links may change their state at the same time. A link changes its state if it is allocated bandwidth and it previously was not allocated bandwidth, or if it has bandwidth and then its bandwidth is taken away by the base-station. A large number of simultaneous changes in the entire topology would cause a wave of updates in a dynamic routing protocol. While the routing tables are converging, data packets may bounce around the network, causing large delays. On the other hand, in decentralized scheduling, only a few links change status at any given time. This is a normal operation of the MAC layer expected from dynamic routing protocols and consistent with the QoS provided by decentralized scheduling. The CS resides in the operating system of mesh routers (Fig. 6.15). The routing table resides in the network layer and it associates network addresses to interfaces. Our CS is a combination of logical interfaces given to the network layer (IP) and the way the interfaces classify packets. There is one logical interface for all packets traversing the

Chapter 6. TDMA Scheduling for 802.11 Mesh Networks

133

centralized scheduling routing tree (centralized scheduling interface – CSI) and multiple logical interfaces, one for each logical connection on the router (data interfaces – DIs). For CSI the routing table associates the entire high QoS subnet range with the interface. For DIs, the routing table associates individual neighbour IP addresses with the interface. The neighbour link table resides in the MAC layer and it matches mesh IDs to MAC links. The idea behind having a special interface for all connections using centralized scheduling is to hide the routing taking place in the MAC layer from the network layer. We did not address routing algorithms in this thesis, however these algorithms are still required to be a part of 802.16 network modules. The routing table assigns the high quality QoS subnet to CSI, which performs bridging for the high QoS traffic in the network. When a packet comes to the CSI, the interface finds out the mesh ID of destination mesh node from the destination IP address and forwards the packet on the MAC link that is the next hop in the centralized scheduling tree. In effect, the CSI interface presents the network layer with static routes along the centralized scheduling routing tree, even though the actual routes may change when the link schedule changes. DIs have a one-to-one correspondence with the 802.16 MAC links. They are used to forward packets on the low QoS subnet, where routing tables are established with a dynamic routing protocol such as OSPF. When an IP packet is forwarded on a DI, it is transmitted to the mesh router connected with the corresponding MAC link, so DIs are assigned peer addresses corresponding to their peer’s 16-bit mesh IDs. Fig. 6.15 and Fig. 6.16 show how the logical interfaces and routing work together in practise. Fig. 6.15 shows the routing table and the neighbourhood table for node 2 in Fig. 6.16. Each mesh node belongs to both the high QoS and the low QoS subnet. The routing table associates the entire high QoS subnet with the CSI interface and it also associates each of the connections established with the node’s neighbours individually as peer-to-peer links in the low QoS subnet. In the case of CSI, the next-hop link ID is

Chapter 6. TDMA Scheduling for 802.11 Mesh Networks

134

c

2007 CRC Press. Copied under licence from Access Copyright, from P. Djukic and S. Valaee, “802.16 mesh networking,” in WiMax: Standards and Security (S. Ahson and M. Ilyas, eds.), pp. 147-174, CRC Press, 2007. Further reproduction prohibited.

Figure 6.16: Network Scenario for Fig. 6.15. found from the routing table of mesh IDs that CSI obtains from centralized scheduling messages. In the case of a DI, the link ID is obtained from the interface number associated with DI. The convergence sub-layer needs to notify routing protocols when one of the assignment of MAC link bandwidth changes. We do not specify the exact notification method since it is OS specific. For example, in the Linux operating system, it is sufficient to change the status of the logical MAC interface, which automatically updates the forwarding tables in the kernel [112].

6.6.3

User End-to-End Security

IEEE 802.16 provides a mechanism to encrypt traffic traversing MAC links at each hop. However, manufacturing mesh routers that can perform encryption at high speeds, available at the physical layer, may be costly. In this section, we propose an end-to-end encryption in the network layer that takes the encryption out of the mesh backbone. In our scheme, encryption is handled at the edge of the network. WTs establish a VPN tunnel with a VPN server outside of the mesh backbone, so no encryption is required by

Chapter 6. TDMA Scheduling for 802.11 Mesh Networks

135

c

2007 CRC Press. Copied under licence from Access Copyright, from P. Djukic and S. Valaee, “802.16 mesh networking,” in WiMax: Standards and Security (S. Ahson and M. Ilyas, eds.), pp. 147-174, CRC Press, 2007. Further reproduction prohibited.

Figure 6.17: End-to-end VPN tunnelling. mesh routers. We add a VPN server after the POP, but before the traffic goes on the Internet (Fig. 6.17). The server is on a special “unprotected” subnet. WTs negotiate IPSec tunnels with the VPN server and after the VPN tunnel is established, WTs get an IP address on the “protected” subnet 10.254.0.0/16. The VPN tunnel may be in any mode, e.g. encryption of the payload or both IP headers and the payload. This means that both the client WT and the authentication server should support IPSec NAT Traversal (NAT-T), which allows the use of IPSec over NAT [119,120]. This is not a problem since NAT-T is a part of modern operating systems [121]. The QoS is oblivious to IPSec since the type of service field is copied from the header of the inner, plain text, IP packet to the header of the outer, encrypted, packet [122]. Although this end-to-end encryption scheme protects WT traffic, it does not protect the 802.16 mesh management traffic. This means that 802.16 nodes should still use the primary security association encryption to communicate with the base-station. However, since this presents a small amount of traffic, implementing it in practise may not be hard.

Chapter 7 Joint Rate Control and Scheduling Distributed rate control has an important practical application in wireless multi-hop networks, such as mesh networks. Mesh networks provide cost-effective wireless coverage of large geographical areas. Because of the need for cost-effectiveness, mesh networks should operate autonomously, meaning that mesh nodes should decide their end-to-end connection rates independently and without operator assistance (distributed rate control). The operator should be able to specify the characteristics that the final end-to-end rates should satisfy, such as fairness, maximum throughput or maximum profit and the network should autonomously provide end-to-end rates achieving these characteristics. The distributed rate control problem, which has been previously solved in wireline networks [79], has proved hard to solve in wireless networks [49–55]. Unlike wireline networks where link rates are constant and independent of other links, in wireless networks, link rates are dependent on other, interfering, links. Wireless links interfere (conflict) with each other, if their packets collide in simultaneous transmissions. Wireless conflicts are resolved with medium access control (MAC) protocols, which schedule conflicting links to transmit at non-overlapping times. Since conflicting links are time-sharing the wireless bandwidth, changes in the network layer due to congestion control, change wireless link capacities. It is therefore necessary to perform rate control optimizations jointly 136

Chapter 7. Joint Rate Control and Scheduling

137

with wireless scheduling. The main contribution of this chapter is the solution of the joint rate control and wireless scheduling problem in TDMA wireless networks. Since TDMA technologies such as 802.16 mesh [1], 802.11s [2] and overlay TDMA on top of 802.11 (Chapter 6), are now being introduced into the market, besides its theoretical contributions, our work is also timely. Our solution relies on the scheduling algorithms we developed in Chapter 3 and Chapter 4, which separate the complexity associated with finding optimal TDMA schedules from TDMA scheduling. These scheduling algorithms allow us to state the set of necessary and sufficient conditions for schedulability of end-to-end rates and to find a TDMA schedule that supports these end-to-end rates in polynomial time. We formulate the joint rate control and wireless scheduling problem as a utility maximization, subject to networking constraints for end-to-end connections and scheduling constraints for the existence of a schedule that supports the end-to-end rates. The utility function is chosen so that at the optimum point, the end-to-end connection rates satisfy some criterion specified by the network operator. We use the Lagrangian dual of the joint rate control and wireless scheduling problem to decompose the networking aspects of the problem (utility maximization and networking constraints) from TDMA scheduling. The Lagrangian dual allows us to develop an iterative sub-gradient algorithm to solve the original problem. The iterative algorithm finds the end-to-end rates that maximize network utilization independently of TDMA schedules at every iteration. As the iterations progress, the TDMA schedules get closer to the end-to-end rates and in the final iteration, the TDMA schedule matches the optimum end-to-end rates. We devise centralized and decentralized versions of the sub-gradient algorithm. In the centralized version of the algorithm all end-to-end rates and schedules are determined by a single, global network controller. In the decentralized version of the algorithm, endto-end rates are determined independently by each connection and a TDMA scheduler finds schedules. We show that both algorithms achieve the maximum network utilization.

Chapter 7. Joint Rate Control and Scheduling

138

Since TDMA networks are stop-and-go queueing systems, network stability is independent of the joint routing and scheduling algorithm, i.e. network queues are always finite.

7.1

Enhanced Network Model

So far, we have assumed that a routing protocol establishes routes, which are represented by a set of paths Pl ∈ P. Paths are associated with end-to-end connections, which introduce load into the network in bits per second with each connection, x : P → R+ , where R+ is the set of non-negative numbers. Each connection (path) has a utility function Ul : R → R, which reflects the “satisfaction” of the connection with its connection rate xl . Consistent with the rest of the rate utility maximization literature, we assume that each Ul (xl ) is differentiable, concave, non-decreasing and that all end-to-end rates are limited with 0p  x  M , where x = [x1 , . . . , xL ]T ,  is member-wise comparison for vectors, 0p is a p × 1 vector of 0 and M = [M1 , . . . , Mp ]T is the vector of maximum user rates. The objective of this chapter is to find the set of rates that maximize a global utilization of the network

U (x) =

X

Ul (xl ),

(7.1)

Pl ∈P

while network capacity is fully utilized. We say that a set of end-to-end rates fully utilizes the network capacity, if an increase in the end-to-end rates results in link rates that cannot be scheduled. We discuss the choice of utility functions shortly. We have established the necessary and sufficient conditions for the existence of a TDMA schedule in Chapter 3. In that chapter, we show that the necessary and sufficient condition for existence of a schedule with link durations ∆ over Nd slots is that there exists a “transmission order” o = [o1 , . . . , or ]T ∈ {0, 1}r with a corresponding set of starting times π = [π1 , . . . , πm ]T , where ∀ej ∈ E : vj ∈ Πj , such that the following set of

Chapter 7. Joint Rate Control and Scheduling

139

inequalities is satisfied:

LT ∆ ≤ C T π + Nd o ≤ Nd 1r − U T ∆,

(7.2)

where 1r is a r × 1 vector of 1s, L is an m × r matrix whose entries are Lik = 1 if Cik = −1 and Lik = 0 otherwise and U is an m × r matrix whose entries Uik = 1 if Cik = 1 and Uik = 0 otherwise. We use the fixed number of slots, Nd , which corresponds to the number of slots in the data sub-frame, since the utility optimization we present shortly eliminates the need for end-to-end connection rate scaling.

7.2

Joint Rate Control and Scheduling

In this section, we solve the following joint rate control and scheduling problem

max

x,∆,π,o

U (x) =

p X

Ul (xl )

(7.3a)

l=1

s.t 0p  x  M HT x −

1 h b·∆− b Tf Tf

C T π + oNd + U T ∆  Nd 1r −C T π − oNd + LT ∆  0r m r x ∈ Rp , ∆ ∈ Z m [0,N ) , π ∈ R , o ∈ {0, 1}

(7.3b) (7.3c) (7.3d) (7.3e) (7.3f)

The objective function maximizes the sum of all end-to-end rate utilities, U (x). The endto-end rates are restricted by the limit on maximum rate with (7.3b) and the amount of time available on each link with (7.3c). We derive the scheduling constraints (7.3d) and (7.3e) by breaking (7.2) into two parts. We note that the link durations are the information shared between the two layers, which allows us to maximize the end-to-end rates in a cross-layered fashion.

Chapter 7. Joint Rate Control and Scheduling

140

The utility functions are chosen by the network operator so that at the optimum point, the end-to-end rates satisfy some desired characteristics. Many useful utility functions take the following form [127]

Ul (xl ) = ωl

x1−γ l , 1−γ

∀Pl ∈ P,

(7.4)

where for γ → 1, Ul (xl ) → ωl log(xl ), so the optimization corresponds to finding endto-end rates satisfying weighted proportional fairness [79], for ωl = 1 and γ → 0 the end-to-end rates correspond to maximum throughput and for ωl = 1 and γ → ∞ the rates correspond to max-min fairness [127]. The operator can choose γ for the network and ωl for each connection, so that the network autonomously achieves one of the above goals. It is also possible to have utility functions that take the combination of traffic and profit into account [128], so the operator can also set the utility functions so that at the optimum point the network operates at maximum profit.

We decompose the optimization (7.3) with generalized Bender’s decomposition [129]. We note that the optimization is hard to solve due to the binary integer variables for transmission order, so we fix the transmission order and solve the following sub-problem

min

− U (x)

(7.5a)

s.t 0p  x  M

(7.5b)

x,r

H T x − r  0m

(7.5c)

r ∈ S(o),

(7.5d)

141

Chapter 7. Joint Rate Control and Scheduling where S(o) is the set of “schedulable” link rates n 1 b · (∆ − h1m ) : S(o) = r = Tf ∆∈

Zm [h,Nd ] , ∃π

m

∈Z :

o C π + U ∆  Nd (1r − o), −C π + L ∆  Nd o T

T

T

T

and link rates r = [r1 , . . . , rm ]T are found with (2.6). We convert the problem to a minimization and remove the starting times π from it since they are implicitly known from o and r. If we denote the minimum of (7.5) with V (o), the solution to the original cross-layered congestion problem (7.3) is

max − V (o).

o∈{0,1}r

(7.6)

In the rest of this section, we devise an iterative sub-gradient algorithm that solves (7.5). We also show how to modify the algorithm to solve the full optimization (7.3). We show that the algorithm works correctly in two steps. First, we show that there is no duality gap between (7.5) and its Lagrangian dual and then we show that the sub-gradient algorithm converges to the optimum value of the Lagrangian dual.

We note that if the transmission order is fixed, we can use convex programming to find a solution to optimization (7.5). However, if the transmission order is not known, the iterative procedure is necessary to decompose TDMA scheduling from rate control and solve (7.6). Also, as we show in the next section, the sub-gradient algorithm can be easily distributed, so it is more applicable to wireless multi-hop networks than a centralized convex optimization.

142

Chapter 7. Joint Rate Control and Scheduling

7.2.1

The Lagrangian Dual

We associate Lagrange multipliers λ = [λ1 , . . . , λm ]T with the capacity constraints (7.5c) to obtain the Lagrangian function of (7.5) L(x, r, λ) = −U (x) + λT [H T x − r] T

T

(7.7)

T

= λ H x − U (x) − λ r. The Lagrangian relaxation of the optimization (7.5) is obtained by finding the minimum of the L(x, r, λ) over all feasible end-to-end rates x and their corresponding link rates r D(λ, o) =

min

0xM,r∈S(o)

L(x, r, λ) (7.8)

= DU (λ) + DS (λ, o) where DU (λ) =

min

0p xM

λT H T x − U (x)



(7.9)

is the part of the Lagrangian relaxation depending on user rates only and

DS (λ, o) = min − λT r r∈S(o)

(7.10)

is the part of the Lagrangian relaxation depending on scheduling only. So the Lagrangian relaxation decomposes the problem in two independent parts. This decomposition property is consistent with [49–51]. The Lagrangian dual of (7.5) is the maximum of the Lagrangian relaxation D(λ, o) over all λ < 0m Dλ(o) = max D(λ, o) λ0m

(7.11)

= max DU (λ) + max DS (λ, o), λ0m

λ0m

Chapter 7. Joint Rate Control and Scheduling

143

where we use the notation that Dλ(o) is the maximum of the Lagrangian dual.

Proposition 7.1 (There is no Duality Gap). Suppose that   D(λ, o) λ = argmax

(7.12)

Dλ(o) = D(λ∗ , o) = V (o).

(7.13)



λ0m

then

Proof. This is a consequence of the differentiability of U (x) and the fact that all constraints in (7.5) are linear inequalities [130, pp. 662-664].

7.2.2

Sub-gradient Algorithm for the Lagrangian Dual

Since D(λ, o) is non-differentiable, we devise a sub-gradient algorithm [125] to solve the dual optimization (7.8) and by Proposition 7.1, the utility optimization with the fixed transmission order (7.5). First, we derive sub-gradients of D(λ, o) and then present the sub-gradient algorithm. Sub-gradients of a function f : Rm → R at λ ∈ Rm are all vectors ξ ∈ Rm such that

f (µ) ≤ f (λ) + ξ T (µ − λ),

∀µ  0m .

(7.14)

Proposition 7.2 (Subgradient of the Lagrangian Dual). If end-to-end rates x∗ and link rates r ∗ solve D(λ, o), then H T x∗ − r ∗ is a sub-gradient of D(λ, o) at λ.

144

Chapter 7. Joint Rate Control and Scheduling Algorithm 6 RateControl-And-Schedule(ǫ, o) 1: λ(0) ← 0m , ξ(0) ← 0m , v(0) ← −∞, t∗ ← 0, x∗ ← 0, r ∗ ← 0, S(0) ← 0, t ← 1 2: repeat  3: x(t) ← argmin0p xM λ(t)T H T x − U (x) 4: r(t) ← argminr∈S(o) −λ(t)T r 5: ξ(t) ← H T x(t) − r(t) 6: if ξ(t) 6= 0 then 7: s(t) ← ǫ/t/||ξ(t)|| 8: S(t) ← S(t − 1) + s(t) 9: λ(t + 1) ← (λ(t) + s(t)ξ(t))+ 10: v(t) ← max{v(t − 1), D(λ(t), o} 11: t∗ ← I(v(t) ≤ v(t − 1))t∗ + I(v(t) > v(t − 1))t 12: x∗ (t) ← [S(t − 1)x∗ (t − 1) + s(t)x(t)]/S(t) 13: r ∗ (t) ← [S(t − 1)r ∗ (t − 1) + s(t)r(t)]/S(t) 14: end if 15: t←t+1 16: until ξ(t) = 0 17: return x∗ (t), r ∗ (t) Proof. For any µ  0m we have: D(µ, o) =

min

L(x, r, µ)

oxM,r∈S(o)

≤ L(x∗ , r ∗ , µ) ∗

(7.15) T



= −U (x ) + H x − r

 ∗ T

= D(λ, o) + H T x∗ − r ∗ where D(λ, o) = −U (x∗ ) + H T x∗ − r ∗

T

T

µ (µ − λ)

λ by the premise.

With the known sub-gradient of D(λ, o), we devise an iterative sub-gradient algorithm to solve the Lagrangian dual (RateControl-And-Schedule algorithm). The algorithm takes a step size parameter ǫ and a fixed transmission order o as its inputs. We show how the choice of ǫ impacts the speed of convergence of the algorithm with simulations. The algorithm is initialized with λ(1) = 0m and works in iterations, starting at time t = 1. For vector a, we use the notation that a(t) = at is the value of vector at iteration

145

Chapter 7. Joint Rate Control and Scheduling t. At each iteration, the algorithm: • Finds end-to-end connection rates (step 3) with   x(t) ← argmin λ(t)T H T x − U (x) ,

(7.16)

0p xM

• Finds the link rates that maximize λT r (step 4) with 

r(t) ← argmin r∈S(o)

T



− λ(t) r ,

(7.17)

• Updates the Lagrange multipliers (steps 7–9) with  + λ(t + 1) ← λ(t) + s(t)ξ(t) ,

(7.18)

where s(t) =

ǫ t||ξ(t)||

(7.19)

is the step size and ξ(t) = H T x(t) − r(t) is the sub-gradient at time t, ||ξ(t)|| =

p

(7.20)

ξ(t)T ξ(t) is the L2 norm of ξ(t) and (·)+

sets the negative entries of its vector argument to 0. • Updates the current maximum value of the dual v(t) (step 10), the time the last maximum value was recorded (step 11) and the current estimate of the primal solution x∗ (t) and r ∗ (t) (steps 12–13). We note that by step 12 and 13, x∗ (t) and r ∗ (t) are a weighted sum of the values of x(t) and r(t) from previous iterations



x (t) =

t X i=1



µ(i)x(i) and r (t) =

t X i=1

µ(i)r(i),

(7.21)

Chapter 7. Joint Rate Control and Scheduling

146

where µ(i) =

s(i) s(i) . = Pt S(t) s(k) k=1

(7.22)

The algorithm stops when ξ(t) = 0, since at that point D(λ, o) = V (o).

7.2.3

Correctness of the Sub-gradient Algorithm

The RateControl-And-Schedule algorithm without steps 10–13 is known as the projected sub-gradient method [123]. The projection comes from the (·)+ operator in step 9, which finds the Euclidian projection of λ(t) on Rm [0,∞) . In [123, Theorem 2.7], it is shown that for the projected sub-gradient method,

lim λ(t) = λ∗

t→∞

and

lim D(λ(t), o) = Dλ(o).

t→∞

Most previous works using the sub-gradient algorithm in wireless networking research [49–52] use the algorithm without steps 10–13 and stop at this result. However, in practical situations, it is also useful to converge to the optimum point monotonically, which is done through steps 10 and 11 of the RateControl-And-Schedule algorithm, and it is also necessary to recover the solution of the primal problem, which is done in steps 12 and 13 of the RateControl-And-Schedule algorithm. We now show that v(t) converges monotonically to the optimum of the Lagrangian dual and that x∗ (t) and r ∗ (t) converge to the solution to the primal problem (7.5). We show how to take advantage of the monotonicity of v(t) in the next section. We present the proof of convergence of x∗ (t) and r ∗ (t) as three propositions. First we show that v(t) converges to the maximum of the Lagrangian dual. Then we show that x∗ (t) and r ∗ (t) converge to a feasible solution of the primal problem (7.5). A feasible solution to an optimization problem is a solution that satisfies all of the constraints in the problem. Finally, we show that x∗ (t) and r ∗ (t) converge to a small “neighbourhood” of the solutions of the Lagrangian dual. Together with Proposition 7.1, these three results show that the

147

Chapter 7. Joint Rate Control and Scheduling algorithm finds the solution of the primal problem.

We note that all three propositions follow from previous research in the sub-gradient algorithm [123–126], however these results are scattered in various works and it is not easy to draw connections between them. We combine these scattered results and present them as one, cohesive, result, which is specialized to our algorithm. Proposition 7.3 (Iterative Algorithm Converges to the Maximum of the Lagrangian Dual).   lim v(t) − Dλ(o) = 0.

(7.23)

t→∞

Proof. This proposition can be obtained as a straight forward application of [125, Theorem 3.1, pp. 53]. Nevertheless, we provide a proof here as it explains why we keep track of v(t) in step 10 of RateControl-And-Schedule algorithm. Consider the optimum Lagrange multiplier vector λ∗ . By step 9 of the RateControl-And-Schedule algorithm, ǫ ξt − λ∗ ||2 t ||ξt || ǫ2 ǫ ξ T (λt − λ∗ ) + 2 = ||λt − λ∗ ||2 + 2 t||ξt || t ∗ D(λt , o) − D(λ , o) ǫ2 ≤ ||λt − λ∗ ||2 + 2ǫ + 2, t||ξt || t

0 ≤ ||λt+1 − λ∗ ||2 ≤ ||λt +

(7.24)

where the first inequality is true due to the (·)+ operator and the second inequality is true because ξt is a sub-gradient (D(λt , o) − D(λ∗ , o) ≥ ξ T (λt − λ∗ )). We expand ||λt − λ∗ ||2 for all t, to get

0 ≤ ||λt+1 − λ∗ ||2 ≤ ||λ1 − λ∗ ||2 +

t X i=1

= ||λ∗ ||2 +

t X i=1

t



D(λi , o) − D(λ∗ , o) X ǫ2 + i||ξi || i2 i=1 t

D(λi , o) − D(λ∗ , o) X ǫ2 2ǫ + , 2 i||ξi || i i=1

where the equality is true since λ1 = 0m by initialization.

(7.25)

148

Chapter 7. Joint Rate Control and Scheduling

We note that due to step 10 of RateControl-And-Schedule algorithm, v(t) = maxi=1,...,t D(λ(i), o), so substituting v(t) into the right most term of (7.25), we get

∗ 2

0 ≤ ||λ || +

t X i=1

t

vt − D(λ∗ , o) X ǫ2 + . 2ǫ i||ξi || i2 i=1

(7.26)

Rearranging (7.26), we get P ||λ∗ ||2 + ǫ2 ti=1 1/i2 , 0 ≤ D(λ , o) − vt ≤ P 2ǫ/M ti=1 1/i ∗

(7.27)

where M ∈ R is chosen so that M ≥ maxi=1...t ||ξi ||. The left inequality comes from the fact that D(λ∗ , o) is the maximum value of the Lagrangian dual, so

D(λ∗ , o) ≥ max D(λ(i), o) = v(t). i=1,...,t

(7.28)

Since, t t X X 1 1 = ∞, < ∞ and lim lim 2 t→∞ t→∞ i i i=1 i=1

the proposition is proved. Corollary 7.1 (λ(t∗ ) converges to λ∗ ).

lim λ(t∗ ) = λ∗

t→∞

(7.29)

Proof. This follows from the fact that by step 11 of the RateControl-And-Schedule algorithm, in iteration t, n o t∗ = min s : 0 ≤ s ≤ t, v(s) = v(t)

(7.30)

and that by Proposition 7.3 as t → ∞, v(t∗ ) = D(λ(t∗), o) = Dλ(o). Fig. 7.1 shows the interpretation of Proposition 7.3. We show the value of the

149

Chapter 7. Joint Rate Control and Scheduling

HT x ≤ r r ∈ S(o), 0  x  M −U (x)

D(λ(t∗ ), o) (x∗ , r ∗ )

x

(x(t), r(t)), t → ∞

r

v(t) = Dλ (o), t → ∞

Figure 7.1: Interpretation of Proposition 7.3 Lagrangian relaxation in iteration t, evaluated at the currently maximum index t∗ , D(λ(t∗ ), o), with the dashed line and the negative utility −U (x) with the solid line. As t → ∞, v(t) converges to the maximum of the Lagrangian relaxation over all nonnegative λ, Dλ (o). This maximum is obtained at x(t) and r(t). Since, the Lagrangian dual is only constrained over the set 0  x  M , r ∈ S(o), x(t) and r(t) may not be in the feasible set of solutions to (7.5), which includes the capacity constraints (7.5c). So as t → ∞, x(t) and r(t) are optimal for the Lagrangian relaxation, however they may not be feasible solutions to the primal problem. We now show that if x∗ (t) and r ∗ (t) are obtained with (7.21), through steps 12 and 13 of the RateControl-And-Schedule algorithm, then

x∗ = lim x∗ (t) and r ∗ = lim r ∗ (t) t→∞

t→∞

are the optimal solutions to the Lagrangian relaxation and also satisfy the constraint

150

Chapter 7. Joint Rate Control and Scheduling (7.5c) of the primal problem.

Proposition 7.4 (Feasibility of x∗ and r ∗ ). x∗ and r ∗ are feasible solutions to the prime problem (7.5) 0p  x∗  M ,

r ∗ ∈ S(o),

H T x∗ − r ∗  0m .

(7.31)

Proof. First, we note that x∗ (t) and r ∗ (t) are always feasible solutions to the Lagrangian dual 0p  x∗ (t)  M ,

∀t :

r ∗ (t) ∈ S(o),

(7.32)

since a linear combination of vectors from a convex set also belongs in the set. Second, we note that H T x∗ (t) − r ∗ (t) = H T

t X

µ(i)x(i)

i=1

=

t X i=1

!



t X

µ(i)r(i)

i=1

!

  µ(i) H T x(i) − r(i)

(7.33)

t

+ λ(t + 1) − λ(1) 1 X  s(i)ξ(t) = . S(t) i=1 S(t) Since lim S(t) = lim

t→∞

t→∞

t X i=1

ǫ = ∞ and t||ξ(t)||

lim λ(t + 1) = λ∗ < ∞,

t→∞

we conclude that H T x∗ − r ∗  0m .

(7.34)

Proposition 7.5 (x∗ and r ∗ solve the Lagrangian dual).

lim

min ′ ′

t→∞ {x ,r }∈Λ∗

n ′ o ′ ||x − x∗ || + ||r − r ∗ || = 0,

(7.35)

151

Chapter 7. Joint Rate Control and Scheduling ′



where Λ∗ is the set of all x and r that solve the Lagrangian dual at λ∗ , n ′ ′ o ′ ′ ′ ′ Λ∗ = x , r : 0p  x  M , r ∈ S(o), λ∗T H T x − U (x) − λ∗T r ≤ D(λ∗ , o) .

Proof. We note that since

Ps

i=1





µ(i) = 1, for any {x , r } ∈ Λ∗ ,

t

X ′

′ ∗ ∗ µ(i)x (i) kx − x (t)k = x −



t i=1

X ′

∗ µ(i)(x − x (i)) =



i=1 t X i=1

and similarly ′

t

X ′



∗ ∗ µ(i) x − x (i)

µ(i)(x − x (i)) = i=1



kr − r (t)k ≤

t X i=1

So, ′



||x − x∗ (t)|| + ||r − r ∗ (t)|| ≤

t X i=1



(7.36)





′ ∗ µ(i) r − r (i)

(7.37)



  ′



µ(i) x − x(i) + r − r(i) ,

(7.38)

for all x and r , and



min ′

{x ,r }∈Λ(t)

( t X i=1

)



 ′



≥ µ(i) x − x(i) + r − r(i)

||x − x∗ (t)|| + ||r − r ∗ (t)|| ≥

min ′ ′

{x ,r }∈Λ(t)

where {x, r} = argmin {x′ ,r′ }∈Λ(t)

( t X i=1

n ′ o ′ ||x − x∗ (t)|| + ||r − r ∗ (t)||

)



  ′ ′



µ(i) x − x(i) + r − r(i) ,

(7.39)

Chapter 7. Joint Rate Control and Scheduling

152

thus



min ′

{x ,r }∈Λ(t)

n ′ o ′ ||x −x∗ (t)||+||r −r ∗ (t)|| ≤



min ′

{x ,r }∈Λ(t)

( t X i=1

)



  ′



µ(i) x − x(i) + r − r(i) .

Since limt→∞ λ(t) → λ∗ and we obtain x(t) and r(t) by solving the Lagrangian relaxation in steps 3 and 4 of the RateControl-And-Schedule algorithm,

lim

min

t→∞ {x′ ,r′ }∈Λ∗

At the same time, t X

o

n ′



x − x(t) + r − r(t) = 0,

µ(i) = 1 and

i=1

(7.40)

ǫ = 0. t→∞ S(t)t||ξ(t)||

lim µt = lim

t→∞

So, the Silverman-Toeplitz theorem [131, Theorem 2, pp. 35] applies and we conclude that lim

t→∞

t X i=1

 µ(i) kx − x(i)k + kr − r(i)k = 0,

(7.41)

proving the proposition. The three propositions show that the algorithm converges to the optimum value of the dual and that it recovers the solution to the primal problem. However, the propositions do not show how fast the algorithm converges to the optimum. The speed of convergence depends on ǫ and is usually shown empirically [125]. We show the speed of convergence of the algorithm for the specific case of 802.16 networks with simulations.

7.2.4

Exhaustive Search for Transmission Orders

At each iteration of the RateControl-And-Schedule algorithm, the link rates are suboptimal since we only search over the space of link rates feasible for the given transmission order o. The optimum link rates are found if step 4 in the algorithm is changed

153

Chapter 7. Joint Rate Control and Scheduling from (7.17) to r(t) ←

argmin o∈{0,1}r ,r∈S(o)



 − λ(t)T r .

(7.42)

With this link update, the value of the Lagrangian dual at iteration t of the RateControl-And-Schedule algorithm is   v(t) = max v(t − 1), DU (λ(t)) + min r DS (λ(t), o) o∈{0,1}   = max v(t − 1), min r D(λ(t), o) . o∈{0,1}

So by Proposition 7.1 and Proposition 7.3 we conclude that

lim v(t) = max min r D(λ, o) = min r V (o),

t→∞

λ0m o∈{0,1}

(7.43)

o∈{0,1}

meaning that the algorithm with the exhaustive search finds the optimum of (7.3). Our approach is similar to the approach taken in [49,50], since we also use the standard sub-gradient method. However, there are three crucial differences. First, due to the choice of step size in our algorithm, the Lagrange multipliers do not correspond to queue lengths. Second, if o is fixed, the scheduling complexity is removed from the problem, so the scheduling part of the optimization can be solved with a linear program. Third, even if o is fixed, i.e. scheduling is sub-optimal, the link rates r always result in a “perfect”, sub-optimal, schedule. The schedule is perfect since it exactly matches the scheduling constraints.

7.3 We

Practical Implementations of the Algorithm now

devise

centralized

and

RateControl-And-Schedule algorithm.

decentralized

versions

of

the

In the centralized version of the al-

gorithm, all end-to-end rates and link rates are determined by a global controller. In the

Chapter 7. Joint Rate Control and Scheduling

154

decentralized version of the algorithm, end-to-end rates are determined individually by each connection and the schedule is determined by a global scheduler. The decentralized version of the algorithm corresponds to the operation of the 802.16 mesh protocol. We also analyze the performance of the centralized and decentralized algorithms in terms of network stability and maximum network utility. We say the network is stable with a joint rate control and scheduling algorithm, if queue lengths of all links remain finite at all stages of the algorithm.

7.3.1

Centralized Algorithm

In the centralized version of the algorithm, there is a central controller that optimizes the rates of all connections and all link durations. After finding the optimum end-toend rates and link durations, the controller activates the TDMA schedule corresponding to the link durations. We assume that the centralized controller knows instantaneously when a new connection enters the network, calculates the optimum allocation of endto-end rates, x∗ , and starts a new TDMA schedule with link rates, r ∗ , in reaction to the change in network load. We note that if transmission order is fixed, the centralized controller can use regular convex programming to find a solution of (7.3), however if the transmission order is not known, iterative procedure is necessary to separate scheduling from the rate control. Since the algorithm is centralized, the final set of end-to-end rates x∗ and link rates ∗

satisfy (2.9). In each frame, a connection l inserts at most xl Tf bits into the network,

which are then transferred hop-by-hop at each router in the network. Since the connection rates and link durations satisfy (2.9), at every hop, the connection is guaranteed that its xl Tf will be transferred to the next hop in the same frame. We note that the queue length at each link ej is at most 2rj Tf . These observations are not surprising considering that TDMA multihop networks are essentially a stop-and-go queueing system [43–45]. Proposition 7.6 (Stability of Centralized Algorithm). Under the centralized algorithm,

155

Chapter 7. Joint Rate Control and Scheduling the highest queue length in the network at any time is

Bmax = 2Tf Cmax ,

(7.44)

where Cmax is the highest bit-rate available in the network. Proof. According to our previous discussion, the queue length is at most twice the product of the link bit-rate and the link duration. The highest possible bit-rate is Cmax and the highest possible link duration is Tf .

7.3.2

Decentralized Algorithm

In the decentralized version of RateControl-And-Schedule algorithm, each connection (node) optimizes its rate independently of all other connections with 

xl (t) ← argmin xl 0≤xl ≤Ml

X

ej ∈Pl



λj (t) − Ul (xl )

(7.45)

and then reports its value of xl (t) to the scheduler. We note that the update (7.45) corresponds to one row of the update in step 3 of RateControl-And-Schedule algorithm. The scheduler uses the reported end-to-end connection rates to calculate the optimal link durations (step 4, RateControl-And-Schedule algorithm) and update the Lagrange multipliers for the network (step 7, RateControl-And-Schedule algorithm). If v(t) was assigned the latest value of the dual D(λ(r), o) (step 10, RateControl-And-Schedule algorithm), the scheduler calculates a new minimum length schedule from the currently calculated average end-to-end rates x∗ (t) with the Schedule-MinLen-MinDelay algorithm.

We have shown in Chapter 4 that the

Schedule-MinLen-MinDelay algorithm scales the end-to-end rates. We denote the scaling in iteration t with αt. In each iteration, the end-to-end rates are given by ˆ ˆ x(t) = α(t)x∗ (t) The scheduler distributes the scaled down end-to-end rates x(t), the

Chapter 7. Joint Rate Control and Scheduling

156

schedule and the Lagrange multipliers for the links, and the process starts again. In this algorithm, each connection keeps track of two values: xl (t), its currently reported end-toend rate, which is used for the distributed algorithm and xˆl (t), its shaped, rate-limited, end-to-end rate, which is its actual end-to-end rate. Assuming that the rate functions are in the form of (7.4), after traffic shaping, the utility of the system is ˆ U (x(t)) =

X

Ul (ˆ xl (t)) =

Pl ∈P

X

ωl

Pl ∈P

[α(t)x∗l ]1−γ 1−γ

(7.46)

= [α(t)]1−γ U (x(t)), ˆ = [ˆ where x(t) x1 (t), · · · , xˆp (t)]T and x∗ (t) = [x∗1 (t), · · · , x∗p (t)]T . Proposition 7.7 (Scaled Utilities Converge to Optimum).

ˆ lim U (x(t)) = U (x∗ ),

t→∞

(7.47)

where x∗ = limt→∞ x∗ (t) are the end-to-end rates when the algorithm converges. Proof. Since α(t) < 1 when end-to-end rates cannot be scheduled and α(t) = 1 when the end-to-end rates can be scheduled, we conclude that limt→∞ α(t) = 1, since by Proposition 7.5, the capacity constraints (7.5c) in the prime problem become supported as t → ∞.

7.4

Application to 802.16 Mesh Networks

The decentralized version of the algorithm corresponds to 802.16 mesh networks using the 802.16 centralized scheduling protocol. In the 802.16 centralized scheduling protocol, the mesh nodes send their end-to-end requests, x(t), to the base-station, which they calculate with the distributed rate control algorithm (7.45). The base-station calculates a network

157

Chapter 7. Joint Rate Control and Scheduling

wide schedule based on the requests with (7.17) and updates the average end-to-end rates and link rates (7.21). The base-station then disseminates the granted end-to-end rates, ˆ x(t). The same management message is used for both requests and grants, except that the nodes set the request flag to true and the base-station sets the grant flag to true. In order to implement steps 9–12 of RateControl-And-Schedule algorithm, which make sure that the total utility increases monotonically with time, we change the meaning of the grant/request field in the centralized scheduling protocol messages.

If the base-station starts a new schedule after v(t) changes in step 9 of

RateControl-And-Schedule algorithm, it sets the grant flag to true (this is deˆ fault behaviour specified in the 802.16 mesh protocol) and transmits x(t). However, if the base-station does not update v(t) in step 10 of RateControl-And-Schedule algorithm), it sets request flag to true and sends the latest set of Lagrange multipliers λ(t). If a node receives a grant message from the base-station, it uses the granted end-toend rates to find a network wide schedule. The schedule becomes active as specified in the 802.16 standard. On the other hand, if a node receives a request message from the base-station, it uses the Lagrange multipliers to calculate the new requested rates x(t) with (7.45) and does not start a new schedule. We simulate 802.16 centralized scheduling incorporated into the decentralized algorithm on the topology shown in Fig. 1.3. All nodes except the base-station (v1 ) act as sources with maximum bandwidth demands of 1.5Mbps.

All nodes use the

Ul (xl ) = log(xl ) as their utility function. This function has the effect of achieving proportional fairness at the optimum point of the algorithm. Mesh nodes decide their rates independently of each other and the base-station decides the schedules. Since the topology is a tree, finding all paths and allocating rates to links is straightforward. Since the exhaustive search takes a long time, we only show results for the RateControl-And-Schedule algorithm using the ranking that sets the delay on all paths to one frame.

For

158

Chapter 7. Joint Rate Control and Scheduling RateControl-And-Schedule Convergence, ǫ = 0.00005 −100

−120

−140

v(t)

−160

−180

−200

−220

−240

0

1

2

3

4

5

6

7

8

Time (seconds)

Figure 7.2: Convergence of the RateControl-And-Schedule algorithm the example in Fig. 1.3, RateControl-And-Schedule algorithm uses the ranking R1 = 0, R3 = 1, R5 = R6 = 2, R8 = R10 = 3, R9 = 4, R7 = 5, R4 = 6 and R2 = 7. In our simulations, we set the 802.16 frame duration to 10ms giving a total of 800 OFDM symbols in each frame. We set the size of the control sub-frame to 70 OFDM symbols, leaving 730 symbols for the data sub-frame. The 70 OFDM symbols in the control sub-frame equate to 10 control messages in each frame. Since there are only 6 nodes in the network, it takes 2 frames to complete one iteration of the algorithm. We have already shown that the algorithm converges to the optimum of the dual, when we showed the correctness of the algorithm. In Fig. 7.2, we show the speed of convergence of the algorithm for ǫ = 0.00005. We plot the value of v(t) as time progresses and see that v(t) converges close to −125. We also found that the optimal value U (x∗ ) ≈ 125, so in both cases the algorithm converges towards the optimum. We note that by about 4s into the simulation, the algorithm converges close to the optimum. This may seem like a long time. However, this should be compared to how long it would take for a human operator to assign this bandwidth and how much that would cost. Clearly, waiting 4s is

Chapter 7. Joint Rate Control and Scheduling preferred to the alternative.

159

Chapter 8 Conclusion This thesis introduces TDMA delay aware scheduling for multihop wireless networks. First, we have shown that the delay unaware TDMA scheduling problem can be solved in two parts. In the first part, a relative transmission order of the links is found. In the second part, the relative transmission order is used together with the conflict graph as the input to a modified Bellman-Ford algorithm, which can find a feasible schedule in polynomial time. For example, TDMA schedules can be found with the distributed BellmanFord algorithm that does not require the direct knowledge of the full network topology. Second, we have shown that the transmission order is related directly to TDMA delay in the network, and proposed a method to find transmission orders with good TDMA delay properties as well as a method that finds one-frame TDMA delay transmission orders on tree topologies. Since the two most important and common examples of wireless multihop networks with tree topologies are sensor networks and mesh networks, the heuristic is applicable in a wide array of scenarios. We have applied the Bellman-Ford scheduling algorithms to 802.16 mesh networks and compared their performance with other centralized scheduling algorithms available in literature, such as graph algorithms [46,47] and other heuristics based algorithms [48], with a realistic comparative analysis in terms of end-to-end delay and end-to-end rates. 160

Chapter 8. Conclusion

161

We have taken into account 802.16 mesh protocol overhead when evaluating rates and shown that allowing multiple transmissions in each frame has a detrimental impact on the performance of 802.16 mesh networks. We have shown that, despite taking advantage of spatial re-use, graph colouring algorithms have lower end-to-end throughput than the 802.16 algorithm which has no spatial re-use, due to the overhead of multiple transmissions. This thesis is the first to take into account TDMA scheduling delay. We show if TDMA scheduling delay is not included during scheduling, resulting schedules introduce huge end-to-end TDMA scheduling delays. The Bellman-Ford algorithms have by far the best performance since they take both overhead and TDMA scheduling delay into account. We have presented a method that allows 802.16 mesh protocol to be used for TDMA data transmissions in 802.11a mesh networks. The method works by embedding 802.16 packets into 802.11a broadcast packets with padding so that all transmissions can be aligned on 802.16 frame boundaries. Our method significantly decreases the overhead inherent in RTS-CTS-ACK exchanges, which are a part of the 802.11 DCF. At the same time, our method removes collisions from the channel because the nodes are communicating in 802.16 TDMA fashion. We have used ns-2 simulations to show that if our method is used in 802.11a based mesh networks, the resulting hybrid MAC can achieve throughput in multiples of what is possible with 802.11a hardware alone. Our method requires only software changes on the nodes using 802.11a for mesh communications. This means that the mesh networks installed with 802.11a hardware today can be upgraded with a software patch to take advantage of 802.16 mesh and do not have to wait for hardware upgrades to 802.11s. We have also solved the distributed rate control problem in TDMA wireless multihop networks. Our solution takes advantage of the Bellman-Ford TDMA scheduling algorithm that provides exact schedule feasibility constraints. We have used the scheduling

Chapter 8. Conclusion

162

constraints to formulate a joint rate control and TDMA scheduling problem. We have then used a sub-gradient algorithm to solve the Lagrangian dual of the joint rate control and TDMA scheduling problem. We have shown that the sub-gradient algorithm converges to the optimum value of the Lagrangian dual and that there is no duality gap, so the sub-gradient problem also solves the joint rate control and TDMA scheduling problem. We show that the Lagrangian dual of the joint rate control and TDMA scheduling problem decomposes the problem into distributed rate control and centralized scheduling. We use this decomposition to devise a distributed rate control and centralized scheduling algorithm for 802.16 mesh networks. Indeed, this algorithm allows the network operator of 802.16 mesh networks to provision desired network characteristics, and the network autonomously reaches those network characteristics without any further input from the operator. We show that since TDMA networks are stop-and-go queueing systems, there is no network stability problem with the distributed algorithm. We use simulations to show that the algorithm performs well in 802.16 mesh networks.

Chapter 9 Future Directions The work in this thesis can be extended in several directions. First possible future direction is to investigate “packetizing” of the TDMA scheduling algorithms. In TDMA networks, links are scheduled to transmit periodically, regardless of their backlog. This is due to the circuit switching nature of these networks. However, this approach is inefficient since links may not always have packets to transmit. A natural extension of TDMA scheduling is to find schedules for backlogged links only. In this case, a TDMA frame becomes variable in size and it changes whenever the set of backlogged links changes. This scheduling approach would extend the current state of the art in this research area [132]. After packetizing the scheduling algorithms, a possible research direction is to investigate randomized versions of the “packetized” scheduling algorithms. The decentralized version of the scheduling algorithm takes some time to converge to a schedule and it also requires a distributed termination procedure, which notifies all wireless nodes when the schedule is converged. In packetized environments, this may produce large delays from when the schedule is required, to when it becomes available. On the other part of the spectrum of wireless scheduling algorithms, there are randomized scheduling algorithms such as CSMA/CA. They ignore scheduling and avoid collisions by randomizing wireless transmission times, so there is no need to wait for schedules. However, random163

Chapter 9. Future Directions

164

ized scheduling approaches are far from achieving the throughput available in wireless networks. It may be possible to develop a hybrid scheduling algorithm that takes our scheduling approach and uses it for intelligent randomization. As the schedule is converging, the nodes have a better idea of what the schedule is, however there is uncertainty in this knowledge until the convergence of the schedule is announced throughout the network. The hybrid approach uses this partial knowledge of the schedule to find a distribution of the link’s random transmission time. Unlike in the approaches such as CSMA/CA where the distribution of the transmission times is uniform, our random distribution will make links more likely to transmit close to their scheduled time. So, as the schedule converges, the links are more likely to transmit at their scheduled times and there are fewer and fewer collisions in the network. Second possible research direction is to investigate the scheduling algorithms that take into account multiple wireless channels. For example, if OFDMA is used as the physical layer, instead of OFDM, it is possible to schedule links in frequency, as well as in time. In this case, each frequency has its own conflict-graph, which only includes the links transmitting at that frequency. The scheduling algorithm is then executed at each frequency to find schedules at that frequency. The challenging part of this research is to find the best channel assignment and the best schedule jointly. In the case of joint channel and time scheduling, the scheduling problem becomes a non-linear integer program. At this point, it is unclear how this problem can be simplified.

Appendix A Complexity Results In this appendix, we present complexity results for the TDMA scheduling problem. The TDMA scheduling problem is to find a conflict-free TDMA schedule over N slots, which can be stated directly from Proposition 3.1 as follows: Problem A.1 (Conflict-Free Scheduling over N slots – N -CFSCH). Given conflict graph − → − → G c (E, C, f c ), N slot frame and a set of link durations ∆ : E → Z[0,N ] , is there a set of activation times in the frame σ : E → Z[0,N ] such that for every pair of conflicting links − → (ei , ej ) with the conflict ck ∈ C : f c (ck ) = (ei , ej ):

∆i ≤ σj − σi + N I(σj < σi ) ≤ N − ∆j

?

Here, I(·) is the indicator function, which is 1 when its argument is true and 0 when its argument is false. A closely related problem is to find a feasible transmission order, which can be stated from Theorem 1 as follows: Problem A.2 (Feasible Transmission Order for N slots – N -FTO). Given conflict graph − → − → G c (E, C, f c ), N slot frame and a set of link durations ∆ : E → Z[0,N ] , so that for − → ∀ck ∈ C : f c (ck ) = (ei , ej ), lk = ∆i and uk = N − ∆j , is there a transmission order 165

166

Appendix A. Complexity Results o : C → {0, 1} such that for every cycle θ in the conflict graph X 

ck ∈{θ}+

  X  uk − ok N − lk − ok N ≥ 0 ?

(A.1)

ck ∈{θ}−

Here a cycle is an ordered set of conflicts θ ∈ C r , r is the number of conflicts in the conflict graph , {θ}+ is the set of arcs in cycle θ traversed in the positive direction, {θ}− is the set of arcs in cycle θ traversed in the negative direction. The difference between the two problems is that in the TDMA scheduling problem (N -CFSCH) we are looking for a conflict-free schedule, which defines a transmission order, while in the feasible transmission order (N -FTO) we are looking for a transmission order, which results in a feasible schedule. In this appendix, we show that the difficulty in TDMA scheduling is to find a feasible transmission order. Since the transmission order is also related to TDMA delay, this result shows that it makes sense to use heuristics like the one in Section 4.3, which suggests transmission orders with low TDMA delay.

A.1

Overview

We prove the complexity of N -FTO in two steps. First, we show complexity of generalized feasible transmission order problem for N -slots (N -GFTO). Then, we reduce the complexity of N -FTO from N -GFTO. The generalized feasible transmission order allows schedulability constraints that are independent of the link durations: Problem A.3 (Generalized Feasible Transmission Order for N slots – N -GFTO). Given − → − → conflict graph G c (E, C, f c ), N slot frame and maps l : C → Z and u : C → Z, is there a transmission order o : C → {0, 1} such that for every cycle θ in the conflict graph

ck

X  ∈{θ}+

  X  uk − ok N − lk − ok N ≥ 0 ? ck

∈{θ}−

(A.2)

Appendix A. Complexity Results

167

− → We note that if ∀ck ∈ C : f c (ck ) = (ei , ej ), lk = ∆i and uk = N − ∆j , then N -GFTO is exactly N -FTO. An instance of N -GFTO may not have a realization in terms of TDMA schedules for wireless multihop networks. It is an abstraction that we use as a stepping stone to show the NP-completeness of N -FTO. Since N -GFTO is a generalization of N -FTO, “TDMA schedules” and “transmission orders” have an abstract meaning that may not correspond to real TDMA schedules and transmission orders. We show that N -GFTO is NP-complete by reduction from 3-SAT [56]. An instance of 3-SAT consists of a set of n binary variables V = {V1 , . . . , Vn } and a set of m clauses C = {C1 , . . . , Cm }. Each variable Vi ∈ V is associated with two literals Vi and V i ; literal Vi is true if and only if the variable Vi is true, while literal V i is true if and only if the variable Vi is false. Each clause Ci ∈ C consists of three literals and is true if one or more of the literals is true. The boolean expression represented by the instance of 3-SAT is true if and only if all the clauses are true. Formally, the 3-SAT problem is: Problem A.4 (3-SAT). Given a set of 3-literal clauses C = {C1 , . . . , Cm }, over the set of logical variables V = {V1 , . . . , Vn }, is there a truth assignment to V such that all clauses in C are satisfied? Example A.1 (3-SAT). Let, V = {V1 , V2 , V3 , V4 } and C = {c1 , c2 , c3 }, where

c1 = (V1 , V 2 , V3 ), c2 = (V 1 , V3 , V4 ), c3 = (V1 , V2 , V 4 ),

(A.3)

be an instance of the 3-SAT problem with 4 variables and 3 clauses. This 3-SAT problem corresponds to the following boolean expression:

F = (V1 ∨ V 2 ∨ V3 ) ∧ (V 1 ∨ V3 ∨ V4 ) ∧ (V1 ∨ V2 ∨ V 4 ),

(A.4)

where ∨ is the boolean or operation and ∧ is the boolean and. The expression F = true if V1 = true and V3 = true.

168

Appendix A. Complexity Results

SAT [Garey, Johnson 1979]

[Garey, Johnson, Stockmeyer 1976]

3-SAT

3-GFTO

3-FTO

N -GFTO

N -FTO

N -GC

3-GC [Odijk 1998]

N -CFSCH

Figure A.1: Relationship between NP-complete problems

We reduce NP-completeness of N -GFTO from 3-SAT by showing that each instance of the 3-SAT can be transformed in polynomial time to a special instance of N -GFTO, so that the original instance of 3-SAT has a truth assignment if and only if the special instance of N -GFTO has a feasible transmission order. As a “warm-up”, we first show that finding a generalized transmission order over 3 slots, 3 -GFTO, has a special instance that has a transmission order if and only if a corresponding instance of 3-SAT has a truth assignment. Then, we show that for N > 3, N -GFTO has a similar special instance that also has a transmission order if and only if a corresponding instance of 3-SAT has a truth assignment. Our proof uses the ideas from the proof that attempts to show that 3-SAT can be reduced to 3 colouring of a graph [98–100]. However, our proof corrects a mistake in that proof. We show the relationship between various NP-complete problems in Fig. A.1. Since we reduce NP-completeness of our problems from 3-SAT, whose NP-completeness was reduced from SAT in [56], our NP-completeness results hold. SAT is a generalized version

169

Appendix A. Complexity Results σlx elx

− → Gl (El , Cl , f l ),

ela

elc

σly ely

σlz elz

N =3

eld

elb

eo σo

ele

Figure A.2: The Conflict Sub-graph of 3-SAT, which allows an arbitrary number of literals in each clause. Another way to show the reduction is to take the approach in [86] and show that graph colouring with 3 colours (3-GC) is a special case of N -CFSCH and then reduce NP-completeness of N -FTO from N -CFSCH (shown with dashed lines). However, since the reduction of 3-GC from 3-SAT was actually not proved in [98], despite being often cited in textbooks [99, 100], this would present a fallacy in our argument and make the reduction incorrect.

A.2

Computational Complexity of 3-GFTO

We now prove that finding a generalized feasible transmission order over N = 3 slots (3-GFTO) is NP-complete. In the proof, we create a special instance of 3-GFTO from a given instance of 3-SAT and show that the instance of 3-GFTO has a transmission order if and only if the instance of 3-SAT has a true assignment. We note that the special instance of 3-GFTO is not likely to correspond to a real instance of a TDMA scheduling problem. − → In our proof, we use the graph Gl (El , Cl , f l ) in Fig. A.2. The undirected version of this graph is commonly used in attempts to show complexity of colouring with three colours (3-GC) by reduction from 3-SAT [98–100]. As we show in the following lemma, this graph has a behaviour similar to a logical OR gate. The graph has 9 vertices and we

170

Appendix A. Complexity Results

σla = 2

elx

ela

elx

σlx = 0

ela

σlx = 0

elc

σld = 2

eld

elc

σlc = 0 ely

σlc = 0

elb

eo σo = 0

σly = 0

ely σly = 0

elz

ele

σlz = 0

elb

elo σlo = 1

σlb = 1

elz

ele

σlz = 1

σle = 0

(a) σx = 0, σy = 0, σz = 0

(b) σx = 0, σy = 0, σz = 1

σla = 2 elx

σla = 2

ela

elx

σlx = 0

ela

σlx = 0

σld = 0 elc

σld = 2

eld

elc

σlc = 1 ely σly = 1

eld

eld

σlc = 1

elb

eo σo = 1

σlb = 0

ely σly = 1

elb

eo σo = 1

σlb = 0

elz

ele

elz

ele

σlz = 0

σle = 2

σlz = 1

σle = 0

(c) σx = 0, σy = 1, σz = 0

(d) σx = 0, σy = 1, σz = 1

σla = 0 elx

σla = 0

ela

elx

σlx = 1

σlx = 1

σld = 0 elc

ela σld = 2

eld

elc

σlc = 2 ely σly = 0

eld

σlc = 1

elb

eo σo = 1

σlb = 1

ely σly = 0

elb

eo σo = 1

σlb = 2

elz

ele

elz

ele

σlz = 0

σle = 2

σlz = 1

σle = 0

(e) σx = 1, σy = 0, σz = 0

(f) σx = 1, σy = 0, σz = 1

σla = 0 elx

σla = 0

ela

elx

σlx = 1

σlx = 1

σld = 0 elc

ela σld = 2

eld

elc

σlc = 1 ely σly = 1

eld

σlc = 1

elb

eo σo = 1

σlb = 2

ely σly = 1

elb

eo σo = 1

σlb = 2

elz

ele

elz

ele

σlz = 0

σle = 2

σlz = 1

σle = 0

(g) σx = 1, σy = 1, σz = 0

(h) σx = 1, σy = 1, σz = 1

Figure A.3: Feasible values of σo

Appendix A. Complexity Results

171

use the notation that the vertices are El = ∪i∈Ei {eli }∪{eo }, where Ei = {a, b, c, d, e}. The extra index l becomes important later when we create the special instance of 3-GFTO − → from a given instance of 3-SAT by combining multiple graphs Gl (El , Cl , f l ). We do not label the arcs since this is not important for the proof and we choose the orientation of the links so that exposition in the rest of the section is easier. As in the rest of the thesis, the arbitrary orientation of the arcs does not introduce any loss of generality. This graph is indeed a conflict graph for a network with 9 liks. For N = 3, there are three available TDMA slots number 0,1 and 3. Any two conflicting links (neighbours − → − → in Gl (El , Cl , f l )) should be scheduled at different timeslots. Graph Gl (El , Cl , f l ) has many feasible “TDMA schedules” σ : Ei → Z[0,2] over N = 3 slots, however if we restrict ourselves to schedules for which σlx , σly , σlz ∈ {0, 1}3 , the graph behaves similarly to a logical OR gate. Consistent with the rest of the thesis, we use the notation that σ(elx ) , σlx . − → Lemma A.1. Suppose we are given a conflict graph Gl (El , Cl , f l ) and a “TDMA Schedule” Sv (σ, ∆, 3), where the activation times are given by σ : El → Z[0,2] and link durations are ∆i = 1, ∀ei ∈ El . If (σlx , σly , σlz ) = (0, 0, 0) then σo is σ = 0. For all other (σlx , σly , σlz ) ∈ {0, 1}3 there is a transmission order in the graph that allows σo = 1. Proof. Fig. A.3a shows that if σlx = σly = σlz = 0, the only possible value for σo = 0. In order to have a conflict-free schedule σla , σlb ∈ {1, 2}, so σlc = 0 and σld , σle ∈ {1, 2}. We note σo = 0 regardless of the values for σla , σlb , σld , σle . Fig. A.3b-h are examples of feasible schedules for which at least one of σx , σy or σz is 1 and σo = 1. Proposition A.1 (NP-completeness of 3-GFTO). Finding a generalized feasible transmission order over 3 slots (3-GFTO) is NP-complete. Proof. We note that 3-GFTO is in NP since if we are given a transmission order o, we can check in polynomial time, with the Bellman-Ford algorithm. If this transmission order induces cycles in the conflict graph and thus has no feasible schedule. We show

Appendix A. Complexity Results

172

that 3-GFTO is NP-complete in two steps [83]. First, we show how to produce a conflict graph and a set of link constraints corresponding to an instance of 3-SAT. Then, we show that the instance of 3-SAT has a solution if and only if there is a transmission order in the conflict graph corresponding with no negative cycles. Given an instance of 3-SAT with n variables and m clauses, we create the correspond− → − → ing instance of 3-GFTO with the conflict graph G c (E, C, f c ). (We show the instance of 3-GFTO that corresponds to the instance of 3-SAT in Example A.1 in Fig. A.4.) The − → − → conflict graph is obtained by combining m sub-graphs G l (El , Cl , f l ) (Fig. A.2), so that they share the vertex eo , and two additional vertices denoted with ea and eb . We categorize the vertices in E into three subsets. The first subset is Ev = {e1 , . . . , en , e1 , . . . , en } and it corresponds to the vertices associated with the literals of variables Vi ∈ V. Each ei ∈ Ev corresponds to the literal Vi and each ei ∈ Ev corresponds to the literal V i . If clause Cl contains Vi then ei ∈ Ev is one of elx , ely , elz for sub-graph Gl and if clause Cl contains V i then ei ∈ Ev is one of elx , ely , elz for sub-graph Gl . The second subset are the vertices in the m subgraphs, Ei = ∪m i=1 {ela , elb , elc , eld , ele }. The third subset are vertices ea , eb and eo , Eo = {ea , eb , eo }. In addition to the arcs that exist among the vertices in Ev ∪ Ei corresponding to the − → − → arcs in G l (El , Cl , f l ), 1 ≤ l ≤ m and arcs connecting eo to eld and ele for 1 ≤ l ≤ m, we also add other arcs to complete the set of arcs, C. We connect the pairs of vertices ei , ei ∈ Ev , which correspond to variable Vi ∈ V with an arc starting at ei and terminating at ei . We also connect eo to each ei , ei ∈ Ev , ea to eo , eo and eb and ea to eb . We denote the transmission order on the arc connecting ei to ei with oi , the transmission order on the arcs connecting ei ∈ Ev to eb with oib , the transmission order on the arcs connecting ei ∈ Ev to eb with with oib , the transmission order on the arcs connecting eo to ea with ooa , the transmission order on the arc connecting eo to eb with oob and the transmission order on the arc connecting ea to eb oab . We denote the activation times for ei ∈ Ev with σi , the activation times for ei ∈ Ev with σ i , the activation time of eo with

173

Appendix A. Complexity Results [1 − 3oab , 2 − 3oab ] e1 o1 e1 e2 o2 [1 − 3oao , 1 − 3oao ] eo ea σo = 1 σ =0

e2

eb σb = 2

e3

a

o3 e3 e4 o4 e4 [1 − 3oob , 2 − 3oob ]

Figure A.4: Instance of 3-GFTO corresponding to Example A.1 σo and the activation times of ea and eb with σa , and σb respectively. We set lk = 1 and uk = 2 for all arcs ck ∈ C \ {cao }, where coa connects eo to ea . We set lao = uao = 1. We use the convention that transmission order on the arc connecting ei to ei is oi = 1 if and only if Vi is true. This convention corresponds to a schedule for which σi = 1 and σ i = 0 if variable Vi is true and σi = 0 and σ i = 1 if variable Vi is false. Suppose that there is solution to the 3-SAT instance, which results in a true assignment for its boolean expression. With the way we defined the ordering for oi , 1 ≤ i ≤ n, we see that for each clause Cl at least one of σlx , σly , σlz is scheduled at time 1. According to Lemma A.1, there is a transmission order in each of the m sub-graphs so that σo = 1. We can then set the transmission order oao = 0 and schedule σa = 0, set the transmission order oab = 0 and schedule σb = 2 and set the transmission order oib = 0 and oib = 0, ∀i : 1 ≤ i ≤ n. Since the schedule is conflict-free, by Theorem 1 the transmission order

174

Appendix A. Complexity Results does not contain any negative cycles.

On the other hand assume a boolean assignment in 3-SAT produces a false answer and assume that this boolean assignment has a feasible transmission order. With this truth assignment, at least one of the m sub-graph must have all elx , ely , elz scheduled at 0, so according to Lemma A.1 we have σo = 0, oao = 1. Since the assignment of variables for which elx , ely , elz = (0, 0, 0) for all clauses is also a true assignment, then for all clauses 1 ≤ l ≤ m we must have elx , ely , elz ∈ {0, 1}3 \ {(0, 0, 0)} \ {(1, 1, 1)}, so σb = 2, oob = 0 and oab = 0. Then the sum of upper and lower bounds along the cycle cab

cao

cob

is: − 1 + 3oab + 1 − 3oao + 2 − 3oao = −1 < 0,

(A.5)

which according to Theorem 1 contradicts our assumption, so a false truth assignment does not have a feasible transmission order. The proof of the Proposition A.1 is closely related to the proof that tries to reduce NP-completeness of 3-GC from 3-SAT presented in [98]. The proof attempts to show that 3-SAT has a truth assignment if and only if the conflict graph in the proof of Proposition A.1 has a colouring with 3 colours. In order to make our instance of the conflict graph equivalent to 3-GC, we set uoa = 2. We note that if uoa = 2, the forward part of the if and only if statement holds. However, if the assignment makes one of the clauses false (and thus the whole expression false), then the sum of bounds along the cycle cab

cao

cob is

− 1 + 3oab + 2 − 3oao + 2 − 3oao = 0.

(A.6)

Since the negative cycle is eliminated, it is impossible to show the reverse part of the if and only if statement, despite the claim in [98–100]. For example, the schedule with σo = 0, σa = 1, σb = 2 is a valid colouring of the graph for any false truth assignments. In fact, the proofs in [98], show a slightly weaker statement that 3-SAT has a truth assignment

Appendix A. Complexity Results

175

if and only if the conflict graph in the proof of Proposition A.1 has a colouring such that σo > σa . This type of colouring does not correspond to 3-GC and it is unclear if NP-completeness of 3-GC can be reduced from it. Corollary A.1 (NP-completeness of 3-FTO). Finding a feasible transmission order over 3 slots (3-FTO) is NP-complete. Proof. NP-completeness of 3-FTO is easily reduced from 3-GFTO, since in 3-FTO ∀ck ∈ − → C : f c (ck ) = (ei , ej ) lk = ∆i and uk = 3 − ∆j .

A.3

Computational Complexity of N -GFTO

In this section, we show that finding a feasible transmission order over N slots (N GFTO) is NP-complete by reduction from 3-SAT. The proof is similar to the reduction of 3-GFTO from 3-SAT, but with a general version of the gadget in Fig. A.2. We use the following graph and the related lemma to show the reduction. →or or or − Definition A.1 (The N node 2-variable OR Graph, Gor N (EN , CN , f N )). Given a com− → plete graph KN (EN , CN , f N )), where EN = {e1 , . . . , eN }, CN = {c1 , . . . , e2N } and →or − → or or − f N (c(i−1)∗N +j ) = (ei , ej ), 1 ≤ i, j ≤ N , the N node OR graph is Gor N (EN , CN , f N ), or where EN = EN ∪ {eN +1 , eN +2 }, CNor = CN ∪ {cN 2 +1 , . . . , cN 2 +N −2 , cN 2 +N −1 } and

− →or f N (cr+j )

  − →   f N (c(i−1)∗N +j ) = (ei , ej ), r = (i − 1)N, 1 ≤ i, j ≤ N     (eN +1 , ej ), r = N 2 , 1 ≤ j ≤ N − 2        (eN +2 , eN −1 ), r = N 2 , j = N − 1

(A.7)

We show the N node OR Graph in Fig. A.5, where we denote eN with eo , eN +1 with ex and eN +2 with ey . Lemma A.2 (The N node 2-variable OR Gate). Suppose we are given an N node OR →or or or − or Graph, Gor N (EN , CN , f N ), and a conflict-free set of activation times σ : EN → Z[0,N ]

176

Appendix A. Complexity Results

σx

e1 KN

ex

σo eo σy

ey

eN −2 eN −1

Figure A.5: The N node OR Graph or over N slots and link durations are ∆i = 1, ∀ei ∈ EN . If σa = σb = σ then σo = σ,

otherwise if σa 6= σb , σo ∈ {0, . . . , N − 1}. Proof. If σa = σb = σ then σ1 , . . . , σN −1 6= σ and the only possible time to schedule σo is σ. It is easy to see that if σa 6= σb , then σo can scheduled at any time. For σo = σ and σ 6= σa , σN −1 = σa ensures that σ ∈ {0, . . . , N − 1} \ {σa }. Similarly, for σo = σ and σ 6= σb , σ1 = σb ensures that σ ∈ {0, . . . , N − 1} \ {σb }. Proposition A.2 (NP-completeness of N -GFTO). Finding a feasible transmission order over N slots (N -GFTO) is NP-complete. Proof. We note that N -GFTO is in NP since we can check for negative cycles in polynomial time with the Bellman-Ford algorithm. To show that N -GFTO is NP complete, we show that we can take any instance of 3-SAT and in polynomial time create an instance of N -GFTO so that the instance of 3-SAT has a truth assignment if and only if the instance of N -GFTO has a transmission order with no negative cycles. Given an instance of 3-SAT, we create an instance of N -GFTO with the conflict graph − → − → G c (E, C, f c ) as follows: − → • For every clause Cl , 1 ≤ l ≤ m add two complete graphs, one with N vertices ( K lN ), − → the other with N − 1 vertices ( K lN −1 ).

Appendix A. Complexity Results

177

• Add two vertices for each variable, label them ei and ei and connect them with an arc starting at ei and terminating at ei . We call ei and ei literal vertices for variable Vi . • For each clause Cl , 1 ≤ l ≤ m, connect one of the literal vertices to vertices − → − → e1 , . . . , eN −2 of K lN , connect one of the literal vertices to vertex eN −1 in K lN , con− → nect one of the literal vertices to vertex eN −2 of K lN −1 and connect vertex eN of − →l − → K N to to vertices e1 , . . . , eN −3 of K lN −1 . • Add three other vertices eo , ea and eb and for each clause Cl , 1 ≤ l ≤ m, connect − → vertex eN −1 of K lN −1 to eo , connect eb to each literal vertex and connect ea to eb and eo to eb . We show the instance of N -GFTO for N = 8 corresponding to the instance of 3-SAT in Example A.1 in Fig. A.6. We denote the arc connecting ei to ei with ci and its transmission order oi , the arc connecting ei ∈ Ev to eb with cib and its transmission order with oib , the arc connecting ei ∈ Ev to eb with cib and its transmission order with oib , the arc connecting eo to ea with coa and its transmission order with coa , the arc connecting eo to eb with cob and its transmission order with cob and the arc connecting ea to eb with cab and its transmission order with oab . We denote the activation times for ei ∈ Ev with σi , the activation times for ei ∈ Ev with σ i , the activation time of eo with σo and the activation times of ea and eb with σa , and σb respectively. We set lk = 1 and uk = N − 1 for all arcs ck ∈ C \ (∪ni=1 {cib , cib } ∪ {cao , cbo , cab }). We set lk = 1 and uk = 2 for ck ∈ ∪ni=1 {cib , cib } ∪ {cbo , cab } and we set lao = uao = 1. We use the convention that transmission order on the arc connecting ei to ei is oi = 1 if and only if Vi is true. This convention corresponds to a schedule for which σi = 1 and σ i = 0 if variable Vi is true and σi = 0 and σ i = 1 if variable Vi is false. Suppose that the original instance of 3-SAT has a truth assignment. Then, for each

178

Appendix A. Complexity Results

[1 − N oab , 2 − N oab ] − → K8 e1 − → K7

o1

]

o1

N

o1

,2



N

e1

[1 −

e2 o2

− → K8 e2

eb

− → K7

e3

ea [1 − N oob , 1 − N oob ]

o3 e3 e4 o4

− → K8 eo

e4

− → K7

[1 − N oob , 2 − N oob ]

Figure A.6: Instance of N -FTO corresponding to Example A.1

179

Appendix A. Complexity Results

clause at least one of the literal vertices is scheduled at time 1, so by Lemma A.2 for each − → − → clause Cl , 1 ≤ l ≤ m, we can schedule eN of K lN at time 1 and eN −1 K lN −1 at time 1, so that there is a transmission order with σo = 1. We can then set the transmission order oao = 0 and schedule σa = 0, set the transmission order oab = 0 and schedule σb = 2 and set the transmission order oib = 0 and oib = 0, ∀i : 1 ≤ i ≤ n. Since the schedule is conflict-free, by Theorem 1 the transmission order does not contain any negative cycles. On the other, hand assume the boolean assignment in 3-SAT produces the false answer and assume that this boolean assignment has a feasible transmission order. At least one clause must have all literals scheduled at 0, so according to Lemma A.2 we have σo = 0, oao = 1. Since the assignment of variables for which (x, y, z) = (0, 0, 0) for all clauses is also a true assignment, then for all clauses 1 ≤ l ≤ m we must have (x, y, z) ∈ {0, 1}3 \ {(0, 0, 0)} \ {(1, 1, 1)}, so σb = 2, oob = 0 and oab = 0. Then the sum of upper and lower bounds along the cycle cab

cao

cob is:

− 1 + N oab + 1 − N oao + 2 − N oao = −N + 2 < 0,

(A.8)

which according to Theorem 1 contradicts our assumption, so a false truth assignment cannot have a feasible transmission order.

Corollary A.2 (NP-completeness of N -FTO). Finding a feasible transmission order over N slots (N -FTO) is NP-complete.

Proof. NP-completeness of N -FTO is easily reduced from N -GFTO, since in N -FTO − → ∀ck ∈ C : f c (ck ) = (ei , ej ) lk = ∆i and uk = N − ∆j .

180

Appendix A. Complexity Results

A.4

Complexity of TDMA scheduling

We show that TDMA scheduling is NP-complete. While, it may be “obvious” that the Bellman-Ford algorithm presents a polynomial transformation between N -FTO and N CFSCH, the proof we present shortly formally shows this relationship and it also shows an interesting relationship between the link ranking function we use in Section 4.3 and TDMA schedules. Proposition A.3 (NP-completeness of N -CFSCH). Finding a conflict-free TDMA schedule N slots (N -CFSCH) is NP-complete. Proof. We note that N -CFSCH is in NP since we can easily check if the conflict-free conditions hold in r steps, where r is the number of arcs in the conflict graph. To show that N -CFSCH is NP-complete, we show that an instance of N -FTO defined by − → − → the conflict graph G c (E, C, f c ) and the link durations ∆ : E → Z[0,N ] has a feasible transmission order o : C → {0, 1} if and only if N -CFSCH has a conflict-free schedule. Suppose that we are given a feasible transmission order o : C → {0, 1}, then we use the Bellman-Ford scheduling algorithm to find the conflict-free schedule σ : E → Z. Since the transmission order is feasible, it has no negative cycles so by Theorem 1 we are guaranteed to find a conflict-free schedule. Conversely, suppose that we are given a conflict-free schedule σ : E → Z, so that that the transmission order for two conflicting links ei and ej with the conflict ck ∈ C : − → f c (ck ) = (ei , ej ) is given by ok , I(σj < σi ). We now show that this transmission order does not have any negative cycles. We use the well known property of tensions in graphs [83], which says that the sum tensions along any cycle θ in the conflict graph is 0, so

ck

X

∈{θ}+

τk − ck

X

τk = 0,

(A.9)

∈{θ}−

− → where for ck ∈ C : f c (ck ) = (ei , ej ), τk , σj − σi . By assumption, the conflict-free

Appendix A. Complexity Results

181

− → property (3.8) holds for the schedule. So, if ck ∈ {θ}+ and ck ∈ C : f c (ck ) = (ei , ej ) then τk = σj − σi ≤ N − ∆j − N I(σj < σi ) = N − ∆j − N ok

(A.10)

− → and if ck ∈ {θ}− and ck ∈ C : f c (ck ) = (ei , ej ) then

− τk = −σj + σi ≤ ∆i − N I(σj < σi ) = ∆i − N ok .

(A.11)

Combining the two, we get (A.1) for every cycle in the graph. We note the definition of the transmission order in Proposition A.3 is the same as the definition we use to the transmission order from the ranking in (3.15). So, a ranking is a conflict-free schedule for which the duration of every link is 1. We can therefore recover a ranking from a transmission order with the Bellman-Ford algorithm by setting the durations of all links to 1 assigning the resulting schedule to the ranking function.

Appendix B Copyright Notices B.1

Copyright permission for IEEE published work

Comments/Response to Case ID: ReplyTo: From: Jacqueline Hansson

Subject: Re: Copyright permission for thesis inclusion

Date: 09/18/2007

Send To: Petar Djukic

cc:

Dear Petar Djukic: This is in response to your letter below, in which you have requested permission to reprint, in your upcoming thesis/dissertation, portions of your IEEE copyrighted material, We are happy to grant this permission. Our only requirement in regards to distributing the paper copies is that the following copyright/credit notice appears prominently on the first page of each reprinted paper, with the appropriate details filled in:

182

183

Appendix B. Copyright Notices [Year] IEEE. information).

Reprinted, with permission, from (complete publication

If the University of Toronto should wish to place portions from your thesis on its website, our only requirement is that, in the case of textual material (i.e., using short quotes or referring to the work within these papers),credit is given to the original source (author, paper, publication) followed by the IEEE copyright line ( [Year] IEEE). In the case of illustrations or tabular material, we require that the copyright line appears prominently with each reprinted figure and/or table. However, if a substantial portion of the original paper is used, then the following credit notice must appear on the first page of the reprinted material, with the appropriate details filled in: Portions reprinted, with permission, from (complete publication information). [Year] IEEE. In the above case, this notice should

also be included:

This material is posted here with permission of the IEEE. Such permission of the IEEE does not in any way imply IEEE endorsement of any of the University of Toronto’s products or services. Internal or personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution must be obtained from the IEEE by writing to [email protected]. By choosing to view this document, you agree to all provisions of the copyright laws protecting it. \ Sincerely, Jacqueline Hansson -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=IEEE Intellectual Property Rights Office 445 Hoes Lane, Piscataway, NJ 08855 Telephone: +1 732-562-3966 Fax: +1 732-562 1746 [email protected] http://www.ieee.org/copyright

Hi, I am including some portions of my work that was published in IEEE

Appendix B. Copyright Notices

184

conference proceedings and journal papers under review in my thesis (e.g. tables, figures, most text). The thesis will be published through the Canadian National Library, which may reproduce, loan, distribute, or sell copies of the thesis by any means and in any form or format. What type of copyright permissions do I need from IEEE? How do I obtain those permissions?

Thanks, Petar Djukic

B.2

Copyright permission for Taylor and Fracis published work

Dear Petar, For thesis, your University licence covers up to 10% of the source material and your request is for 10.7%. On that account, you can either contact the copyrightowner and ask directly for permission or remove 2 pages to fall under 10%. Sincerely, Yann

Yann Quemener Bilingual Permissions Associate Access Copyright, The Canadian Copyright Licensing Agency 1 Yonge Street, Suite 800 Toronto, ON

M5E 1E5

P 416 868 1620 ext. 277 TF 800 893 5777

Appendix B. Copyright Notices

185

F 416 868 1621 [email protected] www.accesscopyright.ca

This message, including any attachments, may contain confidential and proprietary information. If you are not the intended recipient of this message, or have otherwise received this message in error, please notify us immediately by return e-mail and be advised that the use, disclosure or copying of any portion of this message is unauthorized and may be unlawful. Please permanently delete the original message, including any attachments, without making a copy.

Ce message et toutes les pices jointes sont confidentiels et tablis l’intention exclusive de ses destinataires. Si ce message ne vous est pas destin, ou si vous avez reu ce message par erreur, veuillez le mentionner immdiatement a l’expditeur et effacer ce courriel, ainsi que toutes les pices ci-jointes. Toute utilisation, diffusion ou reproduction non autorise est interdite.

-----Original Message----From: Petar Djukic [mailto:[email protected]] Sent: Tuesday, November 20, 2007 10:31 AM To: Access Copyright Permissions Group Subject: Re: [Fwd: Re: Handbook of WiMAX - Cat # 45350] Hi, I didn’t realize you went by percentages of the whole book. I am only copying portions of the chapter "WiMAX: Standards and Security" (less than 25%) of the chapter. Does this change your calculation? petar

Appendix B. Copyright Notices

186

Access Copyright Permissions Group wrote: > > Dear Petar, > > > > -As dissertations and theses are considered to be unpublished works which > > students are required to complete for the purposes of their degree, this > > use is included under the incidental copying provisions of the > > comprehensive licence of your university. If submission to Thesis Canada > > is required, then you are covered by your university’s comprehensive > > licence. > > > > The work "WiMAX/MobileFi: Advanced Research and Technology" is not on our > > excluded works list, and you wish to copy within the allowable limit (less > > than 10% of the entire original work). The international copyright symbol > > , a credit to the author (including an identified artist or illustrator) >> and publisher must be included on all copies made under the licence, as > > well as the following notice "Copied under licence from Access Copyright. > > Further reproduction prohibited." > > > > If however, you decide to publish the paper in a journal or in some other > > traditional way, then additional permission in the form of a transactional > > republication licence would be required. > > > > -Concerning your request for the book "WiMAX: Standards and Security", > > Access Copyright cannot grant you permission on your request as it is > > beyond the limits of the comprehensive licence of your University. Your > > University licence covers up to 10% of the source material >> and your request is for 10.7%. > > > > Therefore you must go directly to the copyright owner for permission: > > > > 6000 Broken Sound Parkway, NW, (Suite 300) Boca Raton, FL 33487, USA > > > > Phone: 1(800)272-7737 or (561)994-0555 > > Fax: 1(800)374-3401 or (561)989-9732 > > > > Sincerely, > > > > Yann > > > > Yann Quemener > > > > Bilingual Permissions Associate > > > > Access Copyright, The Canadian Copyright Licensing Agency > > > > 1 Yonge Street, Suite 800 > >

Appendix B. Copyright Notices

187

> > Toronto, ON M5E 1E5 > > > > P 416 868 1620 ext. 277 > > > > TF 800 893 5777 > > > > F 416 868 1621 > > > > [email protected] > > > > www.accesscopyright.ca > > > > > > > > This message, including any attachments, may contain confidential and > > proprietary information. If you are not the intended recipient of this > > message, or have otherwise received this message in error, please notify > > us immediately by return e-mail and be advised that the use, disclosure or > > copying of any portion of this message is unauthorized and may be unlawful. > > Please permanently >> delete the original message, including any attachments, without making a > > copy. > > > > > > > > Ce message et toutes les pices jointes sont confidentiels et tablis > > l’intention exclusive de ses destinataires. Si ce message ne vous est pas > > destin, ou si vous avez reu ce message par erreur, veuillez le > > mentionner immdiatement a l’expditeur et effacer ce courriel, > > ainsi que toutes les pices ci-jointes. Toute utilisation, diffusion ou > > reproduction non autorise est interdite. > > > > > > > > > > > > > > -----Original Message----> > From: Petar Djukic [mailto:[email protected]] > > Sent: Wednesday, November 07, 2007 3:32 PM > > To: Access Copyright Permissions Group > > Subject: Re: [Fwd: Re: Handbook of WiMAX - Cat # 45350] > > > > I actually need copyright permissions for two books. Both publishers are > > subdivisions of Taylor and Francis, LLC. > > > > WiMAX/MobileFi: Advanced Research and Technology (Hardcover) by Yang

Appendix B. Copyright Notices

188

> > Xiao (Editor), AUERBACH (December 11, 2007) ISBN-10: 142004351X ISBN-13: > > 978-1420043518, Chapter 13, "Centralized Scheduling Algorithms for > > 802.16 Mesh Networks", pages 267--288. > > and > > WiMAX: Standards and Security (WIMAX) (Hardcover) by Syed A. Ahson > > Mohammad Ilyas (Editors) CRC (September 7, 2007) ISBN-10: 1420045237 > > ISBN-13: 978-1420045239, Chapter 8, "802.16 Mesh Networking", pages > > 147-174 > > > > Thanks, > > petar > > > > Access Copyright Permissions Group wrote: > > >> >> Dear Peter, >> >> >> >> Please provide the ISBN of the material " Handbook of WiMAX " and the > > >> exact page numbers of the figures you wish to use in your thesis. >> >> >> >> Please reply to [email protected] >> >> >> >> Sincerely, >> >> >> >> Sue >> >> >> >> >> >> Sue Petrykewycz >> >> Transactional Permissions Associate >> >> Access Copyright, The Canadian Copyright Licensing Agency >> >> 1 Yonge St., Ste. 800 >> >> Toronto, ON M5E 1E5 >> >> Phone: 416-868-1620 ext. 340 >> >> Toll Free: 1-800-893-5777 >> >> General Fax: 416-868-1621 >> >> Department fax: 416-868-1613 >> >> [email protected] >> >> Permission requests can now be sent to [email protected]. >> >> All other licensing inquiries may continue to be directed to >> >> [email protected]. www.accesscopyright.ca >> >> >> >> This message, including any attachments, may contain confidential and >> >> proprietary information. If you are not the intended recipient of this >> >> message, or have otherwise received this message in error, please >> >> notify us immediately by return e-mail and be advised that the use, >> >> disclosure or copying of any portion of this message is unauthorized >> >> and may be unlawful. Please permanently delete the >> >> original message, including any attachments, without making a copy.

Appendix B. Copyright Notices >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> >> > > > >

189

Ce message et toutes les pices jointes sont confidentiels et tablis l’intention exclusive de ses destinataires. Si ce message ne vous est pas destin, ou si vous avez reu ce message par erreur, veuillez le mentionner immdiatement a l’expditeur et effacer ce courriel, ainsi que toutes les pices ci-jointes. Toute utilisation, diffusion ou reproduction non autorise est interdite.

-----Original Message----From: Petar Djukic [mailto:[email protected]] Sent: Monday, October 22, 2007 12:34 PM To: Access Copyright Permissions Group Subject: [Fwd: Re: Handbook of WiMAX - Cat # 45350] As instructed by CCC, I am forwarding this inquiry to you. I am one of the contributors in a chapter in the Handbook of WiMAX Cat # 45350, S. Ahson and M. Ilyas, eds., published through CRC press. I am requesting to use some of the text and figures from the book chapter entitled "802.16 mesh networking", written by me, in my Ph.D. thesis. Thank you, Petar Djukic

Bibliography [1] IEEE standard for local and metropolitan area networks part 16: Air interface for fixed broadband wireless access systems, 2004. [2] IEEE P802.11s/D1.01, Draft STANDARD for Information Technology - Telecommunications and information exchange between systems - local and metropolitan area networks- specific requirements- part 11: Wireless LAN medium access control (MAC) and physical layer (PHY) specifications amendment: ESS mesh networkingIEEE, 2006. [3] Randolph Nelson and Leonard Kleinrock. Spatial TDMA: A collision-free multihop channel access protocol. IEEE Transactions on Communications, COM-33(9):934– 944, September 1985. [4] Ian F. Akyildiz, Weilian Su, Yogesh Sankarasubramaniam, and Erdal Cayirci. Wireless sensor networks: a survey. Computer Networks: The International Journal of Computer and Telecommunications Networking, 38(4):393–422, 2002. [5] Mesh Networks. Putting hot spots in motion mesh-enabled solutions mobile 802.11. http://www.meshnetworks.com/pages/applications/mobile wifi.htm, 2004. [6] Firetide Inc. Designing a firetide instant mesh network. Technical note, Firetide Inc., 2004. 190

191

Bibliography [7] Strix Systems.

Access/one network product description.

http://www.

strixsystems.com, 2004. [8] Tropos Networks. Metro mesh networking with Tropos MetrolMesh architecture. Technology whitepaper, Tropos Networks, 2005. [9] Nortel Networks. Wireless mesh network - extending the reach of wireless LAN, securely and cost-effectively.

http://www.nortelnetworks.com/solutions/wlan/,

November, 2003. [10] Belair Networks. Municipal wireless networks. Solution brief, Belair Networks, 2006. [11] Joseph Camp, Joshua Robinson, Christopher Steger, and Edward Knightly. Measurement driven deployment of a two-tier urban mesh access network. Technical Report TREE0505, Rice University, December 2005. [12] Benjamin A. Chambers. The grid roofnet: a rooftop ad hoc wireless network. M. eng., Massachusetts Institute of Technology, 2002. [13] Steven M. Cherry. The wireless last mile. IEEE Spectrum, 40(9):18–22, September 2003. [14] Brad Schrick and Michael J. Riezenman. Wireless broadband in a box. IEEE Spectrum, 39(6):39–43, June 2001. [15] Tim Fowler. Mesh networks for broadband access. IEE Review, 47(1):17–22, January 2001. [16] Sinem Coleri Ergen and Pravin Varaiya. TDMA scheduling algorithms for sensor networks. Technical report, University of California, Berkley, July 2005.

192

Bibliography

[17] Sinem Coleri Ergen and Pravin Varaiya. PEDAMACS: power efficient and delay aware medium access protocol for sensor networks. IEEE Transactions on Mobile Computing, 5(7):920–930, July 2006. [18] Melisa

Chee.

The

business

case

for

wireless

mesh

networks.

www.nortelnetworks.com, December 2003. [19] Shugong Xu and Tarek Saadawi. Does the IEEE 802.11 MAC protocol work well in multihop wireless ad hoc networks. IEEE Communications Magazine, 39(6):130– 137, June 2001. [20] http://www.isi.edu/nsnam/ns/. [21] IEEE standard for local and metropolitan area networks part 11: Wireless LAN medium access control (MAC) and physical layer (PHY) specifications high-speed physical layer in the 5 GHz band, 1999. [22] Min Cao, Wenchao Ma, Qian Zhang, Xiaodong Wang, and Wenwu Zhu. Modeling and performance analysis of the distributed scheduler in IEEE 802.16 mesh mode. In MobiHoc, pages 78–89, 2005. [23] J. Moy. OSPF Version 2. RFC 1247 (Draft Standard), July 1991. Obsoleted by RFC 1583, updated by RFC 1349. [24] C. Perkins, E. Belding-Royer, and S. Das. Ad hoc On-Demand Distance Vector (AODV) Routing. RFC 3561 (Experimental), July 2003. [25] Hiyun Luo, Songwu Lu, and Vadavur Bharghavan. A new model for packet scheduling in multihop wireless networks. In MobiCom, pages 76–86, 2000. [26] Thyagarajan Nandagopal, Tae-Eun Kim, Xia Gao, and Vadavur Bharghavan. Achieving MAC layer fairness in wireless packet networks. In MobiCom, pages 87–98, 2000.

Bibliography

193

[27] Kamal Jain, Jitendra Padhye, Venkat Padmanabhan, and Lili Qiu. Impact of interference on multi-hop wireless network performance. In Proceedings of MobiCom, 2003. [28] Kamal Jain, Jitendra Padhye, Venkata N. Padmanabhan, and Lili Qiu. Impact of interference on multi-hop wireless network performance. Wireless Networks, 11:4471–487, 2005. [29] Subramanian Ramanathan. A unified framework and algorithm for channel assignment in wireless networks. Wireless Networks, 5(2):81–94, March 1999. [30] Subramanian Ramanathan and Errol L. Lloyd. Scheduling algorithms for multihop radio networks. IEEE/ACM Transactions on Networking, 1(2):166–177, April 1993. [31] Bruce Hajek and Galen Sasaki. Link scheduling in polynomial time. IEEE Transactions on Information Theory, 34(5):910–917, September 1988. [32] Theodoros Salonidis and Leandros Tassiulas. Distributed dynamic scheduling for end-to-end rate guarantees in wireless ad hoc networks. In Proceedings of MobiHoc, pages 145–156, 2005. [33] Murali Kodialam and Thyaga Nandagopal. Characterizing achievable rates in multi-hop wireless networks: The joint routing and scheduling problem. In MobiCom, 2003. [34] Murali Kodialam and Thyaga Nandagopal. Characterizing achievable rates in multi-hop wireless mesh networks with orthogonal channels. IEEE/ACM Transactions on Networking, 13(4):868–880, 2005. [35] Gaurav Sharma, Ravi Mazumdar, and Ness Shroff. On the complexity of scheduling in wireless networks. In Proceedings of Mobicom, 2006.

194

Bibliography

[36] Shashidhar Gandham, Milind Dawande, and Ravi Prakash. Link scheduling in sensor networks: Distributed edge coloring revisited. In Proceedings of INFOCOM, 2005. [37] Jimmi Gr¨onkvist. Comparison between scheduling models for spatial reuse TDMA. In Mobihoc, 2000. [38] Patrik Bjorklund, Peter Varbrand, and Di Yuan. Resource optimization of spatial TDMA in ad hoc radio networks: A column generation approach. In INFOCOM, 2003. [39] Jimmi Gr¨onkvist. Distributed scheduling for mobile ad hoc networks - a novel approach. In PIMRC, pages 964–968, 2004. [40] Jimmi Gr¨onkvist, Jan Nilsson, and Di Yuan. Throughput of optimal spatial reuse TDMA for wireless ad-hoc networks. In Vehicular Technology Conference, pages 2156–2160, 2004. [41] Pablo Soldati, Bj¨orn Johansson, and Mikael Johansson. Proportionally fair allocation of end-to-end bandwidth in STDMA wireless networks. In MobiHoc, 2006. [42] Pablo Soldati, Bj¨orn Johansson, and Mikael Johansson. Distributed optimization of end-to-end rates and radio resources in WiMax single-carrier networks. In Globecom, 2006. [43] S. Jamaloddin Golestani. A framing strategy for congestion management. IEEE Journal on Selected Areas in Communications, 9(7):1064–1077, September 1991. [44] Hui Zhang and Domenico Ferrari. Rate-controlled service disciplines. Journal of High Speed Networks: Special Issue on Quality of Service, 3(5), 1994. [45] Hui Zhang.

Service disciplines for guaranteed performance service in packet-

switching networks. Proceedings of the IEEE, 83(10), 1995.

195

Bibliography

[46] Hung-Yu Wei, Samrat Ganguly, Rauf Izmailov, and Zygmunt Haas. Interferenceaware IEEE 802.16 WiMax mesh networks. In VTC Spring’05, 2005. [47] Bo Han, Wijia Jia, and Lidong Lin. Performance evaluation of scheduling in IEEE 802.16 based wireless mesh networks. Computer Communications, 30:782–792, 2007. [48] Daehyon Kim and Aura Ganz. Fair and efficient multihop scheduling algorithm for IEEE 802.16 BWA systems. In Broadnets, pages 895–901, 2005. [49] Xiaojun Lin and Ness B. Shroff. Joint rate control and scheduling in multihop wireless networks. In 43rd IEEE Conference on Decision and Control, 2004. [50] Xiaojun Lin and Ness B. Shroff. The impact impact of imperfect scheduling on cross-layer rate control in multihop wireless networks. In INFOCOM, 2005. [51] Xiaojun Lin, Ness B. Shroff, and R. Srikant. A tutorial on cross-layer optimization in wireless networks. IEEE Journal on Selected Areas in Communications, 24(8):1452–1463, August 2006. [52] Loc Bui, Atilla Eryilmaz, R. Srikant, and Xinzhou Wu. Asynchronous congestion control in multi-hop wireless networks with maximal matching-based scheduling. In INFOCOM, 2006. [53] L. Xiao, M. Johansson, and Stephen Boyd.

Simultaneous routing and re-

source allocation via dual decomposition. IEEE Transactions on Communications, 52(7):1136–1144, July 2004. [54] Stavros Toumpis and Andrea J. Goldsmith. Capacity regions for wireless ad hoc networks. IEEE Transactions on Communications, 2(4):736–748, July 2003.

196

Bibliography

[55] Mung Chiang, Steven H. Low, A. Robert Calderbank, and John C. Doyle. Layering as optimization decomposition: A mathematical theory of network architectures. Proceedings of the IEEE, 2007. [56] Michael R. Garey and David S. Johnson. Computers and Intractability: A Guide to the Theory of NP-Completeness. W.H. Freemand and Company, 1979. [57] Xiaojun Lin. Simplification of Network Dynamics in Large Systems. Ph. D., Purdue University, August 2005. [58] Imrich Chlamtac and Anat Lerner.

Fair algorithms for maximal link activa-

tion in multihop radio networks. IEEE Transactions on Communications, COM35(7):739–746, July 1987. [59] Israel Cidon and Moshe Sidi. Distributed assignment algorithms for multihop packet radio networks. IEEE Transactions on Computers, 38(10):1353–1361, October 1989. [60] Jinhui Shen, Ionis Nikolaidis, and Janelle J. Harms. A DAG-based approach to wireless scheduling. In ICC, pages 3142–3148, 2005. [61] William K. Hale. Frequency assignment: Theory and applications. Proceedings of the IEEE, 68(12):1497–1514, December 1980. [62] Mansoor Alicherry, Randeep Ghatia, and Li Li. Joint channel assignment and routing for throughput optimization in multi-radio wireless mesh networks. In Mobicom, 2006. [63] Claude E. Shannon. A theorem on coloring the lines of a network. Journal of Mathematics and Physics, 28:148–151, 1949.

Bibliography

197

[64] Haitao Wu, Yunxin Liu, Qian Zhang, and Zhi-Li Zhang. SoftMAC: Layer 2.5 collaborative MAC for multimedia support in multi-hop wireless networks. IEEE Transactions on Mobile Computing, to Appear. [65] Ananth Rao and Ion Stoica. An overlay MAC layer for 802.11 networks. In MobiSys, pages 135–148, 2005. [66] Michael Neufeld, Jeff Fifield, Christian Doerr, Anmol Sheth, and Dirk Grunwald. SoftMAC—flexible wireless research platform. In HotNets, 2005. [67] IEEE standard for local and metropolitan area networks part 11: Wireless LAN medium access control (MAC) and physical layer (PHY) specifications, 1999. [68] Petar Djukic and Shahrokh Valaee. Getting the most of WiFi mesh networks with 802.16 mesh emulation. Accepted to Journal on Ad Hoc and Wireless Sensor Networks, Old City Publishing, London, November 2007. [69] Petar Djukic and Shahrokh Valaee. Link scheduling for minimum delay in spatial re-use TDMA. In Proceedings of INFOCOM, 2007. [70] Petar Djukic and Shahrokh Valaee. Quality-of-service provisioning in multi-service TDMA mesh networks. In Proceedings of 20th International Teletraffic Congress, 2007. [71] Petar Djukic and Shahrokh Valaee. Joint rate control and TDMA scheduling for multihop wireless networks. Submitted to INFOCOM 2008, July 2007. [72] Petar Djukic and Shahrokh Valaee. Distributed link scheduling for TDMA mesh networks. In Proceedings of ICC, 2007. [73] Petar Djukic and Shahrokh Valaee. Scheduling algorithms for 802.16 mesh networks. In Yang Xiao, editor, WiMax/MobileFi: Advanced Research and Technology, pages 267–288. Auerbach Publications, 2007.

Bibliography

198

[74] Petar Djukic and Shahrokh Valaee. Towards guaranteed QoS in mesh networks: Emulating WiMAX mesh over WiFi hardware. In The Fourth Workshop on Wireless Ad hoc and Sensor Networks WWASN, 2007. [75] Petar Djukic and Shahrokh Valaee. 802.16 MCF for 802.11a based mesh networks: A case for standards re-use. In Proceedings of 23rd Queen’s Biennial Symposium on Communications, 2006. [76] Petar Djukic and Shahrokh Valaee. 802.16 mesh networking. In Syed Ahson and Mohammad Ilyas, editors, WiMax: Standards and Security, pages 147–174. CRC Press, 2007. [77] Hongqiang Zhai and Yuguang Fang. Impact of routing metrics on path capacity in multi-rate and multi-hop wireless ad hoc networks. In ICNP, 2006. [78] S. Keshav. An Engineering Approach to Computer Networking. Probability, Random Variables and Stochastic Processes, Addison-Wesley, 1997. [79] Frank P. Kelly, A.K. Maulloo, and D.K.H. Tan. Rate control in communication networks: shadow prices, proportional fairness and stability. Journal of the Operational Research Society, 49(3):237–252, March 1998. [80] Farhad Shahrokhi and D. W. Matula. The maximum concurrent flow problem. J. ACM, 37(2):318–334, 1990. [81] Tom Leighton and Satish Rao. Multicommodity max-flow min-cut theorems and their use in designing approximation algorithms. Journal of the ACM, 46(6):787– 832, 1999. [82] Yefim Dinitz, Naveen Garg, and Michel X. Goemans. On the single-source unsplittable flow problem. In IEEE Symposium on Foundations of Computer Science, 1991.

Bibliography

199

[83] R. Tyrrel Rockafellar. Network Flows and Monotropic Optimization. John Wiley & Sons, 1984. [84] Paolo Serafini and Walter Ukovich. A mathematical model for periodic scheduling problems. SIAM Journal of Discrete Mathematics, 2(4):550–581, November 1989. [85] Michiel A. Odijk. A constraint generation algorithm for the contruction of periodic railway timetables. Transportation Research, 30(6):455–464, 1996. [86] Michiel Adriaan Odijk. Railway Timetable Generation. Ph. D., Technische Universiteit Delft, January 1998. [87] W. Duscha, H.D. Modrow, and A. Neuman. On cyclic sequence types for constructing cyclic schedules. Zeischrift f¨ ur Operations Research, 29:1–30, 1985. [88] Leon W.P. Peeters. Cyclic Railway Timetable Optimization. Ph. d., Erasmus Universiteit Rotterdam, June 2003. [89] Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. Introduction to algorithms. MIT Press, 2001. [90] Alberto Leon-Garcia and Indra Widjaja. Communication Networks: Fundamental Concepts and Key Architectures. McGraw-Hill Series in Electrical and Computer Engineering. McGraw-Hill, Boston, 2000. [91] K.M. Chandy and J. Misra. Distributed computation on graphs: Shortest path algorithms. Communications of the ACM, 25(11):833–827, 1982. [92] T. Clausen and P. Jacquet. Optimized Link State Routing Protocol (OLSR). RFC 3626 (Experimental), October 2003. [93] Dimitri Bersekas and Robert Gallager. Data Networks. Prentice Hall, 1992.

Bibliography

200

[94] Andras Vargas. OMNeT++ Discrete Event Simulation System User Manual, March 2005. [95] Rodney W. Topor. Termination detection for distributed computations. Information Processing Letters, 18(1):33–36, January 1984. [96] Jeff Matocha and Tracy Camp. A taxomony of distributed termination detection algorithms. The Journal of Sysmtes and Software, 43:207–221, 1989. [97] Gerard Tel. Introduction to distributed algorithms. Cambridge University Press, New York, 1994. [98] Michael R. Garey, David S. Johnson, and Larry Stockmeyer. Some simplified NPcomplete graph problems. Theoretical Computer Science, 1:237–267, 1976. [99] Shimon Even. Graph Algorithms. Computer Science Press, 1979. [100] Alan Gibbons. Algorithmic Graph Theory. Cambridge University Press, 1985. [101] George J. Minty. A theorem on n-coloring the points of a linear graph. American Mathematics Monthly, 67:623–624, 1962. [102] Zsolt Tuza. Graph coloring in linear time. Journal of Combinatorial Theory, 55B:236–243, 1992. [103] Nicos Christofides. Graph Theory: An Algorithmic Approach. Academic Press Inc. (Londond) Ltd., 1975. [104] Jitendra Padhye, Victor Firoiu, Donald F. Towsley, and James F. Kurose. Modeling TCP reno performance: A simple model and its empirical validation. IEEE/ACM Transactions on Networking, 8(2):133–145, April 2000. [105] Bela Bollobas. Modern Graph Theory. Springer-Verlag, 1998.

Bibliography

201

[106] Laurence A. Wolsey. Integer Programming. A Wiley-Intersicence Publication. John Wiley & Sons, Inc., New York, 1998. [107] Leonidas Georgiadis, Roch Guerin, Vinod Peris, and Kumar N. Sivarajan. Efficient network QoS provisioning based on per node traffic shaping. IEEE/ACM Transactions on Networking, 4(4):482–501, 1996. R [108] Intel PRO/Wireless 2200BG driver for linux. http://ipw2200.sourceforge.

net/. [109] IEEE standard for local and metropolitan area networks: Overview and architecture, 2001. [110] Charles E. Perkins and Elizabeth M. Royer. Ad hoc on-demand distance vector routing. In Proceedings of the 2nd IEEE Workshop on Mobile Computing Systems and Applications, pages 90–100, New Orleans, LA, February 1999. [111] David B. Johnson and David A. Maltz. Dynamic source routing in ad hoc wireless networks. In Imielinski and Korth, editors, Mobile Computing, volume 353 of The Kluwer International Series in Engineering and Computer Science. Kluwer Academic Publishers, 1996. [112] Linux kernel. http://www.kernel.org/, 2006. [113] Ingo Molnar. Real-time linux patches for linux 2.6 kernel. http://www.kernel. org/pub/linux/kernel/projects/rt/. [114] MadWiFi: Linux kernel drivers for wireless LAN devices with Atheros chipsets. http://madwifi.org/. [115] Y. Rekhter, B. Moskowitz, D. Karrenberg, and G. de Groot. Address Allocation for Private Internets. RFC 1597 (Informational), March 1994. Obsoleted by RFC 1918.

Bibliography

202

[116] P. Srisuresh and K. Egevang. Traditional IP Network Address Translator (Traditional NAT). RFC 3022 (Informational), January 2001. [117] Y. Bernet, P. Ford, R. Yavatkar, F. Baker, L. Zhang, M. Speer, R. Braden, B. Davie, J. Wroclawski, and E. Felstaine. A Framework for Integrated Services Operation over Diffserv Networks. RFC 2998 (Informational), November 2000. [118] J. Postel. Internet Protocol. RFC 791 (Standard), September 1981. Updated by RFC 1349. [119] T. Kivinen, B. Swander, A. Huttunen, and V. Volpe. Negotiation of NAT-Traversal in the IKE. RFC 3947 (Proposed Standard), January 2005. [120] A. Huttunen, B. Swander, V. Volpe, L. DiBurro, and M. Stenberg. UDP Encapsulation of IPsec ESP Packets. RFC 3948 (Proposed Standard), January 2005. [121] IPsec NAT Traversal Overview. The Cable Guy Column. Microsoft TechNet, August 2002. [122] D. Maughan, M. Schertler, M. Schneider, and J. Turner. Internet Security Association and Key Management Protocol (ISAKMP). RFC 2408 (Proposed Standard), November 1998. Obsoleted by RFC 4306. [123] Torbj¨orn Larsson, Michael Patriksson, and Ann-Brith Str¨omberg. Conditional subgradient optimization – theory and applications. European Journal of Operational Research, 88:382–403, 1996. [124] Naum Zuselevish Shor. Minimization Methods for Non-Differentiable Functions. Springer-Verlag Berlin, Heidelberg, 1985. [125] Duan Li and Xiaoling Sun. Nonlinear Integer Programming. International Series in Operations Research and Management Science. Springer Science+Business Media, 2006.

Bibliography

203

[126] Torbj¨orn Larsson, Michael Patriksson, and Ann-Brith Str¨omberg. Ergodic, primal convergence in dual subgradient schemes for convex programming. Mathematical Programming, 86:283–312, 1999. [127] Jeonghoon Mo and Jean Walrand. Fair end-to-end window-based congestion control. IEEE/ACM Transactions on Networking, 8(5):556–567, 2000. [128] Anwar Elwalid, Debasis Mitra, and Qiong Wang. Distributed nonlinear integer optimization for data-optical internetworking. IEEE Journal on Selected Areas in Communications, 24(8):1502–1513, August 2006. [129] Allan M. Geoffrion. Generalized bender’s composition. Journal of Optimization Theory and Applications, 10(4):237–260, 1972. [130] Dimitri P. Bertsekas and John N. Tsitsiklis. Parallel and Distributed Computation. Prentice Hall, 1989. [131] Konrad Knopp. Infinite Sequences and Series. Dover Publications, New York, 1956. [132] Leandros Tassiulas and Anthony Ephremides. Stability properties of constrained queueing systems and scheduling policies for maximum throughput in multihop radio networks. IEEE Transactions on Automatic Control, 37(12):1936–1948, December 1992.