| #1 : A mechanism that preserves the values of ifIndex | <– Date –> <– Thread –> |
|
From: Richard (rishyang |
|
| 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.