Re: OSPFv3 BadLSReq

Acee Lindem <acee@REDBACK.COM> Wed, 28 May 2003 03:23 UTC

Received: from cherry.ease.lsoft.com (cherry.ease.lsoft.com [209.119.0.109]) by ietf.org (8.9.1a/8.9.1a) with ESMTP id XAA17180 for <ospf-archive@LISTS.IETF.ORG>; Tue, 27 May 2003 23:23:30 -0400 (EDT)
Received: from PEAR.EASE.LSOFT.COM (209.119.0.19) by cherry.ease.lsoft.com (LSMTP for Digital Unix v1.1b) with SMTP id <14.009E79CF@cherry.ease.lsoft.com>; Tue, 27 May 2003 23:23:31 -0400
Received: from PEACH.EASE.LSOFT.COM by PEACH.EASE.LSOFT.COM (LISTSERV-TCP/IP release 1.8e) with spool id 43881672 for OSPF@PEACH.EASE.LSOFT.COM; Tue, 27 May 2003 23:23:28 -0400
Received: from 24.93.67.82 by WALNUT.EASE.LSOFT.COM (SMTPL release 1.0i) with TCP; Tue, 27 May 2003 23:23:28 -0400
Received: from redback.com (rdu162-235-058.nc.rr.com [24.162.235.58]) by ms-smtp-01.southeast.rr.com (8.12.5/8.12.2) with ESMTP id h4S3ICsb001189 for <OSPF@PEACH.EASE.LSOFT.COM>; Tue, 27 May 2003 23:18:13 -0400 (EDT)
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.2) Gecko/20030208 Netscape/7.02
X-Accept-Language: en-us, en
MIME-Version: 1.0
References: <20030527103605.5037.SASAKI@soft.net.fujitsu.co.jp> <3ED3A37F.2050803@redback.com> <20030528094801.7A22.SASAKI@soft.net.fujitsu.co.jp>
Content-Type: text/plain; charset="us-ascii"; format="flowed"
Content-Transfer-Encoding: 7bit
Message-ID: <3ED42B4F.2080906@redback.com>
Date: Tue, 27 May 2003 23:21:51 -0400
Reply-To: Mailing List <OSPF@PEACH.EASE.LSOFT.COM>
Sender: Mailing List <OSPF@PEACH.EASE.LSOFT.COM>
From: Acee Lindem <acee@REDBACK.COM>
Subject: Re: OSPFv3 BadLSReq
To: OSPF@PEACH.EASE.LSOFT.COM
Precedence: list
Content-Transfer-Encoding: 7bit

Hello Taisuke Sasaki,

Maybe I am missing your scenario. See below.

Taisuke Sasaki wrote:
> Hello Acee.
> Thank you for your reply.
>
> I had an error in writing in my previous mail.
>
>
>>Taisuke Sasaki wrote:
>>
>>>I have a question about a OSPFv3 Database exchange process.
>>>
>>>Suppose below:
>>>1) R1 has only 1 Broadcast interface in Area 0.
>>>   R2 has 2 interfaces in Area 0.
>>>   (one is a broadcast and the other is a loopback)
>>>
>>>2) Both the R1's interface and the R2's are assigned
>>>   the same IPv6 prefix (Prefix A).
>>>
>>>3) At first, the link between R1 and R2 is down.
>>>
>>>4) Consider about R1.
>>>
>>>   +---+  Prefix A   +---+
>>>   |R1 +------X------+R2 |
>>>   +---+             +---+
>>>
>>>When the link is up, R1 originates a Intra-Area-Prefix-LSA
>>>associated with a Router-LSA.
>>>This Intra-Area-Prefix-LSA has a Prefix A.
>>>
>>>In a database exchange process:
>>>when R1 receives the last Database Description packet from R2,
>>>neighbor event "ExchangeDone" happens and neighbor state
>>>transits to "Loading" or "Full" in R1.
>>>
>>>If the neighbor state transit to "Full",
>>>R1 flushes an Intra-Area-Prefix-LSA associate with a Router-LSA
>>>through premature aging process because it is thought that the
>>>interface turns to be adjacent.
>>>
>>>After the above event:
>>>When R1 receives a LS-Request packet from R2,
>>>it is possible that neighbor event "BadLSReq" happens in R1
>>>because R2 told R1 in Database Description packets that
>>>I had an Intra-Area-Prefix-LSA associated with a Router-LSA .
>>>But now, R1 has already flushed it.
>>>
>>
>
> When R1 receives a LS-Request packet from R2,
> it is possible that neighbor event "BadLSReq" happens in R1
> because R1 told R2 in Database Description packets that
>         ^^^^^^^^^^
> I had an Intra-Area-Prefix-LSA associated with a Router-LSA .
> But now, R1 has already flushed it.
>
>
>
>>R2 should place the MaxAge LSA on neighbor R1's retransmission list
>>when it flushes it. The LSA should not be removed from R2's
>>link state database as long as there are routers in exchange or
>>loading state. Refer to RFC 2328 section 14.1.
>
>
> In R1, the LSA(Intra-Area-Prefix-LSA associated with a Router-LSA)
> was already flushed because R2's neighbor state is "FULL".
> There in no router in exchange or loading state.

Then how can there be a LS Request packet if neither router is in
exchange/loading state?

>
> The point is below:
> 1) R1 told R2 that R1 had an Intra-Area-Prefix-LSA associated
>    with a Router-LSA in Database Description packets.
>    So, R2 will request the Intra-Area-Prefix-LSA.

The reference LSA in the intra-area prefix LSA should not be
examined in the database exchange process. Each LSA should
be considered synchronized individually.

>
> nevertheless,
>
> 2) When R1 receives a LS-Request packet from R2,
>    it is possible that R2's neighbor state is already full,
>    and there is no router in exchange or loading state,

Nope - A router will only send a LS-Request packet in
exchange/loading state.


>    and an Intra-Area-Prefix-LSA associated with a Router-LSA
>    is already flushed in R1's link state database.
>    So, BadLSReq event will happen.
>
> ---
> taisuke sasaki
>


--
Acee