#1 : A mechanism that preserves the values of ifIndex
From: Richard (rishyanggmail.com)
Date: Thu, 26 Mar 2009 08:01:04 -0700 (PDT)
Hi,

This is first open issue we would discuss during IETF 74 meeting.

The issue was found by Dan:
//////////////////////////////////////////////////////////////////////////////////////////////
In order for ifIndex to be used as a common handler for the 
CAPWAP MIB and for the interface specific MIB modules
 like a dot11 MIB from IEEE one needs to ensure that the 
same numbering scheme and mapping is used by all MIB 
modules, and that it behaves identically for events like
 interface card swapping, reset or power loss.
 I do not see how this can happen, I am not sure that this is 
 possible at all, and in any case there is no text in the document 
 that explains this mechanism. 

One method for a mechanism that preserves the values of ifIndex:
//////////////////////////////////////////////////////////
It is common for most vendors: The device have configuration 
file to maintain configuration information: interface name, device
name and so on are in it. 
The value of ifIndex for an interface is not in the configuration file.
The proprietary method is: Besides configuration file, system 
would have another file (suppose we call it as interface file) to 
keep ifIndex value for a specific interface which is identified 
by interface name. 
When user execute save configuration file command, system
 would also save mapping relationship between interface 
name and ifIndex into the interface file. 
During system's initiation process, it would get initial value 
such as interface name for a specific interface from
configuration file.
Also, it would Query information kept in the interface file, 
and get ifIndex by interface name for a specific interface. 
By this way, ifIndex for a specific interface would keep same 
even after device reboot. 

What have we updated?
//////////////////////////////////////////////////////////////////////////////////////////////
For persistence of ifIndex of “WTP Virtual Radio Interface”,
“WLAN Service Interface” and “WLAN BSS Interface”, 
we added the following text in the base MIB version 04 and 
Dot11 MIB version 03:

“Also, the system (AC) MUST have a mechanism that 
preserves the values of ifIndex of ‘XXX Interface' 
ifType in the ifTable at AC reboot”.

Review comments to the mechanism
//////////////////////////////////////////////////////////////////////////////////////////////
1) David Harrington
 I believe the interfaces-mib explicitly allows the ifIndex to not be preserved 
 across reboot. That was a conscious decision of the WG that did the 
update to the interfaces-mib (despite the advice of those, like 
keith McLoughrie who explained that was 
a really really bad decision). But the WG did this because it is very difficult for 
devices to be sure that the interfaces were not physically reordered 
(e.g., removal or insertion or moving of a board in a chassis) while the device 
was powered off during the reboot. The ifName (if I remember correctly)
 was added to allow remote systems (such as an NMS) to correlate new
 ifIndex assignments to pre-boot assignments. 
I think it would be inappropriate to require non-changing ifIndexes. 

 2) Dan Romascanu
My opinion is that the solution that you have chosen is 
acceptable
Indeed, as David mentions, this puts a requirement on 
CAPWAP agents that is not common to other ifTable 
implementations, but I believe that this is acceptable here. 
This is not however what a standard ifTable implementation 
would do. Another alternative would be to index the tables 
with ifAlias which is the persistent object in ifTable that stores 
a name of the interface in a persistent manner, 
which would allow using standard implementations 
without the need for further constrains but will impose 
on managers to configure each interface with a non- default 
and unique ifAlias value. 

Regards

Richard



  • (no other messages in thread)

Results generated by Tiger Technologies using MHonArc.