Re: [Idr] [Technical Errata Reported] RFC4271 (3366)
t.petch <ietfc@btconnect.com> Tue, 02 October 2012 16:06 UTC
Return-Path: <ietfc@btconnect.com>
X-Original-To: idr@ietfa.amsl.com
Delivered-To: idr@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 3129C21F845F for <idr@ietfa.amsl.com>; Tue, 2 Oct 2012 09:06:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.295
X-Spam-Level:
X-Spam-Status: No, score=-3.295 tagged_above=-999 required=5 tests=[AWL=-0.296, BAYES_00=-2.599, J_CHICKENPOX_15=0.6, RCVD_IN_DNSWL_LOW=-1]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Ti1ZWq7kdUZ3 for <idr@ietfa.amsl.com>; Tue, 2 Oct 2012 09:06:12 -0700 (PDT)
Received: from va3outboundpool.messaging.microsoft.com (va3ehsobe005.messaging.microsoft.com [216.32.180.31]) by ietfa.amsl.com (Postfix) with ESMTP id 77A1921F8567 for <idr@ietf.org>; Tue, 2 Oct 2012 09:06:11 -0700 (PDT)
Received: from mail42-va3-R.bigfish.com (10.7.14.237) by VA3EHSOBE009.bigfish.com (10.7.40.29) with Microsoft SMTP Server id 14.1.225.23; Tue, 2 Oct 2012 16:06:10 +0000
Received: from mail42-va3 (localhost [127.0.0.1]) by mail42-va3-R.bigfish.com (Postfix) with ESMTP id 9DF8D420071; Tue, 2 Oct 2012 16:06:10 +0000 (UTC)
X-Forefront-Antispam-Report: CIP:157.56.253.197; KIP:(null); UIP:(null); IPV:NLI; H:DBXPRD0710HT004.eurprd07.prod.outlook.com; RD:none; EFVD:NLI
X-SpamScore: -25
X-BigFish: PS-25(zz9371I542M1432I1418I4015Izz1202h1d1ah1d2ahzz8275ch1033IL17326ah8275bh8275dh172cdfhz2dh2a8h5a9h668h839hd24hf0ah107ah1177h1179h1288h12a5h12a9h12bdh137ah139eh13b6h1441h304l1155h)
Received: from mail42-va3 (localhost.localdomain [127.0.0.1]) by mail42-va3 (MessageSwitch) id 1349193968562810_11746; Tue, 2 Oct 2012 16:06:08 +0000 (UTC)
Received: from VA3EHSMHS038.bigfish.com (unknown [10.7.14.241]) by mail42-va3.bigfish.com (Postfix) with ESMTP id 8388B4004F; Tue, 2 Oct 2012 16:06:08 +0000 (UTC)
Received: from DBXPRD0710HT004.eurprd07.prod.outlook.com (157.56.253.197) by VA3EHSMHS038.bigfish.com (10.7.99.48) with Microsoft SMTP Server (TLS) id 14.1.225.23; Tue, 2 Oct 2012 16:06:04 +0000
Received: from DB3PRD0410HT004.eurprd04.prod.outlook.com (157.56.252.21) by pod51017.outlook.com (10.255.79.167) with Microsoft SMTP Server (TLS) id 14.16.207.9; Tue, 2 Oct 2012 16:06:01 +0000
Message-ID: <04d601cda0b7$d70b1720$4001a8c0@gateway.2wire.net>
From: "t.petch" <ietfc@btconnect.com>
To: Shashank Tyagi <Shashank.Tyagi@microsoft.com>, stbryant@cisco.com, shares@ndzh.com, jgs@juniper.net, RFC Errata System <rfc-editor@rfc-editor.org>
References: <20120926090655.84AD3B1E002@rfc-editor.org> <000b01cda0a3$ea0c4b00$4001a8c0@gateway.2wire.net> <B57D4E80DCDFC64D81BCA4D6FB7E8A662207E8D7@SINEX14MBXC401.southpacific.corp.microsoft.com>
Date: Tue, 02 Oct 2012 17:05:09 +0100
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
X-Originating-IP: [157.56.252.21]
X-FOPE-CRA-Verdict: 157.56.253.197$juniper.net%12218%4%btconnect.com%False%True%0$
X-OriginatorOrg: btconnect.com
Cc: idr@ietf.org
Subject: Re: [Idr] [Technical Errata Reported] RFC4271 (3366)
X-BeenThere: idr@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Inter-Domain Routing <idr.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/idr>, <mailto:idr-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/idr>
List-Post: <mailto:idr@ietf.org>
List-Help: <mailto:idr-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/idr>, <mailto:idr-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 02 Oct 2012 16:06:13 -0000
Shashank How come you can send a message with so many recipients when I cannot:-( Ah well, ... ----- Original Message ----- From: "Shashank Tyagi" <Shashank.Tyagi@microsoft.com> To: "t.petch" <ietfc@btconnect.com>; <yakov@juniper.net>; <tony.li@tony.li>; <skh@nexthop.com>; <stbryant@cisco.com>; <adrian@olddog.co.uk>; <shares@ndzh.com>; <jgs@juniper.net>; "RFC Errata System" <rfc-editor@rfc-editor.org> Cc: <rfc-editor@rfc-editor.org>; <idr@ietf.org> Sent: Tuesday, October 02, 2012 2:59 PM Hi Tom, Thanks for your reply. Yes it refers to OpenSent state sorry forgot to mention that. Few comments: -In OpenSent the KEEPALIVE has not been sent, only the Open message has been sent. So there would be no receipt of KEEPALIVE. <tp> Right, you are confusing me:-( Your proposed change was to set the HoldTimer to 0 when transitioning from OpenSent state to Active which made me think that a KEEPALIVE had been sent and the HoldTimer could be running in OpenSent and I thought I had found such a case in the FSM this morning. Looking again, I cannot find it so assume that no KEEPALIVE has been sent (I was probably reading OpenConfirm). What then is your suggested change for the receipt of event 18 in OpenSent? To stop the HoldTimer if it is running? To ensure that the next use of the HoldTimer has a zero value and so is not started? Or what? The FSM is intended to be robust in the event of all possibilities, including implementation errors, with the default being, when something completely impossible happens, go back to Idle state. In fact, there are an awful lot of corner cases arising out of such as connection collisions, of data being buffered in the TCP stack when BGP thinks there is no connection, TCP connection dropping and either noone noticing or restarting etc so even a perfect implementation can do some strange things. If, thus, the HoldTimer expires in Active state, the only thing to do IMHO is to revert to Idle (and call your software supplier if you are sure it cannot happen:-) - as I said before, the expectation is that the ConnectRetryTimer will expire first taking it back to OpenSent. Tom Petch -Also when moving from OPENSENT to ACTIVE in case of TCP failure the rfc says to close the BGP connection. Why should the HoldTimer be running without a BGP connection? Thanks, Shashank -----Original Message----- From: t.petch [mailto:ietfc@btconnect.com] Sent: Tuesday, October 02, 2012 7:12 PM To: yakov@juniper.net; tony.li@tony.li; skh@nexthop.com; stbryant@cisco.com; adrian@olddog.co.uk; shares@ndzh.com; jgs@juniper.net; RFC Errata System Cc: Shashank Tyagi; rfc-editor@rfc-editor.org; idr@ietf.org Subject: Re: [Idr] [Technical Errata Reported] RFC4271 (3366) >From the Original Text, I infer that this refers to OpenSent, when event 18 occurs. The Notes say "HoldTimer should only be used to control time in between BGP packets. " This is true but in OpenSent state (p.63), a KEEPALIVE has been sent (as well as an OPEN) so the timer should be running. "Also in this case it can lead to case in ACTIVE state where HoldTimer expires before the ConnectRetryTimer leading to IDLE state." Well, it will lead to Active state (p.59) - that is what the text says - and event 10, HoldTimer expires, will then take you to Idle state (p.63). The expectation is that the HoldTimer has been set to a large value, 4 minutes, which is much greater than the ConnectRetryTimer (90s) and it is the expiry of the latter that should take you out of Active state to Connect and thence to OpenSent when the HoldTimer will be restarted. Note that the receipt of a KEEPALIVE (event 26) also takes you from Active to Idle - I think that the two cases are similar, that the BGP connection did not reach second base. You are in trouble either way and back to Idle is the safe thing to do. Of course, if you ignore that advice to set the HoldTimer to a large value - you have yet to receive an OPEN and so do not know what value will be acceptable to the peer - and set it instead to 3s, then yes, you will get back to Idle more often than is desirable. Nowadays, there is a greater wish to keep BGP connections up, compared to when we wrote RFC4271, but I think that, in this case, there is nothing worth keeping up and going back to Idle is the right thing to do. (I am not sure what the best distribution for this is so I have used 'Reply All' but expect that that should be trimmed soon). Tom Petch ----- Original Message ----- From: "RFC Errata System" <rfc-editor@rfc-editor.org> To: <yakov@juniper.net>; <tony.li@tony.li>; <skh@nexthop.com>; <stbryant@cisco.com>; <adrian@olddog.co.uk>; <shares@ndzh.com>; <jgs@juniper.net> Cc: <shtyagi@microsoft.com>; <rfc-editor@rfc-editor.org>; <idr@ietf.org> Sent: Wednesday, September 26, 2012 10:06 AM Subject: [Idr] [Technical Errata Reported] RFC4271 (3366) > > The following errata report has been submitted for RFC4271, "A Border > Gateway Protocol 4 (BGP-4)". > > -------------------------------------- > You may review the report below and at: > http://www.rfc-editor.org/errata_search.php?rfc=4271&eid=3366 > > -------------------------------------- > Type: Technical > Reported by: Shashank Tyagi <shtyagi@microsoft.com> > > Section: 8.2.2 > > Original Text > ------------- > If a TcpConnectionFails event (Event 18) is received, the local > system: > > - closes the BGP connection, > > - restarts the ConnectRetryTimer, > > - continues to listen for a connection that may be initiated by > the remote BGP peer, and > > - changes its state to Active. > > Corrected Text > -------------- > If a TcpConnectionFails event (Event 18) is received, the local > system: > > - closes the BGP connection, > > - sets the HoldTimer to 0, > > - restarts the ConnectRetryTimer, > > - continues to listen for a connection that may be initiated by > the remote BGP peer, and > > - changes its state to Active. > > Notes > ----- > HoldTimer should only be used to control time in between BGP packets. > Also in this case it can lead to case in ACTIVE state where HoldTimer expires before the ConnectRetryTimer leading to IDLE state. > > Instructions: > ------------- > This errata is currently posted as "Reported". If necessary, please > use "Reply All" to discuss whether it should be verified or rejected. > When a decision is reached, the verifying party (IESG) can log in to > change the status and edit the report, if necessary. > > -------------------------------------- > RFC4271 (draft-ietf-idr-bgp4-26) > -------------------------------------- > Title : A Border Gateway Protocol 4 (BGP-4) > Publication Date : January 2006 > Author(s) : Y. Rekhter, Ed., T. Li, Ed., S. Hares, Ed. > Category : DRAFT STANDARD > Source : Inter-Domain Routing > Area : Routing > Stream : IETF > Verifying Party : IESG >
- [Idr] [Technical Errata Reported] RFC4271 (3366) RFC Errata System
- Re: [Idr] [Technical Errata Reported] RFC4271 (33… t.petch
- Re: [Idr] [Technical Errata Reported] RFC4271 (33… t.petch
- Re: [Idr] [Technical Errata Reported] RFC4271 (33… Shashank Tyagi
- Re: [Idr] [Technical Errata Reported] RFC4271 (33… t.petch
- Re: [Idr] [Technical Errata Reported] RFC4271 (33… Shashank Tyagi
- Re: [Idr] [Technical Errata Reported] RFC4271 (33… t.petch
- Re: [Idr] [Technical Errata Reported] RFC4271 (33… Shashank Tyagi
- Re: [Idr] [Technical Errata Reported] RFC4271 (33… t.petch
- Re: [Idr] Spam:*******, Re: [Technical Errata Rep… t.petch
- Re: [Idr] Spam:*******, Re: [Technical Errata Rep… shares