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

Nicolas Williams <Nicolas.Williams@sun.com> Wed, 09 April 2008 18:22 UTC

Return-Path: <anonsec-bounces@postel.org>
X-Original-To: ietfarch-btns-archive-waDah9Oh@core3.amsl.com
Delivered-To: ietfarch-btns-archive-waDah9Oh@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id B02943A68EF for <ietfarch-btns-archive-waDah9Oh@core3.amsl.com>; Wed, 9 Apr 2008 11:22:06 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.455
X-Spam-Level:
X-Spam-Status: No, score=-2.455 tagged_above=-999 required=5 tests=[AWL=0.144, BAYES_00=-2.599]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id xdaE8izfa73l for <ietfarch-btns-archive-waDah9Oh@core3.amsl.com>; Wed, 9 Apr 2008 11:22:05 -0700 (PDT)
Received: from boreas.isi.edu (boreas.isi.edu [128.9.160.161]) by core3.amsl.com (Postfix) with ESMTP id C9B7B28C221 for <btns-archive-waDah9Oh@lists.ietf.org>; Wed, 9 Apr 2008 11:22:05 -0700 (PDT)
Received: from boreas.isi.edu (localhost [127.0.0.1]) by boreas.isi.edu (8.13.8/8.13.8) with ESMTP id m39ID7cs012651; Wed, 9 Apr 2008 11:13:08 -0700 (PDT)
Received: from sca-ea-mail-4.sun.com (sca-ea-mail-4.Sun.COM [192.18.43.22]) by boreas.isi.edu (8.13.8/8.13.8) with ESMTP id m39ICeML012536 for <anonsec@postel.org>; Wed, 9 Apr 2008 11:12:41 -0700 (PDT)
Received: from dm-central-02.central.sun.com ([129.147.62.5]) by sca-ea-mail-4.sun.com (8.13.6+Sun/8.12.9) with ESMTP id m39ICeNi028629 for <anonsec@postel.org>; Wed, 9 Apr 2008 18:12:40 GMT
Received: from binky.Central.Sun.COM (binky.Central.Sun.COM [129.153.128.104]) by dm-central-02.central.sun.com (8.13.8+Sun/8.13.8/ENSMAIL, v2.2) with ESMTP id m39ICdfs044733 for <anonsec@postel.org>; Wed, 9 Apr 2008 12:12:39 -0600 (MDT)
Received: from binky.Central.Sun.COM (localhost [127.0.0.1]) by binky.Central.Sun.COM (8.14.1+Sun/8.14.1) with ESMTP id m39ICd7p006810; Wed, 9 Apr 2008 13:12:39 -0500 (CDT)
Received: (from nw141292@localhost) by binky.Central.Sun.COM (8.14.1+Sun/8.14.1/Submit) id m39ICd70006809; Wed, 9 Apr 2008 13:12:39 -0500 (CDT)
X-Authentication-Warning: binky.Central.Sun.COM: nw141292 set sender to Nicolas.Williams@sun.com using -f
Date: Wed, 09 Apr 2008 13:12:39 -0500
From: Nicolas Williams <Nicolas.Williams@sun.com>
To: Daniel Migault <daniel.migault@orange-ftgroup.com>, Daniel Migault <mglt.biz@gmail.com>, anonsec@postel.org
Message-ID: <20080409181238.GG16998@Sun.COM>
Mail-Followup-To: Daniel Migault <daniel.migault@orange-ftgroup.com>, Daniel Migault <mglt.biz@gmail.com>, anonsec@postel.org
References: <20080225093002.01ABB3A6CB2@core3.amsl.com> <c17ec2f80803132253k6442ec40m99be1872704f5c5a@mail.gmail.com> <20080407180003.GB16998@Sun.COM> <20080408173036.GS16998@Sun.COM> <47FCD94F.6040108@orange-ftgroup.com> <20080409155138.GC16998@Sun.COM> <20080409170021.GE16998@Sun.COM> <47FCFFEA.7020004@orange-ftgroup.com> <20080409173633.GF16998@Sun.COM>
Mime-Version: 1.0
Content-Disposition: inline
In-Reply-To: <20080409173633.GF16998@Sun.COM>
User-Agent: Mutt/1.5.7i
X-ISI-4-43-8-MailScanner: Found to be clean
X-MailScanner-From: nicolas.williams@sun.com
Subject: Re: [anonsec] I-D Action:draft-ietf-btns-connection-latching-06.txt
X-BeenThere: anonsec@postel.org
X-Mailman-Version: 2.1.6
Precedence: list
List-Id: "Discussions of anonymous Internet security." <anonsec.postel.org>
List-Unsubscribe: <http://mailman.postel.org/mailman/listinfo/anonsec>, <mailto:anonsec-request@postel.org?subject=unsubscribe>
List-Archive: <http://mailman.postel.org/pipermail/anonsec>
List-Post: <mailto:anonsec@postel.org>
List-Help: <mailto:anonsec-request@postel.org?subject=help>
List-Subscribe: <http://mailman.postel.org/mailman/listinfo/anonsec>, <mailto:anonsec-request@postel.org?subject=subscribe>
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: anonsec-bounces@postel.org
Errors-To: anonsec-bounces@postel.org

On Wed, Apr 09, 2008 at 12:36:33PM -0500, Nicolas Williams wrote:
> On Wed, Apr 09, 2008 at 07:42:02PM +0200, Daniel Migault wrote:
> > It sounds good for me, maybe we should also add dot lines with the 
> > CREATE_CONNECTION_LATCH function.
> 
> Consider it done.
> 
> > Can the LISTEN state be considered as something like a "larval state"? 
> 
> Yes.
> 
> > Should we introduce in the same manner a CONNECTION state so that 
> > listeners  and connections object have similar state architecture?
> 
> I guess I could.  I'll play with it.  This diagram is fairly busy though
> and I want to keep it simple.  It needn't capture every subtlety :)

OK, here it is.  I think this is as busy as I want the state machine
diagram to be.

                  :
          <CREATE_LISTENER_LATCH()>
                  :                  :
                  v                 <CREATE_CONNECTION_LATCH()>
             +--------+              :
      +------|LISTENER|........      :     +----------------------+
      |    : +--------+       :      :     |Legend:               |
      |    <conn. trigger event>     :     |  dotted lines denote |
      |   (e.g., TCP SYN receipt,    :     |     latch creation   |
      |    : connect() call)  :      :     |                      |
      |    :                  v      v     |  solid lines denote  |
      |    :               +-----------+   |     state transition |
      |    :        +------|ESTABLISHED|   +----------------------+
      |    :        |      +-----------+
      |    :        |         |     ^
      |    :    <conflict>    |     |
      |    :        |   <conflict> <conflict
      |    :        |         |     cleared>
      | <conflict>  |         v     |
      |    :        |    +--------------------+
      |    :........|...>|SUSPENDED (OPTIONAL)|
      |    :        |    +--------------------+
      |    :        v            |
      |    :      +------+       |
      |    :.....>|BROKEN|       |
      |           +-+----+   <RELEASE_LATCH()>
      |             |            |
      |   <RELEASE_LATCH()>      |
      |             |            v
   <RELEASE_LATCH()>|          +---------------------------------+
      |             |          |CLOSED (common to LISTENER and   |
      +-------------+--------->|        CONNECTION latches both) |
                               +---------------------------------+
_______________________________________________