Windows 上のデスクトップ クライアントにサービス品質 (QoS) Microsoft Teams実装する
Windows で実行されている Teams デスクトップ クライアントの差別化サービス コード ポイント (DSCP) マーキングを設定するために使用できる方法は複数あります。 この記事では、「 Teams で QoS を実装する」で定義されている既定のソース ポート範囲を使用していることを前提としています。 環境のソース ポート範囲をカスタマイズした場合は、使用されているソース ポートを反映するように次のガイダンスを調整する必要があります。
Intuneを使用した DSCP マーキングの構成
Microsoft Intune (およびその他のモバイル デバイス管理 (MDM) プロバイダー) は、ポリシー設定管理に eXtensible Markup Language (XML) ベースの Open Mobile Alliance-Device Management (OMA-DM) プロトコルを使用します。 Windows では、構成サービス プロバイダー (CSP) を介して OMA-DM XML が実装され、サービス品質 (QoS) の場合は NetworkQoSPolicy CSP が利用されます。
Windows で Teams クライアントの QoS のデバイス構成ポリシーを作成するには:
Microsoft Intune管理センターにサインインします。
[デバイス構成の作成] を>選択します>。
次のプロパティを入力します。
- プラットフォーム: [Windows 10 以降] を選択します。
- プロファイルの種類: [ テンプレート ] を選択し、[カスタム] を選択 します。
[作成] を選択します。
[ 基本] に、次のプロパティを入力します。
- [名前]: プロファイルのわかりやすい名前を入力します。 後で簡単に識別できるように、プロファイルに名前を付けます。 たとえば、 Windows: Teams QoS DSCP マーキング
- 説明: プロファイルの説明を入力します。 この設定は省略可能ですが、推奨されます。
[次へ] を選択します。
[ 構成設定] で、[追加] を選択 します。 次の表を使用して、必要な OMA-URI 設定を入力します (テーブル内の各行に対して繰り返します)。
新しい Teams クライアントの場合は、次の表を使用します。
表 1. 新しい Teams の OMA-URI 設定をIntuneする
名前 説明 OMA-URI データ型 値 Teams オーディオ: アプリケーション 新しい Teams 実行可能ファイル名。 ./Device/Vendor/MSFT/NetworkQoSPolicy/TeamsAudio/AppPathNameMatchCondition 文字列 ms-teams.exe Teams オーディオ: ポート Teams クライアントで使用されるオーディオ ソース ポート。 ./Device/Vendor/MSFT/NetworkQoSPolicy/TeamsAudio/SourcePortMatchCondition 文字列 50000-50019 Teams オーディオ: DSCP マーキング オーディオに適用されるマーキング (EF46) ./Device/Vendor/MSFT/NetworkQoSPolicy/TeamsAudio/DSCPAction 整数型 46 Teams ビデオ: アプリケーション 新しい Teams 実行可能ファイル名。 ./Device/Vendor/MSFT/NetworkQoSPolicy/TeamsVideo/AppPathNameMatchCondition 文字列 ms-teams.exe Teams ビデオ: ポート Teams クライアントで使用されるビデオ ソース ポート。 ./Device/Vendor/MSFT/NetworkQoSPolicy/TeamsVideo/SourcePortMatchCondition 文字列 50020-50039 Teams ビデオ: DSCP マーキング ビデオに適用されるマーキング (AF41) ./Device/Vendor/MSFT/NetworkQoSPolicy/TeamsVideo/DSCPAction 整数型 34 Teams Screenshare: アプリケーション 新しい Teams 実行可能ファイル名。 ./Device/Vendor/MSFT/NetworkQoSPolicy/TeamsScreenshare/AppPathNameMatchCondition 文字列 ms-teams.exe Teams スクリーン共有: ポート Teams クライアントで使用される画面共有ポート。 ./Device/Vendor/MSFT/NetworkQoSPolicy/TeamsScreenshare/SourcePortMatchCondition 文字列 50040-50059 Teams Screenshare: DSCP マーキング 画面共有に適用されるマーキング (AF21) ./Device/Vendor/MSFT/NetworkQoSPolicy/TeamsScreenshare/DSCPAction 整数型 18 Teams Calling-Meeting シグナリング: アプリケーション 新しい Teams 実行可能ファイル名。 ./Device/Vendor/MSFT/NetworkQoSPolicy/TeamsCMSignaling/AppPathNameMatchCondition 文字列 ms-teams.exe Teams Calling-Meeting シグナリング: ポート Teams クライアントによって使用される通話と会議のシグナリング ソース ポート。 ./Device/Vendor/MSFT/NetworkQoSPolicy/TeamsCMSignaling/SourcePortMatchCondition 文字列 50070-50089 Teams Calling-Meeting シグナリング: DSCP マーキング 通話と会議のシグナリングに適用されるマーキング (CS5) ./Device/Vendor/MSFT/NetworkQoSPolicy/TeamsCMSignaling/DSCPAction 整数型 40 クラシック Teams クライアントの場合は、次の表を使用します。
表 2. クラシック Teams の OMA-URI 設定のIntune
名前 説明 OMA-URI データ型 値 クラシック Teams オーディオ: アプリケーション クラシック Teams 実行可能ファイル名。 ./Device/Vendor/MSFT/NetworkQoSPolicy/ClassicTeamsAudio/AppPathNameMatchCondition 文字列 teams.exe クラシック Teams オーディオ: ポート Teams クライアントで使用されるオーディオ ソース ポート。 ./Device/Vendor/MSFT/NetworkQoSPolicy/ClassicTeamsAudio/SourcePortMatchCondition 文字列 50000-50019 クラシック Teams オーディオ: DSCP マーキング オーディオに適用されるマーキング (EF46) ./Device/Vendor/MSFT/NetworkQoSPolicy/ClassicTeamsAudio/DSCPAction 整数型 46 クラシック Teams ビデオ: アプリケーション クラシック Teams 実行可能ファイル名。 ./Device/Vendor/MSFT/NetworkQoSPolicy/ClassicTeamsVideo/AppPathNameMatchCondition 文字列 teams.exe クラシック Teams ビデオ: ポート Teams クライアントで使用されるビデオ ソース ポート。 ./Device/Vendor/MSFT/NetworkQoSPolicy/ClassicTeamsVideo/SourcePortMatchCondition 文字列 50020-50039 クラシック Teams ビデオ: DSCP マーキング ビデオに適用されるマーキング (AF41) ./Device/Vendor/MSFT/NetworkQoSPolicy/ClassicTeamsVideo/DSCPAction 整数型 34 クラシック Teams 画面共有: アプリケーション クラシック Teams 実行可能ファイル名。 ./Device/Vendor/MSFT/NetworkQoSPolicy/ClassicTeamsScreenshare/AppPathNameMatchCondition 文字列 teams.exe クラシック Teams 画面共有: ポート Teams クライアントで使用される画面共有ポート。 ./Device/Vendor/MSFT/NetworkQoSPolicy/ClassicTeamsScreenshare/SourcePortMatchCondition 文字列 50040-50059 クラシック Teams 画面共有: DSCP マーキング 画面共有に適用されるマーキング (AF21) ./Device/Vendor/MSFT/NetworkQoSPolicy/ClassicTeamsScreenshare/DSCPAction 整数型 18 クラシック Teams Calling-Meeting シグナリング: アプリケーション 新しい Teams 実行可能ファイル名。 ./Device/Vendor/MSFT/NetworkQoSPolicy/ClassicTeamsCMSignaling/AppPathNameMatchCondition 文字列 teams.exe クラシック Teams Calling-Meeting シグナリング: ポート Teams クライアントによって使用される通話と会議のシグナリング ソース ポート。 ./Device/Vendor/MSFT/NetworkQoSPolicy/ClassicTeamsCMSignaling/SourcePortMatchCondition 文字列 50070-50089 クラシック Teams Calling-Meeting シグナリング: DSCP マーキング 通話と会議のシグナリングに適用されるマーキング (CS5) ./Device/Vendor/MSFT/NetworkQoSPolicy/ClassicTeamsCMSignaling/DSCPAction 整数型 40 [次へ] を選択します
[ 割り当て] で、このポリシーでターゲットにするグループを選択します。 グループ メンバーシップには、Windows デバイス (ユーザー アカウントではなく) が含まれている必要があります。これはデバイス ポリシーであるためです。
[次へ] を選択します
[ 適用ルール] で、必要なルールと必要なルールを定義します (省略可能)。
[次へ] を選択します。
[ 確認と作成] で、設定の精度を確認し、完了したら [ 作成] を選択します。
PowerShell コマンドを使用した DSCP マーキングの構成
エンドポイント DSCP マーキングは、 New-NetQosPolicy コマンドを使用して PowerShell で設定できます。 次の例では、オーディオ、ビデオ、アプリケーション共有用にそれぞれ 2 つのコマンドがあります。 次のコマンドは、新しい Teams クライアント (ms-teams.exe) とクラシック Teams クライアント (Teams.exe) の両方のポリシーの作成を示しています。 これらのコマンドを PowerShell スクリプトに組み合わせて、目的のエンドポイントに配布できます。
オーディオ用に QoS を設定する
new-NetQosPolicy -Name "Teams Audio" -AppPathNameMatchCondition "ms-teams.exe" -IPProtocolMatchCondition Both -IPSrcPortStartMatchCondition 50000 -IPSrcPortEndMatchCondition 50019 -DSCPAction 46 -NetworkProfile All
new-NetQosPolicy -Name "Classic Teams Audio" -AppPathNameMatchCondition "Teams.exe" -IPProtocolMatchCondition Both -IPSrcPortStartMatchCondition 50000 -IPSrcPortEndMatchCondition 50019 -DSCPAction 46 -NetworkProfile All
ビデオ用に QoS を設定する
new-NetQosPolicy -Name "Teams Video" -AppPathNameMatchCondition "ms-teams.exe" -IPProtocolMatchCondition Both -IPSrcPortStartMatchCondition 50020 -IPSrcPortEndMatchCondition 50039 -DSCPAction 34 -NetworkProfile All
new-NetQosPolicy -Name "Classic Teams Video" -AppPathNameMatchCondition "Teams.exe" -IPProtocolMatchCondition Both -IPSrcPortStartMatchCondition 50020 -IPSrcPortEndMatchCondition 50039 -DSCPAction 34 -NetworkProfile All
共有用に QoS を設定する
new-NetQosPolicy -Name "Teams Sharing" -AppPathNameMatchCondition "ms-teams.exe" -IPProtocolMatchCondition Both -IPSrcPortStartMatchCondition 50040 -IPSrcPortEndMatchCondition 50059 -DSCPAction 18 -NetworkProfile All
new-NetQosPolicy -Name "Classic Teams Sharing" -AppPathNameMatchCondition "Teams.exe" -IPProtocolMatchCondition Both -IPSrcPortStartMatchCondition 50040 -IPSrcPortEndMatchCondition 50059 -DSCPAction 18 -NetworkProfile All
通話と会議のシグナリングに QoS を設定する
new-NetQosPolicy -Name "Teams Calling-Meeting Signaling" -AppPathNameMatchCondition "ms-teams.exe" -IPProtocolMatchCondition UDP -IPSrcPortStartMatchCondition 50070 -IPSrcPortEndMatchCondition 50089 -DSCPAction 40 -NetworkProfile All
new-NetQosPolicy -Name "Classic Teams Calling-Meeting Signaling" -AppPathNameMatchCondition "Teams.exe" -IPProtocolMatchCondition UDP -IPSrcPortStartMatchCondition 50070 -IPSrcPortEndMatchCondition 50089 -DSCPAction 40 -NetworkProfile All
グループ ポリシーを使用した DSCP マーキングの構成
グループ ポリシー オブジェクト (GPO) 内にポリシー ベースの QoS 設定を作成できます。 ポリシーを作成するときは、オーディオ、ビデオ、アプリケーション共有用の別のポリシーを作成する必要があります。
ドメインに参加している Windows コンピューターの QoS オーディオ ポリシーを作成するには、まず、グループ ポリシー管理がインストールされているコンピューターにログオンします。 グループ ポリシー管理を開き ([スタート] をクリックし、[管理ツール] をポイントし、[グループ ポリシー管理] をクリックします)、次の手順を実行します。
[グループ ポリシー管理] で、新しいポリシーを作成するコンテナーを見つけます。 たとえば、すべてのクライアント コンピューターが Client という名前の OU に配置されている場合は、 クライアント OU に新しいポリシーを作成します。
適切なコンテナーを右クリックし、[ このドメインに GPO を作成する] を選択し、ここにリンクします。
[新しい GPO] ダイアログ ボックスで、[名前] ボックスに新しいグループ ポリシー オブジェクトの名前を入力し、[OK] を選択します。
新しく作成したポリシーを右クリックし、[編集] を選択 します。
[グループ ポリシー管理] エディターで、[コンピューターの構成] を展開し、[Windows 設定] を展開し、[ポリシー ベースの QoS] を右クリックして、[新しいポリシーの作成] を選択します。
[ ポリシー ベースの QoS ] ダイアログ ボックスで、開くページの [名前] ボックスに新しいポリシーの 名前 を入力します。 [ DSCP 値の指定] を選択し、値を 46 に設定します。 [ 送信スロットルレートの指定 ] をオフのままにし、[ 次へ] を選択します。
次のページで、[ この実行可能ファイル名を持つアプリケーションのみ ] を選択し、次の名前を入力します。
- 新しい Teams の場合は 、「ms-teams.exe」と入力します
- クラシック Teams の場合は、「teams.exe」と入力します
[次へ] をクリックします。 この設定は、Teams クライアントからの一致するトラフィックのみを優先するようにポリシーに指示します。
3 番目のページで、[ 任意の送信元 IP アドレス ] と [ 任意の宛先 IP アドレス ] の両方が選択されていることを確認し、[ 次へ] を選択します。 これら 2 つの設定により、パケットを送信したコンピューター (IP アドレス) とパケットを受信するコンピューター (IP アドレス) に関係なく、パケットが管理されます。
4 ページの [この QoS ポリシーが適用されるプロトコルの選択] ドロップダウン リストから [TCP と UDP] を選択します。 TCP (伝送制御プロトコル) と UDP (ユーザー データグラム プロトコル) は、最も一般的に使用される 2 つのネットワーク プロトコルです。
[ ソース ポート番号の指定] という見出しで、[ このソース ポートまたは範囲から] を選択します。 付属のテキスト ボックスに、オーディオ転送用に予約されているポート範囲を入力します。 たとえば、オーディオ トラフィック用にポート 50000 からポート 50019 を予約した場合は、次の形式を使用してポート範囲を入力します: 50000:50019。 [ 完了] を選択します。
手順 5 ~ 10 を繰り返して、ビデオ、アプリケーション/デスクトップ共有、通話と会議シグナリングのポリシーを作成し、手順 6 と 10 の適切な値に置き換えます。
作成した新しいポリシーは、クライアント コンピューターでグループ ポリシーが更新されるまで有効になりません。 グループ ポリシーは独自に定期的に更新されますが、次の手順に従って即時更新を強制できます。
グループ ポリシー更新する各コンピューターで、管理者としてコマンド プロンプト (管理者として実行) を開きます。
コマンド プロンプトで、「」と入力します。
gpupdate /force
グループ ポリシー オブジェクトで DSCP マーキングを確認する
グループ ポリシー オブジェクトの値が設定されていることを確認するには、次の手順を実行します。
管理者としてコマンド プロンプトを開きます (管理者として実行)。
コマンド プロンプトで、「」と入力します。
gpresult /R > gp.txt
これにより、適用された GPO のレポートが生成され、gp.txtという名前 の テキスト ファイルに送信されます。
gp.htmlという名前の読みやすい HTML レポートについては、次のコマンドを入力します。
gpresult /H gp.html
生成されたファイルで、[適用されたグループ ポリシー オブジェクト] という見出しを探し、先ほど作成したグループ ポリシー オブジェクトの名前が適用されたポリシーの一覧にあることを確認します。
レジストリ エディターを開き、
HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\QoS
表 2 に記載されているレジストリ エントリの値を確認します。
表 2. QoS の Windows レジストリ エントリの値
名前 種類 データ Application Name REG_SZ ms-teams.exe DSCP Value REG_SZ 46 Local IP REG_SZ * Local IP Prefix Length REG_SZ * Local Port REG_SZ 50000-50019 プロトコル REG_SZ * Remote IP REG_SZ * リモート IP プレフィックス REG_SZ * Remote Port REG_SZ * Throttle Rate REG_SZ -1 アプリケーション名エントリの値が使用しているクライアントに対して正しいことを確認し、DSCP 値エントリとローカル ポート エントリの両方に、グループ ポリシー オブジェクトの設定が反映されていることを確認します。