This F5 deployment guide provides instructions for configuring the BIG-IP system version 11.4 and later for load balancing and intelligent traffic management for the Diameter protocol. The Diameter base protocol is intended to provide an Authentication, Authorization and Accounting (AAA) framework for applications such as network access or IP mobility. Diameter is also intended to work in both local Authentication, Authorization & Accounting and roaming situations (this is an excerpt from RFC3588; for more information, see the complete RFC: http://www.ietf.org/rfc/rfc3588.txt).
The ability of the BIG-IP system to support diameter traffic management is extremely valuable. In a typical load balancing situation, there are X number of clients and Y number of servers. If all clients generate one connection, there are X connections total. The BIG-IP LTM may balance X/Y connections to each server (which may be called connection-based load balancing). However, in a Diameter environment, the number of clients is likely to be small (X may even lower than Y) and that implies low number of connections (X). Moreover, each connection is long-lived, which provides few opportunities to load balance Diameter traffic on a per-connection basis.
Multiple sessions may be established within the one transport connection. Diameter keeps transport connections (TCP/SCTP) alive and reuses them for many Diameter sessions. Each Diameter session may contain multiple messages. Diameter protocol is asynchronous, in other words, a client can send a new request without waiting for response for the previous request. The Server can send a response in any order, and it can also send a request.
In a high load environment, there is a need for per-message load balancing or message-based load balancing instead of connection-based load balancing. Imagine there is one transport connection between each client (NAS) and server (Diameter host server). The work required for a Diameter server to generate a response is significantly higher than the work required for a client to generate a request. Because of this, the Diameter server becomes a performance bottleneck for AAA requests from a single client. All requests from a particular client which are using the same transport connection are served by only one server. By supporting message-based load balancing, the BIG-IP LTM may act as a proxy that will de-multiplex each request from the client to multiple servers and improve overall performance and scalability.
The following diagram contains an example of the traffic flow for a load balanced Diameter implementation. See the deployment guide for specific details.