an approach combining routing and resource sharing in wireless ad ...

5 downloads 3426 Views 200KB Size Report
Many current applications for wireless networks are based on a static infrastructure ... certain strengths and drawbacks either in matter of routing or their resource ...
AN APPROACH COMBINING ROUTING AND RESOURCE SHARING IN WIRELESS AD HOC NETWORKS USING SWARMINTELLIGENCE Peter Janacik Department of Computer Science, University of Paderborn Fuerstenallee 11 33102 Paderborn, Germany [email protected]

Odej Kao Department of Computer Science, University of Paderborn Fuerstenallee 11 33102 Paderborn, Germany [email protected]

Ulf Rerrer Department of Computer Science, University of Paderborn Fuerstenallee 11 33102 Paderborn, Germany [email protected]

Abstract

Many current applications for wireless networks are based on a static infrastructure and only operate within the range of access points to a wired network. The inflexibility of these hierarchical solutions yields problems like bottlenecks, limited scalability and congestions. In this paper we present the routing technique Stigmergy based on swarmintelligence to combine routing with resource sharing aspects in wireless ad hoc networks. We present a simulation platform for Stigmergy which provides resource sharing where n resource requestors relate to m resource providers, with n, m ≥ 1. It routes messages between one of the n resource requesting nodes and one of the m resource providing nodes.

Keywords: routing, ad hoc networks, swarm-intelligence, resource sharing

2

1.

Introduction

Looking at the developments of recent years, communication in wireless mobile ad hoc networks is one of the major computer science research fields. Small, powerful and low-price wireless devices produced countless applications using this technology in many areas, starting from consumer markets – like multimedia related products – but also applications in business collaboration and conferencing, emergency services, ubiquitous computing, military applications, sensor dust, etc. However, many of these current applications are still based on a static infrastructure and only operate within the range of access points. The inflexibility of such – mostly hierarchical – solutions yields problems like bottlenecks, limited scalability and congestions. In particular the highly dynamic ad-hoc organisation and thus peer collaboration is not sufficiently considered. Thereby, routing and related aspects represent major building blocks for an efficient organisation, as these should impose as little network load as possible, avoid congestions and provide reliable solutions. The still limited bandwidth of wireless communication and the fast changing topology add new requirements to routing protocols. The significance of the routing quality grows in case of resource sharing in wireless ad-hoc networks even more. There are many examples for resource sharing, the most simple is related to file transport from one peer to another. The file is separated in packets, which all have to be routed in a most efficient and safe way to their destination. In case of applications such as video/audio streaming etc. the data has to be delivered to multiple clients simultaneously. On the other hand, copies of the required video/audio may be distributed over multiple sources to reduce the network traffic on selected routes and to increase the throughput of the entire system. A suitable scenario e.g. is found in distributed multimedia applications. Nowadays, pictures, audios and videos are distributed on multiple devices in a certain area and can be viewed by stationary computers, laptops, handheld devices and highly portable players. In the near future this distribution is even expected to extend to new areas. In the light of this scenario, access to stored data on one of the above mentioned devices is desired without the necessity to copy data on and from a centralised server or to synchronise devices. Since there can be more than one replica of a multimedia file, there is a 1 : n, n ≥ 1, relationship between the device requesting the data and the devices storing it. Apart from this, routing has to take the wireless characteristics into account. Unfortunately, most of the existing routing algorithms still do not consider these 1 : n relationships. Therefore, we present the routing tech-

Stigmergy - Janacik, Kao, Rerrer

3

nique Stigmergy, which supports resource sharing with n requestors and m providers (n, m ≥ 1). Stigmergy uses swarm intelligence behaviour of real ants in order to accomplish unpredictable transfer rates, node failures and movement typically in wireless ad hoc networks. The developed technique provides features for congestion avoidance, low stretch, fault tolerance and load balancing between multiple routes.

2.

Related Work

The routing and resource sharing problem has been studied extensively, but separately. This Section gives a short overview of existing reactive protocols used in wireless ad hoc networks [11] which are capable of routing and resource sharing as well. Proactive protocols perform poorly in wireless, mobile networks [1]. All mentioned protocols have certain strengths and drawbacks either in matter of routing or their resource sharing adaptivity which is emphasised here. The Ad Hoc On-Demand Distance-Vector Routing (AODV)[13] is a two-phase, reactive, and hop-by-hop protocol, but provides only single path routing which is not suitable for an efficient resource sharing. The Split Multipath Routing (SMR)[8] works in a similar manner, but it builds maximally disjoint shortest delay paths. However, it does not rate its routes, discards them after the first error, and resorts to source routing. On-demand Multipath Distance Vector Routing (AOMDV)[10] tries to do the same, but also does not rate routes, thus not taking into account throughput or reliability. It discards routes after the first failure. The Disjoint Path Selection Protocol (DPSP)[12] is different and builds upon an underlying routing protocol to find maximally reliable paths. It only “sees” the situation at a certain time, providing messages with a precalculated route and thereby resorts to source routing. A completely different approach is made by Ant-Colony Based Routing Algorithm (ARA)[6]. It is a reactive, hop-by-hop routing protocol based on the Ant Colony Optimization (ACO) Meta-Heuristic[2] from the family of swarm intelligence algorithms. It builds multiple routes, but has no clear approach to initial pheromone estimates and discards routes after the first failure, leading to frequent rediscoveries and limited load balancing. The algorithm only does 1 : 1 routing. On the side of resource sharing there is Seven Degrees of Separation (7DS)[14] which is an architecture for sharing information in mobile environments, but it depends too strongly on locality. Passive Distributed Indexing (PDI)[9] is a general purpose distributed search service for mobile file sharing applications. Its disadvantage lies in flooding and a high locality assumption of queries.

4 Finally there is the routing protocol Optimized Routing Independent Overlay Network (ORION)[7] which provides selective 1 : n, n > 1, routing resp. resource sharing, but does not rate routes. As ARA, ORION discards links after the first failure, but at the same time does not present an approach for route selection. Summarizing, none of the systems takes into account issues like load balancing or stretch which is necessary for efficient routing combined with resource sharing.

3.

Stigmergy

Stigmergy focuses on providing resource sharing in wireless ad hoc networks using different metrics like number of hops, link reliability, link redundancy, etc. and balancing load. At the same time resource sharing means a selective n : m routing between one of the n origins towards one of the m destinations. The developed algorithm is motivated by the swarm intelligence behaviour of ants communicating by changes of their environment[5]. If a food source is found, ants deposit a chemical substance, called pheromone that can be smelled by other ants. Due to its physical properties, the pheromone evaporates exponentially. The behaviour exhibited by ants is optimal in terms of two problems also encountered in wireless ad hoc networks: Finding shortest paths and finding a “good” distribution of traffic over the network by means of suiting the characteristics of the network topology. Ants achieve these results without total knowledge of the network.

3.1

Construction

The members of the Stigmergy adaptive and on-demand (reactive) network only exchange routing information when needed. Each network node or resource is assigned one or more identifiers (IDs) and may also reflect group membership. A destination node listens for messages addressed to one of its own identifiers or to the identifiers of one of the resources it provides. The structures of a node within the network can be classified as a collection of structures consisting of a group responsible for routing, a group responsible for resource management and a group looking after the node’s own requests. The routing table stores entries of the format routing destination ID Ddest

next hop ID n

pheromone ψDdest ,n

Each node updates all entries altered at time t for the last time, every τ time steps by setting all routing table entries to an arbitrary destination

5

Stigmergy - Janacik, Kao, Rerrer

Ddest , the next hop n and the pheromone decay coefficient ψτ ∈ [0, 1). ψDdest ,n (t + τ ) = ψDdest ,n (t) · ψτ Up to this point the structures are as in ARA[6] and according to ACO [2] modeling the “natural” pheromone evaporation process. Stigmergy also uses broadcast communication (among others), so each node has to maintain a recent messages table, saving all ID’s of messages received according to a least-recently-used strategy. In order to exploit locality, each node may maintain a resource cache for saving resources, that were routed over this node towards a requestor.

3.2

Routing

Stigmergy is a reactive system which constructs routes in two phases: route discovery and transport including route maintenance which can be divided into sub phases – a forward and a backward phase. The forward phase establishes or strengthens the links towards the requestor and the backward phase does the same with the links towards the resource provider.A node Dreq wishing to establish a route towards a resource Dresource , creates a FDAnt (forward discovery ant) shown in Table 1. Field

Value

Field

Value

Last hop Hops Type Requestor Request History Resource

Dreq 0 FDAnt Dreq Unique req. ID Cleared Dresource

Last hop Hops Type Requestor Request History Resource

Dprovider 0 BDAnt Dreq Unique FDAnt req. ID Cleared Dresource

Tab. 1:

Fields of a FDAnt message

Tab. 2:

Fields of a BDAnt message

The node chooses the ID saved in the field Requestor according to what destination the resource shall be routed to and broadcasts the message. Before sending any messages, the node updates the last hop, hops and the history field appropriately. When a node receives a FDAnt, it proceeds as follows: 1 If the message is contained in the recent messages table, if it already contains the current node in its history, or exceeds the maximum lifespan for a message, then ignore it. If only the first condition applies, ignore it, but register the message’s last hop at the routing table. To compare a pair of messages, Stigmergy uses a hash of the type of the message, requestor, request and resource.

6 2 (a) Else, register message at all relevant tables. (b) If the node contains the resource, answer with a BDAnt. (c) Propagate the message using broadcast or unicast. In general routing chooses unicast only if relevant pheromone values are exceptionally high, else broadcast. Backward route discovery uses the links set up by the forward discovery in order to route back to the node that created the request and to set up forward links. A node that can provide a resource, i. e. Dprovider , creates a BDAnt (backward discovery ant) message based on a copy of the incoming FDAnt towards Dreq which contents are shown in Table 2. Dprovider sends the message via the FDAnt’s last hop information towards Dreq . Each node receiving a BDAnt forwards it by unicast communication towards the requestor updating the fields last hop, hops and history. To request resources, the request originating node creates a FTAnt (forward transport ant) message similar to the FDAnt mentioned above. Then the requesting node sends the message towards the resource. All nodes receiving it update its last hop, hop count and history fields. Then they forward it towards Dresource . In case a node provides the resource specified by the FTAnt or it stores a cached copy, it creates a BTAnt similar to the BDAnt. The node then forwards the new message towards the requestor. Each node receiving the BTAnt updates the message’s fields and forwards it towards Dreq by unicast. The routing stops at the requestor. Nodes recognise and handle double messages in the same way as during forward transport.

3.3

Routing table

Stigmergy uses the routing table for unicasts. The main issues are the pheromone adjustment of the routing table triggered by incoming messages and the message propagation by routing messages towards the destination. Stigmergy modifies its routing table in a similar way as ACO[2] for routing problems. However, in Stigmergy a node i only takes into account messages m for pheromone adjustment coming from origin Dorig heading towards destination Ddest that have not yet visited a node g that is i’s next hop towards Ddest with ψDdest ,g ≥ ψinit(hc(m)) · ψrenew . A message m, satisfying the above condition, from origin Dorig comes from node h, arriving at node i. Before routing it, i alters the corresponding routing table entries ½ ψinit(hc(m)) if ψDorig ,h < ψinit(hc(m)) · ψrenew ψDorig ,h = ψDorig ,h + ψ∆ if ψDorig ,h ≥ ψinit(hc(m)) · ψrenew

7

Stigmergy - Janacik, Kao, Rerrer

using a constant amount of pheromone ψ∆ , a typical value of ψrenew = 0.1, ψrenew ∈ [0, 1], hc(m) as number of hops of message m and ψinit(y) =

1 · max hops · ψinit y

per hop value

the initial value of y, with max hops and ψinit per hop value ≥ 1. Unlike ARA, Stigmergy does not modify the entry pointing toward the next hop of m, because there is no information on how well the message will be routed using the link. However, there is the information that m successfully arrived from h and this is why h as next hop for messages heading into the opposite direction should be “strengthened”. If sending a message by unicast fails, Stigmergy – unlike ARA – does not discard the link. Due to node mobility, congestions and the overall characteristics of the wireless medium link failures are often temporary. Thus, when a node detects a failed unicast towards destination Ddest via next hop j, it sets ψDdest ,j = ψDdest ,j · ψpush with ψpush ∈ [0, 1). This adjustment is based on the “pushing” phenomenon observed by Dussutour[3]. During forward discovery, if there are active routes “known” to Dreq and to Dresource , messages are propagated by unicast. A message is broadcasted only if the sums of pheromone values of all next hops towards Dreq and Dresource both are smaller than ψinit(1) + ψinit(2) indicating that the current node does not actively participate in resource transport. When pheromone values decrease or increase on the message’s way, the system reacts: The FDAnt message propagated by unicast arrives at a group of new nodes with no pheromone switching to broadcast. After crossing the area, it switches back to unicast. At nodes with enough pheromone according to the above definition and always during backward discovery, Stigmergy propagates discovery messages by unicast over the b next hops towards a destination, that have the b highest pheromone values of all routing table entries towards the destination, b ≥ 1 but typically 2, and have not yet been visited by the message. For backward route discovery, the system always uses unicast, since good routes towards the origin are already established by forward discovery. Transport messages – unlike discovery messages – propagate using a probabilistic choice for the next hop decision. During the transport phase, the routes already have been built, they only need to be maintained. Let NDdest be the set of all next hops towards Ddest in a node’s routing table, that have not yet been visited by the message. A message heading towards destination Ddest , coming from node h, arriving at node

8 i is sent to node j, j ∈ NDdest , with the probability pDdest ,j = P

ψDdest ,j . ψDdest ,k k ∈ ND dest

In case of link failure, with probability psend f ailed f orward ∈ [0, 1], the node makes a probabilistic choice using one of the other hops towards Ddest that have not failed yet and have not yet been visited by the message as unicast target. With probability 1 − psend f ailed f orward , or if there is no more appropriate forward hop, the node i sends the message back (indicated by the direction field) to its last hop h, which treats the message as a failed unicast from node h to node i.

3.4

Properties

Stigmergy combines the results of Goss’ and Dussutour’s experiments [4, 3] in order to suit the characteristics of wireless ad hoc networks and provides several important properties: Reactive routing with multiple end points High amount of local work Rated multipath routing Load balancing, congestion avoidance and fault tolerance Low stretch Rapid route establishment and adoption Anonymity Different levels of participation, energy saving

4.

Simulation and Results

The algorithms in Stigmergy were implemented and evaluated in a simulation application considering all necessary characteristics of a wireless communication including packet loss and transmission times. The simulation proofed the correctness of the implemented algorithms and showed further results. Although simple speed measurements are obsolete for modern routing techniques because every mentioned algorithm in Section 1.2 finds the shortest path between source and destination in a given network there are major differences in special situations. A constructed scenario describing a typical situation were two nodes in a given wireless ad hoc network temporarily fail is shown in Figure 1. The Figure

9

Stigmergy - Janacik, Kao, Rerrer p_failure_upper_route=1-(0.7*0.8*0.9)=0.50

p_failure_both_links=(1-0.75)*(1-0.8)=0.05

0.9

0.8

0.75 +

0.7

0.8

0.6 0.6 0.8

p_failure_lower_route=1-(0.6*0.6*0.8)=0.71 Source / Requestor Destination / Match Point of failure

Same as above, but functional after the marked failures

(a) ORION

Figure 1.

Source / Requestor Destination / Match Point of failure

Same as above, but still functional after the marked failures

(b) Stigmergy

Example of ORION (a) and Stigmergy (b) discovery phases

shows the behaviour of ORION in comparison to Stigmergy. Both algorithms created the same forward links set up in their discovery phases. The specific link setup varies from discovery to discovery, since there are many hardly predictable factors like packet loss or latency affecting the result. ORION handles duplicate forward discovery messages in a similar way as AODV, thus creating a less dense and redundant network. If now the two marked nodes fail in this given scenario, ORION has to initiate another costly discovery flooding the network with packets. Stigmergy can still resort to links marked by the dotted lines due to the redundancy of its network. If up to three intermediate nodes may fail in both scenarios at the same time, there are 30 possible cases that force ORION to initiate a rediscovery and only one such case for Stigmergy. The example in Figure 1 a) shows the likeliness of a route failure of one of the two paths. Figure 1 b), in contrast, depicts that the probability of delivery can drastically be increased using alternative routes in a redundant network. Node 4 first tries to deliver the message using both links succeedingly and uses backtracking if both fail. If, in Figure 1 a) on the other hand, the probability of succeeding failure of both routes is 0.50 · 0.71 = 0.36 then this means that there are ∼ 360 discoveries concerning all nodes for each 1000 packets that have to be transmitted. Stigmergy copes well with this problem only due to its high link redundancy. Nevertheless, this high amount of redundancy is only manageable, if there is a good route selection. Without it a system would select good and less favourable routes with the same probability imposing unnecessary load on the network. Orion, for example, builds a less redundant network and always chooses the node, that was discovered first, as next hop[7]. Stigmergy in contrast uses positive and negative feedback and good initial pheromone estimates which means using the best routes with increasing and worse routes with decreasing probability.

10

5.

Conclusions

Hardly predictable transfer rates and node mobility in wireless ad hoc networks require specific routing algorithms. We developed the routing algorithm Stigmergy, a reactive system for sharing resources in wireless ad hoc networks, based on swarm intelligence. In opposite to existing approaches, Stigmergy provides a suitable estimate for initial pheromone values and introduces a n : m , n, m ≥ 1 communication. It takes the link quality and reliability without knowing actual parameters into account. The system builds lowest stretch routes according to the individual network topology and considers fault tolerance and load balancing aspects by keeping old routes in memory. An implementation of a file sharing system shows that Stigmergy performs well in practice which will be proved in future work with the ns-2 simulator.

References [1]

Broch, J. et al., A Performance Comparison of Multi-Hop Wireless Ad Hoc Network Routing Protocols, Proceedings of MOBICOM’98, 85-97, 1998

[2]

Dorigo, M. and Di Caro, G., The Ant Colony Optimization Meta-Heuristic, New Ideas in Optimization, McGraw-Hill, 11-32, 1999

[3]

Dussutour, A., Fourcassi´e, V., Helbing, D. and Deneubourg, J.-L., Optimal traffic organization in ants under crowded conditions, Nature, 428, 70-73, 2004

[4]

Goss, S., Aron, S., Deneubourg, J.-L. and Pasteels, J. M., Self-organized shortcuts in the Argentine ant, Naturwissenschaften, 76, 579-581, 1989

[5]

Grass´e, P. P., La th´eorie de la stigmergie: essai d’interpr´etation du comportement des termites constructeurs, Insectes Sociaux, 6, 41-81, 1959

[6]

G¨ unes, M., Sorges, U. and Bouazizi, I., ARA – The Ant-Colony Based Routing Algorithm for MANETs, Proceedings of the Workshop IWAHN’02, 79-85, 2002

[7]

Klemm, A., Lindemann et al., A Special-purpose P2P File Sharing System for Mobile Ad Hoc Networks, Proceedings of IEEE VTC2003-Fall, 2003

[8]

Lee, S.-J. and Gerla, M., Split Multipath Routing with Maximally Disjoint Paths in Ad hoc Networks, Proceedings of ICC’01, 2001

[9]

Lindemann, C. and Waldhorst, O. P., A Distributed Search Service for P2P File Sharing in Mobile Applications, Proceedings of IEEE P2P’02, 73-81, 2002

[10] Marina, M. K. and Das, S. R., On-demand Multipath Distance Vector Routing in Ad Hoc Networks, Proceedings of the ICNP’01, 2001 [11] Milanovic, N., Malek, M. et al., Routing and Security in Mobile Ad Hoc Networks, IEEE Computer Magazine, 61-65, 2004 [12] Papadimitratos, P., Haas, Z. J. and Sirer, E. G., Path Set Selection in Mobile Ad Hoc Networks, Proceedings of ACM Mobihoc’02, 2002 [13] Perkins, C. E. and Royer, E. M., Ad Hoc On-Demand Distance-Vector Routing, Proceedings of IEEE WMCSA’99, 90-100, 1999 [14] Papadopouli, M. and Schulzrinne, H., Wireless Coverage and Cooperation on Data Dissemination among Mobile Devices, Proceedings of Mobihoc’01, 2001

Suggest Documents