Re: Tuning BFD session times

Mahesh Jethanandani <mjethanandani@gmail.com> Mon, 02 April 2018 20:44 UTC

Return-Path: <mjethanandani@gmail.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 5037D126C2F for <rtg-bfd@ietfa.amsl.com>; Mon, 2 Apr 2018 13:44:28 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level:
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, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, 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 ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Bixaab436YQq for <rtg-bfd@ietfa.amsl.com>; Mon, 2 Apr 2018 13:44:24 -0700 (PDT)
Received: from mail-pl0-x22a.google.com (mail-pl0-x22a.google.com [IPv6:2607:f8b0:400e:c01::22a]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B6DA312D940 for <rtg-bfd@ietf.org>; Mon, 2 Apr 2018 13:44:24 -0700 (PDT)
Received: by mail-pl0-x22a.google.com with SMTP id g20-v6so5698087plo.9 for <rtg-bfd@ietf.org>; Mon, 02 Apr 2018 13:44:24 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:message-id:mime-version:subject:date:in-reply-to:cc:to :references; bh=Lm6blA8r6ZExDysWj2Qo3BLpMeRxZEHU6sEj0ezmlVY=; b=n0yF/bYkMUIZjbQjBOlWfyRIaNNpgLQZOqdgVsY67xcqW2erph1Ulza4mS1RTi2WZO xy7FMVNOEh4RJpdVC4Djs89QezJtoPVxlYe8sqPZBICRZq9vptG8pCIoc3UZQ7YPsNgZ mBX+wLtt+hC9TXN7kf5P4HIvPC3jUL7Kf18UwLsdiJkU9mW0k757FTi8bcz7JX3J5Iq0 vVtH6gyfg5MWuK2CvEkD5RZE0DdRLHUiXyEM6RvOh6F/TG+L+MSmGyr0mMjm+/uUtWz7 THqjTWDcuE5Axw338M0kuVz+nVd2GJF1/zfKCh0xaqDNTJPxlsD3AdRs8BL0smT99s+W EZYA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:message-id:mime-version:subject:date :in-reply-to:cc:to:references; bh=Lm6blA8r6ZExDysWj2Qo3BLpMeRxZEHU6sEj0ezmlVY=; b=LB6OpgJCuBQEmvaTCxvVXtKMRxNs9zq4fh+dMjqXqyuOe2AcTZqht16FjuuUG0ImWO PA6NKYhuRTN7wLL+bftcpa6BdoeJF53Oik86B3h5evets6XxYseYMI6FsFK2PvaeOi1v uvcyqqlBP1O2AES9wRjxWLARkf6OXO0NssodEqsrWIflEQxchEexkr3IJ5vt3+FgNfYN 9Ig+W5fPZ665Rm8Osn6y72aUrVUSqtogQjng2+loiH4DfE4vaqwwnaCBrFEguzU2syOg uziYRttsq84OMfvp1OovQbW7tfy9xX+I9rNxdyp76ajlLnD1vxEwQcjKZ2AMz9JX6K5G Qo/Q==
X-Gm-Message-State: AElRT7FQi2CmUkdryVftWhLZHcxOyQAW1SuWLnXKOV5FHFTtN5HhC4zF LczvqSruvANASn1hJzVXhZU=
X-Google-Smtp-Source: AIpwx48cc30Zi2Tz0OgdVNnIA6GRTB77D8Q+djcYs0Ctm0SytMST3sGVDZavU2JmLeuds1TU0kaqiw==
X-Received: by 10.101.68.201 with SMTP id g9mr7252363pgs.263.1522701864155; Mon, 02 Apr 2018 13:44:24 -0700 (PDT)
Received: from ?IPv6:2601:647:4700:1280:ccbf:b3ae:4317:7062? ([2601:647:4700:1280:ccbf:b3ae:4317:7062]) by smtp.gmail.com with ESMTPSA id l74sm2252786pfi.138.2018.04.02.13.44.23 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 02 Apr 2018 13:44:23 -0700 (PDT)
From: Mahesh Jethanandani <mjethanandani@gmail.com>
Message-Id: <8424435A-4521-45EA-807C-7D6EC4BF0D29@gmail.com>
Content-Type: multipart/alternative; boundary="Apple-Mail=_1B5EC742-9738-490E-8FB9-1902694D135D"
Mime-Version: 1.0 (Mac OS X Mail 11.3 \(3445.6.18\))
Subject: Re: Tuning BFD session times
Date: Mon, 02 Apr 2018 13:45:49 -0700
In-Reply-To: <CA+RyBmXayE4Nb1F-xGYnqBnrzHo3GRCA5sbx+epr=ZB60Y6OaA@mail.gmail.com>
Cc: Ashesh Mishra <mishra.ashesh@outlook.com>, "rtg-bfd@ietf.org" <rtg-bfd@ietf.org>
To: Greg Mirsky <gregimirsky@gmail.com>
References: <20180328184959.GB25442@pfrc.org> <BL0PR0102MB3345EC535EE558FC4CC692E6FAA70@BL0PR0102MB3345.prod.exchangelabs.com> <DB3PR03MB0969877EE63E4514F3975D6C9DA70@DB3PR03MB0969.eurprd03.prod.outlook.com> <BL0PR0102MB33453186C4DE4B6646FD67FEFAA70@BL0PR0102MB3345.prod.exchangelabs.com> <CA+RyBmXayE4Nb1F-xGYnqBnrzHo3GRCA5sbx+epr=ZB60Y6OaA@mail.gmail.com>
X-Mailer: Apple Mail (2.3445.6.18)
Archived-At: <https://mailarchive.ietf.org/arch/msg/rtg-bfd/PJ8IeN0Xy79M1Fsok487FefTjIo>
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: Mon, 02 Apr 2018 20:44:28 -0000

Greg,

An ICMP ping run from the control plane may or may not follow the same path followed by BFD in the data plane. Plus, the processing of an ICMP ping on most systems is very different from the way BFD is processed. Plus what better way than to use what you are trying to measure for, give you the measurement.

Cheers.

> On Apr 2, 2018, at 9:18 AM, Greg Mirsky <gregimirsky@gmail.com> wrote:
> 
> Hi Asheh,
> thank you for very detailed explanation of the scenarios that had motivated this work. Couple questions to help me better understand the use cases:
> if understand the first scenario, you propose to use BFD to measure the propagation delay as it is the main component that influences BFD interval selection. Do you see that available on-demand tools, e.g. ICMP ping, not adequate to monitor RTT? What functionality is absent?
> For the case #2, the same question as above as I believe that ICMP ping can be directed over the specific egress interface quite easily.
> Regards,
> Greg
> 
> On Sun, Apr 1, 2018 at 8:17 PM, Ashesh Mishra <mishra.ashesh@outlook.com <mailto:mishra.ashesh@outlook.com>> wrote:
> Hi Sasha,
> 
> There are two scenarios here and they depend on whether the satellite is in geo-stationary orbit (GEO) or non-geo-stationary orbit (NGSO). 
> 
> Scenario-1: Non-Geostationary Satellites: This is the scenario that you described. Satellites in Middle Earth Orbit (MEO) or Low Earth Orbit (LEO) move relative to the earth and hence, their distance from the ground terminals varies as they pass over a given location. This results in varying RTT (sometimes by as much as 30ms). The issue in this scenario is not necessarily that the BFD detect interval must change frequently but that it's difficult to accurately select the intervals as the RTT depends on the location of the terminal and the gateway (and this gets quite complex). If the session can automatically decide the interval, then the complexity in starting a new service is reduced. Another complicating factor is when the terminal moves (ship or aircraft, for example) as this increases the variance of the RTT. We typically set the intervals to a high enough level but that affects the performance. We see the same varying RTT in GEO when the terminal is mobile but the percentage change is much smaller than the overall RTT of GEO (because GEO satellites are much farther away from the earth at ~36,000kms vs MEO at ~8,000kms and LEO at ~200-1000kms). 
> 
> Scenario-2: Low-latency link backed up by high-latency link: In this case a GEO satellite backs up NGSO-based connection or fiber (or other terrestrial wired/wireless WAN options). The end-to-end service then has very different RTT when the primary is active versus when the backup is active. The typical solution is to base timers on the backup RTT, which is very inefficient. 
> 
> Regards,
> Ashesh
> From: Alexander Vainshtein <Alexander.Vainshtein@ecitele.com <mailto:Alexander.Vainshtein@ecitele.com>>
> Sent: Sunday, April 1, 2018 9:28:43 AM
> To: Ashesh Mishra
> Cc: Jeffrey Haas; rtg-bfd@ietf.org <mailto:rtg-bfd@ietf.org>
> Subject: RE: Tuning BFD session times
>  
> Ashesh,
> 
> I would like to understand better the use case with satellite links that you have described.
> 
> In particular, can you please explain why long RTT affects the BFD detection times?
> 
> As I see it, what could really affect these times is variable delay introduced in some cases by the satellite links since the distance between the satellite and the terrestrial antennae may change significantly with time.
> 
>  
> What did I miss?
> 
> 
>  
> Regards,
> 
> Sasha
> 
>  
> Office: +972-39266302 <tel:+972%203-926-6302>
> Cell:      +972-549266302 <tel:+972%2054-926-6302>
> Email:   Alexander.Vainshtein@ecitele.com <mailto:Alexander.Vainshtein@ecitele.com>
>  
> From: Rtg-bfd [mailto:rtg-bfd-bounces@ietf.org <mailto:rtg-bfd-bounces@ietf.org>] On Behalf Of Ashesh Mishra
> Sent: Sunday, April 1, 2018 5:54 PM
> To: Jeffrey Haas <jhaas@pfrc.org <mailto:jhaas@pfrc.org>>; rtg-bfd@ietf.org <mailto:rtg-bfd@ietf.org>
> Subject: Re: Tuning BFD session times
> 
>  
> 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 <mailto:rtg-bfd-bounces@ietf.org>> on behalf of Jeffrey Haas <jhaas@pfrc..org <mailto:jhaas@pfrc.org>>
> 
> 
> Sent: Wednesday, March 28, 2018 11:49 AM
> To: rtg-bfd@ietf.org <mailto: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
> 
> 
> ___________________________________________________________________________
> 
> This e-mail message is intended for the recipient only and contains information which is 
> CONFIDENTIAL and which may be proprietary to ECI Telecom. If you have received this 
> transmission in error, please inform us by e-mail, phone or fax, and then delete the original 
> and all copies thereof.
> ___________________________________________________________________________
> 

Mahesh Jethanandani
mjethanandani@gmail.com