Call Admission Control

Call Admission Control – Netzwerk Bandbreitensteuerung

Die Anruf Bandbreitensteuerung dient dazu, die Gesprächsqualität über WAN Strecken aufrecht zu erhalten und ggf. Gespräche „umzurouten“. Ist als Beispiel die reservierte Bandbreite für Gespräche auf der WAN Strecke ausgeschöpft wird, wenn konfiguriert, ein weiterer Anruf über das Internet (bei mehreren Edge Servern) oder über das PSTN umgeroutet.

Alternativ gibt es die Möglichkeit ein „Override“ für einzelne Endanwender zu setzen. Diese Option ist jedoch mit Vorsicht zu genießen, da hierdurch die Gesprächsqualität aller zur Zeit auf der WAN Strecke geführten Gespräche beeinträchtigt wird.

Die Anruf Bandbreitensteuerung gilt auch für Videom, außer das Video nicht über PSTN umgeroutet wird sondern der Endanwender einen Hinweis im Falle der Nichtverfügbarkeit der Bandbreite erhält.

Konfiguration

Die Konfiguration der Netzwerk Bandbreitensteuerung besteht immer aus 5 Schritten:

  1. Festlegen der Limits je Standort getrennt nach Audio und Video
  2. Festlegen der Region(en)
  3. Zuordnen der Standorte zu der/den Region(en)
  4. Festlegen der Subnetze je Standort
  5. Aktivieren der Anruf Bandbreitensteuerung

Wichtig: Nach der Aktivierung wird erst der Bandbreitendienst aktiv. Dieser kommuniziert über Port 448 TCP mit den Clients. Es ist daher sicherzustellen das auf allen Servern mit Voice/Video Funktionalität der Port 448 TCP in der Firewall bidirektional geöffnet ist.

Festlegen der Limit je Standort:

New-CsNetworkBandwidthPolicyProfile -Identity Limit_1 -AudioBWLimit 4096 -AudioBWSessionLimit 64 -VideoBWLimit 4096 -VideoBWSessionLimit 512
New-CsNetworkBandwidthPolicyProfile -Identity Limit_2 -AudioBWLimit 2048 -AudioBWSessionLimit 64 -VideoBWLimit 1024 -VideoBWSessionLimit 512
New-CsNetworkBandwidthPolicyProfile -Identity Limit_3 -AudioBWLimit 1024 -AudioBWSessionLimit 64 -VideoBWLimit 512 -VideoBWSessionLimit 512
New-CsNetworkBandwidthPolicyProfile -Identity Limit_4 -AudioBWLimit 256 -AudioBWSessionLimit 64 -VideoBWLimit 0 -VideoBWSessionLimit 512

Festlegen der Region(en):

Write-Host "Configure network region..."
New-CsNetworkRegion -NetworkRegionID MPLS –CentralSite site:Town_1 -Description "MPLS Network"

Zuordnen der Standorte zu der/den Region(en):

New-CsNetworkSite -NetworkSiteID Town_1 -Description "Town_1" -NetworkRegionID MPLS -BWPolicyProfileID "Limit_1"
New-CsNetworkSite -NetworkSiteID Town_2 -Description "Town_2" -NetworkRegionID MPLS -BWPolicyProfileID "Limit_2"
New-CsNetworkSite -NetworkSiteID Town_3 -Description "Town_3" -NetworkRegionID MPLS -BWPolicyProfileID "Limit_3"
New-CsNetworkSite -NetworkSiteID Town_4 -Description "Town_4" -NetworkRegionID MPLS -BWPolicyProfileID "Limit_4"

Festlegen der Subnetze je Standort:

Import-CSV C:\Temp\Subnet_Town_1.csv | foreach {New-CsNetworkSubnet -Identity $_.Subnet -MaskBits $_.Mask -NetworkSiteID $_.Location -Description $_.Description}
Import-CSV C:\Temp\Subnet_Town_2.csv | foreach {New-CsNetworkSubnet -Identity $_.Subnet -MaskBits $_.Mask -NetworkSiteID $_.Location -Description $_.Description}
Import-CSV C:\Temp\Subnet_Town_3.csv | foreach {New-CsNetworkSubnet -Identity $_.Subnet -MaskBits $_.Mask -NetworkSiteID $_.Location -Description $_.Description}
Import-CSV C:\Temp\Subnet_Town_4.csv | foreach {New-CsNetworkSubnet -Identity $_.Subnet -MaskBits $_.Mask -NetworkSiteID $_.Location -Description $_.Description}

Die Import Datei sollte, dem Beispiel folgend, folgendes Format haben:

Subnet,Mask,Location,Description
10.16.15.0,24,Town_1,Clients
10.16.16.0,24,Town_1,Server
10.16.17.0,24,Town_2,Client_and_Server

Aktivieren der Anruf Bandbreitensteuerung und des Loggings:

Set-CsBandwidthPolicyServiceConfiguration -Identity Global -EnableLogging $TRUE -LogCleanUpInterval 30.00:00:00 -MaxLogFileSizeMb 10
Set-CsNetworkConfiguration –EnableBandwidthPolicyCheck $true

Ein komplettes Skript könnte daher wie folgt aussehen:

###########################################################################
#
# NAME:    CallAdmissionControl.ps1
#
# AUTHOR:  Peter Schmelzer
#
#
# COMMENT: Call Admission Control for customer sites
#          Location: Tomwn_1, Town_2, Town_3, Town_4
#
# ATTENTION: DELIMITER MUST BE A ","
#
# VERSION HISTORY:
# 27.09.2011 - Initial
# 21.03.2012 - Small corrections
# 29.03.2012 - Logging to x:\<LyncShare>\1-Applicationserver\Appfiles\PDP added
###########################################################################

# Network Bandwith in Kbps
Write-Host "Configure network bandwith parameters per site..."
New-CsNetworkBandwidthPolicyProfile -Identity Limit_1 -AudioBWLimit 4096 -AudioBWSessionLimit 64 -VideoBWLimit 4096 -VideoBWSessionLimit 512
New-CsNetworkBandwidthPolicyProfile -Identity Limit_2 -AudioBWLimit 2048 -AudioBWSessionLimit 64 -VideoBWLimit 1024 -VideoBWSessionLimit 512
New-CsNetworkBandwidthPolicyProfile -Identity Limit_3 -AudioBWLimit 1024 -AudioBWSessionLimit 64 -VideoBWLimit 512 -VideoBWSessionLimit 512
New-CsNetworkBandwidthPolicyProfile -Identity Limit_4 -AudioBWLimit 256 -AudioBWSessionLimit 64 -VideoBWLimit 0 -VideoBWSessionLimit 512

Start-Sleep -Seconds 15

# Network Regions
Write-Host "Configure network region..."
New-CsNetworkRegion -NetworkRegionID MPLS –CentralSite site:Town_1 -Description "MPLS Network"

Start-Sleep -Seconds 15

# Network Sites
Write-Host "Configure network sites..."
New-CsNetworkSite -NetworkSiteID Town_1 -Description "Town_1" -NetworkRegionID MPLS -BWPolicyProfileID "Limit_1"
New-CsNetworkSite -NetworkSiteID Town_2 -Description "Town_2" -NetworkRegionID MPLS -BWPolicyProfileID "Limit_2"
New-CsNetworkSite -NetworkSiteID Town_3 -Description "Town_3" -NetworkRegionID MPLS -BWPolicyProfileID "Limit_3"
New-CsNetworkSite -NetworkSiteID Town_4 -Description "Town_4" -NetworkRegionID MPLS -BWPolicyProfileID "Limit_4"

Start-Sleep -Seconds 15

# Site Subnets
Write-Host "Import of site subnets..."
Import-CSV C:\Temp\Subnet_Town_1.csv | foreach {New-CsNetworkSubnet -Identity $_.Subnet -MaskBits $_.Mask -NetworkSiteID $_.Location -Description $_.Description}
Import-CSV C:\Temp\Subnet_Town_2.csv | foreach {New-CsNetworkSubnet -Identity $_.Subnet -MaskBits $_.Mask -NetworkSiteID $_.Location -Description $_.Description}
Import-CSV C:\Temp\Subnet_Town_3.csv | foreach {New-CsNetworkSubnet -Identity $_.Subnet -MaskBits $_.Mask -NetworkSiteID $_.Location -Description $_.Description}
Import-CSV C:\Temp\Subnet_Town_4.csv | foreach {New-CsNetworkSubnet -Identity $_.Subnet -MaskBits $_.Mask -NetworkSiteID $_.Location -Description $_.Description}

Start-Sleep -Seconds 15

# Activate Call Admission Control
Write-Host "Activate CAC..."
Set-CsBandwidthPolicyServiceConfiguration -Identity Global -EnableLogging $TRUE -LogCleanUpInterval 30.00:00:00 -MaxLogFileSizeMb 10
Set-CsNetworkConfiguration –EnableBandwidthPolicyCheck $true
Write-Host "Thats it! Make sure that Port 448 TCP is open between all Servers and all Clients..."

Start-Sleep -Seconds 15

# Print configuration to file
Get-CsNetworkBandwidthPolicyProfile | Out-File -FilePath C:\Temp\Get-CsNetworkBandwidthPolicyProfile.txt -width 4096 -Encoding Unicode
Get-CsNetworkRegion | Out-File -FilePath C:\Temp\Get-CsNetworkRegion.txt -width 4096 -Encoding Unicode
Get-CsNetworkSite | Out-File -FilePath C:\Temp\Get-CsNetworkSite.txt -width 4096 -Encoding Unicode
Get-CsNetworkSubnet | Out-File -FilePath C:\Temp\Get-CsNetworkSubnet.txt -width 4096 -Encoding Unicode
Get-CsNetworkConfiguration | Out-File -FilePath C:\Temp\Get-CsNetworkConfiguration.txt -width 4096 -Encoding Unicode
Get-CsBandwidthPolicyServiceConfiguration | Out-File -FilePath C:\Temp\Get-CsBandwidthPolicyServiceConfiguration.txt -width 4096 -Encoding Unicode

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *


*

Go to Top