[anonsec] I-D Action:draft-ietf-btns-connection-latching-06.txt

Nicolas Williams Nicolas.Williams at sun.com
Thu Apr 10 08:19:42 PDT 2008


On Thu, Apr 10, 2008 at 04:22:02PM +0200, Daniel Migault wrote:
> Maybe there is a solution to drop the  SUSPEND state and merge it with the
> BROKEN state by  considering different transition condition from ESTABLISHED
> to BROKEN.

That's exactly what I did:

   <CREATE_LISTENER_LATCH(3-tuple, ...)>
                  :
                  v    <CREATE_CONNECTION_LATCH(5-tuple, ...)>
             /--------\           :   :
      +------|LISTENER|......     :   :
      |      \--------/     :     :   :   +--------------------+
      |        :            :     :   :   |Legend:             |
      |        :            :     :   :   | dotted lines denote|
      |  <conn. trigger event>    :   :   |    latch creation  |
      |      (e.g., TCP SYN :     :   :   |                    |
      |       received,     :     :   :   | solid lines denote |
      |       connect()     :     :   :   |    state transition|
      |       called, ...)  v     v   :   |                    |
      |        :        /-----------\ :   | semi-solid lines   |
      |        :        |ESTABLISHED| :   |    denote async    |
      |    <conflict>   \-----------/ :   |    notification    |
      |        :         ^       |    :   +--------------------+
      |        :         |      <conflict>
      |        :    <conflict    |    :
      |        :     cleared>    |    :
      |        :    (OPTIONAL)   |    :
      |        :         |       v    v
      |        :      /----------------\
      |        :.....>|     BROKEN     |.-.-.-.-.-> <ALERT()>
      |               \----------------/
      |                       |
   <RELEASE_LATCH()>   <RELEASE_LATCH()>
      |                       |
      |                       v
      |                    /------\
      +------------------->|CLOSED|
                           \------/

> I don't think we have too many states, and I eventually would add  CONECTION
> larval state for LC objects. On the other hand, if I really had to drop one
> state I would rather drop larval state like the LISTEN state.

Check out the above diagram.  I think it's simple enough now.

Nico
-- 


More information about the ANONSEC mailing list