imulaion of quorum sysems in ad-hoc neworks Gareh Huw Owen Mo Adda chool of Compuing, Universiy of Porsmouh, Buckingham Building, Lion Terrace, Porsmouh, PO1 3HE, UK. Tel: +442392 846782, Fax: +442392 846364, E-mail: {gareh.owen, mo.adda}@por.ac.uk Absrac There are many essenial applicaions for quorum sysems in ad-hoc neworks, such as ha of locaion servers in large-scale neworks. Exising research proposes many approaches o he problems, many of which are incomplee, cumbersome, or incur significan cos. We describe and analyse a self-organising quorum sysem ha creaes an emergen inelligence o minimize overhead and maximize survivabiliy. We hen examine he quorum s performance as a locaion server and sugges improvemens o he query mechanism and o he rouing algorihm using he informaion. Keywords: Ad-hoc neworks, quorum sysems, self-organising sysems. Inroducion Ad-hoc neworks are a means of neworking compuing devices ogeher wihou requiring any seup or exising infrasrucure. We define an ad-hoc nework as a graph of a se of nodes, V, and a se of communicaion pahs, E, ha vary hrough ime as nodes move and fail. G = V, E ) (1) ( Muli-hop ad-hoc neworks allow nodes o communicae wih each oher wihou being wihin he ransmission range by relaying heir messages hrough inermediae nodes. Rouing in small neworks is usually achieved hrough an opimal broadcas mechanism; however, when he nework increases in size over 2 nodes, his form of discovery becomes exremely expensive. Mainly, locaion-based rouing in large-scale ad-hoc neworks can be achieved hrough using locaion informaion from a GP device. Nodes can address each oher using heir locaions, by rouing packes o neighbours ha are closer han hey are. However, before a node can roue packes in his fashion, i will need o know an accurae locaion for he desinaion. Many rouing proocols propose a funcion ha maps a node s ID o is locaion. While his is ideal for neworks ha are saic, i is no he case when nodes are mobile and neworks span many kilomeres. Locaion servers solve his problem by mainaining somehow up-o-dae locaions of nodes ha sends frequen updaes. everal ypes of locaion server have been proposed o provide his informaion. Li e al [1] divided he area ino grid-squares of differen orders. aring wih he gridsquare ha he node currenly occupies, an order-one square. An order-wo square is he grid-square conaining four of he order-one squares. Li proposed ha a number of nodes in each order-n square should hos he locaion informaion. Therefore, informaion abou a node s locaion becomes less densely available he furher you are from is locaion. Giordano proposed [2] he mos promising approach o locaion servers by allocaing nodes wihin a specific region o he role of locaion server. However, hey did no address issues such as node mobiliy, faul olerance and query success. Finally, ojmenovic proposed [3] ha all nodes o he norh and souh in a fixed-widh column assume he role of a locaion server. Locaion searches are hen performed by rouing packes in a horizonal fashion ha will evenually inersec he verical column. This approach is no feasible for a ad-hoc nework of large scale. For a more complee review of approaches o locaion servers, he reader is referred o Camp e al [4]. The approach shown in his paper expands Giordano s work on home-regions and develops a echnique o provide a low-cos quorum ha handles node mobiliy and failure. Also addressed are means of querying he quorum and ways of miigaing he problem of incomplee quorum updaes along wih a mehod o improve rouing success in he face of ou-daed informaion. Quorum-sysems in ad-hoc neworks In his paper, we propose an approach ha is similar o ha of he home region bu ha addresses many of he problems associaed wih i. Insead of allocaing a circular region of nodes as he hoss of a locaion server, we say ha nodes direcly adjacen o a paricular geographic poin should be responsible. As a resul, only a small number of nodes are imposed upon raher han a large number in siuaions of high node densiy, or none in low-densiy scenarios. A node ses up a locaion server by sending an iniiaion packe oward is home locaion. This packe will be received by he node closes o he poin, which will hen
assume he role of maser of he server. As he hos node moves, he role will be ransferred o he node ha is closes o he home locaion. Migraion is he erm referring o he process of quorum componens moving from node-o-node o remain close o a geographic poin. Presenly, wih only a maser, failure of he node hosing i could resul in failure of he server so i is imporan ha he daum is replicaed. Immediae neighbours of he maser are sen a duplicaion packe from he maser and assume he role of a slave; however, he server as a whole needs o make sure ha enough replicaed copies are kep in he even of node failures so ha he daa is no los. Formally, we define our quorum or locaion server as a se Q where M and are he ses of nodes ha hos maser and slave componens respecively: Q V = M (2) uch mainenance of wha is essenially a quorum [5] is very cosly process in wired neworks le alone wireless and as a resul, a novel approach is needed. We draw our inspiraion from ans in a colony who find heir way o food by laying pheromones for each oher o follow [6]. These pheromones serve o modify he environmen so ha oher ans may deec hese modificaions avoiding he need for direced communicaion. Drawing upon his o develop a locaion server, we sugges ha insead of componens of a quorum communicaing wih each oher hey modify heir environmen As every node has o beacon is locaion o is neighbours for rouing o occur, we add o his beacon packe (he environmen) a lis of locaion server componens held a ha paricular node. A node s iinerary, I v,, is simply a lis of idenifiers for quorums which i hoss a componen of. Therefore, a beacon frame can be described as he n-uple conaining he node s locaion (v x, v y ) and he iinerary: B = v, v, I } (3) v, { x y v, Each node mainains a se of all received beacons so ha each componen of he quorum is able o examine a lis of which nodes hold which componens. We allocae he duplicaion ask solely o he maser o avoid he siuaion of excess replicaion by ill-informed slaves who are only able o see he beacons of he ouskir componens. As he maser is always he closes componen (cener), i is bes placed o monior he conens of is neighbours. When he number of neighbours hosing componens falls below a hreshold, he maser will begin a replicaion phase o raise his number. We now have a se of quorum componens who do no direcly communicae wih each oher, bu who ac in a selforganising manner forming an emergen inelligence (like ans). Each aemps o ge as close as possible o he home locaion by moving from node o node (excep where a desinaion node is already in possession of one). Each componen assumes he role of maser and responsibiliy for duplicaing if i finds iself, hrough observing is environmen, o be on he closes node o he home locaion. If i realises i is no he closes hen i will auomaically remove is responsibiliy and assume he role of a slave. We illusrae he maser and slaves, along wih migraion in Figure 1, where he maser is held on he closes node o he poin and has duplicaed is daa o several slaves on adjacen nodes. M Figure 1: Illusraion of quorum and componen migraion In addiion o he duplicaion ask, he componens perform one more asked based upon informaion gahered from he beacons. The componens self prune he quorum o sop a large number of replicaed componens consuming resources. They do his by each monioring he number of replicas, and if hey rise above a hreshold hen ha componen will die. This process is performed on each node, for each componen held, a regular inervals as described by he ManageComponen funcion below. MANAGECOMPONENT(c) 1 n = closerneighbour(homelocaion) 2 if exiss(n) and hascomponen(n) 3 hen c role = slave 4 Else c role = maser 5 if exiss(n) and!hascomponen(n) 6 hen c.migrae(n) 7 else if c role =maser and hascomponen(all) < hreshold 8 hen replicae(c) 9 else if c role =slave and hascomponen(all) > hreshold hen delee(c) The replicae(c) funcion has several definiions represening several variaions of he algorihm. The unicas varian sends a replica o he firs node in is neighbour daabase wihou a componen. Replicaing one iem a a ime, like he unicas approach, is no expeced o survive well due o he ime aken o recover from a significan number of losses.. REPLICATE(C) - UNICAT 1 for all n in neighbours 2 if!hascomponen(n)
3 hen unicas(c) 4 exi forloop 5 end for The broadcas varian sends replicas o all neighbours in he viciniy and is expeced o survive beer due o i being able o recover from a number of los componens wih jus one packe. REPLICATE(C) - BROADCAT 1 broadcas(c) The broadcas algorihm should perform beer in he face of high failure raes: however, if jus one componen is los from he quorum hen a broadcas could increase he number of componens significanly over he hreshold which would hen require pruning, causing an expand and a collapse scenario o occur. Therefore, we also inroduce a hybrid approach ha uses broadcas when he number of componens is low and unicas when i is nearer he hreshold. REPLICATE(C) - HYBRID 1 if hascomponen(all) > 5% of hreshold 2 hen unicas(c) 3 else broadcas(c) We can define he seup cos, C eup, as he number of hops o he home locaion, h, plus one for a broadcas duplicaion packe (eq. 4) or hreshold packes for he unicas (eq. 5). The mainenance cos of he quorum, C Mainenance, is defined (eq. 6) as he number of migraions of componens due o node mobiliy, m, plus he number of replicaion packes, r, o mainain he hreshold. C eup = h + 1 (4) C eup = h + hreshold (5) CMa enance = m + r in (6) Keeping wih he simpliciy of he curren algorihm, we follow he same philosophy here o develop a quorum query mechanism. When a packe s desinaion locaion is no known, i is roued owards he home locaion and upon encounering a node conaining a quorum componen for he desinaion, i updaes he packe wih he node locaion and roues i owards. We describe his in he RouePacke funcion below. ROUTEPACKET(p) 1 c = componen(p des ) 2 if exiss(c) 3 Then p locaion = c locaion 4 if exiss(p locaion ) 5 Then roue o closesneighbour(p locaion ) 6 if!exiss(p locaion ) 7 hen roue o closesneighbour(homelocaion(p des )) The mechanism o updae he quorum is equally simple and based upon a zero knowledge approach o minimise overhead. When receiving a new updae packe, a node simply updaes iself if i holds a componen and hen rebroadcass i. This way, each elemen of a quorum should receive a copy and he number of overhead packes will be equal o he number of componens presen, q componen, as shown in equaion 7. C = h + (7) updae q componens Of course, his approach does no guaranee a complee quorum updae and so we examine his in our resuls. RECVUPDATEPACKET(p) 1 c = Componen(p nodeid ) 2 if!exiss(c) or seenbefore(p) hen ignore 3 if p revision c revision hen ignore 4 c daa = p daa 5 broadcas(p) Quorum sysems are radiionally analysed based upon heir performance in erms of load [7], faul-olerance [8] and failure probabiliy [9, ]. Therefore, we measure he survivabiliy or failure probabiliy of he quorum over 3- minues. The overhead or load in packes per minue of any one quorum, and he memory overhead per node in our scenario is measured. Finally, he faul-olerance of he quorum by querying i and measuring he number of ou-ofdae resuls reurned. In addiion o analysing he performance as a quorum, we need o look a he abiliy of his approach o ac as a locaion server for large-scale ad-hoc neworks. The merics we will measure are updae cos, query success and rouing success. As i is possible ha he locaion informaion received could be ou-of-dae, we analyse he effec his has on a geodesic rouing algorihm. We also propose ha if a packe reaches he las known locaion of a node o find i is no here, hen he algorihm swiches o using DR [11] o find he desinaion wih a search radius of hree hops We herefore examine he effec ou-of-dae daa has on rouing and how his simple DR-aided modificaion improves. Mehodology imulaion is widely acceped as a means for analysing adhoc neworking proocols due o he mahemaical complexiy of he scenario. Here we use he Glomosim (v2.3) simulaor [12] ha provides models of all he layers experienced in a real experimen. We configure simulaor wih he parameers shown in Figure 2 o represen ha of a kilomere-squared secion of a large-scale ad-hoc nework.
Figure 2: imulaion parameers Parameer Value Parameer Value Terrain Propagaion Model Tx/Rx Range Mobiliy Model imulaionime x Two-ray 14.5m Random Waypoin v min =.1m/s v max = 3.m/s 3 minues Number of nodes Number of quorums hreshold (number of slaves) Beacon rae Manage Componen call rae 2 5 5 Every 5 seconds + jier Every 6 seconds + jier The overhead (Figure 4) is less han packes per minue despie node mobiliy and node failures. Ineresingly, he hybrid version of he algorihm incurs less overhead and we explain his as due o he reducion of several duplicaion packes ino one when near he hreshold, and he avoidance of he compacion and expansion problem explained earlier. Figure 5 shows he overhead in erms of memory used per node. Fify quorums are disribued across he nework and each node incurs a memory overhead of approximaely 6.5-9 componens per node given zero node failures. Average iems per node 9 8 7 6 5 4 3 2 Unicas Broadcas Linear (Unicas) Linear (Broadcas) Linear () 1 Resuls Firsly, we examine (in Figure 3) he abiliy of he algorihm o survive over a 3-minue simulaion given various node failure raes. Loss percenage 9 8 7 6 5 4 3 2 5 15 2 25 Node power failures per minue Unicas Broadcas Poly. (Unicas) Poly. (Broadcas) Poly. () Figure 3: urvivabiliy All hree versions of he algorihm survive excepionally well even given exremely high failure raes wih up o 2% of he quorums surviving despie every node in he nework failing once per minue. Packes per minue 12 8 6 4 Unicas Broadcas Linear (Unicas) Linear (Broadcas) Linear () 5 15 2 25 Node power failures per minue Figure 5: Memory overhead (componens/node) Figure 6 shows he number of queries reurned by he quorum ha were ou-of-dae due o an incomplee updae of all componens. We hen also show how his can be improved by querying a leas wo componens and aking he mos up-o-dae resul. This simple echnique halves he number of old-resuls reurned. Percenage of quer 2.% 18.% 16.% 14.% 12.%.% 8.% 6.% 4.% 2.%.% 2 3 4 5 6 7 Pause ime Figure 6: Ou-of-dae resuls reurned UC BC UC+MQuery BC+MQuery Linear (UC) Linear (BC) Linear (UC+MQuery) Linear (BC+MQuery) The overhead incurred o updae he quorum wholly depends on he number of componens presen in he quorum. Figure 7 clearly shows he unicas algorihm mainains he lower number of componens while he broadcas version mainains almos wice as many. 2 5 15 2 25 Node power failures per minue Figure 4: Overhead (packes/min)
Packes per upda 14. 12.. 8. 6. 4. 2.... 2. 3. 4. 5. 6. 7. Pause ime Figure 7: Updae cos (packes) UC BC Linear (BC) Linear (UC) Figure 8 shows he resuls obained when he informaion from he quorum is ou-of-dae by varying degrees. Wih updae inervals of wo minues, almos a hird of packes do no reach heir desinaion. However, when we add he DR module o he rouing algorihm, less han 3% of packes fail o reach heir desinaion. Rouing failure 35.% 3.% 25.% 2.% 15.%.% 5.%.% Conclusion 2 4 6 8 12 14 Updae inerval Figure 8: DR-aided geodesic rouing Wihou DR Wih DR Poly. (Wihou DR) Log. (Wih DR) The resuls show ha he broadcas algorihm performs beer in erms of survivabiliy while he hybrid provides lower overhead. Maximising survivabiliy is he main prioriy and all he algorihms cope wih failure raes significanly higher han hose expeced o occur in reallife. Therefore, we recommend he use of he hybrid algorihm due o he avoidance of he expand-collapse problem and he abiliy o recover quicker han he unicas approach o a number of node failures. In erms of abiliy o query he quorum, he approach used o mainain he quorum had lile effec of he resuls. We found ha approximaely 4% of queries reurned ou of dae resuls, bu ha his is halved by querying a leas wo componens. Furher improvemens could be made if elemens of he quorum communicae wih each oher, or revision informaion is added o he beacon packe. Rouing using a simple geodesic algorihm performs poorly in neworks of less han 2 nodes per square kilomere. We showed ha by aiding he algorihm wih DR when he packe was unable o make any furher progress forward, wih a search radius of jus hree hops, increased he rouing success by up o a facor of even when he locaion informaion is up o wo minues old. Our work demonsraes ha i is possible o implemen reliable quorum sysems in ad-hoc neworks wih negligible overhead. The echnique used is a self-organising sysem relying on an inelligen behaviour emerging from he individual acions of each componen. We demonsraed he performance of he quorum for obaining locaion informaion and measured he percenage of ou-of-dae daa reurned. Locaion informaion does no necessarily have o be up-o-dae as long as he node has no moved oo far and he rouing algorihm is able o recover. One way o improve geodesic rouing algorihms o cope wih incorrec informaion would be o aid he algorihm wih a limied DR search when he node is no a he given locaion. Underaking his simple improvemen increased he rouing success by up o a facor of en; however, his will of course incur a higher rouing overhead. References [1] J. Li, J. Jannoi, D.. J. De Couo, D. R. Karger, and R. Morris, "A calable Locaion ervice for Geographic Ad Hoc Rouing," presened a 6h ACM Inernaional Conference on Mobile Compuing and Neworking (MobiCom), 2. [2]. Giordano and M. Hamdi, "Mobiliy Managemen: The Virual Home Region," EPFL, Lausanne, wizerland, 1999. [3] I. ojmenovic, "A scalable quorum based locaion updae scheme for rouing in ad hoc wireless neworks," Universiy of Oawa, 1999. [4] T. Camp, J. Boleng, and L. Wilcox, "Locaion Informaion ervices in Mobile Ad Hoc Neworks," presened a IEEE Inernaional Conference on Communicaions, 22. [5] D. Malkhi, M. K. Reier, A. Wool, and N. Wrigh, "Probabilisic Quorum ysems," presened a ymposium on Principles of Disribued Compuing, 1997. [6]. Johnson, Emergence: The Conneced Lives of Ans, Brains, Ciies and ofware: cribner, 21. [7] M. Naor and A. Wool, "The load, capaciy and availabiliy of quorum sysems.," IAM Journal of Compuing, vol. 27, pp. 423-447, 1998. [8] D. Barbara and H. Garcia-Molina, "The vulnerabiliy of voe assignmens," ACM Transacions on Compuer ysems, vol. 4, pp. 187-213, 1986. [9] D. Peleg and A. Wool, "The availabiliy of quorum sysems," Informaion and Compuaion, vol. 123, pp. 2-233, 1995. [] D. Barbara and H. Garcia-Molina, "The reliabiliy of voe mechanisms," IEEE Transacions on Compuers, vol. 36, pp. 1197-128, 1987. [11] D. Johnson and D. Malz, "Dynamic source rouing in wireless ad-hoc neworks," in Mobile Compuing: Kluwer Academic Publishers, 1996. [12] "GloMoim - Global Mobile Informaion ysems imulaion Library," UCLA Parallel Compuing Laboraory.