Research Article
Cooperative and Adaptive Network Coding for Gradient Based Routing in Wireless Sensor Networks with Multiple Sinks
Algorithm 1
The CoAdNC-GBR algorithm.
| Activity 1. Previous hop (sinks, sinks’ neighbours, …): Encoding process | | for ; ; do | | Compute average number of neighbours () from existing | | neighbour’s list | | Use look-up table from Table 2 to determine best coding scheme () | | Select a finite field: Galois Field of order | | (99.6% linear independence) (According to Table 1) | | From the , select random coefficients () | | Linearly combine the coefficients with accumulated interest | | messages () to give | | Encoded packet: Sink ID concatenated | | with payload | | Broadcast encoded packet E | | end for | | Activity 2. Next hop: Cooperative decoding followed by new encoding process | | if received correctly then | | Extract value | | if Any previously received then | | Discard E | | else | | Start timer | | start decoding sub-routine: | | Retrieve coefficient matrix | | if then | | Compute of | | Retrieve Rank of as: | | if then | | Apply Gaussian elimination method to retrieve | | the interest messages | | Save value. | | Stop and reset timer | | Repeat process in Activity 1 for next hop encoding | | end if | | else | | if elapsed then | | Discard | | else | | go back to step . | | end if | | end if | | end if | | else | | Discard received data | | end if |
|