B About the absRelativePosition Value

This appendix explains how to generate the absRelativePosition variable value.

Generating the absRelativePosition Value

The field contains a variable called absRelativePosition which is used to generate a unique value for an entity in a given tree. absRelativePosition is a programmatically generated value and is composed of a prefix and suffix. The suffix is always derived from entPhysicalParentRelPos.

The following is an example of a physical device tree: PD E1 PP1 E2 PP2

The prefix of each entity is derived from the absolute relative position from the root; for example:

PD takes the prefix 0

The child E1 takes the prefix 0:0

The child E2 takes the prefix 0:1, uniquely identifying itself from its sibling.

PP1 takes the prefix 0:0:0

PP2 takes the prefix 0:1:0

Some devices (due to a device reporting error) show that multiple equipment holders or physical ports have entPhysicalParentRelPos value that occupy the same relative position under their parent.

At a high level, the algorithm works by resolving conflicts by increasing the relative position of the subsequent duplicates by 1. This is best described using an example.

Table B-1 shows the applicable SNMP attributes that are used in determining the correct relative position.

Table B-1 SNMP Attributes Used to Determine Correct Relative Position

Index entPhysicalDesr entPhysicalParentRelPos entPhysicalContainedIn

1

3640 chassis, Hw Serial#: 621974280, Hw Revision: 00

-1

0

2

3640 Chassis Slot

0

1

3

Ethernet/WAN

0

2

12

AmdP2

0

3

13

AmdP2

0

3

14

AmdP2

1

3

15

AmdP2

1

3


Where the headings in Table B-1 have the following significance:

  • Index: A numeric value used to represent a physical entity and must be unique.

  • entPhysicalDesr: A string description of the physical entity.

  • entPhysicalParentRelPos: The relative position within the context of its parent.

  • entPhysicalContainedIn: The Index of the parent entity denoting the current entity as a child. 0 indicates the root of the physical entity tree.

From Table B-1, notice that AmdP2 at index 12 and 13, and AmdP2 at index 14 and 15 have the same entPhysicalParentRelPos values (that is, 0 and 1 respectively) within the context of its parent, which is Ethernet/WAN.

  • Index 12 and 13 would both generate the name AmdP2::0.

  • Index 14 and 15 would both generate the name AmdP2::1.

To correct this, the algorithm briefly described above is executed as follows:

  • Index 12 is processed first and would generate the name "AmdP2::0".

  • Index 13 is processed and it is determined that the entPhysicalParentRelPos is a duplicate. The cartridge increments the value by 1 and generates the name "AmdP2::1". It also flags this entity's position as artificially generated.

  • Index 14 is processed and it is determined that an entity already exists with entPhysicalParentRelPos 1, however it was artificially generated. Therefore, Index 14 gets the name "AmdP2::1" and Index 13 gets the name "AmdP2::2".

  • Index 15 is processed and it is determine that the entPhysicalParentRelPos is a duplicate. The cartridge increments the last artificially generated value by 1 thereby creating name "AmdP2::3".

    Table B-2 shows the result.

    Table B-2 End Result

    Index entPhysicalDesr Name

    12

    AmdP2

    AmdP2::0

    13

    AmdP2

    AmdP2::2

    14

    AmdP2

    AmdP2::1

    15

    AmdP2

    AmdP2::3