Hi everyone, I noticed a strange behavior of group reference count in ovs 2.7.0 and therefore I am writing to confirm if this is expected.
I created 2 indirect groups and 1 select group. There are 2 buckets in the select group, each of them points to one of the indirect group. sudo ovs-ofctl -O OpenFlow13 dump-groups ovs-br OFPST_GROUP_DESC reply (OF1.3) (xid=0x2): group_id=201,type=indirect,bucket=actions=output:1 group_id=202,type=indirect,bucket=actions=output:2 group_id=101,type=select,*bucket=actions=group:201,bucket=actions=group:202* I also created a flow that points to the select group. sudo ovs-ofctl -O OpenFlow13 dump-flows ovs-br OFPST_FLOW reply (OF1.3) (xid=0x2): cookie=0x0, duration=31.409s, table=0, n_packets=0, n_bytes=0, vlan_tci=0x000a/0x1fff actions=group:101 cookie=0x0, duration=275.500s, table=0, n_packets=0, n_bytes=0, priority=0 actions=NORMAL However, the reference count of these 2 indirect groups are both zero. sudo ovs-ofctl -O OpenFlow13 dump-group-stats ovs-br OFPST_GROUP reply (OF1.3) (xid=0x2): group_id=201,duration=185.249s,*ref_count=0* ,packet_count=0,byte_count=0,bucket0:packet_count=0,byte_count=0 group_id=202,duration=159.981s,*ref_count=0* ,packet_count=0,byte_count=0,bucket0:packet_count=0,byte_count=0 group_id=101,duration=111.349s,ref_count=1,packet_count=0,byte_count=0,bucket0:packet_count=0,byte_count=0,bucket1:packet_count=0,byte_count=0 I further looked up OF 1.3 spec and discovered this description in the section of OFPMP_GROUP. uint32_t ref_count; /* Number of *flows or groups that directly forward to this group*. */ According to my interpretation of the spec, the reference count of these indirect groups should both be 1 instead of 0 since they are referenced by the select group. This can be easily reproduced by following steps. sudo ovs-vsctl add-br ovs-br sudo ovs-ofctl -O OpenFlow13 add-group ovs-br group_id=201,type=indirect,bucket=actions=output:1 sudo ovs-ofctl -O OpenFlow13 add-group ovs-br group_id=202,type=indirect,bucket=actions=output:2 sudo ovs-ofctl -O OpenFlow13 add-group ovs-br group_id=101,type=select,bucket=actions=group:201,bucket=actions=group:202 sudo ovs-ofctl -O OpenFlow13 add-flow ovs-br vlan_vid=10,actions=group:101 I installed OVS from the 2.7.0 tarball. This is the version I am using. sudo ovs-vsctl --version ovs-vsctl (Open vSwitch) 2.7.0 DB Schema 7.14.0 Thanks, Charles -- Charles Chan Member of Technical Staff, ON.Lab Member of Ambassador Steering Team, ONOS/CORD Community
_______________________________________________ discuss mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-discuss
