[MEXT] about draft-ietf-mext-flow-binding-02.txt

marcelo bagnulo braun <marcelo@it.uc3m.es> Fri, 15 May 2009 23:44 UTC

Return-Path: <marcelo@it.uc3m.es>
X-Original-To: mext@core3.amsl.com
Delivered-To: mext@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id A70E128C1B8 for <mext@core3.amsl.com>; Fri, 15 May 2009 16:44:57 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -5.45
X-Spam-Level:
X-Spam-Status: No, score=-5.45 tagged_above=-999 required=5 tests=[AWL=1.149, BAYES_00=-2.599, RCVD_IN_DNSWL_MED=-4]
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 7tCcbgEoBfZo for <mext@core3.amsl.com>; Fri, 15 May 2009 16:44:56 -0700 (PDT)
Received: from smtp01.uc3m.es (smtp01.uc3m.es [163.117.176.131]) by core3.amsl.com (Postfix) with ESMTP id 24E2428C192 for <mext@ietf.org>; Fri, 15 May 2009 16:44:56 -0700 (PDT)
Received: from r190-135-70-238.dialup.adsl.anteldata.net.uy (r190-135-70-238.dialup.adsl.anteldata.net.uy [190.135.70.238]) by smtp01.uc3m.es (Postfix) with ESMTP id 65872B4EC21; Sat, 16 May 2009 01:46:23 +0200 (CEST)
Message-ID: <4A0DFECC.7030102@it.uc3m.es>
Date: Sat, 16 May 2009 01:46:20 +0200
From: marcelo bagnulo braun <marcelo@it.uc3m.es>
User-Agent: Thunderbird 2.0.0.21 (Macintosh/20090302)
MIME-Version: 1.0
To: "Tsirtsis, George" <tsirtsis@qualcomm.com>, Hesham Soliman <hesham@elevatemobile.com>, mext <mext@ietf.org>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
X-TM-AS-Product-Ver: IMSS-7.0.0.3116-5.6.0.1016-16644.003
Subject: [MEXT] about draft-ietf-mext-flow-binding-02.txt
X-BeenThere: mext@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Mobile IPv6 EXTensions WG <mext.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/mext>, <mailto:mext-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/mext>
List-Post: <mailto:mext@ietf.org>
List-Help: <mailto:mext-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mext>, <mailto:mext-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 15 May 2009 23:44:57 -0000

Hi,

Please find my comments about draft-ietf-mext-flow-binding-02.txt.



      Flow binding: An entry in the list of flow binding associated with
      a given mobile node.

circular definition, please rephrase.

      BID-PRI

         This is a 7-bit field placing each BID to a relative priority
         with other registered BIDs.  Value "0" is reserved for
         implementation of [I-D.ietf-monami6-multiplecoa] that do not
         support this specification.  A higher number in this field
         indicates lower priority,

Why is that? Is there a reason for having the higher value of a field 
called BID PRI to mean _lower_ priority or are we just trying hard to be 
counter intuitive?

same comment applies to:

      FID-PRI

         This is an 8-bit priority field to indicate the priority of a
         particular option.  This field is needed in cases where two
         different flow descriptions in two different options overlap.
         The priority field decides which policy should be in those
         cases.  A lower number in this field indicates a higher
         priority.

Later the drafts reads:

   The following values are reserved for the PRO field in this option:

      0 Add a flow binding

      1 Modify a flow binding

I haven't read the whole draft yet, but wouldn't make sense to avoid 
this option. I mean, if the FID is new, then we create a new binding and 
if the FID already exists, then it is a modification. I mean, the 
problem with doing the approach described is that it has the potential 
of creating contradictory situations... for instance what happens if we 
receive an option with a value of 0 in the PRO field but there is no 
existing binding with the BID? (I mean, i understand that the flow 
binding messages are atomic i.e. that each time w new one is received it 
not an incremental change from the previous one, but it contains the 
complete information about the binding, correct? If that is the case, we 
better simply create a new one, even if the sender thinks this is a 
modifciation, since the msg actually provides all the information for 
the creation of the flow binding, correct?)


later on the draft reads:

      1 Forward.  This value indicates a request to forward a flow to
      the address indicated in the Binding Reference sub-option.  A
      single BID MUST be associated with this Action.
...

      3 n-cast.  This value indicates a request to replicate the flow to
      several addresses indicated in the Binding Reference sub-option.
      One or more BIDs MUST be associated with this Action.


What is the difference between a n-cast value with a single BID and a 
Forward option? couldn't we just live with the n-cast option? (if it has 
only one BID, it has the same behaviour as the forward option?

LAter on it reads:

   It should be noted that per-packet load balancing may have negative
   impacts on TCP congestion avoidance mechanisms as it is desirable to
   maintain order between packets belonging to the same TCP connection.
   This behaviour is specified in RFC2702 [RFC2702].  Other negative
   impacts are also foreseen for other types of real time connections
   due to the potential variations in RTT between packets.  Hence per-
   packet load balancing is not currently supported in this extension.

I fully agree with this, but i fail to see why this is the correct place 
to mention this. It probably belongs to somewhere else. Probably, we 
should make even a stronger statement, i.e. the flow bindings separating 
the packets of a TCP connection SHOULD NOT be used.


   The binding identifier option, defined in
   [I-D.ietf-monami6-multiplecoa], registering a given BID which is then
   indicated in the Binding Reference sub-option, MUST be either defined
   in the same or earlier BU from the one including the binding
   reference sub-option. 

I think what this sentence means, but I fail to parse it properly. I 
would suggest rephrasing

4.3.  Flow Identification Summary Mobility Option

   TBD

I guess more text is needed here...

later on...

   The BIDs included in a given entry point to a corresponding entry in
   the binding cache for the purpose of identifying a care-of address.

is there a verb missing in this sentence?

later on

   Depending on the Action parameter in a given entry a valid BID is
   required to make the entry "active".

How is that dependent of the action paramter?
The text tha follows, seem to imply that an entry is active or inactvie 
depending on the BID not on the actions...

later on...

                       BID-PRI          BID        CoA
                      ---------         ---        ---
                          20             1         IP1
                          30             3         IP2
                          30             2         IP3

                            Ordered BID Entries

I would suggest moving this table right after the table describing the  
Ordered Flow Binding Entries

5.2.  Mobile Node Considerations

   This specification allows the mobile node to maintain several
   bindings in its home agent and to direct packets to different care-of
   addresses according to flow bindings.

I understnad that not only the HA maintains the bidnings but also the CN 
and the MAPs, so i think this should be included here.

   The home agent list of flow bindings is manipulated by the mobile
   node, via flow identification and flow summary options included in
   binding update messages.

similar comment here. It is not only the HA list of bindings, but also 
the CN and MAP list of bindings, right?

   All flow binding state MUST be refreshed in every binding update the
   mobile node sends.  Any previously registered flow binding that is
   not included in a given binding update will be deleted.  So, any flow
   bindings that are not added or modified by a flow identification
   option, but have previously registered and need to be maintained MUST
   be included in a flow summary option.  Only one flow summary option
   can be included in a given binding update.

So, i really fail to see why we need the PRO bits. I mean, if every tome 
we sent a BU it will contain all the info about all the bindings, it is 
irrelevant if the binding is being created or modified in the options, 
since we are including all the information anyway.

   Note that any inactive flow bindings, i.e., flow bindings without
   associated BIDs that are marked as Inactive in the list of flow
   binding entries (see Section 4.4, MUST also be refreshed, or
   modified, to be maintained.  If they are not included in a BU they
   will be removed.

closing bracket missing

5.2.4.  Removing flow bindings

   Removal of flow binging entries is performed implicitly by omission
   of a given FID from a binding update.

   To remove a flow binding the MN simply sends a binding update that
   includes flow identification and flow summary options for all the
   FIDs that need to be refreshed, modified, or added, and simply omits
   any FIDs that need to be removed.

what if the MN sneds a BUt wihtout the Flow binding option? are all the 
flow bidings removed?

   - if the Action indicates 'n-cast',

      If the Binding reference sub-option is not included, the home
      agent MUST reject this flow binding add request by copying the
      flow identification option in the BA, and setting the Status field
      to 129 (Flow identification option poorly formed).

      If the Binding Reference sub-option is present and includes BIDs
      that are not present in the binding cache of the mobile node the
      home agent MUST reject this flow binding add request by copying
      the flow identification option in the BA, and setting the Status
      field to TBD (BID not known).

      If the Binding Reference sub-option is present and includes one or
      more BIDs, and the BIDs exist in the mobile node's binding cache,

all the bods must exist? what if some exists and some don't?

later on...

   If the value of any of the FID fields included in the flow summary
   option is not present in the list of flow binding entries for this
   mobile node, the home agent MUST reject this flow binding modify
   request

is this option only carried in a modify request? I understood that also 
could be carried in an add request, correct?