Summary
NVGRE hash field selection works by allowing configurable hash field selection, ensuring predictable load distribution for NVGRE traffic across network links.
The key components involved in the NVGRE hash field selection process are:
ASIC (Q100/Q200): Performs packet inspection and hash calculation as directed by configuration.
Network administrator: Chooses the hash field mode to optimize NVGRE deployment outcomes.
Forwarding engine: Uses the calculated hash to make load-balancing decisions for NVGRE traffic.
Workflow
These stages describe how a router with a Cisco Silicon One Q100 or Q200 ASIC-based system processes NVGRE traffic and selects header fields for load-balancing hash calculations:
- The router receives an incoming packet and determines whether it is an NVGRE-encapsulated packet by checking the protocol value.
- Packet arrives at the device ingress interface.
- ASIC inspects the protocol value for
0x6558 (NVGRE).
This identification is necessary to apply the NVGRE-specific hash field selection logic. Once the NVGRE packet is detected, the device prepares the hash selection procedure as configured for NVGRE traffic.
- The ASIC checks the device configuration to determine which headers should be used for hash calculation on NVGRE packets.
- Device configuration is queried for the presence of
cef platform load-balancing nvgre payload exclude.
Configuration specifies whether only the NVGRE outer header or both outer and inner headers will participate in hashing. This is a static setting, chosen for deployment needs. No hash calculation occurs until the mode is identified.
- The ASIC performs the hash calculation according to the selected mode:
- If
nvgre payload exclude is enabled: Only the outer header fields (such as source and destination IP) are included in the hash.
- If
nvgre payload exclude is disabled (default): Both outer and inner header fields (including inner MAC or IP) are included.
This stage determines load-balancing accuracy, especially when handling non-IP payloads.
- The forwarding engine applies the computed hash to select the egress path for the packet.
- Hash value is used by ECMP or port-channel logic to assign the packet to a specific link.
The outcome is consistent forwarding of NVGRE flows according to deployment requirements and traffic type. Traffic forwarding completes based on the device's hash selection, ensuring predictable NVGRE load-balancing behavior.
Result
The process enables deterministic, user-directed load-balancing for NVGRE traffic on Cisco Q100 and Q200 ASIC platforms.