Subject: INIT received in COOKIE-WAIT or COOKIE-ECHOED State

From: JASKARAN SINGH <[email-masked]>
Date: Mon, 4 Feb 2002 16:30:55 -0400 (AST)

I am a little confused about how the duplicate INITs are supposed to be
resolved in a scenario of initialization collision. The RFC talks about it
as follows: 

"    5.2.1 INIT received in COOKIE-WAIT or COOKIE-ECHOED State
     (Item B)

   This usually indicates an initialization collision, i.e., each
   endpoint is attempting, at about the same time, to establish an
   association with the other endpoint.

   Upon receipt of an INIT in the COOKIE-WAIT or COOKIE-ECHOED state, an
   endpoint MUST respond with an INIT ACK using the same parameters it

   sent in its original INIT chunk (including its Initiation Tag,
   unchanged).  These original parameters are combined with those from
   the newly received INIT chunk.  The endpoint shall also generate a
   State Cookie with the INIT ACK.  The endpoint uses the parameters
   sent in its INIT to calculate the State Cookie.

   After that, the endpoint MUST NOT change its state, the T1-init timer
   shall be left running and the corresponding TCB MUST NOT be
   destroyed.  

   The normal procedures for handling State Cookies when a
   TCB exists will resolve the duplicate INITs to a single association. "

I am confused about the statement "normal procedures for handling State
Cookies when a TCB exists will resolve the duplicate INITs to a single
association." ? Does this refer to Table 2: Handling of a COOKIE ECHO when
a TCB exists ?

Any clarification will be highly appreciated.

cheers,
Jas.

---
You are currently subscribed to sigtran as: [email-masked]
To unsubscribe send a blank email to [email-masked]

---

From: <[email-masked]>
Date: Tue, 5 Feb 2002 13:04:19 +0200

Hi Jaskaran!
 
Yes, you are right... Those "State Cookies" are the COOKIE ECHO chunks, and thus Table 2.
 
So the point is that the peer will answer with a COOKIE ECHO to the INIT ACK chunk you are sending (in case the INIT chunk wasn't an old one). You will receive that COOKIE ECHO when already having a TCB, so, following section 5.2.4, you will realize that you are in the last row case, and thus will enter in the ESTABLISHED state if you haven't done it yet, without modifying anything else. If you were already in the ESTABLISHED state you will simply discard this COOKIE ECHO. Otherwise, it means that either you are in the COOKIE-ECHOED (and then you will discard the COOKIE ACK chunk when received), or the COOKIE-WAIT state (so you will discard the INIT ACK chunk). This way you end up having just one association.
 
However, section 5.2 has been modified due to some potential attacks. So you better check the Implementors Guide draft... :-/
 
I hope this helps!
 
PS: For SCTP questions, please use [email-masked] instead.
 
BR Iván Arias Rodríguez

-----Original Message----- 
From: ext JASKARAN SINGH [mailto:[email-masked]] 
Sent: Mon 2/4/2002 10:30 PM 
To: sigtran 
Cc: 
Subject: INIT received in COOKIE-WAIT or COOKIE-ECHOED State

	

	

	
	
	cheers,
	Jas.

	
	---
	You are currently subscribed to sigtran as: [email-masked]
	To unsubscribe send a blank email to [email-masked]

��آ�y˫���+.n�+�����"��ڝ���(-���j�!����+-�������{.n�+���zwZnV��隊[h��{�"��ڟ�:ӞF�\���碻^�w���(