How to Query and Configure Global TCP/IP Offload Settings in Windows 11 Using PowerShell

In high-throughput networking environments, processing gigabits of raw network packets can consume substantial CPU cycles. To alleviate processor bottlenecks and minimise packet latency, modern network adapters and Windows 11 rely on hardware offloading technologies. These mechanisms transfer computation-heavy networking tasks—such as TCP checksum calculation, packet segmentation, and multi-core packet scheduling—directly to the network interface controller (NIC) silicon.

In Windows 11, the global behaviour of these hardware acceleration features is governed by the TCP/IP stack configuration. Using the native PowerShell NetTCPIP module, system administrators and power users can query and fine-tune global offload parameters, including Receive Side Scaling (RSS), Receive Segment Coalescing (RSC), and Task Offload. In this guide, we explore how to inspect global offload settings, modify parameters using PowerShell, and understand when disabling or enabling specific offloads resolves latency and throughput issues.

Core TCP/IP Offload Technologies in Windows 11

Before executing configuration cmdlets, understanding what each global offload parameter controls ensures optimal system stability:

Offload Parameter Default State Function & Architectural Benefit
Receive Side Scaling (RSS) Enabled Distributes incoming network packet receive processing across multiple CPU cores, preventing single-core saturation on high-speed 2.5GbE, 10GbE, and Wi-Fi 6/7 links.
Receive Segment Coalescing (RSC) Enabled Combines multiple incoming TCP segments into larger units before presenting them to the host network stack, dramatically cutting down CPU interrupts.
Task Offload Enabled Offloads IPv4/IPv6 checksum calculation and Large Send Offload (LSO) segmentation directly to the NIC hardware.
NetworkDirect (RDMA) Enabled Enables Remote Direct Memory Access across compatible high-speed adapters, bypassing the operating system kernel for direct memory-to-memory transfers.
NetworkDirect RoCE Enabled Governs RDMA over Converged Ethernet protocol support across enterprise adapters.

How to Query Global TCP/IP Offload Settings

To view the current status of all global offload features, open an elevated PowerShell window:

  1. Right-click the Start menu button on the Windows taskbar (or press Windows Key + X).
  2. Select Terminal (Admin) or PowerShell (Admin).
  3. Execute the Get-NetOffloadGlobalSetting cmdlet:
    Get-NetOffloadGlobalSetting

PowerShell will return a structured list displaying the operational status of every offload mechanism:

ReceiveSideScaling           : Enabled
ReceiveSegmentCoalescing     : Enabled
TaskOffload                  : Enabled
NetworkDirect                : Enabled
NetworkDirectRoCE            : Enabled
NetworkDirectRoCEv2          : Enabled
Chimney                      : Disabled

Note: The legacy TCP Chimney offload has been superseded in modern versions of Windows and is maintained primarily for backward architectural compatibility.

Configuring Global Offload Parameters Using PowerShell

The Set-NetOffloadGlobalSetting cmdlet allows administrators to modify one or more offload options simultaneously. All modifications take effect immediately at the network kernel level without requiring a computer restart.

1. Managing Receive Side Scaling (RSS)

If you suspect an errant NIC driver is triggering CPU core micro-stuttering or packet misordering, you can temporarily disable RSS:

Set-NetOffloadGlobalSetting -ReceiveSideScaling Disabled

To re-enable RSS for multi-core packet parallelisation:

Set-NetOffloadGlobalSetting -ReceiveSideScaling Enabled

2. Managing Receive Segment Coalescing (RSC)

While RSC substantially lowers CPU utilisation during large file downloads, certain low-latency gaming titles, real-time audio streams, or virtual switch environments can experience micro-jitter when packets are held briefly for coalescing. To disable RSC globally:

Set-NetOffloadGlobalSetting -ReceiveSegmentCoalescing Disabled

To restore standard RSC coalescing behaviour:

Set-NetOffloadGlobalSetting -ReceiveSegmentCoalescing Enabled

3. Managing Task Offload

Task Offload delegates IP checksum validation and TCP segmentation to your physical network adapter. If you are diagnosing suspected hardware checksum corruptions on a malfunctioning NIC, disable Task Offload so the Windows CPU kernel handles checksumming directly:

Set-NetOffloadGlobalSetting -TaskOffload Disabled

To re-enable hardware task offloading:

Set-NetOffloadGlobalSetting -TaskOffload Enabled

Verifying Adapter-Specific RSS Capabilities

While Get-NetOffloadGlobalSetting controls the OS-level global policies, individual physical network adapters must also support and enable RSS. You can verify the adapter-level RSS configuration using the Get-NetAdapterRss cmdlet:

Get-NetAdapterRss | Select-Object Name, InterfaceDescription, Enabled, NumberOfReceiveQueues, BaseProcessorNumber

This command reveals:

  • NumberOfReceiveQueues: The number of hardware queues assigned to handle incoming packets across CPU cores.
  • BaseProcessorNumber: The initial logical processor core assigned to the network adapter.
  • Enabled: Confirms whether hardware RSS is actively negotiated with the physical NIC driver.

Auditing Advanced Hardware Adapter Offloads

To cross-reference whether your physical network adapter’s driver matches your global settings, query the adapter’s advanced driver registry properties:

Get-NetAdapterAdvancedProperty -Name "*" | Where-Object { $_.DisplayName -match "Offload|Checksum|Scaling|Coalescing" } | Select-Object DisplayName, DisplayValue

This reveals granular driver settings such as IPv4 Checksum Offload, Large Send Offload v2 (IPv4 & IPv6), and UDP Checksum Offload.

Troubleshooting Performance and Restoring Defaults

If you made experimental modifications to offload flags while troubleshooting network throughput and wish to revert your Windows 11 system back to recommended factory standards, execute the following baseline configuration command:

Set-NetOffloadGlobalSetting -ReceiveSideScaling Enabled -ReceiveSegmentCoalescing Enabled -TaskOffload Enabled -NetworkDirect Enabled

After reapplying defaults, confirm that all parameters reflect Enabled by executing Get-NetOffloadGlobalSetting. This ensures optimal balance between high bandwidth throughput, minimal interrupt latency, and balanced multi-core CPU scheduling.

Get the best tech tips delivered straight to your inbox.

Join thousands of readers mastering Apple, Google, Microsoft, and Linux.