Re: [manet] DLEP-17: duplicate functions - Options & extensions negotiations

"Dearlove, Christopher (UK)" <chris.dearlove@baesystems.com> Thu, 10 December 2015 10:21 UTC

Return-Path: <chris.dearlove@baesystems.com>
X-Original-To: manet@ietfa.amsl.com
Delivered-To: manet@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A80ED1A896B; Thu, 10 Dec 2015 02:21:03 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.91
X-Spam-Level:
X-Spam-Status: No, score=-1.91 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, T_RP_MATCHES_RCVD=-0.01] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 9PTmHcz_5Bwq; Thu, 10 Dec 2015 02:21:00 -0800 (PST)
Received: from ukmta4.baesystems.com (ukmta4.baesystems.com [20.133.40.56]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id EB0341A8968; Thu, 10 Dec 2015 02:20:59 -0800 (PST)
X-IronPort-AV: E=Sophos;i="5.20,407,1444690800"; d="scan'208";a="19872043"
Received: from unknown (HELO baemasodc005.greenlnk.net) ([10.108.52.29]) by ukmta4.baesystems.com with ESMTP; 10 Dec 2015 10:20:58 +0000
X-IronPort-AV: E=Sophos;i="5.20,407,1444690800"; d="scan'208";a="126837261"
Received: from glkxh0005v.greenlnk.net ([10.109.2.36]) by baemasodc005.greenlnk.net with ESMTP; 10 Dec 2015 10:20:58 +0000
Received: from GLKXM0002V.GREENLNK.net ([169.254.5.210]) by GLKXH0005V.GREENLNK.net ([10.109.2.36]) with mapi id 14.03.0248.002; Thu, 10 Dec 2015 10:20:58 +0000
From: "Dearlove, Christopher (UK)" <chris.dearlove@baesystems.com>
To: Lou Berger <lberger@labn.net>, "draft-ietf-manet-dlep@ietf.org" <draft-ietf-manet-dlep@ietf.org>, MANET IETF <manet@ietf.org>
Thread-Topic: [manet] DLEP-17: duplicate functions - Options & extensions negotiations
Thread-Index: AQHRMrQsg/agj/RxDUmZYnE4zJhtUZ7D/oWw
Date: Thu, 10 Dec 2015 10:20:57 +0000
Message-ID: <B31EEDDDB8ED7E4A93FDF12A4EECD30D848E753E@GLKXM0002V.GREENLNK.net>
References: <56687ABA.803@labn.net>
In-Reply-To: <56687ABA.803@labn.net>
Accept-Language: en-GB, en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.109.62.6]
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable
Archived-At: <http://mailarchive.ietf.org/arch/msg/manet/FC99oZbecZ1zhncDVqv7MUHO4Qs>
Subject: Re: [manet] DLEP-17: duplicate functions - Options & extensions negotiations
X-BeenThere: manet@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Mobile Ad-hoc Networks <manet.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/manet>, <mailto:manet-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/manet/>
List-Post: <mailto:manet@ietf.org>
List-Help: <mailto:manet-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/manet>, <mailto:manet-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 10 Dec 2015 10:21:03 -0000

I commented (and so far I've had one comment on one detail I noted, nothing else) on that the draft makes reference to an extensions register, and then really doesn't specify it.

I think part of this issue is that what an extension is needs more specification.

Is an extension defined completely by a list of new messages and/or data items that it consists of?

If no, what else? (Yes of course a new message requires new processing, but is that fully defined by the message type?)

If yes, why not drop the extensions register, and just list the messages and data items directly? OK, then there's an issue of what needs listing? And then you end up at Lou's comment, just list everything you are using. (Which needs to interact correctly with indicating default values.)

This does depend on the yes/no question above - and I think that regardless, the draft needs to be clearer on what an extension is to allow it to be answered.

There might be an issue with listing lots of items. Except you need to do this anyway for default values if I understand correctly.



-----Original Message-----
From: manet [mailto:manet-bounces@ietf.org] On Behalf Of Lou Berger
Sent: 09 December 2015 19:02
To: draft-ietf-manet-dlep@ietf.org; MANET IETF
Subject: [manet] DLEP-17: duplicate functions - Options & extensions negotiations

----------------------! WARNING ! ---------------------- This message originates from outside our organisation, either from an external partner or from the internet.
Consider carefully whether you should click on any links, open any attachments or reply.
Follow the 'Report Suspicious Emails' link on IT matters for instructions on reporting suspicious email messages.
--------------------------------------------------------

*** WARNING ***
EXTERNAL EMAIL -- This message originates from outside our organization.


Authors/WG,

The current version of DLEP contains two negotiations as part of a Session Initialization transaction:
1) <Extensions Supported> is included in both the <Session
Initialization> and <Session Initialization Response> messages
2) the optional data items, <Resources> and <Relative Link Quality>

Both have parallel allocation policies:

   +-------------+-----------------------------------------------------+
   | Type Code   | Description                                         |
   +-------------+-----------------------------------------------------+
   | 0           | Reserved                                            |
   | 1           | Status (Section 10.1)                               |
     ...
   | 20          | Relative Link Quality (Transmit) (RLQT) (Section    |
   | 21-65407    | Reserved for future extensions                      |
   | 65408-65534 | Private Use. Available for experiments              |
   | 65535       | Reserved                                            |
   +-------------+-----------------------------------------------------+

                       Table 2: DLEP Data Item types

   +-------------+-----------------------------------------------------+
   | Code        | Description                                         |
   +-------------+-----------------------------------------------------+
   | 0           | Reserved                                            |
   | 1           | Credit Windowing                                    |
   | 2-65519     | Reserved for future extensions                      |
   | 65520-65534 | Private Use. Available for experiments              |
   | 65535       | Reserved                                            |
   +-------------+-----------------------------------------------------+

                       Table 4: DLEP Extension types

It seems to me that given the current definition, one of these two should suffice.  I don't have a strong opinion on which, but do strongly believe that a single approach should be selected to facilitate interoperability.

To be clear, the following spells out the options:

Option A: Extensions (aka capabilities) based
  Any optional or new data item or message would need to be indicated
  in <Extensions Supported> to be used.  To cover the current optional
  data items the following would need to be defined:
    | 1 | Resources |
    | 2 | Relative Link Quality |
    | 3 | Credit Windowing |
  <Session Initialization Response> could still contain the optional
  data items, if the corresponding type is present in <Extensions
  Supported>

  Note that other messages will still use optional data items.

Option B: Data item based.
  An optional or new data item must be both Session Initialization
  messages to be used. To allow/enable <Resources> and <Relative Link
  Quality>, they would need to be included in both the <Session
  Initialization> and <Session Initialization Response> messages.

  To enable the Credit Windowing extension, the three credit-related
  state items, <Grant>, <Window Status>, and <Request> would need to be
  included in both session init messages for the full extension to be
  used.

Option C: keep both
  Keep current text

While I like Option A and have seen similar approaches in other protocols, e.g., BGP Capabilities, I actually have a slight preference for B.  The reason for this is DLEP uses optional data items in other places and implementations will already need to handle this, so it seems like option B will probably require smaller incremental code.

Either way, I think Option C is much less desirable then either of the other options.

Thoughts? Opinions?

Lou

_______________________________________________
manet mailing list
manet@ietf.org
https://www.ietf.org/mailman/listinfo/manet


********************************************************************
This email and any attachments are confidential to the intended
recipient and may also be privileged. If you are not the intended
recipient please delete it from your system and notify the sender.
You should not copy it or use it for any purpose nor disclose or
distribute its contents to any other person.
********************************************************************