PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote,...
-
Upload
kristopher-stevenson -
Category
Documents
-
view
221 -
download
0
Transcript of PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote,...
![Page 1: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/1.jpg)
perfSONAR Client ConstructionperfSONAR Client Construction
February 11th 2010, APAN 29 – perfSONAR WorkshopJeff Boote, Assistant Director R&D
![Page 2: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/2.jpg)
• Motivation• Types of Client Interaction
– Echo– MA
• MetadataKeyRequest• SetupDataRequest
– LS• XQuery• Discovery
• API Tour
2 – 04/19/23, © 2009 Internet2
Outline
![Page 3: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/3.jpg)
• Development of client applications is crucial to the success of perfSONAR– External applications will consume the measurement data– Researchers will find new users for performance measurements
through client applications• Client development requires knowledge of:
– Service operation– Framework interaction– Available APIs– Data formats
3 – 04/19/23, © 2009 Internet2
Motivation
![Page 4: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/4.jpg)
• There are different types of client interaction– Echo Request
• Check the ‘liveness’ of a service
– MA Specific Messages• MetadataKeyRequest
– Request a replayable ‘key’ to get measurement data
• SetupDataRequest– Request measurement data
– LS Specific Messages• Xquery
– Raw interface to LS databaes – using the XQuery interface
• Discovery– Structured discovery queries
4 – 04/19/23, © 2009 Internet2
Types of Client Interaction
![Page 5: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/5.jpg)
• The Echo request is a simple message that checks to be sure a service is ‘alive’.
5 – 04/19/23, © 2009 Internet2
Echo Request
![Page 6: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/6.jpg)
• Client must be prepared to:– Communicate with services using SOAP over HTTP– Send a request message to a given service URL– Parse the XML response from the service– Record the results of the Echo
• Success in the form of an EchoResponse• Failure in the form of an EchoResponse• Service timeout• Alternate response (anything but an EchoResponse message should
be viewed as a failure)
6 – 04/19/23, © 2009 Internet2
Echo Request
![Page 7: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/7.jpg)
7 – 04/19/23, © 2009 Internet2
Echo Request
![Page 8: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/8.jpg)
8 – 04/19/23, © 2009 Internet2
Echo Request
![Page 9: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/9.jpg)
• The MA derived services have two messages that are interest to client applications:– MetadataKeyRequest
• Given a (partial) metadata description, the service will check if this exists in the database
• If it does exist, return a replayable ‘key’ to have a fast access to measurement data
– SetupDataRequest• Given a (partial) metadata description, the service will check if this
exists in the database• If it does exist, return measurement data
9 – 04/19/23, © 2009 Internet2
Measurement Archive
![Page 10: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/10.jpg)
10 – 04/19/23, © 2009 Internet2
MetadataKeyRequest
![Page 11: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/11.jpg)
11 – 04/19/23, © 2009 Internet2
MetadataKeyRequest
![Page 12: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/12.jpg)
12 – 04/19/23, © 2009 Internet2
MetadataKeyRequest
![Page 13: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/13.jpg)
13 – 04/19/23, © 2009 Internet2
MetadataKeyRequest
![Page 14: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/14.jpg)
14 – 04/19/23, © 2009 Internet2
MetadataKeyRequest
![Page 15: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/15.jpg)
15 – 04/19/23, © 2009 Internet2
SetupDataRequest
![Page 16: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/16.jpg)
16 – 04/19/23, © 2009 Internet2
SetupDataRequest
![Page 17: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/17.jpg)
17 – 04/19/23, © 2009 Internet2
SetupDataRequest
![Page 18: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/18.jpg)
18 – 04/19/23, © 2009 Internet2
SetupDataRequest
![Page 19: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/19.jpg)
19 – 04/19/23, © 2009 Internet2
SetupDataRequest
![Page 20: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/20.jpg)
20 – 04/19/23, © 2009 Internet2
SetupDataRequest
![Page 21: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/21.jpg)
21 – 04/19/23, © 2009 Internet2
SetupDataRequest
![Page 22: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/22.jpg)
• Each message has the ability to apply what is called a ‘filter’. • Filters are a way to limit the returned data set:
– By Time– By Type (e.g. in the case of RRD data select which ‘consolidation
function’ is applied)• Filters are applied to a metadata in the message by using the ID
fields
22 – 04/19/23, © 2009 Internet2
Measurement Archive
![Page 23: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/23.jpg)
23 – 04/19/23, © 2009 Internet2
Measurement Archive - Filtering
![Page 24: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/24.jpg)
• Different measurement archives will have different metadata formats– SNMP MA
• Layer 3 Interface description– perfSONAR BUOY
• Endpoint pair (2 Layer 4 hosts)– PingER
• Endpoint pair (2 Layer 4 hosts)– Status MA
• Layer 3 or Layer 2 Interface description
• Consult the protocol and service documentation for specific formats
• Your client should be prepared to parse the XML to find useful information
24 – 04/19/23, © 2009 Internet2
Measurement Archive
![Page 25: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/25.jpg)
• Client must be prepared to:– Communicate with services using SOAP over HTTP– Send a request message to a given service URL– Parse the XML response from the service
• Be prepared to deal with key elements• Understand the data format of the returned measurement data
– In the event of an error:• Interpret a result code from the service• Fail gracefully
25 – 04/19/23, © 2009 Internet2
Measurement Archive Requests
![Page 26: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/26.jpg)
• The gLS and hLS have two messages that are interest to client applications:– LSQueryRequest (XQuery Based)
• The metadata subject will contain an XQuery statement• The XQuery will be applied to the Lookup database. • The success or failure will be passed back
– LSQueryRequest (Discovery Based)• A well formed metadata block will contain items to search for
– Domains– Keywords– IP Ranges– Data Types
• The summary database will be consulted• A list of services to consult further (either hLSs or services depending
if you asked at the gLS or hLS layer) will be returned
26 – 04/19/23, © 2009 Internet2
Lookup Service
![Page 27: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/27.jpg)
27 – 04/19/23, © 2009 Internet2
Lookup Service
![Page 28: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/28.jpg)
28 – 04/19/23, © 2009 Internet2
Lookup Service
![Page 29: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/29.jpg)
29 – 04/19/23, © 2009 Internet2
Lookup Service
![Page 30: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/30.jpg)
30 – 04/19/23, © 2009 Internet2
Lookup Service
![Page 31: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/31.jpg)
31 – 04/19/23, © 2009 Internet2
Lookup Service
![Page 32: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/32.jpg)
32 – 04/19/23, © 2009 Internet2
Lookup Service
![Page 33: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/33.jpg)
33 – 04/19/23, © 2009 Internet2
Lookup Service
![Page 34: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/34.jpg)
34 – 04/19/23, © 2009 Internet2
Lookup Service
![Page 35: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/35.jpg)
• There are several client APIs available in the perfSONAR-PS packages:– perfSONAR_PS::Client::Echo
• Package for performing echo tests against services
– perfSONAR_PS::Client::MA• Package for contacting any MA using general calls
– perfSONAR_PS::Client::PingER• Package for interacting with PingER servers
– perfSONAR_PS::Client::LS• Package for contacting the LS infrastructure, could be used for hLS or
gLS
– perfSONAR_PS::Client::gLS• Package for contacting the gLS infrastructure, could also be used to
contact hLS instances
35 – 04/19/23, © 2009 Internet2
API Tour
![Page 36: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/36.jpg)
perfSONAR Client ConstructionperfSONAR Client ConstructionFebruary 11th 2010, APAN 29 – perfSONAR WorkshopJeff Boote, Assistant Director R&D
For more information, visit psps.perfsonar.net
36 – 04/19/23, © 2009 Internet2
![Page 37: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/37.jpg)
• Module designed to send a simple EchoRequest to a given service
• Object Oriented• Built in use of:
– SOAP over HTTP transport– XML Parsing– Evaluation of result codes for success or failure
• More information available via perldoc
37 – 04/19/23, © 2009 Internet2
perfSONAR_PS::Client::Echo
![Page 38: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/38.jpg)
38 – 04/19/23, © 2009 Internet2
perfSONAR_PS::Client::Echo
![Page 39: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/39.jpg)
• Module designed to send a generic MetadataKey/SetupData requests to services
• Object Oriented• Built in use of:
– SOAP over HTTP transport– XML Parsing– Support for error codes
• General construction accepts XML for subjects– Requires that clients have knowledge of the service they are
contacting• Returns XML (metadata and data) in perl objects
– Requires clients to parse out much of the meaning• More information available via perldoc
39 – 04/19/23, © 2009 Internet2
perfSONAR_PS::Client::MA
![Page 40: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/40.jpg)
40 – 04/19/23, © 2009 Internet2
perfSONAR_PS::Client::MA
![Page 41: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/41.jpg)
• Module designed to send queries to PingER services• Object Oriented• Built in use of:
– SOAP over HTTP transport– XML Parsing– Support for error codes
• General construction accepts XML for subjects• Returns structured objects that contain data• Used in several GUI applications• More information available via perldoc
41 – 04/19/23, © 2009 Internet2
perfSONAR_PS::Client::PingER
![Page 42: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/42.jpg)
42 – 04/19/23, © 2009 Internet2
perfSONAR_PS::Client::PingER
![Page 43: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/43.jpg)
• Module designed to query (and perform other operations) on LS type services– Works with gLSs and hLSs
• Object Oriented• Built in use of:
– SOAP over HTTP transport– XML Parsing– Support for error codes
• Main query mechanism is to support arbitrary XQuery statements– Requires knowledge of XQuery to be effective
43 – 04/19/23, © 2009 Internet2
perfSONAR_PS::Client::LS
![Page 44: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/44.jpg)
44 – 04/19/23, © 2009 Internet2
perfSONAR_PS::Client::LS
![Page 45: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/45.jpg)
• Module designed to query gLSs, namely the discovery component– Will work on the summary set of an hLS also
• Object Oriented• Built in use of:
– SOAP over HTTP transport– XML Parsing– Support for error codes
• Supports both raw (XQuery type) operation as well as discovery queries:– IP Addresses– Domains– Data Types– Keywords
45 – 04/19/23, © 2009 Internet2
perfSONAR_PS::Client::gLS
![Page 46: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/46.jpg)
46 – 04/19/23, © 2009 Internet2
perfSONAR_PS::Client::gLS
![Page 47: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/47.jpg)
47 – 04/19/23, © 2009 Internet2
perfSONAR_PS::Client::gLS – cont.
![Page 48: PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.](https://reader036.fdocuments.net/reader036/viewer/2022062321/56649de65503460f94adfda5/html5/thumbnails/48.jpg)
perfSONAR Client ConstructionperfSONAR Client ConstructionFebruary 11th 2010, APAN 29 – perfSONAR WorkshopJeff Boote, Assistant Director R&D
For more information, visit psps.perfsonar.net
48 – 04/19/23, © 2009 Internet2