Subject: [IPsec] Redundant IKE_SAs Issues

From: Jeffrey Sun <[email-masked]>
Date: Mon, 31 Mar 2008 09:00:19 -0700

All,
 RFC 4306 and RFC 4718 seems to contradict each other and I was hoping 
someone could provide clarification.  RFC 4306 - Section 2.8 talks about 
the resolving of redundant SAs through a Nonce Comparison test, and in a 
nutshell, the SA established with the lowest of the four nonces 
exchanged SHOULD be closed/deleted; note, the term "SA" was used and 
thus worded agnostic to IKE_SA or CHILD_SA.  RFC 4718 - Section 5.11.4 
seems to contradicts this by stating: "After the CREATE_CHILD_SA 
exchanges, three IKE_SAs exist between A and B; the one containing the 
lowest nonce inherits the CHILD_SAs."

RFC 4306 essentially states that the "losing" SA is the SA created with 
the lowest Nonce; RFC 4718 essentially states that the IKE_SA created 
with the lowest Nonce inherits the CHILD_SAs.  Why would one have the 
"losing" SA inherit the CHILD_SAs?  According to a thread created by 
Fukumoto Atsushi 
(http://www.ietf.org/mail-archive/web/ipsec/current/msg01859.html), Tero 
Kivinen comments in a reply that, by his interpretations, the "winning" 
IKE_SA is the IKE_SA that inherits the CHILD_SAs.

Also, the bis-003 document 
(http://www.ietf.org/internet-drafts/draft-hoffman-ikev2bis-03.txt) 
contains no specific reference or context to this at all, but may hint 
at the intent of what to do.  Specifically, Section 2.8.1 is labeled 
"Simultaneous CHILD_SA rekeying" and there is no equivalent 
"Simultaneous IKE_SA rekeying".  However, the way that 2.8.1 is worded, 
using the term "SA" rather than "CHILD_SA" alludes to the fact that 
Section 2.8.1 is SA agnostic.  If that is the case, the section should 
be renamed to "Simultaneous SA rekeying" instead.

Thanks in advance for the help.
 - Jeff Sun
_______________________________________________
IPsec mailing list
[email-masked]
https://www.ietf.org/mailman/listinfo/ipsec

---

From: <[email-masked]>
Date: Fri, 11 Apr 2008 12:26:14 +0300

Jeffrey Sun wrote:
> All,
>  RFC 4306 and RFC 4718 seems to contradict each other and I
> was hoping someone could provide clarification.  RFC 4306 - Section
> 2.8 talks about the resolving of redundant SAs through a Nonce
> Comparison test, and in a nutshell, the SA established with the
> lowest of the four nonces exchanged SHOULD be closed/deleted; note,
> the term "SA" was used and thus worded agnostic to IKE_SA or
> CHILD_SA.  RFC 4718 - Section 5.11.4 seems to contradicts this by
> stating: "After the CREATE_CHILD_SA exchanges, three IKE_SAs exist
> between A and B; the one containing the lowest nonce inherits the
> CHILD_SAs."

I think you've found a bug in RFC 4718 :-)

That sentence in RFC 4718 should probably say something like "After
the CREATE_CHILD_SA exchanges, three IKE_SAs exist between A and B.
Of the two new IKE_SAs, the one containing the lowest nonce is closed,
and the other one inherits the CHILD_SAs."

<snip>
> contains no specific reference or context to this at all, but 
> may hint at the intent of what to do.  

Yep, much of the RFC 4718 text about exchange collisions has not 
yet been included in IKEv2bis. 

(But the text is so complex that I doubt that many implementors will
get it right anyway -- this is something IKEv2 should have handled in
some different fashion, but it's too late to change now...)

Best regards,
Pasi