F5 Optimization Summary

I’ve seen quite a few F5 deployments where engineers assume that the default profiles are going to be sufficient. While they will get you up and running they are from ideal as noted by engineers from F5. This mainly has to do with the full proxy architecture of the F5 and the conditions that exist as a result. The following article from F5 dev central outlines all of the issues with using the default tcp profile. This article will be an intro into F5 optimizations and more specifically tcp optimizations/http optmizations available on the F5 BigIP.


We can do better!

We can do far better than the out of box configuration and with a little extra care deliver something better than native server performance. We can do this by leveraging the full proxy architecture of the F5 platform which gives us a high potential for performance.

This will be a series of articles going over the simple and effective ways you can leverage the F5 with AAM-Lite or AAM-Full to increase performance.

Some are quick to jump straight to optimization techniques at the application layer, however, this is a rather incorrect approach to the problem of poor performance.

One should always begin with the lowest point in the stack and then work upwards in order to achieve the best results as many of these optimizations will build upon each other. I have broken these down below and will go in depth on each item in subsequent articles.


TCP Optimization

Tcp optimization is the foundation of any optimization and can often play the biggest role in end user experience. We will always start here to ensure that our application data is being delivered as efficiently as possible.


Connection Optimization

Once we’ve gotten TCP out of the way it is time to start optimizing how the F5 handles your connections. We do this via the OneConnect profile and tweaking it for our application needs as well as the environment in which our application is running. Typically this won’t do much by itself, however, when combined with good TCP optimization it can have a noticeable impact and lead to reduced server load with enhanced response times.


HTTP Compression

Now that we have the foundation out of the way we can start with http optimization. In some cases we can improve performance by compressing the application data, however, this is going to be determined on a case by case basis as not all applications take well to compression. This typically has the biggest impact on mobile applications where the end user might be bandwidth contained.


HTTP Caching

Now that we have all the other basics out of the way we can start leveraging the F5 to act as a cache for our application. This will reduce server load as well as client response times and enhances compression as the F5 will cache the compressed items. This is also going to vary on a case by case basis as not all applications work well with caching and it is a moot point if our application is already leveraging a CDN such as Cloudflare or Akaimai.


Conclusion

As I complete the rest of this series I will link the individual articles back here so that all of this content can be referenced in a single location.

If your interested in F5 then read more posts here!