Re: [Technical Errata Reported] RFC5884 (5085)

Balaji Rajagopalan <> Tue, 05 September 2017 13:06 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 453BB1329AB for <>; Tue, 5 Sep 2017 06:06:59 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id 3V1PkOoMHAAX for <>; Tue, 5 Sep 2017 06:06:54 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 41D121329C7 for <>; Tue, 5 Sep 2017 06:06:54 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=i13USTABfqir5Y60Kd6M1Y4ZTXiiNWHQmcILk6Jr9HQ=; b=AtXCjisTeG8dYDNQgLMMgkR44HpJzXR9kqftgNeyCOoxZej4gBBpprRNkT3glt2c4CMv5Rz28iG1bftIAaRjoOb19oknvt0sFScKvJSAr23n3nfO4suWJMny149DeLRjI7G61nMZkQTjPWCh4jQm2Oic8z9OjWi50b56EoMaZpc=
Received: from ( by ( with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id; Tue, 5 Sep 2017 13:06:51 +0000
Received: from ([]) by ([]) with mapi id 15.20.0013.015; Tue, 5 Sep 2017 13:06:51 +0000
From: Balaji Rajagopalan <>
To: Greg Mirsky <>
CC: Mach Chen <>, "Carlos Pignataro (cpignata)" <>, Jeffrey Haas <>, Kireeti Kompella <>, Thomas Nadeau <>, "" <>, "Reshad Rahman (rrahman)" <>, Alia Atlas <>
Subject: Re: [Technical Errata Reported] RFC5884 (5085)
Thread-Topic: [Technical Errata Reported] RFC5884 (5085)
Date: Tue, 5 Sep 2017 13:06:50 +0000
Message-ID: <>
References: <> <> <> <> <> <> <> <>
In-Reply-To: <>
Accept-Language: en-US
Content-Language: en-GB
user-agent: Microsoft-MacOutlook/f.1d.0.161209
x-originating-ip: []
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; MWHPR05MB3583; 6:quf0JB2X2fJ1XKuI1qmfWId5eRZorNAVJVcIAzvFMseWw6+fO2cSREbLOs+wFmqigXzqNjv4x43h4fPgaRQHjD4TNCe7pBvpmumxIzTTMCjrEaXfpDQXQhzdWuIhkaM1OmNnp4R1cqPUXdeWR+4zuaw4/CwqH1CgFcA69tiHIbVIKA0CCyW4ipusYsrDtOOmfTaNeDcbtR/LvCgjrfss/UWT+BPdcsUIIxZGcctKpo6WJzV8QuWT5nnZyvyrosV/so+O1dVIyZUY20PC/xPb2AzINDxtqf6+J1RpoFwIVxqv4wjORSZn/S6Rnb/0zwhBhH9NlmJgITtU+NX8inmjWg==; 5:RHSFbmziHjDJATRM+PMycIafuJDl+v/NKTBaoxVPlhqA3Sj+mXZqyG3ie3ZAEOhwWIOtqpij9iy2gz/d8gnhVxfUmbTpgf5ydN0bnvxNVZVUGfUZ3B/+TwJOH1bPq8DyCVFPqb7YcqJBZ63KtxT6aA==; 24:LVrjs6jiAJ/qJX+JoPStbEWA/fIoSgF5bZWx54JSxMeJ3x2A9psvnYChxLXP1HbMEC4ZPwoaPZQXczztuPIvhZNbb4y1gR5aKYZZ6u2Xk5E=; 7:nt/1fgq5i0hfQKM71qxBUSs3KCXQMA3q9DfOOSBmsDwdx8ys+alFhUriFGw64WEExAugXitaMBt+L5esaDsUOpI8guoTK9n+HG2+sFWWYdsc+r3MiFmLnsbeidJnvOENbDqCE964mLWmllPwGKKKDTlTcBqD6JeOR7B6sPPh65yuWaH+WhyjQDCAcRm8KW5tzARCrqzMJiyqt0SjQpJic2qkrtpR9KE3e3ivHt3pPVs=
x-ms-exchange-antispam-srfa-diagnostics: SSOS;SSOR;
x-forefront-antispam-report: SFV:SKI; SCL:-1; SFV:NSPM; SFS:(10019020)(24454002)(199003)(189002)(377454003)(51444003)(6506006)(101416001)(7736002)(229853002)(6486002)(733005)(33656002)(189998001)(6436002)(14454004)(4326008)(966005)(3846002)(478600001)(6116002)(102836003)(83506001)(39060400002)(561944003)(86362001)(82746002)(77096006)(68736007)(2900100001)(8676002)(93886005)(3280700002)(3660700001)(8936002)(1411001)(36756003)(110136004)(5660300001)(236005)(6246003)(9326002)(6916009)(105586002)(66066001)(99286003)(18926415007)(81156014)(81166006)(106356001)(76176999)(54356999)(50986999)(25786009)(2906002)(83716003)(606006)(6512007)(53546010)(54906002)(2950100002)(53936002)(97736004)(4001350100001)(6306002)(54896002); DIR:OUT; SFP:1102; SCL:1; SRVR:MWHPR05MB3583;; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en;
x-ms-office365-filtering-correlation-id: 8249c48c-da84-4b27-aa76-08d4f45ef945
x-ms-office365-filtering-ht: Tenant
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(300000502095)(300135100095)(22001)(2017030254152)(300000503095)(300135400095)(48565401081)(2017052603199)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095); SRVR:MWHPR05MB3583;
x-ms-traffictypediagnostic: MWHPR05MB3583:
x-exchange-antispam-report-test: UriScan:(138986009662008)(95692535739014)(21748063052155)(6911010853514)(225473673943800)(50582790962513);
x-microsoft-antispam-prvs: <>
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(2401047)(5005006)(8121501046)(10201501046)(3002001)(100000703101)(100105400095)(93006095)(93001095)(6055026)(6041248)(20161123562025)(20161123555025)(20161123560025)(20161123564025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123558100)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095); SRVR:MWHPR05MB3583; BCL:0; PCL:0; RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095); SRVR:MWHPR05MB3583;
x-forefront-prvs: 0421BF7135
received-spf: None ( does not designate permitted sender hosts)
authentication-results: spf=none (sender IP is );
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: multipart/alternative; boundary="_000_ADFFD60643A146F69D4DBF2BF54851C2junipernet_"
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-originalarrivaltime: 05 Sep 2017 13:06:51.1496 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: bea78b3c-4cdb-4130-854a-1d193232e5f4
X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR05MB3583
Archived-At: <>
X-Mailman-Approved-At: Tue, 05 Sep 2017 06:08:26 -0700
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: "RTG Area: Bidirectional Forwarding Detection DT" <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Tue, 05 Sep 2017 13:06:59 -0000

Hi Greg,

While all the issues you bring up are valid, the change I had proposed merely makes a minor correction to improve textual clarity. There was no attempt to alter the protocol in any way.

I think both the following aspects are non-trivial, and are beyond the scope of errata. Perhaps, these issues are better addressed in a “-bis”.

-         Removal of BFD-disc from the LSP-Ping reply. I defer to Kireeti & other authors of the RFC to comment/decide whether BFD-disc can be removed from the reply.
-         Rules to specify handling of mismatch between BFD-disc in the LSP-Ping reply & the BFD session

Balaji Rajagopalan

From: Greg Mirsky <>
Date: Wednesday, 23 August 2017 at 7:51 AM
To: Balaji Rajagopalan <>
Cc: Mach Chen <>om>, "Carlos Pignataro (cpignata)" <>om>, Jeffrey Haas <>rg>, Kireeti Kompella <>et>, Thomas Nadeau <>om>, "" <>rg>, "Reshad Rahman (rrahman)" <>om>, Alia Atlas <>
Subject: Re: [Technical Errata Reported] RFC5884 (5085)

Hi Balaji,
I've been thinking about the value of including BFD Discriminator TLV in echo reply sent by egress. What we'd expect ingress to do upon receiving the reply? Match to bfd.remoteDiscr? I think that then echo reply must include the value from the original BFD Discriminator TLV so that ingress uses it to demux BFD sessions. Or ingress doesn't validate the value in BFD Discriminator TLV but only that the TLV is included in reply? If we leave actions of the ingress upon receipt of the reply with BFD Discriminator underspecified it may result in another set of interoperability issues. Perhaps the simplest way to avoid that would be to not allow BFD Discriminator TLV in the reply.


On Tue, Aug 22, 2017 at 2:16 AM, Balaji Rajagopalan <<>> wrote:
That sounds better. How about the following text?

The egress LSR MUST follow the procedures described in [RFC4379] in processing the LSP Ping request. The LSP Ping reply generated by the egress MAY carry the local discriminator assigned by it for the BFD session.

Balaji Rajagopalan

From: Mach Chen <<>>
Date: Thursday, 17 August 2017 at 8:45 AM
To: "Carlos Pignataro (cpignata)" <<>>, Balaji Rajagopalan <<>>, Greg Mirsky <<>>, Jeffrey Haas <<>>
Cc: Kireeti Kompella <<>>, Thomas Nadeau <<>>, "<>" <<>>, "Reshad Rahman (rrahman)" <<>>, Alia Atlas <<>>
Subject: RE: [Technical Errata Reported] RFC5884 (5085)

Indeed, I also like Les’s suggestion!

Best regards,

From: Rtg-bfd [<>] On Behalf Of Carlos Pignataro (cpignata)
Sent: Wednesday, August 16, 2017 10:20 PM
To: Balaji Rajagopalan <<>>; Greg Mirsky <<>>; Jeffrey Haas <<>>
Cc: Kireeti Kompella <<>>; Thomas Nadeau <<>>;<>; Reshad Rahman (rrahman) <<>>; Alia Atlas <<>>
Subject: Re: [Technical Errata Reported] RFC5884 (5085)

This sounds like a good summary of the tactical fix.

(Although, like Les wrote down, saying “MUST follow [LSP-Ping]” is better than “MUST Send a Reply”)

As an aside -- When it comes to Interop, I remember also issues around the UDP Port on the egress BFD Control packet, depending on whether the response is IP-based vs. over an MPLS LSP.  Tracking this down, this was identified at (comments on Sections 6 and 7), and it seems, we may have the right bug but a wrong fix.


-- Carlos.

From: Rtg-bfd <<>> on behalf of Balaji Rajagopalan <<>>
Date: Wednesday, August 16, 2017 at 1:23 AM
To: Greg Mirsky <<>>, Jeff Haas <<>>
Cc: Kireeti Kompella <<>>, Tom Nadeau <<>>, "<>" <<>>, "Reshad Rahman (rrahman)" <<>>, Alia Atlas <<>>
Subject: Re: [Technical Errata Reported] RFC5884 (5085)

I’m aware of three different behaviours from three different vendors that I came across in the course of inter-op:
-         Always respond to an LSP-Ping request carrying a BFD disc
-         Never send a response to an LSP-Ping request carrying a BFD disc
-         Don’t respond to the first LSP-Ping request carrying a BFD disc, but respond to the subsequent ones

This experience leads me to believe that this procedure is NOT well-understood.  So, publication of errata on this issue is necessary.

As some of the co-authors have clarified in further emails, inclusion of BFD discriminator in the LSP-Ping request does not change LSP-Ping’s basic function. So, the egress must send a reply. This is what the erratum clarifies.

Balaji Rajagopalan

From: Rtg-bfd <<>> on behalf of Greg Mirsky <<>>
Date: Friday, 11 August 2017 at 11:42 PM
To: Jeffrey Haas <<>>
Cc: Kireeti Kompella <<>>, Thomas Nadeau <<>>, "<>" <<>>, "Reshad Rahman (rrahman)" <<>>, Alia Atlas <<>>
Subject: Re: [Technical Errata Reported] RFC5884 (5085)

Re-sending to the corrected list (apologies for duplicates).

Dear All,
I suggest to reject this proposal. The current text is clear and the mechanics of bootstrapping BFD session over MPLS LSP is well understood - remote peer MUST start sending BFD control packets first and BFD peer MAY send Echo Reply with its Local Discriminator as value in BFD Discriminator TLV.


On Fri, Aug 11, 2017 at 10:39 AM, Jeffrey Haas <<>> wrote:
[Note that I have adjusted the addresses in the headers to try to catch the
RFC authors' current accounts.]

The 5884 interop issue keeps bubbling up.  Balaji submitted an errata, which
provides us with a good place to start technical discussion.

Please note I also spent some time off-list discussing this errata with

On Thu, Aug 10, 2017 at 10:35:50PM -0700, RFC Errata System wrote:
> Section: 6
> Original Text
> -------------
> The egress LSR MAY respond with an LSP Ping Echo
> reply message that carries the local discriminator assigned by it for
> the BFD session.
> Corrected Text
> --------------
> The egress LSR MUST respond with an LSP Ping Echo reply message that
> MAY carry the local discriminator assigned by it for the BFD session.
> Notes
> -----
> It is not clear from the original text which of the following is optional:
>   -  The egress MUST send a reply, but the discriminator in the reply is optional
>   -  The reply itself is optional
> Technically, the reply cannot be optional, because the egress needs to report LSP-Ping verification status to the ingress.
> The proposed text recommends to include BFD discriminator in the reply. This was the intent of the original text.

My opinion follows:

In section 6 -

:    On receipt of the LSP Ping Echo request message, the egress LSR MUST
:    send a BFD Control packet to the ingress LSR, if the validation of
:    the FEC in the LSP Ping Echo request message succeeds.  This BFD
:    Control packet MUST set the Your Discriminator field to the
:    discriminator received from the ingress LSR in the LSP Ping Echo
:    request message.  The egress LSR MAY respond with an LSP Ping Echo
:    reply message that carries the local discriminator assigned by it for
:    the BFD session.  The local discriminator assigned by the egress LSR
:    MUST be used as the My Discriminator field in the BFD session packets
:    sent by the egress LSR.

In the text above, I consider it quite clear that the receipt of the BFD
packet contains sufficient state to bring up the BFD session.  The receipt
of the same Discriminator in the LSP Ping Echo Reply is optional.

This makes sense partially because the reply may be dropped and we want the
BFD session to come up as fast as possible.

The point of contention appears to be what to do if we *never* get such
replies.  It's worth pointing out additional text in RFC 5884, section 3.2.

:    Hence, BFD is used in conjunction with LSP Ping for MPLS LSP fault
:    detection:
:       i) LSP Ping is used for bootstrapping the BFD session as described
:          later in this document.
:      ii) BFD is used to exchange fault detection (i.e., BFD session)
:          packets at the required detection interval.
:     iii) LSP Ping is used to periodically verify the control plane
:          against the data plane by ensuring that the LSP is mapped to
:          the same FEC, at the egress, as the ingress.

iii above reminds us that the LSP may be torn down because LSP Ping fails.
Thus, it seems problematic that we do not get a reply ever.

However, with the BFD session in the Up state, we have information proving
that the LSP is up.  Thus we have contradictory intent.


My opinion is that the MAY in the RFC 5884 procedures is intended to have
the BFD session come up by the most expedient means.  I do not believe the
likely intent was to say "don't send Echo Reply".  Among other things, that
seems contrary to the intent of the general LSP Ping procedures.

Having given my personal observations, we now get to the business of the
Working Group: Debating intent and related text.

-- Jeff