tools/testing/selftests/net/forwarding/gre_custom_multipath_hash.sh

Source file repositories/reference/linux-study-clean/tools/testing/selftests/net/forwarding/gre_custom_multipath_hash.sh

File Facts

System
Linux kernel
Corpus path
tools/testing/selftests/net/forwarding/gre_custom_multipath_hash.sh
Extension
.sh
Size
12810 bytes
Lines
465
Domain
Support Tooling And Documentation
Bucket
tools
Inferred role
Support Tooling And Documentation: tools
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

#!/bin/bash
# SPDX-License-Identifier: GPL-2.0
#
# Test traffic distribution when there are multiple paths between an IPv4 GRE
# tunnel. The tunnel carries IPv4 and IPv6 traffic between multiple hosts.
# Multiple routes are in the underlay network. With the default multipath
# policy, SW2 will only look at the outer IP addresses, hence only a single
# route would be used.
#
# +--------------------------------+
# | H1                             |
# |                     $h1 +      |
# |   198.51.100.{2-253}/24 |      |
# |   2001:db8:1::{2-fd}/64 |      |
# +-------------------------|------+
#                           |
# +-------------------------|------------------+
# | SW1                     |                  |
# |                    $ol1 +                  |
# |         198.51.100.1/24                    |
# |        2001:db8:1::1/64                    |
# |                                            |
# |   + g1 (gre)                               |
# |     loc=192.0.2.1                          |
# |     rem=192.0.2.2 --.                      |
# |     tos=inherit     |                      |
# |                     v                      |
# |                     + $ul1                 |
# |                     | 192.0.2.17/28        |
# +---------------------|----------------------+
#                       |
# +---------------------|----------------------+
# | SW2                 |                      |
# |               $ul21 +                      |
# |       192.0.2.18/28 |                      |
# |                     |                      |
# !   __________________+___                   |
# |  /                      \                  |
# |  |                      |                  |
# |  + $ul22.111 (vlan)     + $ul22.222 (vlan) |
# |  | 192.0.2.33/28        | 192.0.2.49/28    |
# |  |                      |                  |
# +--|----------------------|------------------+
#    |                      |
# +--|----------------------|------------------+
# |  |                      |                  |
# |  + $ul32.111 (vlan)     + $ul32.222 (vlan) |
# |  | 192.0.2.34/28        | 192.0.2.50/28    |
# |  |                      |                  |
# |  \__________________+___/                  |
# |                     |                      |
# |                     |                      |
# |               $ul31 +                      |
# |       192.0.2.65/28 |                  SW3 |
# +---------------------|----------------------+
#                       |
# +---------------------|----------------------+
# |                     + $ul4                 |
# |                     ^ 192.0.2.66/28        |
# |                     |                      |
# |   + g2 (gre)        |                      |
# |     loc=192.0.2.2   |                      |
# |     rem=192.0.2.1 --'                      |
# |     tos=inherit                            |
# |                                            |
# |                    $ol4 +                  |
# |          203.0.113.1/24 |                  |
# |        2001:db8:2::1/64 |              SW4 |
# +-------------------------|------------------+
#                           |

Annotation

Implementation Notes