NetLimiter4の使い方 - 累積通信量に応じて帯域を制限する
NetLimiter4の使い方について基本となるところを
「NetLimiter4の使い方 - 帯域制御(通信量制限)の方法」
「NetLimiter4の使い方 - コネクションごとの帯域制御(通信量制限)の方法」
に書きました。今回は帯域を動的に変更するという応用編です。
私の場合VPN のサービスを提供しているわけですが、リソースに限界があるので対象を絞っています。主にスマホでの利用を想定し、それに合わせてチューニング(?)しているわけでL2TP/IPsec しかサービスしていないのもそれが理由です。ですが、L2TP/IPsec はPC でも使えるわけで中にはPCで何かを連続的にダウンロードしているようなお客さんもいらっしゃいます。
別にそういう使い方をしてはならないということはないのですが、サーバー設置の趣旨からするとそういうのはできればやめてほしくなります。
そこで累積通信量が突出しているコネクションに関してはそのコネクションに対してだけ帯域を絞ることにしました。これを自動的にやるにはNetLimiter4をどう使えばいいかというのがこの記事のテーマです。
あんまりいい例ではないのですが実際にそういう帯域制御が行われている様子です。
A のところで(この画面をキャプチャーしたときは制限をはずしてありますが)トータルで帯域は360kB/sに制限されています。
またB のところで一つのコネクションあたり48kB/sに制限しています。
実際の利用状況を見るとC-1 のあたりは40kB/s に制限されており、C-2 のところは32kB/s、C-3 は24kB/s に制限されています。これはそれぞれコネクションの累積通信量が20MB、50MB、100MB を超えたためそれに対応する制限を発動したためです(このキャプチャーはタイミングが悪くて、実際にはC-1 の上に全体的な制限しか受けていない40MB/s~48MB/s のコネクションが存在するのがふつうです)
これらはC のところで設定されています。C のルールは特定のコネクションに対してだけ適用されているわけですが、こういうときはルールが機能していてもUL Limit のところのチェックボックスにはチェックが入らない(入れない)ことに注意します。
=======
今回はちょっと複雑(面倒)です。NetLimiter4 に慣れていない方が初めてこの設定をされるのであれば手間はかかりますが以下に書いた手順通りに進めた方が安全でしょう。
手順がまずいと条件を満たしたコネクションだけ制限するつもりがすべてのコネクションが制限されてしまったり、途中で設定を変更したことにより累積通信量がクリアされてしまったりします。
------
20MB、50MB、100MB に対する制限が入っていますので、200MB を超えたら帯域を12kB/s に制限するというのをやってみます。
まずFilters のタブを選択します。すでに設定済みのフィルターが表示されますが、ここでAdd Filter をクリックします。
何度も書きますがフィルターというのは帯域制御を行うターゲットを設定するものです。
-------
Filter Editor の画面が開きます。
Filter Name は適当でいいのですが、ここではわかりやすいようにアプリケーション名と制限の対象となる通信量から名前を作っています。
Per-Type はコネクションごとに考えるわけですからPer-connectionです。
そしてFilter Functions のところのAdd ボタンを押します。
========
今度はFilter Function Editor が開きますのでChoose Function をApplication Path is にします(ここにはいろんなものがあります)
Add Value でターゲットにするアプリケーションを選択しAdd ボタンを押し、それがValue List に表示されたらSave します。
--------
Filter Editor に戻るのでFilter Functions が意図したように設定されていることを確認しSave します。
--------
Filters の画面に戻ると今追加したフィルタが表示されRules の項目は0になっているはずです。このフィルターを選択した上でAdd Rule をクリックします。くどいですがルールはフィルタで選択されたターゲットに適用される帯域制御の内容を言います。
-------
Rule Editor が表示されます。
ここでまず条件が満たされたとき発動する制限を設定します。Rule Type はLimit、DirectionはOut、Valueは12kB/sとなります。
大事なのはEnabled のチェックは外しておくことです。最初から制限されてしまったら話になりませんから。
-------
Filters の画面に戻るとRulesが1 になっていますが、ここで200MB を超えたらという条件を設定するためさらにAdd Ruleをクリックします。
--------
まずRule Type をQuota とします。この場合Direction はBoth しか選択できないようです。VPNサーバーの場合は送信量と受信量はだいたい相関しているのでそれをもとに通信量Quota を200MB とします。
こちらは当然Enabled のチェックはいれておきます。Quota を選択するとActions タブが追加されるので上の操作が終わったあとこれを選択します。
--------
Enable all rules in the same filter にチェックを入れます。
これによって特定のコネクションで設定したQuota: 200MBが達成されるとそのコネクションに対してさきほど設定した12kB/s の送信量制限が有効になるようになります。
-------
新しく追加したフィルターのRules は2 になり右側の方のRules には二つのルールが表示されます。
以上で設定は終了です。
--------
以上の設定の動作状況はRules タブで見ることができます。緑でActive と表示されているものはまだ条件が満たされず制限が発動していないものです。どれか一つでもQuota を満たしたコネクションがあると赤でOverflow の表示が出ます。
さきほど設定したQuota を選択し右側のTools にあるShow quota status をクリックします。
--------
これは通信量がまだ設定したQuota に達していないとき。
-------
こちらはQuota に達したコネクションがあるときです。
10個のコネクションがすでにQuotaを超えています。どのコネクションがQuotaを超えて帯域制限を受けているかはこの画面で確かめられます。
見るだけでなくコネクション打ち切りを含めいろんな操作が可能です。
-------------------
関連
「NeLimiter4の使い方 - 帯域制御(通信量制限)の方法」
「NetLimiter4の使い方 - コネクションごとの帯域制御(通信量制限)の方法」
「NetLimiter4の使い方 - 累積通信量に応じて帯域を制限する」 (この記事)
「帯域制御 NetLimiter 4 のProとLiteの違いを調べてわかった驚愕の事実」
「公開 VPN中継サーバープロジェクトのボランティアサーバーを立ち上げてみた」
「VPNサーバーの帯域制御 - ローカルグループポリシー(QoS)がダメでNetLimiter 4に走る」
「VPN Gate - ボランティアサーバーの接続数に見るアジアの情勢」
「アクセスログに見るOS(Windows)の栄枯盛衰」
「過去記事の一覧(測定、電子工作、天文計算): セッピーナの趣味の天文計算」
« NetLimiter4の使い方 - コネクションごとの帯域制御(通信量制限)の方法 | トップページ | 純水(精製水、蒸留水)を電気分解する - 電解に必要な電圧を考えてみた »
「パソコン・インターネット」カテゴリの記事
- さくらインターネットのレンタルサーバーでGOで書いたCGIを動かした(苦労)話(2021.04.19)
- SHOWROOMのAPI - 「ライブ情報」の取得(GO言語のソースつき)(2019.10.26)
- SHOWROOM 星集め・星投げツール スケジュールの詳細化 BreakDownSchedule() (三周のやり方を例に)(2019.09.25)
- SHOWROOM 新・自動三周ツール -- GO言語によるブラウザ制御 (1) main()(2019.09.17)
この記事へのコメントは終了しました。
« NetLimiter4の使い方 - コネクションごとの帯域制御(通信量制限)の方法 | トップページ | 純水(精製水、蒸留水)を電気分解する - 電解に必要な電圧を考えてみた »
コメント