Citrix NetScaler Application Delivery Control (ADC) brief overview:
some of the function that the Citrix NetScaler ADC can do include:
1- Gateway :
a. VPN: It could provide secure remote access to servers via VPN.
b. Endpoint analysis: prevent clients from accessing the internal network unless they are up-to-date (windows and virus)
c. Some additional functions related to Citrix applications such as Xen desktop.
d. Also it could be used for redirection, for example user may request HTTP site and the server redirect it to use HTTPS.
2- Load Balancing :
a. Provide generic web load balancing in addition to some Citrix service and some Microsoft products such as SharePoint, Exchange, and SQL.
i. The load balancer monitor web servers availability either via ping, TCP three way handshake, or HTTP GET Request.
ii. The load balancer could limit the number of sessions to protect from DDoS, or server over loading.
iii. The load balancing could be done based on server with least connections, least response time, source IP address,…etc.
iv. The initiated connection could be persist to the same server using different methods include Source IP, Cookie inserted…etc.
b. Also it could provide URL Redirection, for example if the servers are down for maintenance it could redirect the session to a web page that explain this.
c. There is a feature that allow us to deliver a service from different data centers spread across different geographical locations; this helps us in case of data center failures and disaster recovery.
3- Compression and caching: allow the client to get hold of the content faster, as it saves bandwidth between the service and the client.
a. Compression: ability to use fewer bits than in the original data.
i. It compress the HTTP data going to or from the client, Requires browser that support compression ( IE 7.0, Chrome 20, Firefox 4 + )
ii. It compress data inside HTML, XML, CSS, text, and Microsoft office documents.
iv. We can configure how much data should transit before NetScaler should start compress the data, also the compression level…etc.
v. We could do policies based on the browser use, for example we could enable compression for IE but not for chrome.
b. Caching: NetScaler store the commonly accessed data in the RAM, which allows for faster fetching of data by send data to clients directly instead of getting it from the web servers.
ii. It can cache Dynamic data: dynamic catalog view, automatically generated files, and so on.
iii. Can configure (when the server don’t have a copy of the requested file) the NetScaler to prefetch a copy of the data, also we could send only one connection to the web server to get the data instead of multiple connections requesting the same data.
4- It have Application layer Firewall that can protect against DoS beside its normal fire wall functionality, also it can be used to limit the connection rate.