Vi bliver tit spurgt om, hvordan man sætter en QoS (Quality of Service)-politik op for samtaler via VoIP (Voice over IP, altså telefoni over internettet), så brugerne får den bedst mulige lydkvalitet.
Folk spørger, fordi lydkvaliteten på VoIP-samtaler i rigtigt slemme tilfælde på meget belastede netværk kan blive så forvrænget, at man ikke kan gennemføre en ordentlig samtale.
Når man bruger den interne softphone i Zylincs ZyDesk-programmer (altså Zylinc Contact Center, Service Center osv.), kan man heldigvis forebygge det med en QoS-politik i AD (Active Directory). Politikken sikrer, at VoIP-netværkspakkerne får høj prioritet, så de ikke risikerer at blive forsinket eller tabt pga. påvirkning fra andre typer netværkspakker med lavere prioritet.
Man kan sætte en VoIP QoS-politik op for begge de to protokoller, som bruges til VoIP:
- SIP (Session Initiation Protocol, der bruges til at etablere opkaldene)
- RTP (Real-time TransportProtocol, der bruges til at sende VoIP-pakkerne frem og tilbage, når opkaldene er oppe at køre)
Man sætter politikkerne op med noget, der hedder DSCP-værdier. DSCP står for Differentiated Services Code Point. Som navnet antyder, er det en teknik til at prioritere netværkspakker forskelligt. I vores tilfælde, vil vi gerne have, at VoIP-relaterede pakker får en høj prioritet.
Inden for VoIP er det best practice at give SIP-trafik en DSCP-værdi på 24 (også kendt som Class Selector 3 eller CS3). RTP-trafik skal man give en DSCP-værdi på 46 (også kendt som Expedited Forwarding eller EF).
Det gør man sådan her:
Forudsætninger
I denne artikel fokuserer vi på QoS for den interne softphone i ZyDesk. Bruger man en anden softphone, kan man givetvis sætte QoS-politik op for den også, men her gælder det altså den interne softphone i ZyDesk.
Du skal kunne logge ind som domæneadministrator.
Du får brug for at kunne tilgå Windows’ Group Policy Management. På nogle servere kan du blive nødt til at installere Group Policy Management Console Tools, inden du kan bruge Group Policy Management. Hvis du får behov for at installere værktøjerne, og du er i tvivl om, hvordan du skal gøre, kan du lave en hurtig Google-søgning efter install group policy management console for at få instruktioner til forskellige Windows-versioner.
Jeg gennemgik det følgende scenario på Windows Server 2019. Proceduren er stort set den samme på andre Windows-versioner. Min kollega har lige prøvet det på Windows Server 2012, og den væsentligste forskel var, hvordan man kom ind i Group Policy Management. På 2019 finder du Group Policy Management på Server Manager Dashboard, i Tools-menuen.
Vær i øvrigt opmærksom på, at en dansksproget Windows Server 2019 taler en besynderlig blanding af engelsk og dansk, når man kommer lidt ud i krogene. Det er altså ikke mig, der prøver på at drille ved kun at have oversat visse af feltnavnene osv. i det følgende …
Procedure
Først sætter vi en QoS-politik op for RTP:
- Log ind på en domænecontroller som domæneadministrator, og gå til Group Policy Management
- I venstre side af Group Policy Management-vinduet skal du højreklikke på jeres domæne (du skal muligvis udvide en forest først) og vælge Create a GPO in this domain, and Link it here…
- I Name skal du give GPO’et (Group Policy Object’et) navnet
VoIP RTP
og så klikke OK - I venstre side af Group Policy Management-vinduet, under jeres domæne, skal du højreklikke på det nye GPO
VoIP RTP
, som du lavede lige før, og vælge Edit… - I det nye vindue, Group Policy Management Editor, skal du udvide Computer Configuration > Policies > Windows Settings
- Højreklik på Politikbaseret QoS og vælg Opret ny politik…
- I Politiknavn skal du skrive
VoIP RTP
- I Angiv DSCP-værdi skal du skrive
46
og så klikke Næste - Vælg Kun programmer med dette eksekverbare navn, skriv
%programfiles(x86)%\Zylinc\ZyDesk\ZyDesk.exe
i feltet, og klik så Næste - Sørg for at både Alle kilde-IP-adresser og Alle IP-destinationsadresser er valgt, og klik så Næste
- I Vælg den protokol, som denne QoS-politik anvendes på skal du vælge UDP (fordi RTP kører via UDP)
- Vælg Fra dette kildeportsnummer eller -område og skriv
4000:4063
i feltet - Vælg Til en vilkårlig destinationsport
- Klik Udfør
Nu er vi klar til at sætte en QoS-politik op for SIP:
- Gå tilbage til Group Policy Management-vinduet
- Som før skal du højreklikke på jeres domæne og vælge Create a GPO in this domain, and Link it here…
- I Name skal du give GPO’et (Group Policy Object’et) navnet
VoIP SIP
og så klikke OK. - I venstre side af Group Policy Management-vinduet, under jeres domæne, skal du højreklikke på det nye GPO
VoIP SIP
, som du lavede lige før, og vælge Edit… - I det nye vindue, Group Policy Management Editor, skal du udvide Computer Configuration > Policies > Windows Settings
- Højreklik på Politikbaseret QoS og vælg Opret ny politik…
- I Politiknavn skal du skrive
VoIP SIP
- I Angiv DSCP-værdi skal du skrive
24
og så klikke Næste - Vælg Kun programmer med dette eksekverbare navn, skriv
%programfiles(x86)%\Zylinc\ZyDesk\ZyDesk.exe
i feltet, og klik så Næste - Sørg for at både Alle kilde-IP-adresser og Alle IP-destinationsadresser er valgt, og klik så Næste
- I Vælg den protokol, som denne QoS-politik anvendes på skal du vælge TCP og UDP
- Vælg Fra en vilkårlig kildeport
- Vælg Til dette destinationsportnummer eller -område og skriv
5060
i feltet - Klik Udfør
Jeres to nye QoS-politikker træder i kraft næste gang, computerne på domænet opdaterer deres group policy-indstillinger. Det sker typisk, når computerne genstartes.
Hvis du ikke vil vente på det, kan du gennemtvinge en opdatering ved at åbne en kommandoprompt med administratorrettigheder og køre følgende kommando: gpupdate /force
Du kan teste om QoS-politikkerne er aktive på en klient-computer:
I en kommandoprompt med administratorrettigheder skal du køre følgende kommando: gpresult /Scope Computer /v
Under Applied Group Policy Objects (du skal typisk scrolle lidt op for at se det) skal du nu kunne se navnene på jeres to QoS-politikker, VoIP RTP og VoIP SIP, som i eksemplet her:
…
Applied Group Policy Objects
-----------------------------
Default Domain Controllers Policy
Default Domain Policy
VoIP RTP
VoIP SIP
…
Morten Müller er Documentation & Localization Manager på Zylincs hovedkontor i Hellerup.