TCP/IPv4 and TCP/IPv6 Common Registry Settings

A version of this page is also available for

Windows Embedded CE 6.0 R3

4/8/2010

The registry settings described in this section apply to both TCP/IPv4 and TCP/IPv6. Because the TCP implementations for TCP/IPv4 and TCP/IPv6 are separate, you might observe slightly different behavior when configuring these parameters for TCP/IPv4 and TCP/IPv6.

With the exception of the TCP/IP firewall registry entries, the parameters for TCP/IPv4 are located under the HKEY_LOCAL_MACHINE\Comm\Tcpip\Parms key. The parameters for TCP/IPv6 are located under the HKEY_LOCAL_MACHINE\Comm\Tcpip6\Parms key. The common settings must be configured under both keys for the TCP/IP implementation to work properly on your device.

Note

The default registry values vary depending on the Catalog items that are included in your OS design.

The following table shows the registry values for the Parms registry key.

Value : type Description

DisableCachedLeaseDialog : REG_DWORD

Default setting is 0. The message dialog "A DHCP Server could not be contacted" will be shown. When the value is set to 1, the message is suppressed.

Windows Embedded CE provides two additional registry keys that allow you to define the options you would like returned from the DHCP server, and additional options you can send from the client to the server. These registry keys are DhcpOptionsand DhcpSendOptions.

EnablePMTUDiscovery : REG_DWORD

Default setting is 1 (True). This value can be either 0 (False) or 1 (True) to indicate if TCP should perform Maximum Transmission Unit (MTU) discovery. Setting this value to 1 causes TCP to attempt to discover the MTU, or largest packet size, over the path to a remote host. For more information, see Path Maximum Transmission Unit (PMTU) Discovery.

EnableICMPRedirects : REG_DWORD

Default setting is 1 (True). This value can be either 0 (False) or 1 (True) to indicate if Windows should enable ICMP redirects. Setting this value to 1 causes Windows to alter the route table in response to an ICMP redirect message that is sent to it by a network device, such as a router.

GlobalMaxTcpWindowSize : REG_DWORD

This value is not set by default. If not specified, the default is 64KB. The receive window indicates the number of bytes a sender can transmit without receiving an acknowledgment.

GlobalMaxTcpWindowSize is a system-wide value. If the receive window for an adapter is specified to be larger than this value, it will be set to GlobalMaxTcpWindowSize instead. For more information, see TCP Receive Window Size Calculation and Window Scaling.

KeepAliveInterval : REG_DWORD

Default setting is 1000 (one second). This value specifies the interval, in milliseconds, between keep-alive retransmissions until a response is received. The valid range for this value is 1–0xFFFFFFFF (hexadecimal). For more information, see TCP Keep-Alive Messages.

KeepAliveTime : REG_DWORD

Default setting is 7,200,000 (two hours). This value specifies how often TCP attempts to verify that an idle connection is still intact by sending a keep-alive packet. If the remote system is still reachable and functioning, it will acknowledge the keep-alive transmission. Keep-alive packets are not sent by default. An application can enable this setting for a particular connection. The valid range for this value is 1–0xFFFFFFFF (hexadecimal). For more information, see TCP Keep-Alive Messages.

NumForwardPackets : REG_DWORD

Default setting is 1024. This value specifies the number of packets initially allocated for the TCP/IP stack forwarding buffers pool.

Use this setting to fine-tune the amount of memory that is used for routing. For information about enabling routing, see Enabling IPv4 Routing or Enabling IPv6 Routing.

> [!NOTE] > For maximum efficiency, the settings for NumForwardPackets and MaxNumForwardPackets should be equal.

MaxNumForwardPackets : REG_DWORD

Default setting is 1024. This value specifies the maximum number of packets that can be allocated for the TCP/IP stack forwarding buffers pool.

Use this setting to fine-tune the amount of memory that is used for routing. For information about enabling routing, see Enabling IPv4 Routing or Enabling IPv6 Routing.

> [!NOTE] > For maximum efficiency, NumForwardPackets and MaxNumForwardPackets settings should be equal. However, if it is expected that NumForwardPackets will generally be used, you can set MaxNumForwardPackets to a higher number to handle infrequent bursts.

RebindOnResume : REG_DWORD

This value is not set by default. It specifies if rebind on resume is enabled. A value of 1 indicates that NDIS unbinds and binds the adapter when a device resumes from a suspended state. This unbind and rebind process causes DHCP to renew the IP address for the adapter.

This value can be used by an adapter that does not support media indication status.

DisablePowerManagement : REG_DWORD

This value is not set by default. It indicates whether NDIS disables power management. A value of 0 indicates that NDIS registers power-manageable adapters. A value of 1 indicates that NDIS does not register the adapters, thus disabling power management.

ResetOnResume : REG_DWORD

Default setting is 0. This value indicates whether NDIS unloads the PCMCIA miniport drivers during system suspend and resume, assuming that the card is not physically removed.

If this value is set to 1, the miniport driver remains loaded. If this value does not exist or is set to 0, and the card is not physically removed, NDIS unloads and then reloads the driver during the resume process.

This value requires the PCMCIA driver to have support from the OAL. The miniport driver must support MiniportResetHandler, and the PMCIA driver must support CFG_ATTR_NO_SUSPEND_UNLOAD.

> [!NOTE] > You can also use this setting to avoid losing IP multicast group membership across a suspend- and-resume sequence. This applies only to PCMCIA adapters. Multicast membership is always preserved for PCI adapters.

ResolverRetryCount : REG_DWORD

Default setting is 2. This value specifies the number of times that name resolution tries to resolve a name with DNS or WINS. This value can be any positive integer greater than or equal to 1.

TcpMaxConnectRetransmissions : REG_DWORD

Default setting is 2. The valid range for this value is 0–0xFF (hexadecimal). This value specifies the number of times that TCP retransmits a connect request (SYN) before canceling the attempt. The retransmission timeout is doubled with each successive retransmission in a given connect attempt.

> [!NOTE] > On TCP/IPv6 networks, Neighbor Discovery (ND) can take up to a minute to fail-over to another router. To enable TCP connections to survive long enough so that this fail-over has a chance to complete, the TcpMaxConnectRetransmissions setting does not take effect when it is below a certain value. Retransmissions will continue for one minute or until the required number of retransmissions occur, whichever time is greater.

TcpMaxDataRetransmissions : REG_DWORD

Default setting is 5. The valid range for this value is 0–0xFF (hexadecimal). This value specifies the number of times that TCP retransmits an individual data segment (does not include connection request segments) before canceling the connection.

> [!NOTE] > On TCP/IPv6 networks, Neighbor Discovery (ND) can take up to a minute to fail-over to another router. To enable TCP connections to survive long enough so that this fail-over has a chance to complete, the TcpMaxDataRetransmissions setting does not take effect when it is below a certain value. Retransmissions will continue for one minute or until the required number of retransmissions occur, whichever time is greater.

For more information, see TCP Retransmission Behavior.

TcpWindowSize : REG_DWORD

Default setting is 0x8000 (32KB) in common.reg. If no value is specified in the registry, the TCP stack will use a default of 16KB. The valid range for this setting is between 0 and 0x3FFFFFFF. This value specifies the initial advertised TCP receive window size. Values greater than 64K can be achieved only when connecting to other systems that support RFC 1323 window scaling. For more information, see TCP Receive Window Size Calculation and Window Scaling.

See Also

Concepts

TCP/IP Registry Settings

Other Resources