Top Banner
Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved. CIFS Acceleration Techniques How to improve SMB traffic
44

CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Sep 11, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

CIFS Acceleration Techniques

How to improve SMB traffic

Page 2: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Plan

IntroductionBefore AccelerationCIFS Acceleration OverviewCIFS Acceleration MethodsCIFS Acceleration ExperiencePlatformsQ & A

2

Page 3: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Introduction

3

Page 4: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Introduction

CompanyVisuality Systems Ltd.NQ - Embedded/Mobile CIFS solutionCAX – CIFS Accelerator

SpeakersMark Rabinovich – Project ManagerIgor Gokhman – Lead Developer

4

Page 5: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Before Acceleration

5

Page 6: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

CIFS Issues

CIFS is redundantMultiple requests for the same informationRepeating transactions

Multiple reads of the same file

Very limited multiplexingSMB2 addresses some of the issues but does not solve them all

6

Page 7: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

CIFS over WAN

When CIFS runs over WAN?From a branch office…

connected through a satellite linkconnected through an overseas link

VPN connectionan employee connected from home

7

Page 8: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

CIFS over WAN (cont.)

LatencySatellite networks introduce 1 second of RTTOverseas links may introduce 0.5 second RTT

Limited BandwidthSMB almost never considers bandwidthSMB2 considers bandwidth on Read/Write only

8

Page 9: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Some Numbers

Opening 1.5 MB Word document over SMB(1) involves about 630 SMB packets and requires more than 5 minutes open time (with 0.8 sec round trip).Starting a 440KB EXE single file (no more files in the folder) from Vista over SMB2 takes about 225 seconds and involves about 340 SMB2 packets when the Symantec Antivirus is involved. This mostly includes repeating file reads. When there are more EXE files in the same folder – it takes significantly longer

9

Page 10: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Conlusions

Latency and limited bandwidth of WAN dramatically reduce the CIFS performance due to the protocol nature.

This makes basic scenarios unbearable:MS Office Open/Save/SaveAsRunning remote executableFile uploading/downloading

10

Page 11: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

CIFS Acceleration Overview

11

Page 12: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

VFS

12

VFS LAN side VFS Server side

Clients

Servers

Shadow copy of the server file system.Both-sides solution

Page 13: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

CIFS Acceleration

13

Clients

Servers

CIFS Accelerator

CIFS ProxyClient-side (LAN side) solution

Page 14: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

VFS versus CIFS Acceleration

Performance + FunctionalityVFS

Solutions shared by NFS, CIFS, etc.Performance boosts:

data compressionentire file cache

Cache coherency – low, especially when accessing server from out of VFS scope

CIFS AccelerationCIFS solution onlyPerformance boosts:

Optimization of CIFS conversationsSeparate data and meta-data cache

Cache coherency - high

14

Page 15: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Saving on Round Trips

Page 16: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

How to Save on Round Trips?

Send less requests to serverSend requests to server concurrently

Page 17: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Responding to Client Instantly

Client LANClient CIFS Accelerator Remote

File/Printer Server

CIFS Traffic

Client RemoteFile/Printer Server

CIFS Traffic

Non accelerated CIFS model

Accelerated CIFS model

CIFS Traffic

Page 18: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

How to Respond to Client Instantly?

By predicting responses

This ensures more consistent load of the WAN link

Page 19: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

CIFS Acceleration Methods

19

Page 20: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Three Acceleration Techniques

CIFS Acceleration techniques fall into the following categories

CachingWe can respond to repeating client requests without accessing the server

PredictingWe can recognize well-known sequences and perform actions in advance

AggregatingWe can bring the same information with less requests

Page 21: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Caching

Time without acceleration – two roundtrips, with acceleration – one roundtrip

Page 22: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Caching What?

File InformationShare InformationServer InformationFile dataFile nonexistenceStream-full/stream-less file

Page 23: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Predicting

Time without acceleration – three roundtrips, with acceleration – one roundtrip

Page 24: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Predicting What?

Pre-fetchingForce requests for complex scenariosSome SMBs (almost) always succeed

Page 25: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Aggregating data

Time without acceleration – two roundtrips, with acceleration – less then one roundtrip

Page 26: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Aggregating When?

Sequential file readAlways issue queries with the most comprehensive info level

Page 27: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Accelerating Single Command

Caching responses:NTCreateAndX, Trans2.QueryPathInformation

Caching SMB_STATUS_OBJECT_NOT FOUND:Caching - folder is fully cached:

Trans2.FindFirst/FindNext

Caching:Trans2.QueryPathInformation with level STREAM_INFO

Page 28: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Accelerating Single Command

Predicting - always succeeds: The following commands are ssumed to always succeed: Close,TreeDisconnect, LogOff

Predicting - generate concurrent requests: Trans2.QueryPathInformation with any level triggers another one with level INTERNAL_INFOTreeConnect request triggers two Trans2.QueryFSInformation requests

Aggregating: Issue Trans2.FindFirst/FindNext with level 262 when possible even if less informative level was requestedRead at least 60K of data even if less data was requested

Page 29: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Accelerating Entire Scenario

Recognize a beginning of a well-known sequence of SMBsUsually starts with NtCreateAndX with a specific access maskContinues with an information request

Common IOCTL functionsCommon SRVSVC and WKSSVC callsFile delete sequence

Ends with CloseFollow the sequence and try answering locally if this information was already cached

Page 30: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Accelerating Entire Scenario (cont)

SMB1 Example: IOCTLWe can locally answer on the following SMB sequence

“NtCreateAndX” with access mask – 0x100080“NtTrans.Ioctl” with function 0x30“Close”

This scenario, when accelerated, completes in zero round-trips

Page 31: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Accelerating Entire Scenario (cont)

SMB2 Example:Deleting a fileWe can locally answer on the following SMB sequence

“Create” with access mask – 0x10080“SetInfo” with type FILE_INFO and with level: FILE_DISPOSITION_INFO“Close”

This scenario, when accelerated, completes in just one round-trip

Page 32: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

CIFS Acceleration Experience

Page 33: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

CAX – CIFS Accelerator

For any network with latency and/or limited bandwidthfrom satellite and long-range networks…… to DSL/Cable links

Transparent to user – preserves file sharing namespace semanticsVPN supported on some platformsSMB2 support pendingSigned traffic support pending

Page 34: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

CAX – CIFS Accelerator (cont.)

Embedded solutionCan be integrated into complex appliance

Scalable solutionsConsiders resource limitationsDisk or memory only cache

Client-side solutionCAX works on the LAN side onlySeamless maintenance

Page 35: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Macro scenarios

CAX accelerates any SMB scenario

CAX is optimized for the most common scenariosFolder browsing

The very first show of the share root folderDrill-down inside a subfolderStepping back to the parent folder

Big file upload/downloadCopying files using Windows Explorer

MS Office document Open/Save/SaveAsMS WordMS ExcelMS PowerPoint

Page 36: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Performance

MS Word File Open Scenario:

Client-side capturetaken on satellite link simulator (RTT: 800 msec):

Upper graph: ~200 sec without acceleration

Lower graph: ~50 sec with acceleration

Page 37: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Performance (cont)

MS Excel 2003 SaveAs scenario:Server-side capture taken on satellite link simulator (RTT: 1 sec).The capture shows high multiplexing -several SMBs are packed into one TCP frame

37

Page 38: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Performance In Numbers

Case No acceleration

VFS CAX

Word 2003Open

126 sec 40 sec 44 sec

Excel 2007Save

795 sec 45 sec 48 sec

PowerPoint 2007SaveAs…

794 sec 104 sec 43 sec

Measured on satellite link simulator:Latency – 1 second RTTBandwidth – 1Mbit/sec

Cold start, ~1Mbyte files

Page 39: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Performance In Numbers (VPN)

Case No acceleration

CAX for Windows

Word 2003Open 2.3MB document

56 sec 20 sec

Measured on DSL home network with bandwidth: Client:Download – 4,000 Kb/sUpload – 400 Kb/sServer:Download – 3,000 Kb/sUpload – 1,000 Kb/sLatensy ~0

Case No acceleration

CAX for Windows

Word 2003Open 2.3MB document

240 sec 25 sec

Measured on SNIA Conf. network with server in VS headquarters, Israel.Client:Download – 3,000 Kb/sUpload – 3,000 Kb/sServer:Download – 3,000 Kb/sUpload – 1,000 Kb/sLatency ~250ms

Page 40: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Platforms

Page 41: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Platforms

CAX embedded into communication equipmentRouterL2 switch/bridgeMore

Personal solution - CAX for WindowsRuns on client machineSupports VPN

Page 42: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Differences Between Platforms

Embedded into communication equipment

Personal solution

Shared cache V

VPN support V

Source transparency V Not applicable

• Source transparency requires switching ports

Page 43: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Q & A

Page 44: CIFS Acceleration Techniques · Folder browsing The very first show of the share root folder Drill-down inside a subfolder Stepping back to the parent folder Big file upload/download

Storage Developer Conference 2009 © 2009 Insert Copyright information here. All rights reserved.

Thank you