Proxy Server

In computer networks, a proxy server is a server (a computer system or an application) that acts as a gateway between a local network and another network such as the Internet or extranet.

When a client connects to the proxy server to download a file, setup connection, access web page, or other resources from a different server, the proxy server will evaluate the request according to its filtering rules. For example, it may filter traffic by IP address or protocol. If the request is validated by the filter, the proxy provides the resource by connecting to the relevant server and requesting the service on behalf of the client or by serving it from a cache.

So in a network environment which required proxy server for the access to the Internet, there is no direct network connection establish between a client device and the target server. It is the proxy server that makes the "real" request on behalf of the client device to the web server. The proxy server gets the response, and then passes it back to browser. As such, the remote computer hosting the Web page never comes into direct connection with anything on local network, other than the proxy server. By blocking direct access between two networks (generally Intranet and the Internet), proxy servers make it much more difficult for crackers to get internal corporate information such as network addresses used and details of a private network.

Basically there are two types of proxy server - Forward proxy server and Reverse proxy server. Forward proxy server are proxies where the client names the target server to connect to. A reverse proxy is a proxy server that appears to clients to be an ordinary server. Requests are forwarded to one or more origin servers which handle the request. The response is returned as if it came directly from the proxy server. Reverse proxies are installed in the neighborhood of one or more web servers. All traffic coming from the Internet and with a destination of one of the neighborhood's web servers goes through the proxy server.

A proxy server has a large variety of potential purposes. One of the purpose of installing proxy server is to speed up access to resources (using caching). Web proxies are commonly used to cache web pages from a web server. Each time an internal user requests a URL from outside, a temporary copy is stored locally. This leads to quicker access of the web pages. When it receives a request for a Web resource, a caching proxy looks for the resulting URL in its local cache. If found, it returns the document immediately. Otherwise it fetches it from the remote server, returns it to the requester and saves a copy in the cache. The cache usually uses an expiry algorithm to remove documents from itself, according to their age, size, and access history.

Since a proxy server works by intercepting connections between sender and receiver, it can also be installed to eavesdrop upon the data-flow between client machines and the web. All content sent or accessed – including passwords submitted and cookies used – can be captured and analyzed by the proxy operator.

Proxy server is also commonly used in both commercial and non-commercial organizations to ensure that Internet usage conforms to acceptable use policy. The filtering feature at the proxy server blocks some web sites or web pages considered offensive or harmful for the network and users.

A proxy also hides the computers behind it. For example a company's web proxy may look like only one or two machines to the outside world, but in fact there may be several hundred employees surfing the web through it.

And last but not least, a proxy servers usually work on the transport layer (layer 4) or higher layer of the OSI model.

Comments

Popular Posts