Re: [Idr] [bess] [Softwires] Regarding the Next Hop Network Address coding for IPv4 VPN over IPv6 Core in RFC5549

Xiejingrong <xiejingrong@huawei.com> Thu, 27 June 2019 11:41 UTC

Return-Path: <xiejingrong@huawei.com>
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 52E4112009E; Thu, 27 Jun 2019 04:41:26 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.199
X-Spam-Level:
X-Spam-Status: No, score=-4.199 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
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 g3DQxC7RZpbb; Thu, 27 Jun 2019 04:41:23 -0700 (PDT)
Received: from huawei.com (lhrrgout.huawei.com [185.176.76.210]) (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 B410D1200B8; Thu, 27 Jun 2019 04:41:22 -0700 (PDT)
Received: from lhreml705-cah.china.huawei.com (unknown [172.18.7.108]) by Forcepoint Email with ESMTP id 0582A29E4061AFAEAF7C; Thu, 27 Jun 2019 12:41:21 +0100 (IST)
Received: from NKGEML412-HUB.china.huawei.com (10.98.56.73) by lhreml705-cah.china.huawei.com (10.201.108.46) with Microsoft SMTP Server (TLS) id 14.3.408.0; Thu, 27 Jun 2019 12:41:19 +0100
Received: from NKGEML514-MBX.china.huawei.com ([fe80::40a8:f0d:c0f3:2ca5]) by nkgeml412-hub.china.huawei.com ([10.98.56.73]) with mapi id 14.03.0415.000; Thu, 27 Jun 2019 19:41:11 +0800
From: Xiejingrong <xiejingrong@huawei.com>
To: Robert Raszuk <robert@raszuk.net>
CC: Alexander Okonnikov <alexander.okonnikov@gmail.com>, "softwires@ietf.org" <softwires@ietf.org>, "idr@ietf.org" <idr@ietf.org>, "bess@ietf.org" <bess@ietf.org>, "draft-dawra-bess-srv6-services@ietf.org" <draft-dawra-bess-srv6-services@ietf.org>
Thread-Topic: [Idr] [bess] [Softwires] Regarding the Next Hop Network Address coding for IPv4 VPN over IPv6 Core in RFC5549
Thread-Index: AdUoywhLB5bsk43hQOStVculmHkjLwBd2P6AAD3Bi8D//9e/gP/+KOEAgAMxxYCAABRggIAABJkAgAABYQCAAAL9AP/+McjwgAMxgAD//23AIA==
Date: Thu, 27 Jun 2019 11:41:10 +0000
Message-ID: <16253F7987E4F346823E305D08F9115AAB8D7F39@nkgeml514-mbx.china.huawei.com>
References: <19AB2A007F56DB4E8257F949A2FB9858E5BDBB89@NKGEML515-MBS.china.huawei.com> <9DB8FCD5-DD04-4EB1-AEA5-A33B5B6F1BC4@gmx.com> <19AB2A007F56DB4E8257F949A2FB9858E5BE201C@NKGEML515-MBS.china.huawei.com> <B577834D-4010-42DF-AF28-690A1BD2A5AC@telekom.de> <16253F7987E4F346823E305D08F9115AAB8D61CE@nkgeml514-mbx.china.huawei.com> <CAOj+MMGdoi1ROTmbuFu8eXWix6JfYwO1TCPUakyOEdTU01-1zA@mail.gmail.com> <B17A6910EEDD1F45980687268941550F4D87EC92@MISOUT7MSGUSRCD.ITServices.sbc.com> <8E1E4882-7850-4BF4-82EC-82BDFE9BF408@gmail.com> <CAOj+MMGKN9drVzJgrE6WVkF6k43Vqe6TNwK9VpHpFbJTafKUdA@mail.gmail.com> <880939EA-32A0-4869-A272-0E7416DED534@gmail.com> <16253F7987E4F346823E305D08F9115AAB8D7E66@nkgeml514-mbx.china.huawei.com> <CAOj+MMGQ36AUbk45L6=N-ATwc+sXfyb3a7esu8-NxZgrj7y0GA@mail.gmail.com>
In-Reply-To: <CAOj+MMGQ36AUbk45L6=N-ATwc+sXfyb3a7esu8-NxZgrj7y0GA@mail.gmail.com>
Accept-Language: zh-CN, en-US
Content-Language: zh-CN
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [10.111.217.214]
Content-Type: multipart/alternative; boundary="_000_16253F7987E4F346823E305D08F9115AAB8D7F39nkgeml514mbxchi_"
MIME-Version: 1.0
X-CFilter-Loop: Reflected
Archived-At: <https://mailarchive.ietf.org/arch/msg/idr/P-IKF-8VxbbEuWn4DG1eIzdeaRA>
Subject: Re: [Idr] [bess] [Softwires] Regarding the Next Hop Network Address coding for IPv4 VPN over IPv6 Core in RFC5549
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: Thu, 27 Jun 2019 11:41:27 -0000

Hi Robert:

I was convinced. All of your points:

(1)     No need to relax the check of nexthop as my previous suggestion.

(2)     No need to update 5549/6515, and the nexthops defined in <draft-dawra-bess-srv6-services-00> section 3.1 to 3.4 are all right to me now.

(3)     if we would be defining new SAFI we can write anything we like to the rules. Old SAFIs follow the RFCs already defind.

(4)     next hop length = 32 is bizarre, and so does length = 48 as in <draft-dawra-bess-srv6-services-00> section 3.2.

Thank you very much !
Jingrong

From: Robert Raszuk [mailto:robert@raszuk.net]
Sent: Thursday, June 27, 2019 6:50 PM
To: Xiejingrong <xiejingrong@huawei.com>
Cc: Alexander Okonnikov <alexander.okonnikov@gmail.com>; softwires@ietf.org; idr@ietf.org; bess@ietf.org; draft-dawra-bess-srv6-services@ietf.org
Subject: Re: [Idr] [bess] [Softwires] Regarding the Next Hop Network Address coding for IPv4 VPN over IPv6 Core in RFC5549

> Back to my suggestion: implementation should interpret nexthop RD+IPv4 and nexthop IPv4 the same, and interpret nexthop RD+IPv6 and nexthop IPv6 the same.

When elements of BGP UPDATE message are being parsed code must know what to expect. Note that we are dealing here with deployed SAFI 128 for nearly 20 years.

So today there are two ways to know what format of next hop is in MP_REACH:

a) Inferring it from AFI/SAFI per section 3 of RFC4760

or (in addition to the above coarse assumption)

b) Inferring it from the discrete value of next hop length field as defined in section 3 of RFC5549

Note that if we would be defining new SAFI we can write anything we like to the rules of constructing the update message. But here again we are dealing with something which is deployed so sort of operating on the plane in flight.

If implementation can infer next hop type from length we are safe to define all sections to have next hop length = 16 octets and be done. But if there are some implementations which would only take AFI/SAFI to check if the next hop is correct or even further to check if the next hop length is correct then we have a problem.

/* Btw this notion of next hop length = 32 is bizarre ! I have never seen any BGP implementation sending two next hops (global IPv6 address followed by link local IPv6 address) not I am able to find any docs describing how any BGP stack would handle it. IMHO we should move this 32 next hop length to historic asap. */

To the msg from Martin,

> maybe the WG would like to reach a conclusion on how to treat that erratum:
> http://www.rfc-editor.org/errata/eid5738

I would vote to reject the errata. There is no value of stuffing 8 octet of zeros in the next hop field. If the RFC got defined in 2012 that really means that most implementations are capable of inferring next hop format from the length field - which is very good. Accepting the errata would be a step backwords.

Thx,
R.

On Thu, Jun 27, 2019 at 11:15 AM Xiejingrong <xiejingrong@huawei.com<mailto:xiejingrong@huawei.com>> wrote:
Thanks for the RFC historical lessons.
--there was historically some assumption that next hop must be of the same AF as prefix.
--RFC 2858 says that Next Hop field should match AFI. On the other hand, RFC 4760 says that Next Hop Field should match combination of AFI/SAFI.
--authors of RFC 4364 were trying to make it consistent with 4760.
--Also, drafts of RFC 4364 and RFC 4760 were being developed practically at the same time period.

The problem is clear, the nexthop field has been inconsistent between different L3VPN/MVPN scenarios and different implementations in the long history.

<draft-dawra-bess-srv6-services-00> is the latest draft, but it has different nexthop in section 3.1 to 3.4, in the year 2019.

Back to my suggestion: implementation should interpret nexthop RD+IPv4 and nexthop IPv4 the same, and interpret nexthop RD+IPv6 and nexthop IPv6 the same.

I think it may be helpful for <draft-dawra-bess-srv6-services-00> to add the above text, and update RFC4364/4659/4760/5549, to eliminate the worries about interoperation. ----is there any worries about interoperation ?

Thanks
Jingrong


From: Alexander Okonnikov [mailto:alexander.okonnikov@gmail.com<mailto:alexander.okonnikov@gmail.com>]
Sent: Wednesday, June 26, 2019 9:38 PM
To: Robert Raszuk <robert@raszuk.net<mailto:robert@raszuk.net>>
Cc: UTTARO, JAMES <ju1738@att.com<mailto:ju1738@att.com>>; Xiejingrong <xiejingrong@huawei.com<mailto:xiejingrong@huawei.com>>; softwires@ietf.org<mailto:softwires@ietf.org>; idr@ietf.org<mailto:idr@ietf.org>; ian.farrer@telekom.de<mailto:ian.farrer@telekom.de>; bess@ietf.org<mailto:bess@ietf.org>; ianfarrer@gmx.com<mailto:ianfarrer@gmx.com>
Subject: Re: [Idr] [bess] [Softwires] Regarding the Next Hop Network Address coding for IPv4 VPN over IPv6 Core in RFC5549

Hi Robert,

Sorry, I was not so precise :-) Of course, RD part in Next Hop is not copied from RD of NLRI, but zeroed. I was trying to explain why Next Hop field in RFC 4364 and RFC 4659 has format RD:IP (VPNvX address) rather than just IP.

Thank you!