Advanced Hashing
Both regular GigaStream and controlled GigaStream use advanced hashing, which lets you select the criteria on which the hash is based, such as source and destination IP address, source and destination MAC address, source and destination port, and protocol.
GigaVUE-OS nodes distribute traffic between the ports in a GigaStream based on the hashing criteria configured using the Advanced Hash Settings page for the selected line card or chassis. GigaStream hashing is applicable for the following port types:
• | Tool port |
• | Hybrid port |
• | Circuit port |
To open the Advanced Hash Settings page, select Ports > Port Groups > GigaStream and click Advanced Hash Settings. (For more details, refer to Advanced Hash Settings.) On the GigaVUE nodes, GigaStream hashing is per chassis, not per line card.
The Advanced Hash Settings let you select the different packet criteria used to send matching flows to the same destination port within a GigaStream.
By default, the GigaVUE H Series node hashes traffic based on source and destination IP addresses, IP protocol, and source and destination ports.
How to Change Advanced Hash Criteria
You can select the criteria for the advanced hash algorithm by using Advanced Hash Settings. The advanced hash method you specify is used for all GigaStream in place on the specified line card or chassis.
Advanced Hash Settings
The Advanced Hash Settings page is where criteria for the advanced hash algorithm is set. To open the page, select Ports > Port Groups > GigaStream and click Advanced Hash Settings.
The following table describes the fields in the Advanced Hashing Settings page.
Field |
Description |
|||||||||||||||
Box |
Identifies chassis to which the advanced algorithm will be applied. |
|||||||||||||||
Slot |
Identifies the line card to which the advanced hash algorithm will apply. Each line card in certain GigaVUE H Series nodes has its own individual advanced hash algorithm. On GigaVUE‑HC1, GigaVUE-HC2, and GigaVUE-HC3, GigaStream hashing is per chassis, not per line card. For example, the slot field will only show cc1 when configuring an GigaVUE-HC2. |
|||||||||||||||
Default |
Sets the advanced hash algorithm to its default settings. By default, the advanced hash algorithm includes source/destination IPv4/IPv6 addresses and ports. |
|||||||||||||||
Custom |
Clears the field from the advanced has and allows you to select specific own criteria. |
|||||||||||||||
All |
Selects all criteria. |
|||||||||||||||
None |
Clears all fields from the advanced hash. |
|||||||||||||||
IPv4 |
This area of the page lets you select the following criteria:
|
|||||||||||||||
IPv6 |
This area of the page lets you select the following criteria:
|
|||||||||||||||
Layer2 |
This area of the page lets you select the following criteria:
|
|||||||||||||||
MPLS |
This area of the page lets you select the following criteria:
|
|||||||||||||||
GTP TEID |
This area of the page lets you select the following criteria:
|
|||||||||||||||
Ingress Port |
This area of the page lets you select the following criteria:
|
Advanced Hash Examples
The following are some different advanced hash examples. Note that the advanced hash method usually combines multiple criteria.
The example in Figure 1 Advanced Hash with IPv4 Source and Destination Addresses sets a Custom advanced hash method for slot 3 in box ID 5 that distributes traffic based on matching IPv4 source and destination addresses.
Figure 24 | Advanced Hash with IPv4 Source and Destination Addresses |
The example in Figure 2: Advanced Hash Default Criteria sets the advanced hash for slot cc1 in box ID 2 to the Default criteria.
Figure 25 | Advanced Hash Default Criteria |
The example in Figure 3 Advanced Hash with Source and Destination MAC Address sets a Custom advanced hash for slot 5 in box ID 5 that distributes traffic based on matching source and destination MAC addresses.
Figure 26 | Advanced Hash with Source and Destination MAC Address |
Hashing Behavior
Table 1: Hashing Behavior Based on Hash Criteria Field Combinations shows the possible hash criteria field combinations and the corresponding hashing behavior based on packet type for advanced hashing for non-MPLS packets. (Refer to Table 2: Hashing Behavior Based on Hash Criteria Field Combinations for MPLS packets.)
Table 1: Hashing Behavior Based on Hash Criteria Field Combinations
Hash Criteria Fields |
Packet Type |
Hashing Behavior |
Source MAC Address, Destination MAC Address |
MAC |
Hash on Source MAC Address, Destination MAC Address |
Source MAC Address, Destination MAC Address |
MAC + IPv4 |
Hash on Source MAC Address, Destination MAC Address |
Source MAC Address, Destination MAC Address |
MAC + IPv6 |
Hash on Source MAC Address, Destination MAC Address |
IPv4 Source Address, IPv4 Destination Address |
MAC |
No hash |
IPv4 Source Address, IPv4 Destination Address |
MAC + IPv4 |
Hash on IPv4 Source Address, IPv4 Destination Address |
IPv4 Source Address, IPv4 Destination Address |
MAC + IPv6 |
No hash |
IPv6 Source Address, IPv6 Destination Address |
MAC |
No hash |
IPv6 Source Address, IPv6 Destination Address |
MAC + IPv4 |
No hash |
IPv6 Source Address, IPv6 Destination Address |
MAC + IPv6 |
Hash on IPv6 Source Address, IPv6 Destination Address |
Source MAC Address, Destination MAC Address, |
MAC |
Hash on Source MAC Address, Destination MAC Address |
Source MAC Address, Destination MAC Address, |
MAC + IPv4 |
Hash on IPv4 Source Address, IPv4 Destination Address |
Source MAC Address, Destination MAC Address, |
MAC + IPv6 |
Hash on Source MAC Address, Destination MAC Address |
Source MAC Address, Destination MAC Address, |
MAC |
Hash on Source MAC Address, Destination MAC Address |
Source MAC Address, Destination MAC Address, |
MAC + IPv4 |
Hash on Source MAC Address, Destination MAC Address |
Source MAC Address, Destination MAC Address, |
MAC + IPv6 |
Hash on IPv6 Source Address, IPv6 Destination Address |
Source MAC Address, Destination MAC Address, |
MAC |
Hash on Source MAC Address, Destination MAC Address |
Source MAC Address, Destination MAC Address, |
MAC + IPv4 |
Hash on IPv4 Source Address, IPv4 Destination Address |
Source MAC Address, Destination MAC Address, |
MAC + IPv6 |
Hash on IPv6 Source Address, IPv6 Destination Address |
Note: No hash means that the packets will be sent to the first port in the GigaStream.
Notes and Considerations for Advanced Hashing
Refer to the following notes and considerations for advanced hashing:
• | With symmetric hashing, packets with their source and destination IP addresses and Layer 4 (L4) ports interchanged will go to the same GigaStream port. It is recommended to enable source and destination IPv4 or IPv6 pairs and L4 source and destination ports. |
• | On GigaVUE-HC3 nodes, symmetric hashing is enabled for all GigaStream. |
• | On GigaVUE-HC2 nodes, symmetric hashing is enabled for stack GigaStream. |
• | For stack GigaStream on GigaVUE-HC2 (with control card version 1 or 2) and GigaVUE-HC3, the following limitation applies: |
• | For non-MPLS IPv4 and IPv6 packets, the hashing is fixed to the following 3-tuple: ipsrc, ipdst, and protocol or ip6src, ip6dst, and protocol. |
• | All other traffic follows the advanced hash settings. |
• | ASICs used in Gigamon devices do not support hashing of the IP header fields when there is a PPPOE header. Only Layer 2 (L2) fields can be used for such packets. |
Advanced Hashing with MPLS
Starting in software version 5.1, GigaStream MPLS hashing adds the ability to hash on MPLS labels as well as the following IP address fields inside an MPLS tunnel: ipsrc, ipdst, ip6src, and ip6dst.
Advanced hashing with MPLS is supported on all GigaVUE H Series and TA Series nodes.
Use the Advanced Hash Settings to specify MPLS, which can detect up to three MPLS labels. Packets with one to three MPLS labels can be hashed, along with IP address fields, if present. If a packet has more than three MPLS labels, IP address fields after the third MPLS label cannot be hashed. Refer to Hashing Behavior Based on Hash Criteria Field Combinations for details of the hashing behavior.
MPLS labels will be used as part of the GigaStream hash criteria if the MPLS field is configured and the packet has Ether Type 0x8847.
MPLS hashing applies to the following:
• | regular GigaStream |
• | controlled GigaStream |
• | stack GigaStream |
• | inline tool groups |
Table 2: Hashing Behavior Based on Hash Criteria Field Combinations shows the possible hash criteria field combinations and the corresponding hashing behavior based on packet type for advanced hashing with MPLS packets. (Refer to Table 1: Hashing Behavior Based on Hash Criteria Field Combinations for non-MPLS packets.)
Table 2: Hashing Behavior Based on Hash Criteria Field Combinations
Hash Criteria Fields |
Packet Type |
Hashing Behavior |
IPv4 Source Address, |
MAC + Label1 + Label2 + Label3 + IP + L4 + Payload |
Hash on IP |
Source MAC Address, |
outer MAC + Label1 + Label2 + Label3 + inner MAC + IP + L4 + Payload |
Hash on outer MAC |
Source MAC Address, |
MAC + Label1 + Label2 + Label3 + IP + L4 + Payload |
Hash on MAC |
MPLS Hash |
MAC + Label1 + Label2 + Label3 + IP + L4 + Payload |
Hash on MPLS Label1, Label2, Label3 |
MPLS Hash |
MAC + Label1 + Label2 + IP + L4 + Payload |
Hash on MPLS Label1, Label 2 |
MPLS Hash |
MAC + Label1 + IP + L4 + Payload |
Hash on MPLS Label1 |
MPLS Hash, Ether Type, IPv4 Protocol |
MAC + Label1 + Label2 + Label3 + Label4 + IP + L4 + Payload |
Hash on MPLS Label1, Label2, Label3 |
MPLS Hash, |
MAC + MPLS Label1 + IP + L4 + Payload |
Hash on MPLS Label1, IPv4 Source Address, IPv4 Destination Address |
MPLS Hash, |
MAC + Label1 + Label2 + IP + L4 + Payload |
Hash on MPLS Label1, Label2, IPv4 Source Address, IPv4 Destination Address |
MPLS Hash, |
MAC + Label1 + Label2 + Label3 + IP + L4 + Payload |
Hash on MPLS Label1, Label2, Label3, IPv4 Source Address, IPv4 Destination Address |
MPLS Hash, |
MAC + Label1 + Label2 + Label3 + Label4 + IP + L4 + Payload |
Hash on MPLS Label1, Label2, Label3 |
MPLS Hash, |
MAC + MPLS Label1 + MAC + IP + L4 + Payload |
Hash on MPLS Label1 |
MPLS Hash, |
MAC + Label1 + Label2 + MAC + IP + L4 + Payload |
Hash on MPLS Label1, Label2 |
MPLS Hash, |
MAC + Label1 + Label2 + Label3 + MAC + IP + L4 + Payload |
Hash on MPLS Label1, Label2, Label3 |
MPLS Hash, |
MAC + Label1 + Label2 + Label3 + IP + L4 + Payload |
Hash on MPLS Label1, Label2, Label3 |
MPLS Hash, |
MAC + Label1 + Label2 + Label3 + Label4 + IP + L4 + Payload |
Hash on MPLS Label1, Label2, Label3 |
IPv4 Source Port, |
MAC + Label1 + Label2 + Label3 + IP + L4 + Payload |
No Hash |
NOTES:
• | No hash means that the packets will be sent to the first port in the GigaStream. |
• | If an MPLS packet has a router alert label as one of its labels, the router alert label is skipped and the other available labels are used for hashing. For example, if a packet has four labels and the second label is the router alert, the first, third, and fourth labels are used for hashing. |
Advanced Hashing with GTP TEID
Starting in software version 5.2, GigaStream GTP TEID hashing adds the ability to hash on GTP tunnel endpoint identifiers (TEIDs). GPRS Tunneling Protocol (GTP) is an IP/UDP-based protocol for mobile data.
The TEID field in a GTP header is a unique identifier for mobile subscribers and is used to multiplex different connections on the same GTP tunnel. Use GTP TEID advanced hashing to load balance GTP packets across all GigaStream ports.
Advanced hashing with GTP TEID is supported on GigaVUE H Series and TA Series nodes, with the following distinctions:
• | The following nodes are supported: GigaVUE‑HC1, GigaVUE-HC2 (with control card version 1 or 2), GigaVUE-HC3, GigaVUE-TA40, and GigaVUE-TA100. |
• | The following nodes are not supported: GigaVUE-TA10. |
Use the Advanced Hash Settings to specify the GTP TEID field. It must be specified with one of the port source and destination pairs: either IPv4 Source Port and IPv4 Destination Port for IPv4 or IPv6 Source Port and IPv6 Destination Port for IPv6.
When the GTP TEID field is configured, GTP packets will use it for hashing along with configured IP fields, instead of the Layer 4 (L4) source and destination for GTP packets. The hashing for all non-GTP packets will be based on L4 source and destination port.
GTP TEID hashing is supported only for GTP-User packets, version 1 (V1), with L4 source and destination port 2152. The hashing functionality works only for non-fragmented packets.
Refer to Hashing Behavior Based on Hash Criteria Fields: GTP TEID for details of the hashing behavior.
GTP TEID hashing applies to the following:
• | regular GigaStream |
• | controlled GigaStream |
• | stack GigaStream (except GigaVUE-HC2 and GigaVUE-HC3) |
• | inline tool groups |
Note: GTP TEID hashing is not supported for stack GigaStream on GigaVUE-HC2 and GigaVUE-HC3 in this software version due to the 3-tuple limitation listed in Notes and Considerations for Advanced Hashing.
Table 3: Hashing Behavior Based on Hash Criteria Fields: GTP TEID shows the possible hash criteria field combinations and the corresponding hashing behavior based on packet type for advanced hashing with GTP packets.
Table 3: Hashing Behavior Based on Hash Criteria Fields: GTP TEID
Hash Criteria Fields |
Packet Type |
Hashing Behavior |
IPv4 Source Address, |
MAC + IP + L4 + Payload |
Hash on IPv4 Source Address, |
IPv4 Source Address, |
MAC + IP + L4 + GTP + Payload |
Hash on IPv4 Source Address, |
IPv4 Source Address, |
MAC + IP + L4 + Payload |
Hash on IPv4 Source Address, |
IPv6 Source Address, |
MAC + IP + L4 + Payload |
Hash on IPv6 Source Address, |
IPv6 Source Address, |
MAC + IP + L4 + GTP + Payload |
Hash on IPv6 Source Address, |
IPv6 Source Address, |
MAC + IP + L4 + Payload |
Hash on IPv6 Source Address, |
Packet Distribution and the Advanced Hash Algorithm
• | When an IPv4 Fragmentation map rule is used to send traffic to an advanced hash tool GigaStream, all fragments are consolidated to a single port within the GigaStream. |
• | Packets with multiple VLAN tags (such as Q-in-Q) will experience uneven traffic distribution. For this traffic, GigaSMART load balancing is recommended. |