diff options
author | Robert Göhler <github@ghlr.de> | 2024-04-18 14:47:34 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-04-18 14:47:34 +0200 |
commit | 70f2258424aec50fb415ba6a3b8779ecb37ba997 (patch) | |
tree | 84ada6504b5a27f27b4b655f2d5914638603496f | |
parent | 978a0aa4ab9c051cb63ec15a21148f6f4c95dc70 (diff) | |
parent | 0130485ced95e2d79ae27b77d8a5591469cfec46 (diff) | |
download | vyos-documentation-70f2258424aec50fb415ba6a3b8779ecb37ba997.tar.gz vyos-documentation-70f2258424aec50fb415ba6a3b8779ecb37ba997.zip |
Merge pull request #1390 from MattKobayashi/ethernet_hardware-offload
ethernet: Add details about LRO/GRO
-rw-r--r-- | docs/configuration/interfaces/ethernet.rst | 28 |
1 files changed, 22 insertions, 6 deletions
diff --git a/docs/configuration/interfaces/ethernet.rst b/docs/configuration/interfaces/ethernet.rst index bbf52112..a1151fd4 100644 --- a/docs/configuration/interfaces/ethernet.rst +++ b/docs/configuration/interfaces/ethernet.rst @@ -61,6 +61,22 @@ Offloading Enable different types of hardware offloading on the given NIC. + :abbr:`LRO (Large Receive Offload)` is a technique designed to boost the + efficiency of how your computer's network interface card (NIC) processes + incoming network traffic. Typically, network data arrives in smaller chunks + called packets. Processing each packet individually consumes CPU (central + processing unit) resources. Lots of small packets can lead to a performance + bottleneck. Instead of handing the CPU each packet as it comes in, LRO + instructs the NIC to combine multiple incoming packets into a single, larger + packet. This larger packet is then passed to the CPU for processing. + + .. note:: Under some circumstances, LRO is known to modify the packet headers + of forwarded traffic, which breaks the end-to-end principle of computer + networking. LRO is also only able to offload TCP segments encapsulated in + IPv4 packets. Due to these limitations, it is recommended to use GRO + (Generic Receive Offload) where possible. More information on the + limitations of LRO can be found here: https://lwn.net/Articles/358910/ + :abbr:`GSO (Generic Segmentation Offload)` is a pure software offload that is meant to deal with cases where device drivers cannot perform the offloads described above. What occurs in GSO is that a given skbuff will have its data @@ -87,13 +103,13 @@ Offloading placing the packet on the desired CPU's backlog queue and waking up the CPU for processing. RPS has some advantages over RSS: - - it can be used with any NIC, - - software filters can easily be added to hash over new protocols, - - it does not increase hardware device interrupt rate (although it does - introduce inter-processor interrupts (IPIs)). + - it can be used with any NIC + - software filters can easily be added to hash over new protocols + - it does not increase hardware device interrupt rate, although it does + introduce inter-processor interrupts (IPIs) - .. note:: In order to use TSO/LRO with VMXNET3 adaters one must also enable - the SG offloading option. + .. note:: In order to use TSO/LRO with VMXNET3 adapters, the SG offloading + option must also be enabled. Authentication (EAPoL) ---------------------- |