Rx frame coalescing – Dell Emulex Family of Adapters User Manual
Page 870
Emulex Drivers Version 10.2 for Linux User Manual
P010081-01A Rev. A
3. Configuration
Network Performance Tuning
870
If the PCIe bus does not provide 10 Gb/s of throughput due to chipset
limitations or the bus width, the adapter cannot maintain 10 Gb/s of incoming
receive data. It starts dropping packets quickly. In this situation, it may be
beneficial to enable receive flow control in the adapter, and enable flow control
in the attached switch for all devices. This helps to slow down the transmitters.
The adapter transmits to 1 Gb/s devices, especially when using a non-TCP
protocol.
If the adapter transmits to a 10 Gb/s switch with attached 1 Gb/s clients, the
adapter may overwhelm the switch. The switch is then forced to start dropping
packets because, although it may receive a 10 Gb/s stream, the client can only
sink a 1 Gb/s stream. In this situation, it may be beneficial to enable transmit
flow control in the adapter, and enable flow control for the 10 Gb/s switch port.
You can configure the adapter to respond to flow control pause frames from the other
side (switch or router) using the following ethtool commands:
ethtool -A eth
ethtool -A eth
where eth
eth0).
You can configure the adapter to send flow control pause frames using the following
ethtool commands:
ethtool -A eth
ethtool -A eth
where eth
eth0).
RX and TX flow control are enabled by default in the adapter and CFA. When priority
flow control is enabled in the adapter, normal flow control cannot be enabled.
Refer to the switch/router documentation to determine how link level flow control can
be configured on the switch/router to which the adapter or CFA port is connected.
Note: In multichannel configurations where multiple PCI functions are exposed for a
single 10G Ethernet port, the flow control parameter for a port can be
configured through any interface associated with the physical port, and the
configured property will apply to all interfaces associated with the port.
RX Frame Coalescing
The Ethernet driver coalesces regular-sized TCP segments to a large frame before
passing it to the network stack, which may improve TCP receive performance. RX
frame coalescing is implemented using the GRO mechanism (in Linux driver versions
that support GRO) or the LRO mechanism (in older Linux driver versions).
RX frame coalescing is enabled by default. In some configurations where the end point
for the TCP connection to which the packets belong is not in the current server (for
example, the end point is a router), RX coalescing should not be enabled.
GRO can be disabled using the –K option with the ethtool command: