2. 概要
以下の図は、SNMPアプリケーション、セキュリティサブシステム、およびトランスポートマッピングに関連するメッセージ処理を示しています。
+-------------------------------------------------------------------+
| SNMPエンティティ |
| |
| +---------------------------------------------------------------+ |
| | アプリケーション | |
| | +-----------+ +--------------+ | |
| | | コマンド | | 通知 | | |
| | | 生成器 | | 発信元 | +-----------+ +--------------+| |
| | +-----------+ +--------------+ | プロキシ | | その他 || |
| | +-----------+ +--------------+ | 転送器 | | アプリ || |
| | | コマンド | | 通知 | +-----------+ +--------------+| |
| | | 応答器 | | 受信器 | | |
| | +-----------+ +--------------+ | |
| +---------------------------------------------------------------+ |
| ^ ^ ^ ^ |
| | | | | |
| v v v v |
| +--------+-------+---------------+-----------+ |
| ^ |
| | +---------------------+ +-----------------+ |
| | | メッセージ処理 | | セキュリティ | |
| ディスパッチャ v | サブシステム | | サブシステム | |
| +------------------+ | +------------+ | | | |
| | PDUディスパッチャ| | +->| v1MP * |<--->| +-------------+ | |
| | | | | +------------+ | | | その他 | | |
| | | | | +------------+ | | | セキュリティ| | |
| | | | +->| v2cMP * |<--->| | モデル | | |
| | メッセージ | | | +------------+ | | +-------------+ | |
| | ディスパッチャ | | | +------------+ | | +-------------+ | |
| | | | +->| v3MP * |<--->| | ユーザベース| | |
| | | | +------------+ | | | セキュリティ| | |
| | | | +------------+ | | | モデル | | |
| | | | +->| その他MP * |<--->| +-------------+ | |
| | | | +------------+ | | | |
| +------------------+ +---------------------+ +-----------------+ |
| ^ ^ |
| | | |
| v v |
| +---------------------------------------------------------------+|
| | トランスポートマッピング (例: RFC 3417) ||
| +---------------------------------------------------------------+|
| |
+-------------------------------------------------------------------+
2.1. ディスパッチャ
ディスパッチャは以下の責任を持ちます:
-
PDUをアプリケーションにディスパッチします。このために、contextEngineIDとpduTypeと組み合わせた一意のPDUタイプを使用して、適切なアプリケーションを選択します。
-
SNMPメッセージの送受信。このために、受信した各SNMPメッセージのバージョンを決定し、処理のために適切なメッセージ処理モデルに渡す必要があります。送信時には、SNMPメッセージを送信する際に使用するトランスポートとアドレスを決定する必要があります。
-
SNMPメッセージ処理。ディスパッチャは、これをメッセージ処理サブシステム内のメッセージ処理モデルに委任します。
-
受信したSNMP PDUを処理するためのアプリケーションの登録。
ディスパッチャは、PDUをアプリケーションに配信し、アプリケーションがPDUを送信するためのサービスインターフェースを提供します。
2.2. メッセージ処理サブシステム
メッセージ処理サブシステムは以下の責任を持ちます:
-
送信用のメッセージの準備。これには、セキュリティ処理を適用するためにセキュリティモデルと協力することが含まれます。
-
受信したメッセージからのデータの抽出。これには、セキュリティ処理を検証するためにセキュリティモデルと協力することが含まれます。
メッセージ処理モデルは、メッセージ処理サブシステム内の1つのメッセージ処理モデルを含みます。複数のメッセージ処理モデルが存在でき、それぞれが異なるバージョンのSNMPメッセージを処理します。
メッセージ処理モデルは、特定のメッセージ形式(バージョン)を処理する責任があります。各メッセージ処理モデルは、セキュリティサブシステムとデータを交換するために使用する形式を指定できます。最低限、SNMPアーキテクチャ [RFC3411] で指定されている抽象データ要素とサービスプリミティブを交換できる必要があります。