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.

Co ns ol ePwrCC U1 PU 2 PU 3TxActRxActActi ve1 2 3 4 5 6 7 8 9 1 0 1 1 12 1 3 14 1 5 1 6J-F16GCJ -F16GCServerIron 850J-F16GCJ-F16GCJ -F16GCJ-F16GCJ -F16GCThe Health CheckLayer 3 health checks are good, but they're not great. If the server loses poweror network connectivity, the load balancer will certainly detect that with a Layer3 health check. But what if the server is active (on Layer 3), but the neededservice is not running. For example, what if the server is a web server? Theserver runs a program on it to listen on TCP port 80 (HTTP). What if that programisn't running? The load balancer will ping the server, and the server willrespond (after all, Layer 3 is okay). The load balancer will deem the serveractive, and pass traffic to it. When the traffic arrives to the server, the serverwill drop it. It's not listening on the requested TCP port. What can be done?Layer 4The Layer 4 (or Transport Layer) health check verifies that the first four layersof the server's configuration are functional. In the Brocade ServerIron, if aLayer 4 health check is specified, a Layer 3 health check will also be performed.How the Layer 4 health check is performed depends upon theprotocol.If the protocol defined is TCP, the load balancer will attempt a three-way handshakeon the port specified. Specifically, the load balancer will send a TCP SYNsegment to the real server (on the destination port specified). If the serverresponds with a TCP SYN/ACK (as it should), the load balancer will know thatthe port on the server is actively listening. Seeing as the load balancer knowsall that it needs, it will send a TCP RST (reset) message to the server toabruptly terminate the session. This may seem rude, but the load balancer hasno need to continue the creation of the session. And it's best if the server'sresources aren't tied up any more than they have to be.If the load balancer sends a TCP SYN and gets no response from the serverafter a short period of time (five seconds, by default on the ServerIron), or if itreceives a “Connection Refused” response (meaning that the server is not listeningon that port), it will consider the server inactive, and it will try the healthcheck again later. I always picture the conversation representing a successfulTCP health check going this way:Load Balancer: “Hey, do you want to talk on this TCP port?”Server: “Sure, do you want to talk to me on this TCP port?”Load Balancer: “No, shut up.”TCP SYN“Hey, do you want to talkon this TCP port?”1 2 3 4 5 6 7 8 9 1 0 1 1 12 1 3 14 1 5 1 61 2 3 4 5 6 7 8 9 1 0 1 1 12 1 3 14 1 5 1 61 2 3 4 5 6 7 8 9 1 0 1 1 12 1 3 14 1 5 1 61 2 3 4 5 6 7 8 9 1 0 1 1 12 1 3 14 1 5 1 61 2 3 4 5 6 7 8 9 1 0 1 1 12 1 3 14 1 5 1 61 2 3 4 5 6 7 8 9 1 0 1 1 12 1 3 14 1 5 1 62 M M S WTCP SYN/ACK“Sure, do you want totalk to me on this TCP port?”TCP RST“No, shut up.”Brocade <strong>IP</strong> Primer 105

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

Saved successfully!

Ooh no, something went wrong!