Smarts calculates interface and ports bandwidth utilization by determining if ifSpeed or ifHighSpeed flag to determine if usage values are taken from the mib2 tables or
VMware Smart Assurance 10.x
Telco Cloud Service Assurance 2.x
The following interface table (If Table) matrix shows how the Smarts IP calculates and creates performance instrumentation for the Ports/Interfaces. The following matrix is implemented when HCOctets are present. When they are not present, only MIB2 instrumentation remains as from the previous matrix, and rest all become N.I. (No Instrumentation).
ifSpeed/ifHighSpeed |
0 |
<20 MB |
>20 MB <650 MB |
>650 MB |
!exists |
N.I. |
MIB2 |
N.I. |
N.I. |
0 |
N.I. |
MIB2 |
N.I. |
N.I. |
<20 MB |
N.I. |
MIB2 |
N.I. |
N.I. |
>20 MB <650 MB |
N.I. |
N.I. |
MIB2_ifMIB |
N.I. |
>650 MB |
ifMIB |
ifMIB |
ifMIB |
ifMIB |
* N.I. = No Instrumentation.
** ifSpeed is denoted as MaxSpeed attribute in Smarts topology.
Example
IF-abcxyz/144 [1.1]
IF-abcxyz/160 [1.2]
IF-abcxyz/256 [1.8]
IF-abcxyz/144, ifSpeed = 100000000 [11.92 MB]
IF-abcxyz/160, ifSpeed = 1000000000 [119.2 MB]
IF-abcxyz/256, ifSpeed = 1000000000 [119.2 MB]
As mentioned above, the ifHighSpeed values for these interface indexes we have NULL.
abcxyz: ifHighSpeed [144] is Null
abcxyz: ifHighSpeed [160] is Null
abcxyz: ifHighSpeed [256] is Null
Now for all those interface whose ifHighSpeed is NULL, we assign 0 to it. Hence for all the above index (i.e. index 144,160,256), we have ifHighSpeed set to 0.
Following attributes are hardcoded for the computation logic:
octetsLimit = 20000000; [2.3 MB]
packetsLimit = 650000000; [77.4 MB]
interfaceLimit = 100000000; [11.9 MB]
} else if ((ifSpeed !=0) && (ifSpeed <= interfaceLimit) && fallbackInterfaceMonitoringToMIB2 ) {
if (DEBUG) {
print(me." ".ifObj->Name .", [<20MB and ifHighSpeed is NULL] expected 64-bit counter is not defined, instrumenting with 32-bit MIB2");
}
agentObj->TopologyUpdateInfo += list(updateInfoKey, ifObj->Name, "MIB2", "")?IGNORE;
undef(topoUpdateTable[ifObj->Name."MIB2".""]) ? IGNORE;
continue;
}
Once you have the performance instrumentation created, we would be able to see the current utilization values as well for these interfaces.