Resilient Disaster Network Based on Software Defined Cognitive Wireless Network Technology

In order to temporally recover the information network infrastructure in disaster areas from the Great East Japan Earthquake in 2011, various wireless network technologies such as satellite IP network, 3G, and Wi-Fi were effectively used. However, since those wireless networks are individually introduced and installed but not totally integrated, some of networks were congested due to the sudden network traffic generation and unbalanced traffic distribution, and eventually the total network could not effectively function. In this paper, we propose a disaster resilient network which integrates various wireless networks into a cognitive wireless network that users can use as an access network to the Internet at the serious disaster occurrence. We designed and developed the disaster resilient network based on software defined network (SDN) technology to automatically select the best network link and route among the possible access networks to the Internet by periodically monitoring their network states and evaluate those using extended AHP method. In order to verify the usefulness of our proposed system, a prototype system is constructed and its performance is evaluated.


Introduction
As advent of recent wireless communication technology, many applications on various fields such as public wireless networks, disaster information networks, or intelligent traffic transportation systems are developed [1][2][3].In particular, wireless communication system plays a very important role as disaster use.In fact, in the Great East Japan Earthquake on March 11, 2011, the communication access networks to the Internet in disaster areas were recovered by the 3G mobile communication vehicles and satellite communication system.However, those used networks were introduced individually and operated by each of the mobile phone companies; some mobile phones could not be used on different company's network.The handover function between the different company's networks could not be supported even though one network is very congested and the others have enough available network resources.
In this paper, we introduce a novel cognitive wireless network system which is able to select the best link and route that can provide the best network performance among possible networks by integrating the different type of wireless networks such as 3G, LTE, WiMAX, Wi-Fi, and satellite networks with the different network characteristics such as throughput, RTT, and packet loss rate and periodically monitoring those network states [4,5].By exchanging the disaster information through this stratified network, the system can persistently continue to provide communication capability and can automatically perform handover to the other access networks which have enough available network resources by wireless cognitive network functions even if some network node and line failures occur in a part of the network infrastructure.We designed and developed our system as a prototype system based on the SDN technology [6] by integrating 3G, LTE, WiMAX, and satellite network and constructed a testbed disaster network as access network by connecting three different locations in our Iwate prefecture which were seriously damaged by the tsunami from the Great East Japan Earthquake on March 11, 2011.

Disaster Information
From the investigation of the previous large natural disasters, the required information varies in time before and after disaster as shown in Figure 1 [7].Just before the disaster, the forecast and evacuation information are required while, just after the disaster evacuation, resident safety and disaster status information are required where  1 is normal time,  2 is estimated period,   is time at disaster,  3 is the period just after the disaster,  4 is stable period,  5 is recovery period, and  6 is recovered time.Just after disaster happened, the communication network around the disaster area maybe damaged and must be quickly recovered although the required network throughput is small; while being at stable and recovery period, the required throughput will be increased as the time elapsed.Thus, in order to achieve the emergency communication immediately after a disaster, quick recovery of the information network must be made.

System Configuration
Figure 2 shows our proposed disaster information network which consisted of wireless cognitive network switches combined with multiple different networks and a cognitive wireless controller.Wired networks can be also used as access networks.The cognitive wireless switches periodically monitor their network states at the several locations and send the monitored network states data to the cognitive wireless controller at the disaster headquarter.All of the received data are accumulated in the cognitive wireless controller and evaluated to select the best access network by weighting those possible access networks.The satellite network is used as a control channel for SDN to exchange the data between the cognitive switches.Each cognitive switch determines the suitable outgoing network for the packets to be send from the incoming network based on the message from the cognitive controller.In order to determine the best performance network, the following techniques perform important roles: (i) network monitoring technology to detect the change of network performance states; (ii) optimal selection method to decide the best access network; (iii) packet control technology by OpenFlow [8] which changes the link and route to the switch to the best access network.
As monitoring the packet delay, ping tool is used between the observation server and the cognitive wireless switch in a specified time period by averaging the round trip time (TTL) of the proved packets.With packet loss rate monitoring, ping tool is also used by counting the nonreplying packets.
In our system, in order to detect the change of the network states, the wireless cognitive switch has network monitoring function.
The monitored states include the following parameters: (i) link-up/down signal of network link; (ii) throughput; (iii) RTT between the observation server and each of the wireless cognitive switches; (iv) packet loss rate between the observation server and each of the cognitive switches.With monitoring the network throughput, two methods including passive and active methods are possible [9].In passive methods, the throughput is calculated by implementing the monitoring function at all of the routers which the packets pass through.In active method, on the other hand, proved packets are transmitted between the end-to-end terminals [10].In passive method, the monitoring functions have to be installed on all of the routers where packets pass through.This is very difficult because the Internet is huge and managed by different organizations.Therefore, for this reason, in our system, the active method is applied.Furthermore, there are two active methods including available bandwidth measuring methods such as Iperf and packet train methods such as pathChirp and PathQuick [11,12].In the available bandwidth measuring method, a large number of packets are inserted, while, in the packet train method, only a limited number of the probe packets are used in a limited period.For this reason, the packet train method is applied in our system.
At monitoring the packet delay, ping tool is used between the observation server and the cognitive wireless switch in a specified time period by averaging the round trip time (TTL) of the probe packets.With packet loss rate monitoring, ping tool is also used by counting the nonreplying packets.

Link Selection Method
4.1.Proposed Method Overview.Our cognitive radio router is equipped with a multiple access network.The system periodically monitors the performance of the wireless network access multiple links and calculates the priority of each access network by extending AHP method based on the parameter values obtained as results of the monitoring.Thus, the system determines the link of an access network based on the priority [13,14] as shown in Figure 3.

AHP Method Overview.
In this section, we describe the detail of AHP to be used in the decision-making in the access network switching.AHP is one of the decisionmaking processes and a more structural approach is used when performing a complicated decision.AHP was proposed in the 1970s by Satty et al.AHP [15] is capable of evaluation of alternatives and quantification of elements by performing the structure of the decision problem.The calculation process is performed in the order of "hierarchy of the problem, " "pair comparative evaluation for criteria, " "pair comparative evaluation of alternatives, " and "the calculation of the total value." Figure 4 is an example of a layered hierarchy by AHP and is a case of selecting the optimal wireless link between adjacent nodes.In order to solve the problem caused by AHP, it is necessary to stratify the problem first.In this study, we set a goal such as "select the best radio link in video communication" or "select the best radio link of connectivity." Next, in order to select the link that is the most suitable one for a user's request, appropriate network state values (throughput, delay, and packet loss rate) are set.And  1 priority is determined based on the pairwise comparison of the evaluation criteria.On the other hand,  2 priority is determined from the measured value of each alternative.
After that, the hierarchical priorities for evaluation criteria are calculated.As an example, we describe a method of calculating the priority by the measuring network performance.The number of evaluation criteria is defined as , the weight of each term is defined as " 1 ,  2 , . . .,   , " and pair comparison of each element is expressed as   =   /  .Furthermore, these pair comparisons can be expressed as : norm normal matrix can be expressed as follows:  where In addition, each priority   of evaluation criteria is calculated by the following equation: Weight   of each evaluation criterion with the range 1-9 is used to compute priority   and pairwise comparison matrix   .Table of evaluation criteria for each purpose is shown in Table 1.
Therefore, priorities  1 ∼  3 of evaluation criteria for each goal are shown in Table 2.
Next, alternatively, priority is calculated for each alternative with the weight.In this paper, the priority calculation of alternative considers a change in the wireless network.Therefore, after calculating the weight   using the measured values of the network state, this weight is applied to calculate the priority of each alternative.Then, the total value is calculated using the priority of each alternative with the evaluation criteria.Total value is determined by the sum of the products of the priority of alternatives and weights of the evaluation criteria.Finally, the maximum total value of alternatives is selected for optimal wireless access network.

Extended AHP Method.
In this study, we introduce an extension of AHP to determine the wireless access network by the cognitive radio device.To respond to the network state changes caused by the movement or external factors of network environment, the measured value of the network states is used for the calculation of the weights of alternatives.The weight of each alternative is defined as   .  is defined as the upper limit of each alternative.  is defined as the lower limit.Further,   is defined as the moving average of the measurement period and is determined by the weight (5) for PER (packet error rate) and RTT (round trip time).
On the other hand, the scale of the alternatives is different as shown in (6), and the upper limit of the throughput is defined as  max .Furthermore, in order to smooth the fluctuation by the measuring, the moving average of the measured values is defined as "  = 0.6  + 0.3 −1 + 0.1 −2 " (where   is defined as a network measurement value of  second time): As an example of the throughput of LTE network where the moving average of measurement   is 5.2 Mbps, the lower limit   is 0 Mbps, and the maximum value in the measurement history  max is 24 Mbps; then the weight   LTE is calculated as Table 3 is shown as an example of a pairwise comparison matrix for video communication and Table 4 shows its priority alternatives.Therefore, the overall result is shown in Table 5 by calculating the sum of the products of the priority of each alternative of Table 4 on the priority of the evaluation criteria in Table 2. Finally, if the purpose is video communication, the priority is set to LTE > 3G > satellite.Therefore, LTE is determined as the optimal wireless link.Thus, it is possible to continue to select an optimal access network by periodically calculating a moving average value of the network status.

4.4.
Route Selection.This system introduces "Extended AODV [16] which adopted extended AHP in AODV (Ad Hoc On-Demand Distance Vector) which is one of the conventional ad hoc network routing protocols." By Extended AODV, this system supports a change of neighboring communication environment reactively and realizes the construction of the network where QoS control is possible.The routing in Extended AODV is implemented based on the following algorithm.Specifically, an agent investigates all "the AHP calculation result between nodes existing between candidate routes" and finally really uses the highest route of the bottleneck score between the routes.
In the conventional AODV protocol [17], a route of the number of the smallest hops is chosen, but this may not be necessarily the most suitable root.In Extended AODV, each node adds the calculation result of the priority of each wireless link by the extended AHP to RREQ and RREP and finally makes the most suitable route choice by the min-max method.The destination node finally sends out RREP packet from the reception side towards an origin of transmission and notifies you of the route decision.The message flow of Extended AODV is shown in Figure 5.When data are sent to address node D by transmission former node S, at first it is delivered a broadcast to the RREQ packet like the normal AODV method by node S. Adjacent broadcast node A adds a postscript to adjacent node ID in front, the used most suitable wireless link ID, the value of the priority by the extended AHP in a route history of RREQ.
Then, in broadcast node A, broadcloth casts an adjacent node as RREQ packet equally, and similar processing is carried out in adjacent node B. Processing is repeated until RREQ packet finally arrives at objective transmission node D. When RREQ packet reaches transmission node, the transmission node waits for the arrival of the RREQ packet at constant time and destination node making the list of the candidate routes with route information and the priority information by the AHP chooses the most suitable route using the following min-max method from a candidate route list.
(1) Destination node compares the AHP information in each candidate route.
(2) The smallest AHP level is extracted by every candidate route.
(3) The minimum every candidate route is compared, and a route that has the maximum in the inside is chosen as the most suitable route.
And, along a route chosen by this min-max method, node D replies to the transmission in RREP packet.The broadcast node replies while referring to an adjacent transmission node made at the time of the RREQ packet transmission, and each broadcast node in this way knows the adjacent transmission, the reception node in this occasion.

Packet Control by OpenFlow
In this system, in order to flow the packets to the selected access network, OpenFlow as one of the SDN frameworks is used.In OpenFlow, OpenFlowController receives various messages from OpenFlowSwitches and executes the events corresponding to the message by event driven method [18].In our system, the following events are used.
(i) Switch Ready.This event is called when the link between OpenFlowController and OpenFlowSwitch has been established.
(ii) Feature Reply.This event is called when the Open-FlowController received a reply from OpenFlow-Switch corresponding to the Feature Request message.
(iii) Access Change.This event is called when the current access network is needed to be changed due to network states change.Using the control channel, the FlowMod command in OpenFlow protocol is issued to the related OpenFlowSwitches.
By combining those events, the flows of the data packets can be controlled.The message flows between OpenFlowSwitch and OpenFlowController are shown in Figure 6.First, OpenFlowSwitch issues Switch Ready message to OpenFlowController to inform that the OpenFlowSwitch joins to the access network.Then, the OpenFlowController detects this new join from the OpenFlowSwitch and sends  the request message to reply to the message with the Open-FlowSwitch itself, such as the switch ID, the number of admissible access networks, and the MAC addresses of equipped NICs.The OpenFlowSwitch completes the initialization process by notifying this information to OpenFlowController.The initialized OpenFlowSwitches start monitoring network states and those monitored data are sent to the OpenFlow-Controller.This process is repeated for all of the related OpenFlowSwitches.
The OpenFlowController can decide whether or not to change the current access network to the selected access network by issuing the Flow Mod message to the corresponding OpenFlowSwitch.

System Architecture
The proposed system consisted of an OpenFlowController and multiple OpenFlowSwitches as shown in Figure 7. Furthermore, the OpenFlowSwitch consisted of three components including message exchange layer, monitoring layer, and flow table [19,20].
The message exchange layer performs exchanging the monitored data and the control messages to the OpenFlow-Controller.OpenFlow message is executed on software on OpenFlowSwitch.The monitoring layer monitors the network state of own OpenFlowSwitch.
The flow table is located in a stack of OpenFlowSwitch.The flow of the packet is defined by a command from OpenFlowController.The OpenFlowController consisted of two components including message exchanging layer and decision-making layer.The message exchanging layer performs exchanging control messages and receiving monitoring data from the OpenFlowSwitch.Exchanging OpenFlow message is executed on a framework on OpenFlowController.
In the decision-making layer, the priority process of the access network is carried out using the extended AHP method.The determined result is notified to all of the related OpenFlowSwitches.By this operation, the flow table of each OpenFlowSwitch is updated.

Prototype System
7.1.Device Construction.We describe the two main devices of the present prototype system including OpenFlowController and OpenFlowSwitch.OpenFlowController is implemented by Trema [21] which runs on Linux OS based PC.Open-FlowSwitch is implemented by OpenVSwitch [22] which runs on the Linux based PC.In addition, OpenFlowSwitch is connected to various wireless access networks through the NIC/USB connectors [23].

System Construction.
We describe a prototype system to evaluate the proposed method.This prototype system is constructed for the purpose of demonstration and evaluation of dynamic access network switching function to ensure the communication between physically distant locations in an emergency.Therefore, we build a prototype system at three locations including inland site, northern coastal site, and southern coast site of Iwate prefecture which were seriously damaged by the Great East Japan Earthquake on March 11, 2011, as shown in Figure 8.
In each site, we set the OpenFlowSwitch equipped with a variety of wireless access devices for prototype system.Wireless access networks to be used in the present prototype system are as follows: (i) satellite; (ii) 3G/LTE; (iii) WiMAX; (iv) FTTH.
It is necessary to prepare the OpenFlow channel to control each OpenFlowSwitch using OpenFlow protocol.Therefore, the OpenFlowSwitch performs network configuration function to allow TCP connection to OpenFlowController which is disposed on the main site in advance.Furthermore, in order to always open OpenFlow channel, we use the satellite communication network channel for control link.Each OpenFlowSwitch provides a LAN port to control all of the packets by the OpenFlow.

Performance Evaluation
In order to verify usefulness and effects of our proposed system, the performance evaluation of switching link network connectivity was evaluated in the experimental environment as shown in Figures 9 and 10.In the actual disaster situations, physical connection problems occur such as the physical destruction of network equipment, lack of power, and breaking of the cable.Therefore, before making a decision based on the network performance, it is necessary to recognize the   availability of each link.In this prototype system, the availability of each link is recognized by monitoring the link state of each NIC.Link state of each NIC is determined by status member belonging to the message object which is retrieved by Feature Reply event of OpenFlow.If the value of the status member is 0, the link of NIC is available.On the other hand, if value of the status member is 1, the link of the NIC is not available.In that case, the system switches to another available link of NIC immediately.
First we measured the time required to switch from one wireless access network link to another link of the prototype system and then measured the changes of the end-to-end throughput and packet loss performance.For the first case, we measured the switching performance when switching packet flow by OpenFlow protocol.In order to measure the exact switching performance, the delay of OpenFlow channel has to be close to zero.Therefore, OpenFlowController is directly connected to the OpenFlowSwitch by Ethernet.Since OpenFlowSwitch is operated by the very simple mechanism, it cannot obtain the event of rewriting completion of the flow timing and the flow-mod timing.For this reason, the switching performance measurement program is needed to be implemented on the OpenFlowController.
As the measurement procedure of switching time, first, OpenFlowController starts the timer at the transmission timing of "Flow Mod message." At the same time, OpenFlow-Controller sends a "Barrier Request message." Then, Open-FlowController stops the timer upon receiving the "Barrier Reply message" from OpenFlowSwitch.Thus, it is possible to measure the switching time.We implemented the switching  6.
The average switching time 80 ms is short enough to switch the link among possible access networks without significant packet loss.However, the maximum value was significantly out of normal distribution because the window manager is running on OpenFlowSwitch in order to perform a visual demonstration.That is, a processing time is increased by the control of the process such as interrupts at the OS level.It is considered that, in order for the operations to be more stable, it is necessary to introduce a dedicated Open-FlowSwitch machine not PC based or reduce the background process as much as possible.
Next we evaluated the end-to-end throughput and packet loss as network performance based on the disaster occurrence scenario.The scenario is as follows.Initially all three access networks including satellite network with average 1.29 Mbps throughput, 3G/LTE network with average 7.20 Mbps, and FTTH with average 25.01 Mbps are alive and the FTTH link is selected.Then a disaster occurred after 20 sec and both the FTTH and 3G/LTE network stopped due to power supply failure.Then link of the FTTH network is automatically switched to the satellite network.After 40 sec elapses, 3G/LTE network is recovered and the network link is automatically switched from satellite to 3G/LTE network.Finally, 60 sec elapses, the FTTH is recovered, and the network link is automatically switched from 3G/LTE to the FTTH.We measured the end-to-end network throughput and packet loss using Iperf.
The result of end-to-end throughput and packet loss is shown in Figure 11.After 20 sec from the starting time, the end-to-end throughput suddenly decreased from average 25 Mbps throughput to average 1.29 Mbps by satellite link.After 40 sec, the network link was switched to 3G/LTE network with average 7.1 Mbps.Finally, the 3G/LTE link was switched to the FTTH link with the original 25 Mbps.The packet loss at the switching times of 20 sec, 40 sec, and 60 sec was only under 5%.Thus, even though the disaster occurred and all of the networks were failed, the satellite network could be always alive and maintained the communication link to the Internet and realized resilient disaster network.

Conclusion and Future Work
In this study, we have implemented a cognitive radio system using the SDN technology.Cognitive wireless device is equipped with LTE and WiMAX, 3G mobile telephone network, and a satellite communication network.We have created a prototype system by placing the three based in cognitive radio devices.Furthermore, we constructed a testbed environment to evaluate the performance and functionality of the system.Eventually we could verify the usefulness and effects of our proposed system.
In the future, we will implement immediately the expansion of AHP module which is the proposed method and network performance monitoring module.Then, by improving from manual to automatic switching process and evaluating the proposed method, we always activate a prototype system in three locations.By using continuous improvement, we will build a practicable system.

Figure 11 :
Figure 11: Result end-to-end throughput and packet loss.

Table 1 :
Pairwise comparison matrix of evaluation.

Table 2 :
Result of evaluation priority.

Table 3 :
Pairwise comparison matrix example of alternative.

Table 4 :
Priority of alternative.

Table 6 :
Switching process time.