Configuring Quality of Service for Lync Online - Perficient Blogs
Blog
  • Topics
  • Industries
  • Partners

Explore

Topics

Industries

Partners

Configuring Quality of Service for Lync Online

In my previous post, I covered the importance of QoS for Lync Online. In this article we will cover how to configure these QoS settings for Windows-based workstations using Group Policy. We will also review a few ways how to verify that your QoS GPO settings have taken affect properly on a workstation.
*Note – These QoS GPO Settings are only valid for Windows 7 or later Operating Systems.
It is required to configure three different QoS Policies for the three different media categories that are outlined in the table below. As you can see, Lync Online has separated the client’s media into three categories. This was intended to give you better control for prioritizing the different types of media traffic on your network. You will also notice that Application Sharing and File Transfer share the same port range and must use a common Differentiated Services Code Point (DSCP) value.
Port-DSCP-Table
The above DSCP values and port ranges are common values for the types of traffic that they are assigned to. Your network QoS DSCP configuration might be different than the above table. I suggest you work closely with your network team and/or vendor to verify what DSCP values are valid for your environment.

Create a QoS Group Policy Object for Lync Online

  • Open a Group Policy Management console for your Domain (my lab domain is ‘contoso.com’) and navigate to ‘Group Policy Objects’

GPO-New Policy

 
 
 
 
 
 
 

  • Create New Group Policy Object and give it a name that suits your environment (I have named mine ‘Lync Online QoS’)

New GPO Name

 
 
 
 

  • Edit the ‘Lync Online QoS’ policy

Edit QoS GPO
 
 
 
 
 
 
Now that the Group Policy Object has been created, we need to edit it and create the 3 separate QoS Policies:

  1. Audio Policy
  2. Video Policy
  3. Desktop/App Sharing and File Transfer

 
Create Audio QoS Policy

  • Navigate to ‘Computer Configuration’ > ‘Policies’ > ‘Windows Settings’ > ‘Policy-based QoS’ > select ‘Create new policy’

Create QoS Policy
 
 
 
 
 
 

  • Policy Name: ‘Lync Online Audio QoS’
    • Check Specify DSCP Value
    • Enter ’46’ as value
    • Leave ‘Specify Outbound Throttle Rate’ unchecked
    • Next

QoS-Audio Tag
 
 
 
 
 
 
 
 

  • Select ‘Only applications with this executable name:’
    • Application name: ‘lync.exe’
      • Note -This is for the Lync 2013 client. If you are using the Lync 2010 client, the executable name is ‘communicator.exe’. If you have both clients in your environment, you will need to create a unique QoS policy for each executable – one for ‘lync.exe’ and one for ‘communicator.exe’. For more information on this, please see my colleague Jason Sloan’s blog post on this subject.
  • Select ‘Any Source IP Address’ and ‘Any Destination IP Address’

QoS-GPO-SrcDest IP
 
 
 
 
 
 
 
 

  • Select ‘TCP and UDP’ and ‘From this source port number or range’
    • Enter ‘50000:50019’

Audio-QoS-TCP-UDP
 
Create Video QoS Policy

  • Navigate to ‘Computer Configuration’ > ‘Policies’ > ‘Windows Settings’ > ‘Policy-based QoS’ > select ‘Create new policy’

Create QoS Policy
 
 
 
 
 
 

  • Policy Name: ‘Lync Online Video QoS’
    • Check Specify DSCP Value
    • Enter ’34’ as value
    • Leave ‘Specify Outbound Throttle Rate’ unchecked
    • Next

9-Video Tag
 
 
 
 
 
 
 
 

  • Select ‘Only applications with this executable name:’
    • Application name: ‘lync.exe’
  • Select ‘Any Source IP Address’ and ‘Any Destination IP Address’

QoS-GPO-SrcDest IP
 
 
 
 
 
 
 
 
Select ‘TCP and UDP’ and ‘From this source port number or range’

  • Enter ‘50020:50039’

Video-QoS-TCP-UDP
 
Create Application Sharing & File Transfer QoS Policy

  • Navigate to ‘Computer Configuration’ > ‘Policies’ > ‘Windows Settings’ > ‘Policy-based QoS’ > select ‘Create new policy’

Create QoS Policy
 
 
 
 
 
 
Policy Name: ‘Lync Online App Sharing/File Transfer QoS’

  • Check Specify DSCP Value
  • Enter ’24’ as value
  • Leave ‘Specify Outbound Throttle Rate’ unchecked
  • Next

11-AppSharing FT Tag
 
 
 
 
 
 
 
 

  • Select ‘Only applications with this executable name:’
    • Application name: ‘lync.exe’
  • Select ‘Any Source IP Address’ and ‘Any Destination IP Address’

QoS-GPO-SrcDest IP
 
 
 
 
 
 
 
 
Select ‘TCP and UDP ‘ and ‘From this source port number or range’

  • Enter ‘50040:50059’

FT-QoS-TCP-UDP
 
Applying GPO to workstations
Now that the QoS GPO has been created, we need to apply this to your Active Directory Organizational Units (OU’s) that contain your Windows workstations.

  • While still in the Group Policy Management Console, navigate to your OU’s that contain your workstations (my OU is called “Workstations”)
  • Select ‘Link an Existing GPO…’

GPO-Link-OU

  • Select the Lync Online GPO we created earlier (Mine is called ‘Lync Online QoS’)

GPO-Select-Policy
 
Your workstations will likely need to be restarted in order for this policy to be applied.
 
Verify workstations
We will cover a few ways to verify that the GPO has been applied to the workstation:

  1. Verify Registry settings for QoS settings
  2. Verify GPO settings that are being applied
  3. Verify QoS with Microsoft Message Analyzer (Download can be found here)
  4. Verify QoS with Wireshark (download can be found here) which also requires WinPcap (download can be found here)

 
Verify QoS Registry Settings

  • On a workstation, open the Registry Editor
    • (Windows Key + R)
    • Enter ‘regedit’
  • Navigate to ‘HKEY_LOCAL_MACHINE’  >  SOFTWARE  >  Policies  >  Microsoft  >  Windows  >  QoS
    • There should be a list of the QoS policies that were created

Registry-QoS

  • You can view the individual policies to verify the settings
  • Application Sharing / File Transfer

QoS-reg-AppShare

  • Audio

QoS-reg-Audio

  • Video

QoS-reg-Video
 
Verify QoS GPO
Another way to verify if the QoS GPO has applied successfully is to leverage the GPResult command to return all the Group Policy settings that are applied to the workstation.

  • Open a Command Prompt
  • Type ‘GPResult /H’ include a path to save the output as an HTML file
    • Example: ‘GPResult /H C:\Temp\GPResult.html’
  • Open the HTML file in an Internet browser and search for the QoS Policies
  • You should find the QoS policies that we defined earlier

GPResult QoS
 
Verify QoS with Microsoft Message Analyzer
We can capture network traffic by using Microsoft’s Message Analyzer to see if the DSCP values are getting marked properly on the packets.

  • Open Microsoft Message Analyzer (you may need to “Run as Administrator” to gain elevated privileges to your NIC)
  • Navigate to ‘File’ > ‘Quick Trace’ > select ‘Local Network Interfaces (Win 8.1 and later)’

MMA-QuickTrace
We need to add the DSCP column in order to see the QoS markings for the network traces.

  • Select ‘Choose Columns’ to open the Column Chooser
  • Type ‘dscp’ in the ‘Column Chooser’
  • Navigate ‘IPv4’  >  ‘Datagram’  >  ‘DifferentiatedServices’  >  select ‘DSCP’ and ‘add as column’

10-MMA DSCP column
I also add the ‘SourcePort’ column to easily view the client port being used during the traces.

  • Select ‘Choose Columns’ to open the Column Chooser
  • Type ‘SourcePort’ in the ‘Column Chooser’
  • Navigate ‘UDP’  >  ‘Datagram’  >  ‘SourcePort’  >  select ‘SourcePort’ and ‘add as column’
    • Note: the ‘SourcePort’ column is for both TCP and UDP traffic

Now we can trace the different types of traffic, I initiated a quick Lync Meeting with only myself as the participant and started tracing.
Audio Trace – Message Analyzer
MMA Audio Trace
Desktop Share Trace – Message Analyzer
12-MMA DesktopShare
We can see the proper DSCP markings are getting applied to the correct port ranges.
Verify QoS with Wireshark
We can use Wireshark as another option to capture network traffic, as it is a popular tracing program.

  •  Open Wireshark and select the necessary network interface
  • Navigate to ‘Edit’  >  ‘Preferences’

4-wireshark preferences

  •  Navigate to ‘User Interface’  >  Columns
  • Add a new Column with the ‘Field type’ of ‘IP DSCP Value’ and a title of ‘DSCP’

5-Wireshark DSCP Column
Audio Trace – Wireshark
6-Wireshark Audio
Desktop Share Trace – Wireshark
wireshark Screenshare
Note – if you see traffic with the DSCP value of zero means that the traffic is not marked and is considered to be ‘best effort’ with no network prioritization.
If you are looking for resources for Managing or Deploying QoS for your on-premises Lync environment, I highly suggest taking a look at the following articles:

  1. TechNet – Managing Quality of Service (QoS) in Lync Server 2013
  2. Elan Shudnow’s Blog – Enabling QoS for Lync Server 2013 and Various Clients
  3. Jeff Schertz’s Blog – Lync Quality of Service Behavior

And, if you want to read more from our Lync team, here is a great white paper on deploying Lync 2013 on a global scale.
[pardot-form id=”34490″ title=”MSFT: White Paper BLOG Form: The CIO’s Guide to a Lync Server 2013 Global Design”]

One thought on “Configuring Quality of Service for Lync Online

  1. We are using Cloud Connector Edition, do we need to configure anything on the Mediation, Edge server VMs for QoS like we do in on-prem environment? No QoS configuration on CCE VMs required??
    Or just only create a GPO and apply QoS on SFB workstations only? That’s all? Thanks.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Subscribe to the Weekly Blog Digest:

Sign Up