Advanced ethernet adapter driver settings are extremely configurable finding sensible values can be tricky without testing the connection. This post explains what each setting means and lists recommended values that will maximise your home network’s throughput and minimise CPU overhead (based on my own experience.) A maximum transfer rate of 114Mb/s was achieved with these settings on a 1 Gigabit connection. <!–more–> This is quite impressive considering the theoretical maximum for these connections is 125Mb/s. My computers use different types of Ethernet adapters (Realtek and Intel) and the terminology is different between these two models but I try my best to accommodate for both vendors.
1 Adaptive Inter-Frame Spacing (Intel)
Recommended Setting | Disabled |
Effect on Throughput | negative, in quiet networks |
Effect on CPU Utilisation | none |
This introduces a time gap between packages sent into the network to help compensate for excessive packet collisions on the network. This would only be an issue on large networks (no home network would ever need this, trust me.) Only one computer can send data across a network at a time and TCP uses multiplexing protocols to decide which computer and for how long they get to send. If multiple computers send packets at the same, they collide on the Ethernet line which causes them to corrupt. This is why time gaps between sent packets could improve performance on very busy networks. The effect is negligible on home networks.
2 Enable PME
Recommended Setting | Disabled |
Effect on Throughput | none |
Effect on CPU Utilisation | none |
The setting is in brackets because it is really up to you to decide if you need this feature. PME stands for Power Management Event and the feature wakes up your computer on receipt of a signal from the network.
Advertisement Begins
Advertisement End
3 Energy Efficient Ethernet
Recommended Setting | Disabled |
Effect on Throughput | negative |
Effect on CPU Utilisation | positive |
If you favour performance over energy efficiency then turn any energy saving features off. This feature may be called “Advanced EEE” (Energy Efficient Ethernet) for Realtek Ethernet Adapters
4 Flow Control
Recommended Setting | Rx & Tx Enabled |
Effect on Throughput | positive, reduces packet loss |
Effect on CPU Utilisation | positive, as fewer packets are wrapped and sent |
It is a really good idea to enable this. Flow control allows the receiving device to tell the sending device that it is struggling to keep up with all the incoming packets. This allows the sender to slow down and therefore reduce the amount of lost and timed out packets being sent through the network. Disabling this would mean that TCP re-transmits timed out and lost packets as the sender didn’t receive an ACK for those packets. This means that there are now even more packets in the network and the receiving host has even more incoming packets to process. There are advantages and disadvantages to enabling this setting. If you are a flow control expert please correct me in the comments and I will append your advise.
5 Gigabit Master Slave Mode
Recommended Setting | Automatic |
Effect on Throughput | none (negative is both hosts have same mode or the connection is 10/100Mbps) |
Effect on CPU Utilisation | none |
Multi-port devices such as routers are automatically assigned Master mode. Leave Auto Detect to let the network adapters figure this out by themselves (based on the IEEE 802.3ab standard.) If a device is forced to master mode and connects the another Ethernet adapter in master mode, the connection can either disconnect or downshift to 100Mbps. If you are experiencing slow connections, this should be a setting to change you should keep an eye on. If in doubt, use the recommended setting.
6 Green Ethernet (Realtek)
Recommended Setting | Enabled |
Effect on Throughput | none |
Effect on CPU Utilisation | none |
When enabled, this Realtek adapter feature senses the length of the plugged in Ethernet cable and adjusts the voltage of the output signal accordingly. This should have no effect on CPU and network throughput and it saves energy.
7 Interrupt Moderation
Recommended Setting | Enabled |
Effect on Throughput | none |
Effect on CPU Utilisation | none |
Interrupt moderation, when enabled, allows you to set an interrupt moderation rate which determined how frequently, the system stops performing everyday tasks to focus on processing incoming or outgoing packets.
8 Interrupt Moderation Rate
Recommended Setting | Adaptive |
Effect on Throughput | higher rate, more throughput |
Effect on CPU Utilisation | higher rate, more CPU usage |
Sets the rate at which the Ethernet adapter interrupts the system to perform networking related tasks (such as processing incoming and outgoing packets). A lower rate makes the system respond to new packets quicker but may reduce the performance of other applications running on the system. A larger value implied the adapter interrupts the system less frequently. This makes the system more responsive and this setting is especially useful for sending and receiving large amounts of data.
9 IPv4 Checksum Offload
Recommended Setting | Rx & Tc Enabled |
Effect on Throughput | none |
Effect on CPU Utilisation | positive |
Offloading checksum calculation to hardware components is always a good idea to relief the processor from having to do that work. Same goes for TCP and UDP Checksum Offload (IPv4 and IPv6).
10 Jumbo Packet (MTU)
Recommended Setting | [9014 Bytes] |
Effect on Throughput | positive |
Effect on CPU Utilisation | positive |
Jumbo packet increase the payload size per packet sent across the network, thereby reducing TCP/IP overhead and CPU utilisation. Enable this only if your connection is 1Gigabits per second and all devices on your network support this feature. Also make sure to set the Jumbo Frame size to the same value across all your devices. In my case 9014bytes is the largest value all of my networking hardware supports. Jumbo Frames are implemented differently across different vendors, so if you run into problems try disabling this before tweaking other settings.
11. Large Send Offload V2 (IPv4) and Large Send Offload V2 (IPv6)
Recommended Setting | Recommended Setting: Disabled |
Effect on Throughput | negative |
Effect on CPU Utilisation | negative |
Crutledge explains this concept beautifully in his post Large Send Offload and Network Performance (A good read!). The idea is that the TCP/IP software stacks buffers data messages before sending them to the Ethernet adapter. The adapter itself then segments it into smaller chunks that fit into the frame size (normally 1500bytes, or, if you set Jumbo Frames, they will be that size instead.) using an algorithm implemented in its hardware (super fast!).
Affiliate Content Start
2 Pack Replacement Remote Controls Compatible with Roku Smart TV, Infrared Remotes for TCL/Hisense/Sharp/Philips/Onn/Element/Insignia Roku TV (Not Compatible with Roku Stick, Box or Speaker)
$5.99 (as of November 18, 2024 02:39 GMT +08:00 - More infoProduct prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on [relevant Amazon Site(s), as applicable] at the time of purchase will apply to the purchase of this product.)Wireless Earbuds Bluetooth Headphones with Mic 50H Playback Deep Bass Stereo Ear Buds with LED Power Display Charging Case IPX7 Waterproof in-Ear Earphones for Laptop Pad Tablet Android/iOS Phones
$19.99 (as of November 18, 2024 02:39 GMT +08:00 - More infoProduct prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on [relevant Amazon Site(s), as applicable] at the time of purchase will apply to the purchase of this product.)Wireless Earbuds, Bluetooth Ear Buds with Big Bass Stereo Sound, 48 Hours Playtime, Lightweight in-Ear Fit Earphones, IPX7, Hands-Free Calls with AI for iPhone, Android, Pad, Sports, Workout White
$18.99 (as of November 18, 2024 02:39 GMT +08:00 - More infoProduct prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on [relevant Amazon Site(s), as applicable] at the time of purchase will apply to the purchase of this product.)Affiliate Content End
Crutledge then explains that this frees up CPU “from having to handle segmenting of large TCP messages into smaller packets”.
He goes on to explain that problems start because different network devices have to agree on the same frame size.
If a switch does not support the Jumbo Frame Size it silently drops the frame. The idea is that without the buffering introduced by LSO, smaller packets would be sent into the network that is more likely to be accepted by routes and switched because of their standard size. To quote him again, “And this is where a performance enhancement feature becomes a performance degradation nightmare”.
I encourage you to read his article (it’s relatively short and concise) to find out more about this.
Kitchen Multi-Timer Pro
Now you’re cooking
Multi Timer Pro is your ultimate meal prep companion, keeping track of multiple cooking times and making adjustments on the fly. Give it a try today and become a better home cook!
12. Locally Administered Address
Recommended Setting | Disabled |
Effect on Throughput | none |
Effect on CPU Utilisation | none |
This allows you to set a static IP address for this machine. I leave this disabled to assign IP’s automatically. My router at home does a good job of assigning the same IP based on MAC addresses anyway.
13. Log Link State Event
Recommended Setting | Disabled |
Effect on Throughput | none |
Effect on CPU Utilisation | negative |
When enabled the Ethernet adapter will log all state changes in a file. In a home network, I don’t see any reason why you would want to read those logs. To reduce CPU overhead (however small that may be) I would just disable this feature.
Advertisement Begins
Advertisement End
14. Maximum Number of RSS Queues
Recommended Setting | 2 Queues |
Effect on Throughput | Unknown to me |
Effect on CPU Utilisation | Unknown to me |
15. Packet Priority & VLAN
Recommended Setting | Packet Priority & VLAN Enabled |
Effect on Throughput | Unknown to me |
Effect on CPU Utilisation | Unknown to me |
16. Protocol ARP Offload
Recommended Setting | enabled |
Effect on Throughput | Unknown to me |
Effect on CPU Utilisation | Unknown to me |
17. Protocol NS Offload
Recommended Setting | Enabled |
Effect on Throughput | Unknown to me |
Effect on CPU Utilisation | Unknown to me |
MY MISSION
This blog started nearly 10 years ago to help me document my technical adventures in home automation and various side projects. Since then, my audience has grown significantly thanks to readers like you.
While blog content can be incredibly valuable to visitors, it’s difficult for bloggers to capture any of that value – and we still have to work for a living too. There are many ways to support my efforts should you choose to do so:
Consider joining my newsletter or shouting a coffee to help with research, drafting, crafting and publishing of new content or the costs of web hosting.
It would mean the world if gave my Android App a go or left a 5-star review on Google Play. You may also participate in feature voting to shape the apps future.
Alternatively, leave the gift of feedback, visit my Etsy Store or share a post you liked with someone who may be interested. All helps spread the word.
BTC network: 32jWFfkMQQ6o4dJMpiWVdZzSwjRsSUMCk6
18. Receive Buffer MAX
Recommended Setting | 512 |
Effect on Throughput | Unknown to me |
Effect on CPU Utilisation | Unknown to me |
19. Receive Side Scaling
Recommended Setting | Enabled |
Effect on Throughput | none |
Effect on CPU Utilisation | none |
Recommended Setting: Disabled Effect on Throughput: Effect on CPU Utilisation:
This involves the distribution of incoming network processing across multiple processor cores. For example, multiple TCP connections are created to load different elements on a website. These connections are distributed across different cores to improve performance. Does not affect throughput, only CPU utilisation. Network benchmark tools may show that total performance decreases when this tool is enabled. Users who care about CPU utilisation are encouraged to enable this feature, otherwise, leave it disabled.
20. Reduce Speed on Power Down
Recommended Setting | Disabled |
Effect on Throughput | negative |
Effect on CPU Utilisation | none |
If you are concerned about energy consumption over performance, enable this feature. Otherwise disable it.
21. Speed & Duplex
Recommended Setting | 1.0 Gbps Full Duplex |
Effect on Throughput | positive |
Effect on CPU Utilisation | negative |
This has got to be the biggest throughput improvement of all. Assuming all of you networking hardware supports 1.0 Gigabits per second this will increase your throughput from 12.5Mb/s (on 100Gbps connection) to an impressive 125Mb/s. These max values are theoretical. On my network, the max throughput I was able to achieve was 114Mb/s on a single cable.
Advertisement Begins
Advertisement End
22. System Idle Power Saver
Recommended Setting | disabled |
Effect on Throughput | negative |
Effect on CPU Utilisation | negative |
Anything power-saving related is going to negatively affect performance.
23. TCP Checksum Offload (IPv4) and TCP Checksum Offload (IPv6)
Recommended Setting | Rc & Tx Enabled |
Effect on Throughput | none |
Effect on CPU Utilisation | positive |
It’s always a good idea to offload calculations to hardware whenever possible. Hardware is super fast.
Affiliate Content Start
Gabb Watch 3e - Smart Watch for Kids - GPS Tracker for Kids, Kids Digital Watch w/Unlimited Talk & Text, Parental Controls, No Social Media, No Internet, SOS Button, 30 Activation Fee (Dark Gray)
$74.99 (as of November 18, 2024 02:39 GMT +08:00 - More infoProduct prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on [relevant Amazon Site(s), as applicable] at the time of purchase will apply to the purchase of this product.)Apple Watch SE (2nd Gen) [GPS 40mm] Smartwatch with Starlight Aluminium Case with Starlight Sport Band S/M. Fitness and Sleep Trackers, Crash Detection, Heart Rate Monitor, Retina Display
$149.31 (as of November 18, 2024 02:39 GMT +08:00 - More infoProduct prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on [relevant Amazon Site(s), as applicable] at the time of purchase will apply to the purchase of this product.)TOZO New Version Bluetooth 5.4 Headphones, ENC Call Noise Cancelling with Mic Over Ear Wireless Headset Foldable with 70H Playback, Stereo Bass, EQ Modes via Button & APP for Travel Home Black
$22.94 (as of November 18, 2024 02:39 GMT +08:00 - More infoProduct prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on [relevant Amazon Site(s), as applicable] at the time of purchase will apply to the purchase of this product.)Affiliate Content End
24. Transmit Buffers
Recommended Setting | 128 |
Effect on Throughput | Unknown to me |
Effect on CPU Utilisation | Unknown to me |
25. UDP Checksum Offload (IPv4) and UDP Checksum Offload (IPv6)
Recommended Setting | Rc & Tx Enabled |
Effect on Throughput | Unknown to me |
Effect on CPU Utilisation | Unknown to me |
26. Wait For Link
Recommended Setting | Auto Detect |
Effect on Throughput | none |
Effect on CPU Utilisation | none |
27. Wake Settings and 28. Wake on Link Settings
These settings are really up to you. If you want to wake your computer using magic packets then enable these settings.
Wake computer on incoming connection.
29. Wake on Magic Packet
Wake computer on incoming magic packet.
30. Wake on Pattern Match
Wake computer on pattern match.
Conclusion
In this post, we covered 30 network adapter settings, their effect on network data throughput and CPU utilisation.