Welcome! Log In


http://support.microsoft.com/kb/912222/en-us/

Windows Server 2003 Scalable Networking Pack overview
The architectural goal of the Scalable Networking initiative is to scale applications in the Windows family of operating systems to new levels of performance at a variety of cost points. Because of the variety of cost points and because of the variation in workload, the initiative includes the following two fundamental approaches:

* Stateful offloads
* Stateless offloads

TCP Chimney is a stateful offload. TCP Chimney offload enables TCP/IP processing to be offloaded to network adapters that can handle the TCP/IP processing in hardware. Each TCP Chimney offload-capable network adapter has a finite number of connections that it can support in hardware. TCP connections will be offloaded to hardware as long as the hardware can support these connections. After the hardware offload connection limit has been reached, all additional connections are handled by the host stack.

RSS and NetDMA are stateless offloads. Where multiple CPUs reside in a single computer, the Windows networking stack limits "receive" protocol processing to a single CPU. RSS resolves this issue by enabling the packets that are received from a network adapter to be balanced across multiple CPUs. NetDMA allows for a Direct Memory Access (DMA) engine on the Peripheral Component Interconnect (PCI) bus. The TCP/IP stack can use the DMA engine to copy data instead of interrupting the CPU to handle the copy operation.

The following table describes the interactions between the various components of the Windows Server 2003 Scalable Networking Pack.
Collapse this tableExpand this table
TCP Chimney RSS NetDMA
TCP Chimney Will work Will work Will not work (see the note that follows this table)
RSS Will work Will work Will work
NetDMA Will not work (see the note that follows this table) Will work Will work
Note If both TCP Chimney and NetDMA are available, the operating system will select TCP Chimney.

The Windows Server 2003 Scalable Networking Pack updates the Network Driver Interface Specification (NDIS). After you install the update, there is no user interface to configure the options that are associated with the Windows Server 2003 Scalable Networking Pack. By default, the options are turned on. You can configure the options by using the Netsh.exe tool or by using the registry.

TCP Chimney offload and NetDMA will not work with the following features:

* Windows Firewall
* Internet Protocol security (IPsec)
* Internet Protocol Network Address Translation (IPNAT)
* Third-party firewalls
* NDIS 5.1 intermediate drivers

If any one of these features is turned on, TCP Chimney offload and NetDMA will not work regardless of the registry settings.

By default, the IP NAT and IPsec Policy Agent features are turned on when certain components such as bridging and routing services are enabled. Therefore, TCP Chimney and NetDMA will not function in such a scenario. When the bridging and routing services are disabled, IPNAT is not turned off. Therefore, TCP Chimney or NetDMA is not re-enabled. The IP NAT and IPsec Policy Agent features must be explicitly turned off before TCP Chimney or NetDMA can function.
Back to the top
Windows Server 2003 Scalable Networking Pack usage
Important This section, method, or task contains steps that tell you how to modify the registry. However, serious problems might occur if you modify the registry incorrectly. Therefore, make sure that you follow these steps carefully. For added protection, back up the registry before you modify it. Then, you can restore the registry if a problem occurs. For more information about how to back up and restore the registry, click the following article number to view the article in the Microsoft Knowledge Base:
322756 (http://support.microsoft.com/kb/322756/ ) How to back up and restore the registry in Windows


After you restart the server and turn on TCP Chimney offload by using the Netsh.exe tool, nine global registry entries are available under the following registry subkey:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
The nine global registry entries are as follows:

* EnableTCPChimney
Type: REG_DWORD
Values: 1 (enabled) 0 (disabled))
* EnableRSS
Type: REG_DWORD
Values: 1 (enabled) 0 (disabled))
* EnableTCPA
Type: REG_DWORD
Values: 1 (enabled) 0 (disabled))
* OffloadExcludeDestinationPorts
Type: REG_MULTI_SZ
* OffloadIncludeDestinationPorts
Type: REG_MULTI_SZ
* OffloadExcludeSourcePorts
Type: REG_MULTI_SZ
* OffloadIncludeSourcePorts
Type: REG_MULTI_SZ
* MinPacketSizeToDma
Type: REG_DWORD
Values: 128 – 4096
Default value: 256
* DmaSyncCompletionHighThreshold
Type: REG_DWORD
Values: 0 – 87600
Default value: 0

The EnableTCPChimney global registry value enables the TCP Chimney functionality in the stack. Similarly, the EnableRSS and EnableTCPA global registry values enable the RSS functionality and the TCPA functionality in the stack.

The MinPacketSizeToDma global registry value configures the minimum packet size that would trigger usage of DMA. We recommend that you leave the default value for this setting.

If the space that remains in a posted TCP buffer is less than the DmaSyncCompletionHighThreshold global registry value, TCP will wait for the NetDMA operation to be completed synchronously. If the value of the DmaSyncCompletionHighThreshold global registry value is zero, TCP does not wait for the synchronous NetDMA operation to finish.

The REG_MULTI_SZ values are applicable only to TCP Chimney offload. For the REG_MULTI_SZ registry values, you can type port numbers between 1 and 65,535. Port numbers are separated by spaces or by commas. Each registry value enables a maximum of 12 ports to be specified. If a port number is incorrect, it will be ignored.

The port policy that is set by using the registry values is evaluated as follows:

* The exclusion lists are examined first. If a source or destination port is present in the exclusion list, it will not be offloaded.
* The inclusion lists are examined next. The OFFLOAD_PREFERRED flag is set on the connections in the inclusion lists. This setting keeps the destination port offloaded.

The only dynamic option that does not require a restart is to turn on and turn off TCP Chimney. To dynamically turn on TCP Chimney by using the Netsh.exe tool, follow these steps:

1. Click Start, click Run, type cmd, and then click OK.
2. At the command prompt, type Netsh int ip set chimney ENABLED, and then press ENTER.

To turn off TCP Chimney by using the Netsh.exe tool, follow these steps:

1. Click Start, click Run, type cmd, and then click OK.
2. At the command prompt, type Netsh int ip set chimney DISABLED, and then press ENTER.

Back to the top
Windows Server 2003 Scalable Networking Pack open issues
Third-party firewall vendors cannot connect to the Windows networking stack by using undocumented APIs when TCP Chimney offload is enabled.

TCP/IP statistics that are obtained from offload-capable hardware will be double counted if the following conditions are true:

* The TCP Chimney offload functionality is turned off by using the EnableTCPChimney registry entry.
* The TCP Chimney offload functionality is turned off by using the Netsh int ip set chimney DISABLED command.



Note When you install Scalable Networking Pack, you may experience the problems that are described in the following Microsoft Knowledge Base articles:

*
918564 (http://support.microsoft.com/kb/918564/ ) Error message after you install the Windows Server 2003 Scalable Networking Pack in Windows Server 2003 R2: "STOP 0x0000008E" or "STOP: 0x0000003B"
*
919948 (http://support.microsoft.com/kb/919948/ ) Error message after you install the Windows Server 2003 Scalable Networking Pack and then change the network settings on a Windows Server 2003 R2-based computer: "STOP 0x000000D1"
*
921136 (http://support.microsoft.com/kb/921136/ ) Failover process does not occur when you use TCP Offload-enabled network adapters to create a team capable of TCP Offloading on a Windows Server 2003-based computer
*
918369 (http://support.microsoft.com/kb/918369/ ) The sockdie process may leak memory when you use the Sockdie utility with the –maxtput switch in Windows Server 2003 R2

Back to the top
REFERENCES
To download the "Scalable Networking with RSS" white paper, visit the following...
To download the "Scalable Networking with RSS" white paper, visit the following Microsoft Web site:
http://www.microsoft.com/whdc/device/network/NDIS_RSS.mspx (http://www.microsoft.com/whdc/device/network/NDIS_RSS.mspx)
To download the "Scalable Networking: Network Protocol Offload - Introducing TCP Chimney" white paper, visit the following Microsoft Web site:
http://windowshelp.microsoft.com/Windows/en-US/Help/c6d1a24d-00e5-4ab8-bd2f-78c929203e331033.mspx (http://windowshelp.microsoft.com/Windows/en-US/Help/c6d1a24d-00e5-4ab8-bd2f-78c929203e331033.mspx)
To download the "Windows Scalable Networking Initiative" white paper, visit the following Microsoft Web site:
http://www.microsoft.com/whdc/device/network/scale.mspx (http://www.microsoft.com/whdc/device/network/scale.mspx)
For more information, click the following article number to view the article in the Microsoft Knowledge Base:
824684 (http://support.microsoft.com/kb/824684/ ) Description of the standard terminology that is used to describe Microsoft software updates
Sorry, only registered users may post in this forum.

Click here to login