Top: "PROXY SERVERS AND YOU" > Page 1, 2, 3, 4, 5, 6
This page discusses general proxy server issues that relate to Web browsers.
Proxy Servers and Browsers
Proxy servers work with specific networking protocols. Obviously HTTP will be the most critical one to configure for Web page access, but browsers also utilize these other protocols:
- S-HTTP (also called "Secure" or "Security" in the browser)
- FTP
- SOCKS
- Gopher
- WAIS
S-HTTP (Secure Hypertext Transfer Protocol) supports encrypted HTTP communications. This protocol is becoming more and more common as ecommerce sites, for example, adopt it to make credit card transactions safer. S-HTTP should not be confused with SSL. Although S-HTTP uses SSL "under the covers," SSL is a lower-level protocol that by itself does not impact a browser's proxy setup.
FTP (File Transfer Protocol) supports the download of files over the Web. Before HTTP was developed, FTP was an even more popular way to share files across the Internet. FTP treats files as either simple text or binary format, and it is still commonly used to download compressed archives of non-HTML data (like MP3 files, for example).
SOCKS is a firewall security protocol implemented in some proxy configurations.
Gopher and WAIS (Wide-Area Indexing Service) were two attempts before HTTP to build a standard protocol for indexing and navigating information on the Internet. Both Gopher and WAIS are effectively obsolete today.
Technically, different proxy servers may be used to support these multiple protocols. For example, the hypothetical host
http_proxy.about.commay serve HTTP and S-HTTP requests, and another hypothetical host
other_proxy.about.commay serve FTP, GOPHER, WAIS, and any others except HTTP/S-HTTP. When manually configuring a browser, clients will need to know these details of the proxy server arrangement. Most of the time, network administrators will configure the proxies to serve all protocols to avoid any confusion.
Host Identifiers and Ports
To manually specify a proxy server in the browser, two pieces of information are required. First, the host identifier is either the host's network name (as configured in DNS, NIS, or similar naming service) or the host's IP address. Second, the port number is the TCP/IP port on which the server listens for requests.
A single port number is generally used for all of the supported protocols above. This port should not be confused with the standard ports used by the protocols themselves (port 80 for HTTP, port 21 for FTP, and so on). This is a proxy port only, and it should never be assigned to one of the reserved numbers.
Unfortunately, a single standard port number does not exist. Some numbers like 8000 and 8080 are used more commonly than others, but the number can be any unassigned value up to 65535. Users manually configuring their browsers will need to be told this port number by their network administrator.
Automatic Proxy Configuration
To make the deployment of proxy servers easier, some new technologies were developed to work with browsers in a more automated fashion. Administrators can use a special configuration file, for example, to hide details like port numbering from client users. This file contains JavaScript code and is installed on the proxy server itself or on some other Web server. Clients wishing to use this automatic configuration scheme simply enter into their browser settings the URL of this file. To the client, URLs will look like the following:
http://hypothetical_proxy.about.com/proxy.pac
For Internet Explorer 5, a new technology called Web Proxy Auto Discovery (WPAD) was introduced in an attempt to generalize the discovery of proxy servers as well as other network services. WPAD uses a lookup service like DNS to automatically construct an auto-configuration URL. Instead of a ".pac" file, WPAD expects a ".dat" file to be installed on a Web server as in the following example:
http://wpad.about.com/wpad.dat
Instead of users explicitly specifying this URL, the browser automatically constructs it using the network domain name (about.com), a default host name on that network (wpad) and a default configuration filename (wpad.dat). Administrators need only configure their name resolution services to redirect to the proper location.

