Cisco SCMS SM LEGs ユーザ ガイド Release 3.1.6
CNR LEG 機能の仕様
CNR LEG 機能の仕様
発行日;2012/01/14 | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 2MB) | フィードバック

目次

CNR LEG 機能の仕様

CNR LEG の高レベル設計

ロギングおよびトレース

拡張ポイントの動作

init-entry

post-send-packet

post-packet-decode

CNR LEG 機能の仕様

ここでは、CNR LEG の設計、ロギング、トレース、および CNR LEG が実行する動作について説明します。

この付録の目的は、CNR LEG の動作および CNR との統合について理解することです。

「CNR LEG の高レベル設計」

「ロギングおよびトレース」

「拡張ポイントの動作」

CNR LEG の高レベル設計

CNR LEG は次の拡張ポイントを使用します。

init-entry

post-packet-decode

post-send-packet

拡張ポイント フックが呼び出されると、次の一連のイベントが発生します。

1. 拡張ポイント フックは、最小限の計算を実行して必要なすべてのデータを抽出し、ノンブロッキング C++ API 動作を呼び出します。

2. ノンブロッキング動作により、メッセージがエンコードされてキューに格納されます。

3. ノンブロッキング C++ API ネットワーク タスクは、メッセージ バッファからのメッセージを読み取り、メッセージをネットワーク経由で SM 上の PRPC サーバに送信します。

4. PRPC サーバはメッセージをデコードし、ケーブル サポート モジュールに渡します。ケーブル サポート モジュールは、SM のコア機能を使用して、SM データベースにサブスクライバを設定します。

図6-1 CNR LEG の高レベル設計

 

CNR 拡張機能のディスパッチング スレッドで実行される動作は、メッセージの作成とメッセージ キューへの格納だけです。別のスレッドでは、重いネットワーク動作が実行されます。何らかの理由でメッセージ キューがいっぱいになると、遅延が発生して CNR のパフォーマンスが低下するリスクを防ぐため、メッセージがドロップされることに注意してください。

ロギングおよびトレース

デフォルトでは、CNR LEG は CNR ログにメッセージを記録します。LEG はデバッグ モードおよびいくつかのトレース レベルをサポートします。LEG コンフィギュレーション ファイルは、ロギングおよびトレースを管理します。


) LEG コンフィギュレーション ファイルへの変更は、LEG を再起動したときにのみ有効になります。


拡張ポイントの動作

ここでは、CNR LEG が各拡張ポイントで実行する動作について説明します。

「init-entry」

「post-send-packet」

「post-packet-decode」

init-entry

拡張ポイント init-entry は CNR LEG を初期化し、終了します。

初期化中、CNR LEG は次の動作を実行します。

コンフィギュレーション ファイルの読み取り

LEG ロギングおよびトレースの初期化

ノンブロッキング C++ API インスタンスの作成および SM への接続

C++ API ネットワーク タスク スレッドの起動

終了時、CNR LEG は次の動作を実行します。

ノンブロッキング C++ API インスタンスの停止および解放

C++ API ネットワーク タスク スレッドの停止

post-send-packet

拡張ポイント post-send-packet は、次の cableLogin 動作を SM に送信します。

要求ディクショナリが DHCP REQUEST に対応しているか、また応答ディクショナリが DHCP ACK に対応していることを確認します。

要求ディクショナリから CM-MAC、CPE-MAC、および CMTS-IP を抽出します。

応答ディクショナリから割り当てられた CPE-IP およびリース期限を抽出します。

CM as Subscriber モードで、CM 要求を無視します。

抽出したパラメータを使用して、ノンブロッキング C++ API cableLogin または login 動作を呼び出します。

CM-MAC(Option 82)が存在しない場合、IP アドレスにのみ基づいてリース期限を延長する試みが行われます。

post-packet-decode

拡張ポイント post-packet-decode は、次の cableLogout または logout 動作を SM に送信します。

要求ディクショナリが DHCP RELEASE または DHCP DECLINE に対応していることを確認します。

要求ディクショナリから CM-MAC、CPE-MAC、CPE-IP、および CMTS-IP を抽出します。

抽出したパラメータを使用して、ノンブロッキング C++ API cableLogout\logout 動作を呼び出します。