Hi,
I have a question about the proto draft. In section 7.12, the draft
says
"If the initiator does not receive an R2 message after I2_TIMEOUT time
after sending an I2 message it MAY retransmit the I2 message" and "Thus
the initiator SHOULD fall back to retransmitting the I1 message when
there is no R2 received after retransmitting the I2 message
I2_RETRIES_MAX times."
I am concerned about keywords MAY and SHOULD in section 7.12. If an
implementation decides not to implement these retransmissions, then
according to the protocol specification, the fall back to
retransmitting
I1 messages would never occur (because this SHOULD happen after
I2_RETRIES_MAX retransmissions of I2). If the I2 is not accepted by the
responder, and no retransmissions are sent, than the context would stay
in I2-SENT, and is never able to reach ESTABLISHED.
I think the host MAY retransmit I2 messages, but MUST fall back after a
certain amount of time, to avoid this deadlock situation. The same
applies for retransmitting I2bis messages.