Re: [Pppext] LCP echo request/reply support over multilink interface (RFC 1990)

James Carlson <carlsonj@workingcode.com> Thu, 11 March 2010 12:41 UTC

Return-Path: <carlsonj@workingcode.com>
X-Original-To: pppext@core3.amsl.com
Delivered-To: pppext@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 4F4E73A68A5 for <pppext@core3.amsl.com>; Thu, 11 Mar 2010 04:41:00 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.815
X-Spam-Level:
X-Spam-Status: No, score=-1.815 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, SARE_SUB_NEED_REPLY=0.784]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id e6GTDjgeYvey for <pppext@core3.amsl.com>; Thu, 11 Mar 2010 04:40:59 -0800 (PST)
Received: from carlson.workingcode.com (carlsonj-pt.tunnel.tserv4.nyc4.ipv6.he.net [IPv6:2001:470:1f06:1d9::2]) by core3.amsl.com (Postfix) with ESMTP id 4A57F3A689B for <pppext@ietf.org>; Thu, 11 Mar 2010 04:40:59 -0800 (PST)
Received: from [10.50.23.149] (gate.abinitio.com [65.170.40.132]) (authenticated bits=0) by carlson.workingcode.com (8.14.2+Sun/8.14.3) with ESMTP id o2BCYUCO018641 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Thu, 11 Mar 2010 07:34:31 -0500 (EST)
Message-ID: <4B98E356.2070804@workingcode.com>
Date: Thu, 11 Mar 2010 07:34:30 -0500
From: James Carlson <carlsonj@workingcode.com>
User-Agent: Thunderbird 2.0.0.22 (X11/20090605)
MIME-Version: 1.0
To: Y Prasad <yprasad@juniper.net>
References: <0DB0FFEA6887E349861A3F6B40D71C3A0639CB09@gaugeboson.jnpr.net> <201003110556.o2B5uH8d061232@calcite.rhyolite.com> <0DB0FFEA6887E349861A3F6B40D71C3A0639CB56@gaugeboson.jnpr.net>
In-Reply-To: <0DB0FFEA6887E349861A3F6B40D71C3A0639CB56@gaugeboson.jnpr.net>
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
X-DCC-EATSERVER-Metrics: carlson; whitelist
Cc: pppext@ietf.org, i.goyret@alcatel-lucent.com, Vernon Schryver <vjs@calcite.rhyolite.com>
Subject: Re: [Pppext] LCP echo request/reply support over multilink interface (RFC 1990)
X-BeenThere: pppext@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: PPP Extensions <pppext.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/pppext>, <mailto:pppext-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/pppext>
List-Post: <mailto:pppext@ietf.org>
List-Help: <mailto:pppext-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/pppext>, <mailto:pppext-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 11 Mar 2010 12:41:00 -0000

Y Prasad wrote:
> Hi Vernon,
> 
> Please see uin-line at yp>

If possible, please do use standard quoting practice rather than rolling
your own, so that attributions remain true.

> If there are persistent problems on one link in a bundle (e.g. a sick
> modem/line card/whatever), how do you figure out which if you have
> only LCP on the bundle and not on each link?
> 
> Yp> I presume you meant LCP echo above. LINK down can be identified by
> many other ways depending on what type of link it is. Eg. carrier detect
> signal becoming up/down can be used for link status.

That's true, but irrelevant.

If you can completely trust link up/down indications, then this entire
discussion is moot.  You don't need LCP Echo-Request at all.  You can
just avoid sending it, and drive on, trusting the RFC 1661 Down event
from the lower layer to tell you all you need to know.

In order to have a discussion about LCP Echo-Request at all, we have to
start from the point of assuming that there are failure modes in the
links that cannot be detected in the usual way.  The link can be damaged
in some way that makes it useless for traffic, but doesn't cause "Down."
 The next questions are what failures, how detected, and what remedies
are available?

As Vern correctly pointed out, if you do LCP Echo-Request at the bundle
level, you cannot reliably detect individual link failures, because the
messages are no longer specific to any member link.  Thus, doing the
echoes at that level actually only tests for implementation flaws in the
MP code itself, rather than external failures.  And there's not much you
can do about that except do your design and testing very carefully.

LCP Echo-Request at the per-link level is different.  It reliably
detects most "silent" failure modes, where the lower-level link status
is still positive, but the link no longer carries any traffic, or is
able to carry traffic in only one direction, or is perhaps just
experiencing an abnormal error rate.  If you detect such a failure, you
can fix it by dropping that one link out of the bundle.

Furthermore, I reject the idea that it's any sort of performance issue.
 If you do send LCP Echo-Request, you're not required to send it at any
particular rate.  Send it as quickly or as slowly as you like.  If you
feel that dividing the rate at which you send it by the number of links
in the bundle is a good strategy (as would occur if echoes were done at
the bundle level), then do it.  Since you're also the one independently
determining when a lack of Echo-Reply messages indicates a problem, you
can choose whether and when to send Echo-Request.

For those reasons, I remain unconvinced that LCP Echo-Request at the
bundle level is more than a curiosity.

>  As per draft
> LCP-req is optional and LCP-echo-reply is mandatory (MUST). Many vendors
> do support no-keepalive  option even on plane PPP interfaces.

Sure.

> Yp> I know that, there can not be versions for RFCs :) 
> In order to clarify the issue being discussed, we can update a new RFC
> if any planned (needed to be planned) about/for MLPPP.

I don't think one is really needed for this sort of issue, but you're
certainly welcome to contribute if you wish.

-- 
James Carlson         42.703N 71.076W         <carlsonj@workingcode.com>