Re: Tuning BFD session times

Ashesh Mishra <mishra.ashesh@outlook.com> Sun, 01 April 2018 14:54 UTC

Return-Path: <mishra.ashesh@outlook.com>
X-Original-To: rtg-bfd@ietfa.amsl.com
Delivered-To: rtg-bfd@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 38142126BF6 for <rtg-bfd@ietfa.amsl.com>; Sun, 1 Apr 2018 07:54:28 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.009
X-Spam-Level:
X-Spam-Status: No, score=-2.009 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=outlook.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 0JMqOYPcuz6u for <rtg-bfd@ietfa.amsl.com>; Sun, 1 Apr 2018 07:54:25 -0700 (PDT)
Received: from NAM03-DM3-obe.outbound.protection.outlook.com (mail-oln040092008037.outbound.protection.outlook.com [40.92.8.37]) (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 0A184124C27 for <rtg-bfd@ietf.org>; Sun, 1 Apr 2018 07:54:24 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=/HhLzY4od4MxTJQjvxAV+sBw8vLZPdMfOX5G4Mm1HqI=; b=Lr+YPfVCglFCeDcc6GZEm+PSnuRCCfd5wAKJ30EFsBEGRMBjL9zS1ODujozl+jA9aGcKUxakfUg7gxe6CLnHCN++iFay4DWpZhA4VTOf1QsWu2nbm7jHlMhB8NedhQ4do4FEcp9WrV8Tbvjis3Fgln6vGlh1jnCUK5GPet4oHLrCrZvkUTQ7/YlUxY4CcdyItyF2qNO/GJeZIQg+Pjq1K88aQdIuyVckdUiE08CvRD2bMYs27+TIQvmUQ5bIIugSoVfa/G3vRz3AjElW3lLbao0qpyDJC3p5GZSbGu3AtXdVtREdnx64CxkXI6DW7SRGSSWzCgbaPnqViTpf7GTluQ==
Received: from DM3NAM03FT058.eop-NAM03.prod.protection.outlook.com (10.152.82.57) by DM3NAM03HT029.eop-NAM03.prod.protection.outlook.com (10.152.83.53) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.631.7; Sun, 1 Apr 2018 14:54:23 +0000
Received: from BL0PR0102MB3345.prod.exchangelabs.com (10.152.82.59) by DM3NAM03FT058.mail.protection.outlook.com (10.152.82.212) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.631.7 via Frontend Transport; Sun, 1 Apr 2018 14:54:23 +0000
Received: from BL0PR0102MB3345.prod.exchangelabs.com ([fe80::a5f3:348:c9a1:1754]) by BL0PR0102MB3345.prod.exchangelabs.com ([fe80::a5f3:348:c9a1:1754%3]) with mapi id 15.20.0631.013; Sun, 1 Apr 2018 14:54:23 +0000
From: Ashesh Mishra <mishra.ashesh@outlook.com>
To: Jeffrey Haas <jhaas@pfrc.org>, "rtg-bfd@ietf.org" <rtg-bfd@ietf.org>
Subject: Re: Tuning BFD session times
Thread-Topic: Tuning BFD session times
Thread-Index: AQHTxsWKBNltmss7WESLSBbS7Nadv6Pr+Fuy
Date: Sun, 01 Apr 2018 14:54:23 +0000
Message-ID: <BL0PR0102MB3345EC535EE558FC4CC692E6FAA70@BL0PR0102MB3345.prod.exchangelabs.com>
References: <20180328184959.GB25442@pfrc.org>
In-Reply-To: <20180328184959.GB25442@pfrc.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-incomingtopheadermarker: OriginalChecksum:32DF6C8C01AF7F7E7543D20AB6ED0334E3C267BC03298350A58A46FE328FE7E8; UpperCasedChecksum:1B632A229825BC73D398E31A80E4C31362373C40722AB102299B2CCABC7C00B6; SizeAsReceived:6980; Count:46
x-ms-exchange-messagesentrepresentingtype: 1
x-tmn: [E72Ogy6C21uFGp7SvMESO8qFjng+zNJF]
x-ms-publictraffictype: Email
x-microsoft-exchange-diagnostics: 1; DM3NAM03HT029; 7:wUxz2poDuHA8ZT1kSy1g6qbzUpNUE2aBIBhLPTm4YbUcNaQA/QmGiuteNokswFgyrQ2NqI843+9kOXOkndpvbNqKKRAV1XjKHB9SAhpZeO5lEBvNJh07WGbfs1iN/26+dJ4tS6kUb+UIEBmjvKXnyemIlGQh0OLqkKEpHR/Z3KcUYQ/nlVorv4agAasIvicP9UPrPfUAQk3pTHKBAKt1dA93ezPZiX5utZN4j1XuVutzS7+kAjGSO/yhksA6Dbqa
x-incomingheadercount: 46
x-eopattributedmessage: 0
x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(201702061078)(5061506573)(5061507331)(1603103135)(2017031320274)(2017031324274)(2017031323274)(2017031322404)(1601125374)(1603101448)(1701031045); SRVR:DM3NAM03HT029;
x-ms-traffictypediagnostic: DM3NAM03HT029:
x-ms-office365-filtering-correlation-id: e3a32071-af59-47a4-0e3d-08d597e07543
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(444000031); SRVR:DM3NAM03HT029; BCL:0; PCL:0; RULEID:; SRVR:DM3NAM03HT029;
x-forefront-prvs: 06290ECA9D
x-forefront-antispam-report: SFV:NSPM; SFS:(7070007)(98901004); DIR:OUT; SFP:1901; SCL:1; SRVR:DM3NAM03HT029; H:BL0PR0102MB3345.prod.exchangelabs.com; FPR:; SPF:None; LANG:;
x-microsoft-antispam-message-info: guTi6JrJYVwfFQHiBr/FCBYi7m/2A+86M7wIKYeOHYnHR65E3w4gi4CKSoAOMVn6NyA2ieFZDi3kGXKAW4OQAHxVLRdm0Yr+i52vb7lYWCouIzic5UKe4J7leZwADI35uRy7KjcppzhgB3cJJ2HCRP7aFR2vM2nn9TPyLmg+gz3/jH+TcCOP4C9bEDZNjVYX
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: multipart/alternative; boundary="_000_BL0PR0102MB3345EC535EE558FC4CC692E6FAA70BL0PR0102MB3345_"
MIME-Version: 1.0
X-OriginatorOrg: outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: e3a32071-af59-47a4-0e3d-08d597e07543
X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Apr 2018 14:54:23.7496 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Internet
X-MS-Exchange-CrossTenant-id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa
X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM3NAM03HT029
Archived-At: <https://mailarchive.ietf.org/arch/msg/rtg-bfd/8iX0bjRL9NAlIvfVNVWizIZz624>
X-BeenThere: rtg-bfd@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: "RTG Area: Bidirectional Forwarding Detection DT" <rtg-bfd.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtg-bfd>, <mailto:rtg-bfd-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/rtg-bfd/>
List-Post: <mailto:rtg-bfd@ietf.org>
List-Help: <mailto:rtg-bfd-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtg-bfd>, <mailto:rtg-bfd-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 01 Apr 2018 14:54:28 -0000

Jeff, thanks for kicking-off this discussion on the list!


One additional comment that I wanted to make was around automation. There were questions during the meeting around the need for auto-tuning and that the process of determining the interval can/should be manual.


The automation of control in all aspects of dynamic behavior is a priority for network operators. When configuring manually, parameters such BFD intervals are typically set at very conservative values because human latency is very high when responding to changing network conditions. Manual configuration also takes a lot of time and is accounts for significant number of lost opportunities and value for operators.


[JH] "applications should generally choose a detection interval that is reasoanble for their application rather than try to dynamically discover the lowest possible stable detection interval. "

[AM] This depends on the use-case. From the point-of-view of a service provider that delivers long-haul connectivity (typical scenario in which the link characteristics have large variance) then the intent is to provide the best performance. As such providers deliver connectivity to critical applications, and are often the only way of delivering connectivity in such places, the ability to tune the system to deliver an up-time that is superior drives significant value. Consider a scenario where there is a 130ms RTT link (MEO satellite, LEO will be in the 20-60ms range) and its backup is a 600ms RTT link (GEO satellite), and are being used to deliver transit connectivity. The rate at which the end-to-end service can run BFD is significantly faster when MEO is active versus when GEO is active. The application, in this scenario, may survive the RTT, but the business continuity is critical in many cases. Since the provider of long-haul can not control the application, it must provide the best possible failover performance.


[JH] "1. BFD is asymmetric.  This means a receiving BFD implementation must provide feedback to a sending implementation in order for it to understand perceived reliability."

[AM] May not need to be the BFD implementation providing the feedback if there are other performance mechanisms running. The challenge is to standardize the mechanism that BFD can use (if the measurement is not self-contained in BFD). You're right in pointing out the challenge in accounting for the CPU delays and that was the reason for the original proposal for BFD performance measurement. If the measurement is within the BFD realm, it will account for the CPU delays. However, most good BFD engines have relatively deterministic performance and are quite optimized so the variance with scale and time is not significant (but I concede that not all BFD implementations are good).


[JH] "2. Measurement infrastructure may negatively impact session scale.  Greg, I believe, made this point when discussing host processing issues vs. BFD ingress/egress."

[AM] This is an issue if using a measurement mechanism within BFD (other performance measurement methods are always running in network for SLA reporting and/or network optimization). Within a metro-area with fiber or terrestrial wireless (microwave, LTE, etc.) connectivity, I would likely not need constant auto-tuning. The variance in the primary and backup links in such network will not be significant to affect the BFD parameters. In long-haul links, this may be a valuable feature in which case, the additional overhead may be justified. So it depends on the use-case whether continuous auto-tuning is required or if it is one-time.


[JH] "3. Detection interval calculations really need to take into account things that are greater than simple packet transmission times.  As an example, if your measurement is always taken during low system CPU or network activity, how high is your confidence about the interval?  What about scaling vs. number of total BFD sessions?"

[AM] Great questions. Typically when running BFD or CFM (or similar) high frequency OAM, CPU peaks should not affect the OAM performance (a variety of methods, based on the system on which OAM is running, can ensure that). CPU peaks become a bigger issue if BFD is used to detect continuity for a particular flow (or QoS).

--
Asheh

________________________________
From: Rtg-bfd <rtg-bfd-bounces@ietf.org> on behalf of Jeffrey Haas <jhaas@pfrc.org>
Sent: Wednesday, March 28, 2018 11:49 AM
To: rtg-bfd@ietf.org
Subject: Tuning BFD session times

Working Group,

We had very active discussion (yay!) at the microphone as part of Mahesh's
presentation on BFD Performance Measurement.
(draft-am-bfd-performance)

I wanted to start this thread to discuss the greater underlying issues this
discussion raised.  In particular, active tuning of BFD session parameters.
Please note that opinions I state here are as an individual contributor.

BFD clients typically want the fastest, most stable detection interval that
is appropriate to their application.  That stability component is very
important since too aggressive of timers can result in unnecessary BFD
session instability which will impact the subscribing application.  Such
stability is a function of many things, scale of the system running BFD
being a major one.

In my opinion, applications should generally choose a detection interval
that is reasoanble for their application rather than try to dynamically
discover the lowest possible stable detection interval.  This is because a
number of unstable factors, such as CPU load, contention with other network
traffic and other things that are outside the general control of many
sytems may impact such scale.

That said, here's a few thoughts on active feedback mechanisms:
1. BFD is asymmetric.  This means a receiving BFD implementation must provide
   feedback to a sending implementation in order for it to understand
   perceived reliability.
2. Measurement infrastructure may negatively impact session scale.  Greg, I
   believe, made this point when discussing host processing issues vs. BFD
   ingress/egress.
3. Detection interval calculations really need to take into account things
   that are greater than simple packet transmission times.  As an example,
   if your measurement is always taken during low system CPU or network
   activity, how high is your confidence about the interval?  What about
   scaling vs. number of total BFD sessions?

I have no strong conclusions here, just some cautionary thoughts.

What are yours?

-- Jeff