First, to those claiming it's a setting... I obviously am not with Blizzard, but I can say with confidence that it has nothing to do with settings, video lag, or anything like that... This is a Client/Server De-Synchronization that's happening. Something doesn't quite line up when the Server and your game client are communicating. Whether it's an expected number, network packet, a skill readiness flag, or something else... SOMETHING isn't matching on one side or the other and the two disagree and viola, you're disconnected. Most of the time it's because of an "anti-cheat" type thing in place that prevents modification of things, such as life numbers, mana count, stat numbers, etc.
Now, to it being related to a specific skill, I don't think that's true either, I don't think it's specifically related to Whirlwind, but more the Generation or Client/Server Synchronization of the amount of Fury available and the process of spending of it.
The reason I say this is because if I watch my fury close enough and be a little more careful about using skills when I don't have enough Fury to do so, I don't get disconnected. (This is very hard to do, mind you, but not at all impossible)
Now, if I run around purposefully holding down WW (and even using it to generate Fury) whenever possible and mashing on Sprint, (More than normal) I get disconnected before I get to 5 stacks of NV, guaranteed. Basically, purposefully spending Fury, AS MUCH as possible and as often as possible, can cause this to happen on a regular basis.
The reason, I believe it's happening more specifically with WW, is because WW is a "constant" drain on Fury, and the server and client both expect it to drain at a certain rate.
I'm going to give an example... you're using Sprint and WW... Now, we know that Sprint takes 20 Fury, we also know that WW takes 16... so between the two, it's 36 Fury... Now, your game client thinks you have 35 Fury, the Server thinks you have 36... the WW will continue because you're in the middle of it, it then happens to come down to Sprint... your game client says "no" to Sprint, but the Server says "yes" to it and adjusts your speed accordingly, now you're out of sync, and your movements are no longer registering as expected... Or vice versa... your client thinks 36 and the server thinks 35 Fury is available... your client says "yes" to Sprint, server says "No" and again you've moving at an "unexpected" rate...
This is just one example... There's MANY possibilities here... I'm not saying this is what's happening, but it definitely seems like a Fury Generation/Spending/Synchronization problem.
If there were another skill that used Fury in the same manner, we'd probably have the same issue here. But none of the other Barbarian skills use the same "drain" type of Fury spending, so there's no way to fully test the theory from a "normal" client...
I suggest to the developers to look at the following algorithms and checks/balances: Fury Generation, Fury Client/Server Synchronization, and the Anti-Cheat/Hack code you have in place for it.
My personal guess is that it's some form of Anti-Cheat/Hack thing in place that is SUPPOSED to disconnect the client when it's detected. (For example, trying any of the packet related hacks in Diablo 2 will immediately disconnect you from the game) And somehow we're tripping it by like trying to spend "too much" fury, and the client succeeds in spending it while the server fails. (or vice versa) Thus de-synchronizing and ultimately disconnecting said client.
Edited by Migs#1845 on 9/11/2012 5:07 PM PDT