310 likes | 576 Views
Quality Windows AV Experience (qWAVE) and Network Quality of Service (QoS). Gabe Frost Program Manager US Transports & Connectivity Windows Network Developer Platform Microsoft Corporation. Session Outline. Microsoft view of network QoS Home QoS scenarios Introduction to Problem
E N D
Quality Windows AV Experience (qWAVE) and Network Quality of Service (QoS) Gabe Frost Program Manager US Transports & ConnectivityWindows Network Developer Platform Microsoft Corporation
Session Outline • Microsoft view of network QoS • Home QoS scenarios • Introduction to Problem • Why enabling scenarios is difficult • Achieving Scenarios • Windows Platform Support • Call to Action
Session Goals • Should leave this session with the following: • Better understanding of user scenarios within the home where QoS is important • Better understanding of wireless audio/video (AV) streaming challenges • Knowledge of network QoS standards • Knowledge of why diagnostics and coexistence is essential for the home AV ecosystem
Windows Connect NowThe Windows Networking and Device Connectivity Platform • Effortless • “It Just Works” experience for users • Simple protocols, APIs and DLLs for partnersand developers • Secure and Reliable • Built-in security to enable higher user confidence • Make reliability a fundamental part of the solution • Foundation for the Future • Continue enabling compelling new user experiences
Windows Connect Now Programs For questions email wcn @ microsoft.com
Windows Connect Now Technologies Applications Devices Class APIs (Digital Still Cameras, Portable Media Players, Printers, etc.) WMC, Media Renderers, MCE Function Discovery qWAVE Network Topology WCN Configuration PnP-X MTP/IP, RDP, other WS-D, UPnP IP Network (IPv4, IPv6) Ethernet/Wireless Windows Connect Now Technologies
Microsoft View of Network QoS • Key principle: network QoS provides better user experience • Prioritizing network traffic isn’t enough: • What if network devices don’t support QoS? • Must understand network conditions and adjust to them • Network agnostic technologies are important
Home QoS Scenarios • Audio/Video (AV) distribution within the home • Media Center PCs & Extender devices • Windows Media Connect • DLNA media servers/players (Digital Living Network Alliance) • WAN applications • Gaming (Xbox) • VoIP (Voice over IP) • VoD (Video on Demand) • Non-AV applications • E-mail • Peer-to-peer, etc.
Home QoS Scenarios Family Room Den Media Center Extender (MCX) HDTV Media Center PC HDTV Media Center Extender Kid’s Room Master Bedroom Concurrently sourced content from Media Center PC • HDTV to WiFi connected MCX in family room • HDTV to Ethernet connected MCX in master bedroom
Home QoS Scenarios Family Room Den Print Media Center Extender (MCX) HDTV Media Center PC HDTV Media Center Extender Longhorn PC Kid’s Room Master Bedroom Neither ongoing TV experience is affected by kid’s large term paper sent to WiFi connected printer
Home QoS Scenarios Family Room Den Media Center Extender (MCX) Voice HDTV Media Center PC Game HDTV Media Center Extender Longhorn PC Xbox Kid’s Room Master Bedroom VoIP call from den is not affected by: • Ongoing TV streams • Online game in kid’s room
Introduction to Problem: WiFi Bandwidth • Wireless is dominant home network technology • Bandwidth is unstable! • Steady-state bandwidth changes during course of day • e.g. Higher evening & weekend use of neighbor WiFi, etc. • Instantaneous-state bandwidth can change drastically • Radio frequency (RF) interference: Microwave oven, cordless phone, etc. • Need to inform app about bandwidth changes real-time
Introduction to Problem: WiFi Bandwidth • Bandwidth is unstable! • Room characteristics affect available bandwidth • Furniture, walls, floors, etc. • 802.11b station on 11g network will lower bandwidth even if not transmitting • Large amount of UDP traffic can cause commercially available APs to do bad things • Hang, stop transmitting packets, etc. • Need to protect network from being stressed too far But wait, it gets worse…
Introduction to Problem: Moving Obstructions 18.5 Mbps 9.2 Mbps 19 Mbps constant bit rate (CBR) TCP stream • Commercially available 802.11a AP • Person moving around the room during AV stream • 802.11a is not as susceptible to RF interference; but… • Room characteristics and obstructions still major issue But wait, it gets worse…
Introduction to Problem: Multiple Streams What about multiple streams? • QoS priority protects AV from data, not from other AV • Need way to protect AV streams from one another • Not much WiFi bandwidth, so AV contention is likely • Need way to inform user why their stream isn’t working • Need way for user to specify which stream is most important • TCP vs. UDP • Some media servers stream AV with TCP, others with UDP • TCP will ALWAYS back off in the presence of congestion • UDP has no flow control, so blasts away • Need way to protect TCP AV traffic from UDP AV traffic
Achieving Scenarios • To achieve scenarios, we have to think about: • Interoperability (standards) • The role of policy • Coexistence with multiple AV sources • Solution to wireless challenges
Achieving Scenarios: QoS Standards • IEEE 802.1p (Ethernet layer-2 tag) • Priority field in 802.1Q VLAN tag • Possible values defined by IEEE 802.1d Annex G • Must be supported by source NIC & network switches • WMM (802.11 Wireless Multimedia) • Layer-2 priority; similar to Ethernet 802.1p • 4 possible values (BG, BE, VI, VO) • Must be supported by both NICs, and WLAN AP
802.1 What? • 802.1p priority defined within the 802.1Q VLAN tag • Possible priority values defined by 802.1d Annex G 802.1d Annex G 0 Best Effort 3 Images 5 AV 6 Voice 7 Network Control 802.1p Ethernet Frame 802.1Q
Achieving Scenarios: QoS Standards • DSCP (layer-3 DiffServ Code Point) • Field in IP header (network medium agnostic) • Must be supported by infrastructure devices • WLAN AP and router • Digital Living Network Alliance QoS Guidelines (DLNA v1.1) • Defines what layer-2 and layer-3 tags to use for traffic types • UPnP QoS 2.0 (Universal Plug-n-Play) • Defines messaging for QoS priority management
Achieving Scenarios: Role of Policy • Used to arbitrate conflicts • Need way for user to specify what is most important • Family room media player more important than device in kid’s room • Internet traffic from Dad’s app is more important than kid’s apps • Need rich policy; more than SRC/DST IP address & port num • Home user doesn’t understand technical information • Username, device name, app name, etc. • Enables rich user experiences • Does not solve insufficient bandwidth • Can’t create new bandwidth
Achieving Scenarios: Coexistence • Many devices from myriad platforms have to peacefully exist in the home • UPnP QoS 2.0 Device Information Sharing • Devices notify when starting/stopping an AV stream • Other devices know when to play nice (coexistence) • Devices (e.g. AP) expose info about network traffic they know about • Let user know why AV stream is broken (diagnostics) • Rich info helps user make policy decisions • Doesn’t protect AV streams from each other • Apps should use the event messaging to better coexist
Achieving Scenarios: Wireless Challenges • Wireless is volatile; each host has a different experience of the network • Room characteristics (walls, floors, furniture) • Moving obstructions (people, doors) • Interference (neighbor WiFi, cordless phone, microwave) • Centralized solutions for admission control are meaningless for WiFi • Necessary to measure end-to-end bandwidth • Solution: Microsoft qWAVE platform
Windows Platform: qWAVE • Quality Windows AV Experience • Next-generation Windows codenamed “Longhorn” QoS API • Provides transparency to all home QoS standards • Ethernet / WiFi layer-2 & layer-3 packet priority marking • DLNA QoS guidelines • UPnP QoS 2.0 messaging (post-Longhorn update) • Gives home media apps access to new QoS technologies…
Windows Platform: qWAVE • Detect & monitor LAN bandwidth • Used for run-time feedback so apps can dynamically adjust to network bandwidth changes • Hosts can transrate to quickly adapt to network changes • Discover QoS capability of home network • Legacy devices sometimes drop packets or crash • Distributed admission control for fair & consistent usage of network priority • Multiple media sources require distributed coordination • If insufficient bandwidth, stream can start, but not with priority • Only admitted streams get high priority • Diagnostics enables user to distinguish problems • Provide user with actionable info to take steps to resolve problems
Windows Platform: qWAVE • Shipped in Windows XP Media Center 2005 • Technology has matured through ship cycles • Targeted usability studies have influenced scenarios • Broadly available to developers in Longhorn Beta 1 • Solution for applications that: • Distribute/stream multimedia & real-time content • Want network priority (packet marking) • Are affected by wireless volatility
qWAVE Architecture AV Streaming Protocols RTP / RTSP / HTTP Physical Buses & Networks Ethernet / Wireless Applications / Services Distributed AV Application Interfaces Presentation Framework Drivers / OS Components / Core Media Components QoS Admission Control Diagnostics Feedback Runtime Enforcement ProbeGap Initialization % utilization Local Packet Pair Throttling Route Check Overload Marking Discovery Devices
Call To Action • Hardware • Support 802.1p tagging for Ethernet (802.3) products • Enabled by default • Support WiFi WMM certification for 802.11 products • Support NDIS 6.0 OIDs • Enable/disable Interrupt Moderation • Wireless STATISTICS • For WLAN AP and router products: • In addition to 802.1p & WMM, support DSCP tagging • WCN Link Layer Topology Discovery (LLTD) • With timed-probe extension
Call To Action • Software • Use qWAVE on Longhorn • All-in-one solution, including wireless challenges • Transparently enables/complies to myriad QoS standards • Use DLNA 1.1 guidelines (QoS is defined in 1.1) • Implement UPnP QoS 2.0 in your products • WLAN AP, gateway device, AV devices • Diagnostics, coexistence, and rich policy effort • qWAVE targeted to enable in post-Longhorn update
Community Resources • Windows Hardware & Driver Central (WHDC) • www.microsoft.com/whdc/default.mspx • Technical Communities • www.microsoft.com/communities/products/default.mspx • Non-Microsoft Community Sites • www.microsoft.com/communities/related/default.mspx • Microsoft Public Newsgroups • www.microsoft.com/communities/newsgroups • Technical Chats and Webcasts • www.microsoft.com/communities/chats/default.mspx • www.microsoft.com/webcasts • Microsoft Blogs • www.microsoft.com/communities/blogs
Additional Resources • Email • qWAVE API can be found in Longhorn SDK • Related Sessions • Network Topology: Connectivity Visualized (discusses LLTD) qosapi @ microsoft.com