next up previous contents
Next: Upper Interface Functions Up: ESRO Protocol Engine Previous: Overview and Concepts   Contents

Subsections


ESRO Service Primitives

This section describes the service primitives provided by the ESROP module, and the constraints on the sequence in which the ESROP primitives may occur. Each ESROP-User interacts with the ESROP module through one or more ESROP-SAPs.

The following is a list of ESRO service primitive names:


Table 2.1: ESRO Service Primitives
ESRO Service Primitives
ESROS-INVOKE.request
ESROS-INOVKE-P.confirm
ESROS-INVOKE.indication
ESROS-RESULT.request
ESROS-RESULT.indication
ESROS-RESULT.confirm
ESROS-ERROR.request
ESROS-ERROR.indication
ESROS-ERROR.confirm
ESROS-FAILURE.indication


The Neda ESROP upper interface conforms to the ESRO Service Definition [1]. The constraints on the sequence in which ESROP primitives may occur are explained in Reference [1].

SAP Management

An ESROP-User must create an ESROP-SAP before it can use any of the services provided by the ESROP module. Creation of an ESROP-SAP is accomplished through the ESROP_sapBind function. Parameters to ESROP_sapBind communicate to the ESROP module both an ESRO-SAP selector address and a set of functions for handling event primitives for that ESROP-SAP. ESROP event primitives are:

Deletion of an ESROP-SAP is accomplished through the ESROP_sapUnbind function. A summary of Neda ESROP-SAP management facilities follows.


Table 2.2: ESROS-SAP Management
Function Description
ESROP_sapBind Bind an ESROP-SAP and register an ESROP-User.
ESROP_sapUnbind Unbind an ESROP-SAP and deregister an ESROP-User.


Operation Invocation

The sequence of ESROP primitives in an OPERATION is illustrated in the time sequence diagram below.

Figure 2.2: Time sequence diagram for ESRO Services
Time sequence diagram for ESRO Services

To initiate an ESROP operation, the invoker ESROP-User entity issues an ESROS-INVOKE.request at the ESROP layer interface by invoking the function ESROP_invokeReq. The performer ESROP entity's ESROP-SAP is specified as one of the parameters of this action primitive.

The ESROS-INVOKE-P.confirm primitive is communicated to the invoker user through the return value/parameter of the ESROP_invokeReq function.

An ESROS-INVOKE.indication event primitive is generated at the performer ESROP entity's ESROP-SAP through the invocation of the (*ESROP_invokeInd)() function associated with the performer ESROP-SAP.

The performer ESROP-User can accept the operation and communicate the results by generating an ESROS-RESULT.request at the ESROP layer interface by invoking the function ESROP_resultReq. The performer ESROP-User can issue an ESROS-ERROR.request by invoking the function ESROP_errorReq.

An ESROS-RESULT.confirm or ESROS-ERROR.confirm event primitive is generated at the performer ESROP entity ESROP-SAP through the invocation of the (*ESROP_resultCnf)() or (*ESROP_errorCnf)() function associated with the performer ESROP-SAP.

An ESROS-RESULT.indication or ESROS-ERROR.indication event primitive is generated at the invoker ESROP entity ESROP-SAP through the invocation of the (*ESROP_resultInd)() or (*ESROP_errorInd)() function associated with the invoker ESROP-SAP.

A summary of all operation primitives appears below in Table 2.3:


Table 2.3: Service Primitives and corresponding functions
Service Primitive Name Neda Function Name Source
ESROESROS-INVOKE.request ESROP_invokeReq() Invoker user
ESROS-INVOKE-P.confirm Ret Val of ESROP_invokeReq() Provider
ESROS-INVOKE.indication (*ESROP_invokeInd)() Provider
ESROS-RESULT.request ESROP_resultReq() Performer user
ESROS-RESULT.indication (*ESROP_resultInd)() Provider
ESROS-RESULT.confirm (*ESROP_resultCnf)() Provider
ESROS-ERROR.request ESROP_errorReq() Performer user
ESROS-ERROR.indication (*ESROP_errorInd)() Provider
ESROS-ERROR.confirm (*ESROP_errorCnf)() Provider
ESROS-FAILURE.indication (*ESROP_failureInd)() Provider


The OPERATION may fail due to either the inability of the ESROS provider to transmit the INVOKE PDU or the unwillingness of the ESROS performer user to accept an ESROS-INVOKE.indication. These cases are described later in this chapter. The OPERATION may also fail as a result of the failure in delivery of RESULT or ERROR PDU. In such cases an ESROS-FAILURE.indication event primitive is issued at the invoker or performer ESROP-SAP through the invocation of the (*ESROP_failureInd)() function.


next up previous contents
Next: Upper Interface Functions Up: ESRO Protocol Engine Previous: Overview and Concepts   Contents