pper
ding
they
vice
' the
s at
ulti-
d at
stem
ister
d to
web-
date
o be
that
F SP.
>ptor
s in
gent,
will
f the
into
done
plete
back
roper
ll be
| the
; SP)
eptor
QoS
and
rvice
e the
ional
SR
oS &
| web
shall
f Pul
Store Va : # Fetch {QoS}
{QoS Parameters) Invoke Tr
e. e iDiscovered 9S Ust] A6
QoS Measurement Y \
A SRM. cd
{50AP Request & Response} LP [AY SS Fetch ( er UN
int . T ^ A déurionttak
shat (Funcriona Details) U N SD ue is
dscoveriqent SS
y “ invoke Result
j i i Y (QoS Parameters qu 5
i Service Provider(s) | ‘a a ; {Ranked WS list |
ieospatiai Web Servic i : v
Geospatiai Web Services i Oo : invoke md
i 1 : A
es I i Registration i (Funciona, QoS; f
Pa i Publish/ Update E web i (Functonai day | Service
Î {WSDL + Gas} » P — service Requester
i sencceRecphgent Registry /
wes i e Ba] Ga SER ee oos TETTE rT
t i 4 Invoke ul
iom m » {se Fie} m
——————— 3 A iscavery Request
Wd (^ fFunctiona, QoS tvith pnortyj]
; Fe Stores f AS
i * : Pacpégent
DE à {WSDL Parsing Results} asp
: 5
» EAN
Lim mar Mor nm nr m QU FON iren mme mim e ME Rm J
Figure 2. Automated End-to-End Multi-Agent QoS based Architecture
3.2 AMAQ Algorithms 3.2.3 QoSAgent
Input: acess url of web service.
The following algorithms were developed for realising the Output: QoS result
proposed architecture namely serviceRecpAgent, reqRecAgent,
QoSAgent, parseAgent, discoveryAgent and decisionAgent. Procedure: ; s
1) Loop (For each and every registered web service from
3.2.1 serviceRecepAgent UDDI)
Input: web service registration details, .wsd/ file, QoS details. a. À QoSAgent fetches acess url for web service.
Output: Stores the web service details. b. Send one request (data packet) to that URL and wait
Procedure: until it gets the response.
1) serviceRecpAgent gets the input from SP. c. Check the response code.
2) Stores the web service details to UDDI. i. IF response code = 1000 then IP-acess url is not
3) Invokes the parseAgent and QoSAgent. available. Then, service availibility — false.
ii. Else IF response code = 503 then IP-PORT is
available but the web service is not found on
that location. Then, service availibility — false.
iii. Else IF response code= 200 then web service is
3.2.2 parseAgent
Input: .wsd/ file.
Output: Parsing result.
Procedure: available. Then, service availibility = true.
l) parseAgent takes the input from the serviceRecpAgent.
2) For validation, this agent performs the following steps:
a. First it obtains a WSDLFactory instance via the static
newlnstance method of WSDLFactory as defined in
d. Calculates the service throughput from
service availibility.
e. Stores the QoS result in a QoS database.
JWSDL API. 3.2.4 reqRecAgent
b. Here, the purpose is only parsing the .wsd/ documents. Input: functional description for discovery, QoS details
So after creating an object, it uses newWSDLReader Procedure:
method, to create the desired object. Any JAXP or 1) reqRecAgent gets the input from service requestor.
JAXP-compliant XML parser can be used in the parsing 2) According to the requirement, it invokes the
of .wsdl documents. discoveryAgent.
¢. By using getBinding(), getPortType(),
getOperations(),getMessages() methods, parserAgent 3.2.5 discoveryAgent
i ; Input: Functional requirements, QoS requirements.
retrieves all the information. P q Q d
: . gs ; Output: Discovered web service list.
d. Any failure in the retrieving procedure, agent considers p
as invalid .wsdl otherwise valid .wsdl.
3) Stores the parsing results in the QoS database. D
Procedure:
discoveryAgent | gets the input from the
; ; m serviceRecpAgent.
4) In the case of invalid .wsdl, missing values or reason for Pag
invalidation will be displayed. And in the case of valid
wsdl, the wsdl details will be displayed.
2) Loop (For each and every registered web service from
UDDI)
a. Match the service details with requirements.
b. Check parsing results of the service.
231