[ovs-discuss] Simple IP load Balancing

Diego Rivero riverod9 at gmail.com
Tue Aug 6 03:49:54 UTC 2013


Hi,

How do you think about the following flows for example?

priority=0, ip, nw_src=0.0.0.0/1.1.1.0, actions=blahblah
priority=0, ip, nw_src=0.0.1.0/1.1.1.0, actions=blahblah
priority=0, ip, nw_src=0.1.0.0/1.1.1.0, actions=blahblah
priority=0, ip, nw_src=0.1.1.0/1.1.1.0, actions=blahblah

where "nw_src" is the matcher for the source IP address. You can specify
the actions according to matched source IP address. Set netmask as 1.1.1.0
to treat IP address in more binary-oriented way :)

Let me know when your experiment goes well!



On Tue, Aug 6, 2013 at 4:03 AM, Ritesh Rekhi <rrekhi at paloaltonetworks.com>wrote:

>  Hi Diego,****
>
> ** **
>
> Thanks for the reply once again.****
>
> ** **
>
> You are right 8 entries are not enough. My explaination was just to
> explain you my design.I can have 255 buckets also which will be more better.
> ****
>
> ** **
>
> I have a follow up on the way you told me to implement .Is it possible to
> match last 8 bits on source-ip  by giving mask like 0.0.0.1 or 0.0.0.2 or
> 0.0.0.3.****
>
> ** **
>
> In all the OVS manuals you can only do a match to ignore last bits i.e
> 192.168.1.1 255.255.255.0****
>
> ** **
>
> Sorry I am new to OVS .That’s why these questions.****
>
> ** **
>
> My idea is that if webserver gets overwhelmed it can send an event to
> controller to take it out and when load is less it can add itself.****
>
> ** **
>
> Ritesh****
>
> ** **
>
> *From:* Diego Rivero [mailto:riverod9 at gmail.com]
> *Sent:* Monday, August 05, 2013 11:10 AM
>
> *To:* Ritesh Rekhi
> *Cc:* discuss at openvswitch.org
> *Subject:* Re: [ovs-discuss] Simple IP load Balancing****
>
> ** **
>
> Hi,****
>
> ** **
>
> I don't know if there is any method to implement hash function as you
> need. Because as far as I know the OpenFlow rules are stateless. In case
> you want to achieve such functionality with only source IP address, set IP
> address mask to extract 3 bits so that you can pick up the number from 0 to
> 7 which depends on the source IP address. I have never tried this so you
> need to test it. Besides that why do you want to do load-balancing with
> only source IP address? For me it seems that the load of each web server
> gets unbalanced easily. Moreover I cannot see big advantages to set only 8
> flow entries.****
>
> ** **
>
> Diego****
>
> ** **
>
> On Mon, Aug 5, 2013 at 11:46 PM, Ritesh Rekhi <rrekhi at paloaltonetworks.com>
> wrote:****
>
> Hi Diego,****
>
>  ****
>
> Thanks for replying.Let me explain more on my design.****
>
>  ****
>
> Let’s say you have 8 servers to which you load balance with ip’s 2.2.2.1
> to 2.2.2.8 and they all are web servers. Now client 1 which is IP
> 45.45.45.45 comes i.e tcp syn we has the source-ip and come up with a
> number 1-(through hash to bucket function) and then changes dest ip to one
> of the servers and send packet out to that port, we also add the flow table
> entry  where it is matching hash of source-ip and change dest-ip based on
> the hash.****
>
>  ****
>
> The reason I want to do hash to bucket function is that I don’t know which
> source-ip’s can come and I want same source-ip to go to same server
> always.With hash to bucket approach there are 2 advantages I only need 8
> entries for all the source-ip’s in this world and secondly I don’t have to
> send all the packets to controller to make a decision.****
>
>  ****
>
> With your approach I need to add flow table entries for each source-ip and
> that will be too much.****
>
>  ****
>
> Thx****
>
> Ritesh****
>
>  ****
>
>  ****
>
> *From:* Diego Rivero [mailto:riverod9 at gmail.com]
> *Sent:* Monday, August 05, 2013 5:44 AM
> *To:* Ritesh Rekhi
> *Cc:* discuss at openvswitch.org
> *Subject:* Re: [ovs-discuss] Simple IP load Balancing****
>
>  ****
>
> Hi,****
>
>  ****
>
> I don't fully understand your design but it might be better to keep the
> list of the IP address and the MAC address of the bucket somewhere in an
> OpenFlow controller. When packet_in for the first time, go through the list
> and decide which bucket to send the packet to.
>
> Diego,****
>
>
> Sent from my iPhone****
>
>
> On 4-ago-2013, at 10:32, Ritesh Rekhi <rrekhi at paloaltonetworks.com> wrote:
> ****
>
>  Hi all,****
>
>  ****
>
> I want to make a simple Load balancer where I want to change the
> destination IP for the request and for response change the source-ip.****
>
>  ****
>
> I can do that easily if I know the source-ip’s but I want to do it by
> hasing source-ip to a bucket and then based on bucket change dest-ip for
> the request .That way all packets with same source-ip can go to 1 given
> dest-ip.****
>
>  ****
>
> Do we have any function where we can hash a field and assign it to a
> bucket?****
>
>  ****
>
> Are there any plans to implement any hash to bucket algo? ****
>
>  ****
>
> Thx in advance****
>
> Ritesh****
>
>  ****
>
>  ****
>
>  _______________________________________________
> discuss mailing list
> discuss at openvswitch.org
> http://openvswitch.org/mailman/listinfo/discuss****
>
>    ** **
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://openvswitch.org/pipermail/ovs-discuss/attachments/20130806/477d1665/attachment.html>


More information about the discuss mailing list