[HOWTO] Mapping QOS for Microsoft Team

Since there have been numerous requests around Microsoft Teams QoS matching, I would like to post a solution. It’s pretty simple after all. Everything is described here: Implement Quality of Service (QoS) in Microsoft Teams clients - Microsoft Teams | Microsoft Learn

My recommended approach:

  1. Check the registry to see if port-ranges are already defined. This is the case with my employer-provided notebook
  2. If nothing is set yet, follow the link above to set your QoS parameters. This was the case for my personal notebook. To make it simple, I used the same port ranges as in 1. (and as recommended on the linked page). A drawback, if you want, is that one has to install the Teams client. It doesn’t work with the web client.
  3. Set a simple port-matching rule in IPFire. Class 102 in my setup.

Good luck!


MicrosoftTeams-image (10)


hello and thanks for the information, but just to understand better, I’d like to point out that I’m not a big expert on the QoS system
but from what I know I expected to also have to make rules in the 202 class

Good point. In a nutshell, from my point of view, QoS classification and shaping have to be applied at the traffic egress, not the ingress.

Let me expand a bit (I know there are other views, but that’s another topic), and apologize for missing that aspect in the original post.

One would typically have more bandwidth in the local network than the internet service. All the downlink traffic shaping is done by the ISP, so if the shaper discards packets, thus causing a bad conferencing experience, there is nothing you can do locally.

One could argue that TCP will kick in if IPFire starts to drop DL packets, but it is a long tail until the central Teams service reacts. In particular, with today’s common service bandwidths of n x 100 Mbps downlink, local DL QoS makes very little to no difference for the particular use case of optimizing the video conferencing experience.