Re: [Rift] AD Review of draft-ietf-rift-rift-12 (Part 2a)

Alvaro Retana <aretana.ietf@gmail.com> Fri, 10 February 2023 14:29 UTC

Return-Path: <aretana.ietf@gmail.com>
X-Original-To: rift@ietfa.amsl.com
Delivered-To: rift@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 9FD8AC15155B; Fri, 10 Feb 2023 06:29:04 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.098
X-Spam-Level:
X-Spam-Status: No, score=-7.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, RCVD_IN_DNSWL_HI=-5, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, 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 ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id FOyStRWQiNzx; Fri, 10 Feb 2023 06:29:02 -0800 (PST)
Received: from mail-pl1-x631.google.com (mail-pl1-x631.google.com [IPv6:2607:f8b0:4864:20::631]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id EB6C1C14F72D; Fri, 10 Feb 2023 06:29:02 -0800 (PST)
Received: by mail-pl1-x631.google.com with SMTP id w5so6612283plg.8; Fri, 10 Feb 2023 06:29:02 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:cc:to:subject:message-id:date :mime-version:references:in-reply-to:from:from:to:cc:subject:date :message-id:reply-to; bh=+mHpKc1LrGR2nvF4RKAXza2nYmY/Shg+27kFTdr/s4Q=; b=bLXGRHEYvVKevM+YwMkqouoYgMifzHqL2AVInhHP4SaJmHKOvBCX9DvllR1/mFGspv yx2k3KyTD2DcUZdPZU3gOIcyAEw4OcG908VqykUMw7cq+PVd3kOvO6Lol6couFaQx4Tu bKI2FjVrEVcYJNze4fcRnZQYBKWSvP/Rge2vrd46gC2A2W2VW1J7gdyi3osNc6K8GVOq k6KnYDbovXjXbMfmBNdUu5GHWJOLfQ2cnLiBEZPcicUW0gnGy1LbLOR8MmTekWqnBzeI 8bTsXhebk+uRcMTgQLOl+Jr5suYHJeR11dz+ootsiTmu62vQ5wHlcQc+L9EVGhmzwKKA ypeg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:cc:to:subject:message-id:date :mime-version:references:in-reply-to:from:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=+mHpKc1LrGR2nvF4RKAXza2nYmY/Shg+27kFTdr/s4Q=; b=WrwtRxcMmPZkOkvHcPxYBeb9KnUzfbOwmPxlxVPorRJ03rhaOKGn9/qoeMfTEsLcU1 H5uN0rnNWoL6mEB6/xEoWGJySQEjlq/p6+DtqL50eSNn8r+CSOXeGHdHTMUNlbyAPyNV v8kwPZJDpfquJJJDglZ7j5+KQs0SW5xRCiVFWNBPDDpeQuW99XoilkDQv7v2l+Sceoxa +7tJNM0XjqP1sO6mKBF9mbAYSahlavlawjAK/QVL2B1LzVgOhFR7t9I34Fwepy90Stb8 CHduNrRbn/Esnmg1V3xrLcFdn43jFwnr37J9lRNgsUTcXLi1bNJZmndUUufXKSSjSgDE rHWQ==
X-Gm-Message-State: AO0yUKX4ppeN2dDCjrxGecrBOTBmfe1RiHUHUT/xlPM1orO+Iq2XL/HU pKqUtHUZ+X5FV8k64VJwnlsUdJPAwFCxUKMSdBE=
X-Google-Smtp-Source: AK7set8xGpf4MXnMkj/B37WedU+tNW4WFeyeTggtSSkwQzClQLDRsV+7khEubF5P8D4ntRfI7e5WYgoQJWDEM4wPHyk=
X-Received: by 2002:a17:90a:1d5:b0:233:b56f:a6c1 with SMTP id 21-20020a17090a01d500b00233b56fa6c1mr304382pjd.62.1676039342368; Fri, 10 Feb 2023 06:29:02 -0800 (PST)
Received: from 1058052472880 named unknown by gmailapi.google.com with HTTPREST; Fri, 10 Feb 2023 08:29:01 -0600
From: Alvaro Retana <aretana.ietf@gmail.com>
In-Reply-To: <CO1PR05MB84923DA54A61B6AE040F8E2BACD99@CO1PR05MB8492.namprd05.prod.outlook.com>
References: <CAMMESsxBr0+UriSaTDVZMrFzU6DSiuC3-wO4+7HgX4nX7SLHmg@mail.gmail.com> <CA+wi2hPcFoGoTi=GFx9zyXeKFmM3WZi82YBX4WVjY2jYPW7Mig@mail.gmail.com> <CO1PR11MB488171455D0FD980DC4D4C39D8769@CO1PR11MB4881.namprd11.prod.outlook.com> <CAMMESsx1oCVofW1cNzr5xo60vw50P4iUEedzwQW54xKQ0zezjw@mail.gmail.com> <CA+wi2hNtSwEGHc8ySjEPTamvqJBBh7AFbbPngvjh07QJS=ttrw@mail.gmail.com> <CAMMESsxvp7MByOzoiNHWNNGNm9bp5aiUEgrhKriU7BYy=pYXLQ@mail.gmail.com> <CA+wi2hM7arcayCEh+9YN4bccp1ZB41EFK+7JijZ+TViFUWKtqQ@mail.gmail.com> <CAMMESsz=6HQLsQQVMW4QS_OLtnoTMgvpt3R3AXDdycTp4ig2EA@mail.gmail.com> <3B71A60A-A043-46B0-9A10-2604D177FCD6@juniper.net> <CAMMESsz9skqa7uBEbP36Ly3jtOb10GKDvbtkf_u__jpt9CB0WQ@mail.gmail.com> <CO1PR05MB84923DA54A61B6AE040F8E2BACD99@CO1PR05MB8492.namprd05.prod.outlook.com>
MIME-Version: 1.0
Date: Fri, 10 Feb 2023 08:29:01 -0600
Message-ID: <CAMMESsxqgEsf3QwbkxXDpS1iYGgbdN6Lb+pACoJW9Xgnvadyww@mail.gmail.com>
To: Antoni Przygienda <prz@juniper.net>, Jordan Head <jhead@juniper.net>
Cc: "rift@ietf.org" <rift@ietf.org>, "rift-chairs@ietf.org" <rift-chairs@ietf.org>, "draft-ietf-rift-rift@ietf.org" <draft-ietf-rift-rift@ietf.org>, "EXT-zhang.zheng@zte.com.cn" <zhang.zheng@zte.com.cn>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/rift/wWVDGfWZPFY7rqUnAhLtU23l4KM>
Subject: Re: [Rift] AD Review of draft-ietf-rift-rift-12 (Part 2a)
X-BeenThere: rift@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: Discussion of Routing in Fat Trees <rift.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rift>, <mailto:rift-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/rift/>
List-Post: <mailto:rift@ietf.org>
List-Help: <mailto:rift-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rift>, <mailto:rift-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 10 Feb 2023 14:29:04 -0000

On February 9, 2023 at 12:24:27 PM, Antoni Przygienda wrote:


Tony:

Hi!

Some comments below.

Thanks!

Alvaro.


...
> > jhead>> Discussed with Tony and we're good with changing things to MUST for
> > jhead>> sending and receiving a TTL/HL of 1 or 255 only.
> > jhead>> Also made the same adjustments for how TIEs are exchanged.
>
> Good!
>
> Prz> yes, it’s MUST now. Is that enough we reference 5082 and add that TTL 1
> Prz> as choice prevents any packets escaping unintentionally further than 1
> Prz> hop in the network?

TTL 1 prevents packets escaping from the network, it doesn't prevent
packets being unintentionally forwarded into the network.  I think
that is covered in rfc5082.  So, yes, it is ok to point at rfc5082
where the risks are covered.



...
> > jhead>> "A simplified version MAY be implemented on platforms with limited
> > jhead>> or no multicast support (e.g. IOT devices) by sending and receiving
> > jhead>> LIE frames on IPv4 subnet broadcast addresses and IPv6 all routers
> > jhead>> multicast address. However, this technique is less optimal and
> > jhead>> presents a wider attack surface from a security perspective."
>
> Ok -- I still don't see the value of this paragraph, but if you want
> to include it:
>
> (1) "IPv4 subnet broadcast addresses and IPv6 all routers multicast
> address" : Did you want to use "and" here, or "or"?
>
> Prz> This comes directly from NOK impleneting rift on their virtual platform
> Prz> really so it’s real world input to include this.

I'm not sure if you're saying that the need for a "simplified version"
comes from the real world (which I don't doubt), OR if you were
answering the question and want to use "and".  The latter just seems
unintuitive because you're then sending/receiving two copies.


> (2) Given that the implementation is optional, but simpler, are there
> other cases where this implementation may be used? This is probably a
> topic for the applicability draft -- I didn't see anything explicit
> there about this, even in the "IoT Applicability" section.
>
> (3) The converse question should also be answered: Given that this
> technique is "less optimal", when would a node not want to implement
> it (assuming it has all the resources needed for a full
> implementation)? Also a topic for the applicability draft.
>
> (4) "presents a wider attack surface from a security perspective" --
> Please include something in the Security Considerations section about
> the wider attack surface.
>
>
> prz> agree on all above. Hence I would leave what is here in the main spec +
> prz> (4) since it’s normative stuff and then all those considerations you
> prz> bring up to be put into app draft.

I hope someone is keeping a list. ;-)



...
> Yes, the problem is that the "described behavior" is not fully
> described. This is especially true for a required (MUST) behavior.
> How about if we split the difference?
>
> In the absence of IPv4 LIEs and with `ipv4_forwarding_capable` set to
> true, a node MUST forward IPv4 packets using gateways discovered on
> IPv6-only links advertising this capability. The mechanism to discover
> the corresponding IPv6 address is out of scope for this specification
> and may be implementation specific.
>
> prz> well, you do NOT need a v6 address, that’s the trick, you forward v4
> prz> frame as v4 frame using the MAC address resolved over the v6 LIE source,
> prz> be ity LLC or real stuff. No tunneling, no encaps, that’s why it’s so
> prz> interesting.

As we've been discussing, the mechanism is not specified.

s/mechanism to discover the corresponding IPv6 address/mechanism to
discover the corresponding gateway



...
> The new text now says:
>
> (either at least one of the nodes does not advertise MTU in the
> `LiePacket` *or* the advertised MTU values in the `LiePacket`
> element match on both sides) *and*
>
> If one side doesn't advertise an MTU, default_mtu_size is used. The
> other side may advertise anything else and the condition above would
> be satisfied. Why is this ok?
>
> Prz> excellent catch, yes, the “doesn’t advertise” really means we use
> Prz> default value obviously and that has match with the local side (based on
> Prz> normal thrift processing but yes, without making this mental jump it
> Prz> reads the wrong way), I suggest
> Prz>
> Prz> (the advertised MTU values in the `LiePacket`
> Prz> element match on both sides while missing MTU in the `LiePacket` is
> Prz> interpreted per normal thrift rules as `default_...`)

Take out "per normal thrift rules".