Applies To:

Show Versions Show Versions

Manual Chapter: Configuring nPath Routing
Manual Chapter
Table of Contents   |   << Previous Chapter   |   Next Chapter >>

Overview: Layer 2 nPath routing

With the Layer 2 nPath routing configuration, you can route outgoing server traffic around the BIG-IP system directly to an outbound router. This method of traffic management increases outbound throughput because packets do not need to be transmitted to the BIG-IP system for translation and then forwarded to the next hop.

Layer 2 nPath routing Layer 2 nPath routing
Note: The type of virtual server that processes the incoming traffic must be a transparent, non-translating type of virtual server.

In bypassing the BIG-IP system on the return path, Layer 2 nPath routing departs significantly from a typical load-balancing configuration. In a typical load-balancing configuration, the destination address of the incoming packet is translated from that of the virtual server to that of the server being load balanced to, which then becomes the source address of the returning packet. A default route set to the BIG-IP system then sees to it that packets returning to the originating client return through the BIG-IP system, which translates the source address back to that of the virtual server. The nPath configuration differs from the typical load-balancing configuration, as illustrated in the following section.

Note: Do not attempt to use nPath routing for Layer 7 traffic. Certain traffic features do not work properly if Layer 7 traffic bypasses the BIG-IP system on the return path.

About Layer 2 nPath routing configuration

The Layer 2 nPath routing configuration differs from the typical BIG-IP load balancing configuration in the following ways:

  • The default route on the content servers must be set to the router's internal address (10.1.1.1 in the illustration) rather than to the BIG-IP system's floating self IP address (10.1.1.10). This causes the return packet to bypass the BIG-IP system.
  • If you plan to use an nPath configuration for TCP traffic, you must create a Fast L4 profile with the following custom settings:
    • Enable the Loose Close setting. When you enable this setting, the TCP protocol flow expires more quickly, after a TCP FIN packet is seen. (A FIN packet indicates the tearing down of a previous connection.)
    • Set the TCP Close Timeout setting to the same value as the profile idle timeout if you expect half closes. If not, you can set this value to 5 seconds.
  • Because address translation and port translation have been disabled, when the incoming packet arrives at the pool member it is load balanced to the virtual server address (176.16.1.1 in the illustration), not to the address of the server. For the server to respond to that address, that address must be configured on the loopback interface of the server and configured for use with the server software.

Guidelines for UDP timeouts

When you configure nPath for UDP traffic, the BIG-IP system tracks packets sent between the same source and destination address to the same destination port as a connection. This is necessary to ensure the client requests that are part of a session always go to the same server. Therefore, a UDP connection is really a form of persistence, because UDP is a connectionless protocol.

To calculate the timeout for UDP, estimate the maximum amount of time that a server transmits UDP packets before a packet is sent by the client. In some cases, the server might transmit hundreds of packets over several minutes before ending the session or waiting for a client response.

Guidelines for TCP timeouts

When you configure nPath for TCP traffic, the BIG-IP system recognizes only the client side of the connection. For example, in the TCP three-way handshake, the BIG-IP system sees the SYN from the client to the server, and does not see the SYN acknowledgment from the server to the client, but does see the acknowledgment of the acknowledgment from the client to the server. The timeout for the connection should match the combined TCP retransmission timeout (RTO) of the client and the node as closely as possible to ensure that all connections are successful.

The maximum initial RTO observed on most UNIX and Windows systems is approximately 25 seconds. Therefore, a timeout of 51 seconds should adequately cover the worst case. When a TCP session is established, an adaptive timeout is used. In most cases, this results in a faster timeout on the client and node. Only in the event that your clients are on slow, lossy networks would you ever require a higher TCP timeout for established connections.

Task summary

There are several tasks you perform to create a Layer 2 nPath routing configuration.

Task list

Creating a custom Fast L4 profile

The first task you must complete to create a Layer 2 nPath routing configuration is to create a custom Fast L4 profile.
  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 name for the profile.
  4. Select the Custom check box. The fields in the Settings area become available for revision.
  5. Select the Loose Close check box.
  6. Set the TCP Close Timeout setting, according to the type of traffic the virtual server is going to handle.
  7. Click Finished.
The custom Fast L4 profile appears in the list of Fast L4 profiles.

Creating a server pool for nPath routing

After you create a custom Fast L4 profile, you need to create a server pool.
  1. On the Main tab, click Local Traffic > Pools. The Pool List screen opens.
  2. Click Create. The New Pool screen opens.
  3. In the Name field, type a unique name for the pool.
  4. For the Health Monitors setting, in the Available list, select a monitor type, and click << to move the monitor to the Active list.
    Tip: Hold the Shift or Ctrl key to select more than one monitor at a time.
  5. Using the New Members setting, add each resource that you want to include in the pool:
    1. Either type an IP address in the Address field, or select a node address from the Node List.
    2. Type a port number in the Service Port field, or select a service name from the list.
    3. To specify a priority group, type a priority number in the Priority field.
    4. Click Add.
  6. Click Finished.

Creating a virtual server for Layer 2 nPath routing

After you create a server pool, you need to create a virtual server that references the profile and pool you created.
  1. On the Main tab, click Local Traffic > Virtual Servers. The Virtual Server List screen displays a list of existing virtual servers.
  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. Specify the Destination setting, using the Address field; type the IP address you want to use for the virtual server. The IP address you type must be available and not in the loopback network.
  5. From the Configuration list, select Advanced.
  6. From the Type list, select Performance (Layer 4).
  7. From the Protocol list, select one of the following:
    • UDP
    • TCP
    • * All Protocols
  8. From the Protocol Profile (Client) list, select a predefined or user-defined Fast L4 profile.
  9. Clear the Address Translation Enabled check box.
  10. Clear the Port Translation Enabled check box.
  11. In the Resources area, from the Default Pool list, select a user-defined pool.
  12. Click Finished.

Configuring the virtual address on the server loopback interface

You must place the IP address of the virtual server (176.16.1.1 in the illustration) on the loopback interface of each server. Most UNIX variants have a loopback interface named lo0. Consult your server operating system documentation for information about configuring an IP address on the loopback interface. The loopback interface is ideal for the nPath configuration because it does not participate in the ARP protocol.

Setting the route for inbound traffic

For inbound traffic, you must define a route through the BIG-IP system self IP address to the virtual server. In the example, this route is 176.16.1.1, with the external self IP address 10.1.1.10 as the gateway.

Note: You need to set this route only if the virtual server is on a different subnet than the router.

For information about how to define this route, please refer to the documentation provided with your router.

Configuring the Connection.Autolasthop bigdb key

To ensure that nPath routing works correctly, you must verify that the bigdb configuration key connection.autolasthop is set to enable. This is relevant for both IPv4 and IPv6 addressing formats. To verify that this bigdb key is enabled, type this command at the tmsh prompt:

modify sys db Connection.Autolasthop value enable
Table of Contents   |   << Previous Chapter   |   Next Chapter >>

Was this resource helpful in solving your issue?




NOTE: Please do not provide personal information.



Incorrect answer. Please try again: Please enter the words to the right: Please enter the numbers you hear:

Additional Comments (optional)