The CIFS acceleration feature provides a suite of protocol-specific performance enhancements to CIFS-based (Windows and Samba) file transfer and directory browsing, including enhancements to CIFS transport and to related protocols such as DCERPC.
On networks where CIFS signing is enabled, CIFS protocol acceleration and compression require that you either disable CIFS packet authentication (signing), or have your datacenter appliances join the Windows domain, and create a secure peer relationship between the datacenter appliances and your remote appliances and CloudBridge Plug-ins.
|SMB Version||TCP Flow Control||Compression||Protocol Acceleration|
|Signing enabled, CloudBridge has joined domain|
|Signing enabled, CloudBridge has not joined domain|
|Client/Server OS||Windows 8 Windows Server 2012||Windows 7 Windows Server 2008 R2||Windows Vista Windows Server 2008||Earlier versions of Windows|
|Windows 8 Windows Server 2012||SMB 3.0||SMB 2.1||SMB 2.0||SMB 1.0|
|Windows 7 Windows Server 2008 R2||SMB 2.1||SMB 2.1||SMB 2.0||SMB 1.0|
|Windows Vista Windows Server 2008||SMB 2.0||SMB 2.0||SMB 2.0||SMB 1.0|
|Previous versions of Windows||SMB 1.0||SMB 1.0||SMB 1.0||SMB 1.0|
Supported Versions of CIFS
Not every CIFS implementation uses request patterns that are recognized by the appliance. These unsupported versions do not achieve acceleration in the full range of cases, as shown in the following table.
|Windows Server 2003-2012||Yes*||Yes*|
|Windows XP, Vista, 7, 8, 2000||Yes*||Yes*|
|Windows ME and earlier||No||No|
* Newer Windows versions use the SMB3 protocol when both client and server support it. Protocol acceleration is not supported for SMB3, so protocol acceleration with an SMB 3-capable OS occurs only when communicating with an earlier operating system.
Note: Most third-party CIFS implementations emulate one of the servers or clients listed above. To the extent that the emulation is successful, traffic is accelerated, or not, as shown in the above table. If the emulation behaves differently from what the CIFS accelerator expects, CIFS acceleration is terminated for that connection.
The behavior of CIFS acceleration with a given CIFS implementation cannot be known for certain until it has been tested.
Large file reads and writes—These SMB1 optimizations are for file transfers of at least 640 KB. Safe read-ahead and write-behind techniques are used to stream the data without pauses for every transfer (a transfer is 64 KB or less).
These optimizations are enabled only if the transfer has a BATCH or EXCLUSIVE lock and is "simple." File copies are always simple. Files opened through applications might or might not be, depending on how they are handled within the application.
Speedup ratios of 10x are readily obtainable with CIFS acceleration, provided that your link and disks are fast enough to accommodate ten times your current transfer speeds. 50x speedup can be obtained if necessary, but is not normally enabled, because of memory consumption. Contact your Citrix representative if 10x is not sufficient.
Small file reads and writes—Small-file enhancements center more around metadata (directory) optimizations than around data streaming. Native CIFS does not combine metadata requests in an efficient way. CIFS acceleration does. As with large-file acceleration, these optimizations are not performed unless they are safe (for example, they are not performed if the CIFS client was not granted an exclusive lock on the directory.) When the SMB2 protocol is used, file metadata is cached locally for even greater improvements.
Directory Browsing—Standard CIFS clients perform directory browsing in an extremely inefficient way, requiring an enormous number of round trips to open a remote folder. CIFS acceleration reduces the number of round trips to 2 or 3. When the SMB2 protocol is used, directory data is cached locally for even greater improvements.