Wireless Netw (2014) 20:1955–1965 DOI 10.1007/s11276-014-0721-2
Delay minimization and priority scheduling in wireless mesh networks Chun-yan Liu • Bo Fu • He-Jiao Huang
Published online: 19 April 2014 Ó Springer Science+Business Media New York 2014
Abstract Wireless mesh networks (WMNs) have emerged as a significant technology for applications because of its advantage of multi-radio and multi-channel which makes it perform better than wireless LANs. Furthermore, quality-of-service (QoS) support can be achieved by some distinguished ways in WMN. In this paper, QoS requirements are recorded by traffic profile, QoS constraints are formulated as delay time of transmitting all the requested data flows in the network. Multi-commodity flow technologies are applied for handling this issue. After minimizing the delay of the network by the assistance of multi-commodity-flow techniques and resource contention graph, we use effective channel assignment algorithm to schedule the data flows under the QoS constraints. Our evaluation indicates that our technologies successfully route flows under their special QoS requirements with different priority. Keywords Quality-of-service Multi-commodity Priority scheduling
C. Liu H.-J. Huang (&) Shenzhen Graduate School, Harbin Institute of Technology, Shenzhen, China e-mail:
[email protected] C. Liu e-mail:
[email protected] B. Fu Department of Computer Science, University of Alabama, Tuscaloosa, AL, USA e-mail:
[email protected] H.-J. Huang Shenzhen Key Laboratory of Internet Information Collaboration, Shenzhen, China
1 Introduction Wireless mesh network (WMN) is being applied as a solution for providing last-mile Internet access for mobile clients located on the edge of the wired network owing to its excellent performance, and thus many of these networks have been pushed to the market to provide complete commercial solution [4, 9, 15]. There are some common grounds between WMN and Ad-Hoc networks. WMN is composed of the network backbone and clients. As in AdHoc networks, routers of the network backbone of WMN can relay messages as an intermediate. However, the routers in WMN are rarely mobile while the Ad-hoc networks are mobile. For simplicity, we assume the backbone of WMN is static in this paper. It assures infrequent topology changes and limited node failures when mesh routers are rarely mobile. In addition, mesh routers have no power constraints. A significant difference between WMN and traditional wireless network is that routers in WMN are equipped with multi-radios. Different radios with orthogonal channels allow one router communicate with more than one neighbor at the same time. Through this way traffic throughput can be greatly increased. However, the number of orthogonal channels is limited, and thus interference reduction is always a critical issue in WMN. Links may be assigned to different channels for communication between neighbors in a static or dynamic fashion. In the first approach, each link is combined with a particular channel. This coupling does not change over time. But in the second approach a link can be assigned to different channels in different time slots. The former is simpler to be deployed than the latter. Nevertheless, with the increase of network size, any static channel assignment has a chance to increase interference, which inevitably degrades the performance of QoS in mesh
123
1956
Wireless Netw (2014) 20:1955–1965
network. Dynamic channel assignment, however, can alleviate this defect greatly. In this paper the channel assignment problem is discussed, and our work aims at a dynamic channel assignment fashion in WMN to guarantee QoS constraints by priority scheduling. Traffic load of each mesh router changes infrequently, since each wireless router may aggregate traffic flows for a large number of mobile clients in its coverage. Under this condition today’s traffic may be predicted according to yesterday’s traffic. Hence, similar to [2, 3, 14], we use traffic profile as quasi-static information about throughput optimization in order to guarantee QoS constraints. In addition, a subset of the wireless routers is equipped with the gateway function to connect to the wired network. In practice, traffic load is mainly routed between the wireless clients and the gateway nodes, which reminds us that traffic profile between source and destination can be measured by the service provider that is sensitive to the QoS constraints. We present some definitions related to traffic profile in the following sections. Using traffic profile to describe the QoS constraints is part of our motivation. Many previous works such as the multi-commodity network flow problem mentioned in [5, 21, 22] would be referenced directly in this paper. Considering that a nodes pair (node1, node2) which means node1 is the serve node and node2 is the request node, that is to say, node1 would transmit flows to node2, the pair would be introduced in the definition of the 5-tuple ( 1, s1 , d1 , m1 , q1 ) which is going to be explained in Sect. 3. The motivation of our research is to guarantee QoS constraints in WMN, involved traffic profile defined in related work, delay minimization, and priority scheduling [13, 16]. Firstly, we minimize the transmission time (i.e., delay) of the network with the help of the resource contention graph. Secondly, we use channel assignment to route the data flows under the QoS constraints. Both delay minimization and channel assignment are considered in a multi-commodity network, which is more realistic than a single-commodity network. The contributions of this paper are as follows. 1. 2. 3. 4. 5.
Resource contention graph is used to minimize transmission time. Our channel assignment can assure fairness among source and destination node pairs. A priority scheduling algorithm is developed assuring QoS requirement of the flows in WMN. Different pairs of source and destination are considered in multi-commodity networks. The framework we present may be applicable under other conditions due to its generality.
The rest of this paper is organized as follows. In Sect. 2, we discuss related works. The problem description and related
123
terminologies are presented in Sect. 3. Delay minimization is discussed in Sect. 4, which is the first part of our framework. In Sect. 5, we present QoS Constraint Channel Assignment algorithm to achieve priority scheduling. Section 6 evaluates the algorithm and Sect. 7 gives some conclusive remarks.
2 Related work Some of the concepts in this paper are derived from [9], in which only the problem in the single-commodity network is solved. In addition, the scale of a contention region is not calculated clearly, and the constraints are also not clear enough in the part of linear programming. In this paper, we correct these inaccurate concepts. Aurrecoechea et al. [4] introduces the current development of QoS architectures and presents a generalized QoS framework in distributed multimedia systems. The authors also evaluate some QoS architectures and indicate that multimedia systems designers need to meet applicationlevel QoS requirements by some end-to-end approaches. Some standards of evaluating QoS are also presented in [4]. Some QoS characters of wireless mesh networks are introduced in [8, 20]. It shows that the influence of the propagation affects the capacity of WMN. It describes the simulation scenarios for the analysis and presents the results of the simulation. In [6] the authors present a software package which can guarantee QoS by providing a centralized management infrastructure in WMN. It allows users and gateways to get a balance between distance and load considerations. In [26] the authors present a analytical model to compute probabilistic QoS by adjusting arrival and backoff rates to optimize network performance. This model increases overall system utilization under a specific topology [26]. The investigation of the tradeoffs among QoS, capacity, and coverage in a scalable multichannel ring-based WMN is proposed in [10]. The authors develop a cross-layer analytical model, which is based on physical/medium access control, to evaluate the delay and jitter which both are related to QoS in WMN. In [24] the authors indicate that integrating packet-level and connection-level QoS control in WMN is significant to support applications with diverse QoS performance requirements. The authors point that at the packet-level, prioritized resource scheduling control is used to enable relative delay, guarantee throughput, and minimize delay variations at the same time. At the connection-level, the authors present a method to achieve prioritize connection admission control, which enables relative connection
Wireless Netw (2014) 20:1955–1965
blocking probabilities and deterministic minimum bandwidth allocation. Ramtin Kazemi Beidokhti and Chitizadeh [18] proposes a packet scheduler to guaranteed QoS. In this paper, a threedimensional space with certain basis vector is established. Based on a generalized metric QoS-deviation, the author developed the scheduler ARTC to find the most service needed user. This paper explored only single cell connections without any handoff, and did not deal with handoff challenges and effects on the scheduling and QoS provisioning [18]. QoS can be guaranteed by the nodes in WMN. In [25], the authors focus on a WMN based on WiMAX, and analyze the difference of the nodes under the constraint of QoS. Some parameters are used to control the routing among the nodes. QoS constraints of different nodes, however, are not our main purpose of this paper; we focus on the QoS constraints of different flows in the WMN. In [11] the authors introduce a multi-path cognitive mechanism to maximize the fulfillment of the clients from the achieved QoS. The whole process consist of Perception Cycle, Learning Cycle and Decision Cycle, and the algorithm is modeled as a cooperative game theory. The authors in [23] propose the DCAC to do both bandwidth and delay guaranteed call admission for TDMA’s WMN by exploiting the multi-channel multi-radio feature. Then a distributed algorithm for link reservation and routing metric for route setup were presented. This algorithm could minimize network delay by a local scheduling [23]. Qadir et al. [17] considers the minimum latency broadcasting problem in a multiradio, multichannel, multirate wireless mesh network (MR2-MC WMN). This paper presents four heuristic solutions and studies the effect of channel assignment on broadcast performance. It shows that channel assignment can affect the broadcast performance substantially. From above mentioned literature, most work have not addressed the QoS multicast problem from the traffic engineering perspective, thus they can hardly achieve the optimal performance in WMN. To address this issue, the authors in [19] develops a novel network graph preprocessing approach to provide QoS multicast routing with traffic engineering capability. In the graph preprocessing stage, they employ prioritized admission control to achieve traffic engineering and the traffic load can be evenly distributed in the network. In this way, the performance of QoS multicast routing in WMNs can be greatly improved. Recently, the construction of multicast tree with some given constraints, such as delay and capacity, is becoming a major problem in wireless mesh networks. Kumar et al. [12] proposes a new multicast tree construction algorithm which has maximum traffic flow and minimum delay under capacity constraints. The performance of the proposed algorithm and cost function is evaluated with respect to
1957
packet delivery fraction, latency, and network throughput. More related work concerning multicast tree construction can also refer to this literature [12].
3 Problem description and related terminologies In general, a wireless mesh network is represented as an undirected communication graph G ¼ ðV; EÞ. V is a set of nodes representing the routers. The neighborhood of v 2 V, denoted by DðvÞ, is the set of nodes residing in its transmission range, and E V V is a set of edges representing the links between two routers. Edge(a, b) is an edge whose two endpoints are a and b. We can also call it Edge e, if its endpoints do not need to be mentioned. In addition, each Edge e has its maximal transmission capacity PðeÞ, and data transmission rate RateðeÞ, which denotes how much data an edge can transmit in a time slot. For instance, data transmission rate 20 means the edge can transmit at most 20 unite of flows per time slot. In the multi-commodity-flow network, each kind of flow has its specific nodes couple of source and destination. Different flows can be transmitted by the same edge. If fi ðeÞ denotes the amount of the ith flow transmitted on Edge e, f ðeÞ, which is the amount of all the flows transmitted on this P edge, equals to i fi ðeÞ. Edge e has its maximal transmission capacity for flow i, Pi ðeÞ, and data transmission rate of flow i Ratei ðeÞ. In this paper, we assume that for each flow i on Edge e, Ratei ðeÞ is always equal, and we call it RateðeÞ. Multi-orthogonal channels and multi-radios are used in WMN to avoid interference and increase throughput. In homogeneous network routers are equipped with the same radio. Without definition, we consider all channels as orthogonal channels for simplicity. We use R to denote the set of radios of a router and C to denote the set of orthogonal channels. The definition of coverage derives from [7]. Coverage of edge e ¼ ðu; vÞ, denoted as CovðeÞ, represents the set of nodes that can be affected while there are some flows transporting on the edge e. Formally, CovðeÞ ¼ fx 2 Vjx is within Dðu; juvjÞg [ fy 2 Vjy is within Dðv; jvujÞg, where juvj is physical length of edge ðu; vÞ and Dðu; juvjÞ denotes the circular area centered on node u with radius juvj. Obviously, edge e1 ¼ ðu; vÞ interferes with edge e2 ¼ ða; bÞ iff a 2 Covðe1 Þ or b 2 Covðe1 Þ, and vice versa. Similar as in [21], traffic request is defined as a 5-tuple ði; si ; di ; mi ; qi Þ, where i is the request ID, si is the ingress router (supply router), di is the egress router (demand router), mi is bandwidth required by this traffic request, and qi denotes QoS level. High QoS level requires low relay. These information (recorded in traffic profile) denotes the flow expected by (ingress, egress) pairs. Considering a traffic request ð1; s1 ; d1 ; m1 ; q1 Þ, the data departing from s1
123
1958
Wireless Netw (2014) 20:1955–1965
should be sent to node d1 but not any other nodes. That is to say, each traffic request has their own source and destination, and other pairs are the same. In most cases, one request is viewed as one kind of commodity. The goal of topology control is to generate a sub-graph (named as topology graph) G0 G under certain constraints. The task of routing is to search for a path on G0 for every request recorded in the traffic profile. Intuitively, a well designed topology graph is the prerequisite of efficient routing. In this paper we assume that traffic demands can be split and combined. In the multi-commodity-flow network, k traffic requests can be regarded as k commodities. To transmit data, each edge must be assigned at least one channel. Pair(e, c) 2E C, denotes that edge e is assigned with channel c. It is inevitable that there must be two edges assigned with the same channel (interference occurs, implying they can not communicate at the same time) due to the limited channel quantity. Hence, we need to develop scheduling to allocate channels to the edges at different time slots while the edges are assigned with the same channel so that interference occurs as little as possible. Let T denote the set of time slots, then triple ðe; c; tÞ 2 E C T, means that edge e is assigned with channel c at the tth time slot. An interference free channel assignment is to compute a subset of E C T so that interference does not occur during the entire data transmitting process. In this paper our goal is to compute a routing and scheduling on a given communication graph to satisfy QoS constraints (i.e., minimum delay). Flows denoted by traffic requests should be transmitted under the request of QoS. We develop two steps as follows to achieve our goal. 1.
2.
Delay minimization: minimize the summation delay of all links in the network so that we can increase delivery ratio; Priority scheduling: prioritization schemes for packets so that they don’t cause too much jitters or miss their deadline.
There are two major parts in the ensuing sections. The first part, which is presented in Sect. 4 demonstrates how to compute a routing in which the flows could be transmitted as fast as possible, and thus we can increase delivery ratio. The second part of this paper is presented in Sect. 5 in which we demonstrate an algorithm to generate the actual channel allocated list. The result of the process in the first part is the input of the algorithm in the second part.
4 Delay minimization
G ¼ ðV; EÞ. Directed edges ða; bÞ and ðb; aÞ 2 EA , for 8ða; bÞ 2 E. Through the LP in Sect. 4.1, we can get the topology graph with minimum summation of link delays. Each traffic request is regarded as one commodity. Applying the LP on GA , we can get the topology graph G0 ¼ ðV; E0 Þ and a set of flows F on G0 , as shown in Fig. 1. From G’ and F, we construct the interference graph G00 ¼ ðV 00 ; E00 Þ. In G00 , two vertices are connected if they interfere with each other as shown in Fig. 2. From the interference graph, we can construct the resource contention graph as shown in Fig. 3, how to construct the resource contention graph is introduced in Sect. 4.1. We have noticed that there is a possibility that some flows are transmitted on one edge at the same time, however we can transmit it at one time slot due to the multi-channel, so one edge in V 00 may deliver more than one flow. We need to record the relationship between flow and edge as shown in Fig. 4. Priority scheduling, which is proposed in next section, are based on this kind of graph, and Topology graph G0 and flow set F are used as input of our channel assignment algorithm. 4.1 Routing in multi-commodity flow network We assume that there are k traffic requests, which are regarded as k commodities, in a communication graph G ¼ ðV; EÞ. Our goal is to transmit them within minimum time. 8a 2 V, Wi ðaÞ indicates it is the supply node or demand node of the ith commodity. If node a is a supply node, WðaÞ [ 0; if node a is a demand node, WðaÞ\0; and if node a is a transshipment node, P WðaÞ ¼ 0. We have f ða; bÞ ¼ fi ða; bÞ Pða; bÞ, because total flow of edge ða; bÞ cannot exceed its capacity Pða; bÞ. Hence, we have the following Linear Programming ðLPÞ representation of our problem. The purpose of the objective function in the LP is to find a topology graph in which all the k commodity flows can be transmitted within a shortest time, i.e., with minimum delay. To obtain a balance of each commodity in the network, Constraint (1) implies that for each specific commodity i and a node a, the flow leaving a minors the flow coming in a equals to the demand of a. Constraint (2) is a load constraint, assuring that total flow transmitted on an edge cannot exceed the edge’s capacity. X P fi ða; bÞ i min rateða; bÞ ða;bÞ2E Subject to: P 8P fi ða; bÞ fi ðb; aÞ ¼ Wi ðaÞ > > > b b < 8a 2 Vand8i ¼ 1; 2; . . .; k > P > > fi ða; bÞ Pða; bÞ; 8ða; bÞ 2 E :0
ð1Þ ð2Þ
i
In this section, a routing approach will be introduced based on multi-commodity flow technique. We generate a directed graph GA ¼ ðV; EA Þ from the communication graph
123
The above LP is a simplified case of traditional multi commodity flow problem [1]. In our problem, the cost for each commodity in edge ða; bÞ is rate (a, b), and the
Wireless Netw (2014) 20:1955–1965
1959
capacity for each kind of commodity has no restriction. Hence, the Price-directive decomposition, resource-directive decomposition and partitioning methods can be applied for finding the solution of the above problem. The technical details can refer to the textbook [1]. 4.2 Resource contention graph A maximum clique of edges that interfere with each other is called a contention region. The resource contention graph is a bipartite graph, denoted as RCG ¼ ðRV; ET ; V 00 Þ. RV is the set of resource vertex representing contention regions. Each element in RV holds resources (channels). V 00 is the set of edges in a WMN’s topology graph. We define ET as: an element in V 00 (an edge) is connected with an element in RV (a contention region r), if this edge is within contention region r. For instance, a WMN shown in Fig. 1 contains 5 nodes and 4 edges. Capitals on edges denote flows and dashed circularities reflect interference range. To avoid TCP reordering, packets associated with a network connection still follow a single path, although the traffic between (ingress, egress) pair is split on different paths. Edge e1 and e3 interferes with Edge e2 for the reason that node 1 and node 4 belong to Covðe2 Þ. Similarly, Edge e2 and e4 interferes with Edge e3 . Hence Fig. 2 contains two maximum cliques fe1 ; e2 ; e3 g and fe2 ; e3 ; e4 g. Hence there are two contention regions r1 ¼ fe1 ; e2 ; e3 g and r2 ¼ fe2 ; e3 ; e4 g in the topology graph. In Fig. 3, two resource vertices r1 and r2 are connected with fe1 ; e2 ; e3 g and fe2 ; e3 ; e4 g, respectively. By this way, a topology graph can be transferred to a resource contention graph as shown in Fig. 3. The set of all the contention regions is RN. We cite Figs, 1, 2 and 3 from [9], which was introduced in our previous work. We present a method to judge the scale of a contention region. Figure 4 denotes a contention region r3 that we make up for calculating the scale of a contention region. Take the edge from node 1 to node 2 for instance, whose data transmission rate is 20, so it will cost 2 time slots to transmit the 28 units data. Let TotalTime ( rm ) denote the total time for transmitting all the flows within contention region rm . Then we have: P TotalTime ðrm Þ ¼ (transmitting time of each edge in rm Þ ¼ d40=10e þ d28=20e þ d35=10e þ d10=20eþ d40=40e ¼ 4 þ 2 þ 4 þ 1 þ 1 ¼ 12
Fig. 2 Interference graph
Fig. 3 Resource contention graph
Fig. 4 Please write your figure caption here
In Sect. 3, we mentioned that fi ðeÞ denotes the amount of the ith commodity transmitted on Edge e, and the amount of all the commodities transmitted on this edge equals to P i fi ðeÞ. rateðeÞ is data transmission rate on Edge e. Hence, we have X P fi ða; bÞ i TotalTimeðrm Þ ¼ rateða; bÞ ða;bÞ2r m
Fig. 1 Topology graph
For convenience, we say a contention region is large, if its TotalTime is relatively more than other contention regions.
123
1960
4.3 Data deliverance processing In the LP, the steps mentioned above may be launched for many times until the objective function is obtained, then we get the topology graph and flow set which maintain delay minimization. In sum, through the LP, by inputting a communication graph G and traffic requests, we can get topology graph G0 and flow set F. Theorem 1 Assume the resource contention graph of a communication graph G ¼ ðV; EÞ is RCG ¼ ðRV; ET ; V 00 Þ. Let R denote the set of radios of a router, C denote the set of orthogonal channels, and T denote the time cost for delivering all flows in G. we have T maxrm 2RV ðTotalTimeðrm Þ=jCjÞ. Proof We suppose contention region r is the largest contention region (the term ‘‘large’’ is defined at the end of Sect. 4.1. We assume T \TotalTimeðrÞ=jCj, then flow in contention region r should be delivered within TotalTimeðrÞ=jCj time slots. If there is only one channel in WMN, the flows in contention region r can be transmitted in TotalTimeðrÞ time slots, because only one unit flow is transmitted through an edge in one time slot. If there is jCj channels in WMN, the flows in contention region r can be transmitted in TotalTimeðrÞ=jCj time slots, because jCj unit flows are transmitted through an edge in one time slot. It implies that the flows in the network can not be delivered within TotalTimeðrÞ=jCj time slots. It is a contradiction, hence we have T maxrm 2RV ðTotalTimeðrm Þ=jCjÞ. Because of the stable backbone of WMN, the topology changes very rarely in WMN. In this situation, the contention
123
Wireless Netw (2014) 20:1955–1965
region is relatively stable, so the objective function and constraint conditions in the LP would not change frequently. LP is proper for distributing data on the edges. In Ad-Hoc and some other wireless networks, however, either backbone or stable topology is absent for deploying LP, hence we say our framework in this paper is exclusive for guaranteeing QoS in WMN. 5 Priority scheduling Although the routing of all the flows can be determined by solving the above multi commodity flow problem, some flows cannot transmit simultaneously in an edge if no enough channels are assigned in the edge. Hence an efficient channel assignment algorithm should be provided in order to schedule the flows and guarantee the QoS constraints. We demonstrate QoS Constraint Channel Assignment (QCCA) algorithm in this section. The input of this algorithm is a list ListCR, which records all the contention regions in the topology graph G0 we get in Sect. 4. We also get the flow set F, mentioning which edge a flow locates at. Let RLðrÞ denote a descending list of flows within contention region r, which is sorted by QoS level. In Sect. 4.3, we mention that there is a possibility that some flows are transmitted on one edge at the same time, so one edge may deliver more than one flow. Thus in Line 8, 12 and 18 of the algorithm below, we need to find the edge on which the flow locates at, by searching the flow set F. The purpose of QRCA algorithm is to deliver all the flows according to the level of QoS. The output of the algorithm is the scheduling of all the flows.
Wireless Netw (2014) 20:1955–1965
There are three loops in QCCA and RegionðÞ function. The first loop denoted by Line 2 in QCCA algorithm records the time, meaning that one repetition costs one unit of time. Line 3 denotes that in one repetition all the flows in each channel are delivered by launching RegionðÞ function. So lines 3–5 mean that the largest flows in a contention region are delivered through all the channels at one timeslot. In RegionðÞ function, lines 11–24 denote that the current flow of highest QoS level is delivered in this channel. Hence after one repetition in the RegionðÞ function, the flow of highest QoS level is delivered in one channel at one timeslot in a contention region. Then we get the output of QCCA algorithm: the tuple ðe; c; tÞ, which was introduced in Sect. 3. All the flows in the topology graph are delivered, and we do not need to consider multi-commodity in QCCA algorithm, because in the LP of Sect. 4 all the traffic requests are treated as different commodities. Thus the flows in the topology graph can be delivered without considering of multi-commodity. The result of this algorithm achieves our goal that the higher the QoS level of a flow is, the higher priority this flow is delivered. According to the proof of Theorem 1, we know that
1961
random network topology (Fig.7, where the edge distance is \1.44 km), respectively, proving that QCCA enhances the throughput and reduces the loss rate for wireless mesh networks. By deploying QCCA, we can route flows of different QoS requirement in different priority. In our simulation, for the three network topologies, the traffic load is 28, 32, 36 and 40 respectively with different QoS level and the channel number is from 4 to 12. There are several (egress, ingress) pairs in these networks. The flow from an egress (resource node) can only be delivered to one ingress (destination node), which ensures the property of multi-commodity in our network. The capacities of links vary from 20 to 100 units, and the data transmission rate of all links is 1 unit flow per time slot.
4
1
3.5 3
2 6
2.5
T maxrm 2RV ðTotalTimeðrm Þ=jCjÞ 2
The flows in contention region r can be transmitted in TotalTimeðrÞ=jCj time slots, because jCj unit flows are transmitted through an edge in one time slot. On the other side, considering the For iteration (Line 10-22) in subprocess RegionðChannelÞ, in a contention region, an edge is selected if it does not interfere with previous brothers (In Fig. 4, we can view it as a forest consisted of some trees, so we have the concept of brother). One unit of flow is transmitted in one time slot and one channel. The For iteration (Line 3–5) and the While iteration (Line 2–7) assure that each contention region reduces jCj units of flow in one time slot. So the output time cost of QCCA algorithm is maxrm 2RV ðTotalTimeðrm Þ=jCjÞ. The time complexity of QCCA algorithm is OðjCjListCR2 Þ, where jCj is the number of channels and ListCR is the set of contention regions. We should mention that although QCCA has a polynomial time complexity, it has a deficiency that enumerating all the contention regions is usually somewhat time-consuming.
11
1
16
0
12
13 21
22 29
1
5
7
8
8
9
14
9 10
16
17
13
14
23
24
17
28
4
5
15
12
19
3 6
7
10
20
0.5
3
4
11
1.5
0
2
1
18 15
25
26
18
19
30
2
3
27 20
31
4
5
Fig. 5 495 Mesh topology in 4 km 9 5 km area
7
1
1
2
3
5
4
7
5
9
6
11
7
2 8
5
15 17 19 21 23 25 26 15 27 16 29 17 31 18 33 19 35 20 37 21
4
28 30 32 34 36 38 39 22 40 23 42 24 44 25 46 26 48 27 50 28
3
41 43 45 47 49 51 52 29 53 30 55 31 57 32 59 33 61 34 63 35
6 Evaluation
2
54 56 58 60 62 64 65 36 66 37 68 38 70 39 72 40 74 41 76 42
In this section, simulations have been carried out to examine the performance of our framework. We compare the delivery time and loss rate between our QCCA algorithm with the well-known routing algorithm shortest-path (SP) respect to mesh network topology (Figs. 5, 6) and
1
67 69 71 73 75 77 78 43 79 44 80 45 81 46 82 47 83 48 84 49
0
0
4 14 9
3
6
1
6 8 10 12 13 10 11 12 13 16 18 20 22 24 14
2
3
4
5
6
7
Fig. 6 7 9 7 Mesh topology in 8 km 9 8 km area
123
1962
Wireless Netw (2014) 20:1955–1965
Tables 1, 2 and 3 are the comparison of delivery time between QCCA and SP respect to Figs. 5, 6 and 7, respectively. The comparison of delivery time between QCCA and SP in Tables 1, 2 and 3 shows that QCCA always outperforms SP, and QCCA has a much better efficiency in the mesh topology network. Some more detailed analysis and results are shown below:
1.
When traffic load is increased, the delivery time is increased correspondingly for both algorithms. However, the increasing speed for QCCA is slower. When the traffic load and channel number are the same, QCCA always has a lower transmission time than that of SP. As a result, QCCA always has a larger throughput than SP (Fig. 8) and at the same time, with the increasing of traffic load, the increasing speed
Table 3 Delivery time for different traffic load in a random topology 8
14 24 47 26 52 34 70 39 80 47 27 33 21 11 71 79 83 66 68 42 43 16 7 50 51 33 10 22 32 22 69 41 3 8 56 44 28 31 67 77 37 6 55 57 38 18 4 78 46 29 25 76 82 9 13 53 58 610 40 89 2754 35 72 26 12 15 81 44 3 7 19 48 90 14 38 24 24 62 84 49 25 13 12 86 49 5 42 31 64 17 45 8 23 63 74 23 85 59 36 1 16 18 15 30 46 36 45 60 40 2829 30 1 2 9 20 73 17 61 37 35 21 41 91 3439 48 19 65 75 87 9250 20 32 11 43 88 5
7 6 5 4 3 2 1 0 0
1
2
3
4
5
6
7
cNum
Delivery time Traffic load 28
Traffic load 32
Traffic load 36
Traffic load 40
SP
QCCA
SP
QCCA
SP
QCCA
SP
QCCA
4
391
310
447
374
503
426
559
457
6
261
207
298
249
335
284
373
304
7
223
178
255
214
287
243
319
261
8
195
155
223
186
251
213
279
228
10
156
124
179
149
201
170
223
182
12
130
103
149
124
167
142
186
152
8
Fig. 7 Random network topology in 8 km 9 8 km area
Table 1 Delivery time for different traffic load in a 4 9 5 mesh topology cNum
Delivery time Traffic load 28
Traffic load 32
Traffic load 36
Traffic load 40
SP
QCCA
SP
SP
SP
4
288
123
329
133
371
164
412
165
5
230
98
263
107
296
131
329
132
6
192
82
219
89
247
109
274
110
8
144
61
164
66
185
82
206
82
12
96
41
109
44
123
54
137
55
QCCA
Table 2 Delivery time for different traffic load in a 7 9 7 mesh topology
123
cNum
QCCA
QCCA
Fig. 8 Throughput comparison for QCCA and SP
Delivery time Traffic load 28
Traffic load 32
Traffic load 36
Traffic load 40
SP
QCCA
SP
QCCA
SP
QCCA
SP
QCCA
4
855
161
977
171
1,100
182
1,222
186
6
570
107
651
114
733
121
814
124
7
488
92
558
98
628
104
698
106
8
427
80
488
85
550
91
611
93
10
342
64
391
68
440
73
488
74
12
285
53
325
57
366
60
407
62
Wireless Netw (2014) 20:1955–1965 Table 4 The Quantity of Contention Region for Figs. 5, 6 and 7
1963
Figure
5
6
7
CR
40
136
66
4. Table 5 Delivery time of different flows Number of channels
Traffic load
Delivery time Flow 1
Flow 2
Flow 3
Flow 4
4
28
13.0
12.7
12.5
12.0
6
32
9.6
9.1
8.8
8.6
8
36
8.2
8.2
8.1
8.0
12
28
4.1
4.0
4.0
4.0
2.
3.
of delivery time trends to be slower and slower. Therefore, the throughput trends to increase. When the number of network nodes is increased (Tables 1, 2), the delivery time is increased correspondingly for both algorithms. However QCCA increases slower than SP. The reason may be that, when the number of nodes increases, it is very possible that the delivering paths become longer. In the same network topology, with the increasing of channel numbers, the delivery time is decreasing for both algorithms. However, QCCA algorithm decreases much faster than that in SP. The reason may be that,
based on QCCA, flows can be transmitted simultaneously with enough channels, while SP has a bandwidth limitation. For networks with similar scales, the network with more contention domains will have less delivery time. Table 4 shows the number of contention domains for Figs. 5, 6 and 7. Figures 6 and 7 have similar scales while different number of contention domains. As a result, QCCA has a better performance for mesh topology than that for a random topology. The reason is that the less contention domains implies the fewer sub-streams and the less real bandwidth in use.
The delivery time of flow with higher QoS level must be shorter than that with lower QoS level, when the number of channels and the traffic load are the same in the simulation environment of these flows. Table 5 shows the delivery time of four flows whose QoS level are from low to high, and the simulation environment (such as number of channels and traffic load) are the same among the four flows in one group. The corresponding delivery time is shown in Table 5. When there are 4–8 channels in the network and traffic load varies from 28 to 36, delivery time of the four flows indicates their QoS level: the higher the QoS level, the shorter the delivery time, and vice versa. But when there
Fig. 9 Delivery time of flows in the different environment
123
1964
Wireless Netw (2014) 20:1955–1965
Table 6 Loss rate in different network topologies with traffic load 32 Buf cNum
Figure 5 QCCA (%)
Figure 6 SP (%)
QCCA (%)
Figure 7 SP (%)
QCCA (%)
SP (%)
34
0
35.3
0.3
20.7
0
5.6
35
0
18.9
0
10.7
0
1.4
44
0
13.6
0
7.3
0
0
Tables 6, 7 and 8 are the comparison of loss rate between QCCA and SP in different topologies with traffic load 32, 36 and 40 respectively, where the buffer for each channel is 3 or 4, and the quantity of channels is 4 or 5. Tables 6, 7 and 8 show that QCCA has a very low loss rate while SP is not. Some more detailed analysis and results are shown below: 1
Table 7 Loss rate in different network topologies with traffic load 36 Buf cNum
Figure 5 QCCA (%)
Figure 6 SP (%)
QCCA (%)
Figure 7 SP (%)
QCCA (%)
2 SP (%)
34
0
40.9
0.5
25.2
0
7.4
35
0
27.3
0
16.3
0
3.7
44
0
22.7
0
13.3
0
2.5
Table 8 Loss rate in different network topologies with traffic load 40 Buf cNum
Figure 5 QCCA (%)
Figure 6 SP (%)
QCCA (%)
7 Conclusion
Figure 7 SP (%)
QCCA (%)
SP (%)
34
0.9
46.4
1.6
28.7
0.3
8.9
35
0
34.1
0.2
20.7
0
5.6
44
0
30
0
18
0
4.4
are as many as 12 channels in the network (see last line of Table 5), the delivery time of the four flows cannot be distinguished easily. The possible reason is that, with enough channels, all the flows can be transmitted simultaneously as soon as possible. This phenomenon suggests that our QCCA algorithm can use network resources efficiently. Figure 9 shows the delivery time of three flows whose QoS level are from low to high, and the number of channels is the same among the three flows in one group. The delivery time of the flows varies from short to long, while the traffic load changes from little to large. Figure 9 implies that our QCCA algorithm distinguishes different flow by their QoS constraints. More channels cause less delivery time, hence delivery time of the three flows in Fig. 9 varies from large to little. But we can always distinguish these three flows because of their different QoS constraints. If the number of channels and traffic load are both same, the delivery time of flows with lower QoS level is always larger.
123
3
When traffic load is increased, the loss rate is increased correspondingly for both algorithms. When the traffic load, channel number and buffer for each channel are the same, QCCA always has a much lower loss rate than SP. When the total quantity of buffer (buffer for each channel channel quantity) is increased (Tables 6, 7 , 8), the loss rate is decreased for both algorithms. However QCCA decreases much faster than SP. When the number of network nodes is increased (Figs. 5, 6), the loss rate is increased for both algorithms. However QCCA increases slower than SP.
In this paper, we develop a method to solve the quality-ofservice problem in wireless mesh networks. The problem is considered in a multi-commodity WMN. We develop the resource contention graph to minimize the transmission time of the multi-commodity flows. The linear programming is used in this step to achieve an optimal topology graph. Then QoS Constraint Channel Assignment algorithm routes the data flows under the constraints of QoS. Our evaluation indicates that the two steps above successfully route the flows satisfying QoS constraints. Acknowledgments This work was financially supported by National Natural Science Foundation of China with Grants Nos.11071271 and 11371004, and Shenzhen Strategic Emerging Industries Program with Grants Nos. ZDSY20120613125016389, JCYJ20120613151201451 and JCYJ20130329153215152.
References 1. Ahuja, R. K., Magnanti, T. L., & Orlin, J. (1993). Network flows: Theory, algorithms and application. Beijing: China Machine Press. 2. Al-Ayyoub, M., & Gupta, H. (2010). Joint routing, channel assignment, and scheduling for throughput maximization in general interference models. IEEE Transactions on Mobile Computing, 9(4), 553–565. 3. Alicherry, M., Bhatia, R., & Li, L. (2005). Joint channel assignment and routing for throughput optimization in multiradio wireless mesh networks. In: Proceedings of the 11th Annual
Wireless Netw (2014) 20:1955–1965
4. 5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15. 16.
17.
18.
19.
20.
21.
22.
23.
International Conference on Mobile Computing and Networking (pp. 58–72). Aurrecoechea, C., Campbell, A., & Hauw, L. (2004). A survey of qos architectures. In: Conference on Information Sciences and Systems. Awerbuch, B., & Khandekar, R. (2009). Greedy distributed optimization of multi-commodity flows. Distributed Computing, 21(5), 317–329. Bortnikov, E., Kol, T., & Vaisman, A. (2008). Qmesh: A qos mesh network with mobility support. Mobile Computing and Communications Review, 12(1), 46–48. Burkhart, M., von Rickenbach, P., Wattenhofer, R., & Zollinger, A. (2004). Does topology control reduce interference? In: Proceedings of MobiCom’04 (pp. 24–26). Gallego, D. M., de Medeiros, A. A. M., Cardieri, P., Yacoub, M. D., Seo, C., & Leonardo, E. (2005). Capacity and qos of wireless mesh networks. In: 4th International Information and Telecommunication Technologies Symposium. Huang, H., & Peng, Y. (2008). Throughput maximization with traffic profile in wireless mesh network. In: Proceedings of the 14th Annual International Computing and Combinatorics Conference (pp. 531–540). Huang, J., Wang, L., & Chang, C. J. (2006). Capacity and qos for a scalable ring-based wireless mesh network. IEEE Journal on Selected Areas in Communications, 24(11), 2070–2080. Javadi, F., & Jamalipour, A. (2011). A multi-path cognitive resource management mechanism for qos provisioning in wireless mesh networks. Wireless Networks, 17(1), 277–290. Kumar, N., Chilamkurti, N., & Lee, J. (2012). A novel minimum delay maximum flow multicast algorithm to construct a multicast tree in wireless mesh networks. Computers and Mathematics with Applications, 63(2), 481–491. Kumar, N., Kumar, M., & Patel, R. B. (2011). Capacity and interference aware link scheduling with channel assignment in wireless mesh networks. Journal of Network and Computer Applications, 34(1), 30–38. Matta, I., & Bestavros, A. (1998). A load profiling approach to routing guaranteed bandwidth flows. In: Proceedings of INFOCOM 1998 (pp. 1014–1021). IEEE. Mesh dynamics. http://www.meshdynamics.com. Nguyen, H., Hong, C., & LEE, S. (2011). Priority-based stdma scheduling algorithm to enhance throughput and fairness in wireless mesh networks. IEICE Transaction on Communications, 94(5), 1355–1365. Qadir, J., Chou, C. T., Misra, A., & Lim, J. G. (2009). Minimum latency broadcasting in multiradio, multichannel, multirate wireless meshes. IEEE Transactions on Mobile Computing, 8(11), 1510–1523. Ramtin Kazemi Beidokhti, M. H. Y. M., & Chitizadeh, J. (2011). Adaptive qos scheduling in wireless cellular networks. Wireless Networks, 17(3), 701–716. Rong, B., Qian, Y., Lu, K., & Hu, R. (2008). Enhanced qos multicast routing in wireless mesh networks. IEEE Transactions on Wireless Communications, 7(6), 2110–2130. Siti Hasunah Mohammad, N. Z., & Idrus, S. M. (2011). A review on the network architectures and quality of service algorithms for integrated optical and wireless broadband access networks. In: 2011 IEEE 2nd International Conference on Photonics (ICP) (pp. 1–5). Suri, S., Waldvogel, M., Bauer, D., & Warkhede, P. R. (2003). Profile-based routing and rraffic engineering. Computer Communications, 26(4), 351–365. Tabatabaee, V., Kashyap, A., Bhattacharjee, B., La, R. J. & Shayman, M. A. (2007). Robust routing with unknown traffic matrices. In: IEEE INFOCOM 2007 (pp. 2436–2440). XuFei Mao, X. Y. L., & Dai, G. (2011). Flow admission control for multi-channel multi-radio wireless networks. Wireless Networks, 17(3), 779–796.
1965 24. Yu, O., Saric, E., & Li, A. (2008). Integrated connection-level and packet-level qos controls over wireless mesh networks. Journal of Parallel and Distributed Computing, 68(3), 336–347. 25. Zhang, Y., Hu, H., & Chen, H. (2008). Qos differentiation for ieee 802.16 wimax mesh networking. Mobile Network Applicaiton, 13(1–2), 19–37. 26. Zhefu Shi, C. B., & Mitchell, K. (2012). Analytical models for understanding space, backoff, and flow correlation in csma wireless networks. Wireless Networks, 19(3), 393–409.
Chun-yan Liu obtained the B.S. and M.S. degrees in computer science from Harbin Institute of Technology in 2009 and 2011 respectively. He is currently a Ph.D. student in Harbin Institute of Technology Shenzhen Graduate School, China. His research interests include wireless multihop networks (concerning resources allocation and routing algorithms) and vehicle wireless networks (concerning RSU development and routing algorithms). Bo Fu obtained his Ph.D. degree in computer science at the University of Alabama in 2013. He obtained the B.S. and M.S. degrees in computer science from Harbin Institute of Technology in 2007 and 2009 respectively. He currently works at Cisco, USA. His research interests are in security and accountability of computer networks.
He-Jiao Huang graduated from City University of Hong Kong and received the Ph.D. degree in computer science in 2004. She is currently a professor in Harbin Institute of Technology Shenzhen Graduate School, China, and previously was an invited professor at the INRIA Bordeaux Sud-Ouest, France (2008.7–2009.6). Her research interests include wireless multihop networks (concerning routing, channel assignment, scheduling, topology control, and security etc.), Petri-net-based formal methods for system design (concerning security policy specification and verification, job-shop scheduling, and workflow system design, etc.) and cloud computing (concerning energy–oriented VM allocation and scheduling).
123