121Improving the Reliability of Wireless Sensor.....(Maman Abdurohman) IMPROVING THE RELIABILITY OF WIRELESS SENSOR NETWORK (WSN) USING MODIFIED NETWORK CODING MULTIPATH ROUTING Maman Abdurohman School of Computing, Telkom University Jl. Telekomunikasi No. 01, Bandung 40257, Indonesia abdurohman@telkomuniversity.ac.id Received: 7th August 2017/ Revised: 21st August 2017/ Accepted: 24th August 2017 Abstract - This research proposed new method to improve performance of WSN. It used a network coding on transmission scheme. The researcher had modified the existing network coding multipath routing for a novel node selection to own residual power node in network coding routing mechanism and to improve reliability of a WSN. This routing mechanism was placed in router for routing purpose. Then, software network simulation method was done by using OMNET++ platform and MiXiM Framework library. The result shows that proposed method to select nodes and execute network coding succeeds on improving performance of WSN like the reliability compared to the previous method. Keywords: transmission, multipath routing, network coding, Wireless Sensor Network (WSN) I. INTRODUCTION The current routing and transmission data packet use a single path or track such as in Wireless Sensor Network (WSN) (Peng, Walid, Hwang, & Low, 2016). WSN is a network formed by some sensors node that is spacey distributed and networked. Most of these networks have function to monitor the physical or environmental conditions. There are two unique and diverse characteristics in WSN (Wang, Yang, & Zhao, 2012). Nodes communicate with others using wireless radio channels and always distribute in complex environment interferences. Moreover, the batteries are used as its energy supply for these node sensors. Whereas, it is known that the battery is limited energy resources. Therefore, a reliable transmission in WSN should be done in two stages which have higher successful delivery ratio and lower energy consumption. Developing an efficient and reliable routing or transmission protocol for WSN is an interesting issue. For example, multipath routing in WSN is used to improve the reliability of WSN by using many tracks or path transmissions from the source node to the sink node (Peng et al., 2016; Chihani & Denis, 2011). However, the high redundancy in path transmission results in more transmissions and requires more energy consumption. This is the drawback of multipath routing scheme implemented in WSN. Transmission Control Protocol (TCP) cannot be performed on wireless radio links because of the tightly constrained channel. It needs network coding scheme to address this TCP problem. Previous research has also been designed to address this problem by using network coding scheme. According to Ahlswede, Ning Cai, Li, and Yeung (2000), network coding is a scheme for enhancing transmission capacity in a network. However, there is inefficient process in the previous research. This research has modified the existing network coding using the multipath TCP in WCN to improve the reliability of WSN. Many researches have been done on WSN field, especially on the issue of limited resources such as limited power, limited computing, limited buffer, high loss transmission, and redundancy in WSN. Dinusha et al. in Rathnayaka and Potdar (2013) improved the research on TCP implementation including the congestion control and reliability for WSN with a novel topology and protocol used. Moreover, Kim et al. (2014) found out that the ordinary TCP could not be implemented on WSN. Nestor Michael et al. in Tiglao and Grilo (2012) made an analytical model, but it was not implemented. It was because many intermediate nodes had limited buffer which was not easy to do the caching process. Then, the researchers like Wang et al. (2012), Wang et al. (2014), and Yang et al.(2010) have used network coding to enhance the properties of WSN focusing on energy efficiency since all of the sink nodes use battery. This research proposes the new method for improving performance of WSN. The researcher has modified network coding multipath routing algorithm for improving WSN performance. This modification is suitable and can be implemented in WSN environment. In the end, it is expected to improve WSN performance. II. METHODS The research flow diagram is described in Figure 1. The first step starts with the research question to identify the research topics. Then, literature study is used to understand previous research study and find the research gap as the problem statement. Based on the problem identified, the hypothesis and objectives are proposed. The next step is to conduct an analysis of existing method and design an enhancement of the existing method in accordance with the previous hypothesis to create the proposed method. The proposed method is run in a software simulation, and the results are checked. It is to see whether it improves and fulfills the hypothesis and objective or not. If it is not, the making of the proposed method will be repeated. Figure 2 shows the topology of WSN (IEEE 802.11.5.4). Nodes in WSNs are mainly used for monitoring purposes such as environment monitoring (air pollution, temperature, humidity and machine monitoring (observing the condition of a machine). Due to its compact nature, nodes in the networks have certain characteristics and 122 ComTech, Vol. 8 No. 3 September 2017, 121-126 constraints (Gasser, 2011). First, nodes should function unattended except to change the battery every year. Second, energy consumption (CPU, sending, receiving) needs to be kept to a minimum to save battery power. Third, resources (CPU power, memory, energy) are scarce. Fourth, the network must adapt to churn (i.e., nodes joining and moving out due to failure). Fifth, the location of nodes can affect the network’s topology. Figure 1 Research Flow Diagram In traditional routing and transmission data, the intermediate node receives a packet to a destination in the routing tables, then it will store the data packet and begin to send it back to its destination via the link that it has in the routing table (store and forward) (Kim et al., 2014). The method is suitable for a network node having a wired link that is qualified. However, it is unsuitable for a wireless sensor node that has complex link due to sharing common air transmission. Figure 2 Wireless Sensor Network Multipath routing WSN can improve reliability of WSN regarding successful delivery ratio. However, the problem of higher transmission redundancy is the energy consumption (Wang et al., 2012). Therefore, it still needs to be improved by considering the limited battery power issue in WSN. One of the solutions is network coding method. This research uses modified network coding multipath routing with a power aware node selection method to improve the existing network coding multipath routing in WSN. In this methods, not all intermediate nodes will be involved in routing discovery and maintenance which process and forward the packet data from source to sink. With proposed network coding multipath routing using this linear network coding, it can improve the reliability of WSN regarding the successful delivery ratio and power efficiency. This research simulates the method by using combined tools, OMNET++ and MiXiM framework Simulator. OMNET ++ network simulator is the proven result and the real experiment by Xian, Shi, and Huang (2008) and Rousselot et al. (2009). Next, there is network coding multipath routing algorithm. In the existing WSN routing, mostly uses the broadcast method of multipath routing (Wang et al., 2012). When a sensor node as a source has data to be transmitted to a destination node (sink), the node will attempt to transmit the data packets with broadcast directly. Each node which can capture the signal of data packets will try to forward the data packets by creating multipath routing transmission of packet data from source to sink. The intermediate node will forwards the data packet broadcast if the Time to Live (TTL) packet data is still enabled (TTL >1). In the end, the data packet is received in the sink, and the transmission data is over. The script captured from the default WSN broadcast routing is as follows. if( msg->getTtl() > 1 ) { NetwPkt *dMsg; EV <<” data msg BROADCAST! ttl = “<getTtl() <<” > 1 -> rebroadcast msg & send to upper\n”; msg->setTtl( msg->getTtl()-1 ); dMsg = static_cast(msg->dup()); setDownControlInfo(dMsg, LAddress::L2BROADCAST); sendDown(dMsg); nbDataPacketsForwarded++; } else { //max hops reached -> delete EV <<” max hops reached (ttl = “< delete msg\n”; delete msg; The network coding of multipath routing algorithm uses a Received Signal Strength Indicator (RSSI) to select nodes that will forward the packet data. In establishing the routing table, it selects nodes that have the best access to the sink. It must have a RSSI that is above the threshold specified by the routing system (Wang et al., 2014; Yang et al., 2010). If a node receives a signal that has greater RSSI value than the threshold value, this node will be involved in transmission data. The script showing the existing methods of network coding in routing node election is as follows. updateRouteTable(const LAddress::L3Type& Origin, const LAddress::L3Type& lastHop, double rssi, double ber) // only if the received RSSI is above the threshold if (rssi > rssiThreshold) { tRouteTableEntry newEntry; 123Improving the Reliability of Wireless Sensor.....(Maman Abdurohman) newEntry.nextHop = lastHop; newEntry.rssi = rssi; if(trace) { routeRSSI.record(rssi); routeBER.record(ber); } routeTable.insert(make_pair(origin, newEntry)); if(useSimTracer) { tracer->logLink(myNetwAddr, lastHop); } nbRoutesRecorded++; III. RESULTS AND DISCUSSIONS The proposed modified network coding multipath routing algorithm is designed. The main idea of this new method is how to identify and select the node that can be used in multipath routing network coding. Not all nodes are involved in network coding multipath routing to forward packet data transmission automatically. The best node will be selected as the multipath routing node and will do network coding to forward data transmission from source to sink. The best node as intermediate nodes has RSSI and residual power capacity that surpass the threshold value set in the simulation. To implement the proposed method, it uses the algorithm to determine which nodes can be added to the routing path and used to forward the data packets from source to sink. The routing discovery algorithm is as follows. Routing Discovery Algorithm 1. When time to discovery route or Route Maintenance 2. Sink Node create and broadcast Routing Discovery Packet (RDP) 3. When a node received this RDP 4. DO 5. IF Received Signal Strength Indicator > threshold & own residual power > power Critical a. Record all node in the route path to sink as routing b. Update the route path and number hop with addition own address to route path c. Forward and broadcast the updated route in RDP 6. ELSE a. Record all node in the route path to sink as routing b. Delete RDP END The algorithm can be implemented on layer network of a node that is used in this simulation. The captured program source code on OMNET++ is as follows. updateRouteTable(const LAddress::L3Type& origin, const LAddress::L3Type& lastHop, double rssi, double ber) // only if the received RSSI is above the threshold and power residual capacity of a node // if (rssi > rssiThreshold & powerRes > powerCritical) { tRouteTableEntry newEntry; newEntry.nextHop = lastHop; newEntry.rssi = rssi; if(trace) { routeRSSI.record(rssi); routeBER.record(ber); } routeTable.insert(make_pair(origin, newEntry)); if(useSimTracer) { tracer->logLink(myNetwAddr, lastHop); } nbRoutesRecorded++; The addition of one parameter about the condition of battery power is to select Intermediate Node selection (Node between) which serves to forward the data packet. This is an additional parameter other than RSSI that has been used in the previous parameter. When the data have TTL value more than 1, the intermediate node will do network coding and en route the network coding by decoding packet data to its neighbor. The comparison of the previous method and the proposed method can be seen in Figure 3. Proposed method fixes the previous method by using power residual capacity scheme. The experiments are performed by using simulation software tools in the form of OMNET++ with the several scopes. Those are (1) standard WSN: IEEE 802.15.4 (Lr- WPAN) with frequency 2,4 Ghz; (2) the nodes on WSN have static mobility and line of sight transmission; (3) performance metrics: successful delivery ratio, and energy consumption; (4) MiXiM framework on OMNET++ platform. The design of software simulation is to create a collection of existing module as a sensor node, a modified network coding algorithm multipath routing, network topology, make schemes and set several parameters of simulation, and combine all these elements into a single simulation. Figure 4 shows the simulation stages. It starts from routing discovery and data processing. Once the desired network topology is formed by several sensor nodes. Then, the initial process is the process of routing discovery to search the routing table for delivering packet data from source node to sink node. When WSN has a sensory data needing to be transmitted from source to sink, the source node will perform network coding initially as a source node. The data packet that is already in network coding will be distributed on multipath routing way to neighbor nodes, intermediate nodes. Figure 3 Method Comparison 124 ComTech, Vol. 8 No. 3 September 2017, 121-126 Figure 4 Simulation Stages The intermediate node receives the data signal, checks, and does the next network coding. Then, the nodes resubmit it to its neighbor sensor nodes. This process continues in the intermediate node to the sink node. When the sink node has received enough data packets, it can restore the original data. The data transmission process will occur continuously until there is no more data to be transmitted. On the sidelines of the data transfer process, there will be the creation of routing maintenance to ensure the continuity of network coding multipath routing. The researcher uses two scenarios to measure and analyze the existing network coding multipath routing and enhance modified network coding multipath routing with the proposed method. Figure 5 and Figure 6 show the network topology with both scenarios. The network topology in scenario 1 has five sensors in the system and scenario 2, and there are more sensors than scenario 1. These two scenarios show two environment condition such as simple condition (scenario 1) and more complex environment (scenario 2). Figure 5 Network Topology in Scenario 1 Figure 6 Network Topology in Scenario 2 Some metrics describes the performance grade of technique against the elements of wireless networking. Some of these metrics have been carefully selected to provide an overview of the behavior and the reliability of the network coding multipath routing in WSN. The analysis of this research only focuses on data sensor transmission from source to sink node, and the metrics to measure the features to data packets. The other controls on overhead data are ignored. Further explanation and details regarding these metrics are explained. The successful delivery ratio indicates the successful ratio of the packet that is received by sink divided with number sent by source node. The equation is as follows. Successful Delivery Ratio = (Number of Packet Sent / Number of Received Packets) × 100% (1) Then, for average energy consumed, it is an average measure of the amount of energy (mWatt second or Joule). A node uses it in transmitting sensor data from source to sink. Average Energy Consumed = (Total energy used by all involved nodes) / (number of involved nodes) (2) Next, there is energy consumption per packet sent. This metric is the measure of amount energy which is wiped out by WSN in sending a packet from a source to a sink for a data packet sent. Then, energy recovery is the value of the additional energy that will be needed by WSN to ensure that all the package is delivered to sink. Energy Recovery = (1-Successful Delivery Ratio ) × (Energy consumption per packet sent) (3) In the simulation scenario, the research use lower bound of Bit Error Rate (BER) as the parameter. BER is number error bits that have been delivered from source to destination divided by total number bits have been delivered. This parameter is lower bound on BER in physical MiXiM decider module (decider for the 802.15.4 narrow band module) in the simulation. A data packet will be successfully received by a node if the BER value calculation shows that packet data node is still below the lower bound of the BER values. The result of is based on two scenarios. Multipath routing enhanced by proposed method of network coding get better successful delivery ratio than the existing network coding multipath routing in the scenario 1. All the values are lower than the parameter. Figure 7 shows the result of scenario 1. From the Figure 7(a), it can be concluded that the proposed method has average of 3% for successful delivery ratio. (a) 125Improving the Reliability of Wireless Sensor.....(Maman Abdurohman) (b) (c) Figure 7 (a) Successful Delivery Ratio, (b) Average Energy Consumed, and (c) Energy Recovery in Scenario 1 The proposed method of network coding spends equal battery power to the existing network coding multipath routing in scenario 1. The difference is not significant, just 0,00085653 joule or 0,856 mili joule. It can be seen in Figure 7(b). This is because the battery module statistics of node does not measure the value of power that is consumed by the process computing network coding. Thus, the changes in proposed method of network coding multipath routing do not provide a significant improvement. Next, 100% of data transmission is accepted in an application. Then, the proposed method of network coding requires less additional energy recovery (joule) than the network coding routing, about 5,58 joule for 500 packets sent. with the modification of existing algorithms in multipath routing (with additional parameters in the form of node power), it has proven to increase the reliability in WSN. Table 1 shows the summary of result in scenario 1. The proposed method of network coding gives improvement of reliability in WSN regarding successful delivery ratio and energy recovery. Based on scenario 2, in Figure 8, it can be seen that the proposed method of network coding gets better successful delivery ratio than the existing multipath routing. Using lower bound of BER as the parameter, the average improvement of proposed method is 3,0% from the existing multipath routing. However, the proposed method of network coding spends equal battery power to the existing network coding multipath routing in scenario 2. The difference is 0,0004 joule for 500 packets sent. Thus, the changes in algorithm multipath routing coding do not provide a significant improvement to existing algorithms. Moreover, the simulation results in the almost same value of energy consumption. With higher value of BER lower bound, it means that physical decider sensor nodes are more tolerant of bit errors in the received data packet. Table 1 Result Comparison in Scenario 1 Routing Scheme Successful delivery ratio (%) Average Energy Consumed (J) Average Energy Consumed / Packet sent (J/packet) Energy Recovery (J) Network Coding Multipath Routing 93,23% 186,1176 0,3722 12,5940 Modified Network Coding Multipath 96,20% 186,1167 0,3722 7,0724 (a) (b) (c) Figure 8 (a) Succesful Delivery Ratio, (b) Average Energy Consumed, and (c) Energy Recovery in Scenario 2 126 ComTech, Vol. 8 No. 3 September 2017, 121-126 It certainly increases the successful delivery ratio, because the data packet is error and not acceptable. However, with its greater tolerance error rate, the data packet is worthy to be accepted. The differences in BER lower bound apparently do not affect energy consumption significantly. Even though the lower bound of BER value is changed, it still shows the insignificant difference in energy consumption. It is because a number of packet data transmission in the network is not outstanding or almost the same number as the number data packet in WSN (500 packets). WSN topology is flooded with the same number traffic and tries to send it to destination node. Thus, all nodes will make the equal numbers of data. An application requires 100% of data transmission. Then, the proposed method of network coding requires less additional energy recovery (joule) than the existing network coding multipath routing. The improvement is about 5,58 joule for 500 packets sent. With higher value of BER lower bound, it means that physical decider sensor nodes will be more tolerant of bit errors in the received data packet. With the more tolerance of physical decider sensor nodes, the smaller amount of packet data is considered an error and does not get to the sink node. This will certainly reduce the additional energy required to process of data error recovery or missing data packet. Thus, the modified algorithm on multipath routing gives a reliable improvement in WSN. Table 2 gives summary of result in scenario 2. The proposed method of network coding on multipath routing give improvement of reliability in WSN in successful delivery ratio and energy recovery. The successful delivery ratio is 186,1170, and current method is 186,1174. There is a little difference. Table 2 Result Comparison in Scenario 2 Routing Scheme Successful delivery ratio (%) Average Energy Consumed (J) Average Energy Consumed /Packet sent (J/packet) Energy Recovery (J) Network Coding Multipath Routing 93,90% 186,1174 0,3722 11,3532 Modified Network Coding Multipath 96,90% 186,1170 0,3722 5,7696 IV. CONCLUSIONS The modified network coding multipath routing can improve the reliability of WSN. The existing method that only uses standard signal as parameter of intermediate node selection in routing discovery and maintenance is added with new mechanism to measure capacity of battery on the intermediate node. The proposed method can improve the reliability of the previous method regarding higher successful delivery ratio and lower additional energy recovery of WSN. This is because the proposed method is more selective in choosing the intermediate nodes. Not only these nodes can receive RSSI that exceeds the threshold, but it must also have capacity of battery that exceeds the set limit. Thus, WSN can be more selective and more efficient in using the existing wireless channels because not many nodes are involved. Finally, there will be more efficient in delivery data sensor of WSN. REFERENCES Ahlswede, R., Ning Cai, Li, S. Y. R., & Yeung, R. W. (2000). Network information flow. IEEE Transactions on Information Theory, 46, 1204-1216. https://doi. org/10.1109/18.850663 Chihani, B., & Denis, C. (2011). A Multipath TCP model for ns-3 simulator. arXiv preprint arXiv:1112.1932. Gasser, O. (2011). TCP/IP communication in a WSN. Sensor Nodes–Operation, Network and Application (SN), 75, 75-82. Kim, M., Klein, T., Soljanin, E., Barros, J., & Médard, M. (2014). Modeling network coded TCP: Analysis of through put and energy cost. Mobile Networks and Applications, 19(6), 790-803. Peng, Q., Walid, A., Hwang, J., & Low, S. H. (2016). Multipath TCP: Analysis, design, and implementation. IEEE/ ACM Transactions on Networking, 24(1), 596-609. https://doi.org/10.1109/TNET.2014.2379698 Rathnayaka, A. D., & Potdar, V. M. (2013). Wireless sensor network transport protocol: A critical review. Journal of Network and Computer Applications, 36(1), 134- 146. Rousselot, J., Decotignie, J. D., Aoun, M., van Der Stok, P., Oliver, R. S., & Fohler, G. (2009). Accurate timeliness simulations for real-time wireless sensor networks. In EMS (pp. 476-481). Tiglao, N. M. C., & Grilo, A. M. (2012). An analytical model for transport layer caching in wireless sensor networks. Performance Evaluation, 69(5), 227-245. Wang, L., Yang, Y., & Zhao, W. (2012). Network coding- based multipath routing for energy efficiency in wireless sensor networks. EURASIP Journal on Wireless Communications and Networking, 2012(1), 115. https://doi.org/10.1186/1687-1499-2012-115 Wang, L., Yang, Y., Zhao, W., Xu, L., & Lan, S. (2014). Network-coding-based energy-efficient data fusion and transmission for wireless sensor networks with heterogeneous receivers. International Journal of Distributed Sensor Networks, 10(3), 351707. Xian, X., Shi, W., & Huang, H. (2008). Comparison of OMNET++ and other simulator for WSN simulation. In Industrial Electronics and Applications, 2008. ICIEA 2008. 3rd IEEE Conference (pp. 1439-1443). IEEE. Yang, Y., Zhong, C., Sun, Y., & Yang, J. (2010). Network coding based reliable disjoint and braided multipath routing for sensor networks. Journal of Network and Computer Applications, 33(4), 422-432.