RBCR: A relay-based cooperative routing protocol for cooperative wireless sensor networks

In wireless sensor networks several constraints decrease communications performances. The main objective of this paper is to present a multi-objective routing algorithm RBCR that computes routing path based on the energy consumption and channel qualities. Additionally, the channel qualities are evaluated based on the presence of relay nodes. Compared to AODV and AODV associated to a cooperative MAC protocol, RBCR provides better performances.


I. INTRODUCTION
In wireless sensor networks, the unreliable channels and the restrictions in energy resources make the routing a complex task.In addition, classical routing protocols [1] are not able to cope with the routing constraint of WSNs.Furthermore, cooperative communication constitutes a potential alternative.It proposes to use the neighbors as helpers in case they have better channels than the source.In fact, due to the broadcast nature of the wireless channel, the neighbors can over-hear the packet of the source, preserve it, then retransmits it to the destination when required.This technique replaces the selfish competitive access to the medium, by a cooperative one.It proved its efficiency in saving energy and enhancing the use of the wireless channel.In this paper, we propose to combine cooperation and routing.The contribution of our routing protocol can be summarized as follows : • In all the cooperative protocols relay nodes are selected anew for each packet, resulting in an important signaling burden.Our routing protocol RBCR, computes the routing path and includes the relay nodes in the routing path.

II. RELATED WORK
The existing ad hoc routing protocols are not adapted to the routing requirements of WSNs.In fact, traditional routing protocols like AODV [1] define the best path as the path having the shortest number of hops from the source to the destination.Nevertheless, WSNs have several constraints and the optimal path is defined to be the path consuming less energy, having the best channels or both.Several research efforts were conducted during the last few years to conceive routing protocols coping with the WSN energy constraint.An energy aware routing protocols was proposed by the authors in [2].The routing decision is taken by merging the information about the residual energy of the node and the environmental energy supply.The second major WSNs constraint is the wireless channel.WSN channels are unreliable.In order to increase the transmission range of the nodes, the protocol proposed in [3] considers that sensor nodes are able to transmit packets cooperatively and simultaneously.Simulation results show that this method strengthens the network connectivity.

III. PROBLEM FORMULATION
In this section we present the models used by RBCR as well as the formulation of the shortest path problem while relays are used.More precisely, we present the used network and channel models and the problem formulation.Our models are based on two studies [4], [5].We represent the WSN as a graph G(V,E).V is the set of vertice and E is the set of edges.The wireless links are characterized by two parameters: the CSI and the mean energy.Therefore, on the graph, an edge (i,j) is labeled by two costs: the energy E Vi,Vj and the CSI CSI Vi,Vj .The channels are modeled by a Rayleigh fading distribution.Our sensors perform the Decode and Forward (DF) technique.They decode the received packet, and then re-encode it before forwarding it without verification.The signals of the packet received by the destination and over-heard by a relay can be represented by the following formula: Where P SD (respectively P SR ) is the power of the signal received by the destination (respectively relay), X s is the signal transmitted by the sender and h SD (respectively h SR )is the Rayleigh distributed fading coefficient of the channels between the source and the destination (respectively relay)of one hop, and n SD ,n SR are the additive white Gaussian noise of the channels.The two channels, from S to R and from S to D can be modeled by an equivalent channel : are the combining coefficient.More details about the computation of the equivalent channel are given in [6].
The main objective of this paper is to present a routing algorithm that computes routing path based on the energy consumption and channel qualities.For each hop, the relay node that proposes the best channel and consumes the least energy is selected and considered as a part of the route.In order to solve this dilemma, we represent it by the Minimum Cost Path problem With Relays [5].Our routing problem can be modeled as follows: Where p is a path joining a source and a destination and p is a member of P s,d the set of possible paths from S to D. E i (p) is the sum of energy consumed by the nodes of p to transport the packet from S to D. E r (p) is the sum of energy consumed by the eventual relay nodes.CSI(p) is the minimum CSI value of the links composing the path.Generally, these types of problems do not have a unique optimal solution.Several solutions exist.In our case, a solution S is considered as efficient if it does not exist a second solution S' that respects the following conditions with at least a strict inequality :E i (S) ≤ E i (S ), E r (S) ≤ E r (S ) and CSI(S) ≤ CSI(S ).

IV. RELAY BASED COOPERATIVE ROUTING (RBCR)
In the current section we present our routing protocol.The optimal paths are found by solving the multi-objective optimization problem presented in section III.An optimal path is computed using a distributed algorithm and by propagating a label from the source towards the destination.
A label in a given intermediate node is a pointer to the previous node in the reverse path to the source.The structure of such a label is given by Figure .1.It contains seven fields.The first field is used to identify the label in the current node.The second field is a pointer to the label that generated the current label.The Energy I and Energy R fields contain the mean of the consumed energy respectively by the intermediate nodes and the relay nodes.The CSI field describes the qualities of the links from the source to the current node.The PP ID, Relay ID and Previous ID fields define the identities of the previous nodes in the two-hop path.The Previous ID field contains the identity of the node preceding the current one in the path.The Relay ID field identifies the relay between the current node and the previous one.Finally, the PP ID field contains the identity of the node preceding the previous one.In order to trigger a route search, the source broadcasts a Route Request packet containing a label.It fills the Previous ID field by its address as well as the Previous Label ID field.Next, it puts on the Energy I field the quantity of energy required to send the packet.Finally, it affects zero to all the other fields.The RReq packet is then relayed over the network from a node to its neighbors until reaching the destination.When a node V i receives a RReq it extracts the label.The following actions taken by V i depend on the value of the field Relay ID field.If its value is -1 (the previous node on the path is not a relay), so, the current node can be an intermediate node or a relay node.Otherwise, the current node can only be an intermediate node.At first, V i starts by considering itself as an intermediate node on the path.The coming label is compared to the existent ones to verify its optimality.Suppose that L c = (E Ic , E Rc , CSI c )is the coming label and L i = (E Ii , E Ri , CSI i ) is a label of the routing entry.The subpath represented by L c is more efficient than the one represented by L i if one of the following optimality conditions (we call it C1)CSI c ≥ CSI i and E Ic ≥ E Ii and E Rc ≥ E Ri are true.In this case L c is added to the Routing entry and L i is deleted.Moreover, if one of the conditions of [4] is true, therefore both labels are equivalents and L c is added without deleting L i .In both cases, a new label is created, the fields are updated using Algorithm 1 included in the RReq, and broadcast.
Algorithm 1: Label Update No Relay When the Relay ID field of the received Label does not contain any address (field assigned to -1), the receiving node decides if the previous node can be a relay node.Therefore, it checks if it is a neighbor to the node in the PP ID field.
Provided that it is the case, the node verifies the optimality of this solution.It proceeds the same way to check the conditions of [4] and the C1 condition.Once the optimality of the solution is verified the node creates a new labels using the algorithm 2.
When the destination receives a RReq, it verifies the efficiency of the label.At the destination, the labels are added to the routing entry only if they verify the C1 conditions.It means, only if the currently used label represent a dominated solution.Thereafter, the destination sends a Route Update

V. SIMULATION RESULTS
In this section we evaluate RBCR performances using simulations.Our protocol is implemented on the Opnet simulator with the Zigbee module.RBCR performances are compared to those of: (i) AODV with a classical MAC layer (i.e.without cooperation) and (ii) AODV with COSMIC [16].We run simulations with each of these protocols using different network configurations.All configurations contain a source, a destination and a number of intermediate nodes.We start by a network containing 10 nodes and we increase the network size by ten nodes at each step until reaching 70 nodes.The node are uniformly distributed in a square with a side length of 500m.The CSI of the channels is represented by the Signal-To-Noise-Ratio (SNR).The channels are Rayleigh faded with quasi-static fading: each packet is faded randomly and independently.Furthermore, we consider that the channels of the network are fully symmetric.The power consumption of the node is 17.4mA for transmission, 19.7mA for reception and 10 −3 mA in Idle mode.For each data value we present in the results, we also give its 90% confidence interval.
Delivery Ratio: Figure .2depicts the delivery ratio.It defines the ratio of the successfully delivered packets to the destination.AODV has the lowest delivery ratio since it does not consider link qualities.Combined with COSMIC, the performances of AODV are obviously improved.Indeed, COSMIC enhances the use of the links of the route and saves more packets.This helps in partially solving the channelquality issue in AODV since COSMIC tries to enhance the performance of each link.However, this does not overcome the fact that AODV does not necessarily choses the best paths in term of channel qualities.Alternatively, RBCR does by including the CSI as a parameter in route computations.By doing so, RBCR demonstrates the best delivery ratio.Since the path links used by RBCR are better and the number of lost packets is reduced.In this work we proposed a routing protocol, RBCR that copes with WSN constraints.Route computation considers the existence of relay nodes, able to enhance the channel use, in addition to the consideration of energy consumption.Simulation results are promising and show that RBCR is able to enhance the delivery ratio.

Fig. 1 .
Fig. 1.The label's structure (RUpd) packet to inform the intermediate nodes about the new path.When an intermediate node receives a Route Reply or Route Update, It searches for the label whose Id correspond to the one received in the RRep or RUpd.It extracts from this label the address of the next node and the Id of the next label.It creates a new Route Reply (respectively Route Update) packet then sends it to the corresponding node.When the packet reaches the source node then the path is established.