Subject: Re: [issue52] Association Setup Response Message: unclear use of SHOW

From: Robert Haas <[email-masked]>
Date: Wed, 13 Jul 2005 17:46:17 +0200

Here is how we should resolve this issue. I provided new text below. One 
last thing is what happens to the Result field in the Association Setup 
Response message (I'll open another tracker issue for that one and other 
results in general).

The Association Setup message (from FE to CE) may contain unsolicited 
GET-RESPONSE operations. The reason is to let the FE declare what its 
configuration paramaters are.

The Association Setup Response message (from CE to FE) may contain SET 
operations. The reason is to let the CE modifiy, for instance, the 
configuration parameters that the FE declared.

Only the FE Protocol LFB and the FE LFB may be targeted in the 
Association Setup messages, as the CE must first find out what are the 
available LFBs.

Proposed new text (changes highlighted with ">"):

6.4.1  Association Setup Message

   This message is sent by the FE to the CE to setup a ForCES
   association between them.  This message could also be used by CEs to
   join a ForCES NE, however CE-to-CE communication is not covered by
   this protocol.

   Message transfer direction:
      FE to CE

   Message Header:
      The Message Type in the header is set MessageType= 'Association
      Setup'.  The ACK flag in the header is ignored, because the setup
      message will always expect to get a response from the message
      receiver (CE) whether the setup is successful or not.  The Src ID
      (FE ID) may be set to O in the header which means that the FE
      would like the CE to assign a FE ID for the FE in the setup
      response message.

   Message body:
 >      The LFB selection may point to the FE Object and/or FE Protocol LFBs
 > and more than one attribute may be announced in this message using
 > GET-REPONSE to let the FE declare its configuration parameters in
 > an unsolicited manner.  The layout is:

   main hdr (eg type =  Association setup)
     |
     |
     +--- T = LFBselect
     |        |
     |        +-- LFBCLASSID = FE object
     |        |
     |        |
     |        +-- LFBInstance = 0x1
     |        |
 >     |        +--- T = Operation = GET-RESPONSE
     |             |
     |             +-- Path-data to one or more attibutes
     |                        including FE NAME
     +--- T = LFBselect
              |
              +-- LFBCLASSID = FE Protocol object
              |
              |
              +-- LFBInstance = 0x1
              |
 >              +--- T = Operation = GET-RESPONSE
              |
              +-- Path-data to one or more attibutes
                  including suggested HB parameters

     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |        Type = LFB select      |               Length          |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                 LFB Class ID = FE Object                      |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                        LFB Instance ID                        |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 >    | Type = operation GET-REPONSE  |               Length          |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                                                               |
    ~          Attributes path and data                             ~
    ~                                                               ~
    ~                                                               ~
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |        Type = LFB select      |               Length          |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                 LFB Class ID = FE  Protocol Object            |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                        LFB Instance ID                        |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 >    | Type = operation GET-REPONSE  |               Length          |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                                                               |
    ~                                                               ~
    ~          Attributes path and data                             ~
    ~                                                               ~
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                                  Figure 12

   Type (16 bits):
      LFB Select

   Length (16 bits):
      Length of the TLV including the T and L fields, in bytes.

   FE Object and Protocol LFBs:
      These contains the FE parameters e.g.  HBI will be exchanged with
      the CE using the FE Protocol LFB.

6.4.2  Association Setup Response Message

   This message is sent by the CE to the FE in response to the Setup
   message.  It indicates to the FE whether the setup is successful or
   not, i.e. whether an association is established.

   Message transfer direction:
       CE to FE

   Message Header:
       The Message Type in the header is set MessageType= 'Setup
       Response'.  The ACK flag in the header is always ignored, because
       the setup response message will never expect to get any more
       response from the message receiver (FE).  The Dst ID in the
       header will be set to some FE ID value assigned by the CE if the
       FE had requested that in the setup message (by SrcID = 0).

   Message body:
 >     The LFB selection may point to the FE Object and/or FE Protocol LFBs
 > and more than one attribute may be announced in this message.  The layout
 >      is:

   main hdr (eg type =  Association setup response)
          |
          |
          |
          +--- T = LFBselect
          |        |
          |        +-- LFBCLASSID = FE object
          |        |
          |        |
          |        +-- LFBInstance = 0x1
          |        |
 >          |        +--- T = Operation = SET
          |             |
          |             +-- Path-data to one or more attibutes
          |                        including FE NAME
 >[line removed]
          +--- T = LFBselect
                   |
                   +-- LFBCLASSID = FE Protocol object
                   |
                   |
                   +-- LFBInstance = 0x1
                   |
 >                   +--- T = Operation = SET
                      |
                      +-- Path-data to one or more attibutes
                          eg HB parameters
 >[line removed]

     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1

    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |        Type = LFB select      |               Length          |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                 LFB Class ID = FE Object                      |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                        LFB Instance ID                        |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 >    |        Type = operation SET   |               Length          |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                                                               |
    ~          Attributes path and data                             ~
    ~                                                               ~
    ~                                                               ~
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |        Type = LFB select      |               Length          |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                 LFB Class ID = FE  Protocol Object            |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                        LFB Instance ID                        |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
 >    |        Type = operation SET  |               Length          |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                                                               |
    ~                                                               ~
    ~          Attributes path and data                             ~
    ~                                                               ~
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                                   Figure 13

   Type (16 bits):
       LFB Select

   Length (16 bits):
       Length of the TLV including the T and L fields, in bytes.

   FE Object LFB:
       The FE parameters e.g.  HBI may be exchanged using this LFB.

   Result (16 bits):
       This indicates whether the setup msg was successful or whether
       the FE request was rejected by the CE.

Robert Haas wrote:

>New submission from Robert Haas <[email-masked]>:
>
>6.4.2  Association Setup Response Message
>
>
>I don't see why the CE has to SHOW attributes of the FE object/protocol 
>object. Are we really expecting a RESULT for the SHOW command of the FE-CE 
>message ?
>
>Message from CE to FE:
>
>   main hdr (eg type =  Association setup response)
>          |
>          |
>          |
>          +--- T = LFBselect
>          |        |
>          |        +-- LFBCLASSID = FE object
>          |        |
>          |        |
>          |        +-- LFBInstance = 0x1
>          |        |
>          |        +--- T = Operation = SHOW
>          |             |
>          |             +-- Path-data to one or more attibutes
>          |                        including FE NAME
>          |                        May contain RESULT TLVs
>          +--- T = LFBselect
>                   |
>                   +-- LFBCLASSID = FE Protocol object
>                   |
>                   |
>                   +-- LFBInstance = 0x1
>                   |
>                   +--- T = Operation = SHOW
>                      |
>                      +-- Path-data to one or more attibutes
>                          eg HB parameters
>                          May contain RESULT TLVs
>
>----------
>category: Technical
>draft: draft-ietf-forces-protocol
>messages: 109
>nosy: rha
>priority: Should fix
>status: No discussion
>title: Association Setup Response Message: unclear use of SHOW
>
>___________________________________________________
>Forces issue tracker <[email-masked]>
><http://www.mip4.org/issues/tracker/forces/issue52>
>___________________________________________________
>
>
>  
>

-- 
Dr. Robert R. Haas
IBM Zurich Research Laboratory
Säumerstrasse 4
CH-8803 Rüschlikon/Switzerland
phone +41-44-724-8698  fax +41-44-724-8578  http://www.zurich.ibm.com/~rha