Tagging DSCP langsung di laptop untuk Microsoft Teams

Pada umumnya, untuk mengatur QoS Microsoft Teams yang paling sering melakukan tagging DSCP dalam sebuah jaringan LAN sebuah organisasi adalah Switch dan Router. Hanya saja kali ini saya mendapatkan kasus yang mengharuskan perangkat laptop yang melakukan marking DSCP. Tanpa Intune, dan tanpa Global Policy (GPO), di seri Windows 11 Home, maka kita akan mengandalkan perintah powershell NetQosPolicy. Sekali lagi, ini hanya marking packet saja, dan dalam postingan ini tidak sampai membahas traffic-shapping atau strategi Queueing di router, yang tentunya wajib dilakukan. Next time saya bahas.

Pertama kita harus tau dulu marking yang dianjurkan oleh dokumentasi dari Microsoft di sini. Yang kira-kira, kita akan membuat 4 NetQosPolicy untuk Audio, Video, ScreenSharing, dan Calling dan Meeting Microsoft Teams. Tabelnya kira-kira seperti ini:

Setelah itu, panggil powershell console dengan privilese Administrator, dan jalankan perintah sebagai berikut:

New-NetQosPolicy -Name "TeamsAudio" -AppPathNameMatchCondition "C:\Program Files\WindowsApps\MSTeams_25275.2601.4002.2815_x64__8wekyb3d8bbwe\ms-teams.exe" -IPProtocolMatchCondition UDP -IPSrcPortStartMatchCondition 50000 -IPSrcPortEndMatchCondition 50019 -IPDstPortStartMatchCondition 3478 -IPDstPortEndMatchCondition 3481 -PolicyStore ActiveStore -DSCPValue 46


New-NetQosPolicy -Name "TeamsVideo" -AppPathNameMatchCondition "C:\Program Files\WindowsApps\MSTeams_25275.2601.4002.2815_x64__8wekyb3d8bbwe\ms-teams.exe" -IPProtocolMatchCondition UDP -IPSrcPortStartMatchCondition 50020 -IPSrcPortEndMatchCondition 50039 -IPDstPortStartMatchCondition 3478 -IPDstPortEndMatchCondition 3481 -PolicyStore ActiveStore -DSCPValue 34


New-NetQosPolicy -Name "TeamsAppSharing" -AppPathNameMatchCondition "C:\Program Files\WindowsApps\MSTeams_25275.2601.4002.2815_x64__8wekyb3d8bbwe\ms-teams.exe" -IPProtocolMatchCondition UDP -IPSrcPortStartMatchCondition 50040 -IPSrcPortEndMatchCondition 50059 -IPDstPortStartMatchCondition 3478 -IPDstPortEndMatchCondition 3481 -PolicyStore ActiveStore -DSCPValue 18


New-NetQosPolicy -Name "TeamsCallingMeetings" -AppPathNameMatchCondition "C:\Program Files\WindowsApps\MSTeams_25275.2601.4002.2815_x64__8wekyb3d8bbwe\ms-teams.exe" -IPProtocolMatchCondition UDP -IPSrcPortStartMatchCondition 50070 -IPSrcPortEndMatchCondition 50089 -IPDstPortStartMatchCondition 3478 -IPDstPortEndMatchCondition 3481 -PolicyStore ActiveStore -DSCPValue 40

Jika berhasil, maka ketika menjalankan perintah:

Get-NetQosPolicy -PolicyStore ActiveStore

Akan muncul:

Name           : teamsaudio
Owner          : PowerShell / WMI
NetworkProfile : All
Precedence     : 127
AppPathName    : C:\program files\windowsapps\msteams_25275.2601.4002.2815_x64__8wekyb3d8bbwe\ms-teams.exe
JobObject      :
IPProtocol     : UDP
IPSrcPortStart : 50000
IPSrcPortEnd   : 50019
IPDstPortStart : 3478
IPDstPortEnd   : 3481
DSCPValue      : 46

Name           : teamsvideo
Owner          : PowerShell / WMI
NetworkProfile : All
Precedence     : 127
AppPathName    : C:\program files\windowsapps\msteams_25275.2601.4002.2815_x64__8wekyb3d8bbwe\ms-teams.exe
JobObject      :
IPProtocol     : UDP
IPSrcPortStart : 50020
IPSrcPortEnd   : 50039
IPDstPortStart : 3478
IPDstPortEnd   : 3481
DSCPValue      : 34

Name           : teamsappsharing
Owner          : PowerShell / WMI
NetworkProfile : All
Precedence     : 127
AppPathName    : C:\program files\windowsapps\msteams_25275.2601.4002.2815_x64__8wekyb3d8bbwe\ms-teams.exe
JobObject      :
IPProtocol     : UDP
IPSrcPortStart : 50040
IPSrcPortEnd   : 50059
IPDstPortStart : 3478
IPDstPortEnd   : 3481
DSCPValue      : 18

Name           : teamscallingmeetings
Owner          : PowerShell / WMI
NetworkProfile : All
Precedence     : 127
AppPathName    : C:\program files\windowsapps\msteams_25275.2601.4002.2815_x64__8wekyb3d8bbwe\ms-teams.exe
JobObject      :
IPProtocol     : UDP
IPSrcPortStart : 50070
IPSrcPortEnd   : 50089
IPDstPortStart : 3478
IPDstPortEnd   : 3481
DSCPValue      : 40

Sedikit catatan parameter AppPathName. Di sini bukan path direktori di mana ms-teams.exe berada. Tapi lebih dari hasil output perintah:

Get-Process ms-teams | Select-Object Path

Nanti outputnya kira-kira seperti ini:

Path
----
C:\Program Files\WindowsApps\MSTeams_25275.2601.4002.2815_x64__8wekyb3d8bbwe\ms-teams.exe
C:\Program Files\WindowsApps\MSTeams_25275.2601.4002.2815_x64__8wekyb3d8bbwe\ms-teams.exe
C:\Program Files\WindowsApps\MSTeams_25275.2601.4002.2815_x64__8wekyb3d8bbwe\ms-teams.exe

Setup di sisi Microsoft Teams Admin Center

Login di https://admin.teams.micorosft.com sebagai Teams Administrator atau sebagai Global Administrator. Lalu pilih menu di panel sebelah kiri Meeting -> Meeting settings. Dan di bawah Network, pastikan Insert Quality of Service (QoS) markers for real-time media traffic dalam kondisi On, dan di bagian Select a port range for each type of real-time media traffic yang terpilih adalah button radio Specify port ranges seperti berikut:

Klik Save jika sudah.

Verifikasi

Untuk memverifikasi apakah marking berhasil atau tidak, nyalakan Wireshark di laptop, lalu arahkan ke interface yang hendak dimonitor (dalam kasus saya adalah interface WiFi laptop). Lalu filter Wireshark dapat memasukkan berikut ini:

ip.dsfield && (udp.port == 3478 || udp.port == 3479 || udp.port == 3480 || udp.port == 3481)

Lakukan panggilan ke sesama pengguna Microsoft Teams, atau jika memiliki Phone System yang aktif, dapat ditest dengan melakukan panggilan ke nomor GSM. Pada saat panggilan berlangsung, maka Wireshark akan mengcapture semua packet sesuai filter. Sorot salah satu baris yang menunjukkan trafik media keluar misal seperti :

Lalu periksa detailnya terutama di bagian Internet Protocol Version 4 seperti berikut:

Dalam baris yang di hilight di atas, packet sudah dimarking dengan EF (Expedited Forwarding) untuk Voice. Yang artinya ini sudah ada cap exclusive dan priortas. Dari sini tinggal diatur di bagian traffic shapping dan queue di router. Dan berharap ISP upstream juga “menghormati” DSCP marking dan tidak melakukan DSCP stripping. Tapi setidaknya di internal jaringan kita sendiri, sudah diberlakukan QoS dan juga diprioritaskan.

Pranala luar

Leave a comment

Your email address will not be published. Required fields are marked *