wei gao
DESCRIPTION
Towards Scalable and Robust Service Discovery in Ubiquitous Computing Environments via Multi-hop Clustering. Wei Gao. Service discovery. Users search for their desired network services Examples of network services: remote printers, scanners, data sources, and webpages…… - PowerPoint PPT PresentationTRANSCRIPT
MobiQuitous 2007
Towards Scalable and Robust Service Discovery in Ubiquitous Computing Environments via Multi-hop Clustering
Wei Gao
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
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
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
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
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
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
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
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
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
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
Multi-hop clustering
3. Handshake with clusterheads Possible inconsistency during the
clusterhead selection and handshake process is solved
All the clusters are connected ones
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
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
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
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
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
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
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
Simulation results
Successful ratio in different mobility settings
Simulation results
Overhead in different mobility settings
Simulation results
Scalability: overhead in different network scales
Simulation results
Robustness: successful ratio in cases of node failures
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
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
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”
Thank you!
Questions?
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
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
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
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