We are developing a file system for Windows using the IFS Kit. We began to investigate a performance issue that caused the file system I / O process to be much slower when shared over the network. Looking at this with FileMon and TCPView from Sysinternals , we found that if the file system was shared with NTFS / FAT, then the client and SMB server had I / O transfers in blocks of 60K, and when we shared our file system, it used 4K blocks .
These two block sizes correspond to the "main" and "raw" SMB modes - this is explained here from Microsoft.
The problem is that we cannot understand that in our file system the Windows share server (srv.sys) selects the main mode (4K) for our file system and the raw mode (60K) for NTFS and FAT.
Even hints of what to check are welcome.
KIV
source
share