August 28th, 2007
Vista MMCSS gigabit throttling a victim of hard-coding, jumbo frames to the rescue!
For the last couple of days I’ve been working behind the scenes with fellow blogger Adrian Kingsley-Hughes, Ed Bott, and Microsoft to get to the bottom of the Vista gigabit throttling effect. This throttling effect occurs when someone launches Windows Media Player and tries to copy files at gigabit speeds. Ed had already deduced the problem to the MMCSS (Multimedia Class Scheduler Service) which is a mechanism designed to protect audio and video from jerking due to CPU starvation if processor intensive tasks like Gigabit network traffic or anti-virus kicks in.
Microsoft responded last Friday that this throttling effect was in-fact “by design” prompting Adrian to post this blog but the response from the ZDNet readers and Slashdot community was not kind to Microsoft. This issue has already fanned the flames of Vista DRM conspiracy theories like the ones peddled by Peter Gutmann. Then the initial Microsoft response further fueled those conspiracy theories and that the inclusion of DRM made it necessary to implement the performance throttling in the first place. The responses in the forums to this “design” were unusually brutal even for Microsoft.
UPDATE 8/29/2007 - My assessment of Microsoft’s initial response is based on my perception that it was inadequate but I may have misrepresented their initial response. Microsoft did say in their initial response that they were thinking about how they were going to address the problem. Their exact words were “Of course, we are already thinking about how we can address this problem, but we are not at a point where we can discuss when that will be available or what form it will take.” I personally thought anything short of explicitly calling it a bug and promising a fix was inadequate and still do, but I should have noted that they were looking at a solution.
Microsoft Fellow Mark Russinovich yesterday morning came out with a detailed technical explanation of the throttling effect and gave candid explanation that this was in fact a bug. Russinovich explained how the hard-coding of network performance rate-limiters was short-sighted and that it didn’t make any allowances for the fact that CPUs are now much faster and have multiple cores. In Russinovich’s own words, “the networking team is actively working with the MMCSS team on a fix that allows for not so dramatically penalizing network traffic, while still delivering a glitch-resistant experience”.
Note: This is the kind of honest response that Vista customers or potential customers want to hear and it wouldn’t have been greeted in the forums with jokes that Vista is “broken by design”. People are fairly forgiving if a Company just owns up to the problem and promises to fix the problem and this is a lesson that every Company should learn. The problem really affected a minority of people a minority of the time but consumers want a product that works all the time in all situations no matter how unlikely they’re going to be affected. Just a simple and honest acknowledgement of the problem and a promise to fix it in a reasonable amount of time goes a long way.
Russinovich explained that network performance was hard-coded to cap at 10,000 packets per second if any MMCSS-enabled application came on (apparently even if no audio or video is being played) and demanded CPU priority. The hard-coded rate limit essentially limits network performance to around 15 MB/sec (megabytes per second) because 1500 bytes per packet times 10,000 packets equals 15 million bytes per second. 15 MB/sec works out to be 120 mbps (megabits per second) and most 10/100 networks top out around 90 mbps while most broadband connections are capped to 1.5 mbps. Even most so-called gigabit NAS (Network Attached Storage) devices have a performance cap of around 120 mbps so very few people will even notice the MMCSS induced throttling in the first place.
<Next page - Gigabit throttling in effect>
George Ou is Technical Director of ZDNet. See his full profile and disclosure of his industry affiliations.










