Keywords

1 Introduction

A mobile ad hoc network (MANET) is a self-configuring decentralized network. It is connected by wireless links. Each device in a MANET is free to move independently in any direction. Hence it can change its links to other devices frequently. It is a collection of mobile wireless nodes that can dynamically form a network without using any pre-existing infrastructure. MANETs are self-organizing networks that do not need a wired/wireless infrastructure. Two nodes communicate directly if they are in the transmission range of each other. Otherwise, they reach via a multihop route. Each MANET node must therefore be able to function as a router, forwarding data packets on behalf of other nodes. Multicasting reduces the communication cost for the application that sends the same data to multiple destinations. In many MANET scenarios (e.g., warfront activities, search and rescue, disaster relief operations, etc.), the mobile nodes are often organized in teams with different tasks and, correspondingly, different functional and operational characteristics. In particular, nodes in the same team will have coordinated motion.

In MANETs, several tree-based and mesh-based multicast routing protocols have been proposed. Tree-based multicast routing protocols construct a tree that connects all the members into the tree and provide a single path between the source and destination. The multicast ad hoc on-demand distance vector routing protocol [1] (MAODV) and ad hoc multicast routing protocol are tree-based protocols. On the other hand, mesh-based protocols construct a mesh structure between the source and destination connecting each other. Because of the mesh structure, the link failures can be quickly addressed by the redundant paths at the cost of excessive overhead. The on-demand multicast routing protocol [2] (ODMRP) is a mesh-based protocol. Existing multicast protocols mainly address the multicast sessions with small group size and they do not scale well for large multicast sessions. Managing a large multicast session in MANET is difficult because of the mobility of the members. Moreover, the existing multicast routing protocols do not exploit the team affinity model where the members have a collaborative mobility pattern and common interest.

2 Related Work

Tavli et al. [3] have presented multicasting through time reservation using adaptive control for energy efficiency, which is called MC-TRACE. Their mechanism was an energy-efficient real-time data multicasting architecture for mobile ad hoc networks. The MC-TRACE proposed by them was a cross-layer design. Their proposed cross-layer design integrated the functionality of both the medium access control layer and the network layer. Their objective was to establish and maintain an active multicast tree which is surrounded by a passive mesh within a mobile ad hoc network. Their multicast tree was capable of preserving its tree branches in the midst of high mobility.

Wang et al. [4] have proposed a power-aware dual tree-based multicast routing protocol which is known as PDTMRP. They have divided nodes randomly into two types as group-0 and group-1. Based on this classification they have constructed two multicast trees (tree-0 for group-0 and tree-1 for group-1). These multicast trees were constructed to avoid the load balancing problem. In their scheme, battery power is used to eliminate the unstable nodes in order to achieve high reliability. By considering load balance they have improved the lifetime of the network. Therefore, the control overhead for route construction and the number of route reconstructions have been decreased.

Xu et al. [5] have proposed a reliable ODMRP (R-ODMRP) for preferable throughput which was especially suited for high-speed MANET, and included packet acknowledgment, lost packet recovery, secure authentication, and QoS (quality of service)-based packet delivery. With the exploration of active networks, R-ODMRP constructed the multicast routing based on the cluster, established a distributed mechanism of the acknowledgment, and recovery of packet delivery. Along with the cluster key distributed in one cluster, this protocol can authenticate the consistency of a multicast source and receivers depending on the local security strategy. The specific mesh links are adaptively chosen by virtue of the descriptive QoS vectors, meanwhile the forwarding nodes can flexibly schedule different multicast packets according to the types of multicast applications.

Dasgupta et al. [6] have proposed a routing algorithm for multicasting that ensures efficient utilization of power for each mobile node. Their proposed routing algorithm was known as power aware multicast on-demand routing (P AMOR). They have considered the load balancing problem, where load balancing is achieved by dividing the traffic through the two different paths of almost equal power and it ensured a better performance in terms of bandwidth utilization and also a level of security against various attacks. They have provided a method to store alternate paths and thereby it has reduced the link breakage caused by power shortage.

Qabajeh et al. [7] have presented a position-based QoS multicast routing protocol, which was called PBQMRP; their proposed PBQMRP was a multicast routing protocol, which was a hierarchical scheme and it considered multiple QoS constraints in MANET. Their model searched for QoS paths from a single source to a set of destinations. According to their model, the physical area is partitioned into equal size hexagonal cells. Their model has selected a leader and a backup leader node was elected to maintain up-to-date information about the network topology. Their hierarchical scheme was optimized to utilize the limited network resources. This approach has reduced the overhead significantly.

3 Proposed Algorithm

In our proposed EBAC algorithm for real-time traffic multicasting in mobile ad hoc networks we first elect the cluster head using the ENB cluster head selection algorithm [ 8]. The multimedia traffic stream is split into multiple substreams prior to transmission using the Top-N rule selection approach algorithm [9]. The shortest-path multicast tree construction algorithm [10] is used to transmit the real-time traffic effectively among the nodes in MANETs. Using the cluster heads as group leaders and cluster members as leaf nodes, a shortest-path multicast tree is established. This helps in transmitting multimedia real-time traffic to different receivers. While multicasting multimedia packets, multiple disjoint paths are established for each receiver. It involves two phases, Phase 1 Route Request and Phase 2 Route Reply.

3.1 Cluster Formation

The formation of clusters is demonstrated in the following algorithm.

  1. (1)

    When the sensor nodes are deployed in the network, clusters are formed randomly. Each cluster member CM i within the cluster broadcasts the hello message to its neighboring members.

    $${\text{CM}}_{i} \,\mathop{\longrightarrow}\limits^{\text{Hello}}\,{\text{Neighboring}}\,{\text{members}}$$

The frame format of the Hello message is shown in Table 1.

Table 1 Frame format of hello message

The parameters in the hello messages include residual energy, available bandwidth and node connectivity.

3.1.1 Residual Energy

After the time period t, the energy consumed by the node (E(t)) is given using Eq. (1)

$$E(t) = n_{\text{tx}} *\alpha + n_{\text{rx}} *\beta$$
(1)

where n tx and n rx are the number of data packets transmitted and received by the node after time t.

\(\alpha\) and \(\beta\) are constants in the range (0, 1)

The residual energy (E res) of a node at time t is computed using the following equation,

$$E_{{\text{res}}i} = E_{i} - E(t)$$

3.1.2 Available Bandwidth

Every node is in charge for estimating the available bandwidth on its link. For a given node

Let β = available bandwidth, C = link capacity associated with one-hop neighbor i.

A R is the cumulative assigned rates for all incoming and outgoing flows.

Hence the sum of the assigned incoming and outgoing flow rates and available bandwidth on the link should be equal to the capacity of the link i. This can be expressed as

$$A_{{R_{ij} }} + \beta_{i} = C_{i}$$

The link capacity is measured and available bandwidth is defined by

$$\beta_{j} \, \underline{\underline{\Delta }} \, \hbox{max} \, \{ 0,C_{j} - A_{{R_{ij} }} \}$$

3.1.3 Node Connectivity

The node connectivity (C n ) is estimated based on the relative node speed and node degree using

$$C_{n} = (\alpha *z_{i} ) + (\beta *D_{ni} )$$

where z i  = relative speed of the node, D ni  = node degree, and \(\alpha\) and \(\beta\) are constants.

In the above equation, z i is determined based on the distance among the nodes at time t and the D ni is related to the direct wireless link among the nodes at time t.

Based on the obtained parameter values, each CM i computes a combined score using:

$${\text{CS}} = a_{1} *E_{r} + a_{2} *\beta + a_{3} *C_{n}$$

where a 1 and a 2 are weight factors.

  • If CS is high

  • Then

    • The respective CM i declares itself as CH immediately.

      \({\text{CM}}_{i} \,\mathop{\longrightarrow}\limits^{{C\_{\text{req}}}}\,{\text{Nei}}\_{\text{L}}\)

    • End if

CS is said to be high when E r , β, and C n are higher than the threshold value. Even if there is any lag in any one parameter threshold, then the node delays to declare itself as cluster head.

Following the cluster formation, a multicast tree is established with the cluster heads as group leaders and members as leaf nodes as shown in Fig. 1.

Fig. 1
figure 1

Multicast tree construction: GH = group head; S = multicast source

Once group members are joined inside a multicast group (cluster), the multicast source (S) transmits the data to the respective group leaders (cluster heads) first. Then the group leaders will transmit the data to their group members.

3.2 Shortest Multicast Tree Routing

3.2.1 Route Request Phase

Let S and D be the source and destination nodes, respectively.

  1. (1)

    When any leaf node (LN i ) contains multimedia data to be transmitted to a multicast group, it initiates the route discovery by broadcasting a R_REQ message. The R_REQ message includes the destination node address and sequence number.

  2. (2)

    If S contains any route request query from another LN i to the same multicast group and if it contains a valid route to that LN i , it unicasts the R_REQ message (R_REQ + GH address) in the respective GH path. Otherwise S broadcasts the R_REQ.

  3. (3)

    The respective LN i (destination) of a multicast tree can only respond to a R_REQ message.

  4. (4)

    In the case where LN i receives a R_REQ for a multicast group of which it is not a member, or if it receives a R REQ with an unknown route, it rebroadcasts the R_REQ to its neighbors.

  5. (5)

    If S does not receive a R_REP within time t, it broadcasts another R_REQ message by incrementing the broadcasting identity. If R_REP is not received after several attempts, then S concludes that the multicast tree is not reachable. This causes the respective LN i to become the multicast group head.

  6. (6)

    If R_REP is not received for unicast R_REQ, then R_REQ is broadcast because the group leader may be unreachable or the LN i specified in the unicast R_REQ may no longer be available in the group leader.

  7. (7)

    LN i that receives the R REQ verifies its routing table. If there are no similar entries, then LN i stores the address in its routing table. Otherwise, the requesting node has the chance to become the group head.

3.2.2 Route Reply Phase

If LN i receives a R_REQ for a multicast group, it replies with a R_REP message if its sequence number is greater than the sequence in R_REQ. R_REP includes the sequence number of the multicast group, GH address, and hop distance.

  1. (1)

    Note: Hop distance is initially set to zero and incremented for each packet transmission.

  2. (2)

    Also, GH always has rights to send a R_REP message to a R_REQ message.

  3. (3)

    The LN i or GH i that transmits the R_REP message stores the hop distance of the requesting node before transmitting the reply message.

  4. (4)

    The nodes across the source path after receiving the R_REP update the route cache; that is, they increment the hop count and continue R_REP forwarding.

  5. (5)

    In the case where the LN i receives the unicast R_REQ message with its address and it is not the GH, then the message is ignored.

Figures 2 and 3 demonstrate the shortest-path multicast tree routing. When LN6 wants to transmit the data to LN15, it broadcasts the request message. After receiving the reply message, shortest path LN6–GH18–GH19–LN15 is established.

Fig. 2
figure 2

Route establishment

Fig. 3
figure 3

Shortest multicast tree routing

4 Simulation Results

The Network Simulator (NS2) is used to simulate the proposed architecture. In the simulation, 50 mobile nodes move in a 1000 m × 1000 m region for 50 s of simulation time. All nodes have the same transmission range of 250 m. The simulated traffic is constant bit rate (CBR).

4.1 Performance Metrics

The proposed energy and bandwidth aware clustering algorithm (EBACA) is compared with the PAOMR technique [11]. The performance is evaluated mainly according to the following metrics.

  • Packet Delivery Ratio: It is the ratio between the number of packets received and the number of packets sent.

  • Packet Drop: It refers to the average number of packets dropped during the transmission.

  • Energy Consumption: It is the amount of energy consumed by the nodes to transmit the data packets to the receiver.

  • Delay: It is the amount of time taken by the nodes to transmit the data packets.

4.2 Results: Based on Rate

In our first experiment we vary the rate as 50, 100, 150, 200, and 250 kB.

Figure 4 shows the delay of the EBACA and PAOMR techniques for different rate scenarios. We can conclude that the delay of our proposed EBACA approach is 48 % less than the PAOMR approach.

Fig. 4
figure 4

Rate versus delay

Figure 5 shows the delivery ratio of the EBACA and PAOMR techniques for different rate scenarios. We can conclude that the delivery ratio of our proposed EBACA approach is 31 % higher than the PAOMR approach.

Fig. 5
figure 5

Rate versus delivery ratio

Figure 6 shows the drop of the EBACA and PAOMR techniques for different rate scenarios. We can conclude that the drop of our proposed EBACA approach is 76 % less than the PAOMR approach.

Fig. 6
figure 6

Rate versus drop

Figure 7 shows the throughput of the EBACA and PAOMR techniques for different rate scenarios. We can conclude that the throughput of our proposed EBACA approach is 30 % higher than the PAOMR approach.

Fig. 7
figure 7

Rate versus throughput

Figure 8 shows the energy consumption of the EBACA and PAOMR techniques for different rate scenarios. We can conclude that the energy consumption of our proposed EBACA approach is 22 % less than the PAOMR approach.

Fig. 8
figure 8

Rate versus energy consumption

5 Conclusion

In this paper, we have proposed to design an energy and bandwidth aware clustering algorithm for real-time traffic multicasting in mobile ad hoc networks. In this technique, the nodes with maximum residual energy, bandwidth availability, and connectivity are chosen as cluster heads. Using the cluster heads as group leaders and members as leaf nodes, a shortest-path multicast tree is established. This helps in transmitting multimedia data to different receivers. The multimedia traffic stream is split into multiple substreams prior to transmission using the Top-N rule selection approach. By simulation results, we have shown that the proposed technique alleviates the energy consumption and provides a high delivery ratio with reduced delay and jitter.