Search
Jason Rahm - Jason's Blog
You are here: DevCentral > Weblogs

posted on Thursday, August 19, 2010 8:57 AM

This has been a perplexing issue for many users.  How do you introduce an intermediary (LTM going forward) between client and server when in the same network segment?  It’s easy when the LTM sits at gateways, but within a segment, it doesn’t work that well without some help.  Why?  Well, with tcp-based connection-oriented protocols, a handshake (consisting of a client syn packet, a server syn-ack packet, and a server ack packet) sets up the connection.  When you introduce the LTM, a problem arises:

Client –> syn –> BIG-IP

BIG-IP –> syn-ack –> Client

Client –> ack –> BIG-IP

BIG-IP –> syn –> Server

Server –> syn-ack –> Client

Client –> reset –> Server

Do you see the problem?  It’s actually in the step prior to the reset.  Because the server and client are on the same segment, the server sees the client’s source IP, and because it is local, sends an arp (if not already cached) and then forwards directly to the client, bypassing the BIG-IP.  The client then resets this connection because it has no established service with the server.  So how do you address this issue?  Enter address translation.  By translating the client’s source address before sending traffic to the server, the BIG-IP ensures that the server relays the responses back through it before forwarding on to the client.  The downside here, however, is that now the server cannot see the client source address, which impacts reporting and potentially some functionality.  With HTTP, this is easily addressed with the X-Forwarded-For header, but it’s problematic for other protocols.

Check out this thread, it’s a great discussion on some of the issues and solutions for same segment load balancing.  BTW, some of the other names for this deployment are VIP Bounceback, BIG-IP on a Stick, and One-Armed Configuration.


Posted In: BIG-IP, DevCentral, LTM,

Feedback

No comments posted yet.

Let Me Know What You Think


Please use the form below if you have any comments, questions, or suggestions.

Title:
 
Name:
 
Email: (so we can show your gravatar)
Website:
Comment: Allowed tags: blockquote, a, strong, em, p, u, strike, super, sub, code
 
Please add 3 and 1 and type the answer here:

Blog Stats

Posts:86
Comments:108
Stories:0
Trackbacks:0
  

82,243 Members in 102 Countries and Growing!

Join DevCentral Today!

About DevCentral

DevCentral has been a successful, thriving community for many years. We have always strived to bring you the best technical documentation, discussion forums, blogs, media and much more that we can.

So dive in, get familiar with DevCentral. We hope you like it, we hope it makes your job easier, and lets you get that much more power out of the community. To learn more, make sure to check out the Getting Started section. And if you have any problems, or think something could be easier to use, drop us a line to let us know.

Got It !

We've received your comment and transmitted it directly to DevCentral HQ.

Thanks for taking time to let us know what's on your mind. At DevCentral | Community Matters!

Get In Touch With Us

Have questions, suggestions or just want to get something off your chest?

Use our handy form below to Direct Connect with DevCentral Mission Control.

Send Us Feedback       or