VMware vSwitch and 802.1p CoS Value
One of my readers opened another can of VMware vSwitch worms. He sent me this question:
If a VM were to set a COS value, would the vSwitch reset it to 0 as part of its process of building the dot1q header?
The nasty detail (as you probably know) is that 802.1p CoS value resides in the 802.1q (VLAN) tag.
I wasn't able to find anything within the vSphere documentation or VMware knowledge base that would help me answer this question, so I'm guessing the answer is "it doesn't work." vSwitch seems to expects either untagged VM-to-vSwitch link, in which case the 802.1q tag with VLAN set to zero would throw it off, or a tagged link, in which case the VM has to set the VLAN ID as well. If you have a better answer, please share it in the comments.
On the other hand, vSphere 5.5 can set CoS value based on DSCP field – on the distributed vSwitch. Yet again, we have to pay a hefty tax (Enterprise vSphere license) to get the functionality that has been available in low-end physical switches and Linux-based virtualization solutions for years. No wonder the application developers stopped trying to influence the network behavior.
You can probably guess how much it irritates me when VMware marketing tries to tell us that the network stands in everyone's way instead of giving people the tools they need to get their job done correctly.
No comment on the licensing. This is business decision - you also make your webinars payware.
Ivan didn't sell webinars with some of the important parts bleeped out and "come pay us $4000 extra per server in your datacenter, if you want to come find out what you missed".
Conversely, a lot of virtualization farms treat the last mile (vswitch) as a dumb pathway. Everything should be line rate at that point with any-to-any availability. COS and QOS in general should not apply as there is no contention.
I agree above, that applications should rarely declare their own values. We all know that they will select the priority queues as theirs is the most important. We end up back at zero.
What use case does this really solve?
COS/QOS make sense at the border or across the WAN. Inside the DC, where VMware resides, it makes far less sense.
It's a shame that VMWare has done this has gotten away with it. Sad truth is most of IT is run by folks that really don't care about the details.