[ovs-discuss] Fwd: w.r.t OFPGC_MODIFY on OVS 1.3

Ben Pfaff blp at ovn.org
Fri Oct 18 17:46:30 UTC 2019


On Thu, Oct 17, 2019 at 03:26:28PM +1100, durga wrote:
> Hi
> 
> Openflow v.13 document states that
> "For modify requests (OFPGC_MODIFY), if a group entry with the specified
> group identifier already re-sides in the group table, then that entry,
> including its type and action buckets, must be removed, and the new group
> entry added."
> 
> I see a different behaviour on the ovs switch though. When a switch
> receives a group modify message with different bucket weights- it just
> appends the existing buckets without modifying(Deleting and creating ) new
> buckets
> 
> xxx at xxx:~$ sudo ovs-ofctl -O Openflow13 dump-groups s4
> OFPST_GROUP_DESC reply (OF1.3) (xid=0x2):
>  group_id=4266446750,type=select,bucket=weight:9121,actions=output:3,
> *bucket=weight:9961,actions=output:2*,*bucket=weight:8229,actions=output:2*
> 
> Group modify request is as below where buckets is the list of updated
> buckets configuration:
> 
> req = parser.OFPGroupMod(self.datapaths[dpid],
> ofproto.OFPGC_MODIFY,ofproto.OFPGT_SELECT,grp_id,buckets)
> 
> Is this expected behavior???

I do not see this behavior:

    $ ovs-vsctl add-br br0
    $ ovs-ofctl -O OpenFlow13 add-group br0 group_id=1234,type=all,bucket=output:1
    $ ovs-ofctl -O OpenFlow13 mod-group br0 group_id=1234,type=all,bucket=output:2
    $ ovs-ofctl -O OpenFlow13 dump-groups br0
    OFPST_GROUP_DESC reply (OF1.3) (xid=0x2):
     group_id=1234,type=all,bucket=actions=output:2
    $ 

or, with the OpenFlow messages printed also:

    $ ovs-vsctl add-br br0
    $ ovs-ofctl --no-names -vvconn -O OpenFlow13 add-group br0 group_id=1234,type=all,bucket=output:1
    2019-10-18T17:45:04Z|00001|vconn|DBG|unix:/home/bpfaff/nicira/ovs/tutorial/sandbox/br0.mgmt: sent (Success): OFPT_HELLO (OF1.3) (xid=0x1):
     version bitmap: 0x04
    2019-10-18T17:45:04Z|00002|vconn|DBG|unix:/home/bpfaff/nicira/ovs/tutorial/sandbox/br0.mgmt: received: OFPT_HELLO (OF1.5) (xid=0x1):
     version bitmap: 0x01, 0x02, 0x03, 0x04, 0x05, 0x06
    2019-10-18T17:45:04Z|00003|vconn|DBG|unix:/home/bpfaff/nicira/ovs/tutorial/sandbox/br0.mgmt: negotiated OpenFlow version 0x04 (we support version 0x04, peer supports version 0x06 and earlier)
    2019-10-18T17:45:04Z|00004|vconn|DBG|unix:/home/bpfaff/nicira/ovs/tutorial/sandbox/br0.mgmt: sent (Success): OFPT_GROUP_MOD (OF1.3) (xid=0x2):
     ADD group_id=1234,type=all,bucket=actions=output:1
    2019-10-18T17:45:04Z|00005|vconn|DBG|unix:/home/bpfaff/nicira/ovs/tutorial/sandbox/br0.mgmt: sent (Success): OFPT_BARRIER_REQUEST (OF1.3) (xid=0x3):
    2019-10-18T17:45:04Z|00006|vconn|DBG|unix:/home/bpfaff/nicira/ovs/tutorial/sandbox/br0.mgmt: received: OFPT_BARRIER_REPLY (OF1.3) (xid=0x3):
    $ ovs-ofctl --no-names -vvconn -O OpenFlow13 mod-group br0 group_id=1234,type=all,bucket=output:2
    2019-10-18T17:45:11Z|00001|vconn|DBG|unix:/home/bpfaff/nicira/ovs/tutorial/sandbox/br0.mgmt: sent (Success): OFPT_HELLO (OF1.3) (xid=0x1):
     version bitmap: 0x04
    2019-10-18T17:45:11Z|00002|vconn|DBG|unix:/home/bpfaff/nicira/ovs/tutorial/sandbox/br0.mgmt: received: OFPT_HELLO (OF1.5) (xid=0x2):
     version bitmap: 0x01, 0x02, 0x03, 0x04, 0x05, 0x06
    2019-10-18T17:45:11Z|00003|vconn|DBG|unix:/home/bpfaff/nicira/ovs/tutorial/sandbox/br0.mgmt: negotiated OpenFlow version 0x04 (we support version 0x04, peer supports version 0x06 and earlier)
    2019-10-18T17:45:11Z|00004|vconn|DBG|unix:/home/bpfaff/nicira/ovs/tutorial/sandbox/br0.mgmt: sent (Success): OFPT_GROUP_MOD (OF1.3) (xid=0x2):
     MOD group_id=1234,type=all,bucket=actions=output:2
    2019-10-18T17:45:11Z|00005|vconn|DBG|unix:/home/bpfaff/nicira/ovs/tutorial/sandbox/br0.mgmt: sent (Success): OFPT_BARRIER_REQUEST (OF1.3) (xid=0x3):
    2019-10-18T17:45:11Z|00006|vconn|DBG|unix:/home/bpfaff/nicira/ovs/tutorial/sandbox/br0.mgmt: received: OFPT_BARRIER_REPLY (OF1.3) (xid=0x3):
    $ ovs-ofctl -O OpenFlow13 dump-groups br0
    OFPST_GROUP_DESC reply (OF1.3) (xid=0x2):
     group_id=1234,type=all,bucket=actions=output:2
    $ 


More information about the discuss mailing list