Interoperability Tools for CIFS/SMB/SMB2 Paul Long and Simon Sun Microsoft
Who are we? Paul Long Technical Evangelist Windows Interop Team Simon Sun Software Design Engineer Protocol Engineering Team Microsoft China 2
Overview of Interoperability Tools Open Specifications Network Monitor Spec Explorer Interoperability Test Suites 3
Open Specifications Windows Client/Server Office SharePoint Exchange SQL File Formats MSDN Support Forums File Access Services MS-FSSO - Overview MS-CIFS MS-SMB MS-SMB2 MS-FSCC Network Monitor Parsers Interoperability Test Suites 4
Network Monitor 3.4 - UI Accurate Parsers based on Open Protocol Specifications 5
Network Monitor 3.4 - UI Conversation Tree: Filter Traffic by Clicking on node 6
Network Monitor 3.4 - UI Rich Filtering and Colorization of Frames 7
Network Monitor 3.4 - UI Frame Annotations to describe frame behavior 8
Network Monitor 3.4 Input Sources UI and NDIS Capture Driver NMCap Command Line Tool. Event Tracing for Windows Using NetSh, Logman PCap TCPDump, Wireshark, etc i.e. NetSh Trace Start Scenario=FileSharing Capture=Yes 9
Network Monitor 3.4 - API API Capturing Parsing Experts Interoperability Test Suites Top Users Top Protocols SSL Decrypt Simple Search TCP Analyzer 10
Network Monitor 3.4 - Interop System Documents - Annotated Traces for Various Scenarios http://sysdoccap.codeplex.com/ MS-FSSO_S3FindFileInDomain.Cap MS-FSSO_Scenario_Captures_v3_0.zip File Sharing System Docs Find File In Domain Find File In Workgroup Config Server 11
Network Monitor 3.4 - Interop Why read the Open Protocol Specifications when Network Monitor can do the first pass for you? These two built in Standard Filters can help find problems with SMB implementations 12
Network Monitor 3.4 - Interop How can I locate documentation based on a trace I m looking at? These two options jump to the NPL Parser source code. Look at the top of the file for Open Specification References 13
Spec Explorer - Overview 14
Conformance Testing 1. Start with Spec Conformance Implementation responds only with what the Test expects Specification Conformance Error Implementation does the unexpected (discrepancy) Test 3. Write Tests to check Conformance Implementation 2. Create Implementation from Spec 15
Conformance Testing Specification 1. Start with Spec Failure of conformance indicates either the Specification, Implementation, or Test is Incorrect. Test 3. Write Tests to check Conformance Implementation 2. Create Implementation from Spec 16
Spec Explorer Model-Based Testing Author Specifications Generate Model Test Feedback Test Sequence Inputs Expected Outputs Issue Verdict Observe Control Implementation 17
Spec Explorer Model-Based Testing Generate Model Author Specifications Spec Explorer allows you to update the model and generate new tests automatically! Tests Interoperability Test Suites Expected Outputs Issue Verdict Observe Control Implementation 18
Interoperability Test Suites 19
Scope Validate Docs against Implementation Technical Document Validate Server Black Box/Clean Room Verify Conformance Accuracy Usability Feedback via TDI (Technical Document Issue) 21
Scope Test Interoperability Microsoft Protocol Plugfests Interoperability IO Labs http://www.microsoft.com/openspecifications/appliedinterop/ 22
Two Test Approaches Model-Based Testing Stateful Protocol with Complex Logic Transitions Complex Field Combinations Easy to Maintain the Test Cases Traditional Testing For Special logic 24
ProtoDoc Quality Assurance Process Technical Docs = Team Review TDIs Study Phase TDIs Strategy Review Plan Phase TDIs Plan Review Design Phase TDIs Design Review Implementation TDIs Test Execution Final Review
Interoperability Test Suite Arch SUT Control Adapter Interface PowerShell Interactive Adapter Interoperability Test Suite Test Case generated by Model Tradition Test Request Response Request Response SUT (System Under Test) Adapter Interface SDK Traditional Adapter Interface 26
In-depth Discussions Network Monitor 3.4 Interoperability Test Suites Plugfest Details CIFS/SMB/SMB2 Plugfest runs from Sept 19th-23rd Latest Windows Software and Interoperability Test Suites from Microsoft Technical Support from Microsoft Engineers 27
Questions?? 28
Network Monitor Resources Network Monitor 3.4 Download http://go.microsoft.com/fwlink/?linkid=103158 Network Monitor Forums http://go.microsoft.com/fwlink/?linkid=151800 Parser Updates for CodePlex http://go.microsoft.com/fwlink/?linkid=125105 Network Monitor Experts http://go.microsoft.com/fwlink/?linkid=133950 Open Specifications http://www.microsoft.com/openspecifications/ 29
Spec Explorer Resources Spec Explorer http://msdn.microsoft.com/enus/devlabs/ee692301.aspx Model-Based Testing http://msdn.microsoft.com/enus/library/ee620469.aspx 30