Manual Chapter : Implementing Low-Latency Electronic Trading Functionality

Applies To:

Show Versions Show Versions
Manual Chapter

Implementing Low-Latency Electronic Trading Functionality

Overview: Configuring the BIG-IP system for low-latency electronic trading

You can configure the BIG-IP® system to manage traffic for low-latency electronic trading. The BIG-IP system optimizes Financial Information eXchange (FIX) protocol connections to achieve predictable latency and jitter, a critical aspect of successful low-latency electronic trading. When you acquire a special license, you can use the FastL4 profile to optimize the necessary connections, and use the Packet Velocity™ ASIC (PVA) to minimize any latency and deliver high performance L4 throughput without software acceleration.

About FIX features with low latency

The PVA hardware does not examine the FIX packets that stream through it, so FIX-profile features such as parsing and tag substitution are not supported with low-latency.

About induced latency for FIX connections

Induced latency, which is the latency realized after a FIX connection is established, typically has a duration of approximately 10 µsecs or less.

About using TCP protocol for FIX clients and servers

The PVA only supports the TCP protocol, which requires FIX clients and servers to establish TCP connections. When creating a virtual server to manage the traffic for low-latency electronic trading, you must specify the TCP protocol setting.

About using low-latency electronic trading with HSRP or VRRP

You can use low-latency electronic trading in a Hot Standby Router Protocol (HSRP) or Virtual Router Redundancy Protocol (VRRP) environment, with a last-hop pool configured with a single pool member to maintain acceleration flows. When using low-latency electronic trading in an HSRP or VRRP environment, you must set the db variable tmlhpnomemberaction to 2, enabling the BIG-IP® system to only route the client traffic back through a pool member defined in the last hop pool. Additionally, in this configuration, the system can respond to client traffic that originates from an address other than an address defined in the last hop pool.

Example

For example, consider the following configuration.

  • Router 1 has an IP address of 10.1.1.251.
  • Router 2 has an IP address of 10.1.1.252.
  • Last-hop pool member has a virtual IP address of 10.1.1.254.

In this example, you create a last-hop pool with a single pool member that is assigned with a virtual IP address of 10.1.1.254. You can then use the following tmsh command to set the db variable tmlhpnomemberaction to 2.

tmsh modify /sys db tm.lhpnomemberaction value 2
Note: Typically, you will want to use a transparent monitor on the last-hop pool.

Task summary for low latency electronic trading

There are several tasks you can perform to implement low-latency electronic trading.

Licensing low-latency electronic trading functionality

In order to use a BIG-IP system to manage low-latency electronic trading functionality, you must first acquire a specific license. The license must enable both of the following features:
  • Advanced LTM Protocols
  • FIX Low Latency

Please contact your F5 Networks support representative to acquire the necessary license.

Creating a custom Fast L4 profile for FIX

You can create a custom Fast L4 profile to manage Layer 4 traffic for FIX.
  1. On the Main tab, click Local Traffic > Profiles > Protocol > Fast L4 .
    The Fast L4 screen opens.
  2. Click Create.
    The New Fast L4 profile screen opens.
  3. In the Name field, type a unique name for the profile.
  4. Select the Custom check box.
  5. Set the PVA Acceleration field to Guaranteed.
  6. Select the Loose Close check box only for a one-arm virtual server configuration.
  7. Set the TCP Close Timeout setting, according to the type of traffic that the virtual server will process.
  8. Click Finished.
The custom Fast L4 profile appears in the list of Fast L4 profiles.

Creating a FIX profile for low-latency electronic trading

A virtual server with Late Binding enabled can choose a server pool based on the contents of the FIX connection's initial packet. The Late Binding feature makes it possible to combine this load balancing with low latency.
Note: This is a simplified FIX profile. The low-latency path goes through the ePVA hardware, which does not examine the contents of each FIX packet. The only packet that the BIG-IP software examines is the logon packet, which the BIG-IP system uses to choose a server pool. Therefore, most of the features in the FIX-profile screen (such as tag substitution) are ignored for low-latency trading.
  1. On the Main tab, click Local Traffic > Profiles > Services > FIX .
    The FIX profile list screen opens.
  2. Click Create.
    The New FIX Profile screen opens.
  3. In the Name field, type a unique name for the profile.
  4. From the Parent Profile list, select a parent profile.
  5. Select the Custom check box.
  6. Optional: From the Report Log Publisher list, select the publisher for error messages and status reports.
  7. Optional: From the Message Log Publisher list, select the publisher for message logging.
  8. Click Finished.
The FIX profile is configured for low-latency electronic trading with FIX load balancing.

Creating a virtual server for low-latency electronic trading

After you create a server pool, profile(s), and (optionally) iRule, you need to create a virtual server that references those components.
  1. On the Main tab, click Local Traffic > Virtual Servers .
    The Virtual Server List screen opens.
  2. Click the Create button.
    The New Virtual Server screen opens.
  3. In the Name field, type a unique name for the virtual server.
  4. From the Type list, select Performance (Layer 4).
  5. In the Destination Address field, type the IP address in CIDR format. This is the address to which the FIX clients send their FIX transmissions.
    The supported format is address/prefix, where the prefix length is in bits. For example, an IPv4 address/prefix is 10.0.0.1 or 10.0.0.0/24, and an IPv6 address/prefix is ffe1::0020/64 or 2001:ed8:77b5:2:10:10:100:42/64. When you use an IPv4 address without specifying a prefix, the BIG-IP system automatically uses a /32 prefix.
    Note: The IP address you type must be available and not in the loopback network.
  6. From the Configuration list, select Advanced.
  7. From the Protocol list, select TCP.
  8. From the Protocol Profile (Client) list, select the custom Fast L4 profile you defined for low-latency FIX trading.
  9. Go to the FIX Profile list and select the custom FIX profile you defined for low-latency trading.
  10. Optional: For the Address Translation setting, clear the Enabled check box to implement direct server return (DSR) functionality.
  11. Optional: For the Port Translation setting, clear the Enabled check box.
    Important: Clearing the Enabled check box disables network address translation (NAT) functionality. If you require NAT, you must select the Enabled check box.
  12. In the Resources area of the screen, from the Default Pool list, select the pool name for FIX streams.
    This pool is for streams that do not match your iRule(s).
  13. For the iRules setting, from the Available list, select the name of the iRule that you created for the Late Binding feature and move it to the Enabled list.
    The iRule enables load balancing based on the Layer-7 (FIX) fields at the head of each stream.
  14. Click Finished.
The virtual server is configured to use the specified Fast L4 profile and pool. If a client initiates a FIX connection with this virtual server, the connection uses the Fast L4 (ePVA) hardware.

Implementation result

This implementation configures a BIG-IP® system to manage low-latency electronic trading functionality, optimizing the system for predictable latency and jitter. Clients who send FIX packets to the virtual server's Destination address all receive this low-latency service.