This tutorial will show you how to configure a QoS group policy on Windows 2012 server.
This tutorial will show you how to limit all the HTTP connection at 50KBytes.
In our example, a web server named TECH-WEB01 will offer web pages using HTTP and HTTPS.
In our example, the web server named TECH-WEB01 will limit the speed of HTTP connections to 50KBytes.
The domain controller is running Windows 2012 R2.
The domain computers are running Windows 7 and Windows 10.
Hardware List:
The following section presents the list of equipment used to create this Windows tutorial.
Every piece of hardware listed above can be found at Amazon website.
Windows Playlist:
On this page, we offer quick access to a list of videos related to Windows.
Don’t forget to subscribe to our youtube channel named FKIT.
Windows Related Tutorial:
On this page, we offer quick access to a list of tutorials related to Windows.
Tutorial – Creating the Active Directory Structure
The following tasks were executed on a domain controller running Windows 2012 R2 with Active directory.
Click on the Start menu, locate and open the Active Directory Users and Computers screen.
On the Active Directory Screen, Right-click the domain name.
Select the option to create a new organizational unit.
In our example, the new organizational unit was named: QoS
Now, you need to move the desired computer to the QoS organizational unit.
In our example, we moved the web server named TECH-WEB01 to the QoS organizational unit.
Tutorial – Creating the QoS GPO
The following tasks were executed on a domain controller running Windows 2012 R2 with Active directory.
Click on the Start menu, locate and open the Group Policy Management tool.
On the Group Policy Management screen, locate the folder named Group Policy Objects.
Right-click the Group Policy Objects folder and select the New option.
Enter a name for your new policy.
In our example, the new GPO was named: QOS – LIMIT HTTP 50KBYTES
On the Group Policy Management screen, expand the folder named Group Policy Objects.
Right-click your new Group Policy Object and select the Edit option.
On the group policy editor screen, you will be presented to User configurations and Computer configurations.
We will change only the Computer configurations.
We don’t need to change any User configuration.
On the group policy editor screen, expand the Computer configuration folder and locate the following item.
• Computer Configuration > Policies > Windows Settings > Policy-based QoS
Right-click the Policy-based QoS object and select the option: Create New Policy.
On the new screen, you need to perform the following configuration:
• Policy Name: QOS – LIMIT HTTP 50KBYTES
• Specify DSCP Value – NO
• Specify Outbound Throttle Rate: 50 KBps
On the next screen, select the option named: This QoS policy applies to All applications.
On the next screen, you need to perform the source or destination IP address configuration.
In our example, we kept the default configuration and clicked on the Next button.
Now, you need to specify the type of communication that must have the bandwidth limited.
In our example, we need to limit the communication from the Web server to any client.
The web server uses the TCP protocol and the 80 source port.
Click on the Finish button.
To finish the group policy creation you need to close the Group policy editor window.
Only when you close the group policy window, the system will save your configuration.
Tutorial – Applying the QoS GPO
You have finished the creation of the QoS GPO.
But, you still need to enable the use of your new Group Policy.
On the Group policy management screen, you need to right-click the Organizational Unit desired and select the option to link an existent GPO.
In our example, we are going to link the group policy named QOS – LIMIT HTTP 50KBYTES to the organizational unit named QoS.
After applying the GPO you need to wait for 10 or 20 minutes.
During this time the GPO will be replicated to other domain controllers that you might have.
After waiting 20 minutes, you should reboot the QoS client computer.
During the boot, the computer will get and apply a copy of the new QoS group policy.
After rebooting the client computer, open a POWERSHELL command prompt.
Use the following command to check if the QoS group policy was applied.
# Get-NetQosPolicy -PolicyStore ActiveStore
Name : QoS – limit http 50kbytes
Owner : Group Policy (Machine)
NetworkProfile : All
Precedence : 127
IPProtocol : TCP
IPSrcPortStart : 80
IPSrcPortEnd : 80
ThrottleRate : 409.6 KBits/sec
Use the following POWERSHELL command to display detailed information related to your QoS Group policy.
In our example, the new GPO was named: QOS – LIMIT HTTP 50KBYTES
# Get-NetQosPolicy -PolicyStore ActiveStore -Name “qos – limit http 50kbytes” | Format-List -Property *
User :
AppPathName :
Template : None
NetDirectPort : 0
IPProtocol : TCP
IPPort : 0
IPSrcPrefix :
IPSrcPortStart : 80
IPSrcPortEnd : 80
IPDstPrefix :
IPDstPortStart : 0
IPDstPortEnd : 0
URI :
URIRecursive : False
PriorityValue : -1
DSCPValue : -1
MinBandwidthWeight : 0
ThrottleRate : 409600
NetworkProfile : All
TemplateMatchCondition : None
UserMatchCondition :
AppPathNameMatchCondition :
NetDirectPortMatchCondition : 0
IPProtocolMatchCondition : TCP
IPPortMatchCondition : 0
IPSrcPrefixMatchCondition :
IPSrcPortStartMatchCondition : 80
IPSrcPortEndMatchCondition : 80
IPDstPrefixMatchCondition :
IPDstPortStartMatchCondition : 0
IPDstPortEndMatchCondition : 0
URIMatchCondition :
URIRecursiveMatchCondition : False
PriorityValue8021Action : -1
DSCPAction : -1
MinBandwidthWeightAction : 0
ThrottleRateAction : 409600
Caption :
Description :
ElementName : qos – limit http 50kbytes
InstanceID : {382ACFAD-1E73-46BD-A0A0-64EE0E587B95}\qos – limit http 50kbytes\ActiveStore
Name : qos – limit http 50kbytes
Owner : Group Policy (Machine)
Precedence : 127
Version :
PSComputerName :
CimClass : ROOT/StandardCimv2:MSFT_NetQosPolicySettingData
CimInstanceProperties : {Caption, Description, ElementName, InstanceID…}
CimSystemProperties : Microsoft.Management.Infrastructure.CimSystemProperties
To test the configuration, you need to try to download a large file from the web server.
If you are using the HTTP protocol, the QoS GPO should limit the file download to a maximum of 50 KBytes.
If you are using the HTTPS protocol, the QoS GPO should not limit the file download speed.
Maybe you are wondering how to create a QoS policy without using a Group Policy Configuration.
Use the following POWERSHELL command to limit the HTTP protocol output to 50 KBytes.
Keep in mind that 50 KBytes is the equivalent to 400 KBits.
# New-netqospolicy -Name ‘HTTP’ -IPPort 80 -IPProtocol TCP -ThrottleRateActionBitsPerSecond 400KB
Use the following POWERSHELL command to remove the QoS group policy previously created.
# Remove-NetQosPolicy -Name “HTTP”
Congratulations! You are now able to create QoS on Windows.