On 13 April 2017 at 08:58, f 62 <[email protected]> wrote:
> Hi ,
>
>     OVS is dropping packet when packet is output to multiple VXLAN tunnel. I
> see following error:
>
> 2017-04-13T15:49:30.112Z|03577|dpif(handler15)|WARN|system@ovs-system:
> failed to put[create] (Invalid argument)
> ufid:7e404481-148c-4cee-9495-237bdc62383d
> recirc_id(0),dp_hash(0/0),skb_priority(0/0),in_port(10),skb_mark(0/0),ct_state(0/0),ct_zone(0/0),ct_mark(0/0),ct_label(0/0),eth(src=fa:16:3e:c0:5a:48,dst=fa:16:3e:4c:54:07),eth_type(0x0800),ipv4(src=51.0.0.8,dst=51.0.0.5,proto=6,tos=0/0xfc,ttl=64,frag=no),tcp(src=41564,dst=80),tcp_flags(0/0),
> actions:set(eth(src=fa:16:3e:c0:5a:48,dst=fa:16:3e:db:81:44)),set(tunnel(tun_id=0x2,src=192.168.2.91,dst=192.168.2.177,ttl=64,flags(df|key))),push_mpls(label=511,tc=0,ttl=255,bos=1,eth_type=0x8847),8,set(tunnel(tun_id=0x2,src=192.168.2.91,dst=192.168.2.141,ttl=64,flags(df|key))),8,pop_mpls(eth_type=0x800),recirc(0x7)
> 2017-04-13T15:49:30.112Z|03578|dpif(handler15)|WARN|system@ovs-system:
> execute
> set(eth(src=fa:16:3e:c0:5a:48,dst=fa:16:3e:db:81:44)),set(tunnel(tun_id=0x2,src=192.168.2.91,dst=192.168.2.177,ttl=64,flags(df|key))),push_mpls(label=511,tc=0,ttl=255,bos=1,eth_type=0x8847),8,set(tunnel(tun_id=0x2,src=192.168.2.91,dst=192.168.2.141,ttl=64,flags(df|key))),8,pop_mpls(eth_type=0x800),recirc(0x7)
> failed (Invalid argument) on packet

Hmm, once the push_mpls() happens, you should be able to output fine
but I'm not sure if the subsequent set(tunnel(...)) would know how to
change the tunnel attributes since it's now an MPLS packet. Maybe the
userspace translation code needs to be taught to be a bit smarter to
generate better actions for this case, eg something more like:

set(eth(...)),set(tunnel(...)),push_mpls(...),output(...),pop_mpls(...),set(tunnel(...)),push_mpls(...),output(...),...
_______________________________________________
discuss mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss

Reply via email to