Re: [Anima-signaling] GRASP issue 51: Flooded objectives

Brian E Carpenter <brian.e.carpenter@gmail.com> Tue, 30 August 2016 20:21 UTC

Return-Path: <brian.e.carpenter@gmail.com>
X-Original-To: anima-signaling@ietfa.amsl.com
Delivered-To: anima-signaling@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C264412D752 for <anima-signaling@ietfa.amsl.com>; Tue, 30 Aug 2016 13:21:36 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.7
X-Spam-Level:
X-Spam-Status: No, score=-2.7 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
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 Xqla1yA3VgwQ for <anima-signaling@ietfa.amsl.com>; Tue, 30 Aug 2016 13:21:35 -0700 (PDT)
Received: from mail-pf0-x230.google.com (mail-pf0-x230.google.com [IPv6:2607:f8b0:400e:c00::230]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3395112D61D for <anima-signaling@ietf.org>; Tue, 30 Aug 2016 13:21:35 -0700 (PDT)
Received: by mail-pf0-x230.google.com with SMTP id y134so11202969pfg.0 for <anima-signaling@ietf.org>; Tue, 30 Aug 2016 13:21:35 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=subject:to:references:cc:from:organization:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=f20ELf7ZgtrkJTi3k7ZjOWJDs6wftcaHXVW+Ja7OEYc=; b=EYONzaTQzZ1SWwiDdhs4afq/gFn2ICUWoUN0vyiesETViI71W0mlQ3AOrQwpvs5Tci Taho3yHM+u0Knm636ThboXd1caguRkXsxut1rYzM3l+PL88lJJUyXnnP+Un609Hv337d xf0v9h9RJ9Z9/YinBU2QoCtW7b/0NP/Rme7sz2gmNNndxx9d2F1mb8AnprqU5FEDf1ji mAEVyFUgQMXFA4t5ikpInUvkpmy7z1gF8hfYpwRgD/VuoQ1Ycv2p8AVVJrMpb9w5tK1n feGQ/JpRnU829xH1oFMNKStL1vvcCg1xnr1noCDz6ZZo/MQApjYiDC9Wz8yepeEXwEcF Y7Uw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:subject:to:references:cc:from:organization :message-id:date:user-agent:mime-version:in-reply-to :content-transfer-encoding; bh=f20ELf7ZgtrkJTi3k7ZjOWJDs6wftcaHXVW+Ja7OEYc=; b=XeJqsGHFTrg4S72I3705dl3nSAKf0Z8a/beYRgCYxB2gZf0CI1tzg/mwh63KNvpaHm vSSh7+DcJP6l/UAVw809943x264ZE7PMNG3y22XSIa8qqSvJl3nKA7fD1VwI65GIoT7m rQqf5b6sK5Ba4bZRNHBvYhyqan14LyvxCWDY2BIhTPkiJeMjZFMmWPjUkq3fb/u68Ljo 23TF29P2arVHfXe2C1tuhCxeN2uifQ6NiQrC1pZhi3sGF1bBbeEv5545WyGwQfFmd5SU YmqM8ewvPNihJqZ0AuVf47DG1MEv4SeqLW+MuJ+aW4OHjWkzVACziLkRBWwlbZw8m8ve JA3w==
X-Gm-Message-State: AE9vXwMtNO+4JrfeQnHXCsxWYzQ7yRGTncSr+nUXodATRwI8WILoO2ETVL6rcoEZX6svtQ==
X-Received: by 10.98.59.205 with SMTP id w74mr9742165pfj.156.1472588494771; Tue, 30 Aug 2016 13:21:34 -0700 (PDT)
Received: from ?IPv6:2406:e007:7980:1:28cc:dc4c:9703:6781? ([2406:e007:7980:1:28cc:dc4c:9703:6781]) by smtp.gmail.com with ESMTPSA id l82sm59239270pfk.8.2016.08.30.13.21.31 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 30 Aug 2016 13:21:33 -0700 (PDT)
To: "Michael Behringer (mbehring)" <mbehring@cisco.com>, "Toerless Eckert (eckert)" <eckert@cisco.com>
References: <47c158b3-92f4-8a36-1bc1-c5c19afdc6b3@gmail.com> <20160801085529.GT21039@cisco.com> <97815aec-a36f-8dda-6798-eb0c1c5eda17@gmail.com> <20160805083457.GH21039@cisco.com> <f541b926-cde7-db52-a0fa-226761d0c3c8@gmail.com> <20160808140326.GA6295@cisco.com> <a09050d0-ce14-d628-13b6-28e73a79d238@gmail.com> <20160809063909.GZ21039@cisco.com> <22940237-a706-2ceb-9c54-ded4585f4521@gmail.com> <39b34ac12f0d433b8d1ae558d3c03509@XCH-RCD-006.cisco.com>
From: Brian E Carpenter <brian.e.carpenter@gmail.com>
Organization: University of Auckland
Message-ID: <91ec6a11-c6a9-9f72-33b6-74ad91afd92f@gmail.com>
Date: Wed, 31 Aug 2016 08:21:35 +1200
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0
MIME-Version: 1.0
In-Reply-To: <39b34ac12f0d433b8d1ae558d3c03509@XCH-RCD-006.cisco.com>
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/anima-signaling/FWxWTH5t4tuBqpSDJRHbAK3PLW0>
Cc: Anima signaling DT <anima-signaling@ietf.org>
Subject: Re: [Anima-signaling] GRASP issue 51: Flooded objectives
X-BeenThere: anima-signaling@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: Mailing list for the signaling design team of the ANIMA WG <anima-signaling.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/anima-signaling>, <mailto:anima-signaling-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/anima-signaling/>
List-Post: <mailto:anima-signaling@ietf.org>
List-Help: <mailto:anima-signaling-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/anima-signaling>, <mailto:anima-signaling-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 30 Aug 2016 20:21:37 -0000

Hi Michael,

Hope you had a good vacation.

On 30/08/2016 20:56, Michael Behringer (mbehring) wrote:
> Sorry for long silence. Yes, vacations and business travel... 
> 
>> Actually this gets back to something I was beating Michael (Behringer) up
>> about. I would love it if the ACP could do this. From a coding point of view it
>> would be nicest if the ACP could catch packets sent to a LL multicast socket
>> (by behaving like a virtual link) but that's a detail.
>> It would be OK too if the ACP simply provides functions to call instead of
>> sendto(msg,0,(ALL_GRASP_NEIGHBOR_6, GRASP_LISTEN_PORT)) and the
>> matching recvfrom().
> 
> Hesitating here. Our current pre-standard implementation is not implemented as a node-wide service, but as a set of interfaces. It's pure plumbing, essentially. In that, you'd send a packet to the ACP interface to node x, rather than to "the ACP" as a whole. That doesn't mean we couldn't provide an API that does what you describe, of course. 
> 
> Bottom line, the translation from the high-level "send packet to all neighbors" to mapping to specific interfaces needs to happen somewhere. We could create a more "clever" ACP which hides the actual interface and provides a higher level interface. But then we'd have two "clever" state machines, one for GRASP, one for the ACP. 
> 
> Wouldn't it be easier if GRASP could map to specific interfaces, such that we only have one such beast? And that the ACP could remain just "plumbing"?  

Just to be clear, my implementation (and I suspect any implementation) figures
out which interfaces exist and sets up a socket for multicasting to each one. That scales
if you have a reasonable number of interfaces. How many interfaces do you expect an ACP user
to see in a typical case?

> 
>> ...
>>> What happens with a node newly rebooting. How does it get those
>>> existing flood objectives ?
>> ...
>>> Aka: periodic, low-frequency broadcast is a proven stable solution.
>>> Its not the nicest. It may not be the only one we want in GRASP, but
>>> i'd feel a lot safer if we could make that option work.
>>
>> Yes, and it's easy - because the sending ASA can just do it, at a frequency that
>> suits the particular objective. Also, a node that doesn't want to wait for the
>> next flood can do a standard GRASP unicast synchronize action.
>  
> Just to be sure I understand: You're essentially saying GRASP shouldn't deal with issues like rebooting, but an ASA needs to understand that it just got re-started, and if required, ask specifically its neighbors for current state? That would make sense to me. 

Yes (either ask, or simply wait for the next flood, according to the semantics of
the particular autonomic function).

GRASP needs to do a few things after a restart, like repeat the determination of
which interfaces it has, what its own IP address is, etc., and I'm sure the ACP will
need to do the same sort of thing. We do need to emphasise for ASA writers that
they have to write robust code - however robust we make GRASP and the ACP, the ASAs
must be written to a high standard too.

Regards
   Brian