[ovs-discuss] Point-To-Point link for IPv4-IPv6-MPLS packets

Ben Pfaff blp at ovn.org
Tue Nov 10 17:53:21 UTC 2015


On Tue, Oct 20, 2015 at 04:34:25PM -0700, Pavel Shirshov wrote:
> I'm trying to set raw point-to-point link using openvswitch 2.0.2
> (ubuntu trusty default option). By raw I mean that all packets which
> are egress for the first interface should be ingress for the second
> and otherwise. No other options or checks. But I see in ovs-dpctl
> output that only ipv4 packets are forwarded.
> 
> I create the bridge and connect two ports to the bridge
> # ovs-vsctl add-br b0002.03bb
> # ovs-vsctl add-port b0002.03bb
> # ovs-vsctl add-port b0002.03bb
> 
> Check it
> # ovs-vsctl show
>     Bridge "b0002.03bb"
>         Port "b0002.03bb"
>             Interface "b0002.03bb"
>                 type: internal
>         Port "t0002.0120"
>             Interface "t0002.0120"
>         Port "t0002.011f"
>             Interface "t0002.011f"
> 
> Set the bridge rules to forward all packets between ports
> # ovs-ofctl del-flows b0002.03bb
> # ovs-ofctl add-flow b0002.03bb 'table=0,in_port=1,action=output:2']
> # ovs-ofctl add-flow b0002.03bb 'table=0,in_port=2,action=output:1']
> 
> Check flows in ovs-ofctl
> # ovs-ofctl dump-flows b0002.03bb
> NXST_FLOW reply (xid=0x4):
>  cookie=0x0, duration=1274.478s, table=0, n_packets=1701895,
> n_bytes=187088564, idle_age=1, in_port=1 actions=output:2
>  cookie=0x0, duration=1274.466s, table=0, n_packets=8393232,
> n_bytes=1024054033, idle_age=0, in_port=2 actions=output:1
> 
> Check flows in ovs-dpctl
> # ovs-dpctl show | egrep 't0002.0120|t0002.011f'
>         port 394: t0002.0120
>         port 404: t0002.011f
> 
> # ovs-dpctl dump-flows | fgrep '(404)'
> skb_priority(0),in_port(404),eth_type(0x0800),ipv4(src=172.16.0.1/0.0.0.0,dst=172.16.0.2/0.0.0.0,proto=6/0,tos=0xc0/0,ttl=64/0,frag=no/0xff),
> packets:4658053, bytes:564867731, used:0.083s, flags:SP., actions:394
> 
> # ovs-dpctl dump-flows | fgrep 'actions:404'
> skb_priority(0),in_port(394),eth_type(0x0800),ipv4(src=172.16.0.2/0.0.0.0,dst=172.16.0.1/0.0.0.0,proto=6/0,tos=0/0,ttl=64/0,frag=no/0xff),
> packets:2092237, bytes:277216996, used:0.000s, flags:SFP., actions:404
> 
> Surprisingly I found that my openvswitch forward ipv4 traffic only:
> "eth_type(0x0800)".
> Is it possible to forward MPLS and IPv6 traffic too?

The flows displayed by ovs-dpctl are based on the traffic actually
observed.  If you've only actually been passing in IPv4 traffic in the
last few seconds, you'll only see a flow for IPv4 there.



More information about the discuss mailing list