3.2.5.2 Receiving a Route Check Connection Handshake message

When a Route Check Connection Handshake message arrives through a per-session TCP Socket and if the per-session Type field is not set to Unknown or the Handshaking field is not set, the sink MUST destroy the corresponding session and ignore the message.

Otherwise, the sink validates the fields in the Handshake header as per section 2.2.1.1. If the header contains an invalid value, the sink MUST destroy the corresponding Probe Session and ignore the message.

Next, the sink MUST clear the per-session Handshaking field. The Type field MUST be set to Route Check. The session MUST be added to Probe Session List. The Sequence Number field, the Consecutive Receives field, the Latest High Priority Train Size field, the Latest High Priority Sequence Number field, and the Oversized Packet field MUST be set to 0.

The sink MUST then send a Connection Handshake Success message back to the initiator. The sink now waits for a message to arrive in order to continue processing. At this point, the TCP Socket object is only used by the sink to send messages to the initiator.