[ovs-dev] can not do ecmp with ovs group when send packet out from userspace vxlan port

Ben Pfaff blp at ovn.org
Tue Aug 14 16:00:49 UTC 2018


On Tue, Aug 14, 2018 at 10:22:29PM +0800, ychen wrote:
>    b. as we can see, we will use default group select method
>      FIRST QUESTION: why we not use udp port for hash calculate? in function flow_hash_symmetric_l4(), we can see the following code:
>       if (fields.eth_type == htons(ETH_TYPE_IP)) {
>         fields.ipv4_addr = flow->nw_src ^ flow->nw_dst;
>         fields.ip_proto = flow->nw_proto;
>         if (fields.ip_proto == IPPROTO_TCP || fields.ip_proto == IPPROTO_SCTP) {
>             fields.tp_port = flow->tp_src ^ flow->tp_dst;
>         }
>       }

Did you read the comment just above that code?

>   c. when send packet out from userspace vxlan port, it will first do group select, then build the total tunnel packet and send out
>       SECOND QUESTION: how can we use the tunnel src port to do group hash? when packet do xlate in function xlate_select_group(), flow->tp_src is always 0

I believe that you can get a second shot at the packet in the physical
bridge.  See Documentation/howto/userspace-tunneling.rst.


More information about the dev mailing list