上述の通り、IPネットワーク上で経由してログ情報へ送信する際には、ログ情報をIPネットワーク上で喪失することは極力避けることが望ましい。しかしながら、ネットワーク装置から送信されるログ情報は、IPネットワーク上で喪失してしまうことがある。例えば上述のSYSLOG情報は、UDPパケットで送信され、TCPパケットの送信のように送信先への到達が保証されないため、IPネットワーク上で喪失してしまうことがある。
また、レイヤ2スイッチのようなネットワーク装置から、IPネットワーク上にてユーザデータ等の主信号を伝送するインバンド回線を経由して、ログ情報を送信することを想定する。レイヤ2スイッチは、インバンド回線に接続される複数の通信ポートを有している。このため、レイヤ2スイッチからインバンド回線を経由してログ情報を送信する場合には、複数の通信ポートのいずれにログ情報を送信すればよいか決定することが求められるが、このような技術的課題に対する解決策は提案されていない。
また、インバンド回線に接続されるこれらの通信ポートのそれぞれが、いつリンクアップするかが不明であり、ログ情報を、いつどの通信ポートから送信すればよいか決定することが求められるが、このような技術的課題に対する解決策は提案されていない。
以下、添付する図面を参照して実施例を説明する。図1は、開示の通信ネットワークの概略構成図である。参照符号1は開示の通信ネットワークを示し、参照符号10は開示のネットワーク装置の実施例であるレイヤ2スイッチを示し、参照符号11は第1CPUカードを示し、参照符号12は第2CPUカードを示す。
参照符号13、…13はそれぞれ回線インタフェースユニットカードを示し、参照符号14、…14は通信ポートを示し、参照符号NT1、NT2及びNT3はそれぞれローカルエリアネットワークを示し、参照符号S1、S2及びS3はSYSLOGサーバを示し、なお以下の説明において、「回線インタフェースユニット」を「LIU」と記すことがある。また以下の説明において、「ローカルエリアネットワーク」を「LAN」と記すことがある。
以下の説明では、開示のネットワーク装置として、RFC3164に規定されるSYSLOG情報を送信するレイヤ2スイッチを例示して説明を行う。しかし、本発明の適用範囲は、RFC3164に規定されるSYSLOG情報やレイヤ2スイッチに限定されるものではない。本発明は、IPネットワークを経由してログ情報を送信するネットワーク装置に広く適用可能である。
通信ネットワーク1は、レイヤ2スイッチ10と、SYSLOGサーバS1〜S3を有する。レイヤ2スイッチ10と各SYSLOGサーバS1〜S3とは、それぞれIPネットワークであるローカルエリアネットワークNT1〜NT3を経由して接続されている。
レイヤ2スイッチ10は、第1CPUカード11と、第2CPUカード12と、1つ以上のLIUカード13、…13を有する。第1CPUカード11、第2CPUカード12、及び各LIUカード13、…13は、「シェルフ」と呼ばれる回線収容棚に収容されてよい。
第1CPUカード11及び第2CPUカード12は、レイヤ2スイッチ10の動作を制御するための論理回路を備える。第1CPUカード11及び第2CPUカード12のいずれか一方が運用系カードとして動作する間、他方が待機することにより、レイヤ2スイッチ10は冗長構成を有する。
LIUカード13、…13は、ローカルエリアネットワークNT1〜NT3を経由して伝送される主信号の送受信を行うための通信インタフェースである。LIUカード13、…13に設けられた通信ポート14、…14は、それぞれローカルエリアネットワークNT1〜NT3を経由するインバンド回線に接続される。
図2は、開示のレイヤ2スイッチ10の概略構成図である。上述の通り、レイヤ2スイッチ10は、第1CPUカード11及び第2CPUカード12を備える。さらに、レイヤ2スイッチ10は、上記1つ以上のLIUカード13、…13として、第1LIUカード13−1、第2LIUカード13−2、…第nLIUカード13−nを備える。以下の説明では、第1LIUカード13−1、第2LIUカード13−2、…第nLIUカード13−nを総称して、LIUカード13−1〜13−nと記載することがある。
第1CPUカード11、第2CPUカード12、及びLIUカード13−1〜13−nは、レイヤ2スイッチ10内に設けられたLAN15を経由して相互に接続されている。これらのカードは、LAN15による接続によって、ローカルエリアネットワークNT1〜NT3を経由して伝送するパケットや、個々のカードで発生した警報や故障、状態変化、所定の処理の実行などのイベントを示すイベント情報を、相互にやり取りする。
図3は、図2における第1CPUカード11を、CPUを用いて実現した場合のハードウエア構成図である。第2CPUカード12も、第1CPUカード11と同じ構成を有する。参照符号21はCPUを示し、参照符号22はメモリを示し、参照符号23は補助記憶装置を示し、参照符号24はLANインタフェースを示す。
参照符号31はオペレーティングシステム(OS)を示し、参照符号32は制御プログラムを示し、参照符号33は設定データベースを示す。参照符号34−1〜34−kはk個の発生SYSLOG用バッファを示し、参照符号35−1〜35−mはm個の受信SYSLOG用バッファを示す。参照符号36は発生SYSLOG用バッファ管理テーブルを示し、参照符号37は受信SYSLOG用バッファ管理テーブルを示し、参照符号38は到達性学習テーブルを示す。
第1CPUカード11は、CPU21、メモリ22、補助記憶装置23及びLANインタフェース24を備える。補助記憶装置23は、例えばハードディスクや不揮発性メモリなどにより実現される記憶装置である。補助記憶装置23には、OS31、制御プログラム32、及び設定データベース33が記憶される。
またメモリ22には、発生SYSLOG用バッファ34−1〜34−k、及び受信SYSLOG用バッファ35−1〜35−mとして使用される記憶領域が確保される。またメモリ24には、発生SYSLOG用バッファ管理テーブル36、受信SYSLOG用バッファ管理テーブル37、及び到達性学習テーブル38が記憶される。設定データベース33、発生SYSLOG用バッファ34−1〜34−k、受信SYSLOG用バッファ35−1〜35−m、発生SYSLOG用バッファ管理テーブル36、受信SYSLOG用バッファ管理テーブル37、及び到達性学習テーブル38については後述する。
LANインタフェース24は、レイヤ2スイッチ10内に設けられたLAN15に接続される。LANインタフェース24は、第1CPUカード11と第2CPUカード12との間、及び第1CPUカード11とLIUカード13−1〜13−nとの間におけるデータの送受信を行う。
図4は、図2における第1CPUカード11のブロック図である。参照符号41はコマンド受信部を示し、参照符号42はカード内監視部を示し、参照符号43は装置内監視部を示し、参照符号44は受信制御部を示し、参照符号45は到達性確認処理部を示す。CPU21が制御プログラム32を実行することにより、以下に説明するコマンド受信部41、カード内監視部42、装置内監視部43、受信制御部44及び到達性確認処理部45の各処理が実施される。
装置内監視部43は、レイヤ2スイッチ10内において故障や警報、状態変化、所定の処理を実行した等のイベントが発生したとき、これらの発生を記録するSYSLOG情報に関する処理を行う。装置内監視部43は、予め指定されたSYSLOGサーバS1〜S3へSYSLOG情報を送信する処理を行う。特許請求の範囲に記載されたログ送信手段は、例えば、装置内監視部43によって実現されてよい。
装置内監視部43は、SYSLOG情報を送信する送信先のSYSLOGサーバへの到達性が確認されていないとき、送信すべきSYSLOG情報を発生SYSLOG用バッファ34−1〜34−kに格納する。各発生SYSLOG用バッファ34−1〜34−kは、SYSLOG情報の送信先となるSYSLOGサーバ毎に用意される。本例では、SYSLOG情報の送信先となる複数のSYSLOGサーバが指定され、それぞれのSYSLOGサーバに、少なくとも1つの発生SYSLOG用バッファが割り当てられる。
各SYSLOGサーバと、これらにそれぞれ割り当てられる発生SYSLOG用バッファとの対応関係は、発生SYSLOG用バッファ管理テーブル36に記憶される。図5は、発生SYSLOG用バッファ管理テーブル36の例を説明する図である。発生SYSLOG用バッファ管理テーブル36は、「SYSLOGサーバ」フィールドと、「保存先バッファ」フィールドと、「蓄積個数」フィールドと、「蓄積上限数」フィールドと、「蓄積サイズ」フィールドと、「接続状態」フィールドと、「管理番号」フィールドとを含む。
「SYSLOGサーバ」フィールドには、SYSLOG情報を送信する送信先としてレイヤ2スイッチ10に登録されるSYSLOGサーバのIPアドレスが格納される。「保存先バッファ」フィールドには、SYSLOGサーバへの到達性が確認されていない間、SYSLOG情報を格納する発生SYSLOG用バッファを指定する情報が格納される。
「蓄積個数」フィールドには発生SYSLOG用バッファに格納されているSYSLOG情報の個数が格納される。「蓄積上限数」フィールドには各発生SYSLOG用バッファに格納することができるSYSLOG情報の個数の上限が格納される。「蓄積サイズ」フィールドには発生SYSLOG用バッファに格納されているSYSLOG情報が占める情報量が格納される。
「接続状態」フィールドには、SYSLOGサーバへの接続状態、すなわち到達性を表す情報が格納される。LIUカード13−1〜13−nに設けられたいずれの通信ポートも、SYSLOGサーバへ到達可能な回線に接続されていることが確認されていない場合には、「接続状態」フィールドには、例えば値「NG」が格納されている。ある通信ポートがSYSLOGサーバへ到達可能な回線に接続されていると確認されている場合には、「接続状態」フィールドには、例えば値「OK」と、この通信ポートを識別する識別情報が格納される。図の例では、通信ポートを識別する情報は、LIUカードの識別情報とLIUカードにおける通信ポートの識別情報を含む。「管理番号」フィールドは、発生SYSLOG用バッファ管理テーブル36の各行、すなわち各レコードに対して一意の識別番号を格納する。
例えば第1行目のレコード100は、SYSLOG情報を送信する送信先として登録されるSYSLOGサーバのIPアドレスが「192.168.1.10」であり、このSYSLOGサーバへ送信するSYSLOG情報の格納先が、発生SYSLOG用バッファ3(発生SYSLOG用バッファ34−3)であることを表している。
またレコード100は、この発生SYSLOG用バッファ3に蓄積されているSYSLOG情報の数が127個であり、発生SYSLOG用バッファ3に蓄積できるSYSLOG情報の上限数が8000個であることを表している。またレコード100は、この発生SYSLOG用バッファ3に蓄積されているSYSLOG情報のバイト数の合計が10500バイトであることを表している。
またレコード100は、このSYSLOGサーバへ到達可能な回線に接続されていることが確認されていないことを表し、このレコード100を一意に識別する管理番号は100である。
また、例えば第2行目のレコード101は、SYSLOG情報を送信する送信先として登録されるSYSLOGサーバのIPアドレスが「192.168.1.100」であり、このSYSLOGサーバへ送信するSYSLOG情報の格納先が、発生SYSLOG用バッファ5(発生SYSLOG用バッファ34−5)であることを表している。
またレコード101は、この発生SYSLOG用バッファ5に蓄積されているSYSLOG情報の数が0個であり、発生SYSLOG用バッファ5に蓄積できるSYSLOG情報の上限数が8000個であることを表している。またレコード101は、この発生SYSLOG用バッファ5に蓄積されているSYSLOG情報のバイト数の合計が0バイトであることを表している。
またレコード101は、LIU3、すなわち第3LIUカード13−3の第4番目の通信ポートに、このSYSLOGサーバへ到達可能な回線が接続されていると、確認済みであることを表している。また、このレコード100を一意に識別する管理番号は、103である。
図4を参照する。カード内監視部42は、第1CPUカード11内の状態変化を監視し、SYSLOGサーバにSYSLOG情報として通知する状態変化が生じたときは、SYSLOG情報を作成し、装置内監視部43に通知する。
コマンド受信部41は、レイヤ2スイッチ10へ指令されたコマンドの受信処理を行う。コマンド受信部41は、例えば、SYSLOGサーバS1〜S3や、LIUカード13−1〜13−nが接続するネットワークを経由する他の装置や、アウトバンド回線を経由する他の装置などからコマンドを受信する。コマンド受信部41が受信するコマンドには、レイヤ2スイッチ10に登録するSYSLOGサーバの登録、登録の削除が含まれる。またコマンドには、発生SYSLOG用バッファ34−1〜34−k及び受信SYSLOG用バッファ35−1〜35−mのバッファ数、及びバッファサイズの上限の指定が含まれる。コマンドを受信したコマンド受信部41は、コマンドの内容に従って、発生SYSLOG用バッファ管理テーブル36及び受信SYSLOG用バッファ管理テーブル37の編集処理を行う。
受信制御部44は、LIUカード13−1〜13−nが接続するネットワークを経由して他の装置から受信したSYSLOG情報の中継処理を行う。受信制御部44は、受信したSYSLOG情報の送信先に指定されているSYSLOGサーバへの到達性が確認されているとき、SYSLOGサーバへSYSLOG情報を送信する処理を行う。特許請求の範囲に記載されたログ送信手段は、例えば、受信制御部44によって実現されてよい。
受信制御部44は、SYSLOG情報を送信する送信先に指定されているSYSLOGサーバへの到達性が確認されていないとき、受信したSYSLOG情報を受信SYSLOG用バッファ35−1〜35−mに格納する。各受信SYSLOG用バッファ35−1〜35−mは、SYSLOG情報の送信先となるSYSLOGサーバ毎に用意される。本例では、SYSLOG情報の送信先となる複数のSYSLOGサーバが指定され、それぞれのSYSLOGサーバに、少なくとも1つの受信SYSLOG用バッファが割り当てられる。
各SYSLOGサーバとこれらにそれぞれ割り当てられる受信SYSLOG用バッファとの対応関係は、受信SYSLOG用バッファ管理テーブル37に記憶される。図6は、受信SYSLOG用バッファ管理テーブル37の例を説明する図である。図6の例では、受信SYSLOG用バッファ管理テーブル37に含まれるフィールドの名称は、図5の発生SYSLOG用バッファ管理テーブル36に含まれるフィールドの名称と同じである。
「SYSLOGサーバ」フィールドには、SYSLOG情報を送信する送信先としてレイヤ2スイッチ10に登録されるSYSLOGサーバのIPアドレスが格納される。「保存先バッファ」フィールドには、SYSLOGサーバへの到達性が確認されていない間、SYSLOG情報を格納する受信SYSLOG用バッファを指定する情報が格納される。
「蓄積個数」フィールドには受信SYSLOG用バッファに格納されているSYSLOG情報の個数が格納される。「蓄積上限数」フィールドには各受信SYSLOG用バッファに格納することができるSYSLOG情報の個数の上限が格納される。「蓄積サイズ」フィールドには受信SYSLOG用バッファに格納されているSYSLOG情報が占める情報量が格納される。
「接続状態」フィールドには、SYSLOGサーバへの接続状態、すなわち到達性を表す情報が格納される。LIUカード13−1〜13−nに設けられたいずれの通信ポートも、SYSLOGサーバへ到達可能な回線に接続されていることが確認されていない場合には、「接続状態」フィールドには例えば値「NG」が格納されている。ある通信ポートがSYSLOGサーバへ到達可能な回線に接続されていると確認されている場合には、「接続状態」フィールドには、例えば値「OK」、及びこの通信ポートを識別する識別情報が格納される。
例えば第1行目のレコード102は、SYSLOG情報を送信する送信先として登録されるSYSLOGサーバのIPアドレスが「192.168.1.5」であり、このSYSLOGサーバへ送信するSYSLOG情報の格納先が、受信SYSLOG用バッファ1(受信SYSLOG用バッファ35−1)であることを表している。
またレコード102は、この受信SYSLOG用バッファ1に蓄積されているSYSLOG情報の数が5個であり、受信SYSLOG用バッファ1に蓄積できるSYSLOG情報の上限数が500個であることを表している。またレコード102は、この受信SYSLOG用バッファ1に蓄積されているSYSLOG情報のバイト数の合計が520バイトであることを表している。
またレコード102は、このSYSLOGサーバへ到達可能な回線に接続されていることが確認されていないことを表し、このレコード102を一意に識別する管理番号は52である。
例えば第2行目のレコード103は、SYSLOG情報を送信する送信先として登録されるSYSLOGサーバのIPアドレスが「192.168.1.200」であり、このSYSLOGサーバへ送信するSYSLOG情報の格納先が、受信SYSLOG用バッファ3(受信SYSLOG用バッファ35−3)であることを表している。
またレコード103は、この受信SYSLOG用バッファ3に蓄積されているSYSLOG情報の数が0個であり、受信SYSLOG用バッファ3に蓄積できるSYSLOG情報の上限数が500個であることを表している。またレコード103は、この受信SYSLOG用バッファ3に蓄積されているSYSLOG情報のバイト数の合計が0バイトであることを表している。
またレコード103は、LIU2、すなわち第2LIUカード13−2の第3番目の通信ポートに、このSYSLOGサーバへ到達可能な回線が接続されていると、確認済みであることを表している。このレコード103を一意に識別する管理番号は372である。
図4を参照する。到達性確認処理部45は、発生SYSLOG用バッファ管理テーブル36、及び受信SYSLOG用バッファ管理テーブル37に登録されている各SYSLOGサーバへの到達性の有無を監視する。例えば、到達性確認処理部45は、ICMP(Internet Control Message Protocol)のエコー要求パケット及びエコー応答パケットを使用して、既知のIPアドレスを有するSYSLOGサーバへの到達性の有無を判定してよい。
本実施例では、SYSLOGサーバへの到達性を確認するために、所定のIPアドレスを有するネットワーク装置のMACアドレスを要請するMACアドレス要請パケット、MACアドレス要請パケットに対する応答であるMACアドレス広告パケットも使用される。
ローカルエリアネットワークNT1〜NT3がインターネットプロトコルv4に準拠するとき、以下の説明では、ICMPのエコー要求パケット及びエコー応答パケットのことを、それぞれ「エコー要求パケット」及び「エコー応答パケット」と記す。また、ローカルエリアネットワークNT1〜NT3がインターネットプロトコルv4に準拠するとき、以下の説明では、アドレス解決プロトコル(ARP)のARPパケット及びARP応答パケットのことを、それぞれ「MACアドレス要請パケット」及び「MACアドレス広告パケット」と記す。
ローカルエリアネットワークNT1〜NT3がインターネットプロトコルv6に準拠するとき、以下の説明では、ICMPv6のエコー要求パケット及びエコー応答パケットのことを、それぞれ「エコー要求パケット」及び「エコー応答パケット」と記す。また、ローカルエリアネットワークNT1〜NT3がインターネットプロトコルv6に準拠するとき、以下の説明では、ICMPv6の近隣要請(Neighbor Solicitation)パケット及び近隣広告(neighbor Advertisement)パケットのことを、それぞれ「MACアドレス要請パケット」及び「MACアドレス広告パケット」と記す。
図7は、図2における第1LIUカード13−1を、CPUを用いて実現した場合のハードウエア構成図である。他のLIUカード13−2〜13−nも、第1LIUカード13−1と同様の構成を有していてよい。参照符号51はCPUを示し、参照符号52はメモリを示し、参照符号53は補助記憶装置を示し、参照符号14−1〜14−jは通信ポートを示し、参照符号55−1〜55−jはインタフェース(I/F)を示し、参照符号56はLANインタフェースを示す。参照符号61はオペレーティングシステム(OS)を示し、参照符号62は制御プログラムを示す。
第1LIUカード13−1は、CPU51、メモリ52、補助記憶装置53、通信ポート14−1〜14−j、インタフェース55−1〜55−j及びLANインタフェース26を備える。補助記憶装置53は、例えばハードディスクや不揮発性メモリなどにより実現される記憶装置である。補助記憶装置53には、OS61及び制御プログラム62が記憶される。
通信ポート14−1〜14−jはIPネットワークに接続され、IPネットワーク上で伝送されるユーザデータ等の主信号であるパケットを送受信する。少なくとも、LIUカード13−1〜13−nに設けられたいずれかの通信ポートは、SYSLOGサーバS1〜S3が接続されているローカルエリアネットワークNT1〜NT3に接続されている。
インタフェース55−1〜55−jは、第1LIUカード13−1内のバスと通信ポート14−1〜14−jとの間のインタフェースである。LANインタフェース56は、LAN15に接続される。LANインタフェース56は、第1LIUカード13−1と第1CPUカード11及び第2CPUカード12との間、並びに第1LIUカード13−1と第2LIUカード13−2〜第nLIUカード13−nとの間におけるデータの送受信を行う。
図8は、図2における第1LIUカード13−1のブロック図である。参照符号71はカード内監視部を示し、参照符号72はパケット制御部を示す。CPU51が制御プログラム62を実行することにより、以下に説明するカード内監視部71及びパケット制御部72の各処理が実施される。
カード内監視部71は、第1LIUカード13−1内の状態変化を監視し、SYSLOGサーバにSYSLOG情報として通知する状態変化が生じたときは、SYSLOG情報を作成し、第1CPUカード11内の装置内監視部43に通知する。
またカード内監視部71は、第1LIUカード13−1の通信ポート14−1〜14−jがリンクアップ及び/又はリンクダウンしたときは、その旨を装置内監視部43及び/又は受信制御部44に通知する。パケット制御部72は、各通信ポート14−1〜14−jにおいて送受信されるパケットの転送処理を行う。
続いて、上述したレイヤ2スイッチ10の各部の動作について説明する。図9は、装置内監視部43による処理の説明図である。なお、別な実施の態様においては、下記のオペレーションAA〜オペレーションAIの各オペレーションはステップであってもよい。
オペレーションAAにおいて装置内監視部43が起動される。オペレーションABにおいて装置内監視部43は、補助記憶装置23から設定データベース33を読み込む。設定データベース33には、オペレーションAAにおいて装置内監視部43が起動される以前に、レイヤ2スイッチ10を終了していた時点における発生SYSLOG用バッファ管理テーブル36、受信SYSLOG用バッファ管理テーブル37、及び到達性学習テーブル38のそれぞれの設定状態が記憶されている。
オペレーションACにおいて装置内監視部43は、発生SYSLOG用バッファ管理テーブル36及び/又は受信SYSLOG用バッファ管理テーブル37に、SYSLOGサーバが登録されていると、設定データベース33に記憶されているか否かを判定する。SYSLOGサーバが登録されている場合(オペレーションAC:Y)には、装置内監視部43は処理をオペレーションADへ移行する。SYSLOGサーバが登録されていない場合(オペレーションAC:N)には、装置内監視部43は処理をオペレーションAEへ移行する。
オペレーションADにおいて装置内監視部43は、設定データベース33に記憶されている設定内容に従って、前回、レイヤ2スイッチ10を終了していた時点における発生SYSLOG用バッファ管理テーブル36、受信SYSLOG用バッファ管理テーブル37、及び到達性学習テーブル38を構築する。その後に装置内監視部43は、処理をオペレーションAEへ移行する。
オペレーションAEにおいて装置内監視部43は、「SYSLOG発生通知」、「リンクアップ/リンクダウン通知」及び「エコー応答通知」のいずれかのイベントが発生するのを待つ。
イベント「SYSLOG発生通知」は、カード内監視部42及び/又はカード内監視部71が、第1CPUカード11及び/又はLIUカード13−1〜13−nの状態変化を知らせるSYSLOG情報を、装置内監視部43へ通知した場合に発生する。
イベント「リンクアップ/リンクダウン通知」は、カード内監視部71が、LIUカード13−1〜13−nのいずれかの通信ポートにおいてリンク状態の変化、すなわちリンクアップ及び/又はリンクダウンを生じたことを、装置内監視部43へ通知した場合に発生する。
イベント「エコー応答通知」は、SYSLOGサーバS1〜S3のいずれかから送信されたエコー応答パケットが受信されたことを、到達性確認処理部45が装置内監視部43へ通知した場合に発生する。
オペレーションAFにおいて装置内監視部43は、上記のイベントのいずれが発生したかを判定する。イベント「SYSLOG発生通知」が発生したとき、装置内監視部43は、第1SYSLOG用処理AGを実行する。
図10は、図9における第1SYSLOG用処理AGの説明図である。なお、別な実施の態様においては、下記のオペレーションBA〜オペレーションBFの各オペレーションはステップであってもよい。
オペレーションBAにおいて装置内監視部43は、カード内監視部42及び/又はカード内監視部71から通知されたSYSLOG情報を、補助記憶装置23内にロギング、すなわち蓄積する。
オペレーションBBにおいて装置内監視部43は、通知されたSYSLOG情報を送信する送信先のSYSLOGサーバが、発生SYSLOG用バッファ管理テーブル36に、登録されているか否かを判定する。
送信先のSYSLOGサーバが登録されている場合には(オペレーションBB:Y)、装置内監視部43は処理をオペレーションBCへ移行する。送信先のSYSLOGサーバが登録されていない場合には(オペレーションBB:N)、装置内監視部43は第1SYSLOG用処理AGを終了する。
オペレーションBCにおいて装置内監視部43は、送信先のSYSLOGサーバについて発生SYSLOG用バッファ管理テーブル36の「接続状態」フィールドに記憶された値を参照する。「接続状態」フィールドには、発生SYSLOG用バッファ管理テーブル36に登録された各SYSLOGサーバについて、エコー要求パケット及びエコー応答パケットを用いて到達性を確認した結果が格納される。装置内監視部43は、送信先のSYSLOGサーバへの到達性が確認済みであるか否かを判定する。
SYSLOGサーバへの到達性が確認されていない場合(オペレーションBC:N)、装置内監視部43は、処理をオペレーションBDへ移行する。SYSLOGサーバへの到達性が確認されている場合(オペレーションBC:Y)、装置内監視部43は、処理をオペレーションBEへ移行する。
オペレーションBDにおいて装置内監視部43は、発生SYSLOG用バッファ34−1〜34−kのうち、送信先のSYSLOGサーバについて発生SYSLOG用バッファ管理テーブル36の「保存先バッファ」フィールドに指定されている発生SYSLOG用バッファへ、通知されたSYSLOG情報を格納する。
発生SYSLOG用バッファに格納されているSYSLOG情報の数が、発生SYSLOG用バッファ管理テーブル36の「蓄積上限数」フィールドに指定されている上限数を超えるときは、より古いSYSLOG情報から順に上書きされる。装置内監視部43は、発生SYSLOG用バッファ管理テーブル36の「蓄積個数」フィールド及び「蓄積サイズ」フィールドの内容を更新する。その後、装置内監視部43は第1SYSLOG用処理AGを終了する。
一方で、オペレーションBEにおいて装置内監視部43は、発生SYSLOG用バッファ管理テーブル36に登録されているSYSLOGサーバへ、SYSLOG情報を送信する。このとき装置内監視部43は、発生SYSLOG用バッファ管理テーブル36の「接続状態」フィールドに格納される識別情報にて指定されているLIUカード及び通信ポートから、SYSLOG情報を送信する。
また、発生SYSLOG用バッファ34−1〜34−kのうち送信先のSYSLOGサーバに割り当てられたバッファ内に、まだ未送信のSYSLOG情報が格納されているときには、装置内監視部43は、これらのSYSLOG情報も送信する。
オペレーションBFにおいて装置内監視部43は、発生SYSLOG用バッファ34−1〜34−kのうち送信先のSYSLOGサーバに割り当てられたバッファをクリアする。装置内監視部43は、送信先のSYSLOGサーバについて、発生SYSLOG用バッファ管理テーブル36の「蓄積個数」フィールド及び「蓄積サイズ」フィールドに記憶されている値を更新する。その後、装置内監視部43は第1SYSLOG用処理AGを終了する。
図9を参照する。オペレーションAGを実行した後、装置内監視部43は処理をオペレーションAEへ戻す。
オペレーションAFにおいてイベント「リンクアップ/リンクダウン通知」が発生したとき、装置内監視部43は、第1リンクアップ/リンクダウン発生時処理AHを実行する。図11は、図9における第1リンクアップ/リンクダウン発生時処理AHの説明図である。なお、別な実施の態様においては、下記のオペレーションCA〜オペレーションCDの各オペレーションはステップであってもよい。
オペレーションCAにおいて装置内監視部43は、リンク状態の変化がリンクダウンであるのかリンクアップであるのか判定する。リンク状態の変化がリンクダウンであるとき、装置内監視部43は処理をオペレーションCBへ移行する。リンク状態の変化がリンクアップであるとき、装置内監視部43は処理をオペレーションCCへ移行する。
オペレーションCBにおいて装置内監視部43は、リンクダウンの通知があった通信ポートが、発生SYSLOG用バッファ管理テーブル36の「接続状態」フィールドに格納されているSYSLOGサーバを特定する。装置内監視部43は、このSYSLOGサーバについて、発生SYSLOG用バッファ管理テーブル36の「接続状態」フィールドに格納されている設定値を「NG」へ変更する。その後、装置内監視部43は、第1リンクアップ/リンクダウン発生時処理AHを終了する。
一方でオペレーションCCにおいて装置内監視部43は、発生SYSLOG用バッファ管理テーブル36に登録されているSYSLOGサーバのうち、まだ到達可能性が確認されていないSYSLOGサーバを特定する。すなわち装置内監視部43は、発生SYSLOG用バッファ管理テーブル36の「接続状態」フィールドに格納されている設定値が「NG」のSYSLOGサーバを特定する。
オペレーションCDにおいて装置内監視部43は、オペレーションCCで特定したSYSLOGサーバのそれぞれに対して、MACアドレス要請パケットを送信する。その後、装置内監視部43は、第1リンクアップ/リンクダウン発生時処理AHを終了する。
第1リンクアップ/リンクダウン発生時処理AHによって、ある通信ポートにおけるリンク状態がリンクダウンに変化したとき、この通信ポートから到達できたSYSLOGサーバに関する到達性を記憶する「接続状態」フィールドの値を、確認できないことを示す値「NG」に変更することができる。
第1リンクアップ/リンクダウン発生時処理AHによって、ある通信ポートにおけるリンク状態がリンクアップに変化したとき、MACアドレス要請パケットを送信し、通信ポートから到達できるSYSLOGサーバに関する到達性の確認を開始することができる。MACアドレス要請パケットに対して、あるSYSLOGサーバからMACアドレス広告パケットを受信したとき、後述するように、このSYSLOGサーバに対するエコー要求パケットが到達性確認処理部45により送信される。そしてこのエコー要求パケットに対するエコー応答パケットが受信されたとき、以下のイベント「エコー応答通知」が発生する。
図9を参照する。オペレーションAHを実行した後、装置内監視部43は処理をオペレーションAEへ戻す。
オペレーションAFにおいて、イベント「エコー応答通知」が発生したとき、装置内監視部43は、第1エコー応答通知時処理AIを実行する。図12は、図9における第1エコー応答通知時処理AIの説明図である。なお、別な実施の態様においては、下記のオペレーションDA〜オペレーションDDの各オペレーションはステップであってもよい。
オペレーションDAにおいて装置内監視部43は、受信されたエコー応答パケットに含まれるSYSLOGサーバのIPアドレスに基づいて、発生SYSLOG用バッファ管理テーブル36に登録されたSYSLOGサーバのうちから、エコー応答パケットを送信したSYSLOGサーバを特定する。装置内監視部43は、特定されたSYSLOGサーバについて、発生SYSLOG用バッファ管理テーブル36の「保存先バッファ」フィールドに指定されている発生SYSLOG用バッファを特定する。
オペレーションDBにおいて装置内監視部43は、オペレーションDAで特定されたSYSLOGサーバについて、発生SYSLOG用バッファ管理テーブル36の「接続状態」フィールドに格納される値を、設定値「OK」に変更する。また装置内監視部43は、この「接続状態」フィールドに、エコー応答パケットが受信されたLIUカード及び通信ポートの識別情報を格納する。
オペレーションDCにおいて装置内監視部43は、オペレーションDAで特定されたSYSLOGサーバへ、オペレーションDAで特定された発生SYSLOG用バッファに格納されているSYSLOG情報を送信する。このとき装置内監視部43は、発生SYSLOG用バッファ管理テーブル36の「接続状態」フィールドに格納される識別情報にて指定されているLIUカード及び通信ポートから、SYSLOG情報を送信する。
オペレーションDDにおいて装置内監視部43は、オペレーションDAで特定された発生SYSLOG用バッファをクリアする。装置内監視部43は、オペレーションDAで特定されたSYSLOGサーバについて、発生SYSLOG用バッファ管理テーブル36の「蓄積個数」フィールド及び「蓄積サイズ」フィールドに記憶されている値を更新する。その後、装置内監視部43は、第1エコー応答通知時処理AIを終了する。
図9を参照する。オペレーションAIを実行した後、装置内監視部43は処理をオペレーションAEへ戻す。
図13は、カード内監視部42及び/又は71による処理の説明図である。なお、別な実施の態様においては、下記のオペレーションEA〜オペレーションEHの各オペレーションはステップであってもよい。
オペレーションEAにおいてカード内監視部42及び/又は71が起動される。オペレーションEBにおいてカード内監視部42は、第1CPUカード11内に状態変化があるか否かを判定する。及び/又はカード内監視部71は、LIUカード13−1〜13−nに状態変化があるか否かを判定する。状態変化を検出した場合(オペレーションEB:Y)、カード内監視部42及び/又は71は処理をオペレーションECへ移行する。状態変化を検出しない場合(オペレーションEB:N)、カード内監視部42及び/又は71は処理をオペレーションEBへ戻す。
オペレーションECにおいてカード内監視部42及び/又は71は、検出した状態変化について、SYSLOG情報を作成してSYSLOGサーバへ送信するか否かを判定する。カード内監視部42及び/又は71が、SYSLOG情報をSYSLOGサーバへ送信すると判定したとき(オペレーションEC:Y)、カード内監視部42及び/又は71は処理をオペレーションEDへ移行する。カード内監視部42及び/又は71が、SYSLOG情報をSYSLOGサーバへ送信しないと判定したとき(オペレーションEC:N)、カード内監視部42及び/又は71は処理をオペレーションEBへ戻す。
オペレーションEDにおいてカード内監視部42及び/又は71は、検出した状態変化を指示するSYSLOG情報を生成する。オペレーションEEにおいてカード内監視部42及び/又は71は、SYSLOG情報を装置内監視部43へ通知する。
オペレーションEFにおいてカード内監視部71は、検出した状態変化が通信ポート14−1〜14−jのいずれかにおいて発生したリンク状態の変化、すなわちリンクアップ又はリンクダウンであるか否かを判定する。検出した状態変化がリンク状態の変化であるとき(オペレーションEF:Y)、カード内監視部71は、処理をオペレーションEGへ移行する。検出した状態変化がリンク状態の変化でないとき(オペレーションEF:N)、カード内監視部71は、処理をオペレーションEHへ移行する。
オペレーションEGにおいてカード内監視部71は、リンク状態の変化が発生したことを、装置内監視部43及び受信制御部44へ通知する。その後にカード内監視部71は、処理をオペレーションEBへ戻す。
オペレーションEHにおいてカード内監視部71は、検出した状態変化に応じた処理を行う。その後にカード内監視部71は、処理をオペレーションEBへ戻す。
図14は、コマンド受信部41による処理の説明図である。なお、別な実施の態様においては、下記のオペレーションFA〜オペレーションFLの各オペレーションはステップであってもよい。コマンド受信部41が受信するコマンドの種類は、例えば図15の一覧表に記載される通りである。
「syslog tx-server <IPアドレス>」:このコマンドは、本レイヤ2スイッチ10で発生したSYSLOGを送信するSYSLOGサーバを、発生SYSLOG用バッファ管理テーブル36へ登録するために使用される。このコマンドは、登録するSYSLOGサーバのIPアドレスの指定を伴う。
「no syslog tx-server <IPアドレス>」:このコマンドは、本レイヤ2スイッチ10で発生したSYSLOGを送信するSYSLOGサーバの登録を、発生SYSLOG用バッファ管理テーブル36から削除するために使用される。このコマンドは、削除するSYSLOGサーバのIPアドレスの指定を伴う。
「syslog tx-server limit <0〜20>」:このコマンドは、本レイヤ2スイッチ10で発生したSYSLOGを送信するSYSLOGサーバの登録数の上限、すなわち発生SYSLOG用バッファ34−1〜34−kの上限数を0〜20の範囲で指定するために使用される。
「syslog rx-server limit <0〜200>」:このコマンドは、本レイヤ2スイッチ10以外の他装置から受信したSYSLOGを送信するSYSLOGサーバの登録数の上限、すなわち受信SYSLOG用バッファ35−1〜35−mの上限数を0〜200の範囲で指定するために使用される。
「syslog tx-buffer counter <1〜10000>」:このコマンドは、発生SYSLOG用バッファ34−1〜34−kに蓄積できるSYSLOG情報の数の上限を1〜10000の範囲で指定するために使用される。
「syslog rx-buffer counter <1〜1000>」:このコマンドは、受信SYSLOG用バッファ35−1〜35−mに蓄積できるSYSLOG情報の数の上限を1〜1000の範囲で指定するために使用される。
「show tx-buffer」:このコマンドは、発生SYSLOG用バッファ34−1〜34−kに格納されたデータの参照を要求するために使用される。
「show rx-buffer」:このコマンドは、受信SYSLOG用バッファ35−1〜35−mに格納されたデータの参照を要求するために使用される。
「no tx-buffer <IPアドレス>」:このコマンドは、発生SYSLOG用バッファ34−1〜34−kのいずれかに格納された特定のSYSLOGサーバ用のデータを削除するために使用される。データを削除するSYSLOGサーバのIPアドレスが指定される。
「no rx-buffer <IPアドレス>」:このコマンドは、受信SYSLOG用バッファ35−1〜35−mのいずれかに格納された特定のSYSLOGサーバ用のデータを削除するために使用される。データを削除するSYSLOGサーバのIPアドレスが指定される。
図14を参照する。オペレーションFAにおいてコマンド受信部41が起動される。オペレーションFBにおいてコマンド受信部41は、SYSLOGサーバS1〜S3や、LIUカード13−1〜13−nが接続するネットワークを経由する他の装置や、アウトバンド回線を経由する他の装置などから、コマンドを受信したか否かを判定する。コマンドを受信しない場合には(オペレーションFB:N)、コマンド受信部41はオペレーションFBを繰り返す。コマンドを受信した場合には(オペレーションFB:Y)、コマンド受信部41は処理をオペレーションFCへ移行する。
オペレーションFCにおいてコマンド受信部41は、受信したコマンドが、SYSLOGサーバの登録及び/又は削除に関するコマンドであるか否かを判定する。SYSLOGサーバの登録に関するコマンドは、例えば上述の「syslog tx-server <IPアドレス>」であり、SYSLOGサーバの削除に関するコマンドは、例えば上述の「no syslog tx-server <IPアドレス>」である。コマンドが、SYSLOGサーバの登録及び/又は削除に関するコマンドである場合には(オペレーションFC:Y)、コマンド受信部41は処理をオペレーションFDへ移行する。コマンドが、SYSLOGサーバの登録及び/又は削除に関するコマンドでない場合には(オペレーションFC:N)、コマンド受信部41は処理をオペレーションFFへ移行する。
オペレーションFDにおいてコマンド受信部41は、受信したコマンドに応じて、発生SYSLOG用バッファ管理テーブル36を編集する。例えばコマンドが「syslog tx-server <IPアドレス>」である場合には、コマンド受信部41は、新たに登録するSYSLOGサーバへ送信するSYSLOG情報を保存する発生SYSLOG用バッファを、発生SYSLOG用バッファ34−1〜34−kの中から選ぶ。コマンド受信部41は、選択した発生SYSLOG用バッファの指定情報を「保存先バッファ」フィールドに、コマンドで指定されたIPアドレスを「SYSLOGサーバ」フィールドに格納する新しいレコードを、発生SYSLOG用バッファ管理テーブル36に作成する。
例えばコマンドが「no syslog tx-server <IPアドレス>」である場合には、コマンド受信部41は、指定されたIPアドレスを有するSYSLOGサーバに関するレコードを、発生SYSLOG用バッファ管理テーブル36から削除する。
オペレーションFEにおいてコマンド受信部41は、編集後の発生SYSLOG用バッファ管理テーブル36の設定状態を、設定データベース33へ保存する。設定データベース33は、装置内監視部43を再起動したときに、図9のオペレーションADにおいて発生SYSLOG用バッファ管理テーブル36や受信SYSLOG用バッファ管理テーブル37を再構築するために使用される。
その後にコマンド受信部41は処理をオペレーションFJへ移行する。
一方で、オペレーションFFにおいてコマンド受信部41は、受信したコマンドが、発生SYSLOG用バッファ34−1〜34−k及び/又は受信SYSLOG用バッファ35−1〜35−mのバッファ量を制限するコマンドであるか否かを判定する。バッファ量を制限するコマンドは、例えば、発生SYSLOG用バッファ34−1〜34−kの上限数を指定する「syslog tx-server limit <0〜20>」や、受信SYSLOG用バッファ35−1〜35−mの上限数を指定する「syslog rx-server limit <0〜200>」である。
また、発生SYSLOG用バッファ34−1〜34−kに蓄積できるSYSLOG情報の数の上限を指定するコマンド「syslog tx-buffer counter <1〜10000>」も、バッファ量を制限するコマンドである。受信SYSLOG用バッファ35−1〜35−mに蓄積できるSYSLOG情報の数の上限を指定するコマンド「syslog rx-buffer counter <1〜1000>」も、バッファ量を制限するコマンドである。
バッファ量を制限するコマンドである場合(オペレーションFF:Y)は、コマンド受信部41は処理をオペレーションFGへ移行する。バッファ量を制限するコマンドでない場合(オペレーションFF:N)は、コマンド受信部41は処理をオペレーションFIへ移行する。
オペレーションFGにおいてコマンド受信部41は、コマンドが「syslog tx-server limit <0〜20>」であるときは、コマンドで指定された上限数を超える数のレコードを、発生SYSLOG用バッファ管理テーブル36から削除する。コマンドが「syslog rx-server limit <0〜200>」であるときコマンド受信部41は、コマンドで指定された上限数を超える数のレコードを、受信SYSLOG用バッファ管理テーブル37から削除する。
コマンドが「syslog tx-buffer counter <1〜10000>」であるときコマンド受信部41は、コマンドで指定されたSYSLOG情報の数の上限を、発生SYSLOG用バッファ管理テーブル36の「蓄積上限数」フィールドに格納する。コマンドが「syslog rx-buffer counter <1〜1000>」であるときコマンド受信部41は、コマンドで指定されたSYSLOG情報の数の上限を、受信SYSLOG用バッファ管理テーブル37の「蓄積上限数」フィールドに格納する。
オペレーションFHにおいてコマンド受信部41は、編集後の発生SYSLOG用バッファ管理テーブル36及び/又は受信SYSLOG用バッファ管理テーブル37の設定状態を、設定データベース33へ保存する。その後にコマンド受信部41は処理をオペレーションFJへ移行する。
一方で、オペレーションFIにおいてコマンド受信部41は、受信したコマンドに応じた処理を実行し、処理をオペレーションFJへ移行する。
オペレーションFJにおいてコマンド受信部41は、受信したコマンドの実施について、SYSLOG情報を作成してSYSLOGサーバへ送信するか否かを判定する。コマンド受信部41が、SYSLOG情報をSYSLOGサーバへ送信すると判定したとき(オペレーションFJ:Y)、コマンド受信部41は処理をオペレーションFKへ移行する。コマンド受信部41が、SYSLOG情報をSYSLOGサーバへ送信しないと判定したとき(オペレーションFJ:N)、コマンド受信部41は処理をオペレーションFBへ戻す。
オペレーションFKにおいてコマンド受信部41は、受信したコマンドの実施を指示するSYSLOG情報を生成する。オペレーションFLにおいてコマンド受信部41は、SYSLOG情報を装置内監視部43へ通知する。その後、コマンド受信部41は処理をオペレーションFBへ戻す。
次に、図4の到達性確認処理部45の処理を説明する。上述の通り到達性確認処理部45は、発生SYSLOG用バッファ管理テーブル36及び受信SYSLOG用バッファ管理テーブル37に登録されている各SYSLOGサーバへの到達性の有無を監視する。
本実施例において到達性確認処理部45は、発生SYSLOG用バッファ管理テーブル36及び受信SYSLOG用バッファ管理テーブル37に登録されているSYSLOGサーバのIPアドレスに、一定周期T0でMACアドレス要請パケットを送信する。到達性確認処理部45は、MACアドレス広告パケットを送信したSYSLOGサーバに対して、エコー要求パケットを送信する。
到達性確認処理部45は、あるSYSLOGサーバからのエコー応答パケットを所定期間T1以上受信できないとき、このSYSLOGサーバが到達可能な回線に接続されていることが確認できない、と判定する。このとき到達性確認処理部45は、このSYSLOGサーバに関する発生SYSLOG用バッファ管理テーブル36及び/又は受信SYSLOG用バッファ管理テーブル37のレコードの「接続状態」フィールドに「NG」を格納する。
一方で、到達性確認処理部45は、あるSYSLOGサーバからのエコー応答パケット受信したとき、エコー応答パケットを受信したことを装置内監視部43及び/又は受信制御部44へ通知する。
エコー応答パケットを受信したことを通知された装置内監視部43は、図12のオペレーションDBに関する説明の通り、エコー応答パケットの送信元のSYSLOGサーバに関する発生SYSLOG用バッファ管理テーブル36のレコードの「接続状態」フィールドに「OK」を格納する。また、装置内監視部43は、このレコードの「接続状態」フィールドに、エコー応答パケットが受信されたLIUカード及び通信ポートの識別情報を格納する。
エコー応答パケットを受信したことを通知された受信制御部44は、後述の通り、エコー応答パケットの送信元のSYSLOGサーバに関する受信SYSLOG用バッファ管理テーブル37のレコードの「接続状態」フィールドに「OK」を格納する。また、受信制御部44は、このレコードの「接続状態」フィールドに、エコー応答パケットが受信されたLIUカード及び通信ポートの識別情報を格納する。
図16は、到達性学習テーブル38の例を説明する図である。到達性学習テーブル38は、各SYSLOGサーバ毎に、最後にエコー応答パケットを受信してから所定期間T1を経過するまでの残り時間を記録するために使用される。到達性学習テーブル38は、「IPアドレス」フィールドと、「MACアドレス」フィールドと、「学習時間」フィールドと、「管理番号」フィールドとを含む。
到達性学習テーブル38の各レコードの「IPアドレス」フィールドには、発生SYSLOG用バッファ管理テーブル36及び/又は受信SYSLOG用バッファ管理テーブル37に登録された各SYSLOGサーバのIPアドレスが格納される。「MACアドレス」フィールドには、各SYSLOGサーバのMACアドレスが格納される。
「学習時間」フィールドには、最後にエコー応答パケットを受信してから所定期間T1を経過するまでの残り時間が格納される。本実施例では、記録される時間の単位は秒である。「管理番号」フィールドは、到達性学習テーブル38の各行、すなわち各レコードに対して一意の識別番号を格納する。
例えば第1行目のレコード104は、SYSLOG情報を送信する送信先として登録されるSYSLOGサーバのIPアドレスが「192.168.1.100」であり、このSYSLOGサーバのMACアドレスが「00:11:22:33:44:55」であることを表している。また、レコード104は、このSYSLOGサーバに最後にエコー応答パケットを受信してから所定期間T1を経過するまでの残り時間が「3秒」であることを表している。このレコード104を一意に識別する管理番号は100である。
なお、発生SYSLOG用バッファ管理テーブル36、受信SYSLOG用バッファ管理テーブル37及び/又は到達性学習テーブル38の最大レコード数に上限を設けてもよい。そして、レコード数が所定の上限を超えた場合には、作成時期が古いものから順にレコードが削除されてよい。このため「管理番号」フィールドは、昇順及び降順のいずれか一方でレコードの作成順に従う番号を格納してよく、「管理番号」フィールドの値に応じて作成時期の新旧を判断してよい。
図17は、到達性確認処理部45による処理の説明図である。なお、別な実施の態様においては、下記のオペレーションGA〜オペレーションGGの各オペレーションはステップであってもよい。
オペレーションGAにおいて到達性確認処理部45が起動される。オペレーションGBにおいて到達性確認処理部45は、周期タイマーを起動する。周期タイマーは所定周期T0毎に所定のタイミング通知を発生するタイマーである。本実施例では所定周期T0は1秒である。
オペレーションGCにおいて到達性確認処理部45は、「タイミング通知」、「エコー応答パケット受信」及び「MACアドレス広告パケット受信」のいずれかのイベントが発生するのを待つ。
イベント「タイミング通知」は、周期タイマーがタイミング通知を発生したときに生じるイベントである。イベント「エコー応答パケット受信」は、いずれかのSYSLOGサーバからエコー応答パケットが受信されたときに生じるイベントである。イベント「MACアドレス広告パケット受信」は、いずれかのSYSLOGサーバからMACアドレス広告パケットが受信されたときに生じるイベントである。
オペレーションGDにおいて到達性確認処理部45は、上記のイベントのいずれが発生したかを判定する。イベント「タイミング通知」が発生したとき、到達性確認処理部45は、タイミング通知受信時処理GEを実行する。図18は、図17におけるタイミング通知受信時処理GEの説明図である。なお、別な実施の態様においては、下記のオペレーションHA〜オペレーションHEの各オペレーションはステップであってもよい。
オペレーションHAにおいて到達性確認処理部45は、LIUカード13−1〜13−nに設けられた各通信ポート14−1〜14−jのうち、現在リンクアップしている通信ポートを特定する。リンクアップしている通信ポートがない場合(オペレーションHA:N)には、到達性確認処理部45はタイミング通知受信時処理GEを終了する。リンクアップしている通信ポートがある場合(オペレーションHA:Y)には、到達性確認処理部45は、処理をオペレーションHBに移行する。
オペレーションHBにおいて到達性確認処理部45は、発生SYSLOG用バッファ管理テーブル36及び/又は受信SYSLOG用バッファ管理テーブル37に登録されている、全SYSLOGサーバのIPアドレスを特定する。
オペレーションHCにおいて到達性確認処理部45は、現在リンクアップしている全てのポートから、オペレーションHBで特定したIPアドレスに対して、MACアドレス要請パケットを送信する。
オペレーションHDにおいて到達性確認処理部45は、到達性学習テーブル38の全てのレコードの「学習時間」フィールドに格納された値(秒)を1秒減らす。そして、「学習時間」フィールドに格納された値が0になるレコードがあるか否かを判定する。
後述するとおり、SYSLOGサーバからエコー応答パケットを受信したとき、このSYSLOGサーバに関するレコードの「学習時間」フィールドの値は、所定期間T1(秒)にリセットされる。したがって、「学習時間」フィールドの値が0(秒)になることは、このレコードに登録されたSYSLOGサーバから、所定期間T1以上エコー応答パケットが受信されないことを意味する。本実施例では、所定期間T1は3秒であってよい。
「学習時間」フィールドに格納された値が0になるレコードがあるとき(オペレーションHD:Y)、到達性確認処理部45は処理をオペレーションHEへ移行する。「学習時間」フィールドに格納された値が0になるレコードがないとき(オペレーションHD:N)、到達性確認処理部45はタイミング通知受信時処理GEを終了する。
オペレーションHEにおいて到達性確認処理部45は、到達性学習テーブル38の「学習時間」フィールドに格納された値が0になるレコードに登録されたSYSLOGサーバのIPアドレスを「IPアドレス」フィールドから取得する。到達性確認処理部45は、取得したIPアドレスに基づいて、このSYSLOGサーバに関する、発生SYSLOG用バッファ管理テーブル36及び/又は受信SYSLOG用バッファ管理テーブル37のレコードを特定する。到達性確認処理部45は、特定したレコードの「接続状態」フィールドに格納されている設定値を「NG」へ変更する。その後、到達性確認処理部45はタイミング通知受信時処理GEを終了する。
図17を参照する。オペレーションGEを実行した後、到達性確認処理部45は処理をオペレーションGCへ戻す。
オペレーションGDにおいてイベント「エコー応答パケット受信」が発生したとき、到達性確認処理部45は、タイミング通知受信時処理GFを実行する。図19は、図17におけるエコー応答パケット受信時処理GFの説明図である。なお、別な実施の態様においては、下記のオペレーションIA〜オペレーションIEの各オペレーションはステップであってもよい。
オペレーションIAにおいて到達性確認処理部45は、受信したエコー応答パケットの送信元のIPアドレスが、発生SYSLOG用バッファ管理テーブル36に登録されているかを判定する。送信元のIPアドレスが登録されている場合には(オペレーションIA:Y)、到達性確認処理部45は処理をオペレーションIBへ移行する。送信元のIPアドレスが登録されてない場合には(オペレーションIA:N)、到達性確認処理部45は処理をオペレーションICへ移行する。
オペレーションIBにおいて到達性確認処理部45は、装置内監視部43へ、エコー応答パケットが受信されたことを通知する。その後到達性確認処理部45は、処理をオペレーションIEへ移行する。
オペレーションICにおいて到達性確認処理部45は、受信したエコー応答パケットの送信元のIPアドレスが、受信SYSLOG用バッファ管理テーブル37に登録されているかを判定する。送信元のIPアドレスが登録されている場合には(オペレーションIC:Y)、到達性確認処理部45は処理をオペレーションIDへ移行する。送信元のIPアドレスが登録されてない場合には(オペレーションIC:N)、到達性確認処理部45はタイミング通知受信時処理GFを終了する。
オペレーションIDにおいて到達性確認処理部45は、受信制御部44へ、エコー応答パケットが受信されたことを通知する。その後到達性確認処理部45は、処理をオペレーションIEへ移行する。
オペレーションIEにおいて到達性確認処理部45は、エコー応答パケットを送信したSYSLOGサーバについて、到達性学習テーブル38の「学習時間」フィールドに記憶する値を、T1(3秒)にリセットする。その後、到達性確認処理部45はタイミング通知受信時処理GFを終了する。
図17を参照する。オペレーションGFを実行した後、到達性確認処理部45は処理をオペレーションGCへ戻す。
オペレーションGDにおいてイベント「MACアドレス広告パケット受信」が発生したとき、到達性確認処理部45は、MACアドレス広告パケット受信時処理GGを実行する。図20は、図17におけるMACアドレス広告パケット受信時処理GGの説明図である。なお、別な実施の態様においては、下記のオペレーションJAはステップであってもよい。
オペレーションJAにおいて到達性確認処理部45は、MACアドレス広告パケット受信からIPアドレスとMACアドレスを取り出す。到達性確認処理部45は、取り出したIPアドレスに対して、エコー要求パケットを送信する。また到達性確認処理部45は、取り出したIPアドレスに関する到達性学習テーブル38のレコードの「MACアドレス」フィールドに、取り出したMACアドレスを格納する。その後、到達性確認処理部45はMACアドレス広告パケット受信時処理GGを終了する。
図17を参照する。オペレーションGGを実行した後、到達性確認処理部45は処理をオペレーションGCへ戻す。
上述の到達性確認処理部45の処理によって、周期的に各通信ポートのリンク状態が検出され、リンクアップしている全ての通信ポートから、順次、SYSLOGサーバに対するエコー要求パケットが送信される。そして、到達性確認処理部45の処理によって、所定期間T1以上エコー応答パケットが受信されないSYSLOGサーバを、到達性が確認できないSYSLOGサーバと判断することができる。
上述の到達性確認処理部45の処理によって、ある通信ポートにおけるリンク状態がリンクダウンに変化したときは、この通信ポートにおける、エコー要求パケットを用いた到達性確認処理を中断することができる。また到達性確認処理部45の処理によって、ある通信ポートにおけるリンク状態がリンクアップに変化したときは、この通信ポートにおける、エコー要求パケットを用いた到達性確認処理を再開することができる。
また上述の到達性確認処理部45の処理と、図12のオペレーションDBにおける装置内監視部43の処理、及び後述する受信制御部44の処理によって、エコー応答パケットが受信されたSYSLOGサーバを、到達性が確認されたSYSLOGサーバと判断することができる。また上述の到達性確認処理部45の処理と、図12のオペレーションDBにおける装置内監視部43の処理、及び後述する受信制御部44の処理によって、各SYSLOGサーバへ到達する通信ポートを特定することができる。
また到達性確認処理部45の処理によって、リンクアップ及び/又はリンクダウンの検出時だけでなく、常時、エコー要求パケットを用いてSYSLOGサーバへの到達性を監視することができる。
次に、受信制御部44の処理を説明する。上述の通り受信制御部44は、LIUカード13−1〜13−nが接続するネットワークを経由して他の装置からSYSLOG情報を受信したとき、受信されたSYSLOG情報の中継処理を行う。図21は、受信制御部44の処理の説明図である。なお、別な実施の態様においては、下記のオペレーションKA〜オペレーションKFの各オペレーションはステップであってもよい。
オペレーションKAにおいて受信制御部44が起動される。オペレーションKBにおいて受信制御部44は、「SYSLOG受信」、「リンクアップ/リンクダウン通知」及び「エコー応答通知」のいずれかのイベントが発生するのを待つ。
イベント「SYSLOG受信」は、LIUカード13−1〜13−nのいずれかにおいて、他の装置からSYSLOG情報を受信した場合に発生する。
イベント「リンクアップ/リンクダウン通知」は、カード内監視部71が、LIUカード13−1〜13−nのいずれかの通信ポートにおいてリンク状態の変化、すなわちリンクアップ及び/又はリンクダウンを生じたことを、受信制御部44へ通知した場合に発生する。
イベント「エコー応答通知」は、SYSLOGサーバS1〜S3のいずれかから送信されたエコー応答パケットが受信されたことを、到達性確認処理部45が受信制御部44へ通知した場合に発生する。
オペレーションKCにおいて受信制御部44は、上記のイベントのいずれが発生したかを判定する。イベント「SYSLOG受信」が発生したとき、受信制御部44は、第2SYSLOG用処理KDを実行する。図22は、図21における第2SYSLOG用処理KDの説明図である。なお、別な実施の態様においては、下記のオペレーションLA〜オペレーションLHの各オペレーションはステップであってもよい。
オペレーションLAにおいて受信制御部44は、受信されたSYSLOG情報から送信先のIPアドレスを取得する。受信制御部44は、取得したIPアドレスを有するSYSLOGサーバが、受信SYSLOG用バッファ管理テーブル37に、登録されているか否かを判定する。
送信先のSYSLOGサーバが登録されている場合には(オペレーションLA:Y)、受信制御部44は処理をオペレーションLBへ移行する。送信先のSYSLOGサーバが登録されていない場合には(オペレーションLA:N)、受信制御部44は処理をオペレーションLFへ移行する。
オペレーションLBにおいて受信制御部44は、送信先のSYSLOGサーバについて受信SYSLOG用バッファ管理テーブル37の「接続状態」フィールドに記憶された値を参照する。「接続状態」フィールドには、受信SYSLOG用バッファ管理テーブル37に登録された各SYSLOGサーバについて、エコー要求パケット及びエコー応答パケットを用いて到達性を確認した結果が格納される。受信制御部44は、送信先のSYSLOGサーバへの到達性が確認済みであるか否かを判定する。
SYSLOGサーバへの到達性が確認されていない場合(オペレーションLB:N)、受信制御部44は、処理をオペレーションLCへ移行する。SYSLOGサーバへの到達性が確認されている場合(オペレーションLB:Y)、受信制御部44は、処理をオペレーションLDへ移行する。
オペレーションLCにおいて受信制御部44は、受信SYSLOG用バッファ35−1〜35−mのうち、送信先のSYSLOGサーバについて受信SYSLOG用バッファ管理テーブル37の「保存先バッファ」フィールドに指定されている受信SYSLOG用バッファへ、受信されたSYSLOG情報を格納する。
受信SYSLOG用バッファに格納されているSYSLOG情報の数が、受信SYSLOG用バッファ管理テーブル37の「蓄積上限数」フィールドに指定されている上限数を超えるときは、より古いSYSLOG情報から順に上書きされる。受信制御部44は、受信SYSLOG用バッファ管理テーブル37の「蓄積個数」フィールド及び「蓄積サイズ」フィールドの内容を更新する。その後、受信制御部44は第2SYSLOG用処理KDを終了する。
一方で、オペレーションLDにおいて受信制御部44は、受信SYSLOG用バッファ管理テーブル37に登録されているSYSLOGサーバへ、受信したSYSLOG情報を送信する。このとき受信制御部44は、受信SYSLOG用バッファ管理テーブル37の「接続状態」フィールドに格納される識別情報にて指定されているLIUカード及び通信ポートから、SYSLOG情報を送信する。
また、受信SYSLOG用バッファ35−1〜35−mのうち送信先のSYSLOGサーバに割り当てられたバッファ内に、まだ未送信のSYSLOG情報が格納されているときには、受信制御部44は、これらのSYSLOG情報も送信する。
オペレーションLEにおいて受信制御部44は、受信SYSLOG用バッファ35−1〜35−mのうち送信先のSYSLOGサーバに割り当てられたバッファをクリアする。受信制御部44は、送信先のSYSLOGサーバについて、受信SYSLOG用バッファ管理テーブル37の「蓄積個数」フィールド及び「蓄積サイズ」フィールドに記憶されている値を更新する。その後、受信制御部44は第2SYSLOG用処理KDを終了する。
オペレーションLFにおいて受信制御部44は、オペレーションLAにて取得したIPアドレスを有するSYSLOGサーバへ送信するSYSLOG情報を保存する受信SYSLOG用バッファを、受信SYSLOG用バッファ35−1〜35−mの中から選ぶ。受信制御部44は、選択した受信SYSLOG用バッファの指定情報を「保存先バッファ」フィールドに、オペレーションLAにて取得したIPアドレスを「SYSLOGサーバ」フィールドに格納する新しいレコードを、受信SYSLOG用バッファ管理テーブル37に作成する。
オペレーションLGにおいて受信制御部44は、編集後の受信SYSLOG用バッファ管理テーブル37の設定状態を、設定データベース33へ保存する。オペレーションLHにおいて受信制御部44は、オペレーションLFにおいて選択した受信SYSLOG用バッファへ、受信したSYSLOG情報を保存する。その後、受信制御部44は第2SYSLOG用処理KDを終了する。
図21を参照する。オペレーションKDを実行した後、受信制御部44は処理をオペレーションKBへ戻す。
オペレーションKCにおいてイベント「リンクアップ/リンクダウン通知」が発生したとき、受信制御部44は、第2リンクアップ/リンクダウン発生時処理KEを実行する。図23は、図21における第2リンクアップ/リンクダウン発生時処理KEの説明図である。なお、別な実施の態様においては、下記のオペレーションMA〜オペレーションMDの各オペレーションはステップであってもよい。
オペレーションMAにおいて受信制御部44は、リンク状態の変化がリンクダウンであるのかリンクアップであるのか判定する。リンク状態の変化がリンクダウンであるとき、受信制御部44は処理をオペレーションMBへ移行する。リンク状態の変化がリンクアップであるとき、受信制御部44は処理をオペレーションMCへ移行する。
オペレーションMBにおいて受信制御部44は、リンクダウンの通知があった通信ポートが、受信SYSLOG用バッファ管理テーブル37の「接続状態」フィールドに格納されているSYSLOGサーバを特定する。受信制御部44は、このSYSLOGサーバについて、受信SYSLOG用バッファ管理テーブル37の「接続状態」フィールドに格納されている設定値を「NG」へ変更する。その後、受信制御部44は、第2リンクアップ/リンクダウン発生時処理KEを終了する。
一方でオペレーションMCにおいて受信制御部44は、受信SYSLOG用バッファ管理テーブル37に登録されているSYSLOGサーバのうち、まだ到達可能性が確認されていないSYSLOGサーバを特定する。すなわち受信制御部44は、受信SYSLOG用バッファ管理テーブル37の「接続状態」フィールドに格納されている設定値が「NG」のSYSLOGサーバを特定する。
オペレーションMDにおいて受信制御部44は、オペレーションMCで特定したSYSLOGサーバのそれぞれに対して、MACアドレス要請パケットを送信する。その後、受信制御部44は、第2リンクアップ/リンクダウン発生時処理KEを終了する。
第2リンクアップ/リンクダウン発生時処理KEによって、ある通信ポートにおけるリンク状態がリンクダウンに変化したとき、この通信ポートから到達できたSYSLOGサーバに関する到達性を記憶する「接続状態」フィールドの値を、確認できないことを示す値「NG」に変更することができる。
第2リンクアップ/リンクダウン発生時処理KEによって、ある通信ポートにおけるリンク状態がリンクアップに変化したとき、MACアドレス要請パケットを送信し、通信ポートから到達できるSYSLOGサーバに関する到達性の確認を開始することができる。MACアドレス要請パケットに対して、あるSYSLOGサーバからMACアドレス広告パケットを受信したとき、後述するように、このSYSLOGサーバに対するエコー要求パケットが到達性確認処理部45により送信される。そしてこのエコー要求パケットに対するエコー応答パケットが受信されたとき、以下のイベント「エコー応答通知」が発生する。
図21を参照する。オペレーションKEを実行した後、受信制御部44は処理をオペレーションKBへ戻す。
オペレーションKCにおいて、イベント「エコー応答通知」が発生したとき、受信制御部44は、第2エコー応答通知時処理KFを実行する。図24は、図21における第2エコー応答通知時処理KFの説明図である。なお、別な実施の態様においては、下記のオペレーションNA〜オペレーションNDの各オペレーションはステップであってもよい。
オペレーションNAにおいて受信制御部44は、受信されたエコー応答パケットに含まれるSYSLOGサーバのIPアドレスに基づいて、受信SYSLOG用バッファ管理テーブル37に登録されたSYSLOGサーバのうちから、エコー応答パケットを送信したSYSLOGサーバを特定する。受信制御部44は、特定されたSYSLOGサーバについて、受信SYSLOG用バッファ管理テーブル37の「保存先バッファ」フィールドに指定されている発生SYSLOG用バッファを特定する。
オペレーションNBにおいて受信制御部44は、オペレーションNAで特定されたSYSLOGサーバについて、受信SYSLOG用バッファ管理テーブル37の「接続状態」フィールドに格納される値を、設定値「OK」に変更する。また受信制御部44は、この「接続状態」フィールドに、エコー応答パケットが受信されたLIUカード及び通信ポートの識別情報を格納する。
オペレーションNCにおいて受信制御部44は、オペレーションNAで特定されたSYSLOGサーバへ、オペレーションNAで特定された受信SYSLOG用バッファに格納されているSYSLOG情報を送信する。このとき受信制御部44は、受信SYSLOG用バッファ管理テーブル37の「接続状態」フィールドに格納される識別情報にて指定されているLIUカード及び通信ポートから、SYSLOG情報を送信する。
オペレーションNDにおいて受信制御部44は、オペレーションNAで特定された受信SYSLOG用バッファをクリアする。受信制御部44は、オペレーションNAで特定されたSYSLOGサーバについて、受信SYSLOG用バッファ管理テーブル37の「蓄積個数」フィールド及び「蓄積サイズ」フィールドに記憶されている値を更新する。その後、受信制御部44は第2エコー応答通知時処理KFを終了する。
図21を参照する。オペレーションKFを実行した後、受信制御部44は処理をオペレーションKBへ戻す。
本実施例によれば、SYSLOGサーバへの到達性が確認されてから、SYSLOG情報を送信し、それまで発生SYSLOG用バッファ34−1〜34−k及び/又は受信SYSLOG用バッファ35−1〜35−mへSYSLOG情報を保存する。このためネットワーク上でのSYSLOG情報の喪失を低減することができる。
また本実施例によれば、SYSLOGサーバからのエコー応答が返ってきた通信ポートへSYSLOG情報を送信する。したがって、レイヤ2スイッチのようなインバンド回線に接続される複数の通信ポートを有しているネットワーク装置において、複数の通信ポートのいずれにSYSLOG情報を送信すればよいか決定することができる。
また本実施例によれば、リンクアップの検出時に、登録されているSYSLOGサーバへのMACアドレス要請パケットが送信されて、エコー応答パケットの受信により到達性が確認されたときにSYSLOG情報が送信される。このため、SYSLOG情報をいつ送信すればよいかを決定することができる。
以上の実施例を含む実施形態に関し、更に以下の付記を開示する。
(付記1)
インターネットプロトコル・ネットワークを経由して所定のログ受信装置へ接続されるネットワーク装置であって、
前記ログ受信装置へ向けたエコー要求を送信するエコー要求送信手段と、
前記ログ受信装置からのエコー応答が返信されてくるまで、前記ログ受信装置へ送信するログ情報を記憶しておくログ記憶手段と、
を備えるネットワーク装置。
(付記2)
前記インターネットプロトコル・ネットワークへ各々接続される複数のポートと、
前記複数のポートのうち前記エコー応答が受信されたポートへ、前記ログ記憶手段に記憶された前記ログ情報を送信するログ送信手段と、
を備える付記1に記載のネットワーク装置。
(付記3)
各前記ポートがリンクアップしているか否かを検出するリンクアップ検出手段を備え、
前記エコー要求送信手段は、前記複数のポートのうちリンクアップしているポートのみから前記エコー要求を送信する付記2に記載のネットワーク装置。
(付記4)
前記複数のポート間でスイッチングを行うレイヤ2スイッチ装置である、付記2又は3に記載のネットワーク装置。
(付記5)
前記ログ情報は、前記ネットワーク装置で発生したイベントに関するログ情報である付記1〜4のいずれか一項に記載のネットワーク装置。
(付記6)
前記ログ情報は、インターネットプロトコル・ネットワークを経由して接続される所定のログ送信装置から受信したログ情報である付記1〜4のいずれか一項に記載のネットワーク装置。
(付記7)
インターネットプロトコル・ネットワークを経由して所定のログ受信装置へ接続されるネットワーク装置からログ情報を送信するログ情報送信方法であって、
前記ログ受信装置へ向けたエコー要求を送信し、
前記ログ受信装置からのエコー応答が返信されてくるまで、前記ログ受信装置へ送信する前記ログ情報を、所定のログ記憶手段に記憶しておくログ情報送信方法。
(付記8)
前記ネットワーク装置は、前記インターネットプロトコル・ネットワークへ各々接続される複数のポートを備え、
前記複数のポートのうち前記エコー応答が受信されたポートへ、前記ログ記憶手段に記憶された前記ログ情報を送信する付記7に記載のログ情報送信方法。
(付記9)
各前記ポートがリンクアップしているか否かを検出し、
前記複数のポートのうちリンクアップしているポートのみから前記エコー要求を送信する付記8に記載のログ情報送信方法。