draft-ietf-ospf-overflow-00.txt   rfc1765.txt 
Network Working Group J. Moy Network Working Group J. Moy
Internet Draft Cascade Request for Comments: 1765 Cascade
Expiration Date: May 1995 November 1994 Category: Experimental March 1995
File name: draft-ietf-ospf-overflow-00.txt
OSPF Database Overflow OSPF Database Overflow
Status of this Memo Status of this Memo
This document is an Internet-Draft. Internet-Drafts are working This memo defines an Experimental Protocol for the Internet
documents of the Internet Engineering Task Force (IETF), its areas, community. This memo does not specify an Internet standard of any
and its working groups. Note that other groups may also distribute kind. Discussion and suggestions for improvement are requested.
working documents as Internet-Drafts. Distribution of this memo is unlimited.
Internet-Drafts are draft documents valid for a maximum of six
months and may be updated, replaced, or obsoleted by other documents
at any time. It is inappropriate to use Internet- Drafts as
reference material or to cite them other than as "work in progress".
To learn the current status of any Internet-Draft, please check the
"1id-abstracts.txt" listing contained in the Internet- Drafts Shadow
Directories on ds.internic.net (US East Coast), nic.nordu.net
(Europe), ftp.isi.edu (US West Coast), or munnari.oz.au (Pacific
Rim).
Abstract Abstract
Proper operation of the OSPF protocol requires that all OSPF routers Proper operation of the OSPF protocol requires that all OSPF routers
maintain an identical copy of the OSPF link-state database. maintain an identical copy of the OSPF link-state database. However,
However, when the size of the link-state database becomes very when the size of the link-state database becomes very large, some
large, some routers may be unable to keep the entire database due to routers may be unable to keep the entire database due to resource
resource shortages; we term this "database overflow". When database shortages; we term this "database overflow". When database overflow
overflow is anticipated, the routers with limited resources can be is anticipated, the routers with limited resources can be
accommodated by configuring OSPF stub areas and NSSAs. This memo accommodated by configuring OSPF stub areas and NSSAs. This memo
details a way of gracefully handling unanticipated database details a way of gracefully handling unanticipated database
overflows. overflows.
This memo is a product of the OSPF Working Group. Please send This memo is a product of the OSPF Working Group. Please send
comments to ospf@gated.cornell.edu. comments to ospf@gated.cornell.edu.
Table of Contents Table of Contents
1 Overview ............................................... 3 1. Overview ............................................... 2
2 Implementation details ................................. 4 2. Implementation details ................................. 3
2.1 Configuration .......................................... 4 2.1 Configuration .......................................... 3
2.2 Entering OverflowState ................................. 5 2.2 Entering OverflowState ................................. 4
2.3 Operation while in OverflowState ....................... 6 2.3 Operation while in OverflowState ....................... 5
2.3.1 Modifications to Flooding .............................. 6 2.3.1 Modifications to Flooding .............................. 5
2.3.2 Originating AS-external-LSAs ........................... 7 2.3.2 Originating AS-external-LSAs ........................... 6
2.3.3 Receiving self-originated LSAs ......................... 7 2.3.3 Receiving self-originated LSAs ......................... 6
2.4 Leaving OverflowState .................................. 7 2.4 Leaving OverflowState .................................. 6
3 An example ............................................. 7 3. An example ............................................. 6
4 Administrative response to database overflow ........... 8 4. Administrative response to database overflow ........... 7
5 Operational experience ................................. 9 5. Operational experience ................................. 8
6 Possible enhancements .................................. 9 6. Possible enhancements .................................. 8
A Related MIB parameters ................................ 10 A. Related MIB parameters ................................ 8
References ............................................ 11 References ............................................ 9
Security Considerations ............................... 11 Security Considerations ............................... 9
Author's Address ...................................... 11 Author's Address ...................................... 9
1. Overview 1. Overview
OSPF requires that all OSPF routers within a single area maintain an OSPF requires that all OSPF routers within a single area maintain an
identical copy of the OSPF link-state database. However, when the identical copy of the OSPF link-state database. However, when the
size of the link-state database becomes very large, some routers may size of the link-state database becomes very large, some routers may
be unable to keep the entire database due to resource shortages; we be unable to keep the entire database due to resource shortages; we
term this "database overflow". For example, a regional network may term this "database overflow". For example, a regional network may
have a very large OSPF database because it is importing a large have a very large OSPF database because it is importing a large
number of external routes into OSPF. Unless database overflow is number of external routes into OSPF. Unless database overflow is
handled correctly, routers will end up with inconsistent views of handled correctly, routers will end up with inconsistent views of the
the network, possibly leading to incorrect routing. network, possibly leading to incorrect routing.
One way of handling database overflow is to encase routers having One way of handling database overflow is to encase routers having
limited resources within OSPF stub areas (see Section 3.6 of [1]) or limited resources within OSPF stub areas (see Section 3.6 of [1]) or
NSSAs ([2]). AS-external-LSAs are omitted from these areas' link- NSSAs ([2]). AS-external-LSAs are omitted from these areas' link-
state databases, thereby controlling database size. state databases, thereby controlling database size.
However, unexpected database overflows cannot be handled in the However, unexpected database overflows cannot be handled in the above
above manner. This memo describes a way of dynamically limiting manner. This memo describes a way of dynamically limiting database
database size under overflow conditions. The basic mechanism is as size under overflow conditions. The basic mechanism is as follows:
follows:
(1) A parameter, ospfExtLsdbLimit, is configured in each router (1) A parameter, ospfExtLsdbLimit, is configured in each router
indicating the maximum number of AS-external-LSAs (excluding indicating the maximum number of AS-external-LSAs (excluding
those describing the default route) that are allowed in the those describing the default route) that are allowed in the
link-state database. This parameter must be the same in all link-state database. This parameter must be the same in all
routers in the routing domain (see Section 2.1); synchronization routers in the routing domain (see Section 2.1); synchronization
of the parameter is achieved via network management. of the parameter is achieved via network management.
(2) In any router's database, the number of AS-external-LSAs (2) In any router's database, the number of AS-external-LSAs
(excluding default) is never allowed to exceed ospfExtLsdbLimit. (excluding default) is never allowed to exceed ospfExtLsdbLimit.
skipping to change at page 3, line 49 skipping to change at page 2, line 48
(3) If the number of non-default AS-external-LSAs in a router's (3) If the number of non-default AS-external-LSAs in a router's
database hits ospfExtLsdbLimit, the router a) flushes all non- database hits ospfExtLsdbLimit, the router a) flushes all non-
default AS-external-LSAs that it has itself originated (see default AS-external-LSAs that it has itself originated (see
Section 2.2) and b) goes into "OverflowState". Section 2.2) and b) goes into "OverflowState".
(4) While in OverflowState, the router refuses to originate any (4) While in OverflowState, the router refuses to originate any
non-default AS-external-LSAs (see Section 2.3.2). non-default AS-external-LSAs (see Section 2.3.2).
(5) Optionally, the router can attempt to leave OverflowState after (5) Optionally, the router can attempt to leave OverflowState after
the configurable parameter ExitOverflowInterval has elapsed the configurable parameter ospfExitOverflowInterval has elapsed
since entering Overflow state (see Section 2.4). Only at this since entering OverflowState (see Section 2.4). Only at this
point can the router resume originating non-default AS- point can the router resume originating non-default AS-
external-LSAs. external-LSAs.
The reason for limiting non-default AS-external-LSAs, but not other The reason for limiting non-default AS-external-LSAs, but not other
LSA types, is twofold. First of all, the non-default AS-external LSA types, is twofold. First of all, the non-default AS-external LSAs
LSAs are the most likely to dominate the database size in those are the most likely to dominate database size in those networks with
networks with huge databases (e.g., regional networks; see [5]). huge databases (e.g., regional networks; see [5]). Second, the non-
Second, the non-default AS-external-LSAs can be viewed as "optional" default AS-external-LSAs can be viewed as "optional" in the following
in the following sense: the router can probably be sense: the router can probably be monitored/reconfigured without
monitored/reconfigured without them. (However, using similar them. (However, using similar strategies, other LSA types can also be
strategies, other LSA types can also be limited; see Section 5.) limited; see Section 5.)
The method of dealing with database overflow described herein has The method of dealing with database overflow described herein has the
the following desirable properties: following desirable properties:
o After a short period of convergence, all routers will have o After a short period of convergence, all routers will have
identical link-state databases. This database will contain less identical link-state databases. This database will contain less
than ospfExtLsdbLimit non-default AS-external-LSAs. than ospfExtLsdbLimit non-default AS-external-LSAs.
o At all times, routing WITHIN the OSPF Autonomous System will o At all times, routing WITHIN the OSPF Autonomous System will
remain intact. Among other things, this means that the routers remain intact. Among other things, this means that the routers
will continue to be manageable. will continue to be manageable.
o Default routing to external destinations will also remain o Default routing to external destinations will also remain
intact. This hopefully will mean that a large amount of external intact. This hopefully will mean that a large amount of external
connectivity will be preserved, although possibly taking less connectivity will be preserved, although possibly taking less
efficient routes. efficient routes.
o If parameter ExitOverflowInterval is configured, the OSPF system o If parameter ospfExitOverflowInterval is configured, the OSPF
will recover fully and automatically (i.e., without network system will recover fully and automatically (i.e., without
management intervention) from transient database overflow network management intervention) from transient database
conditions (see Section 2.4). overflow conditions (see Section 2.4).
2. Implementation details 2. Implementation details
This section describes the mechanism for dealing with database This section describes the mechanism for dealing with database
overflow in more detail. The section is organized around the concept overflow in more detail. The section is organized around the concept
OverflowState, describing how routers enter the OverflowState, the OverflowState, describing how routers enter the OverflowState, the
operation of the router while in OverflowState, and when the router operation of the router while in OverflowState, and when the router
leaves OverflowState. leaves OverflowState.
2.1. Configuration 2.1. Configuration
The following configuration parameters are added to support the The following configuration parameters are added to support the
database overflow functionality. These parameters are set by database overflow functionality. These parameters are set by
network management. network management.
ospfExtLsdbLimit ospfExtLsdbLimit
When the number of non-default AS-external-LSAs in a When the number of non-default AS-external-LSAs in a
router's link-state database reaches ospfExtLsdbLimit, the router's link-state database reaches ospfExtLsdbLimit, the
router enters OverflowState. The router never holds more router enters OverflowState. The router never holds more
than ospfExtLsdbLimit non-default AS-external-LSAs in its than ospfExtLsdbLimit non-default AS-external-LSAs in its
database. database.
OspfExtLsdbLimit MUST be set identically in all routers ospfExtLsdbLimit MUST be set identically in all routers
attached to the OSPF backbone and/or any "regular" OSPF attached to the OSPF backbone and/or any "regular" OSPF
area. (This memo does not pertain to routers contained area. (This memo does not pertain to routers contained
within OSPF stub areas or NSSAs, since such routers do not within OSPF stub areas nor NSSAs, since such routers do not
receive AS-external-LSAs.) If ospfExtLsdbLimit is not set receive AS-external-LSAs.) If ospfExtLsdbLimit is not set
identically in all routers, then when the database identically in all routers, then when the database
overflows: 1) the routers will NOT converge on a common overflows: 1) the routers will NOT converge on a common
link-state database, 2) incorrect routing, possibly link-state database, 2) incorrect routing, possibly
including routing loops, will result and 3) constant including routing loops, will result and 3) constant
retransmission of AS-external-LSAs will occur. Identical retransmission of AS-external-LSAs will occur. Identical
setting of ospfExtLsdbLimit is achieved/ensured by network setting of ospfExtLsdbLimit is achieved/ensured by network
management. management.
When ospfExtLsdbLimit is set in a router, the router must When ospfExtLsdbLimit is set in a router, the router must
have some way to guarantee that it can hold that many non- have some way to guarantee that it can hold that many non-
default AS-external-LSAs in its link-state database. One way default AS-external-LSAs in its link-state database. One way
of doing this is to preallocate resources (e.g., memory) for of doing this is to preallocate resources (e.g., memory) for
the configured number of LSAs. the configured number of LSAs.
ExitOverflowInterval ospfExitOverflowInterval
The number of minutes that, after entering OverflowState, a The number of seconds that, after entering OverflowState, a
router will attempt to leave OverflowState. This allows the router will attempt to leave OverflowState. This allows the
router to again originate non-default AS-external-LSAs. When router to again originate non-default AS-external-LSAs. When
set to 0, the router will not leave OverflowState until set to 0, the router will not leave OverflowState until
restarted. The default setting for ExitOverflowInterval is restarted. The default setting for ospfExitOverflowInterval
0. is 0.
It is not necessary for ExitOverflowInterval to be It is not necessary for ospfExitOverflowInterval to be
configured the same in all routers. A smaller value may be configured the same in all routers. A smaller value may be
configured in those routers that originate the "more configured in those routers that originate the "more
important" AS-external-LSAs. In fact, setting important" AS-external-LSAs. In fact, setting
ExitOverflowInterval the same may cause problems, as ospfExitOverflowInterval the same may cause problems, as
multiple routers attempt to leave OverflowState multiple routers attempt to leave OverflowState
simultaneously. For this reason, the value of simultaneously. For this reason, the value of
ExitOverflowInterval must be "jittered" by adding a random ospfExitOverflowInterval must be "jittered" by randomly
number in the range of 1 to 10 to ExitOverflowInterval varying its value within the range of plus or minus 10
before using. percent before using.
2.2. Entering OverflowState
The router enters OverflowState when the number of non-default 2.2. Entering OverflowState
AS-external-LSAs in the database hits ospfExtLsdbLimit. There
are two cases when this can occur. First, when receiving an LSA
during flooding. In this case, an LSA which does not already
have a database instance is added in Step 5 of Section 13 of
[1]. The second case is when the router originates a non- The router enters OverflowState when the number of non-default
default AS-external-LSA itself. AS-external-LSAs in the database hits ospfExtLsdbLimit. There are
two cases when this can occur. First, when receiving an LSA during
flooding. In this case, an LSA which does not already have a
database instance is added in Step 5 of Section 13 of [1]. The
second case is when the router originates a non-default AS-
external-LSA itself.
Whenever the router enters OverflowState it flushes all non- Whenever the router enters OverflowState it flushes all non-
default AS-external-LSAs that it itself had originated. Flushing default AS-external-LSAs that it itself had originated. Flushing
is accomplished through the premature aging scheme described in is accomplished through the premature aging scheme described in
Section 14.1 of [1]. Only self-originated LSAs are flushed; Section 14.1 of [1]. Only self-originated LSAs are flushed; those
those originated by other routers are kept in the link-state originated by other routers are kept in the link-state database.
database.
2.3. Operation while in OverflowState 2.3. Operation while in OverflowState
While in OverflowState, the flooding and origination of non- While in OverflowState, the flooding and origination of non-
default AS-external-LSAs are modified in the following fashion. default AS-external-LSAs are modified in the following fashion.
2.3.1. Modifications to Flooding 2.3.1. Modifications to Flooding
Flooding while in OverflowState is modified as follows. If Flooding while in OverflowState is modified as follows. If in
in Step 5 of Section 13 of [1], a non-default AS-external- Step 5 of Section 13 of [1], a non-default AS-external-LSA has
LSA has been received that a) has no current database been received that a) has no current database instance and b)
instance and b) would cause the count of non-default AS- would cause the count of non-default AS-external-LSAs to exceed
external-LSAs to exceed ospfExtLsdbLimit, then that LSA is ospfExtLsdbLimit, then that LSA is discarded. Such an LSA is
discarded. Such an LSA is not installed in the link-state not installed in the link-state database, nor is it
database, nor is it acknowledged. acknowledged.
When all routers have identical values for ospfExtLsdbLimit When all routers have identical values for ospfExtLsdbLimit (as
(as required), the above flooding modification should be required), the above flooding modification will only be invoked
exercised only during a short period of convergence. During during a short period of convergence. During convergence, there
convergence, there will be retransmissions of LSAs. However, will be retransmissions of LSAs. However, after convergence the
after convergence the retransmissions will cease, as the retransmissions will cease, as the routers settle on a database
routers settle on a database having less than having less than ospfExtLsdbLimit non-default As-external-LSAs.
ospfExtLsdbLimit non-default As-external-LSAs.
In OverflowState, non-default AS-external-LSAs ARE still In OverflowState, non-default AS-external-LSAs ARE still
accepted in the following conditions: accepted in the following conditions:
(1) If the LSA updates an LSA that currently exists in the (1) If the LSA updates an LSA that currently exists in the
router's link-state database. router's link-state database.
(2) LSAs having LS age of MaxAge are always accepted. The (2) LSAs having LS age of MaxAge are always accepted. The
processing of these LSAs follows the procedures processing of these LSAs follows the procedures
described in Sections 13 and 14 of [1]. described in Sections 13 and 14 of [1].
(3) If adding the LSA to the router's database would keep (3) If adding the LSA to the router's database would keep
the number of non-default AS-external-LSAs less than or the number of non-default AS-external-LSAs less than or
equal to ospfExtLsdbLimit, the LSA is accepted. equal to ospfExtLsdbLimit, the LSA is accepted.
2.3.2. Originating AS-external-LSAs 2.3.2. Originating AS-external-LSAs
Originating AS-external-LSAs is described in Section 12.4.5 Originating AS-external-LSAs is described in Section 12.4.5 of
of [1]. When a router is in OverflowState, it does not [1]. When a router is in OverflowState, it does not originate
originate non-default AS-external-LSAs. In other words, the non-default AS-external-LSAs. In other words, the only AS-
only AS-external-LSAs originated by a router in external-LSAs originated by a router in OverflowState have Link
OverflowState have Link State ID 0.0.0.0. State ID 0.0.0.0.
2.3.3. Receiving self-originated LSAs 2.3.3. Receiving self-originated LSAs
Receiving self-originated LSAs is described in Section 13.4 Receiving self-originated LSAs is described in Section 13.4 of
of [1]. When in OverflowState, a router receiving a self- [1]. When in OverflowState, a router receiving a self-
originated non-default AS-external-LSA responds by flushing originated non-default AS-external-LSA responds by flushing it
it from the routing domain using the premature aging scheme from the routing domain using the premature aging scheme
described in Section 14.1 of [1]. described in Section 14.1 of [1].
2.4. Leaving OverflowState 2.4. Leaving OverflowState
If ExitOverflowInterval is non-zero, then as soon as a router If ospfExitOverflowInterval is non-zero, then as soon as a router
enters OverflowState, it sets a timer equal to the value of enters OverflowState, it sets a timer equal to the value of
ExitOverflowInterval plus a random value between 1 and 10. When ospfExitOverflowInterval (plus or minus a random value in the
this timer fires, the router leaves OverflowState and begins range of 10 percent). When this timer fires, the router leaves
originating non-default AS-external-LSAs again. OverflowState and begins originating non-default AS-external-LSAs
again.
This allows a router to automatically recover from transient This allows a router to automatically recover from transient
overflow conditions. For example, an AS boundary router that overflow conditions. For example, an AS boundary router that
imports a great many AS-external-LSAs may crash. Other routers imports a great many AS-external-LSAs may crash. Other routers may
may then start importing the routes, but until the crashed AS then start importing the routes, but until the crashed AS boundary
boundary router is either a) restarted or b) its AS-external- router is either a) restarted or b) its AS-external-LSAs age out,
LSAs age out, there will be a much larger database than usual. there will be a much larger database than usual. Since such an
Since such an overflow is guaranteed to go away in MaxAge overflow is guaranteed to go away in MaxAge seconds (1 hour),
seconds (1 hour), automatic recovery may be appropriate (and automatic recovery may be appropriate (and fast enough) if the
fast enough) if the overflow happens off-hours. overflow happens off-hours.
As soon as the router leaves OverflowState, it is again eligible As soon as the router leaves OverflowState, it is again eligible
to reenter Overflow state according to the text of Section 2.2. to reenter OverflowState according to the text of Section 2.2.
3. An example 3. An example
As an example, suppose that a router implements the database As an example, suppose that a router implements the database overflow
overflow logic, and that its ospfExtLsdbLimit is 10,000 and its logic, and that its ospfExtLsdbLimit is 10,000 and its
ExitOverflowInterval is set to 10 minutes. Suppose further that the ospfExitOverflowInterval is set to 600 seconds. Suppose further that
router itself is originating 400 non-default AS-external-LSAs, and the router itself is originating 400 non-default AS-external-LSAs,
that the current number of non-default AS-external-LSAs in the and that the current number of non-default AS-external-LSAs in the
router's database is equal to 9,997. router's database is equal to 9,997.
Next it receives a Link State Update packet from a neighbor, Next, it receives a Link State Update packet from a neighbor,
containing 6 non-default AS-external-LSAs, none of which have containing 6 non-default AS-external-LSAs, none of which have current
current database copies. The first two LSAs are then installed in database copies. The first two LSAs are then installed in the
the database. The third LSA is also installed in the database, but database. The third LSA is also installed in the database, but causes
causes the router to go into OverflowState. Going into the router to go into OverflowState. Going into OverflowState causes
OverflowState causes the router to flush (via premature aging) its the router to flush (via premature aging) its 400 self-originated
400 self-originated non-default LSAs. However, these 400 LSAs are non-default LSAs. However, these 400 LSAs are still considered to be
still considered to be part of the link-state database until their part of the link-state database until their re-flooding (with age set
re-flooding (with age set to MaxAge) is acknowledged (see Section 14 to MaxAge) is acknowledged (see Section 14 of [1]); for this reason,
of [1]); for this reason, the last three LSAs in the received update the last three LSAs in the received update are discarded without
are discarded without being acknowledged. being acknowledged.
After some small period of time all routers will converge on a After some small period of time all routers will converge on a common
common database, having less than 10,000 non-default AS-external- database, having less than 10,000 non-default AS-external-LSAs.
LSAs. During this convergence period there may be some link-state During this convergence period there may be some link-state
retransmissions; for example, the sender of the above Link State retransmissions; for example, the sender of the above Link State
Update packet may retransmit the three LSAs that were discarded. If Update packet may retransmit the three LSAs that were discarded. If
this retransmission happens after the flushing of the 400 self- this retransmission happens after the flushing of the 400 self-
originated LSAs is acknowledged, the 3 LSAs will then be accepted. originated LSAs is acknowledged, the 3 LSAs will then be accepted.
Going into OverflowState also causes the router to set a timer that Going into OverflowState also causes the router to set a timer that
will fire some time between 11 and 20 minutes later. When this timer will fire some time between 540 and 660 seconds later. When this
fires, the router will leave OverflowState and re-originate its 400 timer fires, the router will leave OverflowState and re-originate its
non-default AS-external-LSAs, provided that the current database has 400 non-default AS-external-LSAs, provided that the current database
less than 9600 (10,000 - 400) non-default AS-external-LSAs. If there has less than 9600 (10,000 - 400) non-default AS-external-LSAs. If
are more than 9600, the timer is simply restarted. there are more than 9600, the timer is simply restarted.
4. Administrative response to database overflow 4. Administrative response to database overflow
Once the link-state database has overflowed, it may take Once the link-state database has overflowed, it may take intervention
intervention by network management before all routing is restored. by network management before all routing is restored. (If the
(If the overflow condition is transient, routing may be restored overflow condition is transient, routing may be restored
automatically; see Section 2.4 for details.) An overflow condition automatically; see Section 2.4 for details.) An overflow condition is
is indicated by SNMP traps (see Appendix B). Possible responses by a indicated by SNMP traps (see Appendix B). Possible responses by a
network manager may include: network manager may include:
o Increasing the value of ospfExtLsdbLimit. Perhaps it had been o Increasing the value of ospfExtLsdbLimit. Perhaps it had been
set too conservatively, and the routers are able to support set too conservatively, and the routers are able to support
larger databases than they are currently configured for. larger databases than they are currently configured for.
o Isolating routers having limited resources within OSPF stub o Isolating routers having limited resources within OSPF stub
areas or NSSAs. This would allow increasing the value of areas or NSSAs. This would allow increasing the value of
ospfExtLsdbLimit in the remaining routers. ospfExtLsdbLimit in the remaining routers.
o Reevaluating the need to import certain external routes. If o Reevaluating the need to import certain external routes. If
ospfExtLsdbLimit cannot be increased, the network manager will ospfExtLsdbLimit cannot be increased, the network manager will
want to make sure that the more important routes continue to be want to make sure that the more important routes continue to be
imported; this is accomplished by turning off the importing of imported; this is accomplished by turning off the importing of
less important routes. less important routes.
5. Operational experience 5. Operational experience
The database overflow scheme described in this memo has been The database overflow scheme described in this memo has been
implemented in the Proteon router for a number of years, with the implemented in the Proteon router for a number of years, with the
following differences. First, the router did not leave OverflowState following differences. First, the router did not leave OverflowState
until it was restarted (i.e., ExitOverflowInterval was always 0). until it was restarted (i.e., ospfExitOverflowInterval was always 0).
Second, default AS-external-LSAs were not separated from non-default Second, default AS-external-LSAs were not separated from non-default
AS-external-LSAs. Operationally the scheme performed as expected: AS-external-LSAs. Operationally the scheme performed as expected:
during overflow conditions, the routers converged on a common during overflow conditions, the routers converged on a common
database having less than a configured number of AS-external-LSAs. database having less than a configured number of AS-external-LSAs.
6. Possible enhancements 6. Possible enhancements
Possible enhancements to the overflow scheme include the following: Possible enhancements to the overflow scheme include the following:
o Other LSA types, with the exception of the transit LSAs o Other LSA types, with the exception of the transit LSAs
(router-LSAs and network-LSAs), could be limited in a similar (router-LSAs and network-LSAs), could be limited in a similar
fashion. For example, one could limit the number of summary- fashion. For example, one could limit the number of summary-
LSAs, or group-membership-LSAs (see [6]). LSAs, or group-membership-LSAs (see [6]).
o Rather than flushing all of its non-default AS-external-LSAs o Rather than flushing all of its non-default AS-external-LSAs
when entering OverflowState, a router could flush a fixed number when entering OverflowState, a router could flush a fixed number
whenever the database size hits ospfExtLsdbLimit. This would whenever the database size hits ospfExtLsdbLimit. This would
allow the router to prioritize its AS-external-LSAs, flushing allow the router to prioritize its AS-external-LSAs, flushing
the least important ones first. the least important ones first.
A. Related MIB parameters A. Related MIB parameters
The following OSPF MIB variables have been defined to support the The following OSPF MIB variables have been defined to support the
database overflow procedure described in this memo (see [4] for more database overflow procedure described in this memo (see [4] for more
information): information):
ospfExtLsdbLimit ospfExtLsdbLimit
The maximum number of AS-external-LSAs that can be stored within As in Section 2.1 of this memo, the maximum number of non-
the database. If set to -1, there is no limit. In this memo, we default AS-external-LSAs that can be stored within the database.
have excluded default route AS-external-LSAs (those having Link If set to -1, there is no limit.
State ID of 0.0.0.0) from the limit. This parameter is then the
same as "ospfExtLsdbLimit" in Section 2.1. ospfExitOverflowInterval
As in Section 2.1 of this memo, the number of seconds that,
after entering OverflowState, a router will attempt to leave
OverflowState. This allows the router to again originate non-
default AS-external-LSAs. When set to 0, the router will not
leave OverflowState until restarted.
ospfLsdbOverflow ospfLsdbOverflow
A trap indicating that the number of non-default AS-external- A trap indicating that the number of non-default AS-external-
LSAs has exceeded ospfExtLsdbLimit. For this memo, we would LSAs has exceeded or equaled ospfExtLsdbLimit. In other words,
modify this to "exceeded or equaled". This trap then indicates this trap indicates that the router is entering OverflowState.
that the router is entering OverflowState.
ospfLsdbApproachingOverflow ospfLsdbApproachingOverflow
A trap indicating that the number of non-default AS-external- A trap indicating that the number of non-default AS-external-
LSAs has exceeded ninety percent of "ospfExtLsdbLimit". LSAs has exceeded ninety percent of "ospfExtLsdbLimit".
References References
[1] Moy, J., "OSPF Version 2", RFC 1583, Proteon, Inc., March 1994. [1] Moy, J., "OSPF Version 2", RFC 1583, Proteon, Inc., March 1994.
[2] Coltun, R. and V. Fuller, "The OSPF NSSA Option", RFC 1587, [2] Coltun, R., and V. Fuller, "The OSPF NSSA Option", RFC 1587,
RainbowBridge Communications, Stanford University, March 1994. RainbowBridge Communications, Stanford University, March 1994.
[3] Moy, J., editor, "OSPF protocol analysis", RFC 1245, Proteon, [3] Moy, J., Editor, "OSPF Protocol Analysis", RFC 1245, Proteon,
Inc., July 1991. Inc., July 1991.
[4] Baker F. and R. Coltun, "OSPF Version 2 Management Information [4] Baker F., and R. Coltun, "OSPF Version 2 Management Information
Base", work in progress. Base", Work in Progress.
[5] Moy, J., editor, "Experience with the OSPF protocol", RFC 1246, [5] Moy, J., Editor, "Experience with the OSPF Protocol", RFC 1246,
Proteon, Inc., July 1991. Proteon, Inc., July 1991.
[6] Moy, J., "Multicast Extensions to OSPF", RFC 1584, Proteon, [6] Moy, J., "Multicast Extensions to OSPF", RFC 1584, Proteon, Inc.,
Inc., March 1994. March 1994.
Security Considerations Security Considerations
Security issues are not discussed in this memo. Security issues are not discussed in this memo.
Author's Address Author's Address
John Moy John Moy
Cascade Communications Corp. Cascade Communications Corp.
5 Carlisle Road 5 Carlisle Road
Westford, MA 01886 Westford, MA 01886
Phone: 508-692-2600 Ext. 394
Fax: 508-692-9214
Email: jmoy@casc.com
This document expires in May 1995. Phone: 508-692-2600 Ext. 394
Fax: 508-692-9214
EMail: jmoy@casc.com
 End of changes. 58 change blocks. 
239 lines changed or deleted 224 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/