Re: Graceful restart comment

Pedro Roque Marques <roque@juniper.net> Mon, 29 April 2002 22:05 UTC

Received: from trapdoor.merit.edu (postfix@trapdoor.merit.edu [198.108.1.26]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id SAA21338 for <idr-archive@ietf.org>; Mon, 29 Apr 2002 18:05:11 -0400 (EDT)
Received: by trapdoor.merit.edu (Postfix) id BCA9591206; Mon, 29 Apr 2002 18:04:59 -0400 (EDT)
Delivered-To: idr-outgoing@trapdoor.merit.edu
Received: by trapdoor.merit.edu (Postfix, from userid 56) id 92B6691233; Mon, 29 Apr 2002 18:04:59 -0400 (EDT)
Delivered-To: idr@trapdoor.merit.edu
Received: from segue.merit.edu (segue.merit.edu [198.108.1.41]) by trapdoor.merit.edu (Postfix) with ESMTP id 456A791206 for <idr@trapdoor.merit.edu>; Mon, 29 Apr 2002 18:04:58 -0400 (EDT)
Received: by segue.merit.edu (Postfix) id 2C4BE5DE4C; Mon, 29 Apr 2002 18:04:58 -0400 (EDT)
Delivered-To: idr@merit.edu
Received: from merlot.juniper.net (natint.juniper.net [207.17.136.129]) by segue.merit.edu (Postfix) with ESMTP id CAF3F5DDA4 for <idr@merit.edu>; Mon, 29 Apr 2002 18:04:57 -0400 (EDT)
Received: from roque-bsd.juniper.net (roque-bsd.juniper.net [172.17.12.183]) by merlot.juniper.net (8.11.3/8.11.3) with ESMTP id g3TM4fT11967; Mon, 29 Apr 2002 15:04:41 -0700 (PDT) (envelope-from roque@juniper.net)
Received: (from roque@localhost) by roque-bsd.juniper.net (8.11.1/8.9.3) id g3TM4f697665; Mon, 29 Apr 2002 15:04:41 -0700 (PDT) (envelope-from roque)
Date: Mon, 29 Apr 2002 15:04:41 -0700
Message-Id: <200204292204.g3TM4f697665@roque-bsd.juniper.net>
From: Pedro Roque Marques <roque@juniper.net>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
To: Jeffrey Haas <jhaas@nexthop.com>
Cc: Gargi Nalawade <gargi@cisco.com>, Enke Chen <enke@redback.com>, idr@merit.edu
Subject: Re: Graceful restart comment
In-Reply-To: <20020429172231.G21276@nexthop.com>
References: <20020429195659.4509F15D3C1@popserv1.redback.com> <3CCDA914.92FE8548@cisco.com> <20020429162659.F21276@nexthop.com> <200204292058.g3TKw4r95825@roque-bsd.juniper.net> <20020429172231.G21276@nexthop.com>
X-Mailer: VM 6.34 under 19.16 "Lille" XEmacs Lucid
Sender: owner-idr@merit.edu
Precedence: bulk
Content-Transfer-Encoding: 7bit

Jeffrey Haas writes:

> On Mon, Apr 29, 2002 at 01:58:04PM -0700, Pedro Roque Marques wrote:
>> If you have errors in a PDU the best thing to do is to tear down
>> the session not to selectivly ignore bits... if you can't trust
>> your peer to format updates correctly then you can't trust any of
>> the nlri that it has sent you.

> Pedro,

> Turn your wayback machine to the IDR list when we had the leaking
> confederation segments incident killing parts of the Internet. :-)

There have been several incidents in the past related to information
that was propagated incorrectly and/or crashed the receivers... do you
mind providing a pointer to the specific incident that you want to
refer to... ? also in some of those incidents, the "rumor" explanation
tends to sometimes differ from reality.

> The specific circumstances I have in mind are where we have a
> well-formed packet, but the information is semantically incorrect,
> discard the PDU.

So, if you detect that your peer is sending you semantically incorrect
information shouldn't you discard all information that the peer sent
you ?

If the peer is leaking you bad attributes of some kind how do you know
which attributes to accept... ?

The tradeoff here is that while by droping the session one may be
rejecting NLRI that would otherwise have a valid path, by resseting it
one makes sure that you don't accept information that may poison other
valid routes. In pratice i believe that the worse incidents that we
have faced have been the ones related to poison information... thus my
preference to err on the side of reseting the session.

> Can you think of circumstances where your implementation will drop
> an update where it doesn't drop the peering session?

Drop ? nope... not that i can't think of.

>> I can't think of any scenario where it is reasonable to discard
>> packets from the neighbor while maintaining the session up... if
>> your neighbor is sending you packets for an NLRI that it hasn't
>> negociated, chances are that there is something else wrong with it.

> RFC 2858, section 6, paragraph 1. :-)

Which suggests that one 'may' zap the other guy... imho, one should do
it if the routers support capability negociation.

> Mind you, I don't really have a problem with the portion I just
> cited, but implementing that without having dynamic capabilities

imho, dynamic capabilities introduce much more uncertainty (you can't
know for sure what is enabled on the session anymore) than what their
worth. At least i wouldn't expect people to be changing their NLRI
often enought that this feature will actually be worthwhile vs the
introduced complexity... i.e. imho it fails the KISS criteria.

> nor
> some sort of informational pushback is asking for your OAM people to
> put your head on a plate. :-)

imho, the best way to keep OAM people happy is to make things fail in
a detectable and most predictable way... having an information msg hit
the logs somewhere while you are propagating bogus information would
be an unfriendly thing to do.

There are no guarantees that indeed the draconian scenario that i'm
suggesting will happen...

However pesonally i'm very sceptic of the informational message
concept...

  Pedro.