Presentation is loading. Please wait.

Presentation is loading. Please wait.

PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D.

Similar presentations


Presentation on theme: "PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D."— Presentation transcript:

1 perfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D

2 Motivation Types of Client Interaction – Echo – MA MetadataKeyRequest SetupDataRequest – LS XQuery Discovery API Tour 2 – 8/28/2015, © 2009 Internet2 Outline

3 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 – 8/28/2015, © 2009 Internet2 Motivation

4 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 – 8/28/2015, © 2009 Internet2 Types of Client Interaction

5 The Echo request is a simple message that checks to be sure a service is ‘alive’. 5 – 8/28/2015, © 2009 Internet2 Echo Request

6 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 – 8/28/2015, © 2009 Internet2 Echo Request

7 7 – 8/28/2015, © 2009 Internet2 Echo Request

8 8 – 8/28/2015, © 2009 Internet2 Echo Request

9 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 – 8/28/2015, © 2009 Internet2 Measurement Archive

10 10 – 8/28/2015, © 2009 Internet2 MetadataKeyRequest

11 11 – 8/28/2015, © 2009 Internet2 MetadataKeyRequest

12 12 – 8/28/2015, © 2009 Internet2 MetadataKeyRequest

13 13 – 8/28/2015, © 2009 Internet2 MetadataKeyRequest

14 14 – 8/28/2015, © 2009 Internet2 MetadataKeyRequest

15 15 – 8/28/2015, © 2009 Internet2 SetupDataRequest

16 16 – 8/28/2015, © 2009 Internet2 SetupDataRequest

17 17 – 8/28/2015, © 2009 Internet2 SetupDataRequest

18 18 – 8/28/2015, © 2009 Internet2 SetupDataRequest

19 19 – 8/28/2015, © 2009 Internet2 SetupDataRequest

20 20 – 8/28/2015, © 2009 Internet2 SetupDataRequest

21 21 – 8/28/2015, © 2009 Internet2 SetupDataRequest

22 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 – 8/28/2015, © 2009 Internet2 Measurement Archive

23 23 – 8/28/2015, © 2009 Internet2 Measurement Archive - Filtering

24 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 – 8/28/2015, © 2009 Internet2 Measurement Archive

25 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 – 8/28/2015, © 2009 Internet2 Measurement Archive Requests

26 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 – 8/28/2015, © 2009 Internet2 Lookup Service

27 27 – 8/28/2015, © 2009 Internet2 Lookup Service

28 28 – 8/28/2015, © 2009 Internet2 Lookup Service

29 29 – 8/28/2015, © 2009 Internet2 Lookup Service

30 30 – 8/28/2015, © 2009 Internet2 Lookup Service

31 31 – 8/28/2015, © 2009 Internet2 Lookup Service

32 32 – 8/28/2015, © 2009 Internet2 Lookup Service

33 33 – 8/28/2015, © 2009 Internet2 Lookup Service

34 34 – 8/28/2015, © 2009 Internet2 Lookup Service

35 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 – 8/28/2015, © 2009 Internet2 API Tour

36 perfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D For more information, visit psps.perfsonar.net 36 – 8/28/2015, © 2009 Internet2

37 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 – 8/28/2015, © 2009 Internet2 perfSONAR_PS::Client::Echo

38 38 – 8/28/2015, © 2009 Internet2 perfSONAR_PS::Client::Echo

39 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 – 8/28/2015, © 2009 Internet2 perfSONAR_PS::Client::MA

40 40 – 8/28/2015, © 2009 Internet2 perfSONAR_PS::Client::MA

41 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 – 8/28/2015, © 2009 Internet2 perfSONAR_PS::Client::PingER

42 42 – 8/28/2015, © 2009 Internet2 perfSONAR_PS::Client::PingER

43 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 – 8/28/2015, © 2009 Internet2 perfSONAR_PS::Client::LS

44 44 – 8/28/2015, © 2009 Internet2 perfSONAR_PS::Client::LS

45 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 – 8/28/2015, © 2009 Internet2 perfSONAR_PS::Client::gLS

46 46 – 8/28/2015, © 2009 Internet2 perfSONAR_PS::Client::gLS

47 47 – 8/28/2015, © 2009 Internet2 perfSONAR_PS::Client::gLS – cont.

48 perfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D For more information, visit psps.perfsonar.net 48 – 8/28/2015, © 2009 Internet2


Download ppt "PerfSONAR Client Construction February 11 th 2010, APAN 29 – perfSONAR Workshop Jeff Boote, Assistant Director R&D."

Similar presentations


Ads by Google