9
A Rohde & Schwarz Company TCP/IP Settings Application Note July 2012 SwissQual® License AG Allmendweg 8 CH-4528 Zuchwil Switzerland t +41 32 686 65 65 f +41 32 686 65 66 e [email protected] www.swissqual.com Part Number: 12-070-200850-4

Application Note - TCP and IP Settings

Embed Size (px)

Citation preview

Page 1: Application Note - TCP and IP Settings

A Rohde & Schwarz Company

TCP/IP Settings Application Note

July 2012

SwissQual® License AG Allmendweg 8 CH-4528 Zuchwil Switzerland

t +41 32 686 65 65 f +41 32 686 65 66 e [email protected] www.swissqual.com

Part Number: 12-070-200850-4

Page 2: Application Note - TCP and IP Settings

SwissQual has made every effort to ensure that eventual instructions contained in the document are adequate and free of errors and omissions. SwissQual will, if necessary, explain issues which may not be covered by the documents. SwissQual’s liability for any errors in the documents is limited to the correction of errors and the aforementioned advisory services.

Copyright 2000 - 2012 SwissQual AG. All rights reserved.

No part of this publication may be copied, distributed, transmitted, transcribed, stored in a retrieval system, or translated into any human or computer language without the prior written permission of SwissQual AG.

Confidential materials.

All information in this document is regarded as commercial valuable, protected and privileged intellectual property, and is provided under the terms of existing Non-Disclosure Agreements or as commercial-in-confidence material.

When you refer to a SwissQual technology or product, you must acknowledge the respective text or logo trademark somewhere in your text.

SwissQual®, Seven.Five®, SQuad®, QualiPoc®, NetQual®, VQuad®, Diversity® as well as the following logos are registered trademarks of SwissQual AG.

Diversity Explorer™, Diversity Ranger™, Diversity Unattended™, NiNA+™, NiNA™, NQAgent™, NQComm™, NQDI™, NQTM™, NQView™, NQWeb™, QPControl™, QPView™, QualiPoc Freerider™, QualiPoc iQ™, QualiPoc Mobile™, QualiPoc Static™, QualiWatch-M™, QualiWatch-S™, SystemInspector™, TestManager™, VMon™, VQuad-HD™ are trademarks of SwissQual AG.

SwissQual acknowledges the following trademarks for company names and products:

Adobe®, Adobe Acrobat®, and Adobe Postscript® are trademarks of Adobe Systems Incorporated.

Apple is a trademark of Apple Computer, Inc.

DIMENSION®, LATITUDE®, and OPTIPLEX® are registered trademarks of Dell Inc.

ELEKTROBIT® is a registered trademark of Elektrobit Group Plc.

Google® is a registered trademark of Google Inc.

Intel®, Intel Itanium®, Intel Pentium®, and Intel Xeon™ are trademarks or registered trademarks of Intel Corporation.

INTERNET EXPLORER®, SMARTPHONE®, TABLET® are registered trademarks of Microsoft Corporation.

Java™ is a U.S. trademark of Sun Microsystems, Inc.

Linux® is a registered trademark of Linus Torvalds.

Microsoft®, Microsoft Windows®, Microsoft Windows NT®, and Windows Vista® are either registered trademarks or trademarks of Microsoft Corporation in the United States and/or other countries U.S.

NOKIA® is a registered trademark of Nokia Corporation.

Oracle® is a registered US trademark of Oracle Corporation, Redwood City, California.

SAMSUNG® is a registered trademark of Samsung Corporation.

SIERRA WIRELESS® is a registered trademark of Sierra Wireless, Inc.

TRIMBLE® is a registered trademark of Trimble Navigation Limited.

U-BLOX® is a registered trademark of u-blox Holding AG.

UNIX® is a registered trademark of The Open Group.

Page 3: Application Note - TCP and IP Settings

TCP/IP Settings Application Note

© 2000 - 2012 SwissQual AG

Contents | CONFIDENTIAL MATERIALS

ii

Contents 1 Introduction .......................................................................................................................................... 1

2 Registry Settings ................................................................................................................................. 2

Description of Registry Keys ................................................................................................................. 2

GlobalMaxTcpWindowSize .............................................................................................................. 2 SackOpts .......................................................................................................................................... 2

Tcp1323Opts .................................................................................................................................... 3

TcpMaxDupAcks .............................................................................................................................. 3

TcpWindowSize ................................................................................................................................ 3

Window Size and Achievable Bandwidth .............................................................................................. 4

3 Device Settings .................................................................................................................................... 5

Sierra Wireless AirCard 880 .................................................................................................................. 5

Novatel Merlin X950D ............................................................................................................................ 5

Huawei E270 ......................................................................................................................................... 5

Sierra Wireless USB 306 ....................................................................................................................... 5

4 Test Results ......................................................................................................................................... 6

FTP Download Tests With HSDPA ....................................................................................................... 6

Figures Figure 4-1 Comparison of best values in test series ......................................................................................... 6

Page 4: Application Note - TCP and IP Settings

TCP/IP Settings Application Note

© 2000 - 2012 SwissQual AG

Chapter 1 | Introduction CONFIDENTIAL MATERIALS

1

1 Introduction The TCP/IP Settings Application Note provides background information about the TCP/IP settings which you can use to optimize the performance of mobile data services.

Page 5: Application Note - TCP and IP Settings

TCP/IP Settings Application Note

© 2000 - 2012 SwissQual AG

Chapter 2 | Registry Settings CONFIDENTIAL MATERIALS

2

2 Registry Settings This chapter describes the following Windows registry keys that influence the behavior of the TCP/IP stack. These keys are usually installed by the software that is provided with a mobile phone or device.

• "GlobalMaxTcpWindowSize"=dword:

• "SackOpts"=dword:

• "Tcp1323Opts"=dword:

• "TcpMaxDupAcks"=dword:

• "TcpWindowSize"=dword:

As the default values for these keys are not set when you install Windows, the values are instead taken from the TCP/IP stack.

To edit these keys, open the Registry Editor and go to the following location: HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/SERVICES/Tcpip/Parameters

Important: If you edit the registry, you need to restart Windows for the changes to take effect.

These keys can also be set per Interface. Such definitions will overwrite the common settings described above. Please check the sub-directories as well if you want to influence the values configured. [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces

Important: It was seen that some data cards configure different values for the network interface (NDIS) and the normal dial-up approach. Especially the TcpWindowSize was set to different values.

Description of Registry Keys The following registry key descriptions are from the Microsoft website.

GlobalMaxTcpWindowSize Key: Tcpip\Parameters

Value Type: REG_DWORD—Number of bytes

Valid Range: 0–0x3FFFFFFF (1073741823 decimal; however, values greater than 64 KB can only be achieved when connecting to other systems that support RFC 1323 window scaling, which is discussed in the TCP section of this document. Additionally, window scaling must be enabled using the Tcp1323Opts registry parameter.)

Default: This parameter does not exist by default.

Description: The TcpWindowSize parameter can be used to set the receive window on a per-interface basis. This parameter can be used to set a global limit for the TCP window size on a system-wide basis. This parameter is new in Windows 2000.

SackOpts Key: Tcpip\Parameters

Value Type: REG_DWORD—Boolean

Valid Range: 0, 1 (false, true)

Default: 1 (true)

Description: This parameter controls whether or not Selective Acknowledgment (SACK, specified in RFC

Page 6: Application Note - TCP and IP Settings

TCP/IP Settings Application Note

© 2000 - 2012 SwissQual AG

Chapter 2 | Registry Settings CONFIDENTIAL MATERIALS

3

2018) support is enabled.

Tcp1323Opts Key: Tcpip\Parameters

Value Type: REG_DWORD—number (flags)

Valid Range: 0, 1, 2, 3

0 (disable RFC 1323 options)

1 (window scale enabled only)

2 (timestamps enabled only)

3 (both options enabled)

Default: No value; the default behaviour is as follows: do not initiate options but if requested provide them.

Description: This parameter controls RFC 1323 time stamps and window-scaling options. Time stamps and window scaling are enabled by default, but can be manipulated with flag bits. Bit 0 controls window scaling, and bit 1 controls time stamps.

TcpMaxDupAcks Key: Tcpip\Parameters

Value Type: REG_DWORD—number

Valid Range: 1–3

Default: 2

Description: This parameter determines the number of duplicate ACKs that must be received for the same sequence number of sent data before fast retransmit is triggered to resend the segment that has been dropped in transit..

TcpWindowSize Key: Tcpip\Parameters, Tcpip\Parameters\Interface\interface

Value Type: REG_DWORD—number of bytes

Valid Range: 0–0x3FFFFFFF (1073741823 decimal). In practice the TCP/IP stack will round the number set to the nearest multiple of maximum segment size (MSS). Values greater than 64 KB can be achieved only when connecting to other systems that support RFC 1323 Window Scaling.

Default: The smaller of the following values:

0xFFFF

GlobalMaxTcpWindowSize (another registry parameter)

The larger of four times the maximum TCP data size on the network

16384 rounded up to an even multiple of the network TCP data size

The default can start at 17520 for Ethernet, but may shrink slightly when the connection is established to another computer that supports extended TCP head options, such as SACK and TIMESTAMPS, because these options increase the TCP header beyond the usual 20 bytes, leaving slightly less room for data.

Description: This parameter determines the maximum TCP receive window size offered. The receive window specifies the number of bytes that a sender can transmit without receiving an acknowledgment. In general, larger receive windows improve performance over high-delay, high-bandwidth networks. For greatest efficiency, the receive window should be an even multiple of the TCP Maximum Segment Size (MSS). This parameter is both a per-interface parameter and a global parameter, depending upon where the registry key is located. If there is a value for a specific interface, that value overrides the system-wide value. See also

Page 7: Application Note - TCP and IP Settings

TCP/IP Settings Application Note

© 2000 - 2012 SwissQual AG

Chapter 2 | Registry Settings CONFIDENTIAL MATERIALS

4

GobalMaxTcpWindowSize.

Important: If you want to use a value greater than 64 K for the TcpWindowSize, you need to enable the window scaling feature in the Tcp132Opts parameter.

Window Size and Achievable Bandwidth By default, the window size is limited by the following condition:

16384 rounded up to an even multiple of the MSS

With a Maximum Segment Size (MSS) size of 536 in our test system, the resultant TCP window size is 16560.

The Roundtrip Time (RTT) is usually quite high in a mobile device. If you use a mobile device with a Swiss Operator and a standard FTP server, the RTT is approximately 140 ms using HSDPA). RTT down to 80…90 ms are possible if HSUPA is used from the network under test.

The following formula estimates the maximum achievable bandwidth based on the TCP window size and RTT:

ondkbytes/sec 118.3140.0

16560)(sec

)(==<

sbytes

sRTTbytesizeTcpWindowsBandwidth

Based on the input values, this formula estimates a maximum achievable bandwidth of approximately 950 kbps.

Note: This formula only produces an estimate of the maximum achievable bandwidth (assuming best conditions) and is based on the following formula, which yields an exact result.

).75.03;1min())321(33.1( 2 pppRTOpRTTMSSBandwidth

⋅⋅+⋅⋅+=

RTO: packet timeout

P: packet loss rate

Page 8: Application Note - TCP and IP Settings

TCP/IP Settings Application Note

© 2000 - 2012 SwissQual AG

Chapter 3 | Device Settings CONFIDENTIAL MATERIALS

5

3 Device Settings This chapter describes which Windows TCP/IP registry keys are installed by third-party software.

Most operators provide a Windows application with the phone or data card to configure Internet access and to handle phone books and SMSs. Some of these applications also manipulate the TCP/IP related registry keys.

In general, SwissQual does not install these applications for the following reasons:

• Application only works with a specific device, for example, Vodafone or T-Mobile devices

• Some applications block the serial ports that Diversity uses during normal operation

SwissQual has checked the settings the applications would enter into the Windows Registry.

Sierra Wireless AirCard 880 The "3G Watcher” software adds the following registry keys:

• "TcpWindowSize"=dword:0001f5e0 (=128'480)

• "GlobalMaxTcpWindowSize"=dword:0001f5e0

• "SackOpts"=dword:00000001

• "TcpMaxDupAcks"=dword:00000002

• "Tcp1323Opts"=dword:00000003

Novatel Merlin X950D The Novatel software adds the following registry key:

"TcpWindowSize"=dword:0000faf0 (=64’240)

Huawei E270 The Huawei software does not add TCP/IP keys to the registry.

Sierra Wireless USB 306 The "3G Watcher” software adds the following registry keys:

Page 9: Application Note - TCP and IP Settings

TCP/IP Settings Application Note

© 2000 - 2012 SwissQual AG

Chapter 4 | Test Results CONFIDENTIAL MATERIALS

6

4 Test Results This chapter provides the results of a series of FTP download tests where only the TcpWindowSize value was changed.

FTP Download Tests With HSDPA In this series of tests, a 3 MB file was downloaded 20 times from an FTP server. The only condition that was changed in each of these tests was the TcpWindowSize. The chart compares the best values in this series of tests.

Throughput & TcpWindowSize

0

1000

2000

3000

4000

5000

6000

7000

8000

16560 32120 64240 128480 192720

TcpWindowSize

Best

FTP

Thr

ough

put [

kbps

]

AirCard 880 Huawei E270Theoretical (based on 140 ms RTT) Theoretical (based on 90 ms RTT)

Figure 4-1 Comparison of best values in test series