[IEEE 2013 12th Annual Mediterranean Ad Hoc Networking Workshop (MED-HOC-NET) - Ajaccio, France (2013.06.24-2013.06.26)] 2013 12th Annual Mediterranean Ad Hoc Networking Workshop (MED-HOC-NET) - A social-based service discovery protocol for mobile Ad Hoc networks

Download [IEEE 2013 12th Annual Mediterranean Ad Hoc Networking Workshop (MED-HOC-NET) - Ajaccio, France (2013.06.24-2013.06.26)] 2013 12th Annual Mediterranean Ad Hoc Networking Workshop (MED-HOC-NET) - A social-based service discovery protocol for mobile Ad Hoc networks

Post on 11-Feb-2017

215 views

Category:

Documents

2 download

TRANSCRIPT

<ul><li><p>A Social-Based Service Discovery Protocol forMobile Ad Hoc Networks</p><p>Michele Girolami, Paolo Barsocchi, Stefano Chessa, Francesco FurfariISTI-CNR, Pisa Research Area, Pisa, Italy. Email: {michele.girolami, paolo.barsocchi, furfari}@isti.cnr.it</p><p>Computer Science Department, University of Pisa, Pisa, Italy. Email: {girolami, ste}@di.unipi.it</p><p>AbstractThis work proposes an efficient proactive servicediscovery protocol that leverages the social behavior and themobility of the people. The protocol is based on the conceptthat the service discovery performance is strongly affected by themobility of the users and by their behavior along the time. Indeed,people generally have significant contacts with others with similarinterests, hence they could be interested on similar services.We present simulation results that show that our protocolachieves increased efficiency in discovering services (comparedto traditional broadcast-based mechanisms) by efficiently usingbandwidth, thus decreasing the energy consumption.</p><p>I. INTRODUCTION</p><p>The last few years have seen research development in thefield of Pervasive Computing. These researches were focusedon network infrastructures (e.g. UMTS, WiFi networks), soft-ware architectures (e.g. distributed middleware) as well asservice discovery protocols in Smart Environments (SE) [1].The service discovery protocol is a core part of a SE. It isused in order to announce and to discover the services thatare available. The kinds of services available in a SE differwith respect to the type of environment. As an example ina Smart Home the service providers offer services for homeautomation, home security or tele-health care, while in aninternational airport the service providers offer indoor localiza-tion services or tourist assistance services. In these scenarios,we focus on the problem of devising efficient strategies forservice discovery, and specifically on the optimization of theservice advertisements propagation among devices, especiallyconsidering two important aspects of the SE in these scenariosthat are human mobility and device autonomy.</p><p>Mobility of humans is not random, rather they move ac-cording to one or more goals (for example, the passengersin a international airport move towards their departure gateto check in there). When the goals of a group of peoplematch for a period of time, this group forms a temporarycommunity. The individuals of a community share goals andpossibly interests (for example the group may share interestsabout flight connections, delays, whether forecast).When the SEs do not provide a suitable infrastructure,</p><p>autonomous devices are essential to manage efficiently theirenergy budget even without any guarantee about connectivityand reliability.</p><p>This work was supported in part by part by the European Commission inthe framework of the FP7 project universAAL (contract N.247950)</p><p>Service discovery is an important and active area of researchin the field of MANETs [2] and [3]. Some pioneering discov-ery protocols have been proposed starting from 1999 like Jini[4], UPnP [5], SLP [6] and Bonjour [7]. These protocols aremainly focused for administrated and infrastructured IP-basednetworks. Some works [8], [9], [10] and [11] exploit the socialaspect of humans in SEs such as in the DTN or in the PSN(Pocket Switched Network).The Bubble Rap algorithm [8] implements a social-based</p><p>forwarding strategy for delay tolerant networks. The authorstake into account the centrality of the nodes in order toestablish a hierarchy in the forwarding decision. A message isfirst forwarded up in the hierarchical ranking until it reaches anode in the same community of the receiver. Then the messageis forwarded locally in the community until it reaches the des-tination. The authors use k-Clique and the Weighted NetworkAnalysis (WNA) algorithms to detect communities. In [9] theauthors propose a socially inspired resource discovery servicefor delay tolerant networks that exploits the Community-basedMobility Model (CMM). The resources and the nodes areclassified with interests, and the search is performed by firstsending a query to the neighbors that have similar interests. Ifthe resource is not found, the query is sent to every node in thetransmission range. The work presented in [10] implements aservice discovery algorithm based on the Service Rings. A ringgroups nodes that are physically close to each other and thatoffer similar services. Every ring can be accessed by means ofthe ring SAP (service access point) that knows a summary ofthe services provided by the nodes of the same ring. The searchqueries are propagated only among the SAPs of the overlaynetwork instead of flooding the network. This can reduce theoverhead of the protocol, however the SAPs play a crucialrole in the network and they are supposed to provide enoughresources in order to act as ring manager.The use of Received Signal Strength (RSS) in service</p><p>discovery has been proposed in the S3D algorithm [12]. S3Duses the RSS in order to select the links with higher qualityin order to deliver the service query. The authors observethat the selection of high quality links allows to reduce thelatency between queries and replies and increases the successratio. The GSD protocol (Group-Based Service Discovery)[13] introduces the notion of service group to establish a rela-tionship among the services and to match the queries with theadvertisements. GSD adopts a selective forwarding schema,where the query propagation is achieved by forwarding only</p><p>978-1-4799-1004-5/13/$31.00 2013 IEEE</p><p>2013 12th Annual Mediterranean Ad Hoc Networking Workshop (MED-HOC-NET)</p><p>103</p></li><li><p>to those nodes that provide services belonging to the samegroup of the query, or to nodes whose neighbors provide suchservices.In this paper we propose People Like Us (PLU), a novel</p><p>proactive service discovery protocol that exploits the notionof user communities to share service advertisements amongpeers. PLU is based on the observation that social relationshipsof humans in the SE can strongly influence the performanceof a service discovery strategy. Humans generally only havesignificant contacts with others like themselves. Under thisrespect the homophily is the principle that a contact betweensimilar person occurs at a higher rate than among dissimilarpeople [14]. Humans interact more with others (typify aspeople like us) who have similar interests, therefore couldbe interested on similar services. This feature can be leveragedto inform the closest people like us of existing services thatpotentially could be of interest. In contrast with the state ofthe art, the proposed protocol does not need a localizationservice to detect if two nodes are close, rather PLU exploits theRSS values that are available in all the wireless devices [15].PLU comprises three phases: (i) finding neighborhoods (basedon RSS): during this phase the nodes detect the neighborsthat are stable along the time. (ii) Community detection: thenodes exploit the neighborhood in order to build a community.(iii) Services exchange: during this phase nodes of the samecommunity share their interests and compute the set of adver-tisements that are of interest for the whole community or witha member of community. The services exchange phase allowsto mesure the interest similarity among the nodes of the samecommunity and to select which advertisements exchange.PLU has been evaluated by simulation using the Hu-</p><p>man Community-based Mobility Model (HCMM) [16]. TheHCMM model reproduces the human mobility inside abounded region, by taking into account the social relationshipamong people and the spatial properties of the region. PLUhas been compared with respect to other meaningful strategiesfor the propagation of the advertisements, by obtaining somenotable results in terms of propagation of advertisements andprotocol overhead.</p><p>II. SERVICE DISCOVERY MODEL</p><p>The connections among nodes in a SE are represented asa connected-weighted and directed graph G = (V,E), whereV = {ni} is the node set, and E = {eij = (ni, nj) : ni, nj V } is the edge set. The weight of the edges in E is given bythe RSS value between the nodes (hence it varies with time).At a given time, the RSS values are measured by means ofthe function : V V R that, given a pair of nodes niand nj , estimates the signal power strength of the messagessent by nj and received by ni. The RSS value between a pairof nodes provides an estimation of the proximity of the nodeni with respect to the node nj (as discussed in [15]). Moreformally, the function is defined as follows:</p><p>(ni, nj) =</p><p>{x R if eij E0 if eij / E (1)</p><p>Note that the RSS value between a pair of nodes is, in general,not symmetric (i.e. (ni, nj) = (nj , ni)). This asymmetryis often caused from physical conditions in the environmentsuch as obstacles or interference that reduce the signal powerstrength among nodes.Our purpose is to model the sets of nodes in G that are</p><p>well connected; such sets are also called communities. Beforedefining a community, we recall some basic definitions fromthe graph theory. Given a graphH = (V,E) a clique is a set ofnodes such that every pair of nodes in this set, is connected byan edge. The cardinality k N of the clique is also called theorder of the clique. If a clique of order k cannot be extendedwith k + 1 vertices, than it is defined as maximal clique oforder k.</p><p>A community of order k is a set of k nodes that are close toeach other (the RSS value among each pair of nodes is greaterthan a specific threshold) for a time period. More formally:</p><p>Definition 1. Given the connection graph G = (V,E) andgiven a threshold Trss = 0 for the function , a communityC V is a maximal clique of order k if ni, nj C, (ni, nj) Trss and (nj , ni) Trss for at least a timeperiod t.</p><p>Definition 1 introduces two parameters: the RSS thresholdTrss and the time period t. The threshold Trss allows tore-size the radius of the community: if Trss decreases, theradius of the community increases therefore the nodes of acommunity can be more distant from each other. Differently,if Trss increases the radius of the community decreases andonly the nodes close to each other will be considered as a partof the same community.The parameter t is used to find stable communities over the</p><p>time. In our view, a community must be composed by nodesthat are close to each other for at least a time period t. Thisallows to identify nodes that share a social relationship withother nodes, since they keep in contact for a given period.Depending on the value of t, this can detect short lastingcommunities (for example people on the same bus), or longlasting communities (for example students attending the sameclasses).The nodes of G can access a set of services along the</p><p>time. The service advertisements are represented by the setS = {s1, . . . , sm}, |S| = m. Each node stores in its localcache a subset Si S of the advertisements that are ofinterest for the node. An advertisement typically comprises anumber of fields, such as the service identifier, the pointer tothe service provider (for example the URI to the provider) anda description of the features provided by the service. However,the actual formalism used to describe services is out of thescope of this paper and we will not discuss it.Services are classified according to the topics in set T . A</p><p>topic is a category to which a set of advertisements belongsto, and to which one ore more nodes are interested in. Givena service si the function ts : S T finds its topic. In asimilar way, given the node ni the function tn : V {T}finds the set of topics to which ni is interested in. Note that</p><p>2013 12th Annual Mediterranean Ad Hoc Networking Workshop (MED-HOC-NET)</p><p>104</p></li><li><p>a node could be interested in more than one topic. Given acommunity C, the topics that are in common is computed bythe function tc : C {T} as:</p><p>tc(C) =</p><p>niCtn(ni) (2)</p><p>readynode</p><p>activenode</p><p>silentnode</p><p>p</p><p>1-p</p><p>k</p><p>k</p><p>k</p><p>tableaccess</p><p>servicequery</p><p>r</p><p>1-r</p><p>Fig. 1. State transition during the service discovery process</p><p>We model the discovery process as a finite state machinethat represents the states of the nodes and their transitions, asshown in Figure 1. A node in the state ready node becomesan active node (with probability p). An active node accesses agiven service si S. If the node already knows si (withprobability r), the node moves to the state table access,otherwise it moves to the state service query. The node in thestate table access accesses to the service si without submittingany query in the system. The node in the state service querysubmits a service query in the network in order to find theadvertisements matching with si. The node can also movesto the state silent node (with probability 1 p) if it does notaccess any service. Finally, a node returns back to the statusready node with a fixed probability (we assume k = 1).The probability r that a node already knows the advertise-</p><p>ment si Si increases as the node exchanges the serviceadvertisements with other nodes in its communities. Also,if the node joins the community C, it will share socialrelationship with members of C, and the probability of sharingsimilar topics and advertisements will become higher. In turn,if r increases, the node reduces the probability to move to thestate service query, hence reducing the number of messagesexchanged.The probability r can be computed as follows. Let CACi</p><p>be the probability that a node visits the community Ci (asdescribed in [16]), k = |Ci| be the number of nodes in thecommunity Ci and ujv be the probability that the node nv Ci already knows the service advertisement sj . We first definethe inverse probability r = 1 r that a node, entering in Ci,does not exchange the advertisement sj . It is given by:</p><p>r = CACi </p><p>v=1,k</p><p>(1 ujv) (3)</p><p>Fig. 2. The PLU protocol</p><p>where</p><p>v=1,k(1 ujv) is the probability that a member ofCi dont know the advertisement sj . The probability r is thusr = 1 r.</p><p>III. THE PLU PROTOCOL</p><p>The main goal of PLU is to proactively propagate the serviceadvertisements that are of interest for the community. ThePLU protocol is described with Figure 2. It flows across thefollowing states:</p><p> Find tight neighborhood: every node sends via broadcasta beacon message and collects the beacon replies. Thanthe node filters the neighbors with the nodes whose RSSis over a specific threshold ( Trss as described in SectionII). This state allows to detect the contacts that are stablealong the time.</p><p> Detect community: every node detects the communitiesof nodes to which it belongs to. According to Definition1, the node will detect only the communities composedby nodes in the neighborhood that form a maximal clique.</p><p> Exchange advertisements: every node exchanges the ser-vice advertisements with the nodes in the same com-munity. Before exchanging the service advertisementsinside the community, the nodes share their interests.This allows to exchange service advertisements that areof interest for the whole community, by avoiding off-topic advertisements. The nodes return b...</p></li></ul>

Recommended

View more >