Re: NSSA NP option bit clarification

Sina Mirtorabi <sina@CISCO.COM> Thu, 12 June 2003 16:25 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 MAA17532 for <ospf-archive@LISTS.IETF.ORG>; Thu, 12 Jun 2003 12:25:39 -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 <6.00A10B54@cherry.ease.lsoft.com>; Thu, 12 Jun 2003 12:25:40 -0400
Received: from PEACH.EASE.LSOFT.COM by PEACH.EASE.LSOFT.COM (LISTSERV-TCP/IP release 1.8e) with spool id 45430788 for OSPF@PEACH.EASE.LSOFT.COM; Thu, 12 Jun 2003 12:25:39 -0400
Received: from 171.68.227.73 by WALNUT.EASE.LSOFT.COM (SMTPL release 1.0i) with TCP; Thu, 12 Jun 2003 12:25:39 -0400
Received: from smirtoraw2k03 (sjc-vpn4-120.cisco.com [10.21.80.120]) by fire.cisco.com (8.11.6+Sun/8.8.8) with ESMTP id h5CGPa009469 for <OSPF@PEACH.EASE.LSOFT.COM>; Thu, 12 Jun 2003 09:25:36 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
X-Priority: 3 (Normal)
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook, Build 10.0.4024
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4910.0300
Importance: Normal
Message-ID: <017401c330ff$42228c60$386545ab@amer.cisco.com>
Date: Thu, 12 Jun 2003 09:25:36 -0700
Reply-To: Mailing List <OSPF@PEACH.EASE.LSOFT.COM>
Sender: Mailing List <OSPF@PEACH.EASE.LSOFT.COM>
From: Sina Mirtorabi <sina@CISCO.COM>
Subject: Re: NSSA NP option bit clarification
To: OSPF@PEACH.EASE.LSOFT.COM
In-Reply-To: <Pine.LNX.4.44.0306120431120.31577-100000@fogarty.jakma.org>
Precedence: list
Content-Transfer-Encoding: 7bit

Paul,

->-----Original Message-----
->From: Mailing List [mailto:OSPF@PEACH.EASE.LSOFT.COM] On
->Behalf Of Paul Jakma
->Sent: Wednesday, June 11, 2003 8:49 PM
->To: OSPF@PEACH.EASE.LSOFT.COM
->Subject: NSSA NP option bit clarification
->
->
->hi,
->
->I have a question regarding the use of the NP bit in the
->options field, specifically with respect to its use in the
->Database Description header.
->
->>From RFC3101, Appendix A, The NP bit is used in:
->
->options field in Hello, DD and Type-7 LSAs. Its use is described as:

Could you indicate where it says so?
Actually it says that the "option fields" is present in Hello, DD and
LSA

->
->- Hello header, to indicate whether router is Type7 capable. (N bit
->semantics)
->
->- Type-7 LSA, to indicate whether the LSA should or should
->not be translated to Type-5, default is clear. (P bit semantics)
->
->The usage in the DD header options field is not specified.

Appendix A, RFC 3101
-----
N-bit:        The N-bit describes the router's NSSA capability.  The N-
              bit is ##used only in Hello packets## and ensures that all
              members of an NSSA agree on that area's configuration.
              When the N-bit is set in the Hello packet that is sent out
              a particular interface, it means that the router will send
              and receive Type-7 LSAs on that interface.  Two routers
              will not form an adjacency unless they agree on the state
              of the N-bit.  If the N-bit is set in the options field,
              the E-bit must be clear.

P-bit:        The P-bit is ##used only in the Type-7 LSA header##.  It
flags
              the NSSA border router to translate the Type-7 LSA into a
              Type-5 LSA.  The default setting for the P-bit is clear.
-----

Above implies that N/P bit is not used in DD packet

->Hence one presumes OSPFv2 semantics hold, DD options must
->match Hello options

The above presumption is not correct

->(ie current neighbour state wrt to
->options, but change in options usually results in neighour
->state going back to at least ExStart, iirc).

Change in the option _during_ DD exchange result to going back to
Exstart and not if there is a mismatch between Hello and DD Option

->
->However, we have noticed in testing that there is an OSPF
->NSSA implementation from a major vendor which does /not/ set
->the P bit in the DD header, even though N bit in Hello and in
->neighbour state is set, and it is sending Type-7 LSAs.

As mentioned before and according to RFC 3101, N/P bit is Not used for
DD packet so the presence / absence of this bit in DD option packet
should be ignored

Sina

->
->Is there an explanation for this? Or is this implementation wrong?
->
->(at the moment we have hacked the implementation we have
->tested, zebra ospfd, against this vendor's implementation to
->simply set the NP bit in the DD header if N bit is set in
->neighbour-state to allow the DD to be processed, as zebra
->ospfd will otherwise drop DD packets where DD options do not
->match current neighbour state.)
->
->thanks in advance.
->
->regards,
->--
->Paul Jakma      paul@clubi.ie   paul@jakma.org  Key ID: 64A2FF6A
->        warning: do not ever send email to spam@dishone.st
->Fortune:
->/usr/news/gotcha
->