[Anima] Minor nits in ACP examples (draft-ietf-anima-autonomic-control-plane-27)

Brian E Carpenter <brian.e.carpenter@gmail.com> Fri, 10 July 2020 03:07 UTC

Return-Path: <brian.e.carpenter@gmail.com>
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 CAB703A0C63; Thu, 9 Jul 2020 20:07:23 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level:
X-Spam-Status: No, score=-2.098 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=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 KmY_ZoxF2Ymn; Thu, 9 Jul 2020 20:07:22 -0700 (PDT)
Received: from mail-pf1-x443.google.com (mail-pf1-x443.google.com [IPv6:2607:f8b0:4864:20::443]) (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 557503A0C64; Thu, 9 Jul 2020 20:07:22 -0700 (PDT)
Received: by mail-pf1-x443.google.com with SMTP id a14so1909603pfi.2; Thu, 09 Jul 2020 20:07:22 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:subject:organization:to:message-id:date:user-agent :mime-version:content-language:content-transfer-encoding; bh=lrqaFB/mVHyObGjfKIfAxYHsi5OdV1aBLXMUejAYfEw=; b=IcTwaDJ7/cxUljEiOce65JFkgwu05/POtPXw6qJgBdNWUi7/nNL3PdcIzKUKefIODT 1S9xHu/8crPsMudmGNHwFXQIhqb9CEhBmBbr9cnnyOYpRGB7FX34x84EF+WxTSy/xdvq 4X1DG/4lGVaADx28VrBFw2ZoZZcY8oXNcirZBQvdsWbwFo8o2ww3kx3IS6Ee1G+TSBNY x/T1qbc4ZtmCu+A2eGADA//msXvyWwWe5YEna3AE7mRxti8HPTjUG2YrEMS7w7TjGN1n vWDHC0s9cbI8T3n1YQvAP4nuXP9E3a6G5UKoqMd55dOup8hjDV4HM+5Mv882F5dC+IOe rZ4w==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:subject:organization:to:message-id:date :user-agent:mime-version:content-language:content-transfer-encoding; bh=lrqaFB/mVHyObGjfKIfAxYHsi5OdV1aBLXMUejAYfEw=; b=BMAR/5oZpGTAdRk0J8IYroDOH//uPW8Dhv7jNmiIP6l99vZMspkeYdeOP7vxjNJ/I3 MIa+Ndro++OeSonhqrvyqeucEfNTmnEOtlGGxf56vD8V/IvHGSDXwZOYd+psD61jqRJ7 Sj8jWGPocdEnMqYKHFE+7oTGeQM0A8ycnQ0MOQLADD5kX0Ze+3Y9wWJ6Eip+3ZGotS6c JWVPEgXQLtfUei0Nkod3ud2hL9AutKOOEL6v+okr8VuGEDXluPyXe7u5wCLwt5SH+aJg wnTmm726wweNfB6yJvkUbIJnBRx7uj7u6ld/xdtjePaC60yFBV3OjIV3+Vps3OJ0ArQh /SVg==
X-Gm-Message-State: AOAM530xwQPyzDYcwzrMLky9AXmiIgxaSJsEQUf9LmAB3fgCZxHJiXCU XOI6sxar/vWA5Ox9b9C/2puWRnGw
X-Google-Smtp-Source: ABdhPJw3NAluqFWYgT6Ze6V9upPOhNvA3UOvvA4ERTgxKzv5ROcfUNCZxB1pLG+sdA7Cofizijybyw==
X-Received: by 2002:a63:7054:: with SMTP id a20mr54895481pgn.17.1594350441282; Thu, 09 Jul 2020 20:07:21 -0700 (PDT)
Received: from [192.168.178.20] ([151.210.132.13]) by smtp.gmail.com with ESMTPSA id a16sm3970580pgj.27.2020.07.09.20.07.19 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 09 Jul 2020 20:07:20 -0700 (PDT)
From: Brian E Carpenter <brian.e.carpenter@gmail.com>
Organization: University of Auckland
To: Anima WG <anima@ietf.org>, draft-ietf-anima-autonomic-control-plane.all@ietf.org
Message-ID: <48c611ca-ded6-ea5a-732d-4940022f717f@gmail.com>
Date: Fri, 10 Jul 2020 15:07:16 +1200
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.9.1
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Language: en-US
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/anima/C91ZVcnC1ji60W-Prp2aWyWDb1k>
Subject: [Anima] Minor nits in ACP examples (draft-ietf-anima-autonomic-control-plane-27)
X-BeenThere: anima@ietf.org
X-Mailman-Version: 2.1.29
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: Fri, 10 Jul 2020 03:07:24 -0000

Following a request from Toerless, I've carefully checked the example GRASP
messages in draft-ietf-anima-autonomic-control-plane-27.

Firstly Figure 3: GRASP SRV.est example. There are two nits:

(1) The ULA address is short by one hex digit.
(2) The GRASP objective lacks a value; for correct message syntax, we need a null value.
(This is 'any' in the CDDL syntax, which effectively makes it an extension point).

OLD:

        [M_FLOOD, 12340815, h'fd89b714f3db0000200000064000001', 210000,
            [["SRV.est", 4, 255 ],
            [O_IPv6_LOCATOR,
                 h'fd89b714f3db0000200000064000001', IPPROTO_TCP, 443]]
        ]

NEW:

        [M_FLOOD, 12340815, h'fd89b714f3db00002000000640000001', 210000,
            [["SRV.est", 4, 255, null ],
            [O_IPv6_LOCATOR,
                 h'fd89b714f3db00002000000640000001', IPPROTO_TCP, 443]]
        ]

Once serialized and CBORed, the actual message payload would be
0x85091a00bc4e4f50fd89b714f3db000020000006400000011a000334508284675352562e6573740418fff684186750fd89b714f3db00002000000640000001061901bb

Second, Figure 5: GRASP AN_ACP example. There is one nit and one quibble.

1) There's a missing comma between two elements
2) It's against the GRASP spec to have the same session ID in two different flood messages.
So I believe we should change the session ID for this example.

OLD:

       [M_FLOOD, 12340815, h'fe80000000000000c0011001feef0000', 210000,
         [["AN_ACP", 4, 1, "IKEv2" ],
          [O_IPv6_LOCATOR,
               h'fe80000000000000c0011001feef0000', IPPROTO_UDP, 15000]]
         [["AN_ACP", 4, 1, "DTLS" ],
          [O_IPv6_LOCATOR,
               h'fe80000000000000c0011001feef0000', IPPROTO_UDP, 17000]]
       ]

NEW:

       [M_FLOOD, 43215108, h'fe80000000000000c0011001feef0000', 210000,
         [["AN_ACP", 4, 1, "IKEv2" ],
          [O_IPv6_LOCATOR,
               h'fe80000000000000c0011001feef0000', IPPROTO_UDP, 15000]],
         [["AN_ACP", 4, 1, "DTLS" ],
          [O_IPv6_LOCATOR,
               h'fe80000000000000c0011001feef0000', IPPROTO_UDP, 17000]]
       ]

Once serialized and CBORed, the actual message payload would be
0x86091a0293690450fe80000000000000c0011001feef00001a00033450828466414e5f414350040165494b45763284186750fe80000000000000c0011001feef000011193a98828466414e5f41435004016444544c5384186750fe80000000000000c0011001feef000011194268

Running code:

At https://github.com/becarpenter/graspy, you can find ACPcontainer-v27-examples.py, which generates GRASP floods for these two precise examples, but of course with new pseudo-random Session IDs each time, and genuine IPv6 addresses. ACPnewby.py demonstrates how a new ACP node will receive and decode the examples. Incidentally, the ACPnewby code hasn't changed since October 2017.

Regards
   Brian Carpenter