Sure there are edge cases, but I fully support a decision that if it comes to dropping a call or interrupting someones youtube watching, the priority should go to the call. Video calls are an interesting case, but it seems to me that the audio stream should be given higher priority than the video.
Why should the priority go to the call? You don't know if the person is watching a Youtube video showing how to give someone CPR, and the person is busy dying. Would you prioritise a call from a telemarketer over that? Tele-medicine is just one example. Who decides?
I completely agree with roc that once you start thinking about it, there are just too many holes in the argument for prioritising on type. "Type" can just be a synonym for "provider". There will be nothing to prevent carriers to push new protocols to a non-priority "type", if they don't pay up.
If voip calls get priority, what prevents me from writing a torrent protocol over voip? That would just be a waste of bandwidth. Prioritising will set off a never-ending arms race.
As long as bandwidth is a scarce resource, something will happen. Either there's a well thought out procedure, or it's random. I think we can do better than random.
I argue that a "well thought out procedure" is not possible for such a complex system as the internet. Every kind of procedure that can be thought of will either have holes in the logic, or will be gamed by users and providers in a never-ending arms-race.
Emergent complexity is not "random", although it can be based on elements of randomness.
Nature is an example of a massively complex system that has evolved on elements of randomness, but the system itself is by no means random. And there's no way that it could have been designed with a "well thought out procedure".
But does that mean that a call takes priority over a live video feed? Does talking to your grandma take priority over a live feed of some major world changing event?
The key is to make the entire case moot. That can be done with a combination of software engineering and increasing bandwidth.
the challenge is how do you promote developers to build bandwidth efficient systems, as it seems bandwidth is now a distant thought in the minds of most developers.