Re: [Anima] GRASP M_FLOOD captured from Reggie.py -- could it be wrong?

Brian Carpenter <brian.e.carpenter@gmail.com> Sun, 13 December 2020 21:58 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 05FB63A0B10 for <anima@ietfa.amsl.com>; Sun, 13 Dec 2020 13:58:50 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.197
X-Spam-Level:
X-Spam-Status: No, score=-0.197 tagged_above=-999 required=5 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=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 SZi2iQnoBBUm for <anima@ietfa.amsl.com>; Sun, 13 Dec 2020 13:58:48 -0800 (PST)
Received: from mail-lf1-x12c.google.com (mail-lf1-x12c.google.com [IPv6:2a00:1450:4864:20::12c]) (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 8C5203A0B05 for <anima@ietf.org>; Sun, 13 Dec 2020 13:58:47 -0800 (PST)
Received: by mail-lf1-x12c.google.com with SMTP id o13so2197262lfr.3 for <anima@ietf.org>; Sun, 13 Dec 2020 13:58:47 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=3Y84t3HT+OWqmVbMg50zYlqTgt6VVOS8W6qUkkNuNzc=; b=kRlp+b9zp3L8csDckohFHbt3ZbngAAR2VNRZz+WbMoxqZmOP+DfC+A95dNJhAe51Q2 is30VjlVg/3d6R5o7zSxBH+kCjaIzszBevD/fXWnySMNcgpgmGUI5RQzfROUDg/vgPbr OCSfUSSWXUSc4cnMk+rF/L+ZOWmzRp9N3FfW7fAAWU8odMFDzzzA0JCmjWPDQ24YdC0V fCYGWs+FbtbFo7olSZo+y3Qvd+0+sojeBV0A5wB9afFnRz639Z/4Q5egmOa29+bNNkRF 9NhqMwRX+ssQwCmXOE4VY9WUJ6rXfa6URAcll1wQ4lda5AZRKvxUXazECYn68DgUq2qI wfIQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=3Y84t3HT+OWqmVbMg50zYlqTgt6VVOS8W6qUkkNuNzc=; b=buLr4o1o0WD3FbFNOdtSu3H95ee+wlFunDeeK2y3PNgskk6fegA7j2nACsCY5NL76h cZvAP2YgsCp3A3KQGOGlOGPk7L9Ff+ZymrFSb69FwoCYqTOVvnrP4Zc+rko6c+E+46Hc 57NQJYnW0Dz6QE8isp9r930sUUV567rEUacVmRZUQVCymKpPi0DWqePitKwX8F2sOXoR 8DmhQQMhnt+sTT3sUW/BXEISoJ/r1jXLGdPEKdgzQB0lFOcG1Wf5lCQnSiAP0pscOy56 +J4byAf7bYSMi4wwONa12YYC+jz3s3F7l5hp2gz5NTLA4Tr8rim4qoLKUitzXk12woSa TLrg==
X-Gm-Message-State: AOAM530YKSTA9iV9AtZS70HJeuVBrjd6VpYXdjHaexnVCoLUsc8Gnrss f4EYazDWw3izeZvCfsCA5eRT8CzzKfixOmwneXRRgggPLag=
X-Google-Smtp-Source: ABdhPJxG09P0wgrwx3aQawpIWexMZM+Y5Xn4o7OCRe79B1nUsNg/5wT+166z81RWSzAj58AKe5oO3z55c8KSaoXaJIw=
X-Received: by 2002:a19:991:: with SMTP id 139mr283708lfj.637.1607896725651; Sun, 13 Dec 2020 13:58:45 -0800 (PST)
MIME-Version: 1.0
References: <20a41277-59b8-dcae-c1e6-ebe440111840@gmail.com> <A2C1203C-4042-405E-B975-8F7D9F281194@tzi.org>
In-Reply-To: <A2C1203C-4042-405E-B975-8F7D9F281194@tzi.org>
From: Brian Carpenter <brian.e.carpenter@gmail.com>
Date: Mon, 14 Dec 2020 10:58:33 +1300
Message-ID: <CANMZLAanOpYziba+jEPQFOMooYmXGFqGoyZ6NDP_r=+=aBDHVg@mail.gmail.com>
To: Carsten Bormann <cabo@tzi.org>
Cc: Michael Richardson <mcr+ietf@sandelman.ca>, Anima WG <anima@ietf.org>
Content-Type: multipart/alternative; boundary="0000000000002b058605b65fa16b"
Archived-At: <https://mailarchive.ietf.org/arch/msg/anima/LfrIKxMpvjsgN3Y3Mwv15iZps20>
Subject: Re: [Anima] GRASP M_FLOOD captured from Reggie.py -- could it be wrong?
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: Sun, 13 Dec 2020 21:58:50 -0000

Yes, it's intended to be nested. If it isn't, my code is wrong (but
self-consistent, so it must be wrong in 2 places).

Regards
    Brian
    (via tiny screen & keyboard)

On Mon, 14 Dec 2020, 09:58 Carsten Bormann, <cabo@tzi.org> wrote:

> I’m looking at this from my phone, but I think Michael is right.
>
>    flood-message = [M_FLOOD, session-id, initiator, ttl,
>                      +[objective, (locator-option / [])]]
>
>
> Says each pair of objective and locator-option/empty should be packed into its own array.
>
>
> It could have said
>
>
>    flood-message = [M_FLOOD, session-id, initiator, ttl,
>                      +(objective, (locator-option / []))]
>
>
> In which case the array elements would be alternating between objective and locator-option/empty.
>
>
> But it doesn’t.
>
>
> Note that these two-element arrays are the 5th 6th etc elements of the outer array; there is no one-element array.
>
>
> Sent from mobile, sorry for terse
>
> On 13. Dec 2020, at 21:32, Brian E Carpenter <brian.e.carpenter@gmail.com>
> wrote:
>
> Sorry I'm still on vacation and this takes a bit more care to check than
> I can do until I'm home. You could well be right, it's a long time since
> I checked that code against the draft so I could have got it wrong or never
> updated it. I think we went round the loop on the CDDL more than once.
>
> We're flying back to Auckland tomorrow, I should be able to check
> this on Wed NZ time.
>
> Regards
>   Brian
>
> On 14-Dec-20 08:43, Michael Richardson wrote:
>
>
> I captured this from Reggie.py (diag output below) a few days ago:
>
>
> [9, 3591865773, h'2607F0B0000F000200000000000005F7', 120000,
>
>    [
>
>      ["AN_join_registrar", 5, 1, "EST-TLS"],
>
>      [103, h'2607F0B0000F000200000000000005F7', 6, 80]
>
>    ]
>
> ]
>
>
> (formatting is mine)
>
>
> I'm confused by this.
>
>    Objective-Name: "AN_join_registrar",
>
>    objective-flags: 5,
>
>    loop-count: 1,
>
>    objective-value: "EST-TLS"
>
>
> and then the locator-option starts with 103...?
>
>
> I guess I'm still confused by why this is:
>
>  [ [objective1],[locator2-option], [objective2],[locator2-option],...]
>
>
> and not:
>
>  [ [objective1, locator2-option], [objective2, locator2-option],...]
>
>
> or maybe:
>
>  [ [[objective1], [locator2-option]], [[objective2],
> [locator2-option]],...]
>
>
>
> given that it says:
>
> flood-message = [M_FLOOD, session-id, initiator, ttl,
>
>                +[objective, (locator-option / [])]]
>
>
> so I reviewed RFC8610 so under +[], which is section:
>
> section 3.2 (Ocurrence). + => "one or more",
>
> section 3.4 (Array).
>
>
> I conclude that I think that Reggie.py is wrong.
>
> I think that this is the same mistake that we made in BRSKI.
>
>
> I am using the code at:
>
>    commit cf716f69e74041081c3eb93131deefe43baea8bb (HEAD -> master,
> origin/master, origin/HEAD)
>
>    Author: Brian E Carpenter <brian.e.carpenter@gmail.com>
>
>    Date:   Tue Nov 17 12:28:14 2020 +1300
>
>
>    Dummy AN-overview for redirect
>
>
>
> The entire packet is captured as test data at:
>
>  https://github.com/AnimaGUS-minerva/connect/blob/main/src/graspsamples.rs
>
>
> what I saw:
>
> 85                                      # array(5)
>
>   09                                   # unsigned(9)
>
>   1A D61785AD                          # unsigned(3591865773)
>
>   50                                   # bytes(16)
>
>      2607F0B0000F000200000000000005F7  #
> "&\a\xF0\xB0\x00\x0F\x00\x02\x00\x00\x00\x00\x00\x00\x05\xF7"
>
>   1A 0001D4C0                          # unsigned(120000)
>
>   82                                   # array(2)
>
>      84                                # array(4)
>
>         71                             # text(17)
>
>            414E5F6A6F696E5F726567697374726172 # "AN_join_registrar"
>
>         05                             # unsigned(5)
>
>         01                             # unsigned(1)
>
>         67                             # text(7)
>
>            4553542D544C53              # "EST-TLS"
>
>      84                                # array(4)
>
>         18 67                          # unsigned(103)
>
>         50                             # bytes(16)
>
>            2607F0B0000F000200000000000005F7 #
> "&\a\xF0\xB0\x00\x0F\x00\x02\x00\x00\x00\x00\x00\x00\x05\xF7"
>
>         06                             # unsigned(6)
>
>         18 50                          # unsigned(80)
>
>
>
> What I think I should have seen:
>
>
> [9, 3591865773, h'2607F0B0000F000200000000000005F7', 120000,
> [[["AN_join_registrar", 5, 1, "EST-TLS"], [103,
> h'2607F0B0000F000200000000000005F7', 6, 80]]]]
>
>
> 85                                      # array(5)
>
>   09                                   # unsigned(9)
>
>   1A D61785AD                          # unsigned(3591865773)
>
>   50                                   # bytes(16)
>
>      2607F0B0000F000200000000000005F7  #
> "&\a\xF0\xB0\x00\x0F\x00\x02\x00\x00\x00\x00\x00\x00\x05\xF7"
>
>   1A 0001D4C0                          # unsigned(120000)
>
>   81                                   # array(1)
>
>      82                                # array(2)
>
>         84                             # array(4)
>
>            71                          # text(17)
>
>               414E5F6A6F696E5F726567697374726172 # "AN_join_registrar"
>
>            05                          # unsigned(5)
>
>            01                          # unsigned(1)
>
>            67                          # text(7)
>
>               4553542D544C53           # "EST-TLS"
>
>         84                             # array(4)
>
>            18 67                       # unsigned(103)
>
>            50                          # bytes(16)
>
>               2607F0B0000F000200000000000005F7 #
> "&\a\xF0\xB0\x00\x0F\x00\x02\x00\x00\x00\x00\x00\x00\x05\xF7"
>
>            06                          # unsigned(6)
>
>            18 50                       # unsigned(80)
>
>
>
>
> --
>
> Michael Richardson <mcr+IETF@sandelman.ca>   . o O ( IPv6 IøT consulting )
>
>           Sandelman Software Works Inc, Ottawa and Worldwide
>
>
>
>
>
>
> _______________________________________________
> Anima mailing list
> Anima@ietf.org
> https://www.ietf.org/mailman/listinfo/anima
>
>