Wei Gao
description
Transcript of Wei Gao
![Page 1: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/1.jpg)
MobiQuitous 2007
Towards Scalable and Robust Service Discovery in Ubiquitous Computing Environments via Multi-hop Clustering
Wei Gao
![Page 2: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/2.jpg)
Service discovery
Users search for their desired network services Examples of network services: remote printers,
scanners, data sources, and webpages…… Service discovery in ubiquitous computing
environments needs to be: Scalable to search for matching services quickly
and efficiently Robust against unpredictable network topology
changes
![Page 3: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/3.jpg)
Service discovery
Components of a service discovery system: Service requesters Service providers Service repositories
A service discovery process include: Dissemination of service discovery messages Matchmaking between the services requested
and provided
Service Requester
Service Repository
Service Provider
Access
RequestAnn
ounc
e Reply
![Page 4: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/4.jpg)
Our focus
Service discovery: partial match Services provided rarely match the requests
perfectly An acceptable deviation between the services
provided and requested is used in matchmaking The searching scope is fixed: Global
An efficient network architecture is needed Ensures that every service request finds all the
matching services on the network
![Page 5: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/5.jpg)
Current solutions
Solutions with fixed Internet infrastructure Jini, UPnP Not suitable for mobile environments
Global DHT-based p2p network Too expensive and instable in dynamic
network topology Partial match cannot be handled
Cluster-based approaches Clusters are constructed with low stability and
flexibility
![Page 6: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/6.jpg)
Cluster-based Architecture for Service Discovery (CASD) For scalability
The network is organized as multi-hop clusters based on the Neighborhood Benchmark (NB) scores of mobile nodes
A virtual backbone is used for disseminating service discovery messages
![Page 7: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/7.jpg)
Cluster-based Architecture for Service Discovery (CASD) For robustness
Each cluster is constructed to be an extended local Content-Addressable Network (CAN) storing service indices
Controllable redundancy of service indices on multiple service repositories in each cluster
![Page 8: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/8.jpg)
The overall picture
Service discovery message
Multi-hop cluster
(Local CAN)
Virtual backbone
Announcement: store service
indices
Request: local matchmaking
A hybrid push-pull approach
![Page 9: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/9.jpg)
Distinguished features
Reduce the communication overhead of service discovery
Achieve robust service discovery in cases of bounded numbers of node failures
A service request is guaranteed to find all the matching services in the network
![Page 10: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/10.jpg)
Neighborhood Benchmark (NB)
The NB score of a node Ni indicates the qualification of this node to be the clusterhead di : the neighbor degree of Ni
LFi : the number of link failures Ni encountered in unit time
NB-based clustering ensures the efficiency and stability of the clusters constructed
di: the connectivity of Ni’s neighborhoodLFi: the link stability of
Ni’s neighborhood
![Page 11: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/11.jpg)
Multi-hop clustering
1. Network initialization Initialization by hello beaconing NB scores of mobile nodes are calculated and
disseminated 2. Autonomous clusterhead selection
The node with the highest NB score in the R-hop neighborhood is selected to be the clusterhead
![Page 12: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/12.jpg)
Multi-hop clustering
3. Handshake with clusterheads Possible inconsistency during the
clusterhead selection and handshake process is solved
All the clusters are connected ones
![Page 13: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/13.jpg)
Construction of local CANs
Constructed along with the handshake process
Clusterheads allocate spaces for the cluster members Node join: the largest
zone is split Node leave: the
smallest neighbor zone takes over
Area deviation among different zones is minimized
N1
N9N8N7
N5N4
N16
N15N14N13N12
N11
N20N19N18N17
N2N2
N6
N10
N3
![Page 14: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/14.jpg)
Service discovery
Service discovery messages are disseminated among different clusters via the virtual backbone
Local CANs store service indices with controllable redundancy Every node is a service repository Every service discovery message is forwarded
to multiple destinations in a local CAN
![Page 15: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/15.jpg)
Multiple forwarding destinations for service announcements Redundancy degree dr in a local CAN
The proportion of the forwarding destinations to the total number of nodes in the clusters
Bounded by the radius R1 of a circle in the virtual coordinate space:
, where
![Page 16: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/16.jpg)
Multiple forwarding destinations for service announcements Every service
announcement falls into a zone in the virtual coordinate space
All the nodes whose virtual zone overlaps with the circle With the radius R1
N1
N10
N9N7
N5N4
N16
N15N14N13
N11
N20N19N18N17
S
N2 N3
N6 N8
N12
![Page 17: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/17.jpg)
Multiple forwarding destinations for service requests A service request is forwarded to all the
nodes that possibly contains the matching services
R2: The acceptable deviation range in service matchmaking
A forwarding process consists of two steps
![Page 18: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/18.jpg)
Multiple forwarding destinations for service requests 1. All the nodes
within the acceptable deviation range Radius R2
2. For each recipient in the 1st step, to its redundancy range Radius R1
N1
N10
N16
N15N14
N11
N20N19N18N17
S
N2 N3 N4
N7 N8N6
N12
N9
N5
N13
![Page 19: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/19.jpg)
Simulation settings
The performance of CASD is compared with service discovery in flat network architecture Service discovery functionality is implemented
on ad-hoc routing protocols: AODV and DSR Every node periodically announces a service
and requests for another service Different variations of CASD
Local CANs are used: CASD-1 Without local CANs: CASD-2
![Page 20: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/20.jpg)
Simulation results
Successful ratio in different mobility settings
![Page 21: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/21.jpg)
Simulation results
Overhead in different mobility settings
![Page 22: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/22.jpg)
Simulation results
Scalability: overhead in different network scales
![Page 23: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/23.jpg)
Simulation results
Robustness: successful ratio in cases of node failures
![Page 24: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/24.jpg)
Effects of different cluster radius
Multi-hop clusters achieves higher performance
Multi-hop clusters are also more expensive to construct
Cluster radius should be chosen appropriately according to application requirements and network conditions
![Page 25: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/25.jpg)
Conclusions
Scalable and robust service discovery cannot be achieved in flat network architecture
A service discovery architecture based on multi-hop clustering is presented
Communication overhead of service discovery is reduced
A service request is ensured to find all the matching services in cases of bounded numbers of node failures
![Page 26: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/26.jpg)
Future work
Theoretical analysis on the communication overhead of service discovery in our approach
Comparison with other service discovery approaches based on clustering and “remote contacts”
![Page 27: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/27.jpg)
Thank you!
Questions?
![Page 28: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/28.jpg)
Content-Addressable Network (CAN)
DHT-based p2p network A multi-dimensional
Cartesian coordinate space
Each node is allocated a rectangular zone
Data items are mapped to virtual points in the space
N1
N10
N9N8N7
N6
N5N4N3N2
N16
N15N14N13N12
N11
N20N19N18N17
Back
![Page 29: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/29.jpg)
Network initialization
Network initialization by hello beaconing Hello beacons: {IPi, NBSi, Head_IPi, HEAD_NBSi, hopi}
Interval of hello beaconing: TH
The NB scores of mobile nodes are calculated di is updated on each node by discovering its 1-hop
neighborhood If a neighbor record has not been updated for long
than 2TH, a link failure is counted
LFi is updated iteratively in each round of hello beaconing:
Back
![Page 30: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/30.jpg)
Autonomous clusterhead selection
Mobile nodes exchange their selected clusterheads with their neighbors via hello beaconing
Clusterhead selection consists of R consecutive rounds In every round, a node puts the clusterheads of itself
and its 1-hop neighbors into a selection pool The one in the pool with the highest NB score is
selected Hello beaconing ensures that in the kth round, the
selected clusterhead are with the highest NB score in the k-hop neighborhood
Back
![Page 31: Wei Gao](https://reader036.fdocuments.in/reader036/viewer/2022062801/568143f4550346895db07ef7/html5/thumbnails/31.jpg)
Solving the possible inconsistency
An example of constructing 2-hop clusters 1. N4 selects N3 N7 is notified about N3 2. N4 hears N6 from N5
N4 transfers to N6 N7 does not know that! N7 select N3
A disconnected cluster Solution: nodes only forwards
the handshake messages if they have the same clusterhead
N5
N7
N1 N3
N2
N8N6
N4
105
107
8247
65
58
31
115
N1087
N9
24
Back