Re: [Idr] I-D Action: draft-kaliraj-idr-multinexthop-attribute-01.txt

Kaliraj Vairavakkalai <kaliraj@juniper.net> Sat, 03 July 2021 18:24 UTC

Return-Path: <kaliraj@juniper.net>
X-Original-To: idr@ietfa.amsl.com
Delivered-To: idr@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 44CA23A1F5D for <idr@ietfa.amsl.com>; Sat, 3 Jul 2021 11:24:25 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.994
X-Spam-Level:
X-Spam-Status: No, score=-2.994 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.198, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H4=0.001, RCVD_IN_MSPIKE_WL=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=juniper.net header.b=zkc8dgpF; dkim=pass (1024-bit key) header.d=juniper.net header.b=cbTt8PkI
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 ena0Ir34ur8W for <idr@ietfa.amsl.com>; Sat, 3 Jul 2021 11:24:20 -0700 (PDT)
Received: from mx0a-00273201.pphosted.com (mx0a-00273201.pphosted.com [208.84.65.16]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 4543F3A1F75 for <idr@ietf.org>; Sat, 3 Jul 2021 11:24:20 -0700 (PDT)
Received: from pps.filterd (m0108158.ppops.net [127.0.0.1]) by mx0a-00273201.pphosted.com (8.16.0.43/8.16.0.43) with SMTP id 163IBKpc012465; Sat, 3 Jul 2021 11:24:19 -0700
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : mime-version; s=PPS1017; bh=RppB7W5pLmLfeeWV9FOPn2A663RL8kMGCfpk4P6Svcs=; b=zkc8dgpFEG21l2eiG0ogqPf8AWPdbQ031lvRjmBjmyS/TSykdCGqSi8qpdMHB+bhEiNT Iy8TRgm4HaDCSHwvb8cN8oE1+dHix/a7iL2IE0PXkGjhE0vjgMxorQ69IRk4jMIKx2/6 ODThxHgDd+aY1Ut/cRAa99GUE43IBJ8BIROxqtnzuS2MDQe0w+WPh50plCJ8XIu2JbeJ spcuCShmyy+2g2H23X7i9TpOSfIKBJQb7iDETvsNpg0fNUNKKjai3p919wLrOjt8t7VD 38LBu+DCkQe1mJRcYeeP/VBJaWt+GvuJa8O3NooZkou0ta12BxmTfuzeh2Z/5WHAru9a 3Q==
Received: from nam11-co1-obe.outbound.protection.outlook.com (mail-co1nam11lp2171.outbound.protection.outlook.com [104.47.56.171]) by mx0a-00273201.pphosted.com with ESMTP id 39jkksggd6-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Sat, 03 Jul 2021 11:24:19 -0700
ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZNlSS3nCh92Hk4uiLO/3btf7eRqLaUj63kwrbb3dqTktI6XesV5i18qze+45X4JfrcxQzinFSQuwQA1vXomni4e2LnLTG7uqVBh1TYdEWHJ1d+QvnskoP4ibjW7klf6/JvBvwPS7MAPcjtbVRoGNrPgpFN0KZKgVcKPp7bIUChcVpltXeT0o1eBCnKICRghRL9FXSJ2porkU6VVw7639N/ybZ7bE/NOd50vpROY5u2inWBvAnMiYPCduEkFa98aAsBXhN0U6/Vw+exYP+gaGJRBeSNVZehJGSUljELigrx7kGEhTpagxdsFoW+4AeP9PFH083AhJqqZn6RavBKs7Ag==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RppB7W5pLmLfeeWV9FOPn2A663RL8kMGCfpk4P6Svcs=; b=iiJiLoRtSQWwhyCciOFzUn78pyK0eV5jED5RB/321FTtvdWiiIUOPyQbtxNzJCY3xVJs1sr9B69tN0gTvUkxO4JvBL2ST0G0qPWwQSENowHYl3lY1eEIbUoQyjyOVPOaZIafI+EB1KGP12l5Ra1A2JB+gn/rLq1G7gzR8iszwIAFR28giGqKJ01LM6czcdXuXoQ3WCfWTapookxD17JUTw+DgOSoa5NjxgSvSsUfC3NTGUC6S7XW8CsBdojXx3GiYfeR4oy/Emy9pQ7BDrsfGXdQmKlZASxgcCXVnWyZlFoLNXXqsi239T9Y+qMSm7B/MfHNrwDJcZPrNH6UOCVI2Q==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=juniper.net; dmarc=pass action=none header.from=juniper.net; dkim=pass header.d=juniper.net; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=juniper.net; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=RppB7W5pLmLfeeWV9FOPn2A663RL8kMGCfpk4P6Svcs=; b=cbTt8PkI5j1mr735vLp5H8CC/mUFcTcnTiWJcyEY4ofaG96/e2pFZwp2myq5fn+lnWHxbD8ypNFDFjBzkKBL1jXH44MXilWbpvMWtI3qzJ4t9h8oil4TzXxWxmPU8GJmSXPUQXpx8Bd2U2RliurUZGd+AqER5Y8hC9iYMy7/Eio=
Received: from MN2PR05MB6511.namprd05.prod.outlook.com (2603:10b6:208:da::13) by MN2PR05MB6446.namprd05.prod.outlook.com (2603:10b6:208:dc::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.4308.12; Sat, 3 Jul 2021 18:24:13 +0000
Received: from MN2PR05MB6511.namprd05.prod.outlook.com ([fe80::b4e8:8396:88ac:d75c]) by MN2PR05MB6511.namprd05.prod.outlook.com ([fe80::b4e8:8396:88ac:d75c%2]) with mapi id 15.20.4308.017; Sat, 3 Jul 2021 18:24:13 +0000
From: Kaliraj Vairavakkalai <kaliraj@juniper.net>
To: Robert Raszuk <robert@raszuk.net>
CC: Minto Jeyananth <minto@juniper.net>, "idr@ietf. org" <idr@ietf.org>
Thread-Topic: I-D Action: draft-kaliraj-idr-multinexthop-attribute-01.txt
Thread-Index: AQHXXqnzuyrnD7tHtUa4j+I1+RsQNKsw/dMrgABBvoCAAGfTCQ==
Date: Sat, 03 Jul 2021 18:24:12 +0000
Message-ID: <MN2PR05MB65113F8B521421AE2E4829DFA21E9@MN2PR05MB6511.namprd05.prod.outlook.com>
References: <162340175034.6148.8928864955067799770@ietfa.amsl.com> <CAOj+MMEG6vx7zAJcLAgyuXGPcuvuus=PU48aANJ93VKTLeV9dA@mail.gmail.com> <MN2PR05MB65117FDA62543A0A3A75B165A21E9@MN2PR05MB6511.namprd05.prod.outlook.com>, <CAOj+MMFV=3xVzdr0M9VM+u2N_PYuOE0Q_t+2y1zoZdEYmhTS2w@mail.gmail.com>
In-Reply-To: <CAOj+MMFV=3xVzdr0M9VM+u2N_PYuOE0Q_t+2y1zoZdEYmhTS2w@mail.gmail.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
msip_labels: MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_Enabled=True; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_SiteId=bea78b3c-4cdb-4130-854a-1d193232e5f4; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_SetDate=2021-07-03T17:39:21.8872337Z; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_ContentBits=0; MSIP_Label_0633b888-ae0d-4341-a75f-06e04137d755_Method=Standard
authentication-results: raszuk.net; dkim=none (message not signed) header.d=none;raszuk.net; dmarc=none action=none header.from=juniper.net;
x-ms-publictraffictype: Email
x-ms-office365-filtering-correlation-id: 718a8523-096d-4a9a-7090-08d93e4fc239
x-ms-traffictypediagnostic: MN2PR05MB6446:
x-ms-exchange-transport-forked: True
x-microsoft-antispam-prvs: <MN2PR05MB6446E7E28B0A7D58650C925EA21E9@MN2PR05MB6446.namprd05.prod.outlook.com>
x-ms-oob-tlc-oobclassifiers: OLM:10000;
x-ms-exchange-senderadcheck: 1
x-microsoft-antispam: BCL:0;
x-microsoft-antispam-message-info: O1SXfczk7FDLcoFzB+YjZy9+GBEQ6R9T/+JMC0kVHAkumIIOqou24oxbEhbu3KK5YghKC2oJTIvHDIWij1nuiR4zb3617gMtII8bMwWyLeQ7Wst+AlR7CGpiU52BzlWHtrHFbmEUziPVnkXuBgGyGGUE/S70jMkF4Z4r366Yjs6yVgkt7/fhmzdMVoy5IZZ1SyjbrT3+FWZbqzXoUAZRbmF791YtQcfiSlea10FIyT4cICvWgM0+4CIJgU1wj2cmAnkQo76KjoEM5TruNqnfY4pzDHu9RY3enNp/pf+ldWnCfW1+Hlc/w5AXvMapdAgntP7UQfCr2+QkqeH6oZURSyTVdBJ9hQhl0ie8mVgfC4ypO6FShNcm9VEJ4Al0V7uRgr8S/ehnDZCXqRhfNnbFNvyzjnVZIbBvQ2CdQ4pWkv9gEZJH0Tmnzwv5oD4kWjxWUj7vPalnA8Wx0gqMY4JwxGe1dYq1JPpHyXSI5FYoQRFokOCwoVWck++siWsW8JlJLmAG4kKSfhlDR3EQLvO/dtGeHoTRUqFlGA5cVThh2JqgMKmiX84eefE25mOjEYoOgzoR0FrzYbEJJH5npn4ukFNY7Tby54nHEiNoptxebq/ignsWVFbWD5OZPw8ircaVIEz66gXVqHAw/biEqhrCJw==
x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:MN2PR05MB6511.namprd05.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(366004)(396003)(39860400002)(136003)(346002)(376002)(71200400001)(6506007)(53546011)(66446008)(9686003)(54906003)(52536014)(66574015)(33656002)(122000001)(83380400001)(26005)(38100700002)(316002)(55016002)(6916009)(8936002)(66946007)(76116006)(66476007)(478600001)(4326008)(7696005)(186003)(8676002)(64756008)(5660300002)(66556008)(86362001)(2906002); DIR:OUT; SFP:1102;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: 9iHpvHiIyJ+z56/NRhi2TQdEzaqY1FByBDn6n3LC8HYsa+GENh2aBPSXDWRHxQLqvNsUJXQ272LLnyZXL6Gz6NwIXxr6QxeMbbaviEy4XrbH89CRO5fGvmGF4uDPMu2xbWbmz7vOf7NtoTxSeW5aJa1hMQqOyy4/nj5zkJiZHZNjglNmnN6PADNyfl6lE6/8YdQ1QhS764HHHsyhfaZJj6EjWXJZz6EQdjSfRSKbAHhaBsPSkgYJ81VPmGUjziWhWuW9pfoE/T2qOXE42zV+RPvMglIXhgpor1FiF+PEPUSU4fqRVUS8296k/f+QM+X8xxSm42/tSQ9oxw8kih3tl2DXxSPse70b6ItscYHFzkBidqKeKMng0xUuadSQwqXCUE8I/qD5K1MXlRb2vV4U7l/JjwuJLcLXZ0TdZCuVafUBwvkhoup9eQfXhhp1HtmczJTW0lqpNV4P4+rkTQDnkeWS51dFjWR/PSy1yZbc0ThkK+XPkS9m8RF4zLsACfbhtPvuEf37Q0fziDrGpEE7EYBSZDuAo+9l4VTtCcGQAG7odlsA8sIcIl98Ou+/59H9bLsMygoZRHomf1LkC4oi26gKdsPS8wv0mxOhq8AJLNDaAkhSBXAVBA/gwkHT5juDRKZVyoKbWy9am56REK7hDZqPTtyAGvw9DVoniihanmWNLIuTfqakPuOLN9V07UG3ZwfGFxPpBD3sGWhCR4Dn/ACnQorrsIqIgRLnpatP3QrffOg5/RJwKUc0k/eFsD4IRpjZEK5okYdTAFjd7lQhOlUwceT7ukQcouhs0RrVZdm5U5NC1X4NWB3iVVICq4slF8oRLmGokyWoHdk8mCRJDnyreD89tyz/c0c4sqPMaIIK755yzj51tksAQbTfYsHQVIBbIeGxw26F9efzXlJ2B/OQU+6JItlmRbk1n+7X5ptEMuaxd3LhHzHs/U8tyOZltqIv0hBeqfCDEXlqNO9ZCOt2jGyomuCa0KOLLg1g6KIslJ38Cvv8hZ2W+b+UuEtl5WwnfWdGGSleIZFlEaoWvVZyyvt3xmex8ucTX7xvEHRxMCqOA+heY/B2MkMXqDfNuw4z4IwveoAxz8hHTX/6NzcBkUVJ5VwBzkips+pk2nsggxQhFbJ4PpK4dS3dC0C5Q2XDg26OLqPJLUbq3NKKFdPBucAMLpm5ojnLiemtHtvcNAWxmxY2vKxjF3JbUhnGZNvS8rGJxzTgvx9gjqA2bPYuaB21epVol52JY2tk7KNufv3E6I7auwzsXK5DdEWi8lZvcKegdpgn4J+ZTQGJa9mHtc3DLONonYPHEx8bT/nC1lhOyMMHp0bG2RkrAswa5RuHRHNWtXIdC5EoVIjWfQ==
Content-Type: multipart/alternative; boundary="_000_MN2PR05MB65113F8B521421AE2E4829DFA21E9MN2PR05MB6511namp_"
MIME-Version: 1.0
X-OriginatorOrg: juniper.net
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: MN2PR05MB6511.namprd05.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: 718a8523-096d-4a9a-7090-08d93e4fc239
X-MS-Exchange-CrossTenant-originalarrivaltime: 03 Jul 2021 18:24:12.6921 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: KNfG0xeJV19NbNj+8Yb4HTmCqyKS9AoA2svdkcxh2o+CNZFfeRsxzjboJKiy6c+FXUas3oqTrs06zv0lsyzEmg==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR05MB6446
X-Proofpoint-GUID: 4JYGaq0WO0Fj48MKAF66ct8Z4JWSPsgW
X-Proofpoint-ORIG-GUID: 4JYGaq0WO0Fj48MKAF66ct8Z4JWSPsgW
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.391, 18.0.790 definitions=2021-07-03_07:2021-07-02, 2021-07-03 signatures=0
X-Proofpoint-Spam-Details: rule=outbound_spam_notspam policy=outbound_spam score=0 priorityscore=1501 lowpriorityscore=0 clxscore=1015 mlxscore=0 bulkscore=0 adultscore=0 mlxlogscore=778 impostorscore=0 spamscore=0 malwarescore=0 suspectscore=0 phishscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2104190000 definitions=main-2107030114
Archived-At: <https://mailarchive.ietf.org/arch/msg/idr/wcFd42d46smbc7P24CiTdh-KPdw>
Subject: Re: [Idr] I-D Action: draft-kaliraj-idr-multinexthop-attribute-01.txt
X-BeenThere: idr@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Inter-Domain Routing <idr.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/idr>, <mailto:idr-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/idr/>
List-Post: <mailto:idr@ietf.org>
List-Help: <mailto:idr-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/idr>, <mailto:idr-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 03 Jul 2021 18:24:27 -0000

Pls see inline. KV2>


From: Robert Raszuk <robert@raszuk.net>
Date: Saturday, July 3, 2021 at 4:28 AM
To: Kaliraj Vairavakkalai <kaliraj@juniper.net>
Cc: Minto Jeyananth <minto@juniper.net>, idr@ietf. org <idr@ietf.org>
Subject: Re: I-D Action: draft-kaliraj-idr-multinexthop-attribute-01.txt
[External Email. Be cautious of content]

Hi,

Few follow up points ...

KV>  All resolved(reachable) legs of the MNH will be installed to FIB.

That is huge change BGP <--> RIB interaction. Note today unless you install more next hops *only* if multipath is enabled.

KV2> An implementation can chose to apply that kind of local policy knob to MNH as-well. I meant an implementation that intends to use the MNH treats the PNHs received in the MNH just like it would treat a PNH received in attr 3,14 and do nexthop-resolution (multihop) or interface-check (singlehop). And all useable legs will be installed to FIB, capped by the max-num-ECMP of the platform.

Besides you can safely do it only when network is doing encapsulation end to end. If you are doing hop by hop lookup and you do not even know if all nodes support MNH loops can form.

KV2> agree. This is intended for use in tunneled networks (bgp free core).
KV> Let us say the max-num-ECMP supported by a router is 16. Then it will install the first 16 nexthops (as per the ‘Relative-preference’ field) received in the MNH. It will not install all the nexthops. So the same existing ecmp-limit safeguards can be

Nope that was not the point ... I am talking about control plane RAM when the attacker is using MNH attribute fill to the top of the UPDATE MSG SIZE to kill your box regardless if this will get down to RIB or FIB.

KV2> That’s a good point. But the same max-num-ECMP checks can be applied during bgp update processing as-well to validate a MNH. An implementation can chose via local defaults/configs what is an acceptable max-limit for number of PNHs that can exist in a MNH. A route with an unacceptable MNH should be given ‘ignore the MNH-attribute exists’ treatment. And forwarding can happen based on PNH in attr 3, 14 – in those cases.

Today prefix limit saves you from this type of attacks. When one deployed MNH with the peers it opens up his network ... I would love to see this type of threat discussed in security section.

KV2> Sure. Will discuss it more.
used. The only difference is how the nexthops are received. Instead being received in 100 routes, it is received in 1 route.

Nope ... peers today sends you the single path as best unless you allow him to do add-paths all.

KV2> I see your point about the value of having capability-negotiation. It provides another level of  control on whether to accept MNH from a peer or not, especially the EBGP-case. I will add a capability for this MNH.

KV> they could potentially get called-back when effective-igp-cost of the route changes. Pls note, this proposal does not increase number of unique PNHs in the system/network, for e.g. that is a function of how many PEs exist in the network. Just what changes is how those PNHs are conveyed in bgp-updates as ecmp/pic nexthops for a bgp-prefix. Number of routes required to convey that relationship is greatly reduced, while providing more control to the advertiser on signaling the ecmp/pic relationships.

If you allow this for EBGP you are changing the BGP game completely. Especially if you allow this for SAFI 1.

KV2> EBGP is not discounted. One simple example where this can be useful for EBGP is the inter-AS parallel-links case. Even when using one bgp-session between loopbacks over the parallel-links, the MNH can be used to specify how the load-balancing should happen on the parallel links. And this can be done on a per route level. The mechanisms that exist today can at-best provide “per nexthop set” granularity load-balancing options (configuring a static-route to the lo0 PNH with the desired load-balancing)
- - -

Btw ... who would build this MNH attribute ? ASBR/PE if not doing next hop self ?

KV2> it can be PE/ASBR with doing nexthop-self.


Can it be build say in transit RR from paths received via add-paths from PEs ?

KV2> And it can be the RR as-well in some cases which may do a “nexthop-change to an anycast-address”. RR in essence acts like a controller. The MNH actually provides better granularity controls to a controller to install routes on receiving BGP speakers. I will be presenting one such usecase in IETF111, “Scaling Seamless-MPLS networks using BGP-MPLS-Namespaces”

If you talking labels ... considering each VPNv4/v6 route has a unique per VRF RD such MNH would be not very useful anyway.

KV2> there are some scenarios where it could be. The PE sends the RD:Pfx with MNH(IngressIP1, IngressIP2) thus attracting traffic to the more-optimal ingress-Forwarding-elements. Avoiding intra-fabric hops. The mechanism was invented to solve such a scenario only. Section 2 tries to explain the use-cases in brief. I will try to go over it in some detail during the above IETF111 presentation. Also, the EBGP parallel-links usecase is not currently recorded in section 2. I will record it.

If not I am not sure what is the big gain here. Yes it could be done (with lots of work) but I am a bit missing the need for it considering that you can get the required functionality today already.

Is there anything it actually brings to the table other then ton of implementation and new operational issues ?

KV2> I do think it brings in value of better scaling and finer-grained traffic engineering controls, with some moderate implementation complexity. Only time will tell for sure. :). Thanks.

Thx,
R.



Juniper Business Use Only