Sunday, March 22, 2015

Known Issues with Offload Engines:

Issue



Intermittent communications interuptions ending with packet loss can cause processes to hang or fail.


Limitations of hardware — because connections are buffered and processed on the TOE chip, resource limitations happen more often then they would if processed by the ample CPU and memory resources that are available to the operating system.  This limitation of resources on the TOE chip can cause communication issues.
Complexity — issues such as memory used by open connections are not available with TOE. TOE also requires very large changes to a networking stack in order to be supported properly, and even when that is done, features like Quality of Service and packet filtering typically do not work.
Proprietary — TOE is implemented differently by each hardware vendor. This means more code must be rewritten to deal with the various TOE implementations, at a cost of the aforementioned complexity and, possibly, security. Furthermore, TOE firmware cannot be easily modified since it is closed-source.
Performance — Each TOE NIC has a limited lifetime of usefulness, because system hardware rapidly catches up to TOE performance levels, and eventually exceeds TOE performance levels.  TOE does not  increase bandwidth on the network.  In simple terms, TOE  removes the responsibility of the protocol stack from the Server’s CPU allowing the server CPU to process information faster.  As hardware performance increases, processes can complete their task prior to TOEs acknowledgment of the receipt of transmission; thus causing communication issues.

Error



A transport-level error has occurred when sending the request to the server (provider: TCP Provider, error 0 - An existing connection was forcibly closed by the remote host.)

Cause



This issue can occur when either TCP Chimney Offload, TCP/IP Offload Engine (TOE) or TCP Segmentation Offload (TSO) are enabled.

TCP Chimney, TCPIP Offload Engine (TOE) and TCP Segmentation Offload (TSO) off loads the TCP protocol stack to a Network Interface Card (NIC).  

  • TCP Chimney is Microsoft's software enhancement.
  • TOE is the NIC manufacturer's hardware enhancement.
  • TSO is the equivalent to TOE for some virtual environment configurations.

The TCP Chimney Offload feature is enabled by default in the Windows Server 2003 Scalable Networking Pack.
This update is included in Windows Server 2003 Service Pack 2 and can also be installed on a server running Windows 2003 Service Pack 1.

Solution



Implement the following actions and the below Workaround to better ensure resolution of the issue: 
  • Obtain the latest basic input/output system (BIOS) update for the server
  • Obtain the latest firmware update for the network adapter
  • Obtain the latest driver update for the network adapter

WORKAROUND:
The following changes are to be made on the Clearwell and Enterprise Vault servers.
  • Disable TCP Chimney Offload feature
Windows 2003 Server:

If the operating system is Microsoft Windows Server 2003, perform the following steps:
Warning: Incorrect use of the Windows registry editor may prevent the operating system from functioning properly. Great care should be taken when making changes to a Windows registry.  Registry modifications should only be carried-out by persons experienced in the use of the registry editor application. It is recommended that a complete backup of the registry and workstation be made prior to making any registry changes.
1. Click Start, click Run, type Regedit, and then click OK.
2. Locate the following registry subkey:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
*If any of the below keys are not present, create them.
3. Double-click the EnableTCPChimney registry entry.
4. In the Edit DWORD Value dialog box, type 0 in the Value data box, and then click OK.
5. Double-click the EnableRSS registry entry.
6. In the Edit DWORD Value dialog box, type 0 in the Value data box, and then click OK.
7. Double-click the EnableTCPA registry entry.
8. In the Edit DWORD Value dialog box, type 0 in the Value data box, and then click OK.
9. Restart the server.
Windows 2008 Server:
If the operating system is Microsoft Windows Server 2008 (any version including R2), run the following from a Command prompt:
1. netsh int tcp set global chimney=disabled
2. netsh int tcp set global rss=disabled
3. netsh int tcp set global netdma=disabled
Note: To display current global TCP settings, use the net shell command:
netsh int tcp show global
4. Restart the server.
Note: Microsoft has identified an issue running the netsh command to set global TCP parameters on Windows Server 2008 and Vista machines.  Some global parameters, such as TCPTimedWaitDelay, can be changed from their default or manually set values to 0xffffffff.  Before running the above command, Symantec recommends reviewing Microsoft KB Article 967224 (support.microsoft.com/kb/967224).  Upon completion of the above command's execution, Symantec also recommends reviewing the TCP Parameters noted in the KB Article and applying the hotfix from the article if needed.

  • Disable TOE and Receive Side Scaling
Caution: The instructions in the following two sets of steps will cause the Network Interface Card (NIC) being changed to reset itself.  Such a reset will cause a momentary loss of communications through that NIC.  If the NIC is the only NIC on the system, or is the primary NIC through which remote connections are established, Symantec recommends scheduling a down time to implement these steps from the machine's console.  

1.  From the Control Panel, open Network Connections.
2.  Open the properties page for the network connection being used.
3.  Click Configure (See Figure 1)
Figure 1
 
4.  On the Advanced tab, change the Value of all 'Offload' and Receive Side Scaling settings to 0Disabled or Off (See Figure 2)
Figure 2
 
5.  Click OK to save changes.
  • Disable TSO (VM Nics only)
1.  From the Control Panel, open Network Connections.
2.  Open the properties page for the network connection being used.
3.  Click Configure (See Figure 3)
Figure 3
 
  
4.  On the Advanced tab, change the Value of TSOEnabled to 0. (See Figure 4)
Figure 4
 
5.  Click OK to save changes.


For more information see the following Microsoft knowledge base article
For More information for these setting in Windows 2008 see the following Microsoft knowledge base article
http://support.microsoft.com/kb/951037






Legacy ID



294308


Article URL http://www.symantec.com/docs/TECH197934

No comments:

Post a Comment