Cisco Nexus 9000 Platform switches support the Intelligent CAM Analytics and Machine-learning (iCAM) feature. This feature enables you to view traffic analytics per feature, Ternary Content-Addressable Memory (TCAM) resources, and entries. Prior to the iCAM feature, it was difficult to get an overall view of how many TCAM/Static Random Access Memory (SRAM) resource entries were used, free, or how much traffic was flowing through the various subnets and applications.
For example, in the ACL Classification TCAM, the resource entries used per feature like Router-ACL (RACL), Vlan-ACL (VACL), Port-ACL (PACL), Policy Based Routing (PBR), QoS (Quality of Service), NAT, Intelligent Traffic Director (ITD), Web Cache Communication Protocol (WCCP), Remote Integrated Services Engine (RISE). Some features might use the bulk of the TCAM resources. Some of those TCAM entries might not be used at all during the real traffic.
To overcome these limitations, the iCAM feature provides analytics that are related to network traffic, TCAM usage per feature, detailed analysis per TCAM bank. This helps to use available TCAM space effectively.
An iCAM process runs on the supervisor module. It interacts with various components on the line card and collects hardware resource utilization statistics, performs data processing, and presents a summarized output. It also provides insights about the top hitters and bottom hitters for each feature, such as ACL and PBR entries. Using iCAM, you can get packet counts per TCAM entry, sort and search, and get a specified percentage for either the top or bottom entries. Traffic telemetry and analytics about iCAM entries helps to understand network traffic and so better use TCAM space.
Overview of iCAM Monitoring
You can use iCAM in an IPv4 network to view traffic analytics based on the type of TCAM entries and TCAM resources. You can view the traffic analytics for a previous date and a current date. Based on the history of traffic, iCAM monitoring provides traffic prediction for a future date. You can set a global monitoring interval to determine how often iCAM should collect data for statistics. You can also set a global interval history to determine the number of intervals for which iCAM should store statistics.
You can obtain traffic analytics for the following TCAM entries and resources:
ACL TCAM entries
ACL TCAM resource utilization
FIB TCAM resource utilization
L2 Table resource utilization
Historical Analytics Using iCAM
You can use iCAM to obtain historical traffic analytics of entries and resources. When iCAM monitoring is enabled for resources and entries, traffic data is periodically polled and stored in the iCAM database. The history option for iCAM entries displays the cumulative traffic statistics and average packets per second. The history option for TCAM resources displays the snapshots of TCAM statistics of the past.
The following figure shows the historical traffic data:
The following figure shows historical resource utilization:
Predicting Traffic Analytics Using iCAM
You can use iCAM to predict the traffic on entries and resources for a future date. When you enable iCAM monitoring for resources and entries, iCAM polls the traffic data periodically and stores the information in the iCAM database. The iCAM feature uses machine-learning algorithms to analyze the historical data and predicts the TCAM usage for a future date and time.
The following figure shows the predicted traffic data:
The following figure shows the predicted resource utilization:
Benefits of iCAM
Beginning with Cisco Nexus 7.0(3)I7(1), you can get the Intelligent CAM Analytics and Machine-learning (iCAM).
Works on all Cisco Nexus 9000 Series switches, line cards and, beginning with Cisco Nexus 7.0(3)I7(3), fabric modules (FMs).
Does not require additional hardware or software.
Allows you to plan better by understanding the Ternary Content-Addressable Memory (TCAM) usage per feature.
Enables you to use TCAM space effectively.
Provides useful traffic telemetry and analytics.
Enables you to access iCAM through NX-API or CLI.