WindowsServer2016でアウトバウンドの帯域制御

記事タイトルとURLをコピーする

こんにちは。
クラウドインテグレーション部技術4課の山﨑です。
先日DevOpsエンジニア-プロフェッショナル試験に合格しまして、日本語対応しているAWS認定資格をコンプリートすることができました!
自分へのご褒美で自転車のローラーを買おうと思います(´,,・ω・,,`)

さて、前回の記事の最後に、WindowsServerのアウトバウンド帯域制御について、少し触れましたが、今回もう少し詳しく手順などを記載していきます。
robocopy コマンドについて調べてみた

昨年からAWS上でWindowsServer2016が利用できるようになったので、OSはそちらを利用してみようと思います。

目次
1.アウトバウンドの帯域制御の方法
2.アウトバウンドの帯域制御の手順
3.テスト

環境
OS : WindowsServer2016
AMI : Windows_Server-2016-Japanese-Full-Base-2016.12.14 (ami-5b95fb3c)

1. アウトバウンドの帯域制御の方法

WindowsServerでは、ポリシー ベースのQoSを使って、アウトバウンドの帯域制御ができます。こちらの機能は、WindowsServer2008(無印)以降であれば、利用できます。ポリシーベースのQoSでは、全てのアウトバウンド通信の帯域制御するだけでなく、以下のような特定の通信やアプリケーションだけ制御することも可能です。

ポリシー ベースのQoSで指定できること

  • 特定のアプリケーション(.exeのみ)
  • 特定のURLに対する要求に対する応答(HTTPサーバー アプリケーションのみ)
  • IPアドレス(IPv4/IPv6)
    • 送信元IPアドレス
    • 送信先IPアドレス
  • プロトコル(TCP/UDP)
    • TCP
    • UDP
  •  ポート 
    • 送信元ポート番号
    • 送信先ポート番号

帯域制御するポートや送信先IPアドレスなどを指定することで、業務で必要となる通信への影響を最小限にして帯域制御することができるようになります。

2.アウトバウンドの帯域制御の手順

それでは、アウトバウンド帯域制御の手順を記載していきます。

・デスクトップで[Windows + R] を押し、ファイル名を指定して実行を開きます。 名前に [gpedit.msc] と入力し、[OK] をクリックします。 

001・ローカルグループポリシーエディターが起動するので、[Windowsの設定] - [ポリシーベースのQoS]をクリックします。

002・画面上部の [操作] - [新規ポリシーの作成] をクリックし、ポリシーを作成します。
今回は全てのアウトバウンド通信を帯域制御するように設定していきます。
003・[ポリシー名]を入力し、[出力方向のスロット率を指定する] にチェックをいれ、制限する帯域の値を入力します。
帯域制御の単位ですが、bps(bits per second)ではなく、Bps(bytes per second)ですので、ご注意ください。004・[次へ]をクリックします。
特定のアプリケーションやURLへのアクセスの応答のみ帯域制御した場合はこちらを指定します。
005・[次へ]をクリックします。
特定の送信元、送信先のIPアドレスの通信のみ帯域制御した場合はこちらで指定します。
006・[完了]をクリックします。
特定のプロトコル及びポートでの通信のみ制御したい場合はこちらで指定します。
007・ポリシーが設定されていることを確認します。
ポリシーを作成した時点で帯域制御がかかります。
008

3.テスト

最後に帯域制御をした場合としない場合の通信速度を比較を行いました。
テストした環境ですが、VPCを2つ作成し、各VPCにWindowsServer2016のサーバーを1台構築しました。VPC間はVPCPeeringを使って接続しています。ファイルの転送は、CIFSを使い、サーバー1からサーバー2へ送りました。
テスト3①帯域制御をしない場合
多少ぶれていますが約500Mbpsで通信しています。
009②帯域制御をした場合(制限値  : 10MBps ≒ 80Mbps)
2.で行った設定と同様のポリシーを設定をしました。
アウトバウンド通信全てに10MBpsで制限をかけたので、約80Mbpsまで通信が制限されています。
矢印を付けた部分でポリシーを適用したのですが、想定通りがくっと通信速度が落ちていますので、問題なく設定できていますね。
010

WindowsServer2016でのアウトバウンド帯域制御については以上となります。

まとめ

WindowsServer2016でアウトバウンド帯域制御をする方法、手順について記載しました。前回紹介したRobocopyだけでは帯域制御ができないので、ポリシーベースのQoSを使った帯域制御が有効です。オンプレ-クラウド間のファイルサーバーの移行の際などに活用いただければ幸いです。

~余談~
サーバーワークスに入社して半年が経ちましたが、様々な分野の社内勉強会が頻繁に行われているのを目の当たりにしています。AWS認定資格に合格できたのも、AWS認定資格向けの社内勉強会に参加していたことが大きかったです。弊社高田がAWS認定資格の社内勉強会に関するブログを書いておりますので、ご興味があればご参照ください。
AWS 認定資格向けの社内勉強会をやったら、合格者が増えている気がする件