加入者管理およびサービスのリソース監視
加入者管理およびサービスのリソース監視の概要
Junos OSは、CLIおよびSNMP MIBクエリーの両方を使用して、リソース監視機能をサポートしています。このユーティリティを使用して、十分なヘッドルーム(アプリケーションまたは仮想ルーターのメモリ 領域制限)をプロビジョニングして、システムの安定性を確保できます。特に、I チップベースのライン カードや MX シリーズ ルーター上の Trio ベースの FPC の健全性と運用効率を確保できます。
ウカーネル メモリまたは ASIC メモリのメモリ使用率が一定のしきい値に達すると、システム運用がライン カードの健全性とトラフィック処理の安定性に妥協します。このようなシステム パフォーマンスのトレードオフは、ライブ トラフィックとプロトコルのサポートに悪影響を与える可能性があります。
リソースの特定のしきい値を超えた場合にエラー ログを発生させるしきい値を設定する機能に加え、SNMP MIB クエリーを使用してしきい値とリソース使用率を監視することもできます。
以下のセクションでは、Junos OS で使用可能なリソース監視のタイプについて説明します。
- ラインカードリソース監視にウォーターマークを使用する
- CoS リソース容量に基づいた加入者の負荷調整
- show コマンドを使用したメモリ リソース領域の使用率の検証
- 処理の遅延を減らすための調整の負荷
- リソースモニターによる加入者の制限
ラインカードリソース監視にウォーターマークを使用する
Ukern メモリ(ヒープ)、ネクストホップ(NH)メモリ、ファイアウォールまたはフィルター メモリなど、ラインカード リソースのウォーターマークまたはチェックポイント値を、Trio ベースと I チップベースのライン カードの両方で統一するように設定できます。NHメモリウォーターマークは、カプセル化メモリ(出力WANスタティックRAMメモリ)にのみ適用されます。カプセル化メモリは I チップ固有のものであり、Trio ベースのチップには適用できません。設定したウォーターマークを超えた場合、エラーログがトリガーされます。リソースが特定のしきい値を超えて使用されている場合は、しきい値を超えたことを通知する警告システム ログ メッセージが生成されます。ネットワークのニーズに基づいて、既存の加入者とサービスを終了してシステムの過負荷を回避し、故障を防ぐかどうかを決定できます。
この機能は、各ラインカードからの入力を収集し、この統計詳細を既知の内部ポートを使用してルーティングエンジンプロセスに転送します。この情報は、ルーチン・エンジン上のデーモンによってスキャンされ、セッション・データベースに組み込まれた共有メモリー・スペースを使用して、しきい値を超えた状態の警告メッセージが生成されます。
リソース監視を設定する機能は、MX80、MX104ルーター、およびMX240、MX480、MX960、MX2010、MX2020ルーターで次のラインカードでサポートされています。
MX-MPC1-3D
MX-MPC1-3D-Q
MX-MPC2-3D
MX-MPC2-3D-Q
MX-MPC2-3D-EQ
MPC-3D-16XGE-SFPP
MPC3E
MPC3E-3D-NG
MPC4E-3D-2CGE-8XGE
MPC4E-3D-32XGE
MPC5EQ-40G10G
MPC5EQ-100G10G
MPC5E-100G10G
MPC5E-40G10G
MPC10E-10C-MRATE
MPC10E-15C-MRATE
MX2K-MPC6E
MX2K-MPC11E
DPCE
MS-DPC
MXシリーズフレキシブルPICコンセントレータ(MX-FPC)
NG-MPC3E
階層レベルで以下のパラメーターを [edit system services]
設定して、すべてのメモリ スペースまたは領域に共通する高しきい値と、DPC と MPC の異なるメモリ ブロックのウォーターマーク値を指定できます。
ステートメントを使用して、ヒープまたはウカーネル、ネクストホップとカプセル化、ファイアウォールフィルターメモリなど、メモリのすべての領域で、警告またはエラーログが生成される値を
resource-monitor high-threshold value
超える高いしきい値。ステートメントを使用してウォーターマーク値で監視するネクストホップに使用されるフリーメモリ領域の
resource-monitor free-nh-memory-watermark percentage
割合。ステートメントを使用してウォーターマーク値で監視するウカーネルまたはヒープ メモリに使用される空きメモリ領域の
resource-monitor free-heap-memory-watermark percentage
割合。ステートメントを使用してウォーターマーク値で監視するファイアウォールとフィルター メモリに使用される空きメモリ領域の
resource-monitor free-fw-memory-watermark percentage
割合。この機能はデフォルトで有効になっており、手動では無効にできません。空きネクストホップメモリの割合に対するウォーターマーク値のデフォルト値と設定値もカプセル化メモリに適用されます。
無料ウカーネルまたはヒープ メモリ、ネクストホップ メモリ、ファイアウォール フィルター メモリの割合のデフォルトウォーターマーク値は次のとおりです。
フリーヒープメモリウォーターマーク—20
free-nh-memory-ウォーターマーク—20
free-fw-memory-ウォーターマーク—20
CoS リソース容量に基づいた加入者の負荷調整
Junos OS リリース 17.4R1 以降、サービス クラス(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拡張加入者管理の設定」を参照してください。
Junos OS リリース 19.4R1 以降では、値 0 を指定して、キューベースの調整によって加入者が調整されないようにすることができます。
このCoSリソース監視機能は、キューに対してのみ、ベースのアドミッション決定を行います。その他の CoS リソースもこの基準の一部ではありません。この機能は、疑似ワイヤ、論理トンネル、または冗長論理トンネル デバイスに到着する加入者の調整をサポートしていません。この機能は、以下のハードウェアでサポートされています。
MX240、MX480、MX960ルーター
MPC2E レガシー、MPC2E-NG、MPC3E-NG、MPC5E、MPC7E ライン カード
show コマンドを使用したメモリ リソース領域の使用率の検証
コマンドを show system resource-monitor fpc
使用して、FPCのパケット転送エンジン上のメモリリソースの使用率を監視できます。フィルター メモリは、ファイアウォール フィルター カウンターに使用されるフィルター カウンター メモリを示します。各メモリ領域の横に表示されるアスタリスク(*)は、設定されたしきい値を現在超えている領域を示しています。リソース監視コマンドは、監視対象の異なるラインカード アプリケーションのメモリに設定されたウォーターマークの値を表示します。表示される統計メトリックは、個々のライン カードの現在のメモリ使用率の計算に基づいています。ukernメモリは、さまざまなタイプのラインカード全体で汎用であり、ヒープメモリバッファを表します。特定のスロットのラインカードまたはFPCには複数のパケット転送エンジンコンプレックスが含まれることがあるため、アプリケーション固有の集積回路(ASIC)で使用されるメモリは、特定のPFEコンプレックスに固有のものです。サポートされるラインカードのさまざまなバリエーションのアーキテクチャモデルにより、ASIC固有のメモリ(ネクストホップおよびファイアウォールまたはフィルターメモリ)使用率の割合は異なります。
処理の遅延を減らすための調整の負荷
Junos OSリリース17.3R1以降、ルーティングエンジンはリソース監視を使用して、ラインカードのパケット転送エンジンの処理負荷を評価して軽減できます。ルーティング エンジンは、パケット転送エンジンが処理できるよりも高い速度で作業を送信できます。これは、ラインカードやパケット転送エンジンのオーバードラッグと呼ばれることもあります。パケット転送エンジンの作業負荷が高すぎると、パケット処理に顕著な遅延が発生する可能性があります。
リソース監視では、ルーティング エンジンがパケット転送エンジンに送信するパケットの往復遅延を評価することで、負荷を評価できます。往復時間が長いほど、負荷が高くなり、パケット転送エンジンで遅延を処理する可能性が高いことを示します。必要に応じて、ルーティング エンジンは、完了が許可される加入者セッション(クライアントとサービス)の割合を低減します。
この機能は、負荷調整または往復時間の負荷調整と呼ばれます。調整では、ルーティング エンジンがライン カードのオーバードライビングから、処理の遅延がオペレーターやバックオフィス システムに表示されるようになります。これは次のように機能します。
遅延を監視するために、ルーティング エンジンは、1 秒ごとにエコー要求メッセージをライン カード上のパケット転送エンジンに送信します。エコー要求には、送信時のタイムスタンプと実行中のシーケンス番号の両方が含まれます。メッセージ優先度はベストエフォートで、ラインカードの最悪ケース処理遅延をシミュレートします。
パケット転送エンジンはエコー要求を処理し、エコー応答で応答します。メッセージ優先度は高く、ルーティング エンジンが返されたパケットを処理する際のジッターを最小限に抑えます。
ルーティングエンジンは、エコー応答を受信すると、エコー要求タイムスタンプと、その特定のシーケンス番号に対するエコー応答を受信する時間の時間差として往復時間を計算します。
ルーティング エンジンは、往復遅延時間をデフォルトの往復しきい値である 1 秒と比較します。測定された遅延が連続して3回の旅行の閾値よりも長い場合、ルーティングエンジンは新規加入者の割合に対するログインを拒否し、確立される新しいクライアントとサービスセッションの数を減らします。この削減は、調整と呼ばれます。
内部アルゴリズムは、しきい値とラウンドトリップタイムに基づいて調整率を導き出します。この割合は、その時点での往復遅延によって異なります。
ルーティングエンジンは、しきい値を超える連続する3つの遅延測定のセットごとに、スロットルを増やし、加入者ログインを拒否します。
測定された遅延が 3 回連続してしきい値よりも小さい場合、ルーティング エンジンはスロットルを削除します。これにより、加入者は自由にログインできます。
RTT ロード スロットルは、イーサネット インターフェイス(ge、xe)およびps(PseudoWire インターフェイス)に対して、ラインカード単位で以下のように適用されます。
集合型イーサネット・インターフェースの場合、集約されたイーサネット・バンドルに関連付けられたライン・カードのセットに適用されます。
冗長論理トンネル(RLT)を持つ疑似回線インターフェイスの場合、アンカー ポイントに関連付けられているライン カードのセットに適用されます。
どちらの場合も、ルーティング エンジンは、調整がセット内のすべてのライン カードの中で最も長いラウンドトリップ遅延であると判断する遅延値を考慮します。
表 1 は、ラウンドトリップ遅延が内部のしきい値を超えた場合、12 秒にわたって加入者セッションがライン カードでどのように調整されるかを示しています。この例では、以下のような前提を持っています。
内部遅延閾値は1秒です。
遅延測定は毎秒発生します。
セッション作成率は、3 回連続して往復遅延測定が往復遅延しきい値を超えた後、10% 減少します。しきい値を超える限り、調整は 3 つの測定値ごとに増加します。
測定された遅延が低下し、連続して3回の往復遅延測定の閾値を下回ると、セッションレートは100%に戻ります。
この例は簡素化されています。正確な調整率は動的に決定され、2 番目から 2 番目に変化する可能性があることを忘れないでください。
時間 |
ラウンドトリップ遅延(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、またはルーターをプロビジョニングする必要があるかどうかを判断できます。
リソース・モニターを使用したクライアント・タイプおよびハードウェア・エレメント別の加入者制限
リソース監視を使用してシステム メモリの使用状況を監視および管理するだけでなく、シャーシ、ライン カード(MPC)、MIC、ポートなど、ハードウェア要素ごとにサポートされる加入者数を直接制限できます。それらの各要素にログインできる加入者の最大数を指定できます。この制限は、1 つのクライアント タイプ(DHCP、L2TP、または PPPoE)の加入者またはこれらのクライアント タイプの加入者にのみ適用します。後者の場合、制限は 3 つのクライアント タイプすべてに対するセッションの合計に適用されます。
加入者制限により、ハードウェア要素ごとにログインする加入者数が、目的のサービス帯域幅での安定性を備えたネットワークの数を超えないようにすることができます。ハードウェア要素の制限に達すると、加入者数が設定された制限を下回るまで、その要素に対する新しい加入者ログインが拒否されます。上限を超える新しい加入者は、同じブロードキャスト ドメイン内の別のハードウェア要素に接続します。集約されたイーサネットインターフェイスの1つ以上の脚に制限を設定した場合、加入者数がいずれかの脚の値を超えた場合、ログインは拒否されます。
このように加入者を制限すると、ハードウェア要素間で負荷が分散されますが、いかなるロードバランシングも提供されません。この機能は、ネットワークの容量をマッピングし、その容量を拡張するために必要なハードウェア リソースを決定するのにも役立ちます。例えば、特定の帯域幅でサービスを提供し、特定のハードウェアセットでサービスを提供できる加入者数を把握している場合、必要な帯域幅を決定できます。また、加入者ごとにより多くの帯域幅を持つサービスを追加したい場合は、必要な帯域幅を計算し、それを利用可能な帯域幅と比較して、新しいサービスを処理するために新しいポート、MIC、MPC、またはルーターをプロビジョニングする必要があるかどうかを判断できます。
CLI では、 および pic
という用語fpc
を使用します。この機能では、 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