A proxy server is like a middleman which sits between the main server and the client application, such as a browser.
When the client computer makes a request such as a file download, web page request or any other type of connection request, it first connects to the proxy server which then sources the desired resource from the main server according to a set of protocols.
Purpose Of a Proxy Server
A proxy server primarily serves three purposes.
1. Filtering - A proxy server can be used to filter requests by IP address or according to certain rules. It could be used by firms and agencies to filter certain web page requests by their employees. Hence it could act as an effective internet blocking tool.
2. Improving Performance - A proxy server could improve performance by huge margins by speeding up access to the resource. It achieves this using a common method known as caching. It can cache parts of web pages from a server and hence increase the loading speed of that site when requested by a client application like a web browser.
3. Anonymity - Proxy servers are also used to make the main servers anonymous by hiding them. It is a method to secure servers which contain confidential data and are hence vulnerable to cyber attacks.
Types Of Proxy Servers
Following are the different types of proxy servers and various implementations of corresponding proxy functions.
1. Web proxy - A proxy server which focuses on the world wide web traffic is known as web proxy. It mainly serves as a web cache and speeds up access to web content and applications. It can also be used to block and blacklist websites. Hence it could be used as a content filtering tool too.
2. Caching proxy - Like web proxy, caching proxy, as the name suggests creates local caches of resources so that they could be quickly accessed when they are requested. These are primarily used by organizations like ISPs to reduce their bandwidth costs and increase performance.
3. Hostile Proxy - Hostile proxies are generally used to monitor and track the requests between the server and the client computer. Hence it is always advised to be careful while using a proxy server.
4. Forced Proxy - A forced proxy is usually referred to a forced proxy server which is used to access the internet since there are certain restrictions on the client computer.
4. Transparent and non-transparent proxy server - Here are the definitions for transparent and non-transparent proxies according to RFC-2616 ( HTTP 1.1 Protocol )
"A 'transparent proxy' is a proxy that does not modify the request or response beyond what is required for proxy authentication and identification".
"A 'non-transparent proxy' is a proxy that modifies the request or response in order to provide some added service to the user agent, such as group annotation services, media type transformation, protocol reduction, or anonymity filtering".
5. Anonymizer - An anonymous proxy server or anonynimizer as they are called usually do the task of making your web surfing anonymous. Open proxies also fall into this category.