You are on page 1of 15

Service Discovery in Mobile Ad hoc Network using SGrid Method

Seminar – III By
Ranade Shital B.
Under the Guidance of
Mr. M. E. Patil

Department Of Computer Engineering


Shram Sadhana Bombay Trust’s
College Of Engineering and Technology
Bambhori - Jalgaon (M.S.)
Term – III, 2010- 2011
CERTIFICATE
Certified that this M.E. Seminar – III Report titled “Service Discovery in Mobile Ad
hoc Network using SGrid Method” by “Ranade Shital B.” is approved by us for submissio
n. Certified further that, to the best of our knowledge, the report represents w
ork carried out by the student.

Guide
Head
Mr. M.E. Patil Dep’t. Of Computer Engg.

Principal
S.S.B.T’s COET
Bambhori, Jalgaon

Acknowledgement
I would like to thank for the help received from my respected seminar guide, Mr.
M.E. Patil whose guidance and encouragement contributed greatly to the successf
ul completion of this seminar. I also thank for the support of Head of the Compu
ter Department Mr. K.P.Adhiya.
I would like to thanks to all faculty members of Computer Engineering Department
and all friends for their co-operation and supports in making this seminar succ
essful.
I also thank my family for their moral support and encouragement to fulfill my g
oals.
Ranade Shital B.
Page Index
Topic Page No.
Abstract VII
1 Introduction 1
1.1 Mobile Ad hoc Network 1
1.2 Services in MANET 1
1.3 Challenges of Service Discovery 2
1.4 SGrid 3
2 Literature Survey 4
2.1 CentralisCe Centralized Approaches 4
2.2 Distributed Approaches 5
2.3 Geography based Content Location Protocol 6
2.4 Grid Based Approaches 6
3 Network Model And Grid Architecture 8
3.1 Protocol Overview 8
3.2 Network Model 9
3.3 Hierarchical Grid Architecture 10
4 Service Discovery Protocol 12
4.1 Directory Selection Phase 12
4.2 Service Register Phase 13
4.3 Service Discover Phase 15
5 Advantages and Disadvantages 17
6 Applications 19
Conclusion 20
6 Future Work 21
7 Bibliography 22

Figure Index
Topic Page No.
3.1 Protocol Overview 8
3.2 Zone with Z=1 to 2 and L=2 10
4.1 MANET with Grid and Head Selection 13
4.2 Grid level wise regions 14
4.3 Register pattern 14
4.4 Service Discovery 16
Abstract
The wireless network brings proper communication to people by connecting anytime
and anywhere. The traditional wired network cannot provide these. The Service D
iscovery in Mobile Ad hoc Networks (MANET) is a difficult task because of the ch
anging nature of such networks. Different services are available in MANET consid
ering time and location. Many varying traditional solutions to service discovery
of Internet are not well suited for MANETs because of their Ad hoc nature. This
seminar presents a strategy for service discovery protocol based on hierarchica
l grid architecture. The geographical area of a MANET is divided into a 2 Dimens
ional logical hierarchical grid. Each cell has a node as a directory. The servic
e provider registers their service information to directory in cell through part
icular transmission pattern. Service requestor discovers the service along direc
tory through transmission pattern. The advantage of this method is it reduces co
st and time for registering and discovering the service. Service request and dis
covery is firstly limited to cell.
Keywords: Mobile ad hoc networks (MANETs), mobile computing, service discovery,
Grid

Chapter 1
Introduction
1.1 Mobile Ad hoc Network
Wireless communications have become truly getting more importance in recent year
s, because of wireless technologies are evolving very rapidly. A wireless node h
as a basic properties like communication, routing, address allocation, name reso
lution and service discovery. These wireless nodes automatically form cooperativ
e infrastructures because ad hoc networks have no fixed infrastructure support.
Ad hoc network is a self organized network. Nodes have capability to arrange the
mselves. They are also dynamically reconfigurable wireless network without fixed
infrastructure or central management. Two neighboring nodes can communicate dir
ectly on the network when they are within transmission range of each other. Such
networks are suitable for emergency situations like natural disasters or milita
ry conflicts due to minimal configuration and quick deployment. MANETs have no f
ixed infrastructure support; therefore, wireless nodes automatically form cooper
ative infrastructures, i.e., the nodes agree to relay packets for each other. Ad
ditionally, wireless nodes have mobility capability so that they can freely join
or leave a MANET. Hence, the network topology of a MANET frequently changes. Ho
wever, traditional service discovery solutions, which are adopted in the Interne
t, are unsuited to MANETs because of their dynamic nature.
Service location, provision and access are also important regarding MANET. Netwo
rk comprises of heterogeneous devices and machines, but not everyone is capable
of being server. Service discovery is crucial operation for usability of MANETs.
Such network has to supply service discovery when a client wishes to access a s
ervice provided by a server.
1.2 Services in MANET
Services are routines that perform definitive jobs which processes over the netw
ork can be available to users. Service discovery involves advertisements, explor
ation and indexing of available services in a dynamic way. A service within netw
orks can be defined as any network or application level requirements of “interest” t
o user. Examples may include network services like printer, internet access, sec
ured database access, computational access etc; whereas application level servic
es may include multimedia content, sharing events, infotainment etc. Traditional
ly, the concept of services within a network has been limited to the hardware ut
ilities present within or outside the network that could be required to access o
ccasionally. These utility based “services” include printers, fax machines, data sto
rage devices, cameras, audio systems etc. However, as we move into the next gene
ration of hybrid pervasive computing, where handheld device marks a central poin
t of communication, different types of new (mainly application based) “services” hav
e emerged which require totally different considerations among different carrier
networks. Some of the emerging application based “services” include music/video, mc
ommerce, games, etc. [1]
Mobile nodes inside a MANET need to utilize services that are present on other m
obile nodes in the neighborhood. Many different routing protocols are available.
But these routing protocols are unsuitable for resource discovery since the des
tination address of the node containing the resource is not known.
1.3 Challenges of Service Discovery
The major challenges of service discovery in MANETs are as follows [2]:
• Discovery and indexing of resources available at sporadic, dynamic, and low capa
city nodes at index nodes with higher memory and processing power without advers
ely effecting activities of the MANET.
• Resource delivery to a wide spectrum of devices, regardless of their hardware ar
chitecture, software support, and browser constraints.
• Resource discovery servers should be able to provide relevant results based on t
he QoS requirements of the resource requester.
• Resource discovery supporting a wide range of applications, in areas as diverse
as military operations, rescue missions, pervasive computing and ambient intelli
gence.
• Enabling bridging of MANETs with infrastructure-based networks such as Intranet
and/or Internet. This facility will allow devices that are located in the MANET
to access services offered in the interconnected networks (Internet or Intranet)
, and devices located outside the network to discover services provided in the M
ANET.
1.4 SGrid
This seminar proposes an efficient service discovery protocol based on grid arch
itecture for MANETs called SGrid. Here the geographical area of a MANET is used.
Geographical Area is partitioned as a 2-D logical hierarchical grid [3]. This w
ork proposes a hierarchical mechanism for identifying its grid level. In each gr
id, a node will be selected as head and it also acts a directory that caches the
description of shared service in the grid. A transmitting pattern for registeri
ng and discovering service is used. It can reduce the consumption of resource an
d suitable for the large network scale. One provider registers its services to a
predefined trajectory to share services for other nodes. The trajectory crosses
the network center, and the directories on the trajectory have to cache the ser
vice descriptions. One requestor sends the register/discovery packets along the
predefined directions to discover service toward the center line of network whil
e it needs a service.
The rest of this seminar is organized as follows. Chapter II discusses the relat
ed work for Service Discovery. Chapter III describes the grid-based network mode
l and the overview of the proposed protocol. The proposed algorithm is described
in detail in Chapter IV. Chapter V presents the results of performance analyses
and simulations. Conclusions are drawn in Chapter VI.

Chapter 2
Literature Survey
In this chapter will see the different existing service discovery protoc
ols in MANET. Several service discovery protocols are currently being developed
and standardized by different industry consortiums and organizations. Service di
scovery, as defined in is the process of mapping a service description to a so c
alled service location. Service discovery in wireless networks has been classifi
ed into two types, centralized and decentralized. Centralized service discovery
is the one in which one dedicated server; named directory agent is responsible f
or registering and maintaining a database of all the services present within the
network nodes. These service providing network nodes are termed as service agen
ts. Every service request and response is routed through directory agent. In dec
entralized approach, also known as distributed service discovery, there is no de
dicated directory agent. The user agents repeatedly multicast their service requ
ests and the service agent that can offer the requested service unicasts a reply
message.
2.1 Centralized Approaches
Some conventionally adopted protocols, including Sun’s Jini [4], the service direc
tory service Universal Description, Discovery, and Integration [5], rely on a ce
ntral directory to register and discover services.
JINI system provides mechanism for service construction, lookup, communication a
nd use in a distributed system. Services in a Jini system communicate with each
other by using a service protocol, which is a set of interfaces written in the
Java programming language. Two examples of services are printing a document and
translating from one word processor format to some other.
UDDI Universal Description, Discovery and Integration define a universal method
for enterprises to dynamically discover and invoke Web services.
The information of available services is concentrated in directories. The servic
e advertisement is based on multicasting, and the service register is based on u
ni-casting. Centralized directory discovery is, in general, appropriate for Inte
rnet or wireless infrastructure-based networks, but such architecture is inappro
priate for MANETs because of their dynamic nature. Furthermore, the centralized
directory easily suffers from routing bottlenecks. Although this architecture ca
n create additional directories to solve the scalability problem, the constructi
on cost rises with the number of directories.
2.2 Distributed Approaches
There are different ways for overcoming drawbacks of centralized approach. Some
distributed approaches are explained here.
Microsoft’s Universal Plug and Play [6]. UPnP creates an open, flexible architectu
re for service discovery and control. It uses following
• Simple Service Discovery Protocol (SSDP)
• Generic Event Notification Architecture (GENA)
• Service Control Protocol Description (SCPD/DDD)
The IETF’s Service Location Protocol [7], has been developed to reduce the overloa
d of the centralized directory. The Service Location Protocol (SLP) provides a f
lexible and scalable framework for providing hosts with access to information ab
out the existence, location, and configuration of networked services. Traditiona
lly, users have had to find services by knowing the name of a network host (a hu
man readable text string) which is an alias for a network address. SLP eliminate
s the need for a user to know the name of a network host supporting a service.
Rather, the user supplies the desired type of service and a set of attributes wh
ich describe the service. Based on that description, the Service Location Pro
tocol resolves the network address of the service for the user. SLP provides a d
ynamic configuration mechanism for applications in local area networks. Applica
tions are modeled as clients that need to find servers attached to any of the av
ailable networks within an enterprise. For cases where there are many different
clients and/or services available, the protocol is adapted to make use of nearby
Directory Agents that offer a centralized repository for advertised services.
Such approaches are typically based on either pull- or push based broadcasting.
However, their major disadvantage is the frequent broadcast obstruction on the n
etwork.
To alleviate this problem on MANETs, the distributed service discovery protocol
has been developed to register the information of available services to a virtua
l backbone based on clustering. The cluster head acts as a directory for caching
the available service information. A virtual backbone is formed between these c
lusters. To register/discover services, every node constructs a multicast tree t
o link with the virtual backbone. In this protocol, every node needs to maintain
cluster and gateway information because of node mobility. Therefore, extra over
head is generated in maintaining the cluster and multicast tree.
2.3 Geography based Content Location Protocol
One geographical routing approach, which is called the Geography-based Content L
ocation Protocol (GCLP) [8], has recently been proposed for service discovery. G
CLP applies the physical location information to lower the amount of proactive t
raffic. The content location service allows a user host to locate a server that
can provide desired content “locating” a server can mean knowing its IP address, and
/or its physical location, whichever information is necessary to subsequently ro
ute requests from the client to the content server. Note that our content locati
on protocol does use physical location information. However, the routing protoco
l used to deliver requests from clients to servers may or may not use physical l
ocations (the two protocols can be independently designed). The proposed content
location protocol works best in dense networks. GCLP assumes that all devices i
n the network know their own physical location.
2.4 Grid Based Approaches
Grid’s Location Service (GLS) [9] provides position discovery for mobile nodes. GL
S is a new distributed location service which tracks mobile node locations. GLS
combined with geographic forwarding allows the construction of ad hoc mobile net
works that scale to a larger number of nodes. GLS is decentralized and runs on t
he mobile nodes themselves, requiring no fixed infrastructure. Each mobile node
periodically updates a small set of other nodes (its location servers) with its
current location. A node sends its position updates to its location servers with
out knowing their actual identities, assisted by a predefined ordering of node i
dentifiers and a predefined geographic hierarchy. Queries for a mobile node’s loca
tion also use the predefined identifier ordering and spatial hierarchy to find a
location server for that node. Every node periodically updates its current posi
tion to a set of directories without knowing the actual identity of directories.
The position update and query are assisted by a predefined node sequence and ge
ographical hierarchy.
Service Rings [10], a service ring ideally groups together devices that are both
physically close to each other and offer similar services. Each ring possesses
a designated service access point (SAP) which knows a summary about all services
offered within its ring. SAPs can be connected to a ring, too, which leads to a
hierarchical structure. Once service offers are organized this way, searching f
or services becomes considerably more efficient: Search messages are routed thro
ugh the rings and will descend into sub rings only if their SAP knows that the s
ervice might be offered within this particular sub ring. Thus, large parts of th
e network do not need to be visited at all, without having to fear that matching
services might be overlooked establishes hierarchical service ring architecture
. Every ring has a designated directory for caching the service information. The
directories are also linked to form high-level rings. Service discovery is perf
ormed along the ring level. However, routing maintenance in the ring is expensiv
e, particularly in a large network.
Lanes [11], which adopted a completely logical overlay structure. To solve probl
ems about the lack of fixed commonly known nodes and relatively extensive ping m
essages in MANETs, Lanes adopts any cast routing to send messages from one lane
to another. However, the communication between two neighboring lanes may cross t
he entire network.

Chapter 3
Network Model and Grid Architecture
This section presents a protocol overview, Network model adopted and the Hierarc
hical Grid Architecture.
3.1 Protocol Overview
Figure 3.1 Protocol Overview
This section presents an overview of service discovery protocol based on a grid
architecture called SGrid. Every node adopts the periodic “hello” mechanism to annou
nce its location, which is known via the Global Positioning System (GPS) or othe
r location-aware devices. Every node acquires one-hop neighbor information follo
wing a “hello” period. The position information is then transformed into a 2-D logic
al grid. One node is elected in each grid cell to cache the shared service descr
iptions.
A provider that wishes to share its service to the MANET registers the service a
long a register trajectory. The directories in the register trajectory need to c
ache the service description. A requestor that wishes to access a service first
checks whether it has the service information. If it does, the node requests the
service to the provider. Otherwise, it queries the directory in its cell about
the service information. If there is no any information in the directory, then i
t discovers the service along the discovery trajectory. The requestor obtains th
e reply as the discovery trajectory meets the register trajectory. Fig. 2 reveal
s that the node q obtains the service description from node r. The service descr
iption includes the information from provider p.
In this protocol, the register and discovery packets are not flooded to the enti
re network. Instead, the service is registered to the highest grid level along a
predefine trajectory. The requestor only discovers the service information towa
rd the maximum grid level. The predefine transmission trajectory can reduce unne
cessary communication cost. Additionally, the requestor can quickly discover the
service and efficiently decrease the discovery cost, because the maximum grid l
evel is at the center of the network. The service is registered along the grid l
evel, so this special registration route can make the node that is close to the
provider quickly find the service. Moreover, the service description is only cac
hed in the directories, thus lowering the storage cost.
3.2. Network Model
In this section, we present the network model and some notations that are used t
hroughout this paper. To be location-aware, each mobile host is equipped with a
positioning device such as a GPS receiver that can acquire its current location.
Protocol is utilized in a designated zone effectively, e.g. colloquium, zoo, bo
tanical garden, disaster area, down-town, great exhibition and metropolitan area
.
The geographic area of MANET is partitioned into 2D logical grids. Assume that e
ach grid is a square of size d×d. Suppose that the size of network is N×N grids. The
xy-coordinate of grid is grid(x, y). Given any physical location, there should
be a predefined mapping from the location to its grid coordinate. Assume that a
node knows the information about the scale of MANET. This information can be got
from a host node that knows the scale of MANET.
In each grid, there are three kinds of roles that are head, gateway and normal.
In a grid, a node will be selected as the head of grid. The responsibility of he
ad includes: (i) acting the directory that records the service descriptions with
in the grid, (ii) forwarding service discovery or service registration packets t
o neighboring grids, and (iii) maintaining routes which pass the grid. The gatew
ay nodes are only responsible for (ii) and all normal nodes are not responsible
for these jobs unless they are service provider of (ii) and service provider/see
ker of (iii).
Let R be the transmission distance of a radio signal and d be the side length of
grids. In a fixed zone, the relationship between the grid size and the total nu
mber of grid is an inverse proportion. When the grid size is set too small, ther
e will be many grids in a zone. For mapping from the location to grid coordinate
, we must predefine the relationship between d and R. Due to the communication r
ange of directory must be able to cover the whole grid, select the maximum value
of d, here, 2/Rd=. Similarly, a directory can communicate with any node in its
grid. In this restriction, the directory may be not direct to communicate with t
he one of neighboring grids. When a directory communicates with other directory
that is at neighboring grid, the communication must be via a relay node (gateway
).
For service registration and discovery, we maintain three tables that are neighb
or, service and route table in a mobile host. Neighbor table records that the in
formation includes xy-coordinate, state and node state of its neighbor grids. Se
rvice table records the service descriptions that are registered from providers.
The information about routing is recorded in a route table.
Some notations are used throughout this paper. grid(x, y) is the grid coordinate
, while x is grid x-coordinate and y is grid y-coordinate. Gn.x and Gn.y are the
grid xy-coordinate of node n in grid(x, y). Gn.xlv and Gn.ylv are the grid leve
l of Gn.x and Gn.y (to be discussed in Sect. 3.1). Gn.lv is the grid level of gr
id(x, y). n_region is the region of node n. Regn.td is the transmitting directio
n of register packet that is issued by provider n. 0 and 1, respectively, repres
ent that the register packet is transmitted toward horizontal and vertical.
3.3 Hierarchical Grid Architecture
In this subsection, we discuss a hierarchical grid architecture used for service
registration and discovery. Two terms, grid level (L) and zone size (Z), are us
ed to form hierarchical grid architecture. The level of grid is from 0 to L. A g
rid in level 0 is also named zone and the side length of zone is Z grids. The ne
twork is in N×N grids where N is set to (1+Z) × 2L−1. Fig. 1 illustrates an example wi
th different zone sizes, where the range of Z is from 1 to 2 and the value of L
is set to 2. This hierarchical grid architecture can easily adapt to the differe
nt network sizes.

Figure 3.2 Zone with Z=1 to 2 and L=2


The size of MANET can be well known and predefined, because MANET, in usual, is
used in a specific area or purpose. Assume that each node knows the values of L,
Z and the origin of the grid coordinates. When a node receives a physical locat
ion of its neighbors or itself, it can obtain the grid coordinate via a predefin
ed mapping. When a node knows the coordinate of grid, it can compute the level o
f grid by itself. Algorithm is applied on each node to obtain the grid level. Fo
r example, we have L = 2 and Z = 2. When node n knows that it is in grid(6, 4),
it has by Algorithm 1 Gn.xlv = 2, Gn.ylv = 0 and Gn.lv = 2. That is, the level o
f grid(6, 4) is 2.

Chapter 4
Service Discovery Protocol
This section presents the details of SGrid, including the directory selection, s
ervice register, and service discovery phase.
4.1 Directory Selection Phase
In each grid, select a head as directory to record the descriptions of shared se
rvice within the grid. Each node needs to know the information about its neighbo
rs. In order to keep the latest information about its neighbors, each node perio
dically broadcasts Hello message to its neighbors. The Hello message includes th
e node location and its state. The format of Hello message is Hello(id, x, y, st
ate, <NSL>), where id is unique ID of broad casting node; x, y are xy coordinate
; state is node state that are two states: Head (H) and normal (N); NSL indicate
s a node state list with eight node states in its neighbor grids. When a node re
ceives a Hello message from its neighbor, it records the information of Hello me
ssage into its neighbor table.
The eight node states in NSL are got from the neighbor table and they are arrang
ed in NSL according to the positions (directions) of grid as <northwest, north,
northeast, west, east, southwest, south, and southeast>. If there are more than
two nodes in a neighbor grid, select the state of head as the top priority. If n
o node is in a neighbor grid, the node state is set as NULL. An example shown in
Fig. 3(a), node A broadcast Hello(A, x, y, H, NSL<NULL, H, N, H, N, NULL, H, N>
) to its neighbors. When a head do communication with another head in its neighb
or grid but their distance is greater than 1 hop, the communication between them
must pass a relay node (gateway). The information of the gateway is obtained fr
om NSL of its neighbors’ Hello messages. In other words, when a head detects that
it cannot directly communicate with another head, it select a gateway from its n
eighbor table. For example as in Figure 4.1, node A wants to communicate with no
des B and C, it has to forward any packets. via nodes D and E, respectively

Figure 4.1 MANET with Grid and Head Selection


These nodes within the same grid can receive Hello messages for each other while
2/Rd=. A node can know the information of all nodes within same grid via the He
llo messages. How to do the selection process is described in below. When no hea
d was in a grid, a node in the center of grid selects itself to act a head as we
ll as utilizes Hello message to notify its neighbors. In Figure 4.1, node A is n
earby in the center of grid and no head exists; so, it selects itself to act a h
ead. Each node may be a mobility node in MANET, so we have to reselect other nod
e to act a head when the original head has moved out of the grid. In order to re
duce the overhead for head changing, other node will select itself as a new head
if the original head already left the grid or it has no enough resources to sup
port acting a head. When the original head has left the grid or does not act a h
ead, it forwards all cached service descriptions to the new head. This procedure
can guarantee that the cached service descriptions will not been lost in the gr
id. Node A has already left the center of grid but still in the grid, so node B
does not select itself as the new head. If node A has left from the grid, node B
selected becomes the new one.
4.2 Service Register Phase
In this subsection, we discuss how to register the shared services into network.
In the following discussion, the communication is focused on head layer. It mea
ns that we focus on the communication between heads (directories), but we do not
specify whether the trans mission passes a gateway. In order not to rely on bro
adcasting method, we employ a set of directories to cache the service descriptio
ns. The group of directories is in the center line of network in order to reduce
the cost of discovery and registration. We propose a transmission pattern to pr
edefine the registration path. When a service is shared by a provider, it is reg
istered to a set of directories along a registration path periodically. The regi
stration path is named registration pattern. Before we discuss the registration
pattern, we predefine the concept of region. Grid level lv divides the area into
4 regions as regions A, B, C, and D shown in Figure 4.2, which the value of L a
nd Z are both 2, e.g. the region B is located at north east of level lv.
Figure 4.2 Grid level wise Regions Figure 4.3 Registering P
attern
When a node is at the different region, its registration pattern has difference.
We separately discuss the registration pattern at grid level 0 and other level.
Two basic transmission directions are vertical and horizontal direction. When a
provider n wants to share its ser vices into MANET, it registers its service de
scriptions according to the predefined trans mission direction. The registration
packet includes the service descriptions, the transmission direction (Regn.td),
and designated nodes that must receive this packet. The registration pattern at
grid of level 0 has four types shown in Figure 4.3. A provider n at region A or
C of grid level 1 transmits the service descriptions toward horizontal directio
n (Regn.td = 0). If the provider is at region B or D of grid level 1, it transmi
ts the service descriptions to ward vertical direction (Regn.td = 1). When a hea
d receives a registration packet and it is the designated node but its grid leve
l is not 0, it caches the descriptions in its service table and continue to forw
ard this packet. If a non directory or non designated node receives this registr
ation packet, it just drops out the packet. The transmission direction of regist
ration packet is kept constant at the same level. When the packet is transmitted
from grid level lv to grid level lv+1, the head at level lv+1 varies the transm
ission direction. This process is repeated until the service is registered to th
e maximal level. In Fig. 5(a), grid(1, 7) is at region A of grid level 1, so the
first transmission direction of grid(1, 7) is the horizontal direction. When a
designated head in grid level 1 (e.g. grid(2, 7)) receives the service registrat
ion packet, it varies the transmission direction from the horizontal to vertical
direction. When the registration packet is transmitted to grid(2, 4) that is gr
id level 2, the transmission direction is varied from vertical to horizontal dir
ection. The grid at the registration pattern is named backbone grid that caches
service descriptions for discovery.
As mentioned above, we use the different registration patterns for each region a
t the same level on the Grid. This is because we distribute the registration to
different backbone nodes for reducing the overhead for each head as well as for
dispersing the registration loads to the different backbone. Based on these meri
ts, we can reduce the registration over heads and provide the high service disco
very chances as more as possible.
The first registration direction of other level grid except grid level 0 is alon
g the direction of same level. For example, a provider is in grid(2, 1) where th
e first transmission direction is the vertical direction. When a node in grid(2,
4) receives the registration packet, it varies the transmission direction from
the vertical to horizontal direction. When the situation is grid(x, y).xlv equal
to grid(x, y).ylv (e.g. grid(4, 4) or grid(2, 6)), the transmission direction o
f provider can be selected the horizontal or vertical direction. We define the t
ransmission direction as vertical direction in this paper, when a provider is in
a grid that grid(x, y).xlv equal to grid(x, y).ylv.
When a directory receives a registration packet that has same service descriptio
n by other provider, it first checks whether it has the same service description
in its service table or not. If the directory has the same service description,
it caches the service description in its service table but it does not forward
the packet to its neighbors. It is because that the same service description tra
nsmission will incur the redundant overhead. In other words, when a directory in
backbone has the same service description and receives the same ser vice descri
ption from other provider, it does not need to transmit the same service descrip
tion to its neighbors.
4.3 Service Discovery Phase
When a requester cannot find out a special service in its service table, it has
to do discover from MANETs. We also name this kind of requestor as seeker that i
ssues a discovery packet to query the directories along discovery pattern.
Figure 4.4 Service Discovery
The seeker designates the heads in its neighbor grids to receive and convey the
discovery packet along the transmission pat tern. When a head receives this quer
y, it checks whether it has the special service description in its service table
or not. If yes, it replies the information that includes the provider’s address a
nd position to the seeker. If no, it checks whether it is a designated node. If
no, it just drops the packet. If yes, it forwards the discovery packet along the
discovery pattern to the backbone. Here assume that each node knows the size of
network; so, it can compute and know the position of the highest level grid. Wh
en the discovery packet is forwarded to the backbone grids at the highest level
grid, it will stop to forward this packet. The range of discovery is confined to
a region of the highest grid level. An example of discovery is shown in Figure
4.4. There are two providers and two seekers in this network.
Chapter 5
Advantages and Disadvantages
This section presents the experimental results of our service discovery algorith
m SGrid. Four metrics for work are used: number of service directories, success
ratio, discovery overhead, and average delay time. Number of service directories
is used for estimating that how many nodes must to store one type of service. T
he success ratio is equal to the quantity to find the service requestor divided
by the quantity of total requestor. The discovery overhead is the amount of pack
ets used in the protocol including Hello messages. The average delay represents
that the time is required for a transmitted query to reach a directory and for t
he reply to return to the seeker. When a requester can find out the needed servi
ce in its service table, the delay time is set to 0.
The directories consume the storage and the energy, due to the needs to catch th
e service descriptions in their memory. However, the energy and storage are the
important and limited resources for mobile nodes. The service discovery should d
ecrease the resource consumption. SGrid does not need more directories to cache
the service descriptions when the density of the network becomes high. This is b
ecause of the grid structure and the head of backbone grids to act the directori
es. This way can steady the quantity of directory effectively. No matter how man
y nodes are in a grid, SGrid only needs a directory to cache the service descrip
tions. Therefore, the quantity of the directory is increased slightly when the n
umber of nodes increases. SGrid can reduce the consumption of resources effectiv
ely.
SGrid needs a little more discovery overheads because SGrid is in using fewer di
rectories to cache the service descriptions. When a requester cannot find out th
e cached service descriptions in its service table, it must issue discovery pack
ets to seek the directories. This kind of requestor is named seeker. The seeker/
requestor ratio of SGrid is high. This is because that SGrid utilizes the fewer
directories at the higher density network. The success ratio of SGrid is high be
cause the hollow regions exist in this network though the network connects each
other. SGrid can overcome this shortcoming in the low node density, because the
alternate grid is used to prevent the hollow region problem. The delay time is t
he transmission time for discovery.
The alternate grid in SGrid is used for solving the hollow region problem. For r
educing the overhead for each head and dispersing the registration loads to each
backbone, we use the different registration patterns for different regions. Tha
t is, we distribute the registration to different backbone nodes. In addition, t
he grid structure can reduce the number of directories that is used to cache the
service descriptions. Although the service descriptions are registered into the
backbone grids that are in the center line of network, the same service descrip
tion will not be registered to the centerline grids repeatedly. This way will no
t make the centerline grids increase too many burdens. Moreover, SGrid can reduc
e the number of directories but increase the success ratio of service discovery.
Chapter 6
Application
The network has to supply service discovery, whereas a client wants to access a
service provided by a server. Some of service discovery scenarios for MANETs are
described as follows.
• In MANETs, a network connection can be regarded as a service [10]. Only access p
oints can provide such a gateway service to the members of MANETs. The requestor
has to acquire this service using service discovery.
• In a mobile gaming environment, a player holds a wireless handheld device to joi
n a game session. Consequently, the game host is also viewed as a service. Addit
ionally, collaborative applications are also similar to such game services.
• For intelligent transportation systems [11], service discovery can assist users
to acquire real time trip tip and traffic data, including the traffic block, con
gestion information, accident information, and density information of streets, f
rom a real time information system. Additionally, wireless devices will form a p
art of basic equipment in cars in the near future. Service discovery between veh
icles is also supported by server and client based technologies.
• In electronic parking systems, service discovery can assist the driver in discov
ering the available parking place as a car enters a parking lot. The parking pla
ce is regarded as a service.
• Service discovery is also applied to commerce. For example, sellers provide info
rmation about goods for customers, who can obtain the information about goods of
interest to them using service discovery.
Mobile devices, in general, have functional limitations, including a smaller rad
io propagation range, bandwidth limitations, battery power consumption, and memo
ry capacity. To fully utilize equipment resources, a service discovery protocol
aims to minimize traffic and resource consumption. MANETs are typically applied
to small areas, e.g., battlefields and disaster rescue sites. With the popularit
y of wireless devices, MANETs are also applied to public places, including collo
quia, botanical gardens, exhibitions, and metropolitan areas.

Conclusion
This paper has proposed a service discovery protocol for MANETs called SGrid. Th
e proposed protocol raises the discovery ratio and lowers the discovery cost, in
cluding the control overhead and storage consumption. This protocol is designed
for MANETs in a fixed public area, e.g., a conference, exhibition, zoo, downtown
area, or metropolis. The service discovery is based on a virtual grid framework
that splits the public area into a hierarchical grid. Each node has its locatio
n information in terms of a location aware device. Every grid cell selects a dir
ectory that is responsible for caching the service register. Some nodes (provide
rs) provide service for other nodes (requestors). A provider registers its servi
ce along a predefined register trajectory. The service description is registered
to the center line of the network (i.e., the maximum grid level). When a reques
ter wants to access a service, it discovers the service toward the maximum grid
level. The requestor can obtain the reply from the directories. The discovery is
confined to a quarter area of the network. This paper has measured the performa
nce of protocols by analysis and simulation. There is performance improvement in
discovery success ratio, registered directory ratio, total control packets, and
discovery time.
Future Work

Bibliography
[1]. Vincent Lenders, M.M., Bernhard Plattner, "Service discovery in mobile ad h
oc networks: a field theoretic approach", in IEEE International Symposium on a W
orld of Wireless, Mobile and Multimedia Networks (WoWMoM). 2005.
[2]. F. Sailhan and V. Issarny, “Scalable service discovery for MANET,” in Proc. 3rd
IEEE International Conference Pervasive Computing, Kauai, HI, Mar. 2005, pp. 23
5–244.
[3]. W. H. Liao, Y. C. Tseng, K. L. Lo, and J. P. Sheu, “GeoGRID: A geocasting pro
tocol for mobile ad hoc networks based on GRID,” J. Internet Technol., vol. 1, no.
2, pp. 23–32, Dec. 2000.
[4]. K. Edwards and T. Rodden, Jini Example by Example. Englewood Cliffs, NJ: P
rentice Hall, Jun. 2001.
[5]. UDDI Version 3.0 Published Specification, Jul. 2002 [Online]. Available: ht
tp://www.uddi.org
[6]. “Universal plug and play device architecture,” UPnP Forum, Jun. 2000. Ver 1.0 [
Online] Available: http://www.upnp.org
[7] E. Guttman, J. Veizades, C. Perkins, and M. Day, REC 2608: Service Location
Protocol, Jun. 1999 Ver. 2.
[8]. J. B. Tchakarov and N. H. Vaidya, “Efficient content location in wireless ad
hoc networks,” in Proc. IEEE International Conference MDM, Berkeley, CA, Jan. 2004
, pp. 74 85
[9]. J. Li, J. Jannotti, D. De Couto, D. Karger, and R. Morris, “A scalable locati
on service for geographic ad hoc routing,” in Proc. 6th Annual International Confe
rence on Mobile Computation. Network, Boston, MA, Aug. 2000, pp. 120–130.
[10]. M. Klein, B. Konig Ries, and P. Obreiter, “Service rings A semantic overlay
for service discovery in ad hoc networks,” in Proc. 14th International Workshop D
atabase Expert System Application, Prague, Czech Republic, Sep. 2003, pp. 180–185
.
[11]. M. Klein, B. Konig Ries, and P. Obreiter, “Lanes: A lightweight overlay for
service discovery in mobile ad hoc networks,” Univ. Karlsruhe, Karlsruhe, Germany,
Tech. Rep. 2003 6, May 2003.

You might also like