In particular, for correctly handling a Query/Confirm pair of messages and
subsequent refreshes at a Responder which delays state installation, the NAO is
needed
a) in the Confirm - since this is the only source of the data which subsequent
refreshing Queries will be matched against. It will clearly be in untranslated
form in the Confirm.
b) in the Query - it is needed in translated form (to be able to provide a
response at all), but also in untranslated form, because this is what will be
matched against the stored data from the Confirm
Also, to validate that a Confirm is only being used to set up routing state
which has been probed by a Query, the Responder cookie should be bound to the
Q-Node NAO, again in untranslated form.
The conclusion of this is that the NAT Traversal object should carry the
untranslated (i.e. source) NAO as well as the untranslated MRI.
|