Windows Stack Changes Boost Network Performance
Enhancements to Longhorn and Vista--such as receive-side window autotuning and Compound TCP speed data transfer--look to make more efficient use of network resources.
April 24, 2007
THE PROSPECTS /
The next release of Windows Server, code-named Longhorn, will bring a number of TCP-related improvements to the Windows platform.
Enhancements to the network stack, like receive-side-window autotuning and the Compound TCP algorithm, will increase network performance. But upgrading to any new system brings some pain. Before you deploy Longhorn, or even Vista, have a clear understanding of the impact these modifications will have on your network.Besides network stack enhancements, Longhorn's management features bring efficiencies. Group Policy-based QoS (quality of service), for instance, will let you manage Windows bandwidth consumption. And IPv6, already available for previous versions of Windows, is installed and enabled by default. However, these changes to the TCP stack affect network performance.
Go Speed Racer, Go!
TCP stack enhancements in Vista and Longhorn deliver faster performance, but that translates into higher network utilization, which may actually impair network performance as multiple computers consume more bandwidth. VoIP and other time-sensitive apps may be squeezed out as the number of Vista and Longhorn computers increase. The bottlenecks could manifest as bursty traffic (higher throughput means shorter transfer times). The culprit is in receive-side-window "autotuning."
Default installations of Windows OSs prior to Vista and Longhorn had a built-in bottleneck in the TCP stack in the form of a fixed receive-side window size. TCP connections must acknowledge every byte sent from one host to another. A receive window is used to acknowledge multiple TCP packets at one time rather than acknowledging each individual packet; the current window grows or shrinks based on how quickly the receiver can process TCP packets (see "Receive Windows," page 26). The maximum throughput a host can achieve is governed by the window size and the round-trip time. The sending host will send as many packets as can fit in the receiver window, then wait for an acknowledgement. The default window size for Windows XP and Windows Server 2003 is 65,535 bytes, which equals a maximum throughput of about 5.2 Mbps on a connection with a 100-millisecond round-trip time regardless of the LAN speed.
Windows XP and Server 2003 could be tweaked by adding registry keys to enable window scaling as defined in RFC 1323, which allows larger windows and, therefore, higher throughput, but configuring registry keys manually is difficult and error-prone, and the new window size would apply to all TCP connections on a host. In Vista and Longhorn, the receive-side-window scaling autotunes to achieve maximum throughput per connection and responds to network changes such as congestion and delay.In informal tests we conducted, a Windows Vista computer had twice the throughput downloading a file from a Windows 2003 server, compared with the same download to a Windows XP computer.
Continue Reading This Story...
Compound Returns
Another enhancement in Longhorn is Microsoft Compound TCP (CTCP), which increases the amount of data the server will send during a TCP data transfer. TCP slow-start and congestion-avoidance are designed to increase the sending rate of a host conservatively so as not to overwhelm the network. CTCP ramps up the send rate while monitoring jitter, window size and throughput. The server achieves a maximum send rate faster and recovers quicker from packet loss. Because of Longhorn Beta License terms, we can't quote performance numbers for Longhorn, but we can say that the throughput between a Vista client and Longhorn server was markedly faster than between Longhorn and any other Windows platform.
Microsoft's recommendation (a good one) is to use QoS policies to prioritize traffic. Rolling out QoS is not as daunting as you might think; if your organization isn't using QoS, you should plan to. Complex traffic policies often aren't required. At the minimum, you should determine which traffic has time or bandwidth requirements, and set your policy accordingly. Time-sensitive traffic, such as VoIP, streaming video, database activity and enterprise apps, should be considered high priority. File transfers, as well as store-and-forward ones like those for e-mail, can duke it out with the rest of the traffic. QoS policies can tag packets or limit transmission rates leaving the host and are applied to Vista and Longhorn computers through the new policy-based QoS Group Policy Object (GPO). This feature applies policies based on apps, source/destination addresses and ports. GPOs applied to users are updated as the user logs into the domain.
TimelineClick to enlarge in another window |
Receive WindowsClick to enlarge in another window |
If your WAN pipe is at capacity, no amount of TCP optimization will help relieve the problem--you must add more capacity or reduce utilization. WAN optimization controllers rely partly on TCP optimizations similar to those found in Vista and Longhorn; anything that reduces round-trip times and the lockstep of sending and waiting will increase perceived performance, and the changes in Vista and Longhorn will help speed things up. However, the benefit of WAN optimization really comes with data reduction and compression, which reduce the bits that cross the WAN. Preliminary testing by NWC as well as vendors shows that data reduction and compression can increase effective WAN throughput by a factor of six or more--turning that T1 line into a fast link. Longhorn's file-caching feature may reduce network traffic for Windows file sharing, but won't help with other TCP apps.
Storage Handling
Another benefit of the new IP stack is support for Chimney-based TCP/IP off-loading and for netDMA. Chimney, new to Longhorn, lets the OS off-load the IP stack to TOE (TCP Off-load Engine) cards and iSCSI host bus adapters that are capable of handling TCP/IP in hardware--a technique that can substantially reduce CPU utilization for high-performance network and iSCSI applications. The same holds true in the case of receive-side scaling, which lets incoming packets be spread across multiple processors rather than only one, removing the CPU as the bottleneck. NetDMA allows an adapter's DMA (Direct Memory Access) engine to handle copy operations rather than using CPU interrupts. Microsoft tightened the integration of IPv6 into Vista and Longhorn. However, unless you're planning to implement IPv6, disable it. Any unnecessary services invite trouble, and protocol support is no different. In October 2006, Microsoft Security Bulletin MS06-064 outlined three low-level denial-of-service attacks against the IPv6 stacks for Windows XP and Windows Server 2003; the common factor was that IPv6 was installed.
Mike Fratto is a senior technology editor based in Network Computing's Syracuse University Real-World Labs and former editor in chief of Secure Enterprise. Prior to joining this magazine, Mike worked as an independent consultant in central New York. Write to him at [email protected]. 0
You May Also Like