Howdy OVS-ers.

We are using OVS with tunneling, over a multipath IP network, but our switches 
don't read the GRE header, and thus don't use the GRE key when computing the 
ECMP hashing.  Is there any reason to not set the CAPWAP source port based on 
the flow hash, as in the not yet merged VXLAN vport?  It seems to work.  Any 
objections to making that change in the CAPWAP vport code?

Cheers,
Dan


index 8fbd4a7..31c7f88 100644
--- a/datapath/vport-capwap.c
+++ b/datapath/vport-capwap.c
@@ -214,6 +214,9 @@ static struct sk_buff *capwap_update_header(const struct 
vport *vport,
 {
        struct udphdr *udph = udp_hdr(skb);
 
+       /* set source port based on flow hash, like in VXLAN */
+       udph->source = (__force __be16)OVS_CB(skb)->flow->hash | htons(32768);
+
        if (mutable->flags & TNL_F_OUT_KEY_ACTION) {
                /* first field in WSI is key */
                struct capwaphdr *cwh = (struct capwaphdr *)(udph + 1);



Sent with Sparrow (http://www.sparrowmailapp.com/?sig)

_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to