On Thu, May 29, 2014 at 05:23:45PM -0700, Chris Small wrote: > I am taking a look at using OVS to load balance traffic over a number of > ports. I was initially thinking of implementing the application by using > group tables with type=select but the fact that the current OVS code > uses dl_dst as the basis of the hash complicates the implementation. > This is especially an issue especially if trying to divide traffic by > flows. > > I could see that for TCP and UDP flows using a hash based on > nw_src/nw_dst/tp_src/tp_dst/proto_type (or a more complex tuple) could > be useful for load balancing. Is there any reason why this couldn't be > added or is there a simpler solution to allow for load balancing, using > group tables or not, that I am missing. > > If not I was thinking of coding up a patch that would replace the > current dl_dst hash with a function that chose the tuple based on type > of traffic. If the flow is a TCP or UDP one the new function would hash > based on the 5-tuple. Other traffic would just use the dl_dst based > hash.
I don't know why the current code uses only destination MAC. I don't see any rationale in the code or the history. I guess changing it to 5-tuple would be fine. > Also is there any plans to add some way to toggle what type of hashes > could be used for the select group tables. The OF spec specifically says > you can't specify the hashing mechanism for select groups through the OF > protocol itself but it still may be useful to allow for setting how you > wanted to created for load balancing or ECMP through another mechanism. I'd be OK with adding a way to configure it. The trickiest part would be finding a place to put the configuration--the "group mod" command doesn't seem to be extensible. _______________________________________________ discuss mailing list discuss@openvswitch.org http://openvswitch.org/mailman/listinfo/discuss