• 沒有找到結果。

Linear Programming Model

To construct a cost-efficient M4 WMN, we need to allocate interfaces to nodes, assign channels to them, and balance traffic loads among gateways. The network is modeled by a directed graph G = (V, E), where V is the set of mesh nodes and E the set of wireless links. Note that E is determined by how we allocate interfaces. We make the following assumptions and define several notations:

• There are totally N interfaces available.

• The maximal number of non-interfering channels is C.

• All user traffic is destined to the Internet. We assume that each mesh node vi is associated with an uplink load upper bound uui, a downlink load upper bound udi, an uplink load lower bound lui, and a downlink load lower bound lid.

• A subset Vg ⊆ V of mesh nodes are designated as Internet gateways and the

re-maining subset Vh are designated as hosts, that is, V = Vh∪ Vg. We assume that only hosts in Vh generate traffic. In case gateways in Vg have some traffic demand, we can re-define the node set V . For example, we can transform the original network architecture as Fig. 3.2 into a new graph as Fig. 3.3. We create two virtual gateway nodes, v10 and v11, which deal with traffic relaying without generating traffic and have unlimited bandwidth to/from neighboring hosts, v3 and v5. Note that the two figures have the same network architecture. In addition, for each vm ∈ Vg, we use Bum and Bmd to denote its uplink and downlink bandwidths, respectively, to the Internet.

Figure 3.2: An example wireless mesh network architecture in graph representation.

v1 v2 v5 v3

v4

v7 v8

v6

v9 v10

v11

Figure 3.3: A simplified example graph with separate mesh hosts and Internet gateways.

vj to vi on channel k, k = 1 . . . C, are denoted by fij[k] and fji[k], respectively.1 Note that the existence of such wireless links between vi and vj depends on how we allocate interfaces to vi and vj. If any of vi and vj does not have an interface on channel k, we simply let fij[k] = fji[k] = 0. The best rates may depend on factors such as signal quality, transmission distance, etc. For link asymmetry, it is not necessary that fij[k] = fji[k].

• Depending on how interfaces are allocated, we define the set of wireless links

oper-ating on channel k as Ek = {eij|fij[k] > 0}. As a result, the set of all wireless links is E = ∪Ck=1Ek.

• In order to represent how interfaces are allocated and how channels are bound, we

1On measuring the best achievable bit rate from one mesh node to the other, one may utilize probing-based quality evaluation by testing all available physical channel rates and tracking the respective packet loss ratios. In this thesis, we adopt the methodology proposed by [4] to obtain the best bit rate for a wireless link.

define a channel vector ci for each host vi. For each element k in ci, k = 1 . . . C:

ci[k] =





1 if vi has an interface operating on channel k 0 otherwise.

Note that it makes no sense to bind multiple interfaces of a host to the same channel.

So the number of interfaces owned by vi is the cardinality of channel vector ci. In Section 3.3, we will discuss how to determine this vector for each mesh node. Then we can define the connectivity vector cij as an indication of connection status between vi and vj. For each element k in cij, k = 1 . . . C:

cij[k] = ci[k]× cj[k]

• To formulate the channel contention behavior, we define IEijk to be the set of links in the interfering range of link eij that also use channel k: IEijk = {epq|epq ∈ Ek and one of vp and vq is in the interfering range of vi or vj}. For example, one simple definition of interfering range is to include all vi’s and vj’s two-hop neighbors.2

• Now, we introduce some unknown variables in our linear programming model. We

define λui as the actual uplink traffic load delivered from node vi, and similarly λdi as the actual downlink traffic load destined to node vi.

• Next, we define xuij[s,k] as the actual uplink traffic generated by source node vs

over wireless link eij using channel k, and similarly xdij[d,k] as the downlink traffic forwarded to destination node vd over wireless link eij using channel k. Moreover, we define xij[0,k] as the aggregate traffic load on wireless link eij using channel k, where xij[0,k]=P

vs∈V(xuij[s,k]× cij[k]) +P

vd∈V(xdij[d,k]× cij[k]).

2Alternatively, some separate algorithm may be devised to establish the interfering link set for every node pair.

• For each gateway host vm ∈ Vg, we define the aggregate uplink/downlink traffic via vm to be gmout/ginm, where:

gmout = X

vs∈V

gouts,m, gmin = X

vd∈V

gd,min .

A summary of notations is given in Table 3.1.

Our ultimate goal is to maximize the mesh network capacity such that the traffic flowing in/out of the set of gateways is the largest, without violating the traffic require-ment (upper and lower bounds) of each mesh node. Our approach is based on linear programming. The objective function can be written as

Maximize X

vm∈Vg

(gmout+ ginm),

subject to the following constraints: (1) general constraints:

λui ≥ liu, λui ≤ uui, λdi ≥ ldi, λdi ≤ udi, xuij[s,k]≥ 0, xdij[d,k] ≥ 0,

Xλui = X

vm∈Vg

goutm ,X

λdi = X

vm∈Vg

gmin,

(2) gateway constraint:











gmout+ ginm ≤ Bm if uplink and downlink share the bandwidth

gmout ≤ Bmu, gmin ≤ Bmd otherwise.

Due to the fact that radio channel bandwidth is shared by all wireless links within the interfering range of edge eij, we add one more constraint to reflect the channel model

Table 3.1: Summary of notations: (a) parameters that are given and (b) parameters that are to be determined.

(a)

Channel booleanvector of node vi(ci[k] = {0,1}) ci[k]

Number of available non-interfering channels C

Capacity of (Ethernet/T1/T3) gateway node vm Bm

Uplink capacity of (xDSL/cable modem) gateway node vm Bum

Maximum downlink traffic load allowed at node vi(upper bound) udi

Minimum downlink traffic load required at node vi (lower bound) ldi

Minimum uplink traffic load required at node vi (lower bound) lui

Maximum uplink traffic load allowed at node vi(upper bound) uui

Downlink capacity of (xDSL/cable modem) gateway node vm Bdm

Number of available sets of communication equipment N

Capacity of directional wireless link eijover channel k fij[k]

Channel booleanvector of node vi(ci[k] = {0,1}) ci[k]

Number of available non-interfering channels C

Capacity of (Ethernet/T1/T3) gateway node vm Bm

Uplink capacity of (xDSL/cable modem) gateway node vm Bum

Maximum downlink traffic load allowed at node vi(upper bound) udi

Minimum downlink traffic load required at node vi (lower bound) ldi

Minimum uplink traffic load required at node vi (lower bound) lui

Maximum uplink traffic load allowed at node vi(upper bound) uui

Downlink capacity of (xDSL/cable modem) gateway node vm Bdm

Number of available sets of communication equipment N

Capacity of directional wireless link eijover channel k fij[k]

(b)

Traffic flow out of gateway node v gout m

m

Uplink traffic flow generated by source node v

s

over wireless link e

ij

using channel k xu

ij[s,k]

Actual uplink traffic load delivered from node v ӳui i

Traffic flow back into gateway node v gin m

m

Downlink traffic flow forwarded to destination node v

d

over wireless link e

ij

using channel k xd

ij[d,k]

Actual downlink traffic load destined to node v ӳdi i

Traffic flow out of gateway node v gout m

m

Uplink traffic flow generated by source node v

s

over wireless link e

ij

using channel k xu

ij[s,k]

Actual uplink traffic load delivered from node v ӳui i

Traffic flow back into gateway node v gin m

m

Downlink traffic flow forwarded to destination node v

d

over wireless link e

ij

using channel k xd

ij[d,k]

Actual downlink traffic load destined to node v ӳdi i

based on IEEE 802.11 DCF contention protocol:

X

epq∈IEkij

(xpq[0,k]/fpq[k]) ≤ 1.

g

Figure 3.4: Re-formatted linear programming (a) constraints and (b) flow conservation equations.

Finally, the linear programming constraints and flow conservation equations are sum-marized in Fig. 3.4 (a) and (b), respectively.

3.3 Resource Allocation and Channel Assignment

相關文件