加入者管理とサービスのためのリソース監視
加入者管理およびサービス概要のためのリソース監視
Junos OSは、CLIとSNMP MIBクエリの両方を使用したリソース監視機能をサポートしています。このユーティリティを使用して、システムの安定性、特にMXシリーズルーター上のIチップベースのラインカードとTrioベースのFPCの健全性と運用効率を確保するために、十分なヘッドルーム(アプリケーションまたは仮想ルーター用のメモリ容量制限)をプロビジョニングできます。
ukernelメモリまたはASICメモリのメモリ使用率が一定のしきい値に達すると、システム動作がラインカードの健全性とトラフィック処理の安定性を損なうことになります。システムパフォーマンスのこのようなトレードオフは、ライブトラフィックとプロトコルのサポートにとって有害となる可能性があります。
リソースの特定のしきい値を超えた場合にエラーログを発生させるしきい値を設定する機能のほか、SNMP MIBクエリーを使用してしきい値とリソース使用率を監視することもできます。
次のセクションでは、Junos OSで利用可能なリソース監視のタイプについて説明します。
- ラインカードリソース監視に透かしを使用する
- CoSリソース容量に基づく加入者負荷の調整
- showコマンドを使用したメモリリソースリージョンの使用率の調査
- 処理遅延を軽減するための負荷調整
- リソースモニターによる加入者の制限
- 加入者管理とサービスのリソース監視に関する変更履歴
- 加入者管理とサービス動作のためのプラットフォーム固有のリソース監視
ラインカードリソース監視に透かしを使用する
ukernメモリ(ヒープ)、ネクストホップ(NH)メモリ、ファイアウォールまたはフィルターメモリなどのラインカードリソースのウォーターマークまたはチェックポイント値を、TrioベースとIチップベースのラインカードの両方で統一するように設定できます。NHメモリ透かしは、カプセル化メモリ(出力WAN静的RAMメモリ)にのみ適用されます。カプセル化メモリはIチップに固有であり、Trioベースのチップには適用されません。設定されたウォーターマークを超えると、エラーログがトリガーされます。リソースが特定のしきい値を超えて使用された場合、しきい値を超えたことを通知する警告システムログメッセージが生成されます。ネットワークのニーズに基づいて、既存の加入者とサービスを終了して、システムの過負荷になって故障するのを防ぐかどうかを決定できます。
この機能は、各ラインカードから入力を収集し、既知の内部ポートを使用してこの統計の詳細をルーティングエンジンプロセスに転送します。この情報は、ルーチンエンジン上のデーモンによってスキャンされ、セッションデータベースに組み込まれた共有メモリー領域を使用して、しきい値を超えた場合の警告メッセージが生成されます。
[edit system services]階層レベルで以下のパラメーターを設定して、すべてのメモリ空間または領域に共通する高しきい値と、DPCとMPCのさまざまなメモリブロックの透かし値を指定できます。
-
resource-monitor high-threshold valueステートメントを使用した、ヒープやukernel、ネクストホップとカプセル化、ファイアウォールフィルターメモリなど、メモリのすべての領域に対して、警告またはエラーログが生成される高しきい値。 -
resource-monitor free-nh-memory-watermark percentageステートメントを使用してウォーターマーク値で監視するネクストホップに使用される空きメモリ領域の割合。 -
resource-monitor free-heap-memory-watermark percentageステートメントを使用してウォーターマーク値で監視する ukernel またはヒープメモリに使用される空きメモリ領域の割合。 -
resource-monitor free-fw-memory-watermark percentageステートメントを使用して透かし値で監視するファイアウォールおよびフィルターメモリに使用される空きメモリ領域の割合。この機能はデフォルトで有効になっており、手動で無効にすることはできません。ネクストホップメモリの空き容量の割合に対するウォーターマーク値のデフォルト値と設定された値は、カプセル化メモリにも適用されます。
空きukernelまたはヒープメモリ、ネクストホップメモリ、ファイアウォールフィルターメモリの割合のデフォルトのウォーターマーク値を以下に示します。
-
free-heap-memory-watermark—20
-
free-nh-memory-watermark—20
-
free-fw-memory-watermark—20
CoSリソース容量に基づく加入者負荷の調整
サービス クラス(CoS)基準は、加入者アクセスのスロットリング決定に組み込まれます。CoSリソースの可用性に関する情報、つまりキュー容量は、ラインカードから収集されます。加入者ログイン時に、加入者が CoS リソースを必要とすると仮定すると、ラインカードは、スケジューリング階層にバインドされ、新しいスケジューリング階層に自由にバインドできないリソースの割合として、CoS キューの使用率を報告します。[edit system services]階層レベルのhigh-cos-queue-thresholdステートメントは、FPCスロットごとに個別に0%から90%の範囲で設定できます。特定のFPCのCoSキュー使用率がFPCで設定されたしきい値レベルに達すると、そのFPCへのそれ以上の加入者ログインは許可されません。このリソース監視メカニズムは、調整可能な安全マージンを提供し、各FPCの利用可能なCoSキューリソースを完全に使い果たさないようにします。high-cos-queue-thresholdを参照してください。この機能は、加入者管理を有効にしている場合にのみ使用できます。加入者管理の有効化の詳細については、Junos OS拡張加入者管理の設定を参照してください。
showコマンドを使用したメモリリソースリージョンの使用率の調査
show system resource-monitor fpcコマンドを使用して、FPCのパケット転送エンジンのメモリリソースの使用状況を監視できます。フィルターメモリは、ファイアウォールフィルターカウンターに使用されるフィルターカウンターメモリを示します。各メモリ領域の横に表示されるアスタリスク(*)は、設定されたしきい値が現在超えていることを示します。リソース監視コマンドは、監視するさまざまなラインカードアプリケーションのメモリの透かしの設定値を表示します。表示される統計メトリックは、個々のラインカードの現在のメモリ使用率の計算に基づいています。ukern メモリは、さまざまなタイプのライン カードに共通であり、ヒープ メモリ バッファーを示します。特定のスロットのラインカードまたはFPCには複数のパケット転送エンジンコンプレックスが含まれる可能性があるため、特定用途向け集積回路(ASICs)で使用されるメモリは、特定のPFEコンプレックスに固有です。サポートされているラインカードのバリエーションが異なるアーキテクチャモデルにより、ASIC固有のメモリ(ネクストホップおよびファイアウォールまたはフィルターメモリ)の使用率は異なる解釈ができます。
処理遅延を軽減するための負荷調整
ルーティングエンジンは、リソース監視を使用して、ラインカードのパケット転送エンジンの処理負荷を評価し、軽減できます。ルーティングエンジンは、パケット転送エンジンが処理できるよりも高いレートで作業を送信することができます。これは、ラインカードまたはパケット転送エンジンのオーバードライブと呼ばれることもあります。パケット転送エンジンのワークロードが高すぎると、パケット処理に顕著な遅延が発生することがあります。
リソース監視により、パケット転送エンジンに送信するパケットの往復遅延を評価することで、ルーティングエンジンが負荷を評価できます。往復時間が長いほど負荷が高くなるため、パケット転送エンジンで処理遅延が発生する可能性が高くなります。必要に応じて、ルーティングエンジンは、完了が許可される加入者セッション(クライアントとサービス)の割合を減らします。
この機能は、負荷調整または往復時間負荷調整と呼ばれます。スロットリングにより、ルーティングエンジンがラインカードにオーバードライブし、処理の遅延がオペレーターやバックオフィスシステムに見えるようになるのを防ぎます。それは次のように機能します。
遅延を監視するために、ルーティングエンジンはラインカード上のパケット転送エンジンにエコー要求メッセージを毎秒送信します。エコー要求には、送信された時点のタイムスタンプと実行中のシーケンス番号の両方が含まれます。メッセージの優先度はベストエフォートで、ラインカードの最悪の場合の処理遅延をシミュレートします。
パケット転送エンジンはエコー要求を処理し、エコー応答で応答します。ルーティングエンジンが返されたパケットを処理する際のジッターを最小限に抑えるために、メッセージの優先度を高くします。
ルーティングエンジンはエコー応答を受信すると、エコー要求のタイムスタンプとその特定のシーケンス番号のエコー応答を受信した時間との時間差として往復時間を計算します。
ルーティングエンジンは、往復遅延時間をデフォルトの往復閾値である1秒と比較します。測定された遅延が3回連続してトリップのしきい値よりも長い場合、ルーティングエンジンは新規加入者の一定割合のログインを拒否し、確立される新しいクライアントとサービスセッションの数を減らします。この削減はスロットリングと呼ばれます。
内部アルゴリズムは、しきい値と往復時間に基づいてスロットリング率を導き出します。この割合は、その時点での往復遅延によって異なります。
ルーティングエンジンは、連続した3つの遅延測定のセットがすべてしきい値を超えるたびにスロットルを上げ、より多くの加入者ログインを拒否します。
測定された遅延が 3 回連続したトリップのしきい値を下回ると、ルーティングエンジンはスロットルを解除します。これにより、加入者は自由にログインできます。
RTTロードスロットリングは、以下のようにイーサネットインターフェイス(ge、xe)と疑似回線インターフェイス(ps)に対してラインカードごとに適用されます。
-
集合型イーサネットインターフェイスの場合、集約型イーサネットバンドルに関連付けられたラインカードセットに適用されます。
-
冗長論理トンネル(RLT)を持つ疑似配線インターフェイスの場合、アンカーポイントに関連付けられたラインカードセットに適用されます。
どちらの場合も、ルーティングエンジンは、スロットリングを決定する遅延値を、セット内のすべてのラインカードの中で最長のラウンドトリップ遅延と見なします。
表1は 、往復遅延が内部しきい値よりも大きい場合に、12秒間にわたってラインカードで加入者セッションがどのようにスロットルされるかを示しています。この例では、以下の前提があります。
-
内部遅延しきい値は1秒です。
-
遅延測定は1秒ごとに行われます。
-
往復遅延しきい値を超える往復遅延測定を 3 回連続すると、セッション作成率が 10% 低下します。しきい値を超えている限り、調整は 3 回の測定ごとに増加します。
-
測定された遅延が低下し、3回連続して往復遅延測定のしきい値を下回っている場合、セッションレートは100%に戻ります。
この例は簡略化されています。正確な調整率は動的に決定され、秒単位で変化する可能性があることに注意してください。
| 時間 |
ラウンド トリップ遅延(ms) |
しきい値超過しました |
許可されたセッションの割合 |
|---|---|---|---|
| 1 |
850 |
いいえ |
100 |
| 2 |
900 |
いいえ |
100 |
| 3 |
995 |
いいえ |
100 |
| 4 |
1021 |
はい しきい値超過カウント#1 |
100 |
| 5 |
1130 |
はい しきい値超過カウント#2 |
100 |
| 6 |
1158 |
はい しきい値超過カウント#3 |
90 セッション率が10%低下 |
| 7 |
1127 |
はい しきい値超過カウント#1 |
90 セッション率が10%低下 |
| 8 |
1135 |
はい しきい値超過カウント#2 |
90 |
| 9 |
1126 |
はい しきい値超過カウント#3 |
80 セッション率が10%低下 |
| 10 |
1000 |
いいえ しきい値を超えていません カウント#1 |
80 |
| 11 |
991 |
いいえ しきい値を超えていません カウント#2 |
80 |
| 12 |
998 |
いいえ しきい値を超えていないカウント#3 |
100 調整の削除 |
リソース負荷の監視とラウンドトリップタイムスロットリングは、デフォルトで有効になっています。以下のステートメントのいずれかを使用して、この機能を無効にできます。
-
no-load-throttle[edit system services resource-monitor]階層レベルでは -
no-throttle[edit system services resource-monitor]階層レベルでは
この機能を無効にしてパケット転送エンジンがビジー状態になった場合、新しい加入者はログインしてアクティブにすることはできますが、一定期間トラフィックは流れません。このようなトラフィック処理の遅延が顕著になる場合があります。
以下のコマンドを使用して、負荷調整機能が有効になっているかどうかを確認し、機能のさまざまな側面が動作している様子を確認できます。太字のフィールドは特に便利です。
user@host> show system resource-monitor summary
Resource Usage Summary
Throttle : Enabled
Load Throttle : Enabled /*RTT load throttling is enabled*/
Heap Mem Threshold : 70 %
IFL Counter Threshold : 95 %
Round Trip Delay Threshold(ms) : 1000 /*RTT throttle value*/
Filter Counter Threshold : 100 %
Expansion Threshold : 95 %
CoS Queue Threshold : 100 %
MFS threshold : 70 % Used : 0
Slot # 0
Client allowed : Yes
Service allowed : Yes
Heap memory used : 339204848 In % : 18
Average Round-trip Delay(ms) : 103 (30 ) Round-trip Delay(ms) : 103 /*RTT delay and average delay, the 30 in parentheses means that the average is for last 30 secs*/
MAX session rate allowed(%) : 100
Client denied : 1524 /*The number of new subscribers have been denied*/
Service Denied : 0
Performance Denial Client : 1524 <--
Performance Denial Service : 0
IFL Denied : 0
リソースモニターによる加入者の制限
Junos OSリリース17.3R1以降、リソース監視を使用して、ハードウェア要素ごとにサポートされる加入者数を直接制限することもできます。シャーシ、ラインカード(MPC)、MIC、またはポートごとに、ログインできる加入者の最大数を指定できます。制限は、1つのクライアントタイプ(DHCP、L2TP、またはPPPoE)の加入者のみ、または任意のクライアントタイプの加入者に設定できます。
この機能により、ハードウェア要素ごとにログインする加入者数が、ネットワークが目的のサービス帯域幅で安定して提供できる数を超えないようになります。ハードウェア要素の制限に達すると、加入者数が設定された制限を下回るまで、その要素での新しい加入者ログインが拒否されます。制限を超えた新規加入者は、同じブブロードキャストドメイン内の別のハードウェア要素に接続できます。集約されたイーサネットインターフェイスの1つ以上のレッグに制限を設定すると、加入者数がいずれかのレッグの値を超えるとログインが拒否されます。
この方法で加入者を制限すると、ハードウェア要素間で負荷が分散されますが、いかなる種類のロードバランシングも提供されません。この機能は、ネットワーク内の容量をマッピングし、その容量を拡張するために必要なハードウェアリソースを決定するのにも役立ちます。例えば、特定の量のメモリを必要とするサービスを提供し、特定のハードウェアセットでサービスできる加入者数を知っている場合、必要なメモリ量を決定できます。また、加入者あたりより多くのメモリを持つサービスを追加したい場合は、必要な追加量を計算し、利用可能なメモリと比較して、新しいサービスを処理するために新しいポート、MIC、MPC、またはルーターをプロビジョニングする必要があるかどうかを判断できます。
加入者管理とサービスのリソース監視に関する変更履歴
サポートされる機能は、使用しているプラットフォームとリリースによって決まります。 機能エクスプローラー を使用して、機能がお使いのプラットフォームでサポートされているかどうかを確認します。
| リリース | の説明 |
|---|---|
| 17.3 | Junos OSリリース17.3R1以降、リソース監視を使用して、ハードウェア要素ごとにサポートされる加入者数を直接制限することもできます。 |
| 17.4 | Junos OSリリース17.4R1以降、サービスクラス(CoS)基準が加入者アクセスのスロットリング決定に組み込まれています。 |
| 19.4 | Junos OSリリース19.4R1以降、キューベースのスロットリングによって加入者がスロットルされないように、値0を指定することができます。 |
加入者管理とサービス動作のためのプラットフォーム固有のリソース監視
| プラットフォーム |
違い |
|---|---|
| MPC2Eレガシー、MPC2E-NG、MPC3E-NG、MPC5E、MPC7Eラインカードを備えたMX240、MX480、MX960ルーター | ハードウェアでは、キューのみに基づいてアドミッションを決定するCoSリソース監視機能がサポートされています。他の CoS リソースは、この基準には含まれません。この機能は、擬似回線、論理トンネル、または冗長論理トンネルデバイスに到着する加入者のスロットリングをサポートしていません。 |
| MX80、MX104ルーター |
リソース監視設定をサポートします。 |
| MX240、MX480、MX960、MX2010、MX2020ルーター |
以下のラインカードは、MX240、MX480、MX960、MX2010、MX2020ルーターでのリソース監視をサポートしています。
|
リソースモニターによるクライアントタイプおよびハードウェア要素別の加入者制限
リソース監視を使用してシステム メモリ使用量を監視および管理するだけでなく、これを使用して、ハードウェア要素(シャーシ、ライン カード(MPC)、MIC、ポート)ごとにサポートされる加入者数を直接制限できます。これらの各要素にログインできる加入者の最大数を指定できます。この制限は、1 つのクライアント タイプ(DHCP、L2TP、または PPPoE)のみの加入者、またはこれらのクライアント タイプのいずれかの加入者に適用します。後者の場合、制限は 3 つのクライアント タイプすべてのセッションの合計に適用されます。
加入者制限により、ハードウェア要素ごとにログインする加入者数が、ネットワークが目的のサービス帯域幅で安定して提供できる数を超えないようにすることができます。ハードウェア要素の制限に達すると、加入者数が設定された制限を下回るまで、その要素での新しい加入者ログインが拒否されます。制限を超える新しい加入者は、同じブブロードキャストドメイン内の別のハードウェア要素に接続します。集約されたイーサネットインターフェイスの1つ以上のレッグに制限を設定すると、加入者数がいずれかのレッグの値を超えるとログインが拒否されます。
この方法で加入者を制限すると、ハードウェア要素間で負荷が分散されますが、いかなる種類のロードバランシングも提供されません。この機能は、ネットワーク内の容量をマッピングし、その容量を拡張するために必要なハードウェアリソースを決定するのにも役立ちます。例えば、特定の帯域幅でサービスを提供し、特定のハードウェアセットでサービスできる加入者数を知っている場合、必要な帯域幅を決定できます。また、加入者あたりの帯域幅を増やすサービスを追加したい場合は、必要な追加帯域幅を計算し、利用可能な帯域幅と比較して、新しいサービスを処理するために新しいポート、MIC、MPC、またはルーターをプロビジョニングする必要があるかどうかを判断できます。
CLIでは、 fpc と picという用語を使用しています。この機能では、 fpc はMPCに対応し、 pic はMICに対応します。
ハードウェア要素に許可される加入者の最大数に制限を設けるには:
例えば、以下の設定では、PPPoE加入者のシャーシとMPCの制限を設定します。
[edit system services resource-monitor subscribers-limit] user@host# edit client-type pppoe [edit system services resource-monitor subscribers-limit client-type pppoe] user@host# set chassis limit 112000 user@host# set fpc 0 limit 28000 user@host# set fpc 1 limit 28000 user@host# set fpc 2 limit 28000 user@host# set fpc 3 limit 28000
変更履歴テーブル
サポートされる機能は、使用しているプラットフォームとリリースによって決まります。 機能エクスプローラー を使用して、機能がお使いのプラットフォームでサポートされているかどうかを確認します。