3.1 Example 1: Single Request/Response WSMAN Protocol Operations

Most of the operations that WM protocols carry out are comprised of a single request/response operation. The major actions that are performed in this scenario are retrieving data, modifying data, and invoking a method, as described in sections 2.5.2.2, 2.5.2.3, and 2.5.2.4. Multiple WM protocols can perform this operation; however, this example uses the WSMAN protocol. The communication flow of single request/response operations is specified in [MS-WSMAN] sections 4.1.1, 4.1.3, and 4.1.4.

Prerequisites

  • The WM application has to have a reference to a specific CIM instance.

  • The WM application has to have the data type for each property that is being modified.

  • The WM application has to have the intended value of each property that is being modified.

  • The WM application has to have the name of the method to be called, and the name and type of the method parameters.

Initial system state

None.

Final system state

The WM application has retrieved the CIM instance data, modified the CIM instance data, or invoked a method on the CIM instance.

Sequence of events

The following diagram shows the communication flow of request/response operations in the context of the system components, as described in section 2.1.5, using the Web Services Management Protocol Extensions for Windows Server 2003 protocol (WSMAN).

Communication flow in a single request/response operation

Figure 9: Communication flow in a single request/response operation

The following steps describe this sequence of events:

  1. Request: To initiate the action, the WM application sends a request through the component that implements the client role of the WSMAN protocol. The request contains the necessary information to determine which operation is being carried out, but the exact data and information is implementation-specific.

  2. Request: The WSMAN client role of the member protocol sends the supplied information to the WSMAN server role of the Web Services Management Protocol Extensions for Windows Server 2003 protocol. The exact format and data that is contained in this request depends on the particular operation that is being carried out.

    When the WM application retrieves data, the request contains the necessary routing information to direct the message to the correct endpoint and some identifier to locate the specific data that is being requested, such as a particular instance of a particular CIM class. For examples of the exact message content and format, see [MS-WSMAN] section 4.1.1.

    When the WM application modifies data, the request contains the necessary routing information to direct the message to the correct endpoint, some identifier to locate the specific data that is being manipulated, such as a certain property of a particular instance of a particular CIM class, and the new values of the modified properties. For examples of the exact message content and format, see [MS-WSMAN] section 4.1.3.

    When the WM application invokes a method, the request contains the necessary routing information to direct the message to the correct endpoint, some identifier to locate the specific method that is being invoked, such as a certain method of a particular CIM class, and any necessary parameters or variables that the method requires. For examples of the exact message content and format, see [MS-WSMAN] section 4.1.4.

  3. Request: The WSMAN server role of the MS-WSMAN protocol, on receipt of the request from the WSMAN client role, sends the request to the CIMOM. The CIMOM implementation dictates the format of this message. It is not specified by any member protocols. The message contains essentially the same information as the message in step 2, without the routing information that is used to direct the message to the WSMAN server role.

    The CIMOM performs an access check to determine whether the requesting client is authorized to perform the action. The authorization depends on the operations that are being carried out: retrieval of data requires access to the object(s) as specified in [MS-WMI] section 3.1.4.3.4, modification of data requires access to the object(s) as specified in [MS-WMI] section 3.1.4.3.12, and invocation of methods requires access to the object(s) as specified in [MS-WMI] section 3.1.4.3.22.

  4. Request: The CIMOM requests metadata from the CIM repository, such as the schema of the requested object(s) and any information that is necessary to locate the particular object(s). The CIMOM implementation dictates the format of this message. It is not specified by the member protocols.

  5. Metadata: The CIM repository returns the requested metadata to the CIMOM. The CIMOM implementation dictates the format of this message. It is not specified by the member protocols.

  6. Request: The CIMOM sends a message requesting object(s) from the Managed Objects. The CIMOM implementation dictates the format of this message. It is not specified by the member protocols.

  7. Results: The Managed Objects return the requested object data to the CIMOM. The CIMOM implementation dictates the format of this message. It is not specified by the member protocols.

  8. Results: The CIMOM responds to the WSMAN server role with the relevant information, based on the request that was issued.

  9. Results: The WSMAN server role of the WSMAN protocol sends the supplied information to the client role of the WSMAN protocol. The exact format and data that is sent depends on the type of operation that is being carried out.

    After the WM application requests to retrieve data, the response contains the necessary routing information to direct the message back to the client and the specific data that was requested, such as the property values of a particular instance of a particular CIM class. For examples of the exact message content and format, see [MS-WSMAN] section 4.1.1.

    After the WM application requests to modify data, the response contains the necessary routing information to direct the message back to the client, with either a simple notification of the success, or failure of the operation, or the actual data after the modification was applied, such as the changed property values of a particular instance of a particular CIM class. For examples of the exact message content and format, see [MS-WSMAN] section 4.1.3.

    After the WM application requests to invoke a method, the response contains the necessary routing information to direct the message back to the client, with either a simple notification of the success, or failure of the operation, or some particular return data that is relevant to the method that was invoked, such as the return value of a particular method of a particular CIM class. For examples of the exact message content and format, see [MS-WSMAN] section 4.1.4.

  10. Results: The WSMAN client role of the WSMAN protocol, on receipt of the response from the server role, delivers the response to the application. The message contains essentially the same information as the message in step 9, without the routing information that is used to direct the message to the server role.