📄 rfc2188.txt
字号:
Provider | ESROS | | ESROS | Provider ------------------- ------------------- | | | | | | ------------------- ------------------- | UDP | | UDP | ------------------- ------------------- _ _/ _ _/ _ . _/ _ . .* . _/ . * .* . * . * Figure 1: ES Remote Operation ModelBanan, et. al Informational [Page 7]RFC 2188 ESRO September 1997 Invoker Performer ESRO SAP ESRO SAP | | | | ESROS-INVOKE.req. | | ESROS-INVOKE.ind. -------->-----------| |-------->--------- | | ESROS-INVOKE-P.conf.| | --------<-----------| | | | | | | | ESROS-RESULT.ind. | | ESROS-RESULT.req. --------<-----------| |--------<--------- | | | | ESROS-RESULT.conf. | |-------->--------- | | | | ESROS-ERROR.ind. | | ESROS-ERROR.req. --------<-----------| |--------<--------- | | | | ESROS-ERROR.conf. | |-------->--------- | | | | | | | | ESROS-FAILURE.ind. | | ESROS-FAILURE.ind. --------<-----------| |-------->--------- | | Figure 2: Time sequence diagram for ESRO services2 ESRO SERVICE DEFINITIONS ESRO service primitives are illustrated in Figure 2, Table 1 and Table 2. The description of services and primitives comes in the following sections. ESROS-User accesses ESRO services through Efficient Short Remote Operations Service Access Point (ESRO-SAP) as shown in Figure 2. The RESULT.request, ERROR.request and FAILURE.indication service primitives can be implemented in two different modes:Banan, et. al Informational [Page 8]RFC 2188 ESRO September 1997 1. Acknowledged Result, and 2. Non-Acknowledged Result _____________________________________________ | ESRO Service |Type | |________________|__________________________| | ESROS-INVOKE |Non-confirmed | | ESROS-INVOKE-P |Provider-initiated | | ESROS-RESULT |Confirmed / Non-confirmed | | ESROS-ERROR |Confirmed / Non-confirmed | | ESROS-FAILURE |Provider initiated | |________________|__________________________| Table 1: ESRO Services as described below. The difference between different modes is in their reliability of service and efficiency. Reliability of service is defined based on the understanding of invoker and performer about the success or failure of the operation on the peer side. Table 3 and Table 4 summarize understanding of performer about success or failure on invoker side in different situations. In these tables the FAILURE.indication refers to the primitive generated by protocol and not the failure of local provider.2.1 Acknowledged Result Service Mode In this service mode, the result is acknowledged by invoker, but the mechanism by which the acknowledgment is accomplished may not be reliable. Table 3 summarizes the relationship between performer and invoker in success and failure cases.2.1.1 Performer side In this type of service, the RESULT.confirm and ERROR.confirm primitives on performer side are generated if the result/error is acknowledged by invoker. The FAILURE.indication on performer side is generated if result/error is not acknowledged by invoker or if there is a local failure on performer side. >From the protocol point of view, the FAILURE.indication might be because either the result/error PDU or the ack PDU is lost. The outcome of this is that a FAILURE.indication is not robust as the operation may have been successful from the invoker's perspective. One method of compensating for this shortcoming is having the performer verify the FAILURE.indication in a separate operation.Banan, et. al Informational [Page 9]RFC 2188 ESRO September 1997 ____________________________________________________________ | Primitive |Parameters | |--------------------------+-------------------------------| | |Operation-value | | |Performer-address | | ESROS-INVOKE.request |Invoke-argument-encoding-type | | |Invoke-argument | |--------------------------+-------------------------------| | |Operation-value | | |Invoker-address | | ESROS-INVOKE.indication |Invoke-argument-encoding-type | | |Invoke-argument | | |Invoke-ID | |--------------------------+-------------------------------| | ESROS-INVOKE-P.confirm |Invoke-ID | |==========================================================| | | | | |Result-argument-encoding-type | | ESROS-RESULT.request |Result-argument | | |Invoke-ID | |--------------------------+-------------------------------| | |Result-argument-encoding-type | | ESROS-RESULT.indication |Result-argument | | |Invoke-ID | |--------------------------+-------------------------------| | ESROS-RESULT.confirm |Invoke-ID | |==========================================================| | | | | |Error-value | | |Error-argument-encoding-type | | ESROS-ERROR.request |Error-argument | |--------------------------+-------------------------------| | |Error-value | | |Error-argument-encoding-type | | ESROS-ERROR.indication |Error-argument | | |Invoke-ID | |--------------------------+-------------------------------| | ESROS-ERROR.confirm |Invoke-ID | |==========================================================| | | | | |Failure-value | | ESROS-FAILURE.indication |Invoke-ID | |__________________________|_______________________________| Table 2: ESRO service primitives and associated parametersBanan, et. al Informational [Page 10]RFC 2188 ESRO September 1997 ______________________________________________________________ |Service Mode |Performer |Invoker | |--------------------+-------------------+-------------------| |Acknowledged Result |RESULT.confirm |RESULT.indication | | |-------------------+-------------------| | |FAILURE.indication |RESULT.indication | | | (protocol) | | | |-------------------+-------------------| | |FAILURE.indication |FAILURE.indication | | | (protocol) | (protocol) | |____________________|___________________|___________________| Table 3: Success and Failure in Acknowledged Result Mode __________________________________________________________________ |Service Mode |Performer |Invoker | |------------------------+--------------------+-------------------| |Non-acknowledged Result |RESULT.confirm |RESULT.indication | | +--------------------+-------------------| | |RESULT.confirm |FAILURE.indication | | | | (protocol) | | +--------------------+-------------------| | |FAILURE.indication | | | |(protocol) | | | |does not |--- | | |exist | | |________________________|____________________|___________________| Table 4: Success and Failure in Non-acknowledged Result Mode2.1.2 Invoker side When invoker receives failure indication, the performer has the failure indication too. This type of service can be implemented by protocols based on 3-Way handshaking.2.2 Non-acknowledged Result In this service mode the result is not acknowledged. Table 4 summarizes the relationship between performer and invoker in success and failure cases.Banan, et. al Informational [Page 11]RFC 2188 ESRO September 19972.2.1 Performer side In this type of service, the RESULT.confirm and ERROR.confirm primitives on performer side are generated without receiving additional information from the invoker peer. In other words, these Primitives have no protocol-related meaning and convey no information, other than end-of-operation. The FAILURE.indication on performer side is not generated by protocol. The only case that can generate FAILURE.indication on performer side is local failure in service provider on performer side.2.2.2 Invoker side The FAILURE.indication on invoker side can be the resultof not receiving result/error/failure from peer performer or it can result from failure in local service provider. This type of service can be implemented by protocols based on 2-Way handshaking.2.3 Serialized Use of ESRO Services Although the ESRO Services are defined to support asynchronous operation invocation in general, they can be used in the special case of synchronous (serialized) mode too. The serialized use of ESRO Services is implementation specific. However, one of the possible scenarios is as follows:2.3.1 Invoker Invokes an operation after it receives either RESULT.indication, ERROR.indication, or FAILURE.indication for the previous operation.2.3.2 Performer Considers an operation to be complete and accepts the next operation after it receives RESULT.confirm, ERROR.confirm, or FAILURE.indication.Banan, et. al Informational [Page 12]RFC 2188 ESRO September 1997 Invoker Performer ESROS AP ESROS AP | | | | ESROS-INVOKE.req. | | ESROS-INVOKE.ind. -------->-----------| |-------->--------- | | ESROS-INVOKE-P.conf.| | --------<-----------| | | | ESROS-FAILURE.ind. | | --------<-----------| | | | Figure 3: Time sequence diagram for ESROS-INVOKE service2.4 ESROS-INVOKE Service
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -