On Mon, Jul 30, 2018 at 02:02:16PM -0600, Carl Baldwin wrote:
> I recently tried pushing MPLS labels using OVS in a lab.
> 
> Before adding MPLS push to the mix, I had four hosts: two pairs, each
> connected to a different set of TOR switches running VRRP. OVS (using
> kernel datapath) had a flow to write the VRRP mac address and output to a
> bond port. The bond is a Linux LACP bond, not an OVS bond. In this
> scenario, the TORs would route the packets through a default route our
> gateway routers to egress from the DC. This did fine and I was able to push
> something around 42 Gbps using16 iperf2 TCP streams.
> 
>     ovs-ofctl add-flow -OOpenFlow13 br0 "table=25, ip,
> actions=output=${bond_port}"
> 
> My next step was to push an MPLS label onto the packet. The above flow
> became this:
> 
>     ovs-ofctl add-flow -OOpenFlow13 br0 "table=25, ip,
> actions=push_mpls:0x8847,set_field:1048001->mpls_label,output=${bond_port}"
> 
> 1048001 is a static label that I configure on the TORs which sends the
> packet up to the same gateway using MPLS instead of IP routing. So, the
> packets would take the same path out of the network but using an MPLS path.
> With this change, things worked well from a functional perspective but the
> performance fell drastically to around 30-40 Mbps.
> 
> I'm pretty confident in the network fabric because I tried the same
> scenario using LInux MPLS and it performed well. From the network fabric's
> point of view, it was exactly the same (static label through LACP bond to
> VRRP mac).
> 
> I found in the faq [1] under "Does Open vSwitch support MPLS?" that "Open
> vSwitch version 2.4 can match, push, or pop up to 3 MPLS labels and look
> past the MPLS label into the encapsulated packet. It will have kernel
> support for MPLS, yielding improved performance." I looked through the git
> history and I don't see much evidence of this actually getting done for the
> 2.4 release. Is this faq accurate?

It looks like MPLS datapath support was fairly solid by OVS 2.6, at any
rate.  If your kernel module is older than that, I'd recommend
upgrading.
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to