First in a series of articles on the analysis and improvement of application performance on the WAN
Overview
Although end users often complain about the performance of applications, especially web based applications, it is often difficult to quantify what counts as unsatisfactory performance. For that reason, it is good practice is to develop some sort of framework specifically for the performance optimisation of applications delivered over the wide area network or, indeed, across the Internet so that you, as the technical resource, might be able to identify the root cause and devise a strategy to improve the end user’s perception. This might involve the deployment and configuration of some very expensive network devices, the profiling of database queries, the identification of shoddily written code or a nice new state of the art laptop for all concerned. Beware, however, that you will be dealing with perception here and there may be non-technical reasons behind any complaint.
The Scenarios
As a first step though, a few simple scenarios will need to be analysed in order to develop an understanding of the most effective means of achieving a performance improvement in the network shown below (Figure 1). Note that the objects shown in the diagram below represent abstract devices rather than any particular manufacturer’s product but it is safe for you to assume that these abstract devices have similar capabilities to those of the real devices. . As in the real world, it will be safe to assume that merely adding a device like a WAN accelerator or a load balancer in its default configuration will not achieve the kind of application performance improvement that an end user might notice. Remember that detail is everything in the development of an application profile with the focus being firmly on generating an understanding of how things work all the way from client to front end server.
The Network Diagram
Device Capabilities
Device Type
|
ID
|
Capabilities
|
Desktop
Computer
|
PC1
|
End user access to locally and network stored files
End user access to local and network applications
|
WAN
Accelerator
|
WA1,WA2
|
Proprietary data compression only between similar WAN accelerators. Strips headers related to compression from HTTP traffic. Application traffic optimisation for CIFS, SMS. SQL, HTTP and MAPI traffic.
Local data caching. Connection pooling.
TCP Proxy
|
WAN
Link
|
Link1
|
The physical connection between two sites. As in the real world this physical connection may have different capabilities. For the purpose of this simulation, there will be three types of WAN link: (1) High capacity >10Mb/s low latency
(2) Medium capacity 2 to 10Mb/s moderate to high latency (3) Variable capacity 256k to 3 Mb/s high and inconsistent latency
|
Load balancer/
Application
delivery controller
|
LB1
|
Advanced load balancing capabilities. Granular compression and caching of static and dynamic data for HTTP traffic only. Rate limiting for all load balanced connections. Ability to rewrite and otherwise reprocess HTTP headers.
Connection pooling. TCP/UDP Proxy
|
File Server
|
FS1
|
Generic file server that can use SMB2 and BITS protocols
|
Web Server
|
WS1
|
Front end web server for a web application that uses both Kerberos and NTLM authentication. The web application allows end user to both view existing and add new content.
|
Database Server
|
DB1
|
Database server for the web application. End users do not directly access this server
|