[PATCH net-next,4/4] hv_netvsc: Update netvsc Document for UDP hash level setting

From: Haiyang Zhang
Date: Mon Aug 21 2017 - 22:24:04 EST


From: Haiyang Zhang <haiyangz@xxxxxxxxxxxxx>

Update Documentation/networking/netvsc.txt for UDP hash level setting
and related info.

Signed-off-by: Haiyang Zhang <haiyangz@xxxxxxxxxxxxx>
---
Documentation/networking/netvsc.txt | 22 +++++++++++++++++-----
1 files changed, 17 insertions(+), 5 deletions(-)

diff --git a/Documentation/networking/netvsc.txt b/Documentation/networking/netvsc.txt
index 4ddb4e4..fa8d863 100644
--- a/Documentation/networking/netvsc.txt
+++ b/Documentation/networking/netvsc.txt
@@ -21,11 +21,23 @@ Features
--------------------
Hyper-V supports receive side scaling. For TCP, packets are
distributed among available queues based on IP address and port
- number. Current versions of Hyper-V host, only distribute UDP
- packets based on the IP source and destination address.
- The port number is not used as part of the hash value for UDP.
- Fragmented IP packets are not distributed between queues;
- all fragmented packets arrive on the first channel.
+ number.
+
+ For UDP, we can switch UDP hash level between L3 and L4 by ethtool
+ command. UDP over IPv4 and v6 can be set differently. The default
+ hash level is L4. We currently only allow switching TX hash level
+ from within the guests.
+
+ On Azure, fragmented UDP packets have high loss rate with L4
+ hashing. Using L3 hashing is recommended in this case.
+
+ For example, for UDP over IPv4 on eth0:
+ To include UDP port numbers in hasing:
+ ethtool -N eth0 rx-flow-hash udp4 sdfn
+ To exclude UDP port numbers in hasing:
+ ethtool -N eth0 rx-flow-hash udp4 sd
+ To show UDP hash level:
+ ethtool -n eth0 rx-flow-hash udp4

Generic Receive Offload, aka GRO
--------------------------------
--
1.7.1