I have tried to implement multipath routing using a select group and two buckets but it doesn't work as I expected.
I have a diamond topology with Alice at one end and Bob at the other. They connect to each other through the OVS switches s1, s2, s3, and s4, like in the diagram below. ___ s2 ___ / \ a ---- s1 s4 ---- b \___ s3 ___/ I've added a group to s1 that contains two buckets that have equal weight: # ovs-ofctl -O OpenFlow15 add-group s1 "group_id=1 type=select selection_method=dp_hash bucket=actions=output:2,weight=80 bucket=actions=output:3,weight=80" Here is my flow entry that sends matching packets to the group: # ovs-ofctl -O OpenFlow15 add-flow s1 in_port=1,dl_src=08:00:27:6f:32:8d,dl_dst=08:00:27:fb:55:9d,actions=group:1 There are other flow entries to ensure packets are forwarded appropriately by s2, s3, and s4. When I send traffic through the network and dump the flow entry statistics, I see that all of the traffic goes to Bob through s2. If I increase the weight of the second bucket by 1, then all of the traffic goes to Bob through s3. Here is what I read in the documentation about ovs-ofctl, from the section about Group Syntax > type > select: "Execute one bucket in the group, balancing across the buckets according to their weights." I took that to mean that buckets with equal weights would each handle an equal proportion of the incoming matching network traffic. Is that not what it means? I welcome any suggestions about what I might be doing wrong here. Thankyou
_______________________________________________ discuss mailing list disc...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-discuss