ANTSENS – AN ANT BASED ROUTING PROTOCOL FOR LARGE SCALE WIRELESS SENSOR NETWORKS by Balaji Polepalli Ramesh A Thesis submitted in Partial Fulfillment of the Requirements for the Degree of Master of Science in Computer Science at The University of Wisconsin-Milwaukee August 2009 ANTSENS – AN ANT BASED ROUTING PROTOCOL FOR LARGE SCALE WIRELESS SENSOR NETWORKS by Balaji Polepalli Ramesh A Thesis submitted in Partial Fulfillment of the Requirements for the Degree of Master of Science in Computer Science at The University of Wisconsin-Milwaukee August 2009 _____________________________________________________________ Major Professor Date Graduate School Approval Date ii ABSTRACT ANTSENS – AN ANT BASED ROUTING PROTOCOL FOR LARGE SCALE WIRELESS SENSOR NETWORKS by Balaji Polepalli Ramesh The University of Wisconsin-Milwaukee, 2009 Under the Supervision of Professor Mukul Goyal Large wireless sensor networks that consist of thousands of that nodes spread over a large geographical area are gaining popularity. They will be widely used in building automation, home automation and many controlling applications. The nodes that will be used in these applications have very limited capabilities in terms of computation, memory and battery life. Dynamic characteristics of these nodes like PHY/MAC level layer loss rates and battery levels of the nodes require continuous monitoring. These nodes will be used in different environments and there are a set of requirements which they should satisfy and conform with. Hence an efficient protocol that suits the requirement of large scale low power lossy networks is necessary. The protocol should have the ability to scale the network in terms of memory, power consumption and processing overhead and allow the nodes to communicate with each other through other nodes. The protocol should be able to distribute the traffic uniformly throughout the network, continuously monitor existing routes and discover new routes through which the traffic can be reliably sent. iii This thesis discusses an ant based protocol, which has the ability to scale itself as the number of nodes in the network increase. The protocol continuously monitors and discovers new routes and dynamically reconfigures itself with changing network conditions. The ant protocol is based on how ants forage for their food, travelling from their nest to the place of food and back to the nest. This protocol adapts itself with the changing network conditions and thus performs better. The ant based protocol was implemented on Network Simulator 2 (NS2) to run the simulations. Then the results of the ant based protocol are compared with that of the shortest route protocol at different data rates. _________________________ _ Major Professor ____________________ Date iv TABLE OF CONTENTS CHAPTER 1 ...................................................................................................................... 1 INTRODUCTION............................................................................................................. 1 CHAPTER 2 .................................................................................................................... 10 RELATED WORK ......................................................................................................... 10 2.1 FEW ANT-BASED ALGORITHMS .................................................................... 10 2.2 PROTOCOLS PROPOSED FOR ROLL .............................................................. 18 CHAPTER 3 .................................................................................................................... 21 ANTSENS: THE PROPOSED ROUTING PROTOCOL FOR LARGE SCALE WIRELESS SENSOR NETWORKS ............................................................................ 21 3.1 NEIGHBORHOOD DISCOVERY ....................................................................... 21 3.2 PACKET FORWARDING AND RECEPTION ................................................... 22 3.3 MAINTAINING END-TO-END RELIABILITY OF REACHING THE DESTINATION ................................................................................................................ 23 3.4 PROPERTIES OF THE PROPOSED AntSens ROUTING PROTOCOL ............. 25 3.4.1 MEMORY REQUIREMENTS .......................................................................... 25 3.4.2 ROUTING LOOPS ............................................................................................ 26 3.5 USE OF BROADCAST/MULTICAST ................................................................. 26 3.6 MULTIPLICATIVE ACCUMULATION OF LINK RELIABILITIES ............... 27 v CHAPTER 4 .................................................................................................................... 28 SIMULATION BASED PERFORMANCE EVALUATION ..................................... 28 4.1 TOPOLOGY, EXPERIMENTAL SETUP AND ASSUMPTIONS ...................... 28 4.2 IMPACT OF THE FREQUENCY OF ACKR PACKETS ON CONVERGENCE TO STEADY STATE ....................................................................................................... 32 4.3 AntSens VERSUS MINIMUM HOP ROUTING .................................................. 38 CHAPTER 5 .................................................................................................................... 39 CONCLUSION ............................................................................................................... 39 REFERENCES ................................................................................................................ 40 vi LIST OF FIGURES Figure 1. 1 : Pictorial Representation of ants foraging food ......................................... 7 Figure 4. 1 : Characteristics of 100 node topology used in the simulation ................ 30 Figure 4. 2 : Impact of Frequency of ACKR packets on the convergence of end-toend loss rates to their steady state values...................................................................... 34 Figure 4. 3 : Impact of the frequency of ACKR packets on the end-to-end loss rate for each node ................................................................................................................... 37 vii ACKNOWLEDGEMENTS I extend my immeasurable gratitude to my advisor, Dr. Mukul Goyal, Ph.D, Assistant Professor, Department of Computer Science, University of Wisconsin, Milwaukee for his continued advice and support not only towards the completion of the thesis but also for the guidance throughout the course of my program. I thank Dr. Hossein Hosseini, Ph.D, Chair, Department of Computer Science, University of Wisconsin,Milwaukee for upholding his direction and being involved in activities targeted at the best interests of students. I further thank Dr. Brian Armstrong, Ph.D, for his presence and valuable suggestions on the thesis committee. I dedicate my sincere gratitude to all the faculty of the Computer Science department who have motivated me towards learning through their excellent instruction and encouragement. I offer earnest gratitude to my family for the never ending reassurance and comfort they have given throughout my program. I give all my dear and cherished friends credit for having kept me optimistic and buoyant every day of me being a student at University of Wisconsin, Milwaukee viii 1 CHAPTER 1 INTRODUCTION Wireless devices are rapidly replacing existing wired infrastructure due to their ease of use, ease of installation, portability and accessibility in many control and monitoring applications. New monitoring and control applications based on large scale wireless sensor networks are being conceptualized [1]. These applications would involve a large number of wireless sensor nodes that spread over a vast geographical area [2]. These nodes, which are usually battery powered, are limited in their capability in terms of processing and memory. These wireless sensor nodes can communicate only with other nodes in their radio range. But they also need to communicate with nodes that are not in their radio range. This makes it necessary for the sensor nodes to run a routing protocol which will help the source node communicate with the destination node over a multi-hop path through other nodes in the network. There are several flavors of routing protocol. There are link state routing protocols [3]-[5] which require each node maintains a map of all nodes that it can reach and best routes through which it can reach them in the network. When a network link state changes, the node floods the Link State Advertisement (LSA) and all the nodes in the network recalculate the best route to reach one another in the network. The link state routing protocols support the idea of area, where all the routers in the same area share the same view of that area. 2 In contrast, the distance vector protocol [6]-[9] requires each node to periodically exchange information regarding routing and topology changes with its immediate neighbors and the nodes calculate the lowest cost for reaching other nodes in the network. There are protocols that are proactive, where each node maintains the route to other nodes in the network irrespective of whether they will be needed or not and some of the protocols are reactive or on-demand, where a route is discovered only when there is a need for it to be discovered. Internet Engineering Task Force (IETF) has formed a working group, called Routing over Low-power and Lossy Networks (ROLL) [10] to standardize one or more routing protocols for use in large scale wireless sensor networks. These low power and lossy networks have additional constraints and requirements that other networks typically do not possess along with already existing constraints of limited resources and power sources which restrict the amount of traffic a protocol may generate. These applications demand and embrace a range of heterogeneous node capabilities and good support for specific traffic patterns. The ROLL group has specified a set of criteria, although not sufficient and complete, that the protocol should satisfy to evaluate its suitability to operate on large scale wireless sensor networks. This protocol should satisfy at least all these criteria so that it can be modified accordingly to suit the needs of particular requirements [11]. The criteria are as follows: 3 Routing Table Scalability – This criterion indicates the scalability of the protocol with the limited resources it has such as low power and memory. The routing information that each node maintains should scale proportional to the number of destinations in the network rather than the number of nodes in the network or the number of nodes in the immediate neighborhood of the node. Loss Response Scalability – This criterion refers to the reaction of the network when the connectivity between the links fails. The response of the protocol to these link failures should be limited. The protocol should always dynamically recompute the paths and optimize the system. The protocol should not propagate the link failure to the entire network; instead it should limit the scope of link failure propagation to the nodes that are affected. Control Cost Scalability – This criterion refers to the traffic of the packets that are sent by the protocol such as route discovery, maintenance, etc. Transmitting or receiving packets in a wireless network is a costly process and energy is consumed for both transmission as well as reception of packets. Wireless networks support very low data rates (popular IEEE 802.15.4 MAC/PHY protocol supports maximum data rate of 250Kbps [12]). Hence it is more desirable to use the network capacity to transmit data packets rather than control packets. As the control traffic increases, the energy consumption will proportionately increase. Therefore the control traffic must be bounded by the data rate. The route discovery/maintenance should not require network wide broadcast of control messages. 4 Link and Node Cost – This criterion refers to how the protocol decides to route the packets in the network. The protocol should allow characteristics of node/link such as power, memory, ability to route other packets, processing and management capabilities of other network devices to be taken into consideration when discovering routes. Adhoc On Demand Distance Vector (AODV) Protocol [7] is one such category protocol which has the features that are required and specified by the above criterion. In AODV, routes are discovered on demand i.e. when there is a need for a new route, it is discovered. The source node sends Route Request packets to all the nodes. All the other nodes except the destination node broadcasts the Route Request packets. Upon receiving a Route Request packet, the destination node sends a Route Reply packet in response, which travels in a backward direction of the corresponding Route Request packet. At every node the Route reply packet accumulates the cost of traveling in that route. Finally, when the source node receives all the Route Reply packets, it decides which route to take based on the accumulated cost on each of the Route Reply packets. The source node may use this information to update its routing table. Many variants of the AODV are prevalent, where an intermediate node sends the Route Reply if it knows the route to the destination node. AODV avoids routing loops if there are any by using the minimum cost route. The AODV routing is not suitable for large scale wireless sensor networks since discovering the routes becomes costly. In worst case scenario, all the nodes in the network may need to send the Route Request packet to discover new routes and optimize the performance of the network with changing network conditions. Thus, it 5 would not satisfy the criteria of control cost which requires the protocol to send as less number of packets as possible. In this thesis, we propose a protocol based on the behavior of ants foraging for their food. We have observed how ants find routes to their food and back to the nest. Usually the route through which the ants travel is the shortest route from the nest. Ants start from their nest and go in search of food. When an ant finds its food, it travels back to its nest in the same route that it came in. Along the way these ants deposit a substance called pheromone on the ground when they travel. Pheromone is a volatile substance, so its concentration level decreases over time. Other ants sense this pheromone and choose the route that has the highest levels of concentration of pheromone. These ants also deposit pheromone on the way as they travel back. Figure 1.1 shows how ants forage food and find the shortest path from the nest to food. (a) Ants start from the nest to find route to the food 6 (b) Ant reaches the food using the shortest path and deposit pheromone on the way. (c) Ant on the shortest path reaches the nest first and increase the pheromone concentration on the shortest path 7 (d) As the shortest path has highest concentration of pheromone, all the ants use the shortest path and it will be the only path remaining. Figure 1.1: Pictorial representation of ants foraging for food. The concentration level of the pheromone would be higher in the shortest path as more ants would have travelled in this path as compared to other paths. Initially, an ant has no preference on which path to chose and takes each of the paths with equal probability. However after a certain period, the ants would pick the path that has the highest level of pheromone concentration. This would be the shortest path since more ants would have travelled in this path than any other path in a given time interval. The proposed ant based routing algorithm has several properties which makes it ideal for the above specified requirements. 8 The algorithm has the capability to dynamically reconfigure itself with changing network topology. This is done by making use of certain number of data packets as ants which require the destination node to send an acknowledgement back to the source node. The Ant based routing algorithms does not exchange any routing table information over the network and the routing is based entirely on the local information stored in the node. The Ant based algorithm can support multi path routing as each node has certain number of neighbors with specified pheromone concentration levels and the next hop is chosen based on the concentration of pheromone. Hence it allows the node to choose different routes each time. Many ant based routing protocols have been proposed for traditional wired networks [14]-[15] as well as wireless Mobile Adhoc Networks (MANETs) [16]-[19] that have very different requirements and constraints than that of wireless sensor networks. These protocols are discussed in the next chapter. Also several ant-based routing protocols for wireless sensor networks have been proposed [21]-[23]. Most of these algorithms focus on determining routes through the node which have minimum battery consumption so as to minimize the energy consumption and maximize the network life time. These algorithms do not meet the scalability requirements that were 9 mentioned earlier. The proposed AntSens routing protocol, is focused on providing a simple, scalable routing protocol for the sensor nodes which provides the ability to continuously discover new best quality routes. The proposed AntSens protocol can enforce any local energy conservation policy. It may have; for example, a batterypowered node may refuse to forward packets originated at other nodes or periodically go to sleep. AntSens would automatically take the local node policies into account while determining the best quality routes available in the network. 10 CHAPTER 2 RELATED WORK A number of routing algorithms based on ants have already been proposed. Most of them are based on the concept of Ant Colony Optimization Algorithm (ACO), which is a metaheuristic approach for solving computational problems based on probability techniques. The idea behind the Ant Colony Optimization Algorithms is to collect the routing information throughout the network by agents called ‘ants’ and use this information for routing purposes and make other global decisions. These ants are independently generated in a uniform concurrent manner by each node and are sent to examine the quality of a route to a particular destination. On the way back, these ants visit each of node they traversed in the reverse direction and update the routing information at each intermediate node. These algorithms usually maintain a table which holds the route’s goodness value called the pheromone value, which is constantly updated based on the information these ants carry. 2.1 FEW ANT-BASED ALGORITHMS Gianni Di Caro and Marco Dorigo, proposed AntNet [14], an ant routing algorithm based on ACO. In the AntNet algorithm, each node maintains a routing table and another table which holds network statistics about the traffic distribution over the network. The routing table contains the goodness value normalized to one for each destination and each next hop node. The goodness value is a measure of 11 choosing the next hop for forwarding the packet through it to reach the destination node. These goodness values called the pheromone variables are used in stochastic routing. The AntNet Algorithm makes use of two types of agents to find the most optimal path: Forward Ant and Backward Ant. The source node creates forward ants and dispatches them to the destination node. These forward ants use the heuristically computed normalized goodness value to find the next hop. The forward ants experience the same network conditions as normal data. The forward ants collect the traffic distribution over the network and reach the destination. At the destination the forward ant creates other agent, the backward ant, transfers all the network related data collected to backward ant’s memory and dies. The backward ant takes the same path as the forward ant but the opposite direction and reaches the source node. Through each node the backward ant travels, it updates the additional table containing the traffic distribution information at that node. AntNet proved that it can perform better than many shortest path algorithms given varying traffic loads and topology. Camara and Loureiro proposed the Global Positioning System ANT-Like Routing Algorithm (GPSAL) [27]-[28]. It makes use of the Global Positioning System and ant like agents for routing. Ant like agents are used to collect the data about the network and update the network about a nodes location and GPS is used to get the physical location of the destination node. This routing is based on the positioning system and does not use the value of pheromone to compute the path to be taken. Rajagopalan and Shen proposed the Adhoc Networking and Swarm Intelligence (ANSI) [29].This protocol maintains a routing table which holds the list of reachable nodes and the next best hop. The routing protocol also maintains a table of pheromone values called the ant decision table. The protocol employs the forward 12 reactive ants and backward reactive ants as the mobile agents. When a node wants to transmit data, it generates forward reactive ants and broadcasts them over the network. The backward reactive ants then travel in the same path of the forward reactive ants but in the reverse direction and update the value of the pheromone at each node. When a node transmits the data packet, it chooses the path that has the highest pheromone value and transmits the data over that path. Gunes and Sorges proposed the Ant-Colony-Based Routing Algorithm for Mobile Adhoc Networks (ARA) [18]. ARA is a reactive protocol. The protocol maintains a routing table which contains the pheromone value of different paths to reach the destination through each neighbor. The pheromone value in the table deteriorates with time. When the value of the pheromone reaches below a certain threshold, the node enters the sleep mode. The protocol makes use of two kinds of mobile agents for route discovery: forward ants and backward ants. The forward and backward ants use different sequence numbers and thereby avoid duplicate packets. During the process of route discovery, the source and destination nodes flood the network with forward and backward ants which update the values of the pheromone at each of the nodes respectively. The route maintenance is done by the data packets. The forward and backward ants are not originated further after the route discovery phase. Shivanjay Marwaha proposed a hybrid of ant based routing and AODV, the Ant – AODV [30] technique, that overcome the inherent shortcomings of the AODV technique. This technique decreases the end to end delay and latency in route discovery and increases the connectivity between the nodes. This technique supports on-demand route discovery to the destination node if they do not have recent route 13 entries. The use of ants increases the network connectivity (the number of destinations for which a node has un-expired routes).This in turn reduces the amount of route discoveries even if a node launches a RREQ (for a destination it does not have a fresh enough route) as the probability of receiving quick replies from the nearby nodes for the Route Request (RREQ) is very high due to increased connectivity. As the ants constantly find better routes, the nodes send data packets in shorter routes. This decreases the end to end delay in the network. The Ant – AODV technique uses Route Error (RERR) packets to inform link failures in the network similar to that in AODV. John Baras and Harsh Mehta proposed the Probabilistic Emergent Routing Algorithm (PERA) [17]. The routing table stores the probability distribution for the neighboring nodes. This probability associated with a neighbor reflects the relative likelihood of that neighbor forwarding and eventually delivering the packet forwarded to it to the destination node. The route discovery is done by two mobile agents – forward ant and the backward ant. When a node does not have a route to the destination, it creates a forward ant and sends it periodically on the network as long as the route is required. The forward ant uses a structure which stores information comprising the IP address of the source node, IP address of the destination node, a sequence number, a hop count and a dynamically growing stack. The stack contains information about the route traversed and the timestamp when that node was traversed by the forward ant. Upon reaching the destination, the destination node creates a backward ant, which uses the information in the forward ant to traverse back to the source node. The backward node updates the probability distribution at each node on its way. The drawback of this routing protocol is that at each node, both forward and backward ants are broadcast which leads to huge number of duplicate ants in the network. 14 Shabab Kamali and Jaroslav Optarny proposed an algorithm which finds an optimum route for nodes having different transmission ranges in Mobile Adhoc Networks (MANETs) based on Ant Colony Optimization routing and location of nodes called the Position based Ant Colony Routing Algorithm for MANETs (POSANT) [31].In POSANT, each node is assumed to be aware of its position or location in the network. It is a reactive algorithm, hence routes are discovered only when the source wants to send a collection of data packets to the destination and data is sent only after the optimum route has been discovered and established. Information about the position of the node is used as the heuristic value to keep the number of forward and backward ants as low as possible. A node divides its neighbors into three zones based on their position. Making use of location information as the heuristic significantly reduces the time needed to establish the route between the source node and the destination node. In addition to having a short route establishment time, POSANT greatly reduces the number of generated control messages. POSANT has a higher delivery rate with a shorter average packet delay than other position based routing algorithm. Lianggui Liu and Guangzeng Feng proposed the Ant colony based Multi-path QoS aware Routing (AMQR) [32], an ant colony based multi-path reactive routing protocol for Mobile Adhoc Networks. Most of the routing protocols proposed till then were essentially single path routing protocols which loaded the links with data packets along the shortest route from the source node to the destination node. This method was unique because it provided a multi-path routing for the nodes in the network to route the packets in different paths. This makes the protocol more robust to link failures and network end to end delay. AMQR uses link disjoint multi path routing along with swarm intelligence to distribute the traffic uniformly throughout the 15 network. AMQR establishes multiple routes and sends data packets throughout the network utilizing multiple routes of the link-disjoint path and adapts the pheromone value to distribute traffic. This protocol has the ability to adapt to changing network conditions and topology in addition to supporting better QoS. O.Hussein and T.Saadawi proposed the Ant Routing Algorithm for Mobile Adhoc networks (ARAMA) [19]. ARAMA makes use of two mobile agents: forward ant and backward ant. When a source node wants to send data to the destination node, it generates forward ant and sends it on the network to discover a route. The forward ant collects not only collects basic information like hop count but also collects links local heuristic along the route such as the node's battery power and queue delay. Once the forward ant reaches the destination node, it is killed and a backward ant is generated and the information from the forward ant is transferred to the backward ant. As backward ants move in the reverse path, the intermediate nodes modify their pheromone table values based on the grade value carried by the backward ant. The value of grade is calculated by the backward ant. This value is a function of the path information stored in the forward ant. ARAMA can configure itself to changing network conditions, minimize the routing overhead by controlled flooding of the ants into the network and increase the overall performance of the Mobile Adhoc Networks. Laura Rosati et.al proposed the Distributed Ant Routing (DAR) [33] Algorithm. It is an on-demand algorithm. A forward ant moves towards the destination collecting information about identities of crossed nodes based on the value of pheromone. Then the backward ant travels in the reverse direction and it deposits a constant amount of pheromone on each of the links it travels. The simplicity of this protocol can help seamless routing in networks that constitute heterogeneous components. Each node maintains a routing table which holds weighted probability 16 values calculated on the basis of pheromone trails left by the backward ants. Node uses the probability value to chose the next hop. When a node receives a data packet to be transmitted to the destination, if it has a route to the destination the packet is forwarded else the node buffers the data packets, creates forward ants and transmits them at a constant rate. The forward ants are then forwarded on the basis of the current nodes probability for the next hop that is stored in its routing table. Hence the forward ants are sent out into the network in a probabilistic manner to discover new routes, whereas the data packets are routed in a deterministic manner on the basis of the maximum probability value stored in the current nodes routing table for the next hop. Xiangquan Zheng et al have proposed the Ant Based Distributed Routing Algorithm for ad-hoc networks (ADRA) [34]. The ants move across the network between randomly chosen pair of nodes. They deposit pheromone on the link connecting these two random nodes. The pheromone value that is deposited is a function of their hop distance from their source node, the quality of the link, the congestion encountered on their journey, the current pheromones the nodes possess and the velocity at which the nodes move. The nodes update the value of the pheromone according to their link quality; they age the link by reducing the amount of pheromone value with time. An ant selects the path through which it should travel at each intermediate node based on the distribution of simulated pheromones at each node. In order to avoid the shortcut problem and increase the convergence rate, the parameters are given various weights to update the value of the probability. ADRA has shown the features of distributed control while decreasing the number of call failures. 17 Eseosa et al, have proposed a reactive protocol, the imProvised Ant Colony Optimization algorithm for mobile Ad-hoc NETworks (PACONET) [35]. The protocol uses two kinds of mobile agents, the Forward Ant (FANT) and the Backward Ant (BANT). The FANTs are transmitted in a restricted broadcast manner to discover new routes. The BANTs establish the path based on the information gathered by FANTs. These mobile agents leave certain amount of pheromone at the time they depart from the node. The data packets are routed on the path that has the highest pheromone value along the path to destination stochastically. FANTs travel along the path of unvisited nodes. They only take the path which has the highest level of pheromone concentration if all the nodes in the routing table have been visited. Each node maintains a routing table. Each row represents the neighboring nodes of the current node and the columns hold all the nodes in the network. The (row, column) position in the table holds two values A binary value to indicate if the node has been visited or not The Pheromone concentration value for the node pair The FANT uses the value of the pheromone to determine its next hop only when all the values in the column have been visited, thus ensuring that all the possible routes through that node are examined before choosing the best path. Gianni Di Caro, Frederick Ducatelle and Luca Maria Gambardella proposed AntHocNet [16]. It is an Ant Colony Optimization Based hybrid algorithm for Mobile Ad-hoc Networks which comprise of both proactive and reactive components. The algorithm reactively finds the route to different nodes and proactively probes, monitors and maintains the routes. The protocol does not maintain routes to 18 destination nodes, since these are discovered when they are needed, hence the forward ants are sent only when there is a need for routes to be discovered. Then the backward ants are created at the destination and as they work their way back to the source node, they update the values in the pheromone table at each of the intermediate nodes. The pheromone value represents the quality of that link to reach the destination. Data packets are then routed stochastically based on the pheromone values. When data packets are being sent, the source node periodically creates proactive forward ants and sends them into the network. These proactive forward ants monitor and maintain the routes. This algorithm is robust and handles link failures with either local route repairs or by informing the preceding nodes in the path about the failure of the link. AntHocNet outperforms AODV in terms of end-to-end delay and delivery ratio. 2.2 PROTOCOLS PROPOSED FOR ROLL P. Thubert, T. Watteyne and Z. Shelby proposed a mechanisms using tree structure that satisfies all the set of requirements for routing on a Low-power and Lossy Network (LLN) for various scenarios identified by the ROLL working group [36]. It has two phases, Tree Discovery phase and Route Dissemination phase. The Tree discovery phase consists of finding the tree structure and a mechanism to find the next neighbor. Each router in the tree structure stores a subset of its neighbors in its memory. It advertises the structure of the tree below it only to the best parent so that the protocol ends up in a simple tree representation which can be used for routing traffic and making other decisions. The authors propose to unicast /anycast while routing up the tree and unicast while routing down the tree. The mechanism to choose the next best hop was left to the protocol which is developed using this mechanism. In 19 this mechanism each tree is rooted and is identified by a Tree ID. It uses a flavor of distance vector protocol for tree discovery and forms directed graphs. The tree uses an information structure called Tree Information Option (TIO) to do the tree discovery, which travels down the tree. Each router decides which tree it wants to be a part of. The Route Dissemination phase establishes the routing states and advertises the tree structure that is formed by the Tree discovery phase. It defines a new information structure Route Information Option (RIO) to spread the atomic route information to the tree’s root. Hence the first stage forms the tree structure and the second stage establishes the route from the leaf nodes to the root. Together both these stages increase the reliability by allowing the node to discover different possible routes. The upstream routing is done by routing the data packets through the parent nodes to avoid loops; routing through the siblings is a possible option. The downstream routing can be done using hop by hop forwarding or full source routing or loose source routing. Multicasting is also supported by this mechanism. R.Kelsey proposed the Label Information Protocol (LIP) [37] that satisfies the set of requirements specified in the requirements survey of the ROLL working group. LIP is an extension of the Multi-Protocol Label Switching (MPLS) in Lossy Low Power Networks. MPLS involves the generation of a fixed length label which acts as a representation of an IP packet’s header. The nodes use the information that is present in the label to make routing and other global decisions. It transfers the data between nodes with very high performance and makes it easy to create virtual links. The LIP has two advantages It enables quick and localized route change in response to network topology changes. 20 It allows message fragments to traverse multiple hops without the need to reassembled and refragmented at each hop. The main extension of LIP over MPLS is the addition of an optional source route and route record data to labeled packets. The lossy and low power network makes use of these records. Thus making the labeled packets available allows the node to use packets without losing the advantages of using label switching. LIP also has optional methods to discover and maintain trees based on Route Information Protocol (RIP). In summary, LIP can route packets based on either an included source route or by using next hop information stored in a Label Map. There are three methods for installing Label Map entries: Out-of-scope Label distribution protocol; labels may be assigned to either nodes or flows. Tree discovery. A source-routed message may optionally add its route to the Label Maps of the forwarding nodes LIP is compatible with both centralized and distributed routing. Many ant-based protocols have been proposed for both wired networks and wireless networks. In the next section we propose an ant-based algorithm for routing in low power lossy networks that satisfy the requirements of the ROLL as described earlier in Chapter1. 21 CHAPTER 3 AntSens: The Proposed Routing Protocol for Large Scale Wireless Sensor Networks The operation of the AntSens protocol consists of three tasks. They are as follows Periodic neighborhood discovery Packet forwarding/reception Maintaining end-to-end reliability of reaching the destination(s). 3.1 NEIGHBORHOOD DISCOVERY A sensor node sends a Hello message (heart beat message) via one-hop broadcast to make its presence known to all the nodes in its radio range. The nodes which are in the radio range are called neighbor nodes. A node may go to sleep mode to conserve energy. When a node wakes up, it sends new hello packet is sent to all the neighbor nodes along with the duration of time it will be in active state in the message. If a node does not wish to be used for packet forwarding then it need not send a Hello message to its neighbors. The hello message allows the node to keep track of all its one-hop neighbors that are willing to forward packets and the duration the node is in active or awake state. The protocol does not enforce the node to keep track of its entire one-hop neighbors. A node can store a subset of its one-hop neighbors in its memory due to possible memory constraints. 22 3.2 PACKET FORWARDING AND RECEPTION Let the subset of neighbors that the node keeps track be represented as N. Suppose a node s needs to send a packet, originated by some other node, to a destination node d. For each neighbor node n ε N, the node s maintains a metric Rn,d , which represents the end to end reliability of forwarding a packet, going to destination node d through the neighbor node n. The initialization and maintenance of the Rn,d value are done by exponentially weighted moving average method which is discussed in the later section. In the following discussion, Rn,d value is referred as just R where n and d are obvious from the context. If the destination node is not directly reachable, then the node forwards the packet to an active and willing neighbor node. This neighbor node to which the data packet is forwarded to will be henceforth referred to as the next-hop node. The nexthop node is chosen among the set of neighbors with highest R value. The data packets are not forwarded to the node from which it received the packet or to the source node which originated the packet. Every node in the network increments the hop-count value present in the header by one. The packet is discarded if the value of the hopcount exceeds a certain value, thus avoiding infinite loops in the network. The AntSens protocol distributes the traffic load throughout the network when multiple high quality routes exist between the nodes. 23 3.3 MAINTAINING END-TO-END RELIABILITY OF REACHING THE DESTINATION The source node solicits an end to end acknowledgement packet henceforth referred to as an ACK packet from the destination node for a fraction of packets that it originates. The packets soliciting acknowledgement are called as ACK Request (ACKR) packets. The objective of the ACKR packets is to sample the link quality and end to end reliability of reaching the destination via each of the neighbor node. For this purpose, the source node forwards these ACKR packets in a round robin fashion to all active and willing nodes. However the ACKR packets are subsequently treated in the same manner as data packets by all the other nodes to forward them to the nexthop node .i.e. the ACKR packets are treated similar to those of the data packets by being forwarded to the node with the highest R value. On receiving an ACKR packet, the destination node responds by sending an ACK packet to the source node in the reverse path taken by the corresponding data packet. The ACK packet maintains the end to end reliability value rel, initialized to 1 at the destination node. On receiving the ACK packet originated by the destination node d through the neighbor node n, the node updates the value of rel value as well as the Rn,d as shown in the equations below: ack.rel = ack.rel × macSuccessRate (1) Rn,d = (1 − w) × Rn,d + w × ack.rel (2) 24 where macSuccessRate is the current MAC-level success rate at the node and parameter w < 1 is a suitable. Furthermore, a node forwards the ACK packet to the node from which it received the corresponding ACKR packet. Hence the ACK packets reflect the end to end reliability along the route taken by the ACKR packet originated or forwarded by that node. For every ACKR packet p a node generates or forwards, it needs to remember the packet’s signature, sig(p), consisting of the original source node, the final destination node, the sequence number of the packet, the previous node and next hop node. The signature helps the ACK packet to be forwarded to the neighbor node from which it received the ACKR packet. The signature also helps the node to keep track of ACKR packets it received and eliminate any duplicate ACKR packets by discarding them. A node periodically checks the number of signatures it stores and deletes part of the old signatures if this number exceeds a certain threshold. Each ACK packet carries the current value of end-to-end reliability of reaching the destination node d through the neighbor node n along the route taken by the corresponding ACKR packet. The loss of a huge portion of the ACK packets by these transmissions is still acceptable as long as at least one ACK packet reaches the source node within a reasonable amount of time t (e.g. every 10 minutes). If no ACK packets are received in response to the ACKR packets forwarded to neighbor node n in time interval t, then the value of the Rn,d is reduced in the following manner. Rn,d = (1-w) * Rn,d (3) 25 The ACKR/ACK packets can minimize the probability of their loss by making use of the highest reliability service that is provided by the MAC layer such as acknowledged transmission. 3.4 PROPERTIES OF THE PROPOSED AntSens ROUTING PROTOCOL 3.4.1 MEMORY REQUIREMENTS Let N be the set of all the nodes in the network and D be the set of all the destination nodes in the network. Let η and Ө denote the cardinality of the sets N and D respectively. As the node need not keep track of all its one-hop neighbor nodes, η would be the upper limit of the number of neighbor nodes a node keeps track. A node needs to maintain the following things in its memory. The set N of one-hop neighbors that the node tracks. Rn,d , n ε N and d ε D, will require O(ηӨ) memory. {sig(p), n} , where sig(p) is the signature of an ACKR packet p forwarded to node n that has not yet reached the destination node and acknowledged. Each node restricts the number of packet signatures that it can store to some threshold value. Therefore the total memory requirement of the node to store the packet signatures is O(η). Thus, the memory requirement of the routing protocol is 26 O(ηӨ) or O(Ө) as η can be considered a constant. Clearly, the AntSens protocol meets the Table Scalability requirement described earlier in Chapter1. 3.4.2 ROUTING LOOPS The AntSens protocol can have routing loops, but these loops are not persistent. Suppose, we consider a scenario where a node A forwards a packet to another node B. Node B forwards this packet to node C, which in turn forwards this packet back to node A. By imposing the limit on the hop count value ensures that the packet will ultimately be discarded sometime once the hop count exceeds the limit. Also each node keeps track of the signature for the ACKR packet that it has forwarded to its neighbor nodes and has not yet been acknowledged yet. The node uses these signatures to discard any of the duplicate ACKR packets that might be travelling in the loop. Since the node A does not receive the ACK packets in response to the ACKR packets, it reduces the R value for node B. Therefore, any routing loops will not be permanent in nature. 3.5 USE OF BROADCAST/MULTICAST Packets forwarded via broadcast/multicast cannot utilize the MAC-level acknowledgements and they are susceptible to loss due to MAC- level collisions and PHY-level noise. The AntSens protocol avoids broadcast/multicast for data packets forwarding or routing monitoring/discovery. 27 The protocol does not make use of broadcasting for route discovery and maintenance as it hinders the scalability of the network. One-hop broadcast is used for route discovery by sending hello packets to the neighboring nodes. 3.6 MULTIPLICATIVE ACCUMULATION OF LINK RELIABILITIES Most of the traditional routing protocols such as AODV use an additive accumulation of the link costs to determine the end to end cost of the path. Updating the cost metric in the additive accumulation manner is not suitable for calculating metrics like success rate (or reliability) of a path. Calculation of the reliability of the route requires multiplication of the reliabilities of the links that constitute the route. AntSens protocol inherently supports multiplicative accumulation of link reliabilities. 28 CHAPTER 4 SIMULATION BASED PERFORMANCE EVALUATION 4.1 TOPOLOGY, EXPERIMENTAL SETUP AND ASSUMPTIONS In this section, we discuss the operation of the AntSens protocol and present the results of comprehensive simulation based evaluation of the protocol. The AntSens protocol was implemented on the NS2 [25] simulator. Each node in the network uses AntSens as the protocol for routing and it operates in beaconless IEEE 802.15.4 default mode, 2.4 GHz range as the MAC/PHY layer as its configuration in the simulations. The IEEE 802.15.4 module that was used in the NS2 is an improved version of the native IEEE 802.15.4 module and represents an accurate implementation of the standard specifications [26]. The topology of the network used for simulations consisted of 101 nodes distributed over a 200m X 200m region. The positions x and y of each node was determined individually in a uniform random manner between the range (0m, 200m) under the constraint that the distance between any two nodes should be greater than 10m and less than 30m. This was done to ensure that the network is connected and there are no isolated nodes in the network and the network is not partitioned i.e. a node has at least one neighbor node in its radio range. The radio range of each node is 31.45m. 29 The simulation consisted of 100 nodes generating and forwarding packets to a single destination using Poisson distribution at a rate of one packet per second (1pps) and one packet for every 5 sec(0.2 pps). Figure 4.1(a) represents the topology of the simulated network. Figure 4.1(b) shows the number of nodes having a given number of neighbors in their radio range. Figure 4.1(c) shows the number of nodes with a given minimum hop distance from the destination. (a) The Topology (b) Connectivity in the Topology 30 (c) Minimum Hop from the Destination Figure 4. 1 : Characteristics of 100 node topology used in the simulation The simulations performed had the following assumptions The PHY- layer was noise free where a packet transmission by a node is correctly received by all the nodes that are in its radio range and was not received by nodes outside the radio range. The IEEE 802.15.4 MAC layer of each node has completed its association with some other node in the network before the start of the simulation. The beaconless IEEE 802.15.4 MAC layer requires each and every packet it transmits to be acknowledged except for the multicast hello packets. A packet loss can be due to Channel access failures or Collision failures at the IEEE 802.15.4 MAC layer [12]. 31 Each packet transmitted by the node will be 133 bytes in size, the maximum size allowed by the IEEE 802.15.4 PHY layer. This packet includes all the headers including IEEE 802.15.4 MAC/PHY header and the AntSens header. Here we evaluate the performance of the AntSens protocol by analyzing its different aspects using the results obtained from the simulations. We use end-to-end loss rate, i.e. the fraction of packets sent by a node during a particular time period which is received by the destination node, as the performance metric. Since the AntSens protocol was designed for use in large scale low power low rate wireless networks where improving the reliability of receiving data from remote sensors is the most important requirement, end-to-end loss rate was used as the performance metric . However suitable modifications to the protocol can be done if necessary depending on the requirement of the application (e.g. timely delivery of the data is more crucial than to the reliable delivery of data). The 1 pps simulations that are discussed ran for a period of 6.5 hours and the 0.2 pps simulations ran for a period of 20 hours. The simulation graphs show nodes grouped according to their minimum hop distance from the destination. Figure 4.1(c) shows the number of nodes with a given minimum hop distance from the destination. The nodes in the simulations used 0.2 as the value of weight w for the “current” reliability in Eq. 2 to update the R value. A node sends ACKR packets to neighbor node n. If it does not receive ACK packets back in response to the previous ACKR packets sent to neighbor node n over last 10 minutes then it updates the R value for the neighbor node n using Eq. 3.The set of neighbors for forwarding the packets is updated every time the R value is updated. This set consists of neighbors whose R value is more than 90% of the maximum R value. 32 4.2 IMPACT OF THE FREQUENCY OF ACKR PACKETS ON CONVERGENCE TO STEADY STATE The nodes in the network request ACK for a fraction of packets they originate from the destination node for route monitoring and maintenance. These packets are called ACKR packets. The destination node sends acknowledgement (ACK) packet in response to ACKR packet. These ACK packets at each receiving node inform the node the end-to-end reliability of reaching the destination along the route that was taken by the corresponding ACKR packets. A higher percentage of the ACKR packets would facilitate faster convergence of the network to a steady state as the nodes receive more frequent reliability updates. However higher percentage of ACKR packets would also result in higher number of ACK packets generated in response and therefore more traffic load on the network. This causes higher MAC level loss rate leading to increase in nodes end-to-end loss rate. We need to meticulously select the percentage of packets to send as ACKR packets to strike a balance between the network’s need to converge quickly to a steady state and minimize the increase in loss rate due to ACK packets. 33 (a) 5% ACKR, Scalable Forwarding 1pps simulations (b) 1% ACKR, Scalable Forwarding 1pps simulations 34 (c) 5% ACKR Scalable Forwarding 0.2 pps simulations (d) 1% ACKR Scalable Forwarding 0.2pps simulations Figure 4. 2 : Impact of Frequency of ACKR packets on the convergence of endto- end loss rates to their steady state values 35 Figure 4.2 shows the impact of ACKR frequency on the speed of convergence to steady state in 1pps and 0.2pps simulations. Requiring 5% of the originated packets to be ACKR allow the network to converge to steady state in about 1 hour and 4 hours respectively in 1pps and 0.2pps simulations. Reducing the fraction of ACKR packets to 1% increases the convergence speed proportionately to 3 hours and 13 hours respectively for 1pps and 0.2pps simulations. Figure 4.3(a) and Figure 4.3(b) show how the end-to-end loss rates at steady state change with change in ACKR frequency in 1pps and 0.2pps simulations respectively. From the figures we can infer there is an increase in the end-to-end loss rate when the ACKR frequency was increased from 1% to 5%. The change of end-to-end loss rate is more evident in the case of 0.2pps simulations. This is because of low loss rate values prevalent in 0.2pps simulations. Figure 4.3(c) and Figure 4.3(d) show the MAC level loss rate calculated at each node over the same period of time as that of end-to-end loss rate as shown in the figures 4.3(a) and 4.3(b). It is clear from figures 4.3(c) and 4.3(d) that the MAC level loss rate is in fact more for 5% ACKR frequency than 1% ACKR frequency. Thus, a small increase in MAC-level loss rates in low traffic load network causes much larger increase in end-to-end loss rates than the same increase in MAC-level loss rates in high traffic load networks. 36 (a) 5% ACKR versus 1% ACKR : 1pps Simulations (b) 5% ACKR versus 1% ACKR : 0.2pps Simulations 37 (c) % ACKR versus 1% ACKR : 1pps Simulations (d) 5% ACKR versus 1% ACKR : 0.2pps Simulations Figure 4. 3 : Impact of the frequency of ACKR packets on the end-to-end loss rate for each node 38 Clearly, the selection of ACKR frequency depends on the prevalent traffic load on the network. Lightly loaded networks should use a lower ACKR frequency than heavily loaded ones. It is possible to dynamically adjust the ACKR frequency based on prevalent MAC-level loss rate at the node, which is an indicator of prevalent traffic load in the node’s neighborhood. The simulations described below uses 1% of the originated packets as ACKR packets. 4.3 AntSens VERSUS MINIMUM HOP ROUTING The steady state end-to-end loss rates under AntSens routing against the endto-end loss rates obtained under the minimum hop routing were compared. In minimum hop routing, the node forwards the packet along the minimum hop route(s) i.e. the route which is the shortest to the destination from the source node. If multiple neighbors lie along the route of minimum hop, then the node forwards the packets in round robin fashion to distribute the traffic load among the multiple neighbors. Zigbee is one such minimum cost routing protocol for wireless sensor networks, which defaults to minimum hop routing when all the links have equal cost. It was observed that the end-to-end loss rate of the minimum hop protocol is low compared to end-toend loss rate of the AntSens protocol. The minimum hop routing clearly performs better than the AntSens protocol in terms of end-to-end loss rate. This might be because the AntSens protocol does not converge to their best routes quick enough and further investigation is required in this direction to resolve this issue. 39 CHAPTER 5 CONCLUSION The AntSens is an ant-based routing protocol which satisfies the requirements specified by the ROLL group. It has the ability to dynamically configure itself to changing network conditions and topology. This protocol distributes the traffic throughout the network. The protocol is robust; it continuously discovers new routes, monitors and maintains existing routes. The simulation results show that a judicious selection of frequency of packets that request acknowledgement (ACKR), which acts as ants is necessary based on the prevailing traffic conditions. Networks with low traffic load should use a lower ACKR frequency than the networks with high traffic load. The AntSens protocol does not converge quickly to their best routes, so the end-to-end loss rates are relatively higher compared to the minimum hop scheme. Further investigation is required to improve the speed of convergence to minimize the loss rates. 40 REFERENCES [1] A. Wheeler, “Commercial applications of wireless sensor networks using zigbee,” IEEE Communications Magazine, vol. 45, no. 4, pp. 70–77, April 2007. [2] M. Dohler, T. Watteyne, T. Winter, and D. Barthel, “Routing Requirements for Urban Low Power and Lossy Networks,” IETF, Request For Comments 5548, May 2009 . [3] J. Moy, “OSPF Version 2,” IETF, Request For Comments 2328, Apr.1998. [4] T. Clausen and P. Jacquet, “Optimized Link State Routing Protocol (OLSR),” IETF, Request For Comments 3626, Oct. 2003. [5] R. Ogier, F. Templin, and M. Lewis, “Topology Dissemination based on ReversePath Forwarding (TBRPF),” IETF, Request For Comments 3684, Feb. 2004. [6] G. Malkin, “RIP Version 2,” IETF, Request For Comments 2453, Nov.1998. [7] C. Perkins, E. Belding-Royer, and S. Das, “Ad hoc On-Demand Distance Vector (AODV) Routing,” IETF, Request For Comments 3561, July 2003. 41 [8] I. Chakeres and C. Perkins, “Dynamic MANET On-demand (DYMO) Routing,” IETF, Internet-Draft draft-ietf-manet-dymo-17, March 2009, work in progress. [9] D. Johnson, Y. Hu, and D. Maltz, “The Dynamic Source Routing Protocol (DSR) for Mobile Adhoc Networks for IPv4,” IETF, Request For Comments 4728, Feb. 2007. [10] “Routing over low power and lossy networks.” [Online]. Available: http://www.ietf.org/html.charters/roll-charter.html [11] P. Levis, A. Tavakoli, and S. Dawson-Haggerty, “Overview of Existing Routing Protocols for Low Power and Lossy Networks,” Internet Engineering Task Force, Internet-Draft, draft-ietf-roll-protocols survey- 07, Apr. 2009, work in progress. [Online]. Available: http: //www.ietf.org/internet-drafts/draft-ietf-roll-protocolssurvey-07.txt [12] “Part 15.4: Wireless MAC and PHY layer specifications for low-rate wireless personal area networks,” IEEE Std 802.15.4-2006, 2006. [13] Zigbee Alliance, “Zigbee specification,” Dec. 2006. [Online]. Available: http://www.zigbee.org 42 [14] G. D. Caro and M. Dorigo, “AntNet: Distributed stigmergetic control for communications networks,” Journal of Artificial Intelligence Research, vol. 9, pp. 317–365, Dec. 1998. [15] R. Schoonderwoerd, O. Holland, J. Bruten, and L. Rothkrantz, “Antbased load balancing in telecommunications networks,” Adaptive Behavior, vol. 2, pp. 169–207, 1996. [16] G. D. Caro, F. Ducatelle, and L. M. Gambardella, “AntHocNet: an ant-based hybrid routing algorithm for mobile ad hoc networks,” in In Proceedings of Parallel Problem Solving from Nature (PPSN) VIII. Springer-Verlag, 2004, pp. 461–470. [17] J. Baras and H. Mehta, “A probabilistic emergent routing algorithm for mobile ad hoc networks,” in In Proceedings of WiOpt03: Modeling and Optimization in Mobile, Ad Hoc and Wireless Networks, 2003. [18] M. Gunes, U. Sorges, and I. Bouazizi, “ARA - the ant-colony based routing algorithm for MANETs,” in In Proceedings of ICPP 2002 Workshop on Ad Hoc Networks, 2002. [19] O. Hussein and T. Saadawi, “Ant routing algorithm for mobile adhoc networks (ARAMA),” in In Proceedings of IEEE International Performance, Computing and Communications Conference 2003, 2003, pp. 281–290. 43 [20] H. Ren and M. Q.-H. Meng, “Biologically inspired approaches for wireless sensor networks,” in In Proceedings of IEEE International Conference on Mechatronics and Automation, June 2006. [21] S. Bashyal and G. Venayagamoorthy, “Real-time collaborative routing algorithm for wireless sensor network longevity,” in In Proceedings of IEEE International Symposium on Inteliigent Control Part of IEEE Multi-conference on Systems and Control 2008, 2008. [22] S. Peng, S. Yang, S. Gregori, and F. Tian, “An adaptive QoS and energy aware routing algorithm for wireless sensor networks,” in In Proceedings of IEEE International Conference on Information and Automation 2008, June 2008. [23] R. Aghaei, M. Rahman, W. Gueaieb, and A. Saddik, “Ant colonybased reinforcement learning algorithm for routing in wireless sensor networks,” in In Proceedings of Instrumentation and Measurement Technology Conference - IMTC 2007, May 2007. [24] M. Goyal, D. Rohm, S. Hosseini, K. Trivedi, Y. Bashir, and A. Divjak, “A Stochastic Model for Beaconless IEEE 802.15.4 MAC Operation,” University of Wisconsin Milwaukee,” Technical Report, Dec. 2008. 44 [25] S. McCanne and S. Floyd, “ns network simulator.” [Online]. Available: http://www.isi.edu/nsnam/ns/ [26] M. Goyal, “Zigbee/IEEE 802.15.4 module for NS2 simulator,” 2008. [Online]. Available: http://www.cs.uwm.edu/_mukul/wpan.html [27] Daniel Camara, and Antonia A.F. Loureiro, ”Ants A novel routing algorithmfor ad hoc networks”, Proceedings of the 3300 Hawaii International Conference on System Sciences,2000. [28] D. Camara and A.AF. Loureiro, “A novel routing algorithm for hoc networks”, Baltzer Journal of Telecommunications Systems 18, (1-3), 2001, pp.85-100. [29] S. Rajagopalan and C. Shen, “ANSI: a unicast routing protocol for mobile ad hoc networks using swarm intelligence”,In Proceedings of the International Conference on Artificial Intelligence,2005, pp.24-27. [30] Shivanajay Marwaha, Chen Kong Tham, and Dipti Srinavasan, “Mobile Agents based Routing Protocol for Mobile Ad Hoc Networks”, In Proceedings of IEEE Global Telecommunications Conference (GLOBECOM'02), Taipei, Taiwan. 2002. 45 [31] Shahab Kamali and Jaroslav Opatrny, “A Position Based Ant Colony Routing Algorithm for Mobile Ad-hoc Networks”, Journal Of Networks, Vol. 3, No.4, Academy Publisher, Apr 2008. [32] Lianggui Liu and Guangzeng Feng, “A Novel Ant Colony Based QoS Aware Routing Algorithm for MANETs”, ICNC 2005, LNCS 3612, SpringerVerlag Berlin Heidelberg, 2005, pp. 457 – 466. [33] Laura Rosati, Matteo Berioloi and Gianluca Reali, “Distributed Ant Routing -On ant routing algorithms in ad hoc networks with critical connectivity”, Ad Hoc Network Journal, Volume 6, Issue 6, August 2008. [34] Xiangquan Zheng,Wei Guo and Renting Liu, “An ant-based distributed routing algorithm for ad-hoc networks (ADRA)” ,In Proceedings of International Conference on Communications, Circuits and Systems, ICCCAS 2004, Volume 1, Issue 1 27-29 June 2004, pp: 412 – 417. [35] Eseosa Osagie, Parimala Thulasiraman and Ruppa K. Thulasiram, “PACONET: imProved Ant Colony Optimization routing algorithm for mobile ad hoc NETworks”, In Proceedings of 22nd International Conference on Advanced Information Networking and Applications, 2008, pp.204-211 46 [36] P. Thubert, T. Watteyne,Z. Shelby, D. Barthel “LLN Routing Fundamentals”, Internet Engineering Task Force, Internet Draft, draft-thubert-roll-fundamentals-01, Apr 2009, work in progress. [Online]. Available : http://tools.ietf.org/id/draft-thubertroll-fundamentals-01.txt [37] R.Kelsey, “LIP: Label Information Protocol”, Internet Engineering Task Force, Internet Draft, draft-kelsey-roll-lip-00, Apr 2009, work in progress. [Online]. Available : http://tools.ietf.org/id/draft-kelsey-roll-lip-00.txt