Microsoft KB Archive/152081

= Use of Raw Data Transfer Mode Influenced by Application =

Article ID: 152081

Article Last Modified on 11/1/2006

-

APPLIES TO


 * Microsoft Windows NT Advanced Server 3.1
 * Microsoft Windows NT Server 3.5
 * Microsoft Windows NT Server 3.51
 * Microsoft Windows NT Workstation 3.1
 * Microsoft Windows NT Workstation 3.5
 * Microsoft Windows NT Workstation 3.51
 * Microsoft Windows NT Advanced Server 3.1

-



This article was previously published under Q152081



SUMMARY
There are several requirements that must be met for the Windows NT redirector to use raw data transfer mode, which is considered to be a more efficient data transfer mode than core mode. Applications can influence one or more of these requirements in such a way that it is not immediately apparent why data transfer is occurring in core mode and not raw mode.



MORE INFORMATION
The Windows NT redirector has the following requirements for performing raw mode I/O, all of which must be satisfied for raw mode I/O to occur.


 * The Server Message Block (SMB) protocol negotiated between the client and server must support raw mode.
 * The server must be configured to support raw mode.
 * The client redirector must be configured to allow raw mode.
 * No other SMB requests are pending on the same Virtual Circuit (VC).
 * The I/O is not on a blocking named pipe.
 * For a READ request: the requested data size is equal to or greater than 2 times the currently configured request buffer size, and the read offset is not past the redirector's currently configured end-of-file.
 * For a WRITE request: the requested data size is equal to or greater than 1.5 times the currently configured request buffer size, and the write offset is not more than approximately 1 MB past the current end-of-file.
 * The I/O is to take no longer than 5 seconds to complete.

The above requirements are commonly satisfied, and it might be apparent that at a given time raw I/O should be the data transfer mode of choice for the Windows NT redirector. An application or process, however, might be causing the failure of one or more of these requirements (and hence causing the redirector to use core mode) in a subtle way that does not necessarily involve data passing on the VC.

An example of this is an application (such as File Manager) that posts a change notification (for example, the FindFirstChangeNotification and WaitForSingleObject or WaitForMultipleObjects APIs) which causes a long- term pending SMB request(s) on the VC--even though no data is being actively passed on the VC--and, hence, the failure of the requirement listed fourth above.

For more information on File Manager and change notification, please see the following article in the Microsoft Knowledge Base:

123819File Manager I/O Optimizations Slow Other File Transfers

An application or process can also influence the redirector to use core mode instead of raw mode by the size of its reads and writes (that is, reads smaller than 2 times the currently configured request buffer size, or writes smaller than 1.5 times the currently configured request buffer size) and the type of its I/O (for example, on a blocking named pipe).

See your application vendor for more information if you suspect network throughput performance problems are the direct result of an application significantly influencing the data transfer mode as mentioned above.

Additional query words: throughput performance

Keywords: kbnetwork KB152081

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.