Monitoring API Overview
The Central Manager monitoring API communicates with the WAAS Central Manager to retrieve status information and monitoring statistics. This API does not allow device configuration.
The Central Manager monitoring API is a Web Service implementation. Web Service is defined by the W3C standard as a software system designed to support interoperable machine-to-machine (client and server) interaction over the network. The client and server communication follows the Simple Object Access Protocol or Service Oriented Architecture Protocol (SOAP) standard.
SOAP, which exchanges XML-based messages over the network using HTTP or HTTPS, is the foundation layer of the Web Service stack. It provides a basic messaging framework that allows more abstract layers to build on. SOAP encoding wraps XML headers and tags in a SOAP envelope.
To call a service, you connect to a particular Central Manager through a web browser by using a service URL that contains the IP address or hostname of the Central Manager and the name of the particular monitoring service (such as DeviceConf or TrafficStats). For example, https://<host/ip>:8443/ws/TrafficStats is the service URL for the Traffic Acceleration Service.
Next, you must post a SOAP request written in an XML format to retrieve the information. The request calls for a particular action (such as retrieveTrafficStats ) and contains the WS-Security header (username and password) and the input parameter content when required. The Central Manager responds with a SOAP envelope that contains the answer in an XML format. The response contains the output values for this action.
SOAP message exchanges follow the WS-Security specification. The WS-Security specification provides a Username Token mechanism to authenticate SOAP message exchanges.
The following example shows an XML-formatted SOAP request to perform the getAPIVersion action. There are no input parameters for this particular action. The example then shows the SOAP response that contains the output values for this action, such as the hostname, IP address, location, MAC address, and so forth.
Request
POST https://10.64.62.177:8443/ws/DeviceConf HTTP/1.1
Accept-Encoding: gzip,deflate
Content-Type: text/xml;charset=UTF-8
SOAPAction: "urn:getWANInfo"
User-Agent: Jakarta Commons-HttpClient/3.1
Host: 10.64.62.177:8443
Content-Length: 397
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header>
<wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:UsernameToken>
<wsse:Username>admin</wsse:Username>
<wsse:Password>default</wsse:Password>
</wsse:UsernameToken>
</wsse:Security>
</soapenv:Header>
<soapenv:Body/>
</soapenv:Envelope>
Response
HTTP/1.1 200 OK
Date: Mon, 15 Nov 2010 05:57:55 GMT
Server: Apache/1.3.41 (Unix) mod_ssl/2.8.31 OpenSSL/0.9.8g mod_jk/1.2.15 mod_auth_pam/1.0a
Transfer-Encoding: chunked
Content-Type: text/xml;charset=UTF-8
<?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><ns:getWANInfoResponse xmlns:ns="http://config.ws.waas.cisco.com" xmlns:ax22="http://io.java/xsd" xmlns:ax23="http://config.ws.waas.cisco.com/xsd" xmlns:ax21="http://rmi.java/xsd">
<ns:return type="com.cisco.waas.ws.config.Device">
<ax23:hostName>gowri-device-1</ax23:hostName>
<ax23:id>180</ax23:id><ax23:ipAddress>10.64.62.177</ax23:ipAddress>
<ax23:location></ax23:location><ax23:macAddress>00:21:5e:57:a7:2c</ax23:macAddress>
<ax23:model>OE674</ax23:model>
<ax23:name>gowri-device-1</ax23:name>
<ax23:role>Primary</ax23:role>
<ax23:softwareVersion>4.3.1.0.1</ax23:softwareVersion>
<ax23:status>Online</ax23:status>
<ax23:type>CM</ax23:type>
</ns:return><ns:return type="com.cisco.waas.ws.config.Device">
<ax23:hostName>datacenter-wae</ax23:hostName>
<ax23:id>345</ax23:id><ax23:ipAddress>192.168.3.2</ax23:ipAddress>
<ax23:location>datacenter-wae-location</ax23:location>
<ax23:macAddress>00:21:5e:57:a7:6a</ax23:macAddress>
<ax23:model>OE674</ax23:model>
<ax23:name>datacenter-wae</ax23:name>
<ax23:role>Application Accelerator</ax23:role>
<ax23:softwareVersion>4.3.0-npe</ax23:softwareVersion>
<ax23:status>Online</ax23:status>
<ax23:type>WAE</ax23:type>
</ns:return><ns:return type="com.cisco.waas.ws.config.Device">
<ax23:hostName>we-3900-1</ax23:hostName>
<ax23:id>323</ax23:id>
<ax23:ipAddress>10.64.62.167</ax23:ipAddress>
<ax23:location>we-3900-1-location</ax23:location>
<ax23:macAddress>88:43:e1:99:46:80</ax23:macAddress>
<ax23:model>Cisco (CISCO3945-CHASSIS) </ax23:model>
<ax23:name>we-3900-1</ax23:name>
<ax23:role>WAAS Express</ax23:role>
<ax23:softwareVersion>15.1(2)T2/1.1.0</ax23:softwareVersion>
<ax23:status>Online</ax23:status>
<ax23:type>WAE</ax23:type>
</ns:return></ns:getWANInfoResponse></soapenv:Body></soapenv:Envelope>
The Cisco WAAS Central Manager monitoring API consists of the following eight Web Services:
-
Device Configuration
-
Traffic Acceleration
-
CIFS
-
Video Stream
-
HTTP and HTTPS
-
MAPI
-
NFS
-
Events and Status
Administrators may control API access for a device or device group by configuring user authorization settings using the CLI or the Cisco WAAS Central Manager GUI. The authorization for a Web Service is implemented system wide as mandatory and at the service level as optional.