Re: Raw socket based load balancing

Kenneth Salchow <[email protected]> Wed, 18 Nov 2009 12:50:10 -0800
Newsgroups gmane.comp.programming.load-balancing.general
Message-ID <4B18A8F75A6384449755BC7784073E9360DC77FD0C@exch11.olympus.f5net.com>
The reason I asked is because you said that you might have persistence needs.  Also, at least in my past experience, there could be issues with the IP addressing—if you include such information in the payload.

 

So, from a persistence standpoint, if you can’t tag/target anything unique within the payload, you are pretty much left with source IP persistence.  If this application may be used through a client proxy, then you will have many clients looking like one IP address and that will mess up the load balancing as ‘new’ connections maybe seen as ‘existing’ and simply forwarded to the back end server.  This can be exacerbated if the connections are long-lived as you can ‘accumulate’ connections destined to a particular server.

 

Also, many times, raw socket connection often include the IP address of the ‘physical’ server in the return which can cause the clients to attempt to reconnect directly with the physical server instead of the VIP, or they include the VIP IP in the connection—something to be wary of; try NOT to use any IP addresses in the payload as part of the negotiation or connection.  Since it sounds like you are building this yourself instead of trying to integrate one that exists—this shouldn’t be an issue for you.

 

These are just a couple issues I’ve run into over the years and there maybe others that other people can state.  I know over the years there have been several load balancers which couldn’t handle proprietary protocols simply because they weren’t built with that thought in mind. So, by asking about the format, setup and flow, I was simply trying to elicit information that may be pertinent to anyone making a suggestion.

 

Personally—with my consultant hat on, I’d ask why you need a proprietary raw connection instead of simply using some standard?  In the long term, proprietary protocols can be expensive to maintain and difficult to integrate into other applications/solutions.  Not knowing any details obviously, I generally counsel not to use them unless absolutely necessary or the benefits far outweigh the negatives.

 

 

 


KJ (Ken) Salchow, Jr. | Manager, Technical Marketing


D 651.423.1133

M 612.868.1258

P 206.272.5555

F 206.272.5555

 <http://www.f5.com/> www.f5.com

 

 

From: [email protected] [mailto:[email protected]] On Behalf Of Chris Kirby
Sent: Wednesday, November 18, 2009 12:51 PM
To: [email protected]
Subject: Re: [load balancing] Raw socket based load balancing

 

 

We are soon writing a custom connector that will handle the setup, flow, and teardown.

This connector will be spread across several servers located behind the load balancers.

Are the protocol details important for the load balancer? We'd ideally like to be able to just forward the tcp port through to the real server as a raw socket connection without any regard to its contents.

Regards,

Chris

----- Original Message -----
From: [email protected] <[email protected]>
To: Load Balancing Mailing List <[email protected]>
Sent: Wed Nov 18 13:13:00 2009
Subject: Re: [load balancing] Raw socket based load balancing

Any more specifics on the protocol?  What’s the connection setup, flow and teardown.  What’s the payload format?



KJ (Ken) Salchow, Jr. | Manager, Technical Marketing

       
D 651.423.1133

        M 612.868.1258

        P 206.272.5555

        F 206.272.5555

        www.f5.com <http://www.f5.com/>

       





From: [email protected] [mailto:[email protected]] On Behalf Of Chris Kirby
Sent: Wednesday, November 18, 2009 11:54 AM
To: [email protected]
Subject: [load balancing] Raw socket based load balancing





We are currently using a pound/haproxy combination to load balancing incoming http/https connections.



We however have an upcoming requirement to load balance incoming raw socket connections with a proprietary protocol. I don't think pound/haproxy will work for this since they are proxy servers and is therefore drive by standard protocols.



Does anyone have any other recommendations on what open source load balancing apps we could use?  We may require session persistence as well (yet to be determined).



Regards,



Chri

_______________________________________________
lb-l mailing list
[email protected]
http://vegan.net/mailman/listinfo/lb-l
Searchable Archive: http://vegan.net/lb/archive
http://lbdigest.com Load Balancing Digest
http://lbwiki.com Load Balancing Wiki
smime.p7s (application/x-pkcs7-signature, 3 KB) - not displayed