I've attached the client messages that I've been using in the early stages of a monitoring client. The general information flow goes:
1. Query the gLS for the hLS that knows about services with topology information about the domain: gls_topology_request.xml
2. Query the hLS for the TS that has topology information about the domain: hls_topology_request.xml
3. Query the TS for all topology in the TS (speeds up when there are numerous bits of information the client needs) topology_request.xml
4. Query the gLS for the hLS that knows about services with utilization information about the domain: gls_utilization_request.xml
5. Query the hLS for the MA that has utilization information about the domain: hls_utilization_request.xml
6. Query the MA for the utilization data about the interfaces from the topology: ma_utilization_request.xml
Without a live deployment of all the services, I've had to fudge some of the responses (normally they return no results for the queries).
Cheers,
Aaron