1 / 17

SLAC Web Service

SLAC Web Service. Paola Grosso (SLAC) Presented by Eric Boyd (Internet2). Monitoring data. The IEPM group at SLAC is monitoring network connectivity and End-to-end performance for sites involved in High Energy Nuclear and Particle Physics. At SLAC:

zwi
Download Presentation

SLAC Web Service

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SLAC Web Service Paola Grosso (SLAC) Presented by Eric Boyd (Internet2) SLAC Web Services

  2. Monitoring data The IEPM group at SLAC is monitoring network connectivity and End-to-end performance for sites involved in High Energy Nuclear and Particle Physics. At SLAC: IEPM-BW = monitors ~ 35 sites and analyzes the data for anomalies and variations. PingER = monitors ~300 sites and provides end-to-end performance statistics. SLAC Web Services

  3. Metrics http://www-didc.lbl.gov/NMWG/docs/draft-ggf-nmwg-hierarchy-02.pdf IEPM-BW • path.bandwidth.achievable.TCP (iperf) • path.bandwidth.achievable.TCP.multiStream (iperf, bbftp,GridFTP) • path.bandwidth.capacity (ABwE) • path.bandwidth.utilization (ABwE) PingER • path.delay.roundTrip (ping) SLAC Web Services

  4. IEPM-BW implementation Based on the Oct.2003 schema this has been our first production experience with Web Services. Provided us with experience in: • How to organize the data (storage in Oracle) • How to describe the service we provide in WSDL files • How to write server and clients code that access the data SLAC Web Services

  5. IEPM-BW clients We have regular clients of our service: • Monalisa V1.2 announced in Feb 6 is now providing modules to interface to IEPM-BW data via Web Services. • A SLAC demo client: • http://www-iepm.slac.stanford.edu/tools/web_services/soap/IEPM_client.html SLAC Web Services

  6. Monalisa and IEPM-BW SLAC Web Services

  7. PingER implementation New: PingER data available via Web Services. 30 days of PingER measurements from the SLAC monitoring node to sites around the world. Responses for PingER data is based on the 15 Jan 2004 report schema! SLAC Web Services

  8. PingER WSDL file This is where the service is described in term of: • provided operations: - PINGER#GetPathDelayRoundTrip • required inputs: • startTime • endTime • destination • provided output: • networkMeasurementSet http://www-iepm.slac.stanford.edu/tools/soap/wsdl/PINGER_profile.wsdl Not yet implemented according to the request schema. SLAC Web Services

  9. A PingER response results: resultSet: count: 20 timeInterval: timestampStart: 1076445224 timestampEnd: 1076449413 min: 49.924 max: 50.433 mean: 50.113 result1: delay: 50.113 timestamp: 1076446801 networkMeasurementSet: version: 1.0 networkMeasurement: characteristic: path.delay.roundTrip methodology: tool: name: ping parameterSet: packetTypeParam: ICMP packetSizeParam: 100 numPacketsParam: 20 subject: source: name: pinger.slac.stanford.edu address: host: 134.79.240.30 version: 4 destination: name: fnal.fnal.gov address: host: 131.225.9.20 version: 4 SLAC Web Services

  10. Report schema Some of the encountered problems…(repeating Warren) • How to indicate in a response missing data or incorrect inputs? We are using SOAP::Fault to convey this information to the client; • How to differentiate multiple measurements within the same resultSet? Perl implementation require this. • How to provide statistics for the single measurement in the same resultSet? PingER data in a long interval is a series of ping measurements, each with its own stats; • How to indicate disk and memory for a system? Les Cottrell’s studies indicate this as being an important quantity SLAC Web Services

  11. PingER SOAP client #!/usr/local/bin/perl –w use SOAP::Lite; use Data::Dumper; my $startDate = "2004-02-18T12:46:56"; my $endDate = "2004-02-19T12:46:34"; my $destination = "fnal.fnal.gov"; my $measurement = SOAP::Lite-> service('http://www-iepm.slac.stanford.edu/tools/soap/wsdl/PINGER_profile.wsdl') ->GetPathDelayRoundTrip($startDate,$endDate,$destination); print Dumper ($measurement); exit; SLAC Web Services

  12. PingER XML-RPC client #!/usr/local/bin/perl -w use XMLRPC::Lite+trace; use Data::Dumper; my $startDate = "2004-02-09T12:46:56"; my $endDate = "2004-02-09T13:46:34"; my $destination = "fnal.fnal.gov"; my $measurement = XMLRPC::Lite ->proxy('http://www-iepm.slac.stanford.edu/cgi-wrap/bbcp.cgi') ->call('PINGER.GetPathDelayRoundTrip',"$startDate", "$endDate","$destination") ->result; print Dumper ($measurement); exit; SLAC Web Services

  13. PingER Python SOAP client #!/usr/local/bin/python import SOAPpy url='http://www-iepm.slac.stanford.edu/tools/soap/wsdl/PINGER_profile.wsdl' proxy = SOAPpy.WSDL.Proxy(url) measurement = proxy.GetPathDelayRoundTrip('2004-02-10T12:33:44','2004-02-10T18:11:33','fnal.fnal.gov') print measurement SLAC Web Services

  14. Servers implementation SOAP server XML-RPC server • #!/usr/local/bin/perl • use SOAP::Transport::HTTP; • SOAP::Transport::HTTP::CGI • -> dispatch_to('PINGER') • -> handle; • ; • #!/usr/local/bin/perl • use XMLRPC::Transport::HTTP; • my $server = • XMLRPC::Transport::HTTP::CGI • -> dispatch_to('PINGER') • -> handle; • ; SLAC Web Services

  15. Server backend A Perl module that handles the incoming requests and interfaces to the database where the data is stored. The Perl module constructs the returned data (in Perl hashes), according to the schema. Note, we are not indicating the encoding in the SOAP::Data type… SLAC Web Services

  16. To do Our future plans: • Conform the request model to the most recent request schema; • Migrate the IEPM-BW Web Services to the new schema; • Looking for clients of the PingER service; • Export the web services model to other interested PingER sites. SLAC Web Services

  17. Conclusions Documentation: SLAC Web Services http://www-iepm.slac.stanford.edu/tools/web_services SLAC Web Services demo client: http://www-iepm.slac.stanford.edu/tools/web_services/soap/IEPM_client.html Contact us: Iepm-l@slac.stanford.edu SLAC Web Services

More Related