On our office network (26 people), some users have complained of poor Skype call quality, particularly in the upstream direction. I wanted to ask, how do I identify Skype traffic, considering that it uses a random port, in order that I might prioritise it at the router level?
You can match skype traffic in a class-map using the configuration below on Cisco routers. To do this, the router uses a feature called NBAR (it looks at layer 4 and higher information in the packet to determine the application.)
class-map priority match protocol skype
Once matched, you can then give that class higher priority like this:
policy-map outbound class priority priority 2000 ! Gives a dedicated 2Mbits/sec interface Gigabit0/1 description Outside interface service-policy output outbound
I'm sure other vendors offer similar functionality, but I can't really say for sure.
If your computers are on a Windows domain , you can use group policy QoS settings to assign DSCP values to traffic generated by the Skype executable file (skype.exe)(actually, you can do the same with local policy on a workgroup computer, you just might need a registry key added too). DSCP 46 I believe is what's usually used for expedited forwarding. Then you'd need to get QoS setup on any switches and routers the traffic will traverse so that it will honor the DSCP ef markings.
- Audio: EF (Expedited Forwarding, DSCP 46) - low delay, low loss and low jitter
- Video: AF41 (Assuring Forwarding 41, DSCP 34) - class 4, low drop probability
Classifying by port is wrong
Others might suggest trying to classify Skype traffic by ports (to the point that they might even complain that Skype uses random ports that make it more difficult to find).
Obviously trying to classify Skype traffic by the ports it communicates on is wrong, because then you would mistakenly classify both audio and video into the same priority class - thus defeating the entire purpose of QoS.
Classifying by Skype.exe is wrong
Others might also suggest using QoS policy (
gpedit.msc) to apply a DSCP policy to
Skype.exe. This, again, is also wrong - as you'll mistakenly classify both audio and video as the same priority.
Skype for Business only
Unfortunately it is only Skype for Business that tags it's different classes of traffic.
Microsoft is petty and petulant, and they don't specifically disable the transparent feature that can only help people in the free version.
For audio and video Cisco recommends:
| Traffic | DSCP | Notes | |-------------------|----------------|----------------------------------| | Voice | EF (DSCP 46) | No packet loss, 150 ms latency | | Interactive video | AF41 (DSCP 34) | Packet loss 1%, 150 ms latency | | Streaming video | CS4 (DSCP 32) | Packet loss 4-5%, 4-5s latency |