Internet Accelerators — A Lot More Than Hot Rods - Technology Information

Computer Technology Review, April, 2001 by Dave Trowbridge

In Roman mythology, Janus was the porter of heaven; portrayed with two faces, he was the god of gateways, looking inward and outward. As such, he might well serve as the patron deity of those concerned with web site performance, for they too must look inward and outward.

In fact, a useful way to look at technologies and products designed to improve web site performance is to use the border or access router that links a site to the Internet--often called a gateway, as a matter of fact--as the dividing line for where a given device has its major effect. "Server-facing" technologies like web switches and load balancers, proxy caches, SSL accelerators, and similar devices are designed to improve the reliability and scalability of a web site. Their major effect is on the infrastructure inside the border router. Examples of "browser-facing" techniques include content delivery networks (CDNs) such as Akamai or Digital Island, which cache static web site content out on the Internet closer to the user to avoid Internet congestion and delay; and multihoming, which involves connecting to multiple ISPs and managing the Border Gateway Protocol (BGP) tables in the border routers to create a kind of "downstream load balancing." Their major focus is on the network outside the border router. However, this distinction does not hold up for all devices. A case in point is the "Internet Accelerator," an emerging class of products--some hardware appliances and some software for NT or Unix/Linux boxes--that, while focused primarily on the network outside the border router, may also deliver scalability benefits for the web site infrastructure. The primary technologies used by Internet accelerators are HTTP proxying--converting HTTP 1.0 connections to HTTP 1.1, and HTML compression; some add proprietary twists to these or other techniques, such as caching. HTTP proxying has both network and server benefits, while compression mainly benefits network performance. A short review of these technologies and their benefits will serve as a brief overview of the Internet acceleration products currently available or announced.

I'm Not Who You Think I Am

In TCP/IP networks, a proxy server is an intermediary program that acts as both server and client. It intercepts all communications between the true server(s) and client(s), terminating incoming connections and recreating them anew as output. Thus, to a server, a proxy looks like a client (browser), and to a client, it looks like a server. Every element in an HTML page, including the page itself, is transferred as a file via a TCP connection, so an HTTP proxy is simply an application that terminates the TCP connection at the server end and recreates it at the browser end, or vice-versa, for every file transferred during a browser session.

In an Internet accelerator, an HTTP proxy can serve two purposes, one simply by existing as a proxy, and the other by virtue of converting HTTP 1.0 flows from the server to HTTP 1.1 flows to the client. The first is an example of a "server-facing" benefit, and is relatively simple to understand by way of an example: imagine that a browser is accessing a large JPEG file through a slow modem connection. Without the proxy, the TCP connection between the browser and the server will be "locked" for as long as the transfer takes. Since most servers have a fairly low limit to the number of simultaneous TCP connections they can support (in Apache servers this is about 250 or so, in Microsoft ITS, somewhat higher), these slow connections can greatly reduce the server's ability to support all the browsers that want to connect--new users either get an error code, their connection simply times out, or they get tired of waiting and leave the site.

With a proxy, however, the server can download the image to the proxy very quickly over the high-bandwidth Ethernet connection that links them--most Web sites now use Fast Ethernet internally (100Mbps), and many are upgrading to Gigabit Ethernet (1Gbps). The proxy then buffers the image in its own memory and terminates the connection on the server side, freeing that server resource for a new user, while it continues to dole out the image to the slow client. Alternatively, the proxy may establish a number (up to the maximum) of permanent connections to the server and then keep those connections full by multiplexing multiple browser requests onto each one.

This benefit is why, even though all modern web servers and browsers support HTTP 1.1, an HTTP proxy in an Internet accelerator is still useful. Even a proxy that doesn't convert from HTTP 1.0 to 1.1 will still offer a benefit, and, if you add caching capabilities to it, it can further offload the server by keeping copies of frequently-accessed objects in its own memory and delivering them without any demand on the server at all. (This is easily done since all HTML objects on modern web servers have a unique identifier called an "entity tag.") Caching proxies of one sort or another are offered by several accelerator vendors, as noted in the Table.


 

BNET TalkbackShare your ideas and expertise on this topic

Please add your comment:

  1. You are currently: a Guest |
  2.  

Basic HTML tags that work in comments are: bold (<b></b>), italic (<i></i>), underline (<u></u>), and hyperlink (<a href></a)

advertisement
CXO UnpluggedSmart Business interviews on BNET

See and hear how senior level executives across the Asia Pacific are developing smart business ideas across a variety of sectors. The focus is on the future, and on how businesses need to evolve.

advertisement
  • Click Here
  • Click Here
  • Click Here
advertisement

Content provided in partnership with Thompson Gale