One of the most common structures of a computer network is called a client-server architecture. The computer that functions as the server is a high-performance machine with specific programs that enable it to share whatever resources it has. This could be databases, web pages, multimedia, etc. The computer at the other end of the network requesting resources from the server computer is called the client. The main difference between the two is that servers share resources and can handle multiple requests, clients only make requests and do not share resources with other client computers.
The connection between client and server is often mediated by another computer called the proxy server. The proxy server is the "middle-man" server. They accept requests from client computers then they evaluate these requests through its programmed set of filtering rules. If the request is deemed valid, it is passed on to the appropriate server. The proxy server then takes the requested resource from the server and passes it on to the client.
The objective of setting up a proxy server is two-fold: security and efficiency. With a proxy server, the actual servers containing the resources remain anonymous to the client, giving the resources a degree of protection. Furthermore proxy servers are often used to cache often requested files such as Web pages. In such instances the proxy server no longer needs to pass on the request to the actual server but can immediately respond to the client thereby speeding up the process.
There are several types of proxy servers depending on their function and configuration. The one common users are most familiar with are Web proxy servers. These types of proxy servers are often lodged in the intersection points of the World Wide Web, facilitating its traffic of information requests and responses. They often serve as caches of Web pages and are necessary for unloading some of the burden of servers as well as minimizing bandwidth usage. Sites blocked in a browser application are sometimes due to the filtering rules of web proxy servers. This filtering is heavily used by corporations or schools in their computer networks. Web proxy servers can also be programmed to modify client requests or server responses. This type of filtering is either for security purposes or to speed up connections.
Another type of proxy server is known as the intercepting proxy server. These types of proxy servers are also called transparent or forced proxies because they automatically route requests without knowledge of the client or despite its browser or connection settings. Businesses often use these types of proxy servers to lighten network administration duties and also to circumvent any limitations in bandwidth. SOCKS servers often fall under this category. SOCKS is another kind of Internet protocol, an alternative to HTTP (Hyper Text Transfer Protocol). It handles the routing of network packets - grouped pieces of messages or data, to facilitate client-server connections.

Delicious
Digg
Google
Yahoo