FD.io VPP
v18.01.2-1-g9b554f3
Vector Packet Processing
|
create gtpu tunnel src <local-vtep-addr> {dst <remote-vtep-addr>|group <mcast-vtep-addr> <intf-name>} teid <nn> [encap-vrf-id <nn>] [decap-next [l2|ip4|ip6|node <name>]] [del].
Add or delete a GTPU Tunnel.
GTPU provides the features needed to allow L2 bridge domains (BDs) to span multiple servers. This is done by building an L2 overlay on top of an L3 network underlay using GTPU tunnels.
This makes it possible for servers to be co-located in the same data center or be separated geographically as long as they are reachable through the underlay L3 network.
You can refer to this kind of L2 overlay bridge domain as a GTPU (Virtual eXtensible VLAN) segment.
vpp# create gtpu tunnel src 10.0.3.1 dst 10.0.3.3 teid 13 encap-vrf-id 7
Example of how to delete a GTPU Tunnel: vpp# create gtpu tunnel src 10.0.3.1 dst 10.0.3.3 teid 13 del
Declaration: create_gtpu_tunnel_command (src/plugins/gtpu/gtpu.c line 865)
Implementation: gtpu_add_del_tunnel_command_fn.
set interface ip gtpu-bypass <interface> [del].
This command adds the 'ip4-gtpu-bypass' graph node for a given interface. By adding the IPv4 gtpu-bypass graph node to an interface, the node checks for and validate input gtpu packet and bypass ip4-lookup, ip4-local, ip4-udp-lookup nodes to speedup gtpu packet forwarding. This node will cause extra overhead to for non-gtpu packets which is kept at a minimum.
Example of graph node before ip4-gtpu-bypass is enabled:
vpp# show vlib graph ip4-gtpu-bypass
Name Next Previous ip4-gtpu-bypass error-drop [0] gtpu4-input [1] ip4-lookup [2]
Example of how to enable ip4-gtpu-bypass on an interface:
vpp# set interface ip gtpu-bypass GigabitEthernet2/0/0
Example of graph node after ip4-gtpu-bypass is enabled:
vpp# show vlib graph ip4-gtpu-bypass
Name Next Previous ip4-gtpu-bypass error-drop [0] ip4-input gtpu4-input [1] ip4-input-no-checksum ip4-lookup [2]
Example of how to display the feature enabed on an interface:
vpp# show ip interface features GigabitEthernet2/0/0
IP feature paths configured on GigabitEthernet2/0/0... ... ipv4 unicast: ip4-gtpu-bypass ip4-lookup ...
Example of how to disable ip4-gtpu-bypass on an interface:
vpp# set interface ip gtpu-bypass GigabitEthernet2/0/0 del
Declaration: set_interface_ip_gtpu_bypass_command (src/plugins/gtpu/gtpu.c line 1018)
Implementation: set_ip4_gtpu_bypass.
set interface ip gtpu-bypass <interface> [del].
This command adds the 'ip6-gtpu-bypass' graph node for a given interface. By adding the IPv6 gtpu-bypass graph node to an interface, the node checks for and validate input gtpu packet and bypass ip6-lookup, ip6-local, ip6-udp-lookup nodes to speedup gtpu packet forwarding. This node will cause extra overhead to for non-gtpu packets which is kept at a minimum.
Example of graph node before ip6-gtpu-bypass is enabled:
vpp# show vlib graph ip6-gtpu-bypass
Name Next Previous ip6-gtpu-bypass error-drop [0] gtpu6-input [1] ip6-lookup [2]
Example of how to enable ip6-gtpu-bypass on an interface:
vpp# set interface ip6 gtpu-bypass GigabitEthernet2/0/0
Example of graph node after ip6-gtpu-bypass is enabled:
vpp# show vlib graph ip6-gtpu-bypass
Name Next Previous ip6-gtpu-bypass error-drop [0] ip6-input gtpu6-input [1] ip4-input-no-checksum ip6-lookup [2]
Example of how to display the feature enabed on an interface:
vpp# show ip interface features GigabitEthernet2/0/0
IP feature paths configured on GigabitEthernet2/0/0... ... ipv6 unicast: ip6-gtpu-bypass ip6-lookup ...
Example of how to disable ip6-gtpu-bypass on an interface:
vpp# set interface ip6 gtpu-bypass GigabitEthernet2/0/0 del
Declaration: set_interface_ip6_gtpu_bypass_command (src/plugins/gtpu/gtpu.c line 1075)
Implementation: set_ip6_gtpu_bypass.
show gtpu tunnel.
Display all the GTPU Tunnel entries.
vpp# show gtpu tunnel
[0] src 10.0.3.1 dst 10.0.3.3 teid 13 encap_fib_index 0 sw_if_index 5 decap_next l2
Declaration: show_gtpu_tunnel_command (src/plugins/gtpu/gtpu.c line 906)
Implementation: show_gtpu_tunnel_command_fn.