國
立
交
通
大
學
資訊科學與工程研究所
碩
碩
碩
碩 士
士
士 論
士
論
論 文
論
文
文
文
無線網狀網路的群播路由與頻道配置
Multicast Routing and Channel Assignment in Wireless Mesh
Networks
研 究 生:周家聖
指導教授:陳 健 教授
中
中
中
中 華
華
華 民
華
民
民 國
民
國
國 九
國
九
九
九 十
十 五
十
十
五
五
五 年
年
年
年 六
六
六
六 月
月
月
月
無線網狀網路的群播路由與頻道配置
Multicast Routing and Channel Assignment in Wireless Mesh Network
研 究 生:周家聖
Student:Chia-Sheng Chou
指導教授:陳 健
Advisor:Chien Chen
國 立 交 通 大 學
資 訊 科 學 與 工 程 研 究 所
碩 士 論 文
A ThesisSubmitted to Institute of Computer Science and Engineering
College of Computer Science
National Chiao Tung University
in partial Fulfillment of the Requirements
for the Degree of
Master
in
Computer Science
June 2006
Hsinchu, Taiwan, Republic of China
無線網狀網路的群播路由與頻道配置
研究生 : 周家聖 指導教授: 陳 健 國 立 交 通 大 學 資 訊 科 學 與 工 程 系中文
中文
中文
中文摘要
摘要
摘要
摘要
無線網狀網路的興起,為最後一哩(last-mile)寬頻網際網路存取服務與技 術,提供了一種新的選擇。因此,近年來有許多的研究人員紛紛發表在無線網狀 網路上面的應用及相關研究。在這篇文章中,在無線網狀網路上,我們將研究如 何利用無線廣播優勢(wireless broadcast advantage),令已知的多個群播需求 (multicast requests)彼此之間的傳輸所受的干擾最小,並且讓網路所能承受的 群播需求流量最大。在文章的前半,將會描述我們所使用的網路架構,並且對於 在與多頻道(multi-channel)多介面(multi-interface)的無線網狀網路環境,提 出針對前述目標的整數線性規劃(Integer Linear Programming,ILP)以求得其 最佳解。在文章的後半,我們提出針對無線廣播優勢的特性所設計的探索式演算 法(heuristic algorithm)。分成兩個階段,分別是估算預計負載階段(Compute Expected Load Phase),頻道配置階段(Channel Assignment Phase)。最後並結 合其它的路由演算法。在文末,我們利用模擬來驗證,無線廣播優勢搭配我們所 提出的探索式演算法,的確可以有效的降低各個傳輸彼此之間的干擾,增進網路 所能承受的群播需求流量。Multicast Routing and Channel Assignment in
Wireless Mesh Network
Student: Chia-Sheng Chou Advisor: Dr. Chien Chen
Institute of Computer Science and Engineering National Chiao Tung University
Abstract
Wireless mesh networks have in recent years provided an alternative technology
for last-mile broadband Internet access service. They have attracted much research
attention and have numerous potential applications. This investigation studies the
problem of multicast routing and channel assignment in multi-channel and
multi-interface wireless mesh networks. Wireless broadcast advantage is applied to
reduce the interference and improve the traffic throughput in such networks. First, the
employed network model is described, and then the proposed integer linear
programming (ILP) formulation is introduced to achieve this objective. Next, a
heuristic channel assignment algorithm with the property of wireless broadcast
advantage is presented. It is composed of two phases - computation of the expected
load and channel assignment. Then, Ruiz’s routing algorithm and the proposed
channel assignment algorithm are integrated as a heuristic algorithm. Finally,
simulation results reveal that the heuristic algorithm with wireless broadcast
advantage can reduce interference and increase traffic throughput in a multi-hop and
Keywords: Wireless mesh network (WMNs); Wireless broadcast advantage; Integer linear programming; Heuristic channel assignment.
誌謝
誌謝
誌謝
誌謝
本篇論文的完成,我要感謝這兩年來給予我協助與勉勵的人。首先要感謝我 的指導教授 陳健博士,即使這段期間遭遇了不少的挫折,陳老師對我的指導與 教誨使我都能在遇到困難時另尋突破,在研究上處處碰壁時指引明路讓我得以順 利完成本篇論文,在此表達最誠摯的感謝。同時也感謝我的論文口試委員,交大 的曾煜棋教授、陳榮傑教授及中央的許健平教授,他們提出了許多的寶貴意見, 讓我受益良多。 感謝與我一同努力的學長陳盈羽,由於我們不斷互相討論及在論文上的協 助,使我能突破瓶頸,研究也更為完善。另外我也要感謝實驗室的學長同學們, 王獻綱、徐勤凱、劉上群、陳咨翰、高游宸、郭修嘉、江長傑、田濱華、陳建凱 以及莊順宇等人,感謝他們陪我度過這兩年辛苦的研究生活,在我需要協助時總 是不吝伸出援手,陪我度過最煩躁與不順遂的日子。 特別感謝我的朋友,鄭宜芳、莊尚融、陳威任及許多大學時代的好友們,他 們在精神上給我莫大的鼓勵,傾聽我內心的聲音並帶給我無比的溫暖,指導我做 出了許多正確的抉擇,而不致迷失了自我。這些好朋友們就像是明燈般照亮了昏 暗的旅程,並陪伴我度過枯燥的研究生涯。 最後,我要感謝家人對我的關懷及支持,他們含辛茹苦的栽培,使我得以無 後顧之憂的專心於研究所課業與研究,我要向他們致上最高的感謝。Table of Content
中文摘要 中文摘要 中文摘要 中文摘要...i Abstract...ii 誌謝 誌謝 誌謝 誌謝...iv Table of Content ...v List of Figures...vi Chapter 1: Introduction ...1Chapter 2: Related Work ...5
2.1: Some of the Previous Studies ...5
2.1.1: Minimal Number of Transmissions Multicast Tree ...5
2.1.2: Channel Assignment Strategies for Multi-Channel WMNs...6
2.2: Wireless Transmission and Interference Model...8
Chapter 3: Integer Linear Programming Formulation... 11
3.1: Assumption and Problem Statement ... 11
3.2: Formulation...12
3.2.1: Single-Channel and Single-Interface ...13
3.2.2: Multi-Channel and Multi-Interface...17
Chapter 4: A Heuristic Algorithm ...22
4.1: Compute Expected Load Phase ...22
4.1.1: Expected load graph, Expected WBA load graph, and Expected Reduction load graph ...23
4.2: Channel Assignment Phase...26
4.2.1: Step 1: Search the nodes with highly tendency of wireless broadcast advantage ...27
4.2.2: Step 2: Perform channel assignment procedure in heavy-load-first order ...29
4.3: Short Summary ...32
Chapter 5: Simulation Results ...34
Chapter 6: Conclusions ...45
Reference: ...47
List of Figures
Figure 1: An example of wireless mesh network that consists of several mesh routers
and mesh clients...3
Figure 2: An example illustrates that a source sends data to its neighbors with and without wireless broadcast advantage...4
Figure 3: An example illustrates the interference disk. Link (A, B) interferes with Link (C, D). ...9
Figure 4: An example shows the set of interference nodes, interference links and also illustrates the available capacity of link (4, 5). ...10
Figure 5: An example illustrates the calculation method of expected load graph...24
Figure 6: An example illustrates the calculation method of expected WBA load graph. ...25
Figure 7: An example illustrates the calculation method of expected reduction load graph. ...26
Figure 8: An example illustrate that it is not suitable to select links according to expected reduction link load merely. ...28
Figure 9: It illustrates the idea of ripple-effect of channel changing. ...31
Figure 10: The flowchart of compute expected load phase and channel assignment phase. ...33
Figure 11: Number of accepted requests vs. Traffic Profiles...37
Figure 12: Number of accepted vs. Traffic Profiles...37
Figure 13: Blocking ratio vs. Number of NICs over our proposed heuristic channel assignment algorithm with WBA and heavy-load-first assignment approach. ...42
Figure 14: Blocking ratio vs. Number of receivers over our heuristic algorithm with WBA and heavy-load-first approach. ...43
Figure 15: Blocking Ratio vs. Number of NICs. Illustrate the blocking ratio in different number of channels for our heuristic algorithm. ...44
Figure 16: A 100×100 grid network topology...50
Figure 17: A 100×100 grid network topology with 4 regions...51
Chapter 1: Introduction
Wireless mesh networks (WMNs) have in recent years provided an alternative
technology for last-mile broadband Internet access service. They have attracted much
research interest because of their numerous potential applications. Some of these
applications, such as video-on-demand, video-conferencing, preferably involve
multicasting. The limited capacity and the effect of interference in WMNs, the large
number of users and the development of real-time multimedia applications, have all
led to the need to improve network throughput. This work studies the problem of
multicast routing and channel assignment using wireless broadcast advantage in
multi-hop and multi-channel wireless networks.
In recent years, wireless equipment has been extensively applied in local area
networks (LANs) and is becoming increasingly popular because of its lower cost.
Despite considerable advances in physical layer technologies, wireless LANs today
still do not offer the same sustained bandwidth as wired LANs. As a result of the
MAC contention, 802.11 schemes, protocol overheads and other issues, the actual
bandwidth that is available to applications is almost halved even when the peak data
rate of 802.11 a/g is 54Mbps. This problem is worsened for multi-hop ad hoc
networks by interference from neighbor nodes and links. Fortunately, the IEEE
802.11a/b/g and 802.16 standards provide multiple non-overlapping (orthogonal)
channels. They allow various simultaneous transmissions only if different orthogonal
channels are used. Even though 802.11a/b/g standards provide this possibility, most
ad hoc network implementations involve only a single frequency channel, wasting the
rest of the spectrum.
Wireless mesh networks are being developed as an alternative technology for
mesh routers and mesh clients, as displayed in Fig. 1. The mesh router in the WMN
functions not only as a host but also as a wireless router, forwarding packets for the
node pairs that cannot communicate directly with each other. A WMN is conceptually
similar to a mobile ad hoc network, but with several differences. The main
characteristics of WMNs and the differences between WMNs and ad hoc networks are
summarized as follows.
(1) Mesh routers are typically stationary but mesh clients can be stationary or
mobile nodes. Accordingly, topological changes are infrequent.
(2) Mesh routers are generally equipped with multiple NICs, which are
assigned to different orthogonal channels. Therefore, mesh routers can send
multiple data simultaneously, enormously increasing the bandwidth of the
whole network.
(3) Traffic in WMNs is normally aggregated from a large number of flows and
does not change very often. Accordingly, routes and channels can be
assigned according to the traffic profile.
(4) Channels can be assigned to NICs by a static or dynamic method. In the
static mode, each communication link is bound to a channel and this
assignment does not vary over time. In the dynamic mode, the assignment
Figure 1: An example of wireless mesh network that consists of several mesh routers and mesh clients.
Multicasting is a technique that routes data from a set of source nodes to a set of
destination nodes, in a way that minimizes the overall utilization of network resources.
In the 80s, Deering et al. [1] investigated the efficient distribution of traffic from a set
of senders to a set of receivers in a datagram network problem. Thereafter, many
routing protocols were proposed in wired networks [2], such as MBONE [3], MOSPF
[4], PIM [5], core-based, trees [6], and shared tree technologies [7, 8], among others.
However, the use of protocols in ad hoc networks has not been discussed as they do
not take into account mobility. For a wireless mesh network, these protocols may be
solutions but they do not take advantage of the wireless property, broadcast. Wireless
broadcast advantage the use of broadcast transmission rather than unicast
transmission to send one datum to multiple receivers at one time. In Fig. 2, a source is
to send one datum to its three neighbors, and only one channel is available. The left of
the figure reveals that three transmissions are required when unicast is used, but the
right of the figure reveals that only one transmission is required when broadcast is
Figure 2: An example illustrates that a source sends data to its neighbors with and without wireless broadcast advantage.
The channel assignment problem of WMN is an NP-hard optimization problem
[9]; therefore, routing and channel assignment is also NP-hard. For static and dynamic
traffic, the channel assignment can be static or dynamic. More specifically, in static
channel assignment, each link employs the channel that is assigned at the beginning of
the operation of the network. However, dynamic channel assignment may change the
link’s channel at any time. In this (work OR study OR investigation), for simplicity,
only static channel assignment is considered. First, two ILPs are proposed to solve the
routing and channel assignment problem for single-channel and multi-channel
wireless mesh networks, respectively. Next, the problem is divided into two
sub-problems – the routing sub-problem and the channel assignment sub-problem and
a heuristic algorithm is developed to solve these two sub-problems.
The rest of this article is organized as follows. Section 2 reviews related work on
multi-channel WMNs and the presented network model. Section 3 presents the
statement of the problem and the two proposed ILPs. Section 4 proposes a heuristic
algorithm and describes the strategies of the routing phase and the channel assignment
Chapter 2: Related Work
In this chapter, we survey several previous studies in WMNs. Chapter 2.1 briefly
describes the main ideas of a routing algorithm proposed by Pedro M. Ruiz and
Antonio F. Gómez-Skarmeta [10], and some of previous studies of channel
assignment in WMNs. Chapter 2.2 defines the network model and interference model
used in this thesis.
2.1: Some of the Previous Studies
In this section, we review some of previous routing and channel assignment
studies in WMNs.
2.1.1: Minimal Number of Transmissions Multicast Tree
The problem of computing minimal-cost multicast trees in multi-hop wireless
mesh networks has been studied elsewhere [10]. The problem of finding a
minimum-multicast tree is well-known to be NP-complete, as proven by Karp [11].
Some heuristic algorithms exist for computing minimal-cost multicast trees, such as
the MST algorithm [12, 13] and others. The authors of one work [10] claimed that the
Steiner tree is not generally the minimal-cost multicast tree in wireless mesh networks
and illustrated their claim with an example. The critical point is that the Steiner tree
does not take wireless broadcast advantage into account. The authors considered that
the cost function, the minimal edge cost, used in preceding works is not relevant in
cases that involved wireless mesh networks. Consequently, they proposed a new cost
is the tree that connects sources and receivers by issuing a minimum number of
transmissions, rather than having a minimal edge cost. They also demonstrated that
the problem of minimizing the cost of such a multicast tree in a wireless mesh
network is NP-complete. They proposed two heuristic algorithms: one was a
greedy-based heuristic algorithm and the other one was a distributed approximation
algorithm. The greedy-based heuristic algorithm first establishes a set of nodes that
can communicate directly with more than two receivers, and then generates the
multicast tree by building a Steiner tree from this set of nodes. The distributed
approximation algorithm builds the multicast tree from the destination nodes to the
source nodes. The underlying concept is the same as that of the greedy-based
algorithm. The algorithm builds paths from the nodes, which can directly
communicate with more than two receivers, to the source nodes, until each source
node can communicate with each destination node.
2.1.2: Channel Assignment Strategies for Multi-Channel WMNs
The channel assignment problem of multi-channel WMNs is that each node is
equipped with multiple NICs, which can be classified into three sub-classes - static,
dynamic and hybrid. These three are described below.
(1) Static Assignment. Static channel assignment strategies assign a channel to
each NIC permanently, or for a long period. Such assignment is very
suitable if interface switching takes a long time. Static channel assignment
strategies can be subdivided into identical and non-identical. Identical
approaches assign a channel a common set of channels to each node in the
network. Draves et al. [14] presented LQSP, a source routing protocol for
metric, WCETT, to identify a high-through path from a source to a
destination. High-quality routes must be selected. However, the protocol
limits the number of NICs to the number of channels in the network. Unlike
the identical approach, the non-identical approach can assign a channel to
each node in the network, according to the various sets of channels; the
number of available NICs can be less than the number of available channels.
Bandwidth allocation and load-balance routing have been developed
elsewhere [15] [16]. The main idea is to increase available bandwidth by
efficiently separating the interference regions.
(2) Dynamic Assignment. Dynamic channel assignment is more flexible than
static channel assignment as the former can switch NICs to any available
channel that has the lowest interference in any time slot. The Packing
Dynamic Channel Assignment (PDCA) algorithm, which simultaneously
performs link channel assignment and scheduling, has been proposed [17].
The main idea that underlies the PDCA algorithm is the packing of the
flows in a greedy manner in each period.
(3) Hybrid Assignment. As indicated by the term “hybrid”, this approach
combines static and dynamic channel strategies. Some of the NICs in the
network apply the static channel strategy and the rest apply dynamic
channel strategy. A common channel has been assigned to all nodes
communicate control messages to coordinate interfaces dynamically [18].
Each node has one NIC that is assigned a specific channel and other NICs
are switchable [19] [20]. The fixed NIC is always listening to a particular
channel called the listening channel. Each node in the network must
maintain a table that records the listening channel of its neighbor nodes. If
its switchable NICs to node B’s listening channel and then perform the
transmission.
2.2: Wireless Transmission and Interference Model
The wireless mesh network is assumed herein to be composed of many stationary
mesh routers. Each mesh router is equipped with a number of NICs and can aggregate
traffic (like an access point). Thus, the mesh routers form a multi-hop wireless
backbone to relay traffic from mobile clients in their coverage area. Several mesh
routers are equipped with gateway functionality and can connect to the Internet.
Several non-overlapping (orthogonal) available channels thus increase the available
bandwidth.
A node can communicate with another node if and only if both are within the
communication range of each other and a common channel is assigned to their
interfaces. A pair of nodes that use a single channel and are within interference range
may interfere with each other’s communication, even if they cannot communicate
with each other directly. Node pairs that use different channels can simultaneously
transmit data without interference. Each node has been defined as having an
interference disk with the node at the center [21]. Consider for example Fig. 3. The
circles plotted as broken lines represent the interference disks of nodes A and B. Link
(A, B) interferes with link (C, D) because node C is within node B’s interference disk
and both links use the same channel. In [22], interference was defined in a manner
similar to the definition in [21]: the interference range is defined as RI . Two links, (A,
B) and (C, D), do not interfere with each other if and only if all of the four pairs of
nodes (A, C), (A, D), (B, C), (B, D) are at least RI apart from each other. Otherwise,
Figure 3: An example illustrates the interference disk. Link (A, B) interferes with Link (C, D).
T
R denotes the transmission range and dis u v( , ) denotes the distance between
node u and node v. A link, which connects node u and node v, is said to be in the
network if and only if dis u v( , )≤RT and both u and v have an NIC that is assigned a
common channel. Accordingly, two nodes, u and v, can communicate with each other if and only if a link exists between them. Simultaneous unicast transmissions from node u to its neighbor nodes are possible if node u is equipped with multiple NICs and all the transmissions are on different orthogonal channels. Moreover, these transmissions can achieve the maximum capacity since the orthogonal channels do not interfere with each other. Nodes in the WMN have two modes of transmission - one is unicast transmission and the other one is broadcast transmission. Nodes select the most suitable method of transmission, according to the number of receivers. For instance, a node would like send a packet to one of its neighbor nodes, and does so by unicast transmission, or a node would like send a packet to some of its neighboring nodes, and does so by broadcast transmission.
I
R denotes the interference range. Node u is the interference node of node v if
and only if dis u v( , )≤RI . RI usually exceeds RT , and RI =2⋅RT is assumed
( , )
dis A C , dis A D( , ), dis B C( , ) and dis B D( , ) is less than or equal to RI . Otherwise, the two links interfere with each other. The interference link set of link (u, v) is composed of those links that interfere with link (u, v).
Many factors influence available capacity of a link; interference has the strongest effect. Given C, the maximum capacity of a link, the available capacity of a link is
given by C minus the total load within RT of this link. Figure 4 displays the
maximum available capacity of a specific link. All links in Fig. 4 use the same channel. Two constant bit rate (CBR) traffics are present in the network: one is sent from node 1 to node 2 and node 3; the other one is sent from node 7 to node 6 and node 8. The graph also presents corresponding route paths. For the first traffic, node 1 sends data to node 0 and node 2 simultaneously by broadcast transmission; then, node 0 forwards the data received from node 1 to node 3 by unicast transmission. For the second traffic, node 7 sends data by broadcast transmission. Hence, the total load
within RT of link (4, 5) is 2+2+2 = 6, contributed to by the two broadcast
transmissions and one unicast transmission. Finally, the available capacity of link (4,
5) is max{(C −6), 0}.
Figure 4: An example shows the set of interference nodes, interference links and also illustrates the available capacity of link (4, 5).
Chapter 3: Integer Linear Programming Formulation
In this chapter, we will introduce two integer linear programming (ILP) formulations for multicast routing and channel assignment problem in WMNs. Section 3.1 first describes the assumption and problem statement. And then section 3.2 introduces the two ILPs. The first is for single-channel and single-interface wireless mesh networks. The second is for multi-channel and multi-interface wireless mesh networks.
3.1: Assumption and Problem Statement
The wireless mesh network is represented by a directed graph G(V, E), where V denotes the set of nodes and E denotes the set of links with which incident nodes can
communicate directly. The links are assumed to be bi-directional. A link euv
comprises two arcs, arc (u, v) and arc (u, v). Arc (u, v) is a single-direction connection from node u to node v. A link (u, v) is assigned a channel w when both node u and v have one NIC tuned to channel w to communicate with the other. This study assumes that each link can be assigned at most one channel: arc (u, v) and arc (v, u) are assigned the same channel. Notably, this may not be a necessary constraint in general WMNs. However, it can be relaxed easily.
Even if two nodes are within the other’s communication range, then other communications on the same channel can interfere with the communication. For each
link (u, v)∈E, its interference link set, intf u v( , ), and its interference node set,
( , ) v
intf u v are defined. The set intf u v( , ) consists of the set of links that are
of nodes that are covered by the interference range of nodes u and v.
In multicasting, data are sent from one or more source nodes to a set of destination nodes. In this study, for ease of explanation, only data sent from one source node to a set of destination nodes are considered. The proposed ILP formulations can intuitively be understood to be applicable to cases in which data are sent from a set of source nodes to a set of destination nodes.
Multicast group is a set of nodes in a network that must share the same information. As stated above, only data sent from one source node to a set of destination nodes are considered. Therefore, a multicast group i consists of one source
node and a set of destination nodes, i
s and i { 1i i}
m
d = d d respectively. The set of
multicast groups is denoted P=
{
1 1 2 2}
, ,
s ∪d s ∪d . For each multicast group, traffic
flows from the source node to the destination nodes. Such traffic of a multicast group is defined as a multicast request. Specifically, multicast request i refers to traffic of multicast group i.
The channel assignment and routing problem are now formally stated as follows. Given a WMN G(V, E), the interference link set of each link, the number of non-overlapping channels, the number of NICs with which each node is equipped, and a traffic profile that specifies each multicast group and the corresponding traffic demand, the goal is to assign channels to the links and build corresponding routes for each multicast request to maximize the traffic throughput of a given traffic profile.
3.2: Formulation
ILP formulation is proposed to solve the problem that has been defined previously for multi-channel and multi-interface environments. The objective of the
ILP is to maximize the number of accepted multicast requests and assign the channel and route for each link and node pair, respectively. The notations used in the formulation are as follows.
C Raw capacity of each channel
W Set of non-overlapping channels
P Set of multicast requests
E’ Set of arcs
bwi Traffic load of each multicast request i
nici Number of NICs with which node i is equipped
( , )
intf i j Interference arc set of link (i, j). ( , )
v
intf i j Interference node set of arc (i, j). ( )
out
deg u Out-degree of node u
( )
deg u Degree of node u
The objective is to accommodate maximum traffic throughput.
( i i),
i
Maximize
∑
σ
⋅bw i∈P (1) wherei
σ is a binary variable, which is unity if request i is accepted. Otherwise, it is zero.
Notably, i
σ is set to unity if each route from source to destination has sufficient
bandwidth for request i. However, if any link associated with these routes has too
little capacity to satisfy the incoming request i, then i
σ is set to zero.
3.2.1: Single-Channel and Single-Interface
The following constraints in this section are based on the single-channel and single-interface wireless mesh network.
3.2.1.1 Constraints of building a multicast tree
For each multicast request, the source node needs several routes to each destination. The links of these routes constitute a set, which is called multicast-tree. Any multicast-tree is a rooted tree. The rooted tree is defined as a directed tree with a source node s called the root with no incoming arcs, and with other nodes that have exactly one incoming arc. Each node, except the destination nodes, in the multicast-tree has one or several outgoing arcs to ensure the connectivity of the tree. The destination nodes are assumed to be able or unable to pass forward traffic. That is, the destination nodes in a multicast tree can have zero or several outgoing arcs. The following variables are defined to formulate the constraints.
(i) T( , )iu v Binary variable, which is unity if arc (i, j) belongs to multicast tree i. Otherwise, it is zero.
(ii) FFW( , )iu v A nonnegative continuous variable, representing fictitious
flow.
Notably the variable T( , )iu v is a binary decision variable which equals unity if arc (u, v)
is included by multicast request i as a portion of the multicast tree, and zero otherwise.
The variable FFW( , )iu v is a nonnegative continuous variable. It represents fictitious
flow generated by the multicast initiator s through arc (u, v), and thus helps to prevent loops and cycling [23]. The following are the constraints for each multicast tree.
( , ) ( , ) 0 , , ( ) i v u i v V i i i u v out v V T u s i P T deg u
σ
σ
∈ ∈ = ∀ ∈ ∀ ∈ ≤ ≤ ⋅ ∑
∑
(2) ( , ) ( , ) ( , ') ( , ) ' , , ( ) i i v u i v V i i i v u u v v u out v V v v V T u V M i P T T T deg uσ
∈ ∈ ∈ ≤ ∀ ∈ − ∀ ∈ ≤ ≤ ⋅ ∑
∑
∑
∑
(3)( , ) , , i i i v u v V T σ u d i P ∈ = ∀ ∈ ∀ ∈
∑
(4) ( , ) ( , ) ( , ), , i i i i v u u v v u v V v V v V FFW FFW T u V s i P ∈ ∈ ∈ − = ∀ ∈ − ∀ ∈∑
∑
∑
(5) ( , ) ( , ) ( 1) ( , ), , i i i i v u v u v u T ≤FFW ≤ V − ⋅T ∀ ∈u V −s ∀ ∈i P (6)A multicast request will be accepted under the following conditions. (1) The source node has at least one outgoing arc.
(2) Each destination node has only one incoming arc.
(3) A path exists between the source node and each destination node.
Equations (2) ~ (4) present the constraints for each node in the graph for each multicast tree. Equation (2) represents the fact that the root of the tree, the source node, should not have any incoming arcs. It also represents the fact that the root has
one or more outgoing arcs if variable σi is set to unity, such that request i is
accepted. Equation (4) ensures that each destination has only one incoming arc or no
incoming arcs if the variable σi when set to unity or zero, respectively. Here, the
outgoing arcs from each destination are not constrained since each destination is assumed to be able or unable to forward packets to its neighbors. Equation (3) specifies the flow conservation constraint for the nodes, except the source node and the destination nodes. It states that such nodes should have at least one outgoing arc if it has an incoming arc. Equations (5) ~ (7) prevent cycling [23].
3.2.1.2 Constraints of Interference Model and Link Capacity
We now have the multicast tree for each multicast request. However, it is not sufficient to solve our problem since we have to consider whether each arc of a multicast tree has enough capacity or not. In previous section, we have introduced our interference model, and the method to compute total load and available capacity of each link. Thus the following we will define several variables and constants that are
used later.
(i) ,
uv
z e
g Binary constant, which is unity if node z is within interference
range of link euv. Otherwise, it is zero.
(ii) ,
uv
i z e
F Binary variable, which is unity if node z is under the two cases
below.
a) Node z is within interference range of link euv and more than
one of its outgoing arcs belong to the multicast tree of multicast request i.
b) Node z is not within interference range of link euv but more
than one of its outgoing arcs, whose destination interferes with
link euv, belong to the multicast tree of multicast request i.
Otherwise, it is zero. (iii)
uv
e
X Binary variable, which is unity if there is traffic on link euv.
Otherwise, it is zero.
Notably the constants and variables we define here use the notation euv to represent
each undirected link in the graph G. This does not conflict with the previous constraints which use arc but not link. Using link instead of arc will be easier and intuitional while computing the remaining capacity of each link. The following are the
constraints for variables ,
uv i z e F and uv e X . v v , ( , ') , ( , ') ( , ') ' ( , ') ', z' Intf ( ) , , ( , ') , ( , ') ( , ') ' ( , ') ', z' Intf ( ) ( ) ((1 ) ) ( ) ( ) ((1 ) ) uv uv uv uv uv uv uv i i z e z z z e z z z z E z z E e i z e out i i z e z z z e z z z z E z z E e g T g T F deg z g T g T ∈ ∈ ∈ ∈ ∈ ∈ ⋅ + − ⋅ ≤ ≤ ⋅ + − ⋅
∑
∑
∑
∑
, ∀ ∈z V, ∀euv∈E, ∀ ∈i P (7) Equation (7) yields , uv i z e F . As we mentioned before, , uv i z einterferes with link euv that belongs to multicast tree of multicast request i. Otherwise, it will be zero.
( , ) ( , ) ( , ) ( , ) ( ) ( ), uv i i u v u v i i i P e u v u v uv i P T T X T T e E P ∈ ∈ + ≤ ≤ + ∀ ∈
∑
∑
(8) Equation (8) yields uv eX . For link euv that connects node u and v, flow from node u
to v or from node v to u will render
uv
e
X to be one. Note that the notation ( , )u v is
the reverse arc of ( , v)u .
, z (( ) ) (1 ) ( ) , uv uv uv uv uv i i z e e e e uv e uv i P V F bw X C X intf e C e E ∈ ∈ ⋅ ≤ ⋅ + − ⋅ ⋅ ∀ ∈
∑ ∑
(9)Equation (9) restricts that the total load of links in intf(u, v) (left hand side of equation (9)) cannot exceed the raw capacity of a channel if there are traffic on link
uv
e (right hand side of equation (9)). Similarly, if there are no traffic on link euv, the
total load of links can be as large as raw capacity multiplied by the number of links in
intf(u, v).
3.2.2: Multi-Channel and Multi-Interface
The following constraints in this section are based on multi-channel and multi-interface wireless mesh network.
3.2.2.1 Constraints of building a multicast tree
As mention in section 3.2.1, we have to build the corresponding multicast tree for each multicast request. However, the following ILP is based on another environment, i.e. multi-channel and multi-interface wireless mesh network. Therefore, the variables defined in section 3.2.1 are not suitable and sufficient to present it. In
order to conform to it, we define a new variable ( , ),i
u v w
(i) T( , ),iu v w Binary variable, which is unity if arc (i, j) belongs to multicast tree
i and is on the channel w. Otherwise, it is zero.
The following are the constraints.
( , ), ( , ), 0 , , ( ) i v u w i v V w W i i i u v w out v V w W T u s i P T deg u
σ
σ
∈ ∈ ∈ ∈ = ∀ ∈ ∀ ∈ ≤ ≤ ⋅ ∑ ∑
∑ ∑
(10) ( , ), ( , ), ( , '), ( , ), ' ( ) ( ) ( ) i i v u w v V w W i i i v u w u v w v u w out v V w W v V w W v V w W T T T T deg uσ
∈ ∈ ∈ ∈ ∈ ∈ ∈ ∈ ≤ ≤ ≤ ⋅ ∑ ∑
∑ ∑
∑ ∑
∑ ∑
, ∀ ∈u V−Mi, ∀ ∈i P (11) ( , ), , , i i i v u w v V w W T σ u d i P ∈ ∈ = ∀ ∈ ∀ ∈∑ ∑
(12) ( , ) ( , ) ( , ), , i i i i v u u v v u v V v V v V FFW FFW T u V s i P ∈ ∈ ∈ − = ∀ ∈ − ∀ ∈∑
∑
∑
(13) ( , ) ( , ) ( 1) ( , ), , i i i i v u v u v u T ≤FFW ≤ V − ⋅T ∀ ∈u V−s ∀ ∈i P (14) ( , ), ( , ) ( , ), , ( , ) , i v u w i i w W v u v u w w W T T T v u E i P W ∈ ∈ ≤ ≤ ∀ ∈ ∀ ∈∑
∑
(15)Equation (10) ~ (15) are similar to equation (2) ~ (6) except that the environment at this place is multiple channels and multiple interfaces. Equation (10), (11), and (12) are the constraints of a multicast tree for source node, intermediate nodes, and destination nodes respectively. Equation (13) ~ (15) are the constraints to prevent loops or cycles happening.
3.2.2.2 Constraints of Interference Model, Link-Channel Capacity, and NIC
We have formulated the constraints of our interference model in section 3.2.1.2, and those are for single-channel and single-interface environment. For now, in the following, we will expand those constraints to conform to the multi-channel and
multi-interface environment. In addition to the application of the interference model, the use of channels and network interface cards must be restricted to a rational number, meaning that the number of channels and network interface cards (NICs) used by a node or a link cannot exceed the respective upper bounds. For instance, a network system has ten available channels and each node has two NICs. If node A uses channel 1 and channel 2 to transmit traffic to its neighbor node B and node C respectively, then node A cannot use the other channels, except when channel 1 and channel 2 transmit traffic to any neighbor that is neither node B nor node C, because node A only has two NICs. Several new variables are defined below.
,uv,
i
z e w
F Binary variable, which should be unity if node z is in one of the
following two conditions.
(1) Node z interferes with link euv and more than one of its
outgoing links are in multicast tree i on channel w.
(2) Node z does not interfere with link euv but more than one of
its outgoing links, whose destination interferes with node z, belong to multicast tree i on channel w.
Otherwise, , , uv i z e w F should be zero. , uv e w
X Binary variable, which should be unity if traffic passes it on
channel w. Otherwise, it is zero.
,
u w
NIC Binary variable, which should be unity if an NIC of node u
employs channel w. Otherwise, it should be zero. The following are the constraints.
v v , ( , '), , ( , '), ( , ') ( , ') , z' Intf ( ) , , , ( , '), , ( , '), ( , ') ( , ') , z' Intf ( ) ( ) ((1 ) ) ( ) ( ) ((1 ) ) uv uv uv uv uv uv uv i i z e z z w z e z z w z z E z z E e i z e w out i i z e z z w z e z z w z z E z z E e g T g T F deg z g T g T ∈ ∈ ∈ ∈ ∈ ∈ ⋅ + − ⋅ ≤ ≤ ⋅ + − ⋅
∑
∑
∑
∑
, z∈V, ∀euv∈E, ∀ ∈w W, ∀ ∈i P (16) Equation (16) yields , , uv i z e w F . ( , ), ( , ), , ( , ), ( , ), ( ) ( ), , 2 uv i i u v w u v w i i i P e w u v w u v w uv i P T T X T T e E w W P ∈ ∈ + ≤ ≤ + ∀ ∈ ∀ ∈ ⋅∑
∑
(17) Equation (17) yields , uv e w X . , , , , , , z (( ) ) (1 ) ( ) , , uv uv uv uv uv i i z e w e w e w e w uv e w i P V uv F bw X C X intf e C e E w W ∈ ∈ ⋅ ≤ ⋅ + − ⋅ ⋅ ∀ ∈ ∀ ∈∑ ∑
(18)Equation (18) constrains the summation of the loads of links in intf(u, v) (left hand side of equation (18)) on channel w not to exceed the raw capacity of channel w if link
e (in the right-hand side of Eq. (18) is loaded). Similarly, if link e is unloaded, then
the summation of load of links can be as large as the raw capacity multiplied by the number of links in intf(u, v) .
, 0 1, uv e w uv w W X e E ∈ ≤
∑
≤ ∀ ∈ (19)Equation (19) allows only one channel to be assigned to an edge. That is, link euv
has two arcs (u, v) and (v, u) with identical channel w, and node u can exploit only this channel, channel w, to transmit the traffic to node v, and vice versa.
, ( ) , , ( ) , , deg( ) e w e E u u w e w e E u X NIC X u V w W u ∈ ∈ ≤ ≤ ∀ ∈ ∀ ∈
∑
∑
(20) , 0 u w ( ), w NIC NIC u u V ≤∑
≤ ∀ ∈ (21)Equations (20) and (21) are the NIC constraints. Equation (20) yields the variable
,
u w
Chapter 4: A Heuristic Algorithm
Two ILP were introduced to solve the multicast routing and channel assignment problem in WMNs. However, the computation time of ILP is too high to be acceptable. A heuristic strategy is required since it has less computation time and yields an acceptable solution. Routing and channel assignment problems are both NP-complete, and considering both routing and channel assignment simultaneously is impossible. Therefore, the two problems are considered individually. The heuristic algorithm employs a routing algorithm to determine the multicast tree for each multicast request. From these multicast trees are estimated the approximate load of each link and the most suitable channel is assigned to each link. The rest of this section introduces a strategy to calculate the expected load and expected WBA load of each link, as well as the channel assignment algorithm. Finally, a short summary and a flowchart are presented.
4.1: Compute Expected Load Phase
The multicast tree of each multicast request must be known to estimate the expected load of each link. The following explains the use of Ruiz’s algorithm to yield these multicast trees.
A network topology and a traffic profile are given. Each link in the network has a weight value. The weight value of a link depends on several factors, such as link latency, distance between a pair of nodes. In practice, the weight of each link in a network probably differs from others’. For ease of explanation, in the following instances, all links are assumed to have equal weights. The traffic profile comprises
many multicast groups and the corresponding traffic demand. As in the definition in section 3.1, the traffic associated with each multicast group is assume to be sent from one source node to a set of destination nodes. Finally, Ruiz’s algorithm is individually executed for each multicast request, yielding the multicast tree of each multicast request.
4.1.1: Expected load graph, Expected WBA load graph, and Expected
Reduction load graph
After each multicast tree has been obtained, the next step is to calculate the total load of each link. The following introduces three forms of load graph – the expected
load graph, the expected WBA load graph and the expected Reduction load graph. A
load graph is a structure that describes the load distribution in the network. In a load
graph, each arc is bound by a load value t that represents the traffic that passes through this arc with a total load of t units. The load value of a link (u, v) is the sum of the load value of arc (u, v) and arc (v, u). For convenience, the load values of the arcs in those three load graphs are called expected arc load, expected WBA arc load and
expected reduction link arc. The same nomenclature is applied to each link. These three load graphs will support the proposed heuristic strategy.
In the expected load graph, any transmission is assumed to be unicast transmission. Restated, wireless broadcast advantage is not considered. The method for calculating each expected arc(link) load is explained as follows. Given a network of four nodes, nodes A, B, C and D, each link in the graph is assigned the same channel, as illustrated in Fig. 5(a). Each link has an initial load value of zero units. Now traffic is sent from node A to the other two nodes at a amount of 300 units. Arc
sent from node B to node A and node D at a amount of 200. Therefore, the expected arc load of arc (B, D) is 200 units, and the expected arc load of (B, A) is also 200. The
expected link load of link eAB is the sum of the expected arc loads of arc (A, B) and
arc (B, A), which is 500 units. Figure 5 displays the steps of the calculation.
Figure 5: An example illustrates the calculation method of expected load graph.
In expected WBA load graph, each transmission is assumed to be broadcast: the wireless broadcast advantage is considered. In the following, the same example as was used in the preceding paragraph is applied to elucidate the method for calculating
expected WBA arc(link) load. Figure 6 displays the steps. Similarly, the example involves two traffic flows - one from node A to its neighbors, nodes B and C, and the other from node B to nodes A and B. Node A, originally needed two unicast transmissions to send two identical data to its neighbors, nodes B and C. However, if wireless broadcast advantage is considered, then only one broadcast transmission is required to send data from node A to its neighbors. A simple formula is applied to calculate the expected WBA arc(link) load and elucidate the phenomenon clearly. The formula distributes traffic into the links that connect the sender to the receivers. For the traffic generated by node A, the two arcs, which connect node A, B to node A, C, carry about 300/2=150 units of traffic data. The same method is applied to the traffic generated by node B.
Figure 6: An example illustrates the calculation method of expected WBA load graph.
The expected reduction load graph results from expected load graph and the expected WBA load graph introduced above. Each expected reduction arc(link) load is the corresponding expected arc(link) load minus the corresponding expected WBA arc(link) load. The same example as presented in Fig. 7 is applied here to display the calculation of each expected reduction arc (link) load. Figure 7(a) shows the expected load graph from Fig. 5, and Fig. 7(b) plots the expected WBA load graph from Fig. 6. Consider the arc (A, B); its expected arc load is 300 units, and its expected WBA arc load is 150 units; then its expected reduction arc load is therefore 300 - 150 = 150 units. The same method is applied to calculate each expected reduction arc(link) load. Finally, the expected reduction load graph is obtained. Therefore, the expected reduction arc(link) load represents the possible saving of the load of the corresponding arc(link) by replacing unicast transmission with broadcast transmission.
Figure 7: An example illustrates the calculation method of expected reduction load
graph.
4.2: Channel Assignment Phase
The preceding section described three important structures - expected load graph,
expected WBA load graph and expected reduction load graph. The functions of these three structures in the proposed channel assignment algorithm are introduced below. A communication between two nodes can be interfered with by other nodes that use the same channel. Accordingly, the goal of this phase is to develop an appropriate channel assignment algorithm to reduce the interference between each communication. Furthermore, the wireless broadcast advantage is considered. Accordingly, the proposed channel assignment is divided into the following two steps in this order.
(1) First, as in Ruiz’s routing algorithm, search the nodes and the corresponding links with highly tendency of wireless broadcast advantage and assign channels to those nodes and links. The underlying concept is that, if those nodes and links are assigned suitable channels initially, then the interference can be reduced and the traffic throughput greatly improved.
(2) Perform a channel assignment procedure in heavy-load-first order to assign channels to the rest of the nodes and links.
The following paragraphs describe the two steps in detail. Chapter 5 then presents a performance analysis of the algorithm.
4.2.1: Step 1: Search the nodes with highly tendency of wireless
broadcast advantage
This section presents a procedure for searching the nodes with highly tendency of wireless broadcast advantage. Wireless broadcast advantage, as stated above, is a technique that employs broadcast transmission rather than unicast transmission to send one datum to multiple receivers at a time to reduce interference. For ease of explanation, the nodes (links or arcs) that have highly tendency of wireless broadcast advantage are called WBA nodes (links or arcs).
Each node could be a WBA node. However, such nodes interfere with each other. Therefore, the question is raised regarding how to select the WBA nodes properly. The WBA links must be identified first to achieve this goal. This study proposes a approach that involves sieving with the aid of the three types of load graph. Based on section 4.1.1, for a link, a larger saving link load corresponds to a greater probability of reducing the interference in the network if its neighbor links using the same channel. However, such description for saving link load above is not precise or suitable because it does not take interference into account. The instance described in section 4.1 can be considered to explain this situation. New traffic, with a amount of 1000 units, is generated from node C and passes through node A to arrive at node B, the destination node. The corresponding three load graphs are as displayed in Fig. 8. In Fig. 8(c), link (A, B) has the largest expected reduction link load and link (A, C) the second. However, the same channel cannot be assigned to both link (A, B) and link (A, C) since both have heavy loads. Therefore, a suitable method is required to
select edges and prevent unacceptable interference.
Figure 8: An example illustrate that it is not suitable to select links according to
expected reduction link load merely.
Since the saving link load is not precise or suitable to decide which nodes (links or arcs) are WBA nodes (links or arcs), a precise one is required to reflect the conditions of interference and take wireless broadcast advantage into consideration. A criterion called the expected reduction link (arc) ratio is proposed as follows.
( )
( ) =
( )
expected WBA link arc load expected reduction link arc ratio
expected link arc load (23)
From Eq. (23), a larger expected reduction link (arc) radio intuitively favors the selection of the link (arc) as a WBA link (arc). Therefore, a threshold is required to divide the links into WBA links and others. This study sets the threshold as 0.5.
A method of determining which links (arcs) is WBA links (arcs) has now been explicated. The final part is to determine which nodes are WBA nodes. The procedure is divided into two stages - building stage and sieving and channel assignment stage. It is described as follows.
Building stage, if a node has more than two WBA arcs, then it is chosen as a candidate WBA node. Otherwise, it is discarded. Repeat this procedure for all nodes in order until all nodes are checked.
(b) (c)
Sieving stage and channel assignment stage, for the candidate nodes in order of
the number of WBA arcs associated with the node. In this stage, the appropriate nodes are filtered from the candidate nodes as WBA nodes. A channel is properly assigned to those nodes and their corresponding links. The procedure is described as follows. Let the set of candidate nodes be S.
Step 1: Select the node that has the most WBA arcs or the largest ratio of WBA
arcs to total arcs from S. Let this node be node x. Remove x from S; go
step 2.
Step 2: If one of x’s WBA arcs has been assigned a channel, then node x is dropped; go step 1. Otherwise, go to step 3.
Step 3: If the total expected link load of x’s WBA arcs exceeds the capacity of a channel, then remove the arcs with smaller saving arc ratios until the total expected link load is less than the capacity of the channel. Finally, if the number of x’s remaining WBA arcs, called eligible WBA arcs, do not exceed two, then x is discarded; go step 1. Otherwise, go to step 4. Step 4: Assign the channel with least load to node x and its eligible WBA arcs.
Go to step 5.
Step 5: If other candidate nodes are present in S, go step 1. Otherwise, finish. Now, channels have been assigned to appropriate WBA nodes and WBA links.
4.2.2: Step 2: Perform channel assignment procedure in
heavy-load-first order
This section introduces the method for assigning channels to other nodes and links. It differs from the procedure described in section 4.2.1; the channel assignment procedure introduced here begins with links. The procedure introduced in section
4.2.1 is applied to assign channels to some of the links and nodes. Therefore, each
expected link load can be recalculated using this information, as the updated expected
link load; the corresponding graph is then called the updated expected load graph. It helps in finding links with heavy loads.
Before the channel assignment strategy can be described, several terms must be defined. Let the set of links that have not been assigned a channel be H. The number
of NICs of node u that are not assigned a channel is anic u( ). The steps are as
follows.
Step 1: Select the link that has the largest updated expected link load from H.
Let this link be l, and the end points of this link be lu and lv. Remove l
from H. Go to step 2.
Step 2: Apply different policies according anic l( )u and anic l( )v .
Case 1: anic l( )u >0 and anic l( )v >0,
Both nodes have available NICs that are not bound to any channel. Assign the least load channel to this link and set the NIC correctly.
Case 2: anic l( )u =0 and anic l( )v =0,
If some channels are common to lu and lv, then assign the least
loaded channel to link l. Otherwise, the ripple-effect of channel changing occurs. This process will be described below.
Case 3: (anic l( )u >0 &anic l( )v =0) or (anic l( )u =0 &anic l( )v >0)
In the case, (anic l( )u >0 &anic l( )v =0); assign the least loaded channel from those channels of node u to link l and node v. Do the same if (anic l( )u =0 &anic l( )v >0).
Step 3: Finish.
The ripple-effect of channel changing is described below. For a link l with end points u
v. Let a set be composed of the channels associated with node u and the set of channels of node v be CL. A WBA channel list, WL, is built, to reduce interference and maintain the channel assignment that was conducted in section 4.2.1. The list records that channels that are assigned to WBA nodes and WBA links, in the hope of selecting the channel that is not part of WL first, to prevent local heavy interference. The steps are as follows.
Step 1: Select the least loaded channel from CL that is not part of WL. If such a channel is found, denote it w, and go to step 3; otherwise, go to step 2. Step 2: Select the least loaded channel from CL, and denote it w. Go to step 3. Step 3: If node u has channel w, then select a victim channel from node v, called
w’. Do the same thing if node v has channel w. Assign channel w to link l.
Go to step 4.
Step 4: Recursively adjust the NIC of the node that has w’ and the channel of related links.
Step 5: Finish.
Figure 9 illustrates the main idea that underlies the ripple-effect of channel changing.
4.3: Short Summary
The heuristic algorithm proposed herein comprises two phases. The two phases and the steps of each phase are summarized below.
(1) Compute expected load phase. This phase constructs the multicast trees for each multicast request using [10]. These multicast trees are routed to compute the expected load, the expected WBA load and the expected reduction in load of each link in the network.
(2) Channel assignment phase. This phase selects the eligible WBA nodes and assigns the most suitable channel to them and their related WBA links. Finally, a channel is assigned to the rest of links.
Figure 10: The flowchart of compute expected load phase and channel assignment phase.
Chapter 5: Simulation Results
This section evaluates the performance of the proposed heuristic algorithm with WBA by simulation and compares it with the heavy-load-first (HLF) channel assignment approach without WBA. In the simulations, a full 10×10 grid topology with 100 nodes is used. The transmission range is set such that each node can communicate with its one-hop away neighbor nodes exactly, and the interference range is set such that each node interferes with those nodes that are removed from it by two hops. In the network are several available orthogonal channels (parameters of the network system), and each link in the network can be assigned only one channel: the two arcs of a link should be assigned the same channel. The capacity of each link is 3590Kbps. In the full 10×10 grid topology, each node has up to four neighbors. Therefore, equipping a node with more than four NICs is superfluous.
Traffic profiles are obtained from several parameters, including traffic rate, the number of receivers, the number of requests and traffic distribution. These four parameters affect the congestion of an entire network. In the simulations, the traffic rate of all requests is 200Kbps and the number of requests is 45. Traffic distribution is the distribution of the members of the multicast groups regionally, or according to geographic location, causing local heavy congestion in a particular region. The following is an example of the use of the distribution method used in the simulations. First, the grid topology is divided into four regions, as present in Fig. 17. Next, for each multicast request, the source node is randomly located in either region A or region B. If the source node is in region A, then the corresponding destination nodes will be located in region C. Similarly, the destination nodes will be located in region D if the corresponding source node is located in region B. Therefore, local heavy
congestion can be intuitively understood to be in regions C and D. Traffic profiles used in the simulation are random and based on the method of local heavy congestion. Six, eight and ten receivers are used in the simulations to simulate different levels of congestion. Notably, the number of receivers is the same for each multicast request in a simulation run.
The evaluation metric for the experiments is the blocking ratio, which is the
number of rejected requests divided by the number of total requests. In the simulation, a request is accepted if routes exist between the source node and each destination node, and each link on these routes has sufficient available capacity. Otherwise, the request is said to be rejected.
Figure 11 compares the number of requests accepted using the proposed heuristic with that using the HLF approach. It displays traffic throughput when the network has a total of eight available channels. Figures (a) ~ (c), (d) ~ (f), (g) ~ (i) depend on the number of NICs. They reveal that the proposed algorithm with WBA has greater traffic throughput than HLF algorithm The nodes equipped with two NICs perform worse than those equipped with more than three NICs, because of the ripple-effect of channel changing. The ripple-effect of channel changing causes many links in a region to use the same channel, so those links interfere with each other. Notably, several traffic profiles in Fig. 11(a) reveal that the proposed heuristic algorithm underperforms HLF. This poor performance is caused by the ripple-effect of channel changing, which destroys the channel assignment of the WBA nodes, increasing the number of links in such a region that use the same channel. Figure 12 presents the performance summary of our proposed heuristic algorithm while the number of receivers is 6, 8, and 10 and 8 available channels in network.