The MPLS WG Archive

Cell Relay Retreat>MPLS WG Archive>month:2000-Oct> msg00059



[Date Prev][Date Next][Thread Prev][Thread Next]  
  [Date Index][Thread Index][Author Index][Subject Index]

Interface ID in kompella-unnum-02

  • From: "Thomas D. Nadeau" <tnadeau@cisco.com>
  • Date: Thu, 05 Oct 2000 16:07:06 -0400


         Hi,

> >       In draft-kompella-mpls-unnum-02.txt, the interface ID field is shown
> > to be 16 bits.  Previous e-mails have suggested that the size be increased
> > to 32 bits to match the SNMP ifIndex size.  Can this be increased?
>
>16 bits should be enough to number all interfaces on a box.  If
>it isn't, you have other much more serious problems (IS-IS and OSPF
>cannot even carry the information (this is not even going into the
>scaling issues)).  If you do get to the point where you have more
>than a few thousand interfaces on a box, you probably really should
>be considering bundling; this will reduce the number of interfaces
>from the routing protocols point-of-view to as few as the number of
>adjacent nodes.  Then number the bundles, not the actual interfaces.

         Not necessarily. As I and Keith M. pointed out, it is
perfectly valid for an implementation to keep track of the
last ifIndex used and continue up from there after each
reboot. So, even on the box you described above as being well
behaved, it is perfectly reasonable (and legal) to see
ifIndexes which exceed 16 bits.

> > We could have ifIndex values that are larger than 16 bits.
>
>We hereby resolve to remove all text that suggests using the SNMP
>ifIndex for interface indices :-)  The only requirement for interface
>indices is that indices generated by a node are unique, and that the
>routing and signalling modules use the same number for an interface.
>If your ifIndexes are larger than 16 bits, don't use them, generate
>new indices.

         This is really not a good idea from a management perspective,
especially since all of the MIBs I know of that manage any
type of interface (including all of the MPLS MIBs) rely on the
ifIndex as indexes for many tables. How does one find the interface if
it does not correspond to the ifIndex in the Interfaces MIB?

>Note that the requirements for SNMP indices are much stronger than
>for interface indices: they need to remain stable, reusing them can
>be an issue, etc., which is why ifIndexes tend to grow beyond 2^16.
>
>Note too that the interface index cannot be made bigger than 2^24;
>this is so that the distinction between IP addresses and interface
>indices is clear.  Given that, and given the fact the SNMP ifIndexes
>can be 32 bits, ifIndexes are ruled out as potential interface
>indices.

         Personally, this seems like a flaw in the design. The type
ifIndex has been around for quite a long time. I don't see how
the ifIndex in OSPF/ISIS was allowed to use a different size
while claiming that one could put use an ifIndex from the Interfaces
MIB.

         --tom