Title: MobileMAN Project Web Service in Ad Hoc Network
1MobileMAN ProjectWeb Service in Ad Hoc Network
- Veronica Vanni
- NETikos S.p.A.
2Summary
- Web Service definition
-
- Web Service in Ad Hoc Network
-
- Interaction between middleware and our
application -
- software Architecture
- - developed API
-
- - relational database model
3Web Services
- WS are services to build distributed
applications, to use methods and properties of
objects installed on other server -
- Each information system can publish contents
through WS -
- Each information system can use contents
published from other publisher -
- Use of UDDI (Universal Description Discovery and
Integration) to define a way to publish and
discover information about Web Services -
- Use of SOAP (Simple Object Access Protocol) to
access to remote services, defines a simple way
to package information to exchange across
systems. SOAP bindings to HTTP defines a way to
make remote procedure calls between systems.
based on XML, a neutral language to several
devices -
- WSDL (Web Service Description Language), in XML
format, that describes the content in terms of
methods, parameters, types and etc..
4Web Service Scenario
- The provider of services creates the service and
its WSDL description -
- The provider publishes its service in UDDI
-
- The user finds the services trying UDDI register
-
- The application connects to Web Services and
calls its operation via SOAP
5Use of Web Service
When a local client would invocate methods that a
remote server exported them
SOAP Request
Remote server
Gateway
SOAP Response
Exports the methods of a object (i. e. Method_i)
Calls the remote methods (i. e. Method_i)
6Web Service in Ad Hoc network
- In Ad Hoc Network, we take care of the features
of this type of network -
- No client-server application, but peer-to-peer
communications - Each node has an client side and server side
- Distributed database that stores information
relative on available services presented on the
network - to obtain overlay network of UDDI service we can
use Pastry or Cross-ROAD protocol
7Web Service in Ad Hoc network cont
API publishing
API inquiry
8Interaction between middleware and
applicationPossible Architectures
Legacy Architecture
MobileMAN Architecture
- WS application can exchange information with
other protocol through NeSt. - It can exploit CROSS-ROAD advantages simply
implementing the P2P common API
- With this same interface (P2P common API) WS can
interactive with Pastry on a classical legacy
architecture
9Software Architecture
user/provider Interface (jsp, html, cgi)
Application level
Publishing/inquiry API
UDDI4m db
Middleware level
P2P common API
10publishing/inquiry API
- publishing API
-
- void SaveBusiness (key KE)
- void SaveService (key KS)
- void SaveBinding (key KB)
- void SavetModel (key KtM)
void DeleteBusiness (key KE) void DeleteService
(key KS) void DeleteBinding (key KB) void
DeletetModel (key KtM)
Modify the UDDI registries
inquiry API void FindBusiness (key KE,
method_search ms) void FindService (key KS,
method_search ms) void FindBinding (key KB) void
FindtModel (key KtM)
Inquiry the UDDI registries
You can find business entity or service for Key,
if the key is known Keyword, if you want search
for keyword All, if you know all publisher or
services contained in the network
11Relational database model
tModelTmodel_keyNameDescription
Business_Entity businessKeyNameDescription Cont
act
1..n
- Database is in keeping with UDDI standard
-
- Business_Entity describes the publishers
- Business_Services describes the services
published from publishers in the network - Binding_Template describes the services in
technical features - tModel and tModel_Descr are template service
tModel_Instance_InfoBinding_KeyTModel_keyOverv
iew_urlInstance_parmsDescription
1..1
1..1
0..n
tModel_DescrTmodel_KeyClass_idCategory_id Kind
_id
1..1
Business_ServiceserviceKeybusinessKey NameDesc
ription
1..n
Class Tmodel_Key class_idName
1..1
1..1
CategoryTmodel_Key category_idName
Binding_Templatebinding_Keyservice_KeyDescript
ionAccess_Point_Url Access_Point_Type
Kind Tmodel_Keykind_idName
12Database model
Business_Entity Business_Entity Business_Entity
BusinessKey Name Description
BE200403161132 NETikos
Business_Service Business_Service Business_Service Business_Service
ServiceKey (PK) Businesskey Name Description
BS200403161140 BE200403161132 Content Sharing
BS200403161137 BE200403161132 Video/Conferencing
BS200403161212 BE200403161132 Chat
BindingTemplate BindingTemplate BindingTemplate BindingTemplate BindingTemplate
BindingKey ServiceKey Description Type_AP AccessPoint
BT200403161140 BS200403161140 .. HTTP http// mobileman.netikos.com/cgi- bin/SoapServer/content.cgi
13Database model cont.
tModel tModel tModel tModel
IdentifierBag Name Description OverviewDoc
TM200403161140 Content Sharing ..
Class Class
Class_id Name
2 ENTERTAINMENT
TModel_Descr TModel_Descr TModel_Descr TModel_Descr
IdentifierBag Class_id Category_id Kind_id
TM200403161140 2 4 1
TM200403161140 2 4 2
TM200403161140 2 4 3
Category Category
Category_id Name
4 Music
Kind Kind
Kind_id Name
1 POP
2 ROCK
3 CLASSIC
14Developments state
- The state of applications development is
-
- In the first time the publishing/inquiry API are
developed in perl language. The choose of perl
language is been made because its more flat than
use of java so its more useful on small
platforms - Then, the publishing/inquiry API are developing
in java language in order to optimize
middlewares interface (P2P commonAPI) - MySQL database is used to realize the UDDI
database - Configuration of laptop or desktop to run the
application