Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team...

26

Transcript of Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team...

Page 1: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.
Page 2: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

Windows Logo Program Tests for NDIS 6.20

Eric LiTest LeadNetworking Ecosystem [email protected]

Michael NanakulTest LeadNetworking Ecosystem [email protected]

Page 3: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

Agenda

• Updates to existing tests

• New tests introduced

• Importance of early testing

• Tips & Tricks for using NDISTest

• Q&A

Page 4: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

Updates to Existing Tests

• Receive Side Scaling/NetDMA• Support for more than 64 processors

• Wake-on-LAN Pattern• Multi-Path Exerciser

Page 5: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

Receive-Side Scaling/NetDMA

• NDIS 6.20 now includes RSS revision 2• Revision 2 is required for NDIS 6.20 miniports

• Logo tests have been updated to use revision 2 on NDIS 6.20 miniports and fall back to revision 1 for earlier versions of NDIS

• Similar change were made to NetDMA tests with the new DDI to support more than 64 processors

Page 6: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

Wake-On-LAN Pattern

• We test the following patterns for Windows 7 Logo• TCP SYN packet (IPv4/IPv6)• LLMNR v4/v6• NetBios name query• Random data, 128-byte size• Random data, random size

Page 7: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

Multi-Path Exerciser (MPE)

• Designed to test the miniport driver reliability by stressing multiple control paths

• MPE spawns multiple threads for executing various tests• Send-Receive, Checksum Offload, Query OID, Disable/Enable,

Large-Send Offload, Standby/Resume, etc.

• The sequence and types of tests run by MPE is configurable and extensible.

• Triaging failures• Review HTML log files first• Reference event tracing for Windows (ETW) log files (using

ETWLogReport utility) for further details

Page 8: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

New Ethernet Tests

• Receive-Side Throttling (RST)• Wake on Media Connect• Low Power Offloads• Virtual Machine Queues (VMQ)

Page 9: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

Receive-Side Throttling

• What is RST?• Logo requirements

• NDIS 6.20 miniport drivers support RST

• How RST logo tests work• Uses Event Tracing for Windows (ETW)

• Pass/Fail criteria• Number of packets indicated per DPC

Page 10: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

Wake on Media Connect

• What is Wake on Media Connect?• Logo requirements

• Wake on Media Connect is optional

• How the Wake on Media Connect tests work• Uses new NDISTest model-based framework

• Available hot parameters• Timer duration

• Pass/Fail Criteria• Connecting media triggers a device wake-up

Page 11: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

Low Power Protocol Offloads

• What are Low Power Protocol Offloads?• Logo Requirements

• Support for this feature is optional

• How the tests work• Test execution flow• Logic exists on the support machine

• Pass/Fail Criteria• The hardware must respond while in low power when enabled

by the OS• The responses must adhere to protocol standards

Page 12: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

Virtual Machine Queue

• What is VMQ?• VMQ support is optional

• Logo requirements if supported• Support at least 4 queues with filters

• Support at least 16 queues with filters by 2010• MSI-X support is mandatory• MAC address filtering must be supported in hardware• Per-queue receive indication must be supported• Look-ahead split support is optional

• Will be mandatory in 2010• If present, must support MaxLookAheadSplitSize  >= 14 and

MinLookAheadSplitSize  <= 128

• How VMQ logo tests work• VMQ test protocol header

Page 13: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

Virtual Machine Queues Continued

• Multiple test scripts• OID handling• Send/receive functionality (MAC & VLAN filtering)• Lookahead split/shared memory• Scalability

• Pass/Fail Criteria• Behave according to the WDK documentation• Perfect classification for unicast packets• Packets indicated on the correct processor• Proper lookahead split and shared memory usage

Page 14: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

Importance of Early Testing

• Use NDISTest to verify the functionality of hardware and software• Avoid costly re-spin of silicon • Catch driver problems earlier in the development cycle

• Leverage the Logo preview releases to get familiar with the new and updated tests

• Get it “Logo ready” to avoid ship-stopping situations

Page 15: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

Run NDISTest Standalone

• Less complex than using Device Test Manager• Most tests run on a single machine

• Exception: Wake-On-LAN, Low Power Protocol Offload

• How-to:• Copy the whole directory from below:

• NDISTest 6.5• \\<dtm contoller>\tests\<arch>\nttest\nettest\ndis\ndistest.net

• NDISTest 6.0• \\<dtm contoller>\tests\<arch>\nttest\nettest\ndis\ndistest

• Run the NDISTest executable • Note: NDISTest installs and configures kernel-mode drivers and

must be run with administrative privileges

Page 16: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

Demo: NDISTest Advanced Options

Page 17: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

Call to Action

• Consider logo requirements when designing your hardware and device driver

• Test early in your development cycle• Leverage NDISTest

• Attend other NDIS talks during DDC

Page 18: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

Resources

• NDISTest Feedback alias: [email protected]• NDIS 6 Feedback alias: [email protected]• Windows Logo Program

• Feedback alias: [email protected] • Website: http://www.microsoft.com/whdc/winlogo/default.mspx

Page 19: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

Q & A

Page 20: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

Appendix

Page 21: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

Tips & Tricks for Using NDISTest

• NDISTest advanced options• Enable more verbose logging and breakpoints

• Hot Parameters• Change test behavior

Page 22: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

NDISTest Advanced Options

• Why this is beneficial• Available in the ViewOptions menu• Settings for controlling multiple aspects of NDISTest

• General settings• Protocol options• Test configuration (WLAN, WWAN)• Logging options• Multipath Exerciser (MPE) options• Switch Management

Page 23: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

NDISTest Advanced Options: General

Page 24: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

NDISTest Advanced Options: Protocol

Page 25: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

NDISTest Advanced Options: Test Log

Page 26: Windows Logo Program Tests for NDIS 6.20 Eric Li Test Lead Networking Ecosystem Team Eric.K.Li@microsoft.com Michael Nanakul Test Lead Networking Ecosystem.

NDISTest Hot Parameters