A Lightweight Service Discovery Mechanism for Mobile Ad Hoc Pervasive

advertisement
A Lightweight Service Discovery Mechanism for Mobile Ad Hoc Pervasive
Environment Using Cross-layer Design
Li Li and Louise Lamont
Communications Research Centre of Canada
{li.li, louise.lamont}@crc.ca
Abstract
This paper presents a lightweight service discovery
mechanism for the mobile ad hoc pervasive environment,
applying cross-layer design to reduce the infrastructure
and protocol overhead, and to improve service
accessibility. Integrated with the network routing layer,
the proposed mechanism automatically identifies the
proper service discovery model for the current network
configuration. The solution adapts to network expansion
with enhanced scalability. Simulation studies of real-time
service scenarios employing the proposed mechanism are
presented, demonstrating the efficiency of the mechanism
and the satisfactory service performance results.
1. Introduction
In mobile ad hoc pervasive environment, service
execution has to be carried out with minimum
configuration or user intervention when end devices and
network hosts often have no fixed networking relationship. An effective service discovery scheme is thus
essential. The mobile communication nodes, including
mobile servers, cause unpredictable topology dynamics in
an ad hoc network. The lightweight mobile devices with
confined battery power also means that the ad hoc
environment is limited on its computing and networking
resource. The topology dynamics and resource limitations
give rise to special considerations when adopting a
service discovery scheme in the ad hoc network.
This paper presents a lightweight service discovery
mechanism for the support of pervasive applications over
Mobile Ad-hoc Networks (MANET), using cross-layer
design. Effectively integrated with the routing layer, the
proposed mechanism reduces the system infrastructure
and protocol overhead. Meantime, the mechanism offers
enhanced capabilities in managing network mobility, e.g.,
handling the case when the directory is partitioned from
the rest of the network. The solution scales for large sized
networks, and interoperates with the existing service
locating scheme if already built into a service.
The rest of the paper is organized as follows: Section 2
reviews different service discovery models and compares
the related work; Section 3 elaborates the lightweight
service discovery mechanism; Section 4 presents the
performance simulation results; Section 5 concludes the
paper.
2. Service discovery models and related work
There have been intensive research efforts in the field
of service discovery mechanisms. In [13], the service
discovery models are classified into two categories:
client-service model and client-service-directory model.
In the client-service model, clients broadcast or multicast
queries to inquire about services’ availability. The
services that find them match with the criteria in a
received query would return replies. After receiving
responses from services, clients select and contact
services. This model brings the advantage of requiring no
directory server in the network, while having the
shortcoming of not being able to scale well for big
networks with large numbers of services deployed. In the
client-service-directory model, a client queries a directory
for service information and then contacts the services.
Services, on the other hand, register service information
with the directories. The client-service-directory model
offers better scalability when handling large numbers of
services deployed. However, in a MANET, managing
directory server(s) has become of a non-trivial task [1]. A
new algorithm for managing distributed directories has
been proposed to ensure the availability of the directories
in a mobile ad hoc network, though such algorithm
usually brings overhead of extra messages and computing
phases [1]. In SSDS [18] and PrudentExposure [13], the
client-service-directory model is adopted for better
scalability.
Recently, most of the service discovery solutions
proposed for MANET attempt to apply the client-service
model to avoid the management of the directories. In
Konark [14], the middleware layer applies the clientservice model for service discovery and delivery.
Protocol efficiency, i.e., a lightweight messaging
This work was funded by the Defense Research and Development Canada (DRDC)
Proceedings of the 3rd Int’l Conf. on Pervasive Computing and Communications Workshops (PerCom 2005 Workshops)
0-7695-2300-5/05 $20.00 © 2005 IEEE
mechanism for discovery, is also a major goal in the
various proposals [2][7][11].
Among the lightweight service discovery mechanisms
for MANET, the service query-and-response messages
are often piggybacked onto the reactive ad hoc routing
protocols, including unicast and multicast routing
protocols [2][7][11]. In all these proposals, the clientservice model is employed as no centralized directory
server is assumed in the MANET.
The LSD (Lightweight Service Discovery) solution
proposed in this paper differs from existing service
discovery protocols in that it leverages on the topology
information and messaging capability provided from a
proactive routing layer [3][10]. The proactive routing
offers a more comprehensive view of network topology.
Such an approach brings about enhanced capability for
network mobility management. The proposed mechanism
can detect promptly, for example, the network size
change, and then activate the cooperative caching or the
directory function if available for enhanced scalability.
Almost all of the previous work on lightweight service
discovery for MANET assumes reactive routing protocols
[2][7][11], though a proactively routed network may
improve the service access latency and real-time data
transmission delay - factors that are critical to the
performance of real-time applications desired in many
pervasive communication scenarios.
3. The LSD mechanism
3.1. Service discovery model
The proposed Lightweight Service Discovery (LSD)
mechanism can support both the client-service and the
client-service-directory models. LSD in fact automatically
identifies if a directory server is currently available in the
network, and then adapts to the required operations.
In LSD a directory server periodically advertises itself
triggered by the timer of t_advertise or a change in its
configuration information. If not hearing any directory for
a defined time 'T , a service node may after a random
backup time broadcast a query requesting about the
directory service, to which the directory would respond;
so may a client node to discovery the directory.
When a directory is available in the network, service
nodes register with the directory about their service
records, and refresh the records periodically. If no
directory is known, a node replies directly to a query if it
has a matching service. A service in this case also has an
option to periodically advertise in the network unless its
t_advertise is set to f to limit the network traffic load.
When not knowing any directory, a client sends the
service query to the entire network, using the messaging
mechanism elaborated in the next subsection. If having
the information of a directory server, the client sends the
query to the directory server. When the directory fails to
reply to the query (after a limited number of retries), the
client would resend the query with a flag to the network
asking the service to directly respond. If no directory
responds to this query, the directory is marked then as not
available by all the nodes that hear the flagged query, and
the response message from the service node instead of
from a directory. Thus, the LSD automatically switches
between the client-service and the client-service-directory
models, adapting to the dynamics in the MANET.
3.2. Service discovery messaging
To achieve the system efficiency, IETF standard
Optimized Link State Routing (OLSR) protocol [3] is
selected to embed the LSD. In the OLSR protocol, Hello
messages are periodically sent to sense and establish the
sender’s neighbors, and TC (Topology Control) messages
are flooded periodically via the so-called MultiPoint
Relay (MPR) nodes throughout the entire network to
advertise the topology information of each node; the
topology information is then used to build the routing
table locally at each node [3]. MPR forwarding provides
an efficient broadcasting mechanism in MANET.
The specification of the OLSR protocol facilitates
extension of the protocol functionality through the
addition of new message types [3]. OLSR provides the
backward compatibility enabling the nodes that do not
understand a new message to function seamlessly in the
network [3]. To implement the LSD mechanism, a new
message type, Service Location Extension (SLE), is
introduced into OLSR, which performs the service
advertising, query, response and register functions.
Using MPR forwarding, the advertising SLE messages
are sent to reach the entire network to advertise services
and directories. So are the query SLEs when service
directories are not known. When the locations of the
service directory are available, the query SLE is unicasted
to the service directory. A response SLE may be sent
using unicast, though it may also be sent using MPR so
that other nodes that are also interested in the service can
cache the information for later use. In some instances this
“MPR forwarding” response strategy can be excessive,
but in other cases especially for popular services required
by most of the nodes in a network without directory, it
reduces redundant queries that would otherwise be
generated by other nodes.
3.3. Scalability for hierarchical network
Harnessing the topology information provided by the
routing layer, LSD offers scalability to handle the size
changes of the network. For large sized MANET, the
proactive routing protocol often employs clusters and
http://www.unik.no/personer/paalee
Proceedings of the 3rd Int’l Conf. on Pervasive Computing and Communications Workshops (PerCom 2005 Workshops)
0-7695-2300-5/05 $20.00 © 2005 IEEE
hierarchies [16][17][18][19][20] to curb the routes
advertising traffic volume. In the OLSR case, for
example, the HOLSR (Hierarchical OLSR) [16] forms
clusters and hierarchies to limit the propagation of the
Hello and TC messages within a cluster. The cluster head
summarizes the information of the cluster in a different
new message other than Hello and TC, and then
propagate it outside of the local scope further onto the
next level of the hierarchy.
Given node set N ={n1, n2, … nk}, for each ni  N , ni
is responsible to forward the summarized route
information of the current cluster/group/level to the next
cluster/group/level. Node set N actually contains the
cluster head or level/group leader of the hierarchical
routing protocol [16][17][19]. In LSD, node ni  N also
sends the SLE messages externally to the next cluster or
level. However in general, the SLE message cannot be
summarized, but has to be sent in its full content to reach
the destination(s), which may include the entire network.
Define the size of the scope of the network that node ni
 N sees as S(ni), where S(ni) includes not only the
number of nodes that ni has in its cluster/group/level, but
also the number of nodes below the level of ni should ni
reside in a higher level of the hierarchy. As the route
information is often summarized when reported outside of
its local scope by the routing protocol, node ni may not
know about the true size of the clusters/groups that are
below it in the hierarchy. A simple solution is to let the
routing protocol message carry the size parameter of a
cluster/group when sent to the higher level.
The LSD offers two options to maintain the messaging
efficiency when the network scales up, with and without a
directory server. In MANET, the case without a directory
server may be more practical and is thus described here.
Assume a network without a directory is expanding with
new nodes joining. A ni  N that has S(ni)>STh, where
STh is a threshold size, would cache the service response
and advertising SLE messages. Then when node ni
receives a query SLE for a service that it has a matching
SLE, ni stops the forwarding of the query SLE to the next
level and replies a response SLE with the cached
information.
4. Performance studies
4.1. Simulation environment
The proposed LSD mechanism is implemented in an
OPNET simulator. In the simulations, each mobile node
modifies its location within the subnet based on the
“random waypoint” model [8]. The standard real-time SIP
(Session Initiation Protocol) [4] service is running in the
network to establish on-demand multimedia sessions. For
each SIP end terminal, i.e., SIP User Agent (UA), the
inter-arrival time of SIP calls is exponentially distributed
with a mean value of 360sec. The duration of the SIP call
is also exponentially distributed with an average of
180sec. In addition to SIP real-time voice traffic, UDP
data transmissions between nodes are effected at an
approximate rate of 2Kbps at each source node. The
OLSR timers for the Hello and TC messages are assigned
default values in accordance with RFC 3626 [3]. The
802.11 WLAN (Wireless LAN) interface is set to a speed
of 1Mbps.
The simulated network is comprised of 51 nodes. Of
those, 40 are SIP UA nodes. There are 25 pairs of UDP
transmissions in the network, distributed randomly
between all the nodes. During the simulations, 31 of the
51 nodes are assumed to reside within the network, with
another 20 SIP nodes coming into the network at an
average of every 360 seconds. The nodes are entering the
network in groups of two. That is, two nodes enter the
network after approximately 360 seconds; after
approximately 720 seconds, another two nodes arrive, etc.
In the simulations, the response SLE is sent using
MPR forwarding. The SLE advertising timer t_advertise is
set to f .
Two types of scenarios are studied, a network N1 of
about 5 u 5 km2 in its size, and a less dense network N2
of 15 u 10 km2.
A SIP network may have its own registrar/proxy
server that locates the UAs in session establishment [4].
To locate such a SIP registrar/proxy server, SIP protocol
specifies the use of DHCP [6] and DNS [5] servers that
may not exist in a MANET. In fact, even the SIP
registrar/proxy server may not be deployed in a MANET.
The SIP specifications also permit the UAs to establish
sessions without the assistance of a proxy/registrar server,
if the UAs can manage to locate each other. We name the
first configuration option as the proxy-based, and the
second option the proxy-less. In the proxy-based
configuration, end terminal UAs discover the information
of the SIP proxy/registrar using LSD, and then send SIP
messages to interact with the proxy/registrar servers to
register and to complete the service access of establishing
sessions with other UAs. In the proxy-less configuration,
UAs apply the LSD to discover the location information
of other UAs, and then establish the session directly with
them. The service specific information of server attributes
carried in the advertising or response SLE message
indicates to the application layer that the server is of “SIP
proxy/registrar” or “UAS” type. This SIP service example
demonstrates the capability of LSD to interoperate with
existing service registrar/discovery mechanism should
such mechanism be aptly deployed in a MANET. LSD
thus expedites service deployment in MANET via reusing
as much as possible the existing capabilities and
implementations of the service.
Proceedings of the 3rd Int’l Conf. on Pervasive Computing and Communications Workshops (PerCom 2005 Workshops)
0-7695-2300-5/05 $20.00 © 2005 IEEE
Call Setup Latency
Percentage of SLE in Total
OLSR Traffic
Compared to the OLSR route advertisement traffic, the
traffic overhead generated by the SLE message is
negligible (under 1%) as illustrated in Figure 1, due to a
much longer time interval between the SLE messages
(e.g., 6 minutes of average query interval) than those
between Hello and TC messages of every few seconds.
Though a proxy-less architecture entails more SLE
messages than a proxy-based option, the additional SLE
message overhead incurred in the proxy-less architecture
is still insignificant in proportion to the overall OLSR
message overhead. The SLE message overhead is not
much affected by the density and node movements of the
network, as topology changes do not bring SLE updates.
In the Hierarchical OLSR scenario where the overall
OLSR traffic is reduced [16], SLE still generates only the
marginal traffic overhead (< 1%) in proportion to the total
HOLSR message overhead, when LSD scales up using
caching (HOLSR S1). Without caching activated
(HOLSR S2), the SLE overhead may reach to more than
2% of the total OLSR traffic overhead.
SLE Message Overhead
2.50%
2.00%
1.50%
1.00%
0.50%
0.00%
proxyless
one
proxy
dense sparse HOLSR HOLSR
net
net
S1
S2
Scenarios
Figure 1. OLSR Traffic Overhead
The simulations have confirmed that most of the SIP
application performance results are quite satisfactory. For
example, the average SIP application packet (voice
packets) and data packets delivery ratio (i.e., the ratio of
the number of received packets over the number of the
totally sent packets from all the source nodes) is above
99% in both the dense and sparse network scenarios.
Figure 2 plots the average call-setup delays encountered
in the different simulated cases, which also meet the call
setup latency requirement for the real-time session based
services.
Time (msec)
4.1. Simulation results
30
25
20
15
10
5
0
sparse
net
dense
net
proxy-less
with proxy
server
Scenarios
Figure 2. Average SIP Call Setup Delays
The delay time shown in the above diagram does not
include the time spent waiting for the server(s) to be
heard. In the simulations, the query message sent by each
UA solicits all the SIP servers of its interest, including the
proxy/registrar and the UAs to respond. Therefore, except
for the first call at each UA, there is often no service
discovery delay during the call setup phase. The average
service query delay is mostly less than 10msec in the
network. The sparse sized network with more topology
dynamics seems to “outperform” the dense network
because that the call throughput in the latter is higher and
so is the overall traffic load. The proxy-less network
achieves slightly better results, as its call setup traverses
fewer SIP nodes along the call setup path.
In the sparse networks, the call throughput metric that
captures the number of successful call setups during a
one-hour simulation has shown considerable degradation
under the proxy-server architecture. In the same way, the
directory based service discovery model is hindered in its
performance if the directory is separated from the rest of
the network. Figure 3 illustrates several cases to compare
the performance results on the service throughputs in the
sparse network. The first scenario has no directory in the
network. The second scenario consists of one directory
server with no capability switching to the directory-less
model if the directory is not available to some of the
nodes due to a network partitioning. The third scenario
deploys multiple directories to provide the redundancy
and robustness, still with no capability switching to the
directory-less model. And the fourth scenario deploys the
LSD that can automatically switch from the clientservice-directory model to the client-service directoryless model.
It is observed that having multiple directory servers
does not significantly improve the performance of service
accessibility, as the positions of the directory servers in
the network are important for maintaining the query
service for each segregated network areas when the
network partition takes place. LSD maintains a better
performance by switching to the directory-less operation
when the directory is no longer available.
Proceedings of the 3rd Int’l Conf. on Pervasive Computing and Communications Workshops (PerCom 2005 Workshops)
0-7695-2300-5/05 $20.00 © 2005 IEEE
Number of Successful
Calls
Service Throughput
50
40
30
20
10
0
1
2
3
4
Scenarios
Figure 3: Call Throughputs Comparison
5. Conclusion
In this paper, we have proposed a lightweight service
discovery mechanism LSD for the mobile ad hoc
pervasive environment. Applying cross-layer design, LSD
employs the messaging mechanism of the OLSR routing
layer to efficiently implement the service discovery
protocol with reduced infrastructure and protocol
overhead. Leveraging on the topology information
obtained at the routing layer, the LSD has enhanced
capability in accommodating the topology change and in
supporting network scalability. LSD also interoperates
with existing service registrar mechanism if already built
into a service. We implemented LSD in the OPNET
simulator and evaluated the performance measurements
for supporting the real-time multimedia SIP service. The
OLSR traffic overhead introduced by the SLE messages
for service discovery was found to be insignificant. And
the SIP service delivers satisfactory performance metrics
running on the LSD mechanism.
10. References
[1] U Kozat and L Tassiulas, “Service Discovery in Mobile Ad
Hoc Networks: An Overall Perspective on Architectural Choices
and Network Layer Support Issues”, Ad Hoc Networks, Vol 2,
2004, pp.23-44
[2] Paal E. Engelstad et al, “Name Resolution in on-demand
MANETS and over external IP Networks” IETF Internet Draft,
draft-engelstad-manet-name-resolution-01.txt, Jan 2004
[3] T. Clausen, P. Jacquet et al., “Optimized Link State Routing
Protocol”, IETF RFC 3626, October 2003
[4] J. Rosenberg et al., “SIP: Session Initiation Protocol”, IETF
RFC 3261, June 2002
[5] J. Rosenberg and H. Schulzrinne, “Session Initiation
Protocol (SIP): Locating SIP Servers”, IETF RFC 3263, June
2002
[6] H. Schulzrinne, “Dynamic Host Configuration Protocol
(DHCP-for-IPv4) Option for Session Initiation Protocol (SIP)
Servers”, IETF RFC 3361, August 2002
[7] Rajeev Koodli and Charles Perkins, “Service Discovery in
On-Demand Ad Hoc Networks”, draft-koodli-manet-servicediscovery-00.txt, IETF Internet Draft, 2003
[8] David B. Johnson and David A. Maltz, Dynamic Source
Routing in ad hoc Wireless Networks, in Mobile Computing,
edited by Tomas Imielinski and Hank Korth, Chapter 5, pages
153-181, Kluwer Academic Publishers, ISBN: 0792396979,
1996
[9] E. Guttman et al. “Service Location Protocol, Version 2”,
IETF RFC 2608, June 1999
[10] M. Chandra, “Extensions to OSPF to Support Mobile Ad
Hoc Networking”, IETF Internet Draft, draft-chandra-ospfmanet-ext-00.txt, February 2004
[11] Liang Cheng, “Service Advertisement and Discovery in
Mobile Ad Hoc Networks”, Workshop on Ad hoc
Communications and Collaboration in Ubiquitous Computing
Environments, in conjunction with the ACM 2002 Conference
on Computer Supported Cooperative Work, New Orleans,
Louisiana, USA, November 16-20, 2002.
[12] C. Perkins, E. Belding-Royer and S. Das, “Ad hoc OnDemand Distance Vector (AODV) Routing”, IETF RFC 3561,
July 2003.
[13] F Zhu, M Mutka and L Ni, “PrudentExposure: A Private
and User-centric Service Discovery Protocol”, Proceedings of
the Second IEEE International Conference on Pervasive
Computing and Communications, PerCom’04, Orlando, Florida,
USA, March 2004
[147] S Helal, N Desai, V Verma and C Lee, “Konark – A
Service Discovery and Delivery Protocol for Ad-hoc
Networks”, Proceedings of the Third IEEE Conference on
Wireless Communication Networks (WCNC), New Orleans,
March 2003
[15] S. Czerwinski et al, “An Architecture for a Secure Service
Discovery Service”, Mobicom’99, Seattle, Washington, USA,
Sept 1999.
[16] Y. Ge, L. Lamont, L. Villasenor, "Improving Scalability of
Heterogenous Wireless Networks with Hierachical OLSR",
OLSR Workshop, San Diego, Aug 2004
[17] A. Iwata, C.-C. Chiang, G. Pei, M. Gerla, and T.-W. Chen,
"Scalable Routing Strategies for Ad Hoc Wireless Networks"
IEEE Journal on Selected Areas in Communications, Special
Issue on Ad-Hoc Networks, Aug. 1999, pp.1369-79
[18] K. Xu, and M. Gerla, “A Heterogeneous Routing Protocol
Based on a New Stable Clustering Scheme”, IEEE MILCOM
2002, Anaheim, CA, Oct. 2002
[19] M Joa-Ng and I.-T. Lu, "A Peer-to-Peer zone-based twolevel link state routing for mobile Ad Hoc Networks" IEEE
Journal on Selected Areas in Communications, Special Issue on
Ad-Hoc Networks, Aug. 1999, pp.1415-25.
[20] C.-C. Chiang, H. Wu, W. Liu and M. Gerla, "Routing in
Clustered Multihop, Mobile Wireless Networks with Fading
Channel" Proc. IEEE SICON'97, Apr.1997, pp.197-211
Proceedings of the 3rd Int’l Conf. on Pervasive Computing and Communications Workshops (PerCom 2005 Workshops)
0-7695-2300-5/05 $20.00 © 2005 IEEE
Download