Re: [OSPF] [Technical Errata Reported] RFC2328 (3974)

Acee Lindem <acee.lindem@ericsson.com> Wed, 07 May 2014 15:04 UTC

Return-Path: <acee.lindem@ericsson.com>
X-Original-To: ospf@ietfa.amsl.com
Delivered-To: ospf@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 03B0A1A04AC for <ospf@ietfa.amsl.com>; Wed, 7 May 2014 08:04:43 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Level:
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_PASS=-0.001] autolearn=ham
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 ekdRQiyu1uqD for <ospf@ietfa.amsl.com>; Wed, 7 May 2014 08:04:39 -0700 (PDT)
Received: from usevmg20.ericsson.net (usevmg20.ericsson.net [198.24.6.45]) by ietfa.amsl.com (Postfix) with ESMTP id 1933D1A0883 for <ospf@ietf.org>; Wed, 7 May 2014 08:04:39 -0700 (PDT)
X-AuditID: c618062d-f79c96d000001cfc-73-5369fc7e0a23
Received: from EUSAAHC006.ericsson.se (Unknown_Domain [147.117.188.90]) by usevmg20.ericsson.net (Symantec Mail Security) with SMTP id 3B.8B.07420.E7CF9635; Wed, 7 May 2014 11:27:27 +0200 (CEST)
Received: from EUSAAMB101.ericsson.se ([147.117.188.118]) by EUSAAHC006.ericsson.se ([147.117.188.90]) with mapi id 14.03.0174.001; Wed, 7 May 2014 11:04:33 -0400
From: Acee Lindem <acee.lindem@ericsson.com>
To: Mike Dubrovskiy <mdubrovs@cisco.com>
Thread-Topic: [Technical Errata Reported] RFC2328 (3974)
Thread-Index: AQHPX+K+sEUMQ+NpHkOCbQLGrg4woZszvKOAgACOkwCAAUNfAA==
Date: Wed, 07 May 2014 15:04:32 +0000
Message-ID: <F96DB99B-D7B5-4D18-906E-3D02E41EA279@ericsson.com>
References: <20140424172827.6ABD01801A2@rfc-editor.org> <CF8E74D4.2D697%acee.lindem@ericsson.com> <534FD0D7D9E99740A077CE1A38EB79C33FA6D5E0@xmb-aln-x03.cisco.com>
In-Reply-To: <534FD0D7D9E99740A077CE1A38EB79C33FA6D5E0@xmb-aln-x03.cisco.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [147.117.188.11]
Content-Type: text/plain; charset="us-ascii"
Content-ID: <C541F8199C758C419210C0F2A1340C0F@ericsson.com>
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrGIsWRmVeSWpSXmKPExsUyuXRPlG79n8xgg7+LBCx+9Nxgtvj08BKz xeGDs9gsJs6VsXj4aw2bRcu9e+wWTfu/sjmwe/xbvY3ZY8rvjaweO2fdZfdYsuQnk8eKzSsZ PRrajrEGsEVx2aSk5mSWpRbp2yVwZczf/ZOx4Khjxcruj6wNjA3GXYycHBICJhIb7u9nhrDF JC7cW8/WxcjFISRwlFFi/99HzBDOMkaJ28tPsoJUsQnoSDx/9A+sQ0RAQ6Lt4jt2kCJmgTOM Ei8+XGEBSQgLmEvs+ruACaLIQmLF/ZWMXYwcQLaTxJNleSBhFgEViStz/rGD2LwC9hKPXnSx wy3bdGUz2BxOAV+JnX9/M4LYjEDnfT+1Bmwms4C4xK0n85kgzhaQWLLnPNQLohIvH/9jhbCV JD7+ns8OUa8jsWD3JzYI21pi2cP9LBC2tsSyha+ZIY4QlDg58wnLBEbxWUhWzELSPgtJ+ywk 7bOQtC9gZF3FyFFanFqWm25ksIkRGLHHJNh0dzDueWl5iFGAg1GJh3fBpoxgIdbEsuLK3EOM 0hwsSuK8BV9ig4UE0hNLUrNTUwtSi+KLSnNSiw8xMnFwSjUwKkya/kR92vVGi8+tOlql2mlz yzdc8D4txr5xu4PcX5XHESKqFibTVCvkv5dJntidl70r0j+3PqqUIzO4dcfM6OwXsoLnPsxQ amw1CVbaOE+4oXnTJZaKC4f9TjsYl90NT1MN2DMlMVWU59es+Q6aC+Is9u7YrWk5fcrvb97t 9x4cv/JGPH6NEktxRqKhFnNRcSIAfGQAJbkCAAA=
Archived-At: http://mailarchive.ietf.org/arch/msg/ospf/Y7I7Tk07R0H60F8uHyDgLowLFWg
Cc: "jmoy@casc.com" <jmoy@casc.com>, OSPF List <ospf@ietf.org>, RFC Editor <rfc-editor@rfc-editor.org>
Subject: Re: [OSPF] [Technical Errata Reported] RFC2328 (3974)
X-BeenThere: ospf@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: The Official IETF OSPG WG Mailing List <ospf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ospf>, <mailto:ospf-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/ospf/>
List-Post: <mailto:ospf@ietf.org>
List-Help: <mailto:ospf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ospf>, <mailto:ospf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 07 May 2014 15:04:43 -0000

Hi Mike, 
The intent of your change was evident from the errata ;^)  My question is how it solves the problem when the two instance are not the same instance since they differ by more than MaxAgeDiff as described in the errata (see excerpted text below): 

>>> Notes
>>> -----
>>> The problem arises when the routing domain has two instances of LSA
>>> with the same sequence number and the same checksum, but with an age
>>> difference bigger than MaxAgeDiff.


Acee 

On May 6, 2014, at 3:47 PM, Mike Dubrovskiy (mdubrovs) <mdubrovs@cisco.com> wrote:

> Hi Acee,
> 
> Thank you for looking into it. Please find my explanation below:
> 
> Before the errata:
> 
> Step 5 - received LSA is more recent
> Step 6 - received LSA is on Link state request list
> Step 7 - received LSA is the same instance
> Step 8 - received LSA is older
> 
> 
> With the errata:
> 
> Step 5 - received LSA is more recent
> Step 6- received LSA is the same instance
> Step 7 - received LSA is on Link state request list 
> Step 8 - received LSA is older
> 
> Mike
> 
> P.S. The issue is quite easily reproducible if implementation allows setting the value of the InfTransDelay.
> 
> 
>> -----Original Message-----
>> From: Acee Lindem [mailto:acee.lindem@ericsson.com]
>> Sent: Tuesday, May 06, 2014 11:17 AM
>> To: RFC Errata System; jmoy@casc.com; akatlas@gmail.com;
>> adrian@olddog.co.uk; Abhay Roy (akr)
>> Cc: Mike Dubrovskiy (mdubrovs); ospf@ietf.org
>> Subject: Re: [Technical Errata Reported] RFC2328 (3974)
>> 
>> Hi Mike,
>> 
>> Since the current step 7 deals with the SAME instance of the LSA, I don't see
>> how swapping steps 6 and 7 solves the problem. Perhaps, I'm missing some
>> other edit?
>> 
>> Thanks,
>> Acee
>> 
>> -----Original Message-----
>> From: RFC Errata System <rfc-editor@rfc-editor.org>
>> Date: Thursday, April 24, 2014 10:28 AM
>> To: "jmoy@casc.com" <jmoy@casc.com>, Alia Atlas <akatlas@gmail.com>,
>> Adrian Farrel <adrian@olddog.co.uk>, Abhay Roy <akr@cisco.com>, Ericsson
>> <acee.lindem@ericsson.com>
>> Cc: Mike Dubrovskiy <mdubrovs@cisco.com>, OSPF - OSPF WG List
>> <ospf@ietf.org>, "rfc-editor@rfc-editor.org" <rfc-editor@rfc-editor.org>
>> Subject: [Technical Errata Reported] RFC2328 (3974)
>> 
>>> The following errata report has been submitted for RFC2328, "OSPF
>>> Version 2".
>>> 
>>> --------------------------------------
>>> You may review the report below and at:
>>> http://www.rfc-editor.org/errata_search.php?rfc=2328&eid=3974
>>> 
>>> --------------------------------------
>>> Type: Technical
>>> Reported by: Mike Dubrovsky <mdubrovs@cisco.com>
>>> 
>>> Section: 13
>>> 
>>> Original Text
>>> -------------
>>>   (6) Else, if there is an instance of the LSA on the sending
>>>       neighbor's Link state request list, an error has occurred in the
>>>       Database Exchange process.  In this case, restart the Database
>>>       Exchange process by generating the neighbor event BadLSReq for
>>>       the sending neighbor and stop processing the Link State Update
>>>       packet.
>>> 
>>>   (7) Else, if the received LSA is the same instance as the database
>>>       copy (i.e., neither one is more recent) the following two steps
>>>       should be performed:
>>> 
>>>       (a) If the LSA is listed in the Link state retransmission list
>>>           for the receiving adjacency, the router itself is expecting
>>>           an acknowledgment for this LSA.  The router should treat the
>>>           received LSA as an acknowledgment by removing the LSA from
>>>           the Link state retransmission list.  This is termed an
>>>           "implied acknowledgment".  Its occurrence should be noted
>>>           for later use by the acknowledgment process (Section 13.5).
>>> 
>>>       (b) Possibly acknowledge the receipt of the LSA by sending a
>>>           Link State Acknowledgment packet back out the receiving
>>>           interface.  This is explained below in Section 13.5.
>>> 
>>> 
>>> Corrected Text
>>> --------------
>>>   (6) Else, if the received LSA is the same instance as the database
>>>       copy (i.e., neither one is more recent) the following two steps
>>>       should be performed:
>>> 
>>>       (a) If the LSA is listed in the Link state retransmission list
>>>           for the receiving adjacency, the router itself is expecting
>>>           an acknowledgment for this LSA.  The router should treat the
>>>           received LSA as an acknowledgment by removing the LSA from
>>>           the Link state retransmission list.  This is termed an
>>>           "implied acknowledgment".  Its occurrence should be noted
>>>           for later use by the acknowledgment process (Section 13.5).
>>> 
>>>       (b) Possibly acknowledge the receipt of the LSA by sending a
>>>           Link State Acknowledgment packet back out the receiving
>>>           interface.  This is explained below in Section 13.5.
>>> 
>>>   (7) Else, if there is an instance of the LSA on the sending
>>>       neighbor's Link state request list, an error has occurred in the
>>>       Database Exchange process.  In this case, restart the Database
>>>       Exchange process by generating the neighbor event BadLSReq for
>>>       the sending neighbor and stop processing the Link State Update
>>>       packet.
>>> 
>>> 
>>> Notes
>>> -----
>>> The problem arises when the routing domain has two instances of LSA
>>> with the same sequence number and the same checksum, but with an age
>>> difference bigger than MaxAgeDiff.
>>> 
>>> The above could take place in multiple scenarios. Here are two examples:
>>> 
>>> 1) There is a demand circuit somewhere in the routing domain
>>> 2) The router lost its ASBR status and therefore flushed the
>>> self-originated Type 5 LSAs
>>>  but later on gained the ASBR status back and re-originated Type 5.
>>>  If the network was partitioned, each partition can have two
>>> instances of LSA
>>>  with an age difference bigger than MaxAgeDiff.
>>> 
>>> The two instances of LSA can temporarily prevent the adjacency formation.
>>> 
>>> Consider the example below:
>>> 
>>> 
>>> Topology
>>> ========
>>> 
>>> 
>>> RT1 ----- RT2
>>> 
>>> Initial state:
>>> ==============
>>> The physical link between RT1 and R2 just came up The routers are about
>>> to form ospf adjacency.
>>> 
>>> Initial link-state databases:
>>> =============================
>>> R1 ospf database has          LSA 10.0.0.1 age 910 seq # 0x80000001
>>> R2 ospf database has the same LSA 10.0.0.1 age   9 seq # 0x80000001
>>> 
>>> RT1 Event Sequence:
>>> ===============
>>> 
>>> RT1 is starting to form adjacency with RT2.
>>> 
>>> 1) During the Database Exchange, RT2's LSA instance is more recent
>>> because of more than 900 (MaxAgeDiff) seconds age difference (section
>>> 13.1 of RFC 2328).
>>> 2) So RT1 requests the LSA
>>> 3) RT2 sends the LSA after incrementing the age by 1 (InfTransDelay).
>>> 4) When the LSA instance arrives to RT1, it is identical (the
>>> difference is exactly 900 seconds now).
>>> 
>>> So RT1 aborts Loading according to step (6) of section 13.
>>> 
>>> 
>>> Solution:
>>> =========
>>> 
>>> Swap steps (6) and (7) of section 13.
>>> 
>>> 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.
>>> 
>>> --------------------------------------
>>> RFC2328 (no draft string recorded)
>>> --------------------------------------
>>> Title               : OSPF Version 2
>>> Publication Date    : April 1998
>>> Author(s)           : J. Moy
>>> Category            : INTERNET STANDARD
>>> Source              : Open Shortest Path First IGP
>>> Area                : Routing
>>> Stream              : IETF
>>> Verifying Party     : IESG
>