Offload Data Transfer (ODX) support
Recent Windows clients (and the MS Hyper-V server) will optionally use special I/O control (ioctl) calls over SMB for "Offload Data Transfer" (ODX). These ioctls basically perform server-side copying etc. at the request of an SMB client.
The new ioctl codes are:
defined in [MS-FSCC]. For more info:
Steps to Reproduce:
Enable SMB 3.0
Start a network capture of SMB traffic (port 445)
Connect using a Windows 2012r2 or later client
In explorer, select a large file (i.e. ISO image) and "Ctrl-C" (copy)
Do "Ctrl-V" (paste) and observe the copy time.
Copy should be nearly instantaneous.
Examination of network capture should reveal
SMB2 ioctl FSCTL_OFFLOAD_READ / ...WRITE
Before this fix, all data goes to client and back.