RX packets overrun-cisco-asa

RX packets overrun-cisco-asa
0

RX packets overrun-cisco-asa

Vendor: cisco

OS: asa

Description:
Indeni tracks the number of packets that had issues and alerts if the ratio is too high.

Remediation Steps:
Packet overruns usually occur when there are too many packets being inserted into the port’s memory buffer, faster than the rate at which the kernel is able to process them.
|
|In a small number of cases, the overrun counter may be incremented because of a software defect. However, in the majority of cases, it indicates that the receiving capability of the interface was exceeded. Nothing can be done on the device that reports overruns. If possible, the rate that frames are coming should be controlled at the remote end of the connection.
|1. Run the “show interface” command to review the interface overrun & underun counters and the bitrate. Consider to configure the “load-interval 30” interface sub command to improve the accuracy of the interface measurements.
|2. If the number of overruns is high, the hardware should be upgraded.
|
|In case of high bandwidth utilization:
|1. Run the “show interface” command to review the interface counters and the bitrate. Consider to configure the “load-interval 30” interface sub command to improve the accuracy of the interface measurements.
|2. If the interface bitrate is too high and close to the upper bandwidth limit consider to use multiple links with the port-channel technology or upgrade the bandwidth of the link.
|3. Consider to implement QoS in case of high bandwidth utilization.

How does this work?
This script retrieves the interface statistics by polling ifTable via SNMP.

Why is this important?
Capture the interface Received Packets counter. Knowing the amount of bytes and packets flowing through an interface can help estimate an interface’s performance and utilization.

Without Indeni how would you find this?
It is possible to poll this data through SNMP.

cisco-asa-interfaces

name: cisco-asa-interfaces
description: Fetch interface metrics for ASA device
type: monitoring
monitoring_interval: 1 minute
requires:
    vendor: cisco
    os.name: asa
    snmp: true
comments:
    network-interface-mtu:
        why: |
            The Maximum Transmission Unit (MTU) is the maximum frame size that can be sent between two hosts without fragmentation.
        how: |
            This script retrieves the interface MTU Setting by polling ifTable via SNMP.
        without-indeni: |
            It is possible to poll this data through SNMP.
        can-with-snmp: true
        can-with-syslog: false
    network-interface-speed:
        why: |
            If the interface speed is set to a low value, this could mean auto-negotiation is not working correctly and the interface does not utilize the full bandwidth available.
        how: |
            This script retrieves the interface speed by polling ifTable via SNMP.
        without-indeni: |
            It is possible to poll this data through SNMP.
        can-with-snmp: true
        can-with-syslog: false
    network-interface-mac:
        why: |
            A media access control address (MAC address) is a unique identifier assigned to a network interface.
        how: |
            This script retrieves the interface MAC Address by polling ifTable via SNMP.
        without-indeni: |
            It is possible to poll this data through SNMP.
        can-with-snmp: true
        can-with-syslog: false
    network-interface-admin-state:
        why: |
           If an interface is disabled and it is a member of a Port Channel, then the link might be running at reduced capacity.
        how: |
            This script retrieves the interface administrative state by polling ifTable via SNMP.
        without-indeni: |
            It is possible to poll this data through SNMP.
        can-with-snmp: true
        can-with-syslog: false   
    network-interface-state:
        why: |
            Interfaces that should be UP and are DOWN can reduce the resiliance of the systems and cause service disruption.
        how: |
            This script retrieves the interface state by polling ifTable via SNMP.
        without-indeni: |
            It is possible to poll this data through SNMP.
        can-with-snmp: true
        can-with-syslog: false 
    network-interface-rx-bytes:
        why: |
            Capture the interface Received Bytes counter. Knowing the amount of bytes and packets flowing through an interface can help estimate an interface's performance and utilization.
        how: |
            This script retrieves the interface statistics by polling ifTable via SNMP.
        without-indeni: |
            It is possible to poll this data through SNMP.
        can-with-snmp: true
        can-with-syslog: false             
    network-interface-rx-packets:
        why: |
            Capture the interface Received Packets counter. Knowing the amount of bytes and packets flowing through an interface can help estimate an interface's performance and utilization.
        how: |
            This script retrieves the interface statistics by polling ifTable via SNMP.
        without-indeni: |
            It is possible to poll this data through SNMP.
        can-with-snmp: true
        can-with-syslog: false 
    network-interface-rx-dropped:
        why: |
            Capture the interface Receive Drop counter. Packet loss may have severe impact to the traffic utilization (retransmission for TCP apps) and to the performance of the applications
        how: |
            This script retrieves the interface statistics by polling ifTable via SNMP.
        without-indeni: |
            It is possible to poll this data through SNMP.
        can-with-snmp: true
        can-with-syslog: false 
    network-interface-rx-errors:
        why: |
            Capture the interface Receive Errors counter. Receive errors coould indicate an issue with duplex/speed matching.
        how: |
            This script retrieves the interface statistics by polling ifTable via SNMP.
        without-indeni: |
            It is possible to poll this data through SNMP.
        can-with-snmp: true
        can-with-syslog: false 
    network-interface-tx-bytes:
        why: |
            Capture the interface Transmit Bytes counter. Knowing the amount of bytes and packets flowing through an interface can help estimate an interface's performance and utilization.
        how: |
            This script retrieves the interface statistics by polling ifTable via SNMP.
        without-indeni: |
            It is possible to poll this data through SNMP.
        can-with-snmp: true
        can-with-syslog: false  
    network-interface-tx-packets:
        why: |
            Capture the interface Transmit Packets counter. Knowing the amount of bytes and packets flowing through an interface can help estimate an interface's performance and utilization.
        how: |
            This script retrieves the interface statistics by polling ifTable via SNMP.
        without-indeni: |
            It is possible to poll this data through SNMP.
        can-with-snmp: true
        can-with-syslog: false 
    network-interface-tx-dropped:
        why: |
            Capture the interface Transmit Drop counter. Packet loss may have severe impact to the traffic utilization (retransmission for TCP apps) and to the performance of the applications
        how: |
            This script retrieves the interface statistics by polling ifTable via SNMP.
        without-indeni: |
            It is possible to poll this data through SNMP.
        can-with-snmp: true
        can-with-syslog: false 
    network-interface-tx-errors:
        why: |
            Capture the interface Transmit Errors counter. Transmit errors coould indicate an issue with duplex/speed matching.
        how: |
            This script retrieves the interface statistics by polling ifTable via SNMP.
        without-indeni: |
            It is possible to poll this data through SNMP.
        can-with-snmp: true
        can-with-syslog: false 
steps:
-   run:
      type: SNMP
      command: GETTABLE 1.3.6.1.2.1.2.2
    parse:
      type: AWK
      file: asa-interfaces.parser.1.awk

cross_vendor_rx_overrun

// Deprecation warning : Scala template-based rules are deprecated. Please use YAML format rules instead.

package com.indeni.server.rules.library.templatebased.crossvendor

import com.indeni.server.rules.RuleContext
import com.indeni.server.rules.library.templates.NearingCapacityWithItemsTemplateRule
import com.indeni.server.rules.RemediationStepCondition

/**
  *
  */
case class CrossVendorRxOverrun() extends NearingCapacityWithItemsTemplateRule(
  ruleName = "cross_vendor_rx_overrun",
  ruleFriendlyName = "All Devices: RX packets overrun",
  ruleDescription = "Indeni tracks the number of packets that had issues and alerts if the ratio is too high.",
  usageMetricName = "network-interface-rx-overruns",
  limitMetricName = "network-interface-rx-packets",
  applicableMetricTag = "name",
  threshold = 0.5,
  minimumValueToAlert = 100.0, // We don't want to alert if the number of error packets is really low
  alertDescription = "Some network interfaces and ports are experiencing a high overrun rate. Review the ports below.",
  alertItemDescriptionFormat = "%.0f packets overrun out of a total of %.0f received.",
  baseRemediationText = "Packet overruns usually occur when there are too many packets being inserted into the port's memory buffer, faster than the rate at which the kernel is able to process them.",
  alertItemsHeader = "Affected Ports")(
  RemediationStepCondition.VENDOR_CISCO ->
    """|
       |In a small number of cases, the overrun counter may be incremented because of a software defect. However, in the majority of cases, it indicates that the receiving capability of the interface was exceeded. Nothing can be done on the device that reports overruns. If possible, the rate that frames are coming should be controlled at the remote end of the connection.
       |1. Run the "show interface" command to review the interface overrun & underun counters and the bitrate. Consider to configure the "load-interval 30" interface sub command to improve the accuracy of the interface measurements.
       |2. If the number of overruns is high, the hardware should be upgraded.
       |
       |In case of high bandwidth utilization:
       |1. Run the "show interface" command to review the interface counters and the bitrate. Consider to configure the "load-interval 30" interface sub command to improve the accuracy of the interface measurements.
       |2. If the interface bitrate is too high and close to the upper bandwidth limit consider to use multiple links with the port-channel technology or upgrade the bandwidth of the link.
       |3. Consider to implement QoS in case of high bandwidth utilization.""".stripMargin,
  RemediationStepCondition.VENDOR_JUNIPER ->
    """|The issue can not be resolved on the device that reports overruns. The rate that frames are coming should be controlled at the remote end of the connection.
       |1. Run the “show interface extensive” command to review the interface overrun counters. 

       |2. If the number of overruns is high, consider upgrading the hardware.
       |3. Review the following article on Juniper tech support site: <a target="_blank" href="https://www.juniper.net/documentation/en_US/junos/topics/reference/command-summary/show-interfaces-security.html#jd0e1772">Operational Commands</a>""".stripMargin,
  RemediationStepCondition.VENDOR_FORTINET ->
    """
       |1. Run "diag hardware deviceinfo nic <interface>" command to display a list of hardware related error names and values. Review  the next link for more details: http://help.fortinet.com/fos50hlp/54/Content/FortiOS/fortigate-toubleshooting-54/troubleshooting_tools.htm
       |2. Run command "fnsysctl cat /proc/net/dev" to get a summary of the interface statistics.
       |3. Check for speed and duplex mismatch in the interface settings on both sides of a cable, and check for a damaged cable. Review the next link for more info: http://kb.fortinet.com/kb/documentLink.do?externalID=10653""".stripMargin
)