解説書 Vol.2

[目次][用語][索引][前へ][次へ]


7.3.6 SNMPオペレーションのメッセージフォーマット

<この項の構成>
(1) SNMPv1オペレーション,SNMPv2cオペレーションのメッセージフォーマット
(2) SNMPv3オペレーションのメッセージフォーマット
(3) SNMPオペレーションメッセージサイズの制限

(1) SNMPv1オペレーション,SNMPv2cオペレーションのメッセージフォーマット

SNMPv1,SNMPv2cのオペレーションを行うメッセージフォーマットは,RFC1157で規定されています。メッセージフォーマットの概要を次の図に示します。

図7-20 SNMPオペレーションメッセージフォーマット

[図データ]

GetRequest,GetNextRequest,GetBulkRequest,SetRequest,GetResponseの各オペレーションのメッセージフォーマットは同じです。PDUタイプの値によってメッセージが区別されます。

オペレーション時は,オペレーションの種別を区別するために次の項目に値を設定してSNMPエージェントにメッセージを送信します。

PDUタイプコードを次の表に示します。

表7-1 PDUタイプコード

オペレーション コード
GetRequest 0xA0
GetNextRequest 0xA1
GetResponse 0xA2
SetRequest 0xA3
GetBulkRequest 0xA5

オペレーションの結果エラーが発生した場合,SNMPエージェントはエラーステータスにエラーコードを設定し,何番目のMIB情報でエラーが発生したかをエラー位置番号に設定したGetResponseオペレーションの応答を返します。オペレーションの結果が正常なら,エラーステータスにエラーなしのコードを設定し,MIB情報内にオペレーションしたMIB情報を設定したGetResponseオペレーションの応答を返します。エラーステータスコードを次の表に示します。

表7-2 エラーステータスコード

エラーステータス コード 内容
noError 0 エラーはありません。
tooBig 1 データサイズが大きくPDUに値を設定できません。
noSuchName 2 指定MIBがない,または書き込みできませんでした。
badValue 3 設定値が不正です。
readOnly 4 書き込みできませんでした(本装置では,応答することはありません)。
GenError 5 コード0〜4以外のエラーが発生しました。
noAccess 6 アクセスできないMIBに対してsetを行おうとしました。
wrongType 7 MIBで必要なタイプと異なるタイプが指定されました。
wrongLength 8 MIBで必要なデータ長と異なる長さが指定されました。
wrongEcoding 9 ASN.1符号が不正でした。
wrongValue 10 MIB値が不正でした。
noCreation 11 該当するMIBが存在しません。
inconsistentValue 12 現在何か理由があって値が設定できません。
resourceUnavailable 13 値の設定のためにリソースが必要ですが,リソースが利用できません。
commitFaild 14 値の更新に失敗しました。
undoFaild 15 値の更新に失敗したときに,更新された値を元に戻すのに失敗しました。
notWriteable 17 セットできません。
inconsistentName 18 該当するMIBが存在しないため,現在は作成できません。

(2) SNMPv3オペレーションのメッセージフォーマット

SNMPv3のオペレーションを行うメッセージフォーマットは,RFC3416で規定されています。メッセージフォーマットの概要を次の図に示します。

図7-21 SNMPv3オペレーションメッセージフォーマット

[図データ]

GetRequest,GetNextRequest,GetBulkRequest,SetRequest,Response,SNMPv2-Trap,Reportの各オペレーションのメッセージフォーマットは同じです。PDUタイプの値によってメッセージが区別されます。

オペレーション時は,オペレーションの種別を区別するため,次の項目に値を設定してSNMPエージェントにメッセージを送信します。

PDUタイプコードを次の表に示します。

表7-3 PDUタイプコード

オペレーション コード
GetRequest 0xA0
GetNextRequest 0xA1
Response 0xA2
SetRequest 0xA3
GetBulkRequest 0xA5
SNMPv2-Trap 0xA7
Report 0xA8

オペレーションの結果エラーが発生した場合,SNMPエージェントはエラーステータスにエラーコードを設定し,何番目のMIB情報でエラーが発生したかをエラー位置番号に設定したGetResponseオペレーションの応答を返します。オペレーションの結果が正常であれば,エラーステータスにエラーなしのコードを設定し,MIB情報内にオペレーションしたMIB情報を設定したGetResponseオペレーションの応答を返します。

エラーステータスコードを次の表に示します。

表7-4 エラーステータスコード

エラーステータス コード 内容
noError 0 エラーはありません。
tooBig 1 データサイズが大きくPDUに値を設定できません。
noSuchName 2 指定MIBがない,または書き込みできませんでした。
badValue 3 設定値が不正です。
readOnly 4 書き込みできませんでした(本装置では,応答することはありません)。
GenError 5 コード0〜4以外のエラーが発生しました。
noAccess 6 アクセスできないMIBに対してsetを行おうとしました。
wrongType 7 MIBで必要なタイプと異なるタイプが指定されました。
wrongLength 8 MIBで必要なデータ長と異なる長さが指定されました。
wrongEcoding 9 ASN.1符号が不正でした。
wrongValue 10 MIB値が不正でした。
noCreation 11 該当するMIBが存在しません。
inconsistentValue 12 現在何か理由があって値が設定できません。
resourceUnavailable 13 値の設定のためにリソースが必要ですが,リソースが利用できません。
commitFaild 14 値の更新に失敗しました。
undoFaild 15 値の更新に失敗したときに,更新された値を元に戻すのに失敗しました。
authorizationError 16 認証に失敗しました。
notWriteable 17 セットできません。
inconsistentName 18 該当するMIBが存在しないため,現在は作成できません。

(3) SNMPオペレーションメッセージサイズの制限

本装置では2048バイトまでのSNMPオペレーションメッセージを処理します。2048バイトを超えるSNMPオペレーションメッセージは破棄されます。

[目次][前へ][次へ]


[他社商品名称に関する表示]

Copyright (c)2005, 2011, ALAXALA Networks Corporation. All rights reserved.