Skip Navigation Links | |
Exit Print View | |
Remote Administration Daemon Developer Guide Oracle Solaris 11.1 Information Library |
Normal communication consists of an asynchronous exchange of messages: REQUESTs from the client to the server, RESPONSEs from the server to the client, and EVENTs from the server to the client.
A REQUEST is the rad equivalent of a low-level remote procedure call. It consists of a client-selected, non-zero serial number, an operation code, and an opaque, operation-specific, variable-length payload.
Table A-36 REQUEST
|
The server will respond to every REQUEST with a RESPONSE. A RESPONSE consists of the serial number of the corresponding REQUEST, an error code, and a response payload. If REQUEST succeeded, the error code will be EC-OK and the payload will contain the operation-defined payload data. Otherwise, the error code will reflect the type of failure and the payload will contain either the protocol-defined or object-defined error payload data.
Table A-37 RESPONSE
|
The rad protocol does not require the client to wait for a RESPONSE before sending another REQUEST. However, the server implementation might place limits on the number of outstanding requests that can be handled simultaneously. A client with an outstanding REQUEST must assume that a subsequent REQUEST will block until the RESPONSE from the outstanding REQUEST is read.
A client may (through a REQUEST) subscribe to asynchronous event sources. When an event occurs, the server will send an EVENT message to the client. An EVENT message will include the object ID of the source object, the time of the event, the name of the event, and an event-specific opaque payload. An EVENT message is distinguished from a RESPONSE by having a serial number of 0.
Table A-38 EVENT
|