Echo function for ISO 8473
obsoleted by
Extracted elements (23)
Code-path divergence is a central design concern: the echo path through a system must be identical or very close to the path used by normal data. An echo mechanism that succeeds or fails independently of the normal data path would not provide a useful diagnostic tool.
The entire echo-request PDU (header and data) is included in the data portion of the echo-reply so that fields such as the echo-request lifetime can be examined when the reply is received. This also ensures the record route recorded on the outbound path is not lost when the record route option is reset on the reply.
The short term approach uses ordinary DT PDUs with special NSAP selectors so that echo packets are indistinguishable from normal data PDUs and can be switched by routers that do not implement the echo function. This backward compatibility was the primary reason for adopting it as an Elective Internet Standard, even though it cannot be incorporated into future versions of ISO 8473.
Two implementation mechanisms are defined because backward compatibility is a major concern when changing a protocol. The short term approach produces packets compatible with existing ISO 8473 routers; the long term approach defines new PDU types that may be standardized by ISO as an addendum, at which point the short term approach would become obsolete.
Default NSAP selector values of 30 (echo-request) and 31 (echo-reply) are recommended to ensure interoperability as an interim measure until directory services become widespread. Choice of selectors is technically a local matter.
Systems that do not implement this memo will not generate echo-reply PDUs, but will still forward (switch) echo-request and echo-reply PDUs using the short term mechanism because those PDUs are indistinguishable from normal DT PDUs.
The long term mechanism's new PDU type codes (ERQ=30, ERP=31) are not compatible with the existing ISO 8473 standard and will not be forwarded by routers that do not implement the new types. This is acceptable only if ISO adopts the mechanism as an addendum.
For the short term mechanism, the selector field of the destination NSAP address in an echo-request PDU must contain the echo-request selector value, and the selector field of the source NSAP address must contain the echo-reply selector value.
If the error report flag is set and an echo-request is discarded, the associated ER PDU is sent to the echo-request source address on the originating machine. If an echo-reply is discarded, the ER PDU is sent to the echo-reply source address (generally the echo-request entity). The echo-request entity and originator are not required to process ER PDUs.
If the priority option is included in echo-request or echo-reply PDUs, it should normally be set to value 0 (default priority). The memo allows higher priority values but cautions against the practice.
The lifetime field of echo-request and echo-reply PDUs should be set to the value normally used for a DT PDU. The memo does not define a mechanism for varying the lifetime on the echo-reply and recommends using the normal DT lifetime value.
The mechanism for correlating multiple echo-requests and echo-replies between multiple processes on a single machine is a local matter and not defined by this memo. Multiple processes may simultaneously use the echo function.
The rules used for discarding a DT PDU (ISO 8473, sections 6.9–6.10) are applied when an echo-request or echo-reply PDU is discarded.
The source route option in ISO 8473 may cause packets to loop until lifetime expires. This memo recommends against use of the source route option in echo-request or echo-reply PDUs, and explicitly does not recommend automatically generating a source route on the echo-reply if a source route was used on the echo-request.
With two exceptions, all options present in the echo-request header are copied directly into the echo-reply header. The record route option is copied but its recorded routes are erased by resetting the second octet of the option to 3. The source route option present on the echo-request PDU is not copied into the echo-reply PDU.
The echo function for ISO 8473 consists of an echo-request entity that accepts an incoming echo-request PDU, performs processing, and generates an echo-reply PDU. The entity may be viewed as existing above the network layer or co-existing with it. The act of transmitting an echo-request PDU to a remote system is termed 'ping'.
The echo-reply PDU is a newly constructed PDU whose destination address is taken from the source address of the echo-request. The entire echo-request PDU (header and data) is included in the data portion of the echo-reply, allowing fields such as the echo-request lifetime to be examined upon receipt. Segmentation rules for DT PDUs apply.
The echo-request PDU is built with normal field values and the target system's NSAP address as the destination. It is switched through the network and, upon reaching the destination, delivered to the echo-request entity after normal input processing. Segmentation rules defined for DT PDUs also apply.
The long term mechanism defines two new ISO 8473 PDU types: ERQ (echo-request) with type code decimal 30, and ERP (echo-reply) with type code decimal 31. Except for the new type codes, these PDUs are identical to the DT PDU in every respect.
The short term mechanism uses a normal ISO 8473 DT PDU as both the echo-request and echo-reply PDU, distinguished only by a special NSAP selector value. The echo-request selector identifies echo-request PDUs; the echo-reply selector identifies echo-reply PDUs. These PDUs are indistinguishable from DT PDUs except for their NSAP selector.
Security issues are not addressed in this memo.
In the long term mechanism, the ERQ PDU type code is decimal 30 and the ERP PDU type code is decimal 31. Both PDUs are otherwise structurally identical to the ISO 8473 DT PDU.
The recommended default NSAP selector values (in decimal) for interoperability are: Echo Request Selector = 30, Echo Reply Selector = 31. These are local policy values but must be agreed upon for interoperability until directory services become widespread.