12

Setting 'policy based QoS' on Windows 10 does not apply the DSCP value to outgoing traffic. I want to be able to set the value of DSCP traffic for certain processes.

Using gpedit.msc group policy editor, I created a policy under Computer configuration > Windows Settings > Policy-based QoS > and set a DSCP value of '10'. I tried with or without an executable name. Whatever I do, looking at the traffic in NetMon shows a DSCP value of 0.

This worked under Windows 7 after applying the 'do not use NLA' registry key https://support.microsoft.com/en-gb/kb/2733528

However, even with this added, the DSCP is always 0.

Policy settings

Netmon showing DSCP still zero

Do not use NLA registry setting

Paul George
  • 231
  • 1
  • 2
  • 6
  • have you found a solution yet? – Nemo64 Nov 26 '16 at 23:21
  • @Nemo64 no, still don't have solution. I haven't explored it much since. – Paul George Nov 28 '16 at 10:40
  • Did you set `HKEY_LOCAL_MACHINE\Software\Microsoft\RTC\Transport\QoSEnabled DWORD 1`? – kay27 Jan 10 '17 at 23:05
  • I've since found that with a Window 10 instance running in VMWare Fusion, that this settings DID allow DSCP to be set in this way. Looking at regedit and the previous screenshot shows they are the same, so I'm unsure what has changed. There was some confusion in how I was creating the STRING key value, but nonetheless, the screenshot shows them to be the same. – Paul George Feb 01 '17 at 13:29
  • Are you sure the policy is being applied to the machine? gpresult /Scope User /v gpresult /Scope Computer /v – David Bogar May 05 '17 at 13:32
  • Is the computer domain joined? – Elliot Huffman Jan 30 '18 at 10:57
  • Since posting that I have moved on to a Windows 10 Pro PC with the same problem, it is not domain joined. – Paul George Jan 30 '18 at 16:08

1 Answers1

2

The QoS policy created by gpedit only creates policies for the "domain" network profile. To create a policy for a different network profile, use the cmdlet New-NetQoSPolicy. Be aware that in Win10 1709, QoS policies created via PowerShell cannot be viewed, edited, nor deleted via gpedit.

That said, I was only able to get the QoS policy to tag packets in a properly configured domain. No matter what I tried, I could not get my Win10 machine (and the NLA service) to recognize it should be using the domain network profile. Fortunately, another developer noticed that my DNS was not configured with a reverse lookup zone. After resolving that issue, the QoS tagging worked on both my Win10 and Win7 clients.

Andrew Schulman
  • 8,561
  • 21
  • 31
  • 47
mdrissel
  • 21
  • 2
  • Does using the domain network profile require belonging to an active domain with domain server? – Paul George Feb 04 '18 at 12:58
  • I've been able to get both DSCP values and maximum rate limits working by specifying `-NetworkProfile All` in the PowerShell cmdlet to force it to apply to all connections. 'Public' and 'Private' may also be useful. Despite the kB in the group policy dialog above, the raw rate is *bits* per second, not kilobytes per second. – GreenReaper Feb 12 '18 at 00:19