Tech Tip: Spectrum Device Communication Timeout Intelligence Concepts

Document created by ScottOrzechowski Employee on Oct 8, 2015Last modified by SamCreek on Dec 17, 2016
Version 2Show Document
  • View in full screen mode

This document explains the means by which a SpectroSERVER determines a device model's contact status.  It aims to contrast the concept of polling with the concept of overall Device Communication Manager (DCM) communication.

 

 

There are two concepts to consider regarding how Spectrum monitors contact status of a device model.  There can be a misconception that the frequency of SNMP requests a SpectroSERVER sends to a modeled device is governed entirely by the model’s polling interval.  This is partly true.  Polling occurs on a regular interval, which is set by the polling_interval attribute.  Attributes are polled if their polled flag is set.  The polling interval does not govern all SNMP requests to a device, however.  Polling is a subset of the requests a SpectroSERVER sends via the Device Communication Manager (DCM), which handles all communication with the device.

 

There is a Device Communication Manager section on the Spectrum documentation wiki, which contains more information.

 

The SpectroSERVER sends DCM requests to a device for reasons other than polling, and it sends requests at times other than on the polling interval.  Any DCM request – regardless of whether it originates from the polling engine – can lead to loss of contact with the device.   Any SNMP request the SpectroSERVER sends to the device starts a timer for the DCM timeout.

 

For example, when a user views an external attribute via OneClick or the command line, the SpectroSERVER will send an SNMP GET or GETNEXT to the device via the DCM.  Spectrum intelligence such as Live Pipes will also send SNMP requests to the device via the DCM.  If the SpectroSERVER sends a GET to the device on behalf of a process monitor, for example, it will, by default, start counting down from three seconds (based on the DCM Timeout value of 3000 milliseconds).  If a reply does not come back in three seconds or less, Spectrum retries (resends the SNMP request) up to three times (based on the DCM Retry Count of 3).

 

All of the above attributes are configurable via the model's component details, under "CA Spectrum Modeling Information."

 

DCM_Timeout.png

 

DCM_Retry Count.png

 

 

You can also change the values for the polling interval (Polling_Interval), DCM timeout (TimeOut) and DCM retry (TryCount) by selecting all of the models you want to change in a list view, right clicking, and selecting Utilities -> Attribute Editor. These attributes are under the "SNMP Communication" group:

 

Attribute_Editor.png

 

 

 

If no reply is received after the third retry times out, Spectrum will try a ping.  If no ping reply comes back after three seconds (based on the ICMP Timeout attribute as seen in the Fault Isolation section of the VNM component detail view), then Spectrum sets the contact status of the device model to lost, and generates a red alarm or turns the model gray, depending on fault isolation.  If a ping comes back, then Spectrum sets the device contact status to lost and generates an orange alarm on the model. 

 

ICMP_Support.png

 

ICMP_Timeout.png

 

ICMP_Try Count.png

 

    

Note that although ICMP Time Out and ICMP Try Count are displayed in the VNM component detail, the attributes themselves belong to the FaultIsolation model (hidden), as ICMP_trycount and ICMP_timeout.

 

As an aside, you can see a model's polled attributes by going to the Attributes tab, showing the Flags column, and looking for attributes with the "P" flag.  You can see this more concisely by running the LogPollAnalyzer tool in Spectrum/SS-Tools.  Here's a sample excerpt:

 

%/c/win32app/Spectrum/SS-Tools

> ./LogPollAnalyzer.exe -i -l 0x100000 > logpoll.out

 

more logpoll.out

 

Opening a Connection to the SpectroSERVER...

1 models of type 9G421_02 (0xd80040) are

    polling the following attributes:

        sysDescr (0x10052) at an interval of 60 seconds.

        NRM_DeviceCPUUtilization (0x12aaa) at an interval of 60 seconds.

        ifNumber (0x100c3) at an interval of 60 seconds.

        sysUpTime (0x10245) at an interval of 60 seconds.

        NRM_DeviceMemoryUtilization (0x12ac6) at an interval of 60 seconds.

 

2 models of type Cisco_MC3810 (0x3250000) are

    polling the following attributes:

        sysDescr (0x10052) at an interval of 300 seconds.

        snmpEngineBoots (0x230c52) at an interval of 300 seconds.

        NRM_DeviceCPUUtilization (0x12aaa) at an interval of 300 seconds.

        ifNumber (0x100c3) at an interval of 300 seconds.

        ifStackLastChange (0x11f7c) at an interval of 300 seconds.

        sysUpTime (0x10245) at an interval of 300 seconds.

        ifTableLastChange (0x11f7d) at an interval of 300 seconds.

        sysLocation (0x1102e) at an interval of 300 seconds.

        NRM_DeviceMemoryUtilization (0x12ac6) at an interval of 300 seconds.

 

1 models of type HSIM_W84 (0x3780000) are

    polling the following attributes:

        sysDescr (0x10052) at an interval of 300 seconds.

        NRM_DeviceCPUUtilization (0x12aaa) at an interval of 300 seconds.

        ifNumber (0x100c3) at an interval of 300 seconds.

        sysUpTime (0x10245) at an interval of 300 seconds.

        sysLocation (0x1102e) at an interval of 300 seconds.

        NRM_DeviceMemoryUtilization (0x12ac6) at an interval of 300 seconds.

6 people found this helpful

Attachments

    Outcomes