(57)【特許請求の範囲】
【請求項１】
監視対象であるデバイスの性能情報を収集する性能情報収集システムであって、
互いの間でパケットを送受信するための第１の信号線によって順に接続されている複数のデバイスと、
前記複数のデバイスを制御する信号を送信するためのバスによって前記複数のデバイスと接続されている監視手段と、
前記複数のデバイスのうちの一つである第１のデバイスと前記監視手段とを接続する、パケットの転送が可能な第２の信号線とを有し、
前記監視手段は、
前記バスによって前記第１のデバイスに対して情報収集を要求する指示手段と、
前記第２の信号線によって前記第１のデバイスから転送されてきた情報収集のためのパケットを受信する受信手段と、を備え、
前記第１のデバイスは、
前記監視手段からの要求を受けて、性能情報を収集するための収集パケットを生成する生成手段と、
前記複数のデバイスのうち、前記第１の信号線による転送順序における次のデバイスに、前記生成手段によって生成された前記収集パケットを前記第１の信号線を用いて送信する収集パケット送出手段と、
前記複数のデバイスのうちの当該第１のデバイス以外である第２のデバイスから受信した前記収集パケットを前記第２の信号線を用いて前記監視手段に転送する収集パケット返送手段と、を備え、
前記第２のデバイスは、
自デバイスの性能情報を検出する検出手段と、
前記第１のデバイスから転送されてきた前記収集パケットを受信したときに、当該収集パケットに前記検出手段が検出した性能情報を格納する格納手段と、
自デバイスが性能情報を格納する最後のデバイスである場合は、前記格納手段によって性能情報が格納された収集パケットを前記第１の信号線を用いて前記監視手段宛に送信し、自デバイスが性能情報を格納する最後の監視対象デバイスでない場合は、前記格納手段によって性能情報が格納された当該収集パケットを前記第１の信号線を用いて次のデバイスに送信する収集パケット転送手段と、を備える
性能情報収集システム。
【請求項２】
前記格納手段は、受信した収集パケットに性能情報が格納されている場合には、当該性能情報が格納されている領域以外の領域に、前記検出手段で検出した性能情報を格納する
請求項１記載の性能情報収集システム。
【請求項３】
パケットを順に転送する複数のデバイスと、前記複数のデバイスをこれらとの間のバスを用いて制御する制御手段とを有するパケット転送システムに、当該複数のデバイスの性能情報を収集させる性能情報収集方法であって、
前記制御手段は、
パケットの転送が可能な信号線によって、前記複数のデバイスのうちの一つである第１のデバイスと接続され、
前記バスによって前記第１のデバイスに対して情報収集を要求する指示処理と、
前記信号線によって前記第１のデバイスから転送されてきたパケットを受信する受信処理と、を行ない、
前記第１のデバイスは、
前記制御手段からの要求を受けて、性能情報を収集するための収集パケットを生成する生成処理と、
前記複数のデバイスのうち、パケットの転送順序における次のデバイスに、前記生成処理によって生成された前記収集パケットを送信する収集パケット送出手段と、
前記複数のデバイスのうちの当該第１のデバイス以外である第２のデバイスから受信した前記収集パケットを前記制御手段に前記信号線を用いて送信する収集パケット返送処理と、を行ない、
前記第２のデバイスは、
自デバイスの性能情報を検出する検出処理と、
前記第１のデバイスから転送されてきた前記収集パケットを受信したときに、当該収集パケットに前記検出手段が検出した性能情報を格納する格納処理と、
自デバイスが性能情報を格納する最後のデバイスである場合は、前記格納処理によって性能情報が格納された収集パケットを前記制御手段宛に送信し、自デバイスが性能情報を格納する最後の監視対象デバイスでない場合は、前記格納処理によって性能情報が格納された当該収集パケットを次のデバイスに送信する収集パケット転送処理と、を行なう
性能情報収集方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、デバイスのパフォーマンスデータを収集する技術に関する。
【背景技術】
【０００２】
コンピュータシステムにおいては、その稼働状況及び資源利用状況等を常に監視及び評価することで、現状を分析し問題があれば解決手段が施される。
【０００３】
ネットワークにおいては、円滑なデータ通信を行うために、各ノードにおけるトラフィック情報の収集がなされている（特許文献１等参照）。
【０００４】
また、ネットワークのノードである伝送装置においても、パケットの転送状況の監視が行われている。
【０００５】
通常、伝送装置等のインタフェースカードにおいては、その伝送装置を構成するデバイスのパフォーマンス情報を定期的に収集している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００３−１５８５４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかし、インタフェースカードの動作状況を評価するには、ある一定期間収集した各デバイスのパフォーマンス情報を分析する必要がある。
【０００８】
というのは、各デバイスから収集されるパフォーマンス情報を単純に比較するだけでは、インタフェースカードの動作状況を評価できないからである。
【０００９】
各デバイスに対するパフォーマンス情報の送信要求は、ＣＰＵから各デバイスに対して送信される各種制御信号と同様に、低速の、例えば、３０メガビット／秒のバスを通して行われる。一方で、各デバイスが処理しているパケットは、高速で、例えば、１０ギガビット／秒で転送されている。
【００１０】
すなわち、ＣＰＵがパフォーマンス情報の送信を各デバイスに要求した場合に各デバイスから送信されてくる各パフォーマンス情報は、パケットストリームの同一部分に対するパフォーマンス情報ではない場合がほとんどである。
【００１１】
従って、各デバイスのパフォーマンス情報を単純に比較して動作状況を分析することはできない。そのため、ある程度の期間のパフォーマンス情報を収集し、分析する必要が生じる。
【００１２】
このことは、インタフェースカードの動作状況を評価するのに時間がかかることに加え、何らかの不具合が生じた場合に、不具合の原因となった箇所を特定することを困難としている。
【００１３】
そこで、本発明は、パケットストリームの同一部分に関するパフォーマンス情報を各デバイスで検出し、収集することを目的とする。
【課題を解決するための手段】
【００１４】
本発明の１形態に係る性能情報収集システムは、監視対象であるデバイスの性能情報を収集する性能情報収集システムであって、互いの間でパケットを送受信するための第１の信号線によって順に接続されている複数のデバイスと、前記複数のデバイスを制御する信号を送信するためのバスによって前記複数のデバイスと接続されている監視手段と、前記複数のデバイスのうちの一つである第１のデバイスと前記監視手段とを接続する、パケットの転送が可能な第２の信号線とを有する。前記監視手段は、前記バスによって前記第１のデバイスに対して情報収集を要求する指示手段と、前記第２の信号線によって前記第１のデバイスから転送されてきた情報収集のためのパケットを受信する受信手段と、を有する。前記第１のデバイスは、前記監視手段からの要求を受けて、性能情報を収集するための収集パケットを生成する生成手段と、前記複数のデバイスのうち、前記第１の信号線による転送順序における次のデバイスに、前記生成手段によって生成された前記収集パケットを前記第１の信号線を用いて送信する収集パケット送出手段と、前記複数のデバイスのうちの当該第１のデバイス以外である第２のデバイスから受信した前記収集パケットを前記第２の信号線を用いて前記監視手段に転送する収集パケット返送手段と、を有する。前記第２のデバイスは、自デバイスの性能情報を検出する検出手段と、前記第１のデバイスから転送されてきた前記収集パケットを受信したときに、当該収集パケットに前記検出手段が検出した性能情報を格納する格納手段と、自デバイスが性能情報を格納する最後のデバイスである場合は、前記格納手段によって性能情報が格納された収集パケットを前記第１の信号線を用いて前記監視手段宛に送信し、自デバイスが性能情報を格納する最後の監視対象デバイスでない場合は、前記格納手段によって性能情報が格納された当該収集パケットを前記第１の信号線を用いて次のデバイスに送信する収集パケット転送手段と、を有する。
【発明の効果】
【００１５】
上記構成の性能情報収集システムは、パケットストリームの同一部分に関するパフォーマンス情報を各デバイスで検出し、収集することができる。
【図面の簡単な説明】
【００１６】
【図１】インタフェースカードの構成例を示す図である。
【図２】制御部及びデバイス（ＤＥＶ１）の機能的構成の例を示すブロック図である。
【図３】デバイス（ＤＥＶ２）の機能的構成の例を示すブロック図である。
【図４】インタフェースカードにおけるＰＭ収集パケットの流れを示す図である。
【図５】ＰＭ収集パケットを用いた場合の、ＰＭ情報収集処理のタイムチャートを示す図である。
【図６】ＰＭ情報収集処理における各デバイスの入出力パケットを示す図である。
【図７】ＤＥＶ１〜ＤＥＶ３の各デバイスが検出するＰＭ情報の例を示す図である。
【図８】ＰＭ収集パケットの構成及び内容の例を示す図である。
【図９】ＰＭ収集パケットの内容の遷移を示す図である。
【図１０】インタフェースカードにおけるＰＭ情報収集処理を表すフローチャートである。
【図１１】ＰＭ収集パケットの構成及び内容の例を示す図である。
【図１２】ＰＭ収集パケットを用いた場合の、ＰＭ情報収集処理のタイムチャートを示す図である。
【図１３】デバイス毎に送信要求を出してＰＭ情報を収集する例を示す図である。
【図１４】デバイス毎に送信要求を出してＰＭ情報を収集する場合の、ＰＭ情報収集処理のタイムチャートを示す。
【図１５】デバイス毎に送信要求を出してＰＭ情報を収集する場合の、ＤＥＶ１〜ＤＥＶ３の各デバイスが検出するＰＭ情報の例を示す図である。
【発明を実施するための形態】
【００１７】
＜実施形態＞
図１は、実施形態のインタフェースカード１００の構成例を示す図である。
【００１８】
インタフェースカード１００は、制御部１０００、光ファイバーをインタフェースカード１００に接続するＳＦＰ（Small Form factor Pluggable）規格の光トランシーバ（以下、「ＳＦＰ」という。）、及び、インタフェースカード１００が転送するパケットに所定の処理を行う各デバイス（図１において、「ＤＥＶ１」等で示す。）を有する。
【００１９】
制御部１０００は、ＣＰＵ（Central Processing Unit）、及び、各デバイスとのインタフェースを取る等の処理を行うＣＰＵＩＮＦを有する。ＣＰＵとＣＰＵＩＮＦは、ＰＣＩバス１１１により接続されている。また、ＣＰＵＩＮＦは、ＲＳ２３２Ｃ（Recommended Standard 232 version C）方式の信号線によりＳＦＰと接続されており、また、ハードバス１１０により各デバイスと接続されている。
【００２０】
制御部１０００は、ＲＳ２３２Ｃを介してＳＦＰを制御し、ハードバス１１０を介して各デバイスを制御する。
【００２１】
図１において、「主信号線（点線矢印）１２０」を流れるパケットは、ＤＥＶ１、ＤＥＶ２、ＤＥＶ３と、順に各デバイスで処理が成されて転送されていく。ＤＥＶ３で処理が成されたパケットは、ＢＷＢ（Back Wired Board）を介して、必要に応じて次のインタフェースカードに入力される。また、逆に、ＢＷＢから入力されたパケットは、ＤＥＶ３、ＤＥＶ２、ＤＥＶ１と順に処理がなされてＳＦＰから出力される。
【００２２】
主信号線１２０の通信速度はハードバス１１０等の通信速度よりも高速である。例えば、ハードバス１１０の通信速度が３０メガビット／秒であり、主信号線１２０の通信速度が１０ギガビット／秒である等である。
【００２３】
尚、図１では、説明の便宜上、３つのデバイスを記載しているが、デバイスの個数は３つに限られない。
【００２４】
ＤＥＶ１とＣＰＵは信号線１３０で接続され、ＣＰＵは、主信号線１２０を流れるパケットをＤＥＶ１から取り込み、また、パケットを送出することができる。
【００２５】
＜デバイス毎にパフォーマンス情報を要求する場合＞
ここで、ＣＰＵが各デバイスに対してパフォーマンス情報の送信要求を順に送信し、パフォーマンス情報を収集する場合の処理、及び、問題点を図１３〜図１５を用いて説明する。
【００２６】
図１３は、デバイス毎に送信要求を出してパフォーマンス情報（以下、「ＰＭ情報」という。）を収集する例を示す図である。
【００２７】
制御部１０００は、図１の太点線で示すように、ＤＥＶ１〜ＤＥＶ３のそれぞれに対してＰＭ情報送信要求を送り、各デバイスからＰＭ情報を受信する。
【００２８】
図１４に、ＰＭ情報収集処理のタイムチャートを示す。６角形は、ＣＰＵ等が行う処理時間を示す（図５及び図１２において同様）。
【００２９】
制御部１０００のＣＰＵは、まず、ＰＣＩバス１１１を介して、ＣＰＵＩＮＦにＰＭ情報の送信要求を送信する（処理１０）。ＣＰＵＩＮＦは、受信したＰＭ情報送信要求を、ハードバス１１０を介してＤＥＶ１宛に送信し、送信完了をＣＰＵに通知する（処理１１）。
【００３０】
ＰＭ情報送信要求を受信したＤＥＶ１は、検出しておいたＰＭ情報を、ハードバス１１０を介してＣＰＵＩＮＦに送信する（処理１２）。ＣＰＵＩＮＦは、受信したＰＭ情報を、ＰＣＩバス１１１を介してＣＰＵに送信する（処理１３）。ＰＭ情報を受信したＣＰＵは、受信したＰＭ情報を記憶する等の処理を行う（処理１４）。
【００３１】
同様に、ＤＥＶ２及びＤＥＶ３のＰＭ情報を収集する。
【００３２】
図１５は、ＤＥＶ１〜ＤＥＶ３の各デバイスが検出するＰＭ情報の例を示す図である。図１５では、前回のＰＭ情報送信要求を受けてから、今回のＰＭ情報送信要求を受けるまでの間に転送したパケットの数をＰＭ情報として検出する。
【００３３】
「ＰＭ送信処理」は、ＤＥＶ１〜ＤＥＶ３の各デバイスが、それぞれ送信するＰＭ情報を検出して送信するタイミングを示す。
【００３４】
「パケット」は、パケットストリームを示す。６角形は１つのパケットの処理時間を示し、６角形内部の数字は、パケットがインタフェースカード１００に受信された順番を示す。以下、ｎ番目のパケットを、パケット［ｎ］のように示すものとする（図６及び図７において同様）。
【００３５】
ＤＥＶ１がＰＭ情報を送信するタイミング（Ｔ２１）は、パケット［１００００］を転送した直後であり、前回の送信タイミング（Ｔ２０）後は、パケット［１］から転送したとする。この場合、Ｔ２１のタイミングでＤＥＶ１が送信するＰＭ情報は「１００００個」である。
【００３６】
また、Ｔ２２のタイミングでは、送信するＰＭ情報は「９６００個」となる。
【００３７】
同様に、ＤＥＶ２がＴ３１のタイミングで送信するＰＭ情報は、「９１００個」であり、検出対象となったパケットは、パケット［３０００］〜パケット［１２１００］である。
【００３８】
ＤＥＶ１〜ＤＥＶ３の各デバイスが送信したＰＭ情報を基に、例えば、パケットがロスしたか否かを判断しようとした場合、単純に、ＤＥＶ１が検出したパケット数から、ＤＥＶ２が検出したパケット数を引いたとしてもパケットがロスしたのか否かは判断がつかない。
【００３９】
ＤＥＶ１〜ＤＥＶ３の各デバイスが検出対象とするパケットは、それぞれ異なるからである。
【００４０】
実施形態のインタフェースカード１００では、ＣＰＵからのＰＭ情報の要求をＤＥＶ１が受けた場合、ＤＥＶ１は、ＰＭ情報を収集するためのパケット（以下、「ＰＭ収集パケット」という。）を生成し、主信号線１２０を流れるパケットストリームに挿入する。
【００４１】
ＰＭ収集パケットを受信したＤＥＶ２、ＰＭ収集パケットに検出したＰＭ情報を格納してＤＥＶ３に転送する。ＤＥＶ３は、受信したＰＭ収集パケットにＰＭ情報を格納してＣＰＵに送り返す。
【００４２】
このようにすることにより、ＤＥＶ１〜ＤＥＶ３の各デバイスが検出の対象とするパケットが明確となり、それぞれのデバイスが同じパケットを検出対象とすることが可能となる。すなわち、主信号線１２０を流れるパケットに同期したＰＭ情報を収集することが可能となる。従って、パケット単位の情報を収集することが可能となり、正確で的確な評価を短時間で行うことが可能となり、又、不具合が生じた場合には、原因個所の特定が容易となる。
【００４３】
このことは、ＰＣＩバス１１１及びハードバス１１０を流れる要求が減り、各バスの負荷の低減を図ることが可能となる。
【００４４】
また、１つのパケットで全てのデバイスのＰＭ情報を収集するので、ＣＰＵは評価のために必要な情報を一度に取得することが可能となる。このことは、ＣＰＵパワーを最小限度に抑えることとなり、ＣＰＵとして、より安価で消費電流の低いデバイスを選択することが可能となる。
【００４５】
以下、実施形態のインタフェースカード１００がＰＭ情報を収集する処理について、図を用いて説明する。
【００４６】
＜機能＞
インタフェースカード１００の機能的構成を説明する前に、ＰＭ収集パケットの流れ及びＰＭ収集処理のタイムチャート等を、図４〜図７を用いて説明する。
【００４７】
図４は、インタフェースカード１００におけるＰＭ収集パケットの流れを示す図である。
【００４８】
太点線で示すように、ＰＭ収集パケットは、ＤＥＶ１→ＤＥＶ２→ＤＥＶ３→ＤＥＶ２→ＤＥＶ１→ＣＰＵＩＮＦ→ＣＰＵと流れる。ＤＥＶ１→ＤＥＶ２→ＤＥＶ３へと流れる方向は予め定められているものとする。
【００４９】
この際、ハードバス１１０等のバスではなく、主信号線１２０及び信号線１３０を流れる。尚、ＤＥＶ１からＣＰＵへは、バスを用いてもよい。また、ＤＥＶ３からバスを用いてＣＰＵに送信してもよい。
【００５０】
図５は、ＰＭ収集パケットを用いた場合の、ＰＭ情報収集処理のタイムチャートを示す図である。また、図６は、ＰＭ情報収集処理における各デバイスの入出力パケットを示す図である。図６において、「ＰＭ」と記されたパケットは、ＰＭ収集パケットを示す。
【００５１】
制御部１０００のＣＰＵは、まず、ＰＣＩバス１１１を介して、ＣＰＵＩＮＦにＰＭ情報の収集要求を送信する（処理４０）。ＣＰＵＩＮＦは、受信したＰＭ情報の収集要求を、ハードバス１１０を介してＤＥＶ１宛に送信し、送信完了をＣＰＵに通知する（処理４１）。この処理は、図１４を用いて説明した、各デバイスにＰＭ情報の送信要求を送る際と同様である。
【００５２】
ＤＥＶ１は、ＰＭ収集パケットを生成し、生成したＰＭ収集パケットにＤＥＶ１自身のＰＭ情報を格納してＤＥＶ２に転送する（図５の処理４２、図６のＤＥＶ１参照）。
【００５３】
ＤＥＶ２は、ＤＥＶ１から転送されたＰＭ収集パケットに、ＤＥＶ２自身のＰＭ情報を格納し、次のデバイスであるＤＥＶ３に転送する（図５の処理４３、図６のＤＥＶ２参照）。
【００５４】
ＤＥＶ３は、ＰＭ収集パケットを受信し、ＤＥＶ３自身のＰＭ情報を格納して、ＣＰＵ宛に転送する（図５の処理４４、図６のＤＥＶ３参照）。具体的には、ＤＥＶ２に転送する。
【００５５】
ＤＥＶ２では、ＤＥＶ３から転送されてきたＰＭ収集パケットは通常のパケットと同様に扱い、ＣＰＵ宛に転送する。
【００５６】
ＣＰＵ宛のパケットは、ＤＥＶ１から信号線１３０を介してＣＰＵＩＮＦに送信され、ＣＰＵＩＮＦは、受信したＰＭ情報を、ＰＣＩバス１１１を介してＣＰＵに送信する（処理４５）。ＰＭ収集パケットを受信したＣＰＵは、格納されているＰＭ情報を記憶する等の処理を行う（処理４６）。
【００５７】
図７は、ＤＥＶ１〜ＤＥＶ３の各デバイスが検出するＰＭ情報の例を示す図である。図１５と同様に、各デバイスが転送したパケット数をＰＭ情報とする。
【００５８】
前回のＰＭ収集パケットにＰＭ情報を格納してから、今回のＰＭ収集パケットにＰＭ情報を格納するまでの間に転送したパケットの数をＰＭ情報として検出する。
【００５９】
「ＰＭ格納処理」は、ＤＥＶ１〜ＤＥＶ３の各デバイスが、それぞれＰＭ収集パケットにＰＭ情報を検出して格納するタイミングを示す。
【００６０】
「パケット」は、パケットストリームを示す。
【００６１】
ＤＥＶ１は、ＰＭ収集パケット「ＰＭ１」を送信（Ｔ５０）した直後からパケットのカウントを開始し、次のＰＭ収集パケット「ＰＭ２」を送信（Ｔ５１）する時にＰＭ情報を検出する。この場合のＤＥＶ１が検出するＰＭ情報は、パケット［１］〜パケット［１００００］の「１００００個」である。
【００６２】
ＤＥＶ２は、ＰＭ収集パケット「ＰＭ１」を受信（Ｔ６０）した直後からパケットのカウントを開始し、次のＰＭ収集パケット「ＰＭ２」を受信（Ｔ６１）した時にＰＭ情報を検出する。この場合のＤＥＶ１が検出するＰＭ情報は、パケット［１］〜パケット［１００００］の「１００００個」である。
【００６３】
同様に、ＤＥＶ３が検出するＰＭ情報も、パケット［１］〜パケット［１００００］の「１００００個」である。
【００６４】
このように、インタフェースカード１００では、パケットストリームのうちの同一部分のパケットをカウントする。従って、パケットロスを検出するには、各デバイスで検出したパケット数を比較すればよく、いずれのデバイスでロスが発生したのかも確定できる。
【００６５】
以下、インタフェースカード１００の機能的構成について説明する。
【００６６】
図２は、制御部１０００及びデバイス（ＤＥＶ１）２０００の機能的構成の例を示すブロック図である。
【００６７】
また、図３は、デバイス（ＤＥＶ２）３０００の機能的構成の例を示すブロック図である。尚、ＤＥＶ３は、ＤＥＶ２と同様の機能を備えることから、ここではＤＥＶ２を説明する。
【００６８】
図２及び図３では、ＰＭ情報収集処理に関する機能を中心に記載している。
【００６９】
制御部１０００は、ＰＭ指示部１１００、ＰＭ収集パケット受信部１２００、及び、ＰＭデータ記憶部１３００を有する。
【００７０】
ＰＭ指示部１１００は、デバイス（ＤＥＶ１）２０００に対してＰＭ情報の収集を要求する機能を有する。この際、どのデバイスから、どのようなＰＭ情報を収集するか等を指定する。
【００７１】
ＰＭ収集パケット受信部１２００は、ＰＭ情報を収集したＰＭ収集パケットを、信号線１３０を介してデバイス（ＤＥＶ１）２０００から受信する機能を有する。また、ＰＭ収集パケット受信部１２００は、受信したＰＭ収集パケットに格納されているＰＭ情報を、ＰＭデータ記憶部１３００に記憶させる機能を有する。
【００７２】
ＰＭデータ記憶部１３００は、ＰＭ収集パケットが収集してきたＰＭ情報を記憶しておく機能を有する。
【００７３】
デバイス（ＤＥＶ１）２０００は、収集パケット生成部２１００、ＰＭ検出部２２００、ＰＭデータ記憶部２３００、及び、パケット転送部２５００を有する。
【００７４】
収集パケット生成部２１００は、制御部１０００からＰＭ情報収集の要求を受けると、ＰＭ収集パケットを生成し、主信号線１２０に流すためにパケット転送部２５００に渡す機能を有する。ＰＭ収集パケットのヘッダには、要求で指定されたどのようなＰＭ情報を収集するかを示す情報（以下、「収集ＰＭ情報」という。）を設定する。この収集ＰＭ情報では、ＰＭ情報の収集対象のデバイス、及び、収集するＰＭ情報の内容等を指定する。
【００７５】
ＰＭ検出部２２００は、デバイス（ＤＥＶ１）２０００自身のＰＭ情報を検出する機能を有する。ＰＭ情報とは、パケット転送部２５００が転送したパケットの数、受信したパケットのうちのエラーパケットの個数、特定の宛先のパケットの個数等である。どのようなＰＭ情報を検出するかは、予めデバイス毎に決められているものとする。検出したＰＭ情報は、ＰＭデータ記憶部２３００に記憶させておく。
【００７６】
ＰＭデータ記憶部２３００は、ＰＭ検出部２２００が検出したＰＭ情報を記憶しておく機能を有する。
【００７７】
パケット転送部２５００は、主信号線１２０を流れるパケットを受信し、所定の処理を行って次のデバイスに転送する機能を有する。
【００７８】
また、パケット転送部２５００は、ＰＭ情報収集処理に関するＰＭパケットデータ格納部２５１０、及び、ＰＭパケット転送方向判断部２５２０を有する。
【００７９】
ＰＭパケットデータ格納部２５１０は、収集パケット生成部２１００から渡されたＰＭ収集パケットにデバイス（ＤＥＶ１）２０００自身のＰＭ情報を格納する機能を有する。具体的には、ＰＭデータ記憶部２３００からＰＭ情報を読み出してＰＭ収集パケットに格納する。ＰＭパケットデータ格納部２５１０は、ＰＭ情報を格納したＰＭ収集パケットをＰＭパケット転送方向判断部２５２０に渡して転送を依頼する。
【００８０】
ＰＭパケット転送方向判断部２５２０は、ＰＭパケットデータ格納部２５１０から渡されたＰＭ収集パケットの転送方向の判断し、判断に従い送信する機能を有する。
【００８１】
具体的には、次のデバイスに転送するのか、ＣＰＵに返送するのかを判断する。
【００８２】
次のデバイスに転送すると判断した場合は、ＰＭパケット転送方向判断部２５２０はＰＭ収集パケットを次のデバイスに転送するために、パケットストリームに挿入する。
【００８３】
また、ＣＰＵに返送すると判断した場合には、ＰＭパケット転送方向判断部２５２０はＰＭ収集パケットを、信号線１３０を介して、ＰＭ収集パケット受信部１２００に送信する。尚、このＣＰＵに返送すると判断する場合は、デバイス（ＤＥＶ１）２０００のＰＭ情報のみをＣＰＵに返送する時である。
【００８４】
この判断は、ＰＭ収集パケットのヘッダに設定されている収集ＰＭ情報に基づいて行う。例えば、収集ＰＭ情報が「ＤＥＶ１〜ＤＥＶ３」である場合は、ＤＥＶ１〜ＤＥＶ３までのそれぞれのデバイスのＰＭ情報を収集する等である。
【００８５】
次に、図３に示すデバイス（ＤＥＶ２）３０００は、ＰＭ検出部２２００、ＰＭデータ記憶部２３００、及び、パケット転送部３５００を有する。
【００８６】
ＰＭ検出部２２００及びＰＭデータ記憶部２３００は、デバイス（ＤＥＶ１）２０００のＰＭ検出部２２００及びＰＭデータ記憶部２３００とそれぞれ同様の機能を有する。
【００８７】
パケット転送部３５００は、ＰＭパケットデータ格納部２５１０、及び、ＰＭパケット転送方向判断部３５２０を有する。
【００８８】
ＰＭパケットデータ格納部２５１０は、デバイス（ＤＥＶ１）２０００のＰＭパケットデータ格納部２５１０と同様の機能を有する。
【００８９】
ＰＭパケット転送方向判断部３５２０は、デバイス（ＤＥＶ１）２０００のＰＭパケット転送方向判断部２５２０と同様に、ＰＭパケットデータ格納部２５１０から渡されたＰＭ収集パケットの転送方向の判断し、判断に従い処理する機能を有するが、判断後の処理が異なる。
【００９０】
ＰＭパケット転送方向判断部３５２０は、次のデバイスに転送すると判断した場合には、ＰＭ収集パケットを次のデバイスに転送する。この際、パケットストリームにおけるＰＭ収集パケットの位置は変えない。
【００９１】
また、ＣＰＵに返送すると判断した場合には、ＰＭパケット転送方向判断部３５２０は、ＰＭ収集パケットをパケットストリームから抜き出し、主信号線１２０を介して、前のデバイスに送信する。尚、このＣＰＵに返送すると判断する場合は、ＰＭ収集パケットにより収集すべきＰＭ情報が収集された時、すなわち、デバイス（ＤＥＶ２）３０００自身が収集すべき最後のデバイスである時である。
【００９２】
この判断は、ＰＭ収集パケットのヘッダに設定されている収集ＰＭ情報に基づいて行う。例えば、収集ＰＭ種別情報が、ＤＥＶ１〜ＤＥＶ３までのそれぞれのデバイスのＰＭ情報を収集することを示す「ＤＥＶ１〜ＤＥＶ３」である場合、ＤＥＶ３のＰＭパケット転送方向判断部３５２０は、ＣＰＵに返送すると判断する。
【００９３】
＜ＰＭ収集パケット＞
ここで、ＰＭ収集パケットについて、図８及び図９を用いて説明する。
【００９４】
図８に、ＰＭ収集パケット２１１０の構成例及び内容例を示す。
【００９５】
ＰＭ収集パケット２１１０は、装置内ヘッダ２１１１、パケットヘッダ２１１２、ペイロード２１１３、誤り訂正情報であるＦＣＳ（Frame Check Sequence）２１１４、及び、誤り検出情報であるＣＲＣ（Cyclic Redundancy Check）２１１５を有する。
【００９６】
装置内ヘッダ２１１１は、インタフェースカード１００内における伝送用のヘッダである。ＰＭ収集パケット２１１０の装置内ヘッダ２１１１は、最終的な送信先であるＣＰＵのアドレス、自身がＰＭ収集パケットである旨を示す識別子、どのようなＰＭ情報を収集するかを示す情報である収集ＰＭ情報、例えば、収集するＰＭ情報の種別等を含む。
【００９７】
パケットヘッダ２１１２は、通常のパケットヘッダであり、ペイロード長を含む。
【００９８】
ペイロード２１１３は、収集するＰＭ情報を格納する領域である。
【００９９】
図９に、ＰＭ収集パケット２１１０の内容の遷移を示す。
【０１００】
一番上のＰＭ収集パケット２１１０（生成時）は、ＤＥＶ１において生成された時のＰＭ収集パケット２１１０を示す（図６のＤＥＶ１「ＰＭ収集パケットの生成」におけるＰＭ参照）。
【０１０１】
装置内ヘッダ２１１１には、収集するＰＭ情報が、例えば、ＤＥＶ１〜ＤＥＶ３までの通過パケット数である旨が設定されている。尚、図９では記載していないが、装置内ヘッダ２１１１には、最終的な送信先であるＣＰＵのアドレス、及び、自身がＰＭ収集パケットである旨を示す識別子が設定されている。
【０１０２】
２番目のＰＭ収集パケット２１１０（ＤＥＶ１）は、ＤＥＶ１が出力するＰＭ収集パケット２１１０を示す図である。ペイロード２１１３には、ＤＥＶ１のＰＭ情報が格納されている（図６のＤＥＶ１「ＤＥＶ１の出力」におけるＰＭ参照）。
【０１０３】
３番目のＰＭ収集パケット２１１０（ＤＥＶ２）は、ＤＥＶ２が出力するＰＭ収集パケット２１１０を示す図である。ペイロード２１１３には、ＤＥＶ１及びＤＥＶ２のＰＭ情報が格納されている（図６のＤＥＶ２「ＤＥＶ２の出力」におけるＰＭ参照）。
【０１０４】
４番目のＰＭ収集パケット２１１０（ＤＥＶ３）は、ＤＥＶ３が出力するＰＭ収集パケット２１１０を示す図である。ペイロード２１１３には、ＤＥＶ１、ＤＥＶ２及びＤＥＶ３のＰＭ情報が格納されている（図６のＤＥＶ３「ＣＰＵ宛ての出力」におけるＰＭ参照）。
【０１０５】
＜動作＞
以下、実施形態のインタフェースカード１００のＰＭ情報を収集する動作について図１０を用いて説明する。
【０１０６】
図１０は、インタフェースカード１００におけるＰＭ情報収集処理を表すフローチャートである。
【０１０７】
ここでは、ＤＥＶ１〜ＤＥＶ３までの３つのデバイスを備えるインタフェースカード１００の処理を説明する（図１参照）。
【０１０８】
各デバイスにおいては、ＰＭ検出部２２００が適時ＰＭ情報を検出し、ＰＭデータ記憶部２３００に記憶している。各デバイスのＰＭ検出部２２００は、パケットの通過数の他、各デバイスの処理内容に応じて適時適切な情報を検出し、各デバイスのＰＭデータ記憶部２３００に記憶しているものとする。
【０１０９】
制御部１０００は、ハードバス１１０及びＰＣＩバス１１１を介して、ＰＭ情報の収集要求をデバイス（ＤＥＶ１）２０００に送信する（ステップＳ１００）。この際、どのようなＰＭ情報を収集するかを指定する。前回のＰＭ情報収集要求時からのパケット通過数であるＰＭ情報を、ＤＥＶ１〜ＤＥＶ３から収集する旨指定したものとする。
【０１１０】
ＰＭ情報の収集要求を受けたデバイス（ＤＥＶ１）２０００の収集パケット生成部２１００は、ＰＭ収集パケット２１１０を生成し（図９のＰＭ収集パケット２１１０（生成時）参照）、生成したＰＭ収集パケット２１１０をパケット転送部２５００に渡す（ステップＳ１１０）。
【０１１１】
ＰＭ収集パケット２１１０を渡されたパケット転送部２５００は、渡されたパケットの装置内ヘッダ２１１１を参照し、ＰＭ収集パケットであることからＰＭパケットデータ格納部２５１０に渡す。
【０１１２】
ＰＭ収集パケット２１１０を渡されたＰＭパケットデータ格納部２５１０は、装置内ヘッダ２１１１に設定されている収集ＰＭ情報を参照して収集対象のＰＭ情報の種別を取得する。ＰＭパケットデータ格納部２５１０は、収集対象のＰＭ情報をＰＭデータ記憶部２３００から読み出して、渡されたＰＭ収集パケット２１１０のペイロード２１１３に格納する。またＰＭパケットデータ格納部２５１０は、パケットヘッダ２１１２のペイロード長を設定し、また、ＦＣＳ２１１４及びＣＲＣ２１１５を再生成して設定する（ステップＳ１２０、図９のＰＭ収集パケット２１１０（ＤＥＶ１）参照）。
【０１１３】
ＰＭパケットデータ格納部２５１０は、ＰＭ情報を格納したＰＭ収集パケット２１１０をＰＭパケット転送方向判断部２５２０に渡して転送を依頼する。
【０１１４】
転送を依頼されたＰＭパケット転送方向判断部２５２０は、渡されたＰＭ収集パケット２１１０の装置内ヘッダ２１１１を参照し、制御部１０００に返送するのか、ＤＥＶ２に転送するのかを判断する（ステップＳ１３０）。
【０１１５】
ＰＭパケット転送方向判断部２５２０は、渡されたＰＭ収集パケット２１１０の装置内ヘッダ２１１１に設定されている収集ＰＭ情報がＤＥＶ２のＰＭ情報を収集することを示しているので、ＤＥＶ２に転送すると判断する（ステップＳ１３０：Ｙｅｓ）。
【０１１６】
ＤＥＶ２に転送すると判断したＰＭパケット転送方向判断部２５２０は、ＰＭ収集パケット２１１０をＤＥＶ２に送信するようパケット転送部２５００に依頼する。
【０１１７】
依頼を受けたパケット転送部２５００は、ＰＭ収集パケット２１１０を主信号線１２０から受信したパケットの間に挿入してＤＥＶ２に送信する（ステップＳ１５０）。
【０１１８】
尚、ＰＭパケット転送方向判断部２５２０が、ＰＭ収集パケット２１１０をＣＰＵに返送すると判断した場合は（ステップＳ１３０：Ｎｏ）、信号線１３０を用いて、制御部１０００のＰＭ収集パケット受信部１２００に送信する（ステップＳ１４０）。
【０１１９】
ＤＥＶ１から主信号線１２０を用いてパケットを受信したデバイス（ＤＥＶ２）３０００のパケット転送部３５００は、受信したパケットがＰＭ収集パケット２１１０であった場合には（ステップＳ１６０：Ｙｅｓ）、受信したＰＭ収集パケット２１１０をＰＭパケットデータ格納部２５１０に渡す。
【０１２０】
また、受信したパケットがＰＭ収集パケット２１１０でなかった場合には（ステップＳ１６０：Ｎｏ）、ＤＥＶ２における所定の処理を行う。
【０１２１】
ＰＭ収集パケット２１１０を渡されたＰＭパケットデータ格納部２５１０は、収集対象のＰＭ情報をＰＭデータ記憶部２３００から読み出して、渡されたＰＭ収集パケット２１１０のペイロード２１１３に格納する。またＰＭパケットデータ格納部２５１０は、パケットヘッダ２１１２のペイロード長を設定し、また、ＦＣＳ２１１４及びＣＲＣ２１１５を再生成して設定する（ステップＳ１７０、図９のＰＭ収集パケット２１１０（ＤＥＶ２）参照）。
【０１２２】
ＰＭパケットデータ格納部２５１０は、ＰＭ情報を格納したＰＭ収集パケット２１１０をＰＭパケット転送方向判断部３５２０に渡して転送を依頼する。
【０１２３】
転送を依頼されたＰＭパケット転送方向判断部３５２０は、渡されたＰＭ収集パケット２１１０の装置内ヘッダ２１１１を参照し、制御部１０００に返送するのか、ＤＥＶ３に転送するのかを判断する（ステップＳ１８０）。
【０１２４】
ＤＥＶ３に転送すると判断したＰＭパケット転送方向判断部３５２０は、パケット転送部３５００を介して、ＰＭ収集パケット２１１０をＤＥＶ３に送信する（ステップＳ２００）。
【０１２５】
尚、ＰＭパケット転送方向判断部３５２０が、ＰＭ収集パケット２１１０をＣＰＵに返送すると判断した場合は（ステップＳ１８０：Ｎｏ）、ＰＭ収集パケット２１１０をＤＥＶ１に送信するようパケット転送部３５００に依頼する。依頼を受けたパケット転送部３５００は、主信号線１２０を用いて、ＰＭ収集パケット２１１０をＤＥＶ１に送信する（ステップＳ１９０）。ＤＥＶ１は、ＤＥＶ２から受信したパケットはその種類を判断せずに、装置内ヘッダ２１１１の宛先、すなわち、ＣＰＵアドレスに送信する。
【０１２６】
ＤＥＶ２から主信号線１２０を用いてパケットを受信したデバイス（ＤＥＶ３）３０００のパケット転送部３５００は、受信したパケットがＰＭ収集パケット２１１０であった場合には（ステップＳ１６０：Ｙｅｓ）、受信したＰＭ収集パケット２１１０をＰＭパケットデータ格納部２５１０に渡す。
【０１２７】
また、受信したパケットがＰＭ収集パケット２１１０でなかった場合には（ステップＳ１６０：Ｎｏ）、ＤＥＶ３における所定の処理を行う。
【０１２８】
ＰＭ収集パケット２１１０を渡されたＰＭパケットデータ格納部２５１０は、収集対象のＰＭ情報をＰＭデータ記憶部２３００から読み出して、渡されたＰＭ収集パケット２１１０のペイロード２１１３に格納する。またＰＭパケットデータ格納部２５１０は、パケットヘッダ２１１２のペイロード長を設定し、また、ＦＣＳ２１１４及びＣＲＣ２１１５を再生成して設定する（ステップＳ１７０、図９のＰＭ収集パケット２１１０（ＤＥＶ３）参照）。
【０１２９】
ＰＭパケットデータ格納部２５１０は、ＰＭ情報を格納したＰＭ収集パケット２１１０をＰＭパケット転送方向判断部３５２０に渡して転送を依頼する。
【０１３０】
転送を依頼されたＰＭパケット転送方向判断部３５２０は、渡されたＰＭ収集パケット２１１０の装置内ヘッダ２１１１を参照し、制御部１０００に返送するのか、ＤＥＶ３に転送するのかを判断する（ステップＳ１８０）。
【０１３１】
ＰＭパケット転送方向判断部３５２０は、ＰＭ収集パケット２１１０をＣＰＵに返送すると判断し（ステップＳ１８０：Ｎｏ）、ＰＭ収集パケット２１１０をＤＥＶ２に送信するようパケット転送部３５００に依頼する。
【０１３２】
尚、次のデバイス、例えば、ＤＥＶ４に転送すると判断した場合（ステップＳ１８０：Ｙｅｓ）、ＰＭパケット転送方向判断部３５２０は、パケット転送部３５００を介して、ＰＭ収集パケット２１１０を次のデバイスに送信する（ステップＳ２００）。
【０１３３】
ＰＭ収集パケット２１１０をＤＥＶ１から受信したＰＭ収集パケット受信部１２００は、受信したＰＭ収集パケット２１１０のペイロード２１１３に格納されているＰＭ情報をＰＭデータ記憶部１３００に記憶させる（ステップＳ２１０）。
【０１３４】
＜その他の実施形態＞
以上、本発明の実施形態について説明したが、本発明は上記形態に限らず、以下のようにしてもよい。
（１）実施形態では、ＰＭ収集パケット２１１０は可変長であり、各デバイスが順次ＰＭ情報を追加していくこととなっているが、他の形式であってもよい。
【０１３５】
例えば、固定長であり、予め各デバイスのＰＭ情報の最大値が定まっている場合には、各ＰＭ情報の格納する位置が決められていることとしてもよい。例えば、図１１に示すように、各デバイス用のヘッダを予め確保しておく。このデバイス用ヘッダには、当該デバイスのＰＭ情報を格納する位置を示すペイロード２１１３内のオフセットアドレスが設定されている等である。
（２）実施形態では、ＰＭ情報の収集要求をＣＰＵが出すことにより、ＤＥＶ１がＰＭ収集パケットを生成して送出することとしているが、他のタイミングでＰＭ収集パケットを送出することとしてもよい。
【０１３６】
例えば、予め、ＰＭ情報収集する時及び周期等を設定しておく等である。この場合は、図１２に示すように、ＤＥＶ１が送信する時がきたことを判断してＰＭ収集パケットを送信する。
【符号の説明】
【０１３７】
１００  インタフェースカード（性能情報収集システム、パケット転送システム）
１１０  ハードバス（バス）
１１１  ＰＣＩバス
１２０  主信号線（第１の信号線）
１３０  信号線（第２の信号線）
１０００  制御部（監視手段、制御手段）
１１００  ＰＭ指示部（指示手段）
１２００  ＰＭ収集パケット受信部（受信手段）
１３００，２３００  ＰＭデータ記憶部
２０００  デバイス（第１のデバイス）
３０００  デバイス（第２のデバイス）
２１００  収集パケット生成部（生成手段）
２１１０  収集パケット
２１１１  装置内ヘッダ
２１１２  パケットヘッダ
２１１３  ペイロード
２２００  ＰＭ検出部（検出手段）
２５００  パケット転送部（収集パケット送出手段）
３５００  パケット転送部（収集パケット転送手段）
２５１０  ＰＭパケットデータ格納部
２５２０  パケット転送方向判断部（収集パケット返送手段）
【図１】
0005428937.tif 000002
【図２】
0005428937.tif 000003
【図３】
0005428937.tif 000004
【図４】
0005428937.tif 000005
【図５】
0005428937.tif 000006
【図６】
0005428937.tif 000007
【図７】
0005428937.tif 000008
【図８】
0005428937.tif 000009
【図９】
0005428937.tif 000010
【図１０】
0005428937.tif 000011
【図１１】
0005428937.tif 000012
【図１２】
0005428937.tif 000013
【図１３】
0005428937.tif 000014
【図１４】
0005428937.tif 000015
【図１５】
0005428937.tif 000016