Re: OSPF LSID with vary length masks

Acee Lindem <acee@CISCO.COM> Fri, 15 April 2005 16:49 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 MAA20712 for <ospf-archive@LISTS.IETF.ORG>; Fri, 15 Apr 2005 12:49:18 -0400 (EDT)
Received: from vms.dc.lsoft.com (209.119.0.2) by cherry.ease.lsoft.com (LSMTP for Digital Unix v1.1b) with SMTP id <8.010152CD@cherry.ease.lsoft.com>; Fri, 15 Apr 2005 12:49:18 -0400
Received: by PEACH.EASE.LSOFT.COM (LISTSERV-TCP/IP release 14.3) with spool id 66731010 for OSPF@PEACH.EASE.LSOFT.COM; Fri, 15 Apr 2005 12:49:13 -0400
Received: from 64.102.122.148 by WALNUT.EASE.LSOFT.COM (SMTPL release 1.0l) with TCP; Fri, 15 Apr 2005 12:49:11 -0400
Received: from rtp-core-1.cisco.com (64.102.124.12) by rtp-iport-1.cisco.com with ESMTP; 15 Apr 2005 12:58:59 -0400
X-IronPort-AV: i="3.92,105,1112587200"; d="scan'208"; a="44769182:sNHT63059545168"
Received: from xbh-rtp-201.amer.cisco.com (xbh-rtp-201.cisco.com [64.102.31.12]) by rtp-core-1.cisco.com (8.12.10/8.12.6) with ESMTP id j3FGmkRQ015115 for <OSPF@PEACH.EASE.LSOFT.COM>; Fri, 15 Apr 2005 12:48:47 -0400 (EDT)
Received: from xfe-rtp-212.amer.cisco.com ([64.102.31.100]) by xbh-rtp-201.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.211); Fri, 15 Apr 2005 12:48:46 -0400
Received: from [64.102.199.123] ([64.102.199.123]) by xfe-rtp-212.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.211); Fri, 15 Apr 2005 12:48:45 -0400
User-Agent: Mozilla Thunderbird 0.9 (Windows/20041103)
X-Accept-Language: en-us, en
MIME-Version: 1.0
References: <7A3E36B3528ED04A880178D337F30C9A044F6A16@zrc2hxm1.corp.nortel.com>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
X-OriginalArrivalTime: 15 Apr 2005 16:48:45.0923 (UTC) FILETIME=[FD5B6B30:01C541DA]
Message-ID: <425FF06D.2000202@cisco.com>
Date: Fri, 15 Apr 2005 12:48:45 -0400
Reply-To: Mailing List <OSPF@PEACH.EASE.LSOFT.COM>
Sender: Mailing List <OSPF@PEACH.EASE.LSOFT.COM>
From: Acee Lindem <acee@CISCO.COM>
Subject: Re: OSPF LSID with vary length masks
To: OSPF@PEACH.EASE.LSOFT.COM
In-Reply-To: <7A3E36B3528ED04A880178D337F30C9A044F6A16@zrc2hxm1.corp.nortel.com>
Precedence: list
Content-Transfer-Encoding: 7bit

Zhao-Yang Dong wrote:

>Thanks guys for the quick response, I know what I am going to do about the
>LSAs with the duplicate LSID.
>
>The two LSAs that I mentioned in the example were both from the same third
>party device:
>LSA 1: LsType= 5, LSID=203.177.61.15, mask=255.255.255.240,
>advRtr=10.235.62.11, seq=0x80000001.
>LSA 2: LsType= 5, LSID=203.177.61.15, mask=255.255.255.255,
>advRtr=10.235.62.11, seq=0x80000002.
>
>It is also observed that both Cisco and Juniper routers in that network
>replaced LSA 1 with LSA 2 in their database. 
>  
>
This is the right thing to do as per RFC 2328.

Thanks,
Acee

>Thanks again,
>
>Zhaoyang
>
>
>-----Original Message-----
>From: Mailing List [mailto:OSPF@PEACH.EASE.LSOFT.COM] On Behalf Of Acee
>Lindem
>Sent: Friday, April 15, 2005 9:42 AM
>To: OSPF@PEACH.EASE.LSOFT.COM
>Subject: Re: OSPF LSID with vary length masks
>
>Corrected prefix lengths in example.
>
>Tom Petch wrote:
>
>  
>
>>Agree with everything Dave saids but would stress that OSPF by design does
>>    
>>
>not
>  
>
>>cater for overlapping prefix (from the same router) so a router MUST NOT
>>originate two LSA, one a /24 and the other a /28 for the same prefix.
>>    
>>
>Other
>  
>
>>routing protocols are different which is an issue when redistributing from
>>    
>>
>them
>  
>
>>into OSPF.
>> 
>>
>>    
>>
>Hi Tom,
>Actually the algorithm in RFC 2328 appendix E handles the situation
>above quite nicely. For example, if you want to advertise 10.1.1.0/24
>and 10.1.1.0/28 the LSIDs 10.1.1.0 and 10.1.1.15 will be used. The cases
>it doesn't handle are the more pathological ones. For example, say
>you now also want to advertise 10.1.1.8/29 and 10.1.1.8/30. You'll get
>a conflict since you'll try and use the LSID 10.1.1.15 for both
>10.1.1.0/28 and 10.1.1.8/30. A more common conflict would be if you
>happen to also want to advertise the host route 10.1.1.15/32.
>
>Thanks,
>Acee
>
>
>
>  
>
>>Tom Petch
>>
>>----- Original Message -----
>>From: "Dave Katz" <dkatz@JUNIPER.NET>
>>To: <OSPF@PEACH.EASE.LSOFT.COM>
>>Sent: Friday, April 15, 2005 7:26 AM
>>
>>
>>On Apr 14, 2005, at 4:31 PM, Zhao-Yang Dong wrote:
>>
>> 
>>
>>    
>>
>>>In an OSPF link state database, each LSA is supposed to have a unique
>>>Link State ID (LSID). Sometimes this is not true, especially in
>>>multiple vendor devices environment.
>>>   
>>>
>>>      
>>>
>>The LSA ID is qualified by the originating system, so it is entirely
>>reasonable to have multiple LSAs with the same LSA ID but different
>>router IDs.
>>
>>What is *not* allowed is to have multiple LSAs with the same LSA ID
>>originated by the same system.  This cannot happen according to the
>>rules, and they will not be propagated if they were, also according to
>>the rules.  Whether there are multiple vendors has no impact on this.
>>
>> 
>>
>>    
>>
>>>When originating summary and/or AS-external LSAs, how to assign unique
>>>LSID for a network number who has multiple (different length of) masks
>>>is described in RFC 2328 appendix E. However, I did not see any
>>>discussion in RFC 2328 nor this archive how to handle/process summary
>>>and/or AS-external LSAs received from other routers with the same LSID
>>>but different length of masks.
>>>   
>>>
>>>      
>>>
>>A router can do anything it wants to guarantee LSA ID uniqueness on the
>>LSAs it generates; appendix E is one way (though there are ways that
>>will go further before they fail than the one outlined there.)  Note
>>that RFC2328 also refers to appendix E for Summary LSAs as well;  see
>>appendix A.4.5.
>>
>>It is not the job of a receiving router to deal with this case, because
>>it cannot happen (according to the rules) and it is indistinguishable
>>    
>>
>>from the case where somebody changes the netmask on a redistributed
>  
>
>>static route.
>>
>> 
>>
>>    
>>
>>>According RFC 2328, a LSA is identified by LS type, LSID and
>>>advertising router. To determine which LSA of two LSA instances is
>>>newer, LS sequence number, checksum and age are compared. Network mask
>>>does not seem play any role while processing the received LSAs.
>>>   
>>>
>>>      
>>>
>>It does not, nor should it.  An LSA is identified by originating router
>>ID, LSA type, and LSA ID.  Period.  Any router that attempts to
>>generate two different LSAs with the same ID is broken.
>>
>> 
>>
>>    
>>
>>>My question is, for example, if I received a LSA with LSID=A.B.C.D and
>>>24 bits mask and installed in my database, and later I received the
>>>same LSA (i.e. same LS type, LSID and advertising router) but with 28
>>>bits mask. If the second LSA has the larger sequence number, should I
>>>replace my database copy with the second LSA?
>>>   
>>>
>>>      
>>>
>>That's what the rules say.  This is why a broken system generating
>>multiple LSAs with the same ID will not get far;  only one of them
>>(with the higher sequence number) will get acknowledged, and the other
>>will be retransmitted ad infinitum.
>>
>>
>>The problem is that the Founding Fathers that spec'ed OSPF screwed up
>>and overloaded the LSA ID with routing information because they were
>>afraid of spending another four bytes per LSA.  One could blame it on
>>classful networking, but in a purely classful environment you wouldn't
>>even need masks.  Basically it was yet another mistaken optimization.
>>
>>It's impossible to guarantee uniqueness;  if you try hard enough you
>>can generate a situation that no algorithm can work around (because the
>>LSA ID space is by definition sparse due to the masking requirement,
>>but the space of possible external routes is dense.)  As a practical
>>matter, however, it's very unlikely that there will be an LSA ID
>>collision if a reasonably good algorithm is chosen.
>>
>>
>>BTW, the cisco IOS implementation appears to attempt to detect this
>>case, though it's not clear why.  I assume it complains if it sees the
>>same LSA ID and a different netmask, but that's a perfectly legal
>>situation.  If anybody from cisco can explain this, I'm quite curious.
>>
>>--Dave
>>
>>
>> 
>>
>>    
>>
>>>Thanks,
>>>
>>>Zhaoyang
>>>
>>>
>>>   
>>>
>>>      
>>>
>> 
>>
>>    
>>
>
>
>  
>