Hello
When using an ovs flow which matches on an IPv6 flow label and also using
the 'dec_ttl' action before outputing the packet to a switch port, ovs
produces errors. When removing either of the two from the rule it works
correctly.
The (simplified) flow was:
ovs-ofctl add-flow "ovs" \
in_port=LOCAL,ipv6,ipv6_label=0x0000,actions=dec_ttl,output:"ovs_p1"
The flow rule is matched correctly (with trace and with real packets) and the
correspondent statistics counters on the flow rule are increased. But no packets
appear on the output port. Instead the following error messages can be found
in the ovs-vswitchd.log file (reformated for readability).
2018-08-31T11:02:38.891Z|00614|dpif(handler63)|WARN|system@ovs-system:
failed to put[create] (Invalid argument)
ufid:55a3aa72-a988-432a-a21f-ad4efde57db7
recirc_id(0),dp_hash(0/0),skb_priority(0/0),in_port(1),skb_mark(0/0),
ct_state(0/0),ct_zone(0/0),ct_mark(0/0),ct_label(0/0),
eth(
src=6e:de:2b:9d:82:4d,
dst=00:01:bb:04:01:01),
eth_type(0x86dd),
ipv6(
src=2001:db8:1000::100/::,
dst=2001:db8:1000::1/::,
label=0,
proto=17/0,tclass=0x29/0,hlimit=64,frag=no),
udp(src=2500/0,dst=2500/0),
actions:set(ipv6(label=0,hlimit=63)),2
2018-08-31T11:02:38.891Z|00615|dpif(handler63)|WARN|system@ovs-system:
execute set(ipv6(label=0,hlimit=63)),2 failed
(Invalid argument) on packet
udp6,vlan_tci=0x0000,
dl_src=6e:de:2b:9d:82:4d,dl_dst=00:01:bb:04:01:01,
ipv6_src=2001:db8:1000::100,ipv6_dst=2001:db8:1000::1,
ipv6_label=0x00000,
nw_tos=40,nw_ecn=1,
nw_ttl=64,
tp_src=2500,tp_dst=2500,
udp_csum:ef7c
with metadata skb_priority(0),skb_mark(0),in_port(1) mtu 0
Tested on Ubuntu 16.04 LTS (64 bit kernel 4.4.0-134-generic) with ovs
version 2.9.0 and 2.10.0.
I assume the correct behaviour should be a packet with IPv6 label 0 and a 1 less
ttl as on the input port.
Regards
Richard
_______________________________________________
discuss mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss