Re: [Anima] Use of M_FLOOD for discovery of Proxy

Toerless Eckert <tte@cs.fau.de> Sat, 17 June 2017 00:01 UTC

Return-Path: <eckert@i4.informatik.uni-erlangen.de>
X-Original-To: anima@ietfa.amsl.com
Delivered-To: anima@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 5A0FD129536 for <anima@ietfa.amsl.com>; Fri, 16 Jun 2017 17:01:10 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.2
X-Spam-Level:
X-Spam-Status: No, score=-4.2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HEADER_FROM_DIFFERENT_DOMAINS=0.001, RCVD_IN_DNSWL_MED=-2.3, RP_MATCHES_RCVD=-0.001] autolearn=ham autolearn_force=no
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 24Y6xCtNlL5F for <anima@ietfa.amsl.com>; Fri, 16 Jun 2017 17:01:07 -0700 (PDT)
Received: from faui40.informatik.uni-erlangen.de (faui40.informatik.uni-erlangen.de [131.188.34.40]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 5465E128B51 for <anima@ietf.org>; Fri, 16 Jun 2017 17:01:07 -0700 (PDT)
Received: from faui40p.informatik.uni-erlangen.de (faui40p.informatik.uni-erlangen.de [IPv6:2001:638:a000:4134::ffff:77]) by faui40.informatik.uni-erlangen.de (Postfix) with ESMTP id 79A8658C4B2; Sat, 17 Jun 2017 02:01:02 +0200 (CEST)
Received: by faui40p.informatik.uni-erlangen.de (Postfix, from userid 10463) id 60E6DB0C2E0; Sat, 17 Jun 2017 02:01:02 +0200 (CEST)
Date: Sat, 17 Jun 2017 02:01:02 +0200
From: Toerless Eckert <tte@cs.fau.de>
To: Michael Richardson <mcr+ietf@sandelman.ca>
Cc: Anima WG <anima@ietf.org>
Message-ID: <20170617000102.GI20021@faui40p.informatik.uni-erlangen.de>
References: <149566389334.8737.940293315082013190@ietfa.amsl.com> <e24d09bd-9497-3066-7659-895c664bb248@gmail.com> <2540.1497281932@obiwan.sandelman.ca>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <2540.1497281932@obiwan.sandelman.ca>
User-Agent: Mutt/1.5.21 (2010-09-15)
Archived-At: <https://mailarchive.ietf.org/arch/msg/anima/ngfVdedyDGR8_1o9wMkUaObUU9E>
Subject: Re: [Anima] Use of M_FLOOD for discovery of Proxy
X-BeenThere: anima@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Autonomic Networking Integrated Model and Approach <anima.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/anima>, <mailto:anima-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/anima/>
List-Post: <mailto:anima@ietf.org>
List-Help: <mailto:anima-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/anima>, <mailto:anima-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 17 Jun 2017 00:01:10 -0000

On Mon, Jun 12, 2017 at 11:38:52AM -0400, Michael Richardson wrote:
[reordering]
> So, let's leave this part, which is
>     https://tools.ietf.org/html/draft-ietf-anima-bootstrapping-keyinfra-06#section-3.1.1

1. I think those sections are incorrect wrt to the GRASP format. Here is whats in BRSKI -06:

    proxy-objective = ["Proxy", [ O_IPv6_LOCATOR, ipv6-address,
    transport-proto, port-number ] ]

    ipv6-address       - the v6 LL of the proxy
    transport-proto    - 6, for TCP 17 for UDP
    port-number        - the TCP or UDP port number to find the proxy

The definition of M_FLOOD from grasp-13 is:

  flood-message =  [M_FLOOD, session-id, initiator, ttl,
                  +[objective, (locator-option / [])]]

  objective = [objective-name, objective-flags, loop-count, ?objective-value]
  objective-name = text ;see section "Format of Objective Options"
  objective-value = any

This means that we do not need to have a locator in the proxy objective because
the flood message already has the locator element outside the objective.

The second problem with -06 is that we need to be able to indicate different protocol
stacks, eg: TLS or (later) CoAP. 

In draft-carpenter-anima-ani-objectives, the proposal for the proxy-objective was therefore:

    assistant-objective = ["AN_join_assistant", F_SYNCH, 1, method]

    eg:
                          ["AN_join_assistant", F_SYNCH, 1, "BRSKI-TLS"]

Aka: The objective needs F_SYNCH, that standard objective parameter, the second parameter
is also mandatory loop-count (must be 1 for DULL)  and then "BRSKI-TLS" would be the value of
the proposed "method" parameter.

This is what i did put into the proposed -07 diffs that we are reviewing.

> {note subject line change}
> 
> Brian E Carpenter <brian.e.carpenter@gmail.com> wrote:
>     >> 3.1.1.  Proxy Discovery Protocol Details
>     >>
>     >> The proxy uses the GRASP M_FLOOD mechanism to announce itself.  This
>     >> announcement is done with the same message as the ACP announcement
>     >> detailed in [I-D.ietf-anima-autonomic-control-plane].
> 
>     bc> Can we make it:
> 
>     bc> This announcement SHOULD be done with the same message...
>     bc> That's only an optimisation, really.
> 
> Agreed.  I think we all agree that the announcement of the proxy
> (and the search for ACP peers) is something that M_FLOOD is good for.
>
> 
>     bc> (After the discussion back in Berlin, we added a feature to
>     bc> M_FLOOD to allow arbitrary locators to be attached to a given
>     bc> flood message. I thought that was what the BRSKI team wanted
>     bc> at that time. Seems not.)
> 
> yes, we asked for two locators to be attached to a flood message so that we
> could announce ACP and Proxy in the same message.  Given the experience
> with rate limiting that you experienced, this seems doubly prudent since
> this M_FLOOD will occur outside any ACP, and will have to traverse any
> number of layer-2 devices.
> 
> (This will be worse at the beginning of ANIMA deployment, as the layer-2
> devices will not be ACP aware, but will get better as more devices get with
> the program...)

2. If we send the M_FLOOD for BRSKI and ACP periodicially once every 30 seconds,
i don't think that we should be worried about sending one instead of two packets.

>From grasp-13 it seems that i can only put a single grasp-message into a single
UDP packets. And i can only put a single objective into a single grasp-message.

I don't think i want a single objective to announce both ACP and BRSKI. Those
are features of two different ASA. How would i implement this.

 
> As there is no dispute about it, I think.
> If it should be named AN_PROXY, that's fine.

i have no strong opinion about the term, you pick ;-).

Cheers
    Toerless
> 
> --
> Michael Richardson <mcr+IETF@sandelman.ca>, Sandelman Software Works
>  -= IPv6 IoT consulting =-
> 
> 
> 



> _______________________________________________
> Anima mailing list
> Anima@ietf.org
> https://www.ietf.org/mailman/listinfo/anima


-- 
---
tte@cs.fau.de