In his previous posts, Gabe introduced networking's QoS team and touched upon some of the areas we're focused on. Over the next few months, we'll present some of the technologies we've been building. Before we look at these, I'd like to cover some of the existing QoS concepts/standards/mechanisms/technologies. That'll be our base for further discussions.
At its simplest, networking elements treat all packets the same way. The switch in your closet at home treats the packets from your computer the same way as those from your roommate’s computer. The first approach to QoS is to change this: get the network to favor some packets. True, this is not the only meaning of the word QoS but it's what a lot of people think of.
Why do they want this?
All of these center around the same theme: all scenarios are not equal.
Going back to this first approach to QoS, you need a few things to get the network to prioritize packets. Here are some of them:
Let's look at the first item in this list. How does your router know which are the special packets?
Each approach has its advantages and disadvantages. The first doesn't require you to fiddle with your computers. But does your router really know more about the traffic your application is sending than your application itself? The second lessens the complexity of your network equipment (in addition to being less CPU intensive for it). But how does your router know if it can trust the color? How do you, the owner of this equipment, prevent abuse? If it was known that purple traffic “goes faster”, wouldn't everyone always use purple?
This brings us to an interesting realization. In this approach, QoS does not make more bandwidth available. It only changes the way existing bandwidth is distributed amongst the consumers.
My follow up entries will look at ways to color traffic. I'll cover how these tie in with Windows. I'll also discuss some of the issues people often are unaware of.
- Mathias