12.07.2015 Views

BROCADE IP PRIMER

BROCADE IP PRIMER

BROCADE IP PRIMER

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Chapter 16: Session Persistence and Transparent Cache SwitchingConcurrentSome applications require a client to create multiple sessions. One of themost popular examples of this is passive FTP (File Transfer Protocol). For thisto function, the client makes an initial connection to the server using TCP 21.The server then listens on a random TCP port above 1023, and instructs theclient (over the existing TCP 21 session) to make another connection to theserver on this given port. There are many Java-based applications that functionvery similarly. These are sometimes referred to as parallel connections.In standard load balancing, an incoming TCP session is handed off to one realserver (decided by the predictor). A second incoming TCP session (asdescribed above) is handed off to another real server. This could be the samereal server (depending on the predictor and circumstances), but odds are goodthat it will be a different real server. Let's say, we started the passive FTP session(TCP 21) to the virtual server and were handed off to rs-ftp1. The realserver (rs-ftp1) tells the client to connect to it again using TCP 1048 (to whichit is now listening). We initiate a connection to the virtual server again usingTCP 1048. Now, the virtual server isn't listening on TCP 1048. It's only listeningon TCP 21. And even if it were listening on TCP 1048, what if it handed us off tors-ftp2? That real server doesn't know about our initiated connection with rsftp1,and it's certainly not listening on TCP 1048.Using Concurrent connections, we're instructing the virtual server that once aninitial session is made (and as long as it's still active), it should send allrequests (regardless of the port) from this client <strong>IP</strong> address to the same realserver. By default, concurrent connections are disabled.StickySticky is very similar to Concurrent. The difference is that, instead of forwardingall requests (regardless of port) to the same real server, it just forwards tothe same destination port. For example, when you request a Web page, you initiateat least one TCP session using HTTP (TCP 80). What many people don'trealize is that it is not uncommon for a client (requesting one page) to actuallyinitiate several TCP sessions. Perhaps the images are stored at a different site.Perhaps a dynamic HTML application is requested differently than the pagethat houses it. These successive requests all have the possibility of beingassigned to a different real server in your virtual server pool.Let's say, you've got a specialized web page application that sends the clientthrough a series of web pages. It's important that this client stay with the samereal server throughout the process. How can we make sure that happens? Wemake the virtual server's HTTP port “sticky.” This means that as long as therequests are coming from the same source <strong>IP</strong> address (to the same destinationport), the client will be directed to the same real server.358 Brocade <strong>IP</strong> Primer

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!