^{1}

^{1}

^{*}

^{2}

This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution license (http://creativecommons.org/licenses/by/3.0/).

Recent advance in wireless sensor network (WSN) applications such as the Internet of Things (IoT) have attracted a lot of attention. Sensor nodes have to monitor and cooperatively pass their data, such as temperature, sound, pressure,

Wireless Sensor Network (WSN) applications such as the Internet of Things (IoT) are an integral part of the Future Internet that could be defined as a dynamic global network infrastructure with self-organization capabilities that is seamlessly integrated into the information network based on standard or interoperable communication protocols. This attracts more attention to how sensor nodes can monitor and cooperatively pass their data like temperature, sound, pressure,

Multicasting is an automatic communication technique in which data from source nodes are transmitted to a larger number of subscribed destination nodes for the purpose of networking these kinds of applications. However, maintaining a functional level of Quality-of-Service (QoS) in a multicast environment, especially in a resource-constrained wireless sensor network, can be difficult. Contemporary research indicates that this problem can be abstractly constructed and modeled through a multicast tree (forest) model with resource allocations and routing assignment problems [

In order to design a multicast sensor system and solve the problems mentioned above, the solution planning is concerned with the economic feasibility of establishing a network in the first stage, the QoS, and the fairness to subscribers in the second stage. This work can be constructed by a cost of a multicast sensing tree to determine the total resource utility of networks for multimedia applications with regards to delay in transmission. QoS metrics is a crucial for the measurement of latency, delay jitter, delay variance, and end-to-end delay per source-destination path. Lastly, we must keep in mind that subscribers may have different service level agreements in a real operation system. We also consider fairness, which measures whether resources are being adequately and fairly allocated to subscribers from both a user perspective and an operations perspective.

IP multicast is a bandwidth-conserving technology that runs the TCP/IP suite of protocols, specifically designed to reduce traffic to forward IP datagrams to members in multicast groups by simultaneously delivering a single stream of information to potentially thousands of corporate recipients. It can deliver both data and video streaming to specific users in groups, and can do so based on the structure of the multicast tree and whether it incorporates source-based routing, center-based routing, or a hybrid of the two [

Distance Vector Multicast Routing Protocol (DVMRP) is defined in RFC 1,075 and is used to share information between routers to facilitate the transportation of IP Multicast packets among networks. The protocol is based on the RIP protocol for forwarding packets: the router generates a routing table with the multicast group corresponding to number of devices/routers between the router and the destination.

Multicast Open Shortest Path First (MOSPF) is an extension to the Open Shortest Path First (OSPF) protocol to support multicast routing. It is allowed for routers to share information about group memberships.

PIM Sparse Mode (PIM-SM) is one of the variants of Protocol-Independent Multicast (PIM). PIM provides one-to-many and many-to-many distribution of data over Internet. It is defined in RFC 4601 and termed protocol-independent because topology discovery mechanism is not included in PIM, but instead uses routing information supplied by other traditional routing protocols such as the Routing Information Protocol (RIP), Open Shortest Path First (OSPF), Border Gateway Protocol (BGP) and Multicast Source Discovery Protocol (MSDP). PIM-SM explicitly is built unidirectional shared trees rooted at a rendezvous point per group, and optionally creates shortest-path trees per source. PIM-SM generally scales fairly well for wide-area usage.

Core-Based Trees (CBT) was proposed for making IP Multicast scalable by constructing a tree of routers. The differentiation with other protocols for multicasting is called the routing tree that comprises multiple “cores” (also known as “centres”). The core router locations are statically configured. Other routers are added by growing “branches” of a tree, comprising a chain of routers, from the core routers out towards the routers directly adjacent to the multicast group members.

The CBT protocol can form loops during periods of routing instability, and that it can consistently fail to build a connected multicast tree when the underlying routing is stable, so the Ordered CBT (OCBT) is used. The OCBT protocol is proven to eliminate these deficiencies and reduces the latency of tree repair following a link or core failure. OCBT builds a shared multicast tree distributed per group. It is suited to inter- and intra-domain multicast routing. It uses the property to guarantee that no transient or permanent loops ever form in the structure of the tree. The protocol is that routing-table loops occur in the underlying routing protocols. OCBT also improves scalability by allowing flexible placement of the cores that serve as points of connection to a multicast tree.

Border Gateway Multicast Protocol (BGMP) is a scalable multicast routing protocol which addresses how to choose a global root for a delivery tree. However, the root is a domain, not a single router, so if there is any path available to the domain connectivity can be maintained. BGMP builds a bidirectional, shared tree of domains. BGMP is used as the inter-domain or external protocol, while domains can run any multicast IGP internally (such as CBT or PIM Sparse Mode), and can build source-specific shortest-path distribution branches to supplant the shared tree where needed.

Each approach not only discerns between various structures (centralized or distributed), but also can be designed to support dense or sparse modes. The IP Multicast solutions offer benefits relating to the conservation of network bandwidth. In the case of a high-bandwidth application, such as MPEG video, IP Multicast can benefit situations with only a few receivers because a few video streams would otherwise consume a large portion of the available network bandwidth. Even for low-bandwidth applications, IP Multicast conserves resources when transmissions involve thousands of receivers like in sensor networks.

Currently there are a lot of multimedia applications and traffic has grown significantly, so the QoS performance in routing becomes more and more important for a multicast sensor network. The routing protocols such as OSPF (Open Shortest Path First) which is created by the Dijkstra algorithm is widely used in network routing protocols for computing a routing table inside a sub-network to get a shortest transmission path [

According to [

Link constraints: the restrictions on the use of link to form a routing tree, such as bandwidth, link capacity, or buffer of each link.

Path constraints (or tree constraints): the restrictions in the perspectives of the whole multicast tree. For example, the end-to-end delay from source to destination.

The goal of QoS routing is to find a feasible path (tree) with sufficient available resources to address the QoS requirements for sensor nodes in a wireless sensor network [

Delay, bandwidth, delay jitter, throughput, or packet loss ratio are the QoS measurements of a routing strategy of a network link. In addition, the cost of a link in the multicast tree can be defined in dollars or as a function of the buffer or bandwidth utilization. In previous research, determining the available feasible paths of the optimization problem and finding the lowest-cost feasible solution is also considered. Chen and Nahrstedt have conducted a survey of various QoS routing algorithms; these can be divided into three broad classes: (1) source routing algorithms, (2) distributed routing algorithms, and (3) hierarchical routing algorithms. Chen proposes a QoS-Aware Multicast Routing Protocol (QMRP) for non-additive metrics in which he wishes to discover a feasible path with enough requested link bandwidth and buffer space management [

Past research has dealt with how to optimally allocate limited resources through maximizing utility under various constraints. Limited research, however, has considered fairness in a live communication network environment. In [_{p}_{p}_{′} for some session _{p}_{′}≤ _{p}

Max-min fairness is a way to maximize the total throughput considering the optimal fairness. Sometimes it can strike a balance between fairness and throughput by adopting the proportional fairness [

In [

When MST is used in networks, it is necessary to consider QoS issues. Similar to the shortest path problem, when QoS constraints, such as delay, are added to the routing tree, the MST problem becomes an NP-hard problem, too. Some previous research introduces efficient heuristic algorithms to solve the problem. Salama, Reeves, and Viniotis [

Multicast applications must fulfill a variety of requirements including bandwidth, delay, throughput, and packet loss rate. These include QoS issues regarding how to allocate constrained resources to maximize the user experience. Previous solutions to this problem might have involved constructing a multicast tree to achieve the desirable aim, but these approaches did not optimally address requirements and satisfy the needs of individual subscribers in different groups. Delay is the most important QoS metric and it is especially sensitive in a wireless communication environment. Thus, if wireless sensor networks efficiently distributes resources, wireless users should be able to access multimedia content. Subscribers in the same group may utilize the same backhaul but may have different channel conditions depending on how far or the number of hops to source node. Thus, their experiences as users may vary drastically. It is therefore important to fairly allocate resources to each connection in a multicast tree according to the end-to-end delay. According to our research, in order to achieve both routing and load balancing in the context of a non-splittable flow. The approximation algorithms proposed select the fairest possible routing path in the most optimal manner. The next would be max-min fairness to maximize the total throughput while maintaining optimal fairness.

The rest of this paper is organized as follows: Section 3 describes the problem in a detailed and concise manner, and also includes a mathematical programming model. Section 4 presents the solution approaches for our model and develops a heuristic to get a primal feasible solution. Section 5 illustrates the simulation environment and experimental results of our approach. Finally, we present our conclusions and determine the direction of future research in Sections 6 and 7.

For the purposes of system modeling, a multicast system can be modeled as a tree. Sink node can send messages to receivers in a multicast group within the multicast tree is predefined. The sender can be viewed as a root and receivers can be viewed as leaves. Cost depends on the size and scalability of the tree, which itself depends on whether it is a single multicast tree or multiple multicast trees.

In an operation sensor network, a multi-rate multicast wireless sensor network is considered. This means each sensor node can request different quality data streams. The sink node may encode these different requirements into several different layered streams for subscribers through single or multiple multicast trees. Each source represents a distinct group, which has its own end-to-end delay.

However, most multiple-multicast routing problems of their objectives focus on the way of finding a set of routing trees satisfied with constraints. One of these constraints is limited bandwidth. The link capacity of the wireless sensor network might be contented by how many sensor nodes are existed and the traffic sessions are created in the routing paths of the multicast groups. Briefly, our model is designed to determine the following: (1) what multiple-multicast-group routing strategies are optimal; (2) how much capacity is allocated to the selected links used in the multicast sensor network; (3) what is the minimum end-to-end intra-delay per path in a multicast group; (4) How do various approaches towards achieving the minimum end-to-end inter-group experience delay among different multicast groups.

In the model which is shown in

All routers are stationary.

Each link is adopted with a M/M/1 queuing model. The delay function d = 1/(C − F) subject to C > F(C means the capacity on a link, F means the aggregation flow).

The aggregation flow is always less than the capacity on a link, otherwise the congestion occurs results in system crashed. When the capacity is given, the aggregated flow is finite and less than the given capacity, otherwise the extra flow has to transmit through other links by routing assignments. Once the capacity is given as a constant, the buffer size of each router does not required to be infinite. Just set an enough size, say ≥link capacity, to handle the buffer requirement. In this way, the backbone capacity is also large enough to handle the traffic. Because (1) bandwidth of the sensor network is small and much less than the backbone fiber capacity, (2) the range to calculate the end-to-end delay is set from source to sink node, the do not need to consider the backbone capacity, (3) the backbone capacity is larger than the sensor network, the backbone link will not cause congestion or delay on the wireless sensor network.

The set of all nodes in the network.

The set of all links in the network.

The set of multicast source nodes.

The set of destinations for each source.

The set of paths from each source to it destinations.

The discrete traffic requirements for subscribers in multicast groups.

The degree of importance of each multicast group.

The minimum hop counts from the farthest destination node on each multicast group.

To minimize the end-to-end inter-delay among multicast groups.

The flow of each link is limited by its allocated link capacity and the maximum traffic of its all sublinks.

All of the selected paths in a group will form a multicast tree.

The total number of links in a multicast tree is the biggest numbers of the numbers in minimum hops of farthest destinations between the numbers of destinations.

Delay constraints include intra-group and inter-group end-to-end delay. Inter-group end-to-end delay per path should be consistent within a multicast group. Additionally, inter-group end-to-end delay among multicast groups should be equal when considering the weight of each group.

A multiple-multicast-group network for each source to reach their destinations respectively.

The capacity allocated to the selected links used in the multicast network.

The minimal end-to-end intra-delay per path in a multicast group.The minimal end-to-end inter-group delay among different multicast groups.

The aforementioned problem can be modeled through mathematical programming. The followings are parameters and decision variables; corresponding notations are defined in

The objective function (IP 1) is to minimize the end-to-end inter-delay in group _{s}_{s}

Explanation of Constraints:

Constraint (1.1) confines the end-to-end inter-delay fairness among groups. In (1.1), taking the given weights of all groups into account, we multiply the end-to-end intra-delay for each group by the given weights _{s}

Constraint (1.2) confines the intra-group end-to-end delay fairness. Considering the to-be-determined link capacity, _{sl}_{sl}_{s}

An auxiliary variable, _{sdl}_{sdl}

Constraint (1.4) means that only one path can be selected for a destination

Constraint (1.5) confirms that if one path is selected for destination _{sl}

The other auxiliary variable, _{sl}

Constraint (1.7) gives a discrete range of traffic rates for each _{sl}

Constraint (1.8) confines that for each link _{l}

Constraint (1.9) confines that for each node _{v}

Constraint (1.10) confines that the total number of links in the multicast tree rooted at source s is at least the maximal value chosen from the height of the multicast tree, _{s}_{s}

Constraints (1.11) and (1.12) are both redundant constraints. Constraint (1.11) requires the number of selected incoming links _{sl}_{sl}

Constraints (1.13), (1.14) and (1.15) are the integer constraints.

In mathematics and computer science researches, the so-called optimization problem is informally referred to the problem of finding the best or the optimal solution of all feasible solutions. The optimal solution usually is the minimum or maximum value, depending on the objective function subjected to constraints. For example, if the minimum solution can be found of a generic non-linear programming problem, the formulation and presentation can be defined as below:

In the iteration procedures of LR, a decomposition method is usually used to divide the problem into several relatively simpler sub-problems of a complex problem. Based on well-developed algorithms, the objective could be solved easily to find local minima of these sub-problems, thus solving the primal problem and approaching the global minimum.

The Lagrangean Relaxation method had proposed since early 1970s for use in large-scale mathematical programming applications [

The main idea of the Lagrangean Relaxation method is to pull apart the model by relaxing (

If the iterations of LR processes are done, which means the optimal feasible solution from the Lagrangean Relaxation problem is determined when the constraints are satisfied. If the feasible solution in the primal problem is not satisfied by the constraints, the heuristic procedures of the iterations would be designed for tuning the infeasible solution until it becomes a feasible one.

In this paper, one problem encountered when constructing a multicast sensor network is duly considering QoS requirements for each user and retaining fairness between them. To address this problem, two mathematical programming techniques, the Lagrangean Relaxation Method [

By introducing Lagrangean Multiplier Vectors _{1}, μ_{2}, μ_{3}, μ_{4}, μ_{5}, μ_{6}, μ_{7}_{8}

Amended constraints are added in (2.6) and (2.7). Constraints (2.1), (2.2), (2.3), (2.5), (2.6), (2.7), (2.9) and (2.10) in (IP 2) are relaxed and multiplied by nonnegative Lagrangean multiplier vectors respectively. The LR objective function can be obtained as following:

Subproblem 1 can be further divided into |_{s}

Subproblem 2 can be further divided into |

_{s}_{s}

_{s}_{s}_{sl}

_{s}_{s}_{sl}_{s}_{s}_{sl}

Subproblem 3 can be decomposed into |

However, the decomposed subproblem is a complicated problem due to the coupling of _{sdl}_{sl}_{sl}_{sl}_{sdl}_{sl}

_{sdl}_{s}_{sl}

_{sdl}_{sdl}

_{sl}_{sl}_{sl}_{sl}_{sl}

_{s}

_{s}

To minimize the objective function of Subproblem 4 is determined by
_{s}_{s}_{s}_{s}_{s}_{sl}_{v}_{sd}

On the other hand, the initial upper bound of _{s}_{s}_{s}

To minimize the objective function of Subproblem 5 is determined by

_{l}

In Subproblem 6, because not every link _{v}

To minimize the objective function of Subproblem 6 is determined by
_{l}_{l}_{l}_{l}_{sd}_{l}_{v}

According to the weak Lagrangean Duality Theorem, for any
_{D1.1}_{IP1}

Dual Problem (D1):

There are several methods to solve the dual problem (D1). Among them is the most popular method, the subgradient method, which is employer in [_{D1}
^{k+1} =^{k} + ^{k}g^{k}^{k}_{IP2}), and δ is a constant, 0 < δ ≤ 2.

By applying the Lagrangean Relaxation Method and the Subgradient Method to solve these problems, we can not only determine a theoretical lower bound from the primal feasible solution, but we have also found some helpful hints for the primal feasible solution that are iterated when solving the dual problem.

Two stages are introduced in our heuristics for getting the primal feasible solution: the first stage is the multicast routing problem; the second is the capacity assignment and delay calculation.

There are some hints to be found within the Lagrangean Relaxation Method's Lagrangean Multipliers. In our multicast routing assignment, the set of routing decision variable {_{p}^{2})

Step 1: For each group

Step 2: Run the Dijkstra algorithm to determine the OD path

According to the previous stage, the routing path for each source to reach their destinations can be decided. In this stage, the number of paths passing through the link needs to be calculated in each link's traffic path. Meanwhile, they cannot be violated by Constraint (1.8).

Having determined every links' traffic flow, we propose a heuristic which steps are described in Algorithm 1 to find a minimal inter-delay. Through this, each link's allocation capacity can be determined. The time complexity of each iteration is ^{2})

In this section, the computational experiments and algorithms are constructed and implemented to analyze the quality of the heuristic being developed. Our experiments are developed in C++, and implemented in a platform with Intel Core2 Quad 2.4 GHz, 1 GB RAM, and Windows Server 2003 Standard with SP2.

A grid topology is designed with 49 nodes for experiments. To display the characteristics of our proposed algorithm, each source and their corresponding destinations are deployed as far as possible.

In order to compare the performance of LR optimal solution, we propose a simple algorithm, SA, for a simulation to show the benchmark comparison between not optimal, near optimal or optimal solutions. SA procedures of experiments are illustrated in

In our experiments, the solution of the dual problem is defined as

Improvement Ratio of

In the following experiment scenario, there are 49 nodes and both source and destination are randomly chosen for each group. Each destination's traffic requirement is also randomly determined. In our experiments, two different dimensions are set for testing our algorithms: number of groups and number of destinations per group.

The relationship between the number of different destination and minimized end-to-end inter-delay;

The relationship between the number of different groups for minimized end-to-end inter-delay.

In our paper, a multicast model of sensor network can be formulated as a “tree forest” type architecture that jointly considers the routing problem and link capacity assignment through various mathematical programming techniques. Fairness can also be achieved in the inter-group and intra-group end-to-end delay in multi-rate multicast wireless sensor network. Our contributions in this research are the solution of an NP-complete problem through mathematical programming techniques to determine the optimal solution LR and LB. Finally, the Lagrangean Relaxation Method and Optimization-based algorithm are provided to solve this problem and have been proven to have good quality after verification with other simple algorithms and LB value. The LR based algorithm and our heuristic are implemented to prove that solution quality is better than that of SA. The solution utilizes the Lagrangean Relaxation Method in conjunction with novel optimization-based heuristics. Computational experiments have been conducted to evaluate the performance of the proposed algorithms. In conclusion, our contribution has been perfectly solving the complicated optimization problem through the Lagrangean Relaxation Method with more efficiency and effectiveness.

The multi-rate multicast wireless sensor network mentioned here is a static environment. For a dynamic case, traffic requirements can be viewed as decision variables. This issue can be addressed by a network administrator that can decide how to efficiently allocate resources to destinations according to the requirements of a dynamic environment. In this case, delay is more sensitive for subscribers. This ultimately results in a tradeoff between delay and fairness. What is the management strategy for addressing fairness and delay perfectly? This will depend on new QoS metric management and control mechanisms.

This work was supported by the National Science Council, Taiwan, Republic of China (Grant Nos. NSC 100-2221-E-002-174).

Scenario of unicast and multicast.

Max-min fairness.

Minimum spanning tree.

Multi-rate multicast wireless sensor network.

Multicast sensor networks.

Solution of a general non-linear programming problem.

State diagram of Lagrangean Relaxation method.

Procedures of Lagrangean Relaxation method.

An example of Subproblem 3 considering _{sl}

Flow chart of getting primal feasible solution.

Inter-group end-to-end delay.

Notation descriptions of given parameters.

| |
---|---|

The set of all nodes in the network | |

The set of multicast source nodes | |

_{s} |
The set of destination nodes for each source |

The set of all links ( | |

_{v} |
The set of wireless links associated with node |

_{sd} |
The set of paths from source |

_{pl} |
1 if link |

_{sd} |
The rate of traffic requirement from destination |

_{sl}(c_{sl}_{sl}) |
The mean delay on link |

_{sl} |
The delay on link |

_{s} |
The degree of importance of a multicast group |

_{s} |
The minimum hop counting from the farthest destination to the source |

_{v} |
The incoming links to node |

_{s} |
The incoming links to node |

_{v} |
The total air interface capacity for node |

Notation descriptions of decision variables.

| |
---|---|

_{p} |
1 if path |

_{sl} |
1 if link |

_{sdl} |
1 if link |

_{sl} |
The capacity of link |

_{l} |
The allocated capacity of each link |

_{sl} |
The traffic rate of link |

_{s} |
The end-to-end delay per path in the multicast group |

The end-to-end delay for each multicast group. |

Experiment environment and parameters.

Topology | Grid network |

Number of Nodes | 49 |

Number of groups | 2∼5 |

Range of requested bandwidth | 1∼3 |

Number of destinations in a group | 2∼5 |

Node Capacity | 30 |

Number of iteration | 1000 |

Improvement counter | 80 |

Initial upper bound | 0 |

Initial value of multipliers | 0 |

Test platform | CPU: Intel Core2 Quad 2.4 GHz |

RAM: 1GB RAM | |

OS: Windows Server 2003 with SP2 | |

Development tool | Eclipse with g++ |

Procedures of simple algorithm.

Step 1. | For group |

Step 2. | Run Dijkstra algorithm to determine each OD path |

Step 3. | We assign each link's traffic flow by the destinations whose shortest paths pass the link. |

Step 4. | After finding the anticipated intra-delay per path, capacity is allocated for each link. Hence, the objective value can be obtained. |

Experiment result explanation.

2 | 2 | 0.025702 | 0.450961 | 0.569503 | 94.3007% | 20.8150% |

3 | 0.026917 | 0.538237 | 0.663245 | 94.9990% | 18.8479% | |

4 | 0.075271 | 0.64264 | 0.883838 | 88.2873% | 27.2898% | |

5 | 0.08825 | 0.858677 | 1.43812 | 89.7226% | 40.2917% | |

3 | 2 | 0.025748 | 0.65759 | 2.67525 | 96.0845% | 75.4195% |

3 | 0.025641 | 2.45674 | 3.44923 | 98.9563% | 28.7742% | |

4 | 0.025641 | 4.6933 | 7.26076 | 99.4537% | 35.3608% | |

5 | 0.025641 | 5.62759 | 8.62115 | 99.5444% | 34.7234% | |

4 | 2 | 0.025641 | 1.25577 | 2.21255 | 97.9581% | 43.2433% |

3 | 0.037905 | 1.78956 | 2.60234 | 97.8819% | 31.2327% | |

4 | 0.025641 | 2.16318 | 4.63587 | 98.8147% | 53.3382% | |

5 | 0.025641 | 3.04591 | 3.29655 | 99.1582% | 7.6031% | |

5 | 2 | 0.025641 | 1.23 | 1.79299 | 97.9154% | 31.3995% |

3 | 0.025641 | 1.98478 | 2.40776 | 98.7081% | 17.5674% | |

4 | 0.025641 | 5.05017 | 6.04086 | 99.4923% | 16.3998% | |

5 | 0.025641 | 5.69069 | 25.1829 | 99.5494% | 77.4026% |