Description

This article describes the limitations with tunable DWDM optics with respect to SNMP OIDs. Due to the inherent specifications of DWDM optics, the optics may not respond to SNMP query in the stipulated time. This can cause the graphing tool to not display any information.

Symptoms

SNMP polling tool (client) queries network nodes with  GetRequest  or  GetBulk request , to which network nodes respond with  GetResponse . When optics related OIDs are polled, such as i fHCInUcastPkts  as an example, all the optics must respond in a specified time to the poller. Failing to respond in time can cause the polling tool to not display any information for any optic. 

In the example bellow, the DUT node which is QFX in this case has 45 optics out of which 42 are DWDM tunable. The tool is querying for the ifHCInUcastPkts OID with getBulk request. Below is the tcp dump on the QFX DUT when polling from the graphing tool (client) is in progress. Based on this data, the graphing tool displays the octet values for all the optics (and any other OID that is queried for).

14:29:21.157953  In IP 10.60.224.202.58948 > 96.109.52.119.161:  C=snmp_community GetBulk(30) N=0 M=20 .1.3.6.1.2.1.31.1.1.1.7
14:29:55.409377 Out IP 96.109.52.119.161 > 10.60.224.202.45371:  C=snmp_community GetResponse(408) .1.3.6.1.2.1.31.1.1.1.6.662=3942546455 

Here, 1.3.6.1.2.1.31.1.1.1.7 is the OID. This is a getbulk request. In the response, 662 is indicating the SNMP index of the interface. In this example, only the last index, which is 662 is shown. The graphing tool is expecting all the OIDs to be responded within 30 seconds. Based on the timestamp in the above tcp dump, this instance took 34 seconds. Due to this, the graphing tool displayed timeout error. As such, the graphs during this time were blank. When the DWDM tunables are swapped with non tunables, the client gets OID response in the stipulated time- in this case, it is 30 seconds. This can also be confirmed using the command below.


Example where SNMP response is received in 30 seconds. In this case, most of the optics are non DWDM.

user@QFX5110> show snmp stats-response-statistics 
 
Average response time statistics:
Stats                Stats                    Average
Type                 Responses                Response
                                              Time (ms)
ifd(non ae)          29092697                 17.40

Example where SNMP response is received in more than 30 seconds. In this case, most of the optics are DWDM tunables

user@QFX5110> show snmp stats-response-statistics
Average response time statistics:
Stats                Stats                    Average
Type                 Responses                Response
                                              Time (ms)
ifd(non ae)          8531493                  40.98

The above command gives you an idea of the response time and should not be used to deduce any conclusions.

Solution

This happens because in case of Tunable optics, there area  total of four I2C reads with sleep times between each read. In case of non-tunables, there is just one read. Due to this, tunable optics take more time to respond which is per design.

The workaround is to increase the stipulated expected timeout timer on the client/graphing tool. Users can set it to 120 seconds to begin with. Then increase further as required.