]> git.proxmox.com Git - ovs.git/commit
tunnel: Bareudp Tunnel Support.
authorMartin Varghese <martin.varghese@nokia.com>
Thu, 17 Dec 2020 07:18:41 +0000 (12:48 +0530)
committerIlya Maximets <i.maximets@ovn.org>
Tue, 22 Dec 2020 11:51:22 +0000 (12:51 +0100)
commitebe0e518b0489aafbe385ba90133f6bacba33353
tree73972f43dc33161d91cb93684f153da5919b0290
parent55f2b065acd477a6810d5279fcace8b42bd594f5
tunnel: Bareudp Tunnel Support.

There are various L3 encapsulation standards using UDP being discussed to
leverage the UDP based load balancing capability of different networks.
MPLSoUDP (__ https://tools.ietf.org/html/rfc7510) is one among them.

The Bareudp tunnel provides a generic L3 encapsulation support for
tunnelling different L3 protocols like MPLS, IP, NSH etc. inside a UDP
tunnel.

An example to create bareudp device to tunnel MPLS traffic is
given

$ ovs-vsctl add-port br_mpls udp_port -- set interface udp_port \
             type=bareudp options:remote_ip=2.1.1.3
             options:local_ip=2.1.1.2 \
             options:payload_type=0x8847 options:dst_port=6635

The bareudp device supports special handling for MPLS & IP as
they can have multiple ethertypes. MPLS procotcol can have ethertypes
ETH_P_MPLS_UC (unicast) & ETH_P_MPLS_MC (multicast). IP protocol can have
ethertypes ETH_P_IP (v4) & ETH_P_IPV6 (v6).

The bareudp device to tunnel L3 traffic with multiple ethertypes
(MPLS & IP) can be created by passing the L3 protocol name as string in
the field payload_type. An example to create bareudp device to tunnel
MPLS unicast & multicast traffic is given below.::

$ ovs-vsctl add-port  br_mpls udp_port -- set interface
            udp_port \
            type=bareudp options:remote_ip=2.1.1.3
            options:local_ip=2.1.1.2 \
            options:payload_type=mpls options:dst_port=6635

Signed-off-by: Martin Varghese <martin.varghese@nokia.com>
Acked-By: Greg Rose <gvrose8192@gmail.com>
Tested-by: Greg Rose <gvrose8192@gmail.com>
Acked-by: Eelco Chaudron <echaudro@redhat.com>
Signed-off-by: Ilya Maximets <i.maximets@ovn.org>
13 files changed:
Documentation/automake.mk
Documentation/faq/bareudp.rst [new file with mode: 0644]
Documentation/faq/index.rst
Documentation/faq/releases.rst
NEWS
datapath/linux/compat/include/linux/openvswitch.h
lib/dpif-netlink-rtnl.c
lib/dpif-netlink.c
lib/netdev-vport.c
lib/netdev.h
ofproto/ofproto-dpif-xlate.c
tests/system-layer3-tunnels.at
vswitchd/vswitch.xml