(57)【特許請求の範囲】
【請求項１】
ネットワークを介して外部装置と接続され、当該外部装置との通信において送受信される通信パケットを記憶する通信パケット記憶手段を備える情報処理装置であって、
前記外部装置と通信するためのコネクションを確立する通信手段と、
前記情報処理装置と前記外部装置との通信に用いられる通信プロトコル及び通信モードの組み合わせ毎に異なる閾値を管理する閾値管理手段と、
前記コネクション中の通信速度と、当該コネクション中の通信に用いられた通信プロトコル及び通信モードに対応付けて前記閾値管理手段により管理されている閾値とを比較する比較手段と、
前記比較手段による比較の結果、前記コネクション中の通信速度が前記比較された閾値よりも遅い場合に、当該コネクションが確立されてから切断されるまでの間に前記情報処理装置と前記外部装置との間で送受信された通信パケットを前記通信パケット記憶手段に保持させる制御手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記比較手段による比較の結果、前記コネクション中の通信速度が前記比較された閾値よりも速い場合に、当該コネクションが確立されてから切断されるまでの間に前記情報処理装置と前記外部装置との間で送受信された通信パケットであって、前記通信パケット記憶手段に既に記憶されている通信パケットを破棄する破棄手段を更に備えることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記コネクションが確立されてから切断されるまでの時間と、当該コネクション中に前記情報処理装置と前記外部装置との間で送受信された通信パケットのデータサイズとに基づいて、当該コネクション中の通信速度を算出する算出手段を更に備え、
前記比較手段は、前記算出手段により算出された通信速度と、前記閾値管理手段により管理されている閾値とを比較することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記情報処理装置のポート番号と当該ポート番号が示すポートを使用する通信プロトコルとを対応付けて管理するポート管理手段と、
前記コネクション中の通信で使用されているポート番号に基づいて、当該コネクション中の通信に用いられた通信プロトコルを識別する識別手段と、
を更に備えることを特徴とする請求項１から３のいずれか１項に記載の情報処理装置。
【請求項５】
ネットワークを介して外部装置と接続され、当該外部装置との通信において送受信される通信パケットを記憶する通信パケット記憶手段を備える情報処理装置の制御方法であって、
前記外部装置と通信するためのコネクションを確立する通信工程と、
前記情報処理装置と前記外部装置との通信に用いられる通信プロトコル及び通信モードの組み合わせ毎に異なる閾値を管理する閾値管理工程と、
前記コネクション中の通信速度と、当該コネクション中の通信に用いられた通信プロトコル及び通信モードに対応付けて前記閾値管理工程で管理された閾値とを比較する比較工程と、
前記比較工程における比較の結果、前記コネクション中の通信速度が前記比較された閾値よりも遅い場合に、当該コネクションが確立されてから切断されるまでの間に前記情報処理装置と前記外部装置との間で送受信された通信パケットを前記通信パケット記憶手段に保持させる制御工程と、
を備えることを特徴とする情報処理装置の制御方法。
【請求項６】
前記比較工程における比較の結果、前記コネクション中の通信速度が前記比較された閾値よりも速い場合に、当該コネクションが確立されてから切断されるまでの間に前記情報処理装置と前記外部装置との間で送受信された通信パケットであって、前記通信パケット記憶手段に既に記憶されている通信パケットを破棄する破棄工程を更に備えることを特徴とする請求項５に記載の情報処理装置の制御方法。
【請求項７】
前記コネクションが確立されてから切断されるまでの時間と、当該コネクション中に前記情報処理装置と前記外部装置との間で送受信された通信パケットのデータサイズとに基づいて、当該コネクション中の通信速度を算出する算出工程を更に備え、
前記比較工程では、前記算出工程で算出された通信速度と、前記閾値管理工程で管理された閾値とを比較することを特徴とする請求項５または６に記載の情報処理装置の制御方法。
【請求項８】
前記情報処理装置のポート番号と当該ポート番号が示すポートを使用する通信プロトコルとを対応付けて管理するポート管理工程と、
前記コネクション中の通信で使用されているポート番号に基づいて、当該コネクション中の通信に用いられた通信プロトコルを識別する識別工程と、
を更に備えることを特徴とする請求項５から７のいずれか１項に記載の情報処理装置の制御方法。
【請求項９】
請求項５から８のいずれか１項に記載の情報処理装置の制御方法をコンピュータに実行させるためのプログラム。
【請求項１０】
請求項５から８のいずれか１項に記載の情報処理装置の制御方法をコンピュータに実行させるためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して接続された外部装置と通信する情報処理装置に関する。特に、本発明は、前記外部装置との通信が正常に行われなかったと判定された場合に、当該外部装置との間で送受信された通信パケットを記憶する情報処理装置に関する。
【背景技術】
【０００２】
近年、ネットワークを介して外部装置から電子データを受信し、その電子データを処理する情報処理システムが一般的になっている。これらの情報処理システムでは、ネットワークにＴＣＰ／ＩＰを利用したシステムが多くなっている。
【０００３】
このようなＴＣＰ／ＩＰベースのネットワークにおいて、ユーザに対して高品質な通信を提供するためには、通信状況を分析するとともに、低スループットなどの通信障害の原因を特定し、回線増設などの改善策を施すことが重要となる。通信状況を分析するためには、例えば、端末間で送受信された通信パケットをログ情報として随時記憶しておくことが考えられる。そして、このようにして記憶しておいたログ情報を用いて、個々の回線、ユーザごとのトラヒック量や再送率などの通信状況を分析することにより、通信障害の原因を特定することができる。また、ルータのＭＩＢ情報やパケット情報を用いてボトルネック箇所を特定することもできる。
【０００４】
また、特許文献１には、アプリケーションごとの回線上のトラヒックに関する統計情報とネットワーク構成に基づいて、所定の条件を満足する診断対象フローを抽出し、診断する診断装置が提案されている。
【特許文献１】特開２００２−１６４８９０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述の従来技術では、情報処理システムと外部装置とが通信する際に送受信される通信パケットを全て記憶しておくことになり、通信状況の分析に時間がかかってしまうという問題がある。特に、サービスマンが客先に出向いて通信パケットを収集するような場合は、サービスマンの作業効率が低下してしまっていた。また、サービスマンが客先に出向いてから通信パケットを収集するのではなく、情報処理システム自身が自動的に通信パケットを収集し、記憶しておくような仕組みも考えられる。しかしながら、この場合は大量の通信パケットを記憶しておくためのメモリ資源が必要になってしまうという問題がある。
【０００６】
また、特許文献１に記載の診断装置では、通信パケットを長期間監視して統計情報を蓄積し、蓄積した統計情報に基づいて、ホスト毎またはアプリケーション毎に自動的に診断を行っている。しかしながら、特許文献１に記載の方法は、通信パケットそのものを記憶しておいて通信状況の分析を行うものでなく、通信パケットのヘッダの情報に基づいて統計情報を作成し、この統計情報に基づいて解析するものである。このため、統計情報加えて通信パケットも記憶するようにした場合、やはり上述したような問題が発生してしまう。
【０００７】
本発明は、上述の問題に鑑みて成されたものであり、障害発生時の原因分析を行うために必要となる情報を好適に収集する情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の目的を達成するために本発明の情報処理装置は、ネットワークを介して外部装置と接続され、当該外部装置との通信において送受信される通信パケットを記憶する通信パケット記憶手段を備える情報処理装置であって、前記外部装置と通信するためのコネクションを確立する通信手段と、前記情報処理装置と前記外部装置との通信に用いられる通信プロトコル及び通信モードの組み合わせ毎に異なる閾値を管理する閾値管理手段と、前記コネクション中の通信速度と、当該コネクション中の通信に用いられた通信プロトコル及び通信モードに対応付けて前記閾値管理手段により管理されている閾値とを比較する比較手段と、前記比較手段による比較の結果、前記コネクション中の通信速度が前記比較された閾値よりも遅い場合に、当該コネクションが確立されてから切断されるまでの間に前記情報処理装置と前記外部装置との間で送受信された通信パケットを前記通信パケット記憶手段に保持させる制御手段と、を備えることを特徴とする。
【０００９】
また、本発明の情報処理装置の制御方法は、ネットワークを介して外部装置と接続され、当該外部装置との通信において送受信される通信パケットを記憶する通信パケット記憶手段を備える情報処理装置の制御方法であって、前記外部装置と通信するためのコネクションを確立する通信工程と、前記情報処理装置と前記外部装置との通信に用いられる通信プロトコル及び通信モードの組み合わせ毎に異なる閾値を管理する閾値管理工程と、前記コネクション中の通信速度と、当該コネクション中の通信に用いられた通信プロトコル及び通信モードに対応付けて前記閾値管理工程で管理された閾値とを比較する比較工程と、前記比較工程における比較の結果、前記コネクション中の通信速度が前記比較された閾値よりも遅い場合に、当該コネクションが確立されてから切断されるまでの間に前記情報処理装置と前記外部装置との間で送受信された通信パケットを前記通信パケット記憶手段に保持させる制御工程と、を備えることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、障害発生時の原因分析を行うために必要となる情報を好適に収集する情報処理装置を提供することができる。
【００１１】
また、特に、コネクション型通信において、通信プロトコル及び通信モードに応じて異なる閾値に基づいて通信速度の異常を検知し、通信パケットを記憶する。これにより、通信障害の原因の分析に必要な情報（通信パケット）を効率よく保持することができるようになり、メモリ資源を節約することができるとともに、通信障害の原因の分析も効率よく行うことが可能となる。
【発明を実施するための最良の形態】
【００１２】
以下に本発明の一実施形態を示す。以下で説明される個別の実施形態は、本発明の上位概念、中位概念及び下位概念など種々の概念を理解するために役立つであろう。また、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、以下の個別の実施形態によって限定されるわけではない。
【００１３】
以下では、図１乃至図７を参照して本実施形態について説明する。図１は、本実施形態に係るネットワークシステムの概要を示す図である。
【００１４】
＜システム構成＞
本実施形態に係るネットワークシステムには、ホストコンピュータ１０１、情報処理装置１０２及びハブ１０３、１０４が備えられる。ハブ１０３とハブ１０４は、図１に示すように、ネットワーク１０５を介して接続される。なお、ホストコンピュータ１０１は、ハブ１０３を経由してネットワーク１０５に接続される。また、情報処理装置１０２は、ハブ１０４を経由してネットワーク１０５に接続される。すなわち、ホストコンピュータ１０１は、ネットワーク１０５を経由して情報処理装置１０２に接続されている。
【００１５】
ホストコンピュータ１０１は、情報処理装置１０２との間にコネクションを確立し、電子データ１０７を送信する。情報処理装置１０２は、コネクションにおいて送受信された通信パケットのデータを当該情報処理装置１０２内のＨＤＤに記憶する。本実施形態では、一例として、情報処理装置１０２として画像形成装置であるプリンタを例に説明する。しかし、本発明は、プリンタに限らず、外部装置とネットワークを介してデータの送受信を行う情報処理装置であれば適用できる。本実施形態に係る情報処理装置１０２は、コネクションにおいて送信された電子データ１０７を記録媒体（１０８）上に印刷する。
【００１６】
＜情報処理装置の構成＞
次に、図２Ａ及び図２Ｂを参照して、情報処理装置１０２の構成について説明する。図２Ａは、本実施形態に係る情報処理装置１０２の制御構成を示す図である。ここでは、主に本発明に関する制御構成について説明する。したがって、情報処理装置１０２は、他の構成を含んで実現されてもよい。
【００１７】
情報処理装置１０２は、システム制御部２００、プリンタ部２１０及びオペレーションパネル２０９を備える。また、外部装置であるホストコンピュータ１０１とは、ＬＡＮ２１１を介して接続されている。プリンタ部２１０は、システム制御部２００からの制御に従い、印刷処理を行う。オペレーションパネル２０９は、オペレータに情報を報知し、かつオペレータからの入力を受け付ける。
【００１８】
システム制御部２００は、ＣＰＵ２０１、ＲＯＭ２０２、ＲＡＭ２０３、プリンタＩ／Ｆ制御部２０４、ＮＶＲＡＭ２０５、パネル制御部２０６、ネットワークＩ／Ｆ制御部２０７、ＨＤＤ２０８及びタイマ２１２を備える。ＣＰＵ２０１は、情報処理装置１０２の制御プログラムを実行し、装置全体の制御を行う。ＲＯＭ２０２は、読み取り専用のメモリであり、装置のブートプログラムや固定パラメータ等が格納されている。ＲＡＭ２０３は、ランダムアクセスメモリであり、ＣＰＵ２０１が装置を制御する際に、一時的なデータの格納などに使用する。ＨＤＤ２０８は、ハードディスクドライブであり、印刷データの格納など、様々なデータの格納に使用する。
【００１９】
タイマ２１２は、タイマ処理における経過時刻の管理を行う。プリンタＩ／Ｆ制御部２０４は、プリンタ部２１０を制御する。ＮＶＲＡＭ２０５は、不揮発性のメモリであり、印刷装置の各種設定値を保存するためのものである。パネル制御部２０６は、オペレーションパネル２０９を制御し、各種情報の表示、オペレータからの指示入力を受け付ける。ネットワークＩ／Ｆ制御部２０７は、ハブ１０４を介してネットワーク１０５に接続し、ネットワーク１０５上の外部装置とのデータの送受信を制御する。例えば、ネットワークＩ／Ｆ制御部２０７は、ホストコンピュータ１０１と通信行うために、コネクションを確立する。これらのコンポーネントは、バス２１３によって相互に接続され、ＣＰＵ２０１からの制御信号や各装置間のデータ信号が送受信される。
【００２０】
図２Ｂは、本実施形態に係るＲＯＭ２０２及びＨＤＤ２０８のソフトウェア構成を示す図である。なお、図２に示す各ソフトウェアは、それぞれＲＯＭ２０２やＨＤＤ２０８に格納された制御プログラムをＣＰＵ２０１が実行することにより実現される。また、ここでは、後述する通信パケットや各管理テーブル等の情報をＨＤＤ２０８に格納する例を示すが、これらの情報はＲＯＭ２０２やＮＶＲＡＭ２０５等に格納されてもよい。また、ここでは、本実施形態に関わるブロックのみについて説明するが、ＲＯＭ２０２やＨＤＤ２０８は、他のブロックを含んで構成されてもよい。
【００２１】
ＣＰＵ２０１は、判定部２２１、識別部２２２、算出部２２３、通信部２２４、破棄部２２５、計時部２２６、計測部２２７を備える。また、ＨＤＤ２０８は、通信パケット記憶部２３１、閾値管理部２３２及びポート管理部２３３を備える。
【００２２】
閾値管理部２３２は、外部装置であるホストコンピュータ１０１との通信において、正常と判定される通信性能の下限を示す閾値を記憶している。当該閾値は、通信プロトコルと通信モードとの組み合わせ毎に異なる値が管理される。また、ここで、通信性能とは、例えば、通信速度を示す。また、ポート管理部２３３は、情報処理装置１０２のポート番号と当該ポート番号が示すポートを使用する通信プロトコルとを対応付けて管理している。
【００２３】
通信パケット記憶部２３１は、ホストコンピュータ１０１との通信において送受信される通信パケットを記憶する。これらのデータは、通信障害が発生した場合に、その原因を特定するために使用される。しかし、全ての通信パケットを保持するようにした場合、メモリ不足に陥る可能性が高い。そこで、本実施形態では、選択的に通信パケットを収集して保持させることにより、メモリ効率を向上させるようにしている。
【００２４】
通信部２２４は、ホストコンピュータ１０１とのコネクションを確立し、ホストコンピュータ１０１と情報処理装置１０２との間で通信パケットの送受信を行う。そして、このコネクションが確立されてから切断されるまでの間に送受信された通信パケットは、通信パケット記憶部２３１に記憶される。
【００２５】
算出部２２３は、ホストコンピュータ１０１とのコネクションが確立されてから切断されるまでの間の通信性能を算出する。そのため、算出部２２３は、計時部２２６及び計測部２２７を備える。計測部２２７は、ホストコンピュータ１０１とのコネクションの確立から切断までの間に受信したパケットのデータサイズの合計を計測する。計測したデータサイズを示す情報は、ＨＤＤ２０８に格納しておいてもよい。また、計時部２２６は、ホストコンピュータ１０１とのコネクションの確立から切断までの時間である接続時間を計時する。具体的に、計時部２２６は、図２Ａに示すタイマ２１２を用いて接続時間を計時する。そして、算出部２２３は、計測部２２７によって計測されたデータサイズと、計時部２２６によって計時された接続時間から通信性能を算出する。具体的に、算出部２２３は、データサイズをＳ、接続時間をＴとすると、Ｓ／Ｔによって通信性能である通信速度を算出する。
【００２６】
判定部２２１は、算出部２２３によって算出された通信性能と、閾値管理部２３２により管理されている閾値とを比較して、通信が正常に行われたか否かを判定する。また、判定部２２１は、確立されたコネクションの通信プロトコル及び通信モードを識別する識別部２２２を備える。ここで、通信プロトコルとしては、例えば、後述するＲＡＷ、ＬＰＲ、ＩＰＰ、ＳＭＢなどがある。また、通信モードとしては、例えば、後述する１０００ＢＡＳＥ−Ｔ（全二重）、１０００ＢＡＳＥ−Ｔ（半二重）、１００ＢＡＳＥ−ＴＸ（全二重）、１００ＢＡＳＥ−ＴＸ（半二重）、１０ＢＡＳＥ−Ｔ（全二重）、１０ＢＡＳＥ−Ｔ（半二重）などがある。
【００２７】
破棄部２２５は、判定部２２１によって通信が正常に行われなかったと判定された場合、通信パケット記憶部２３１に記憶された通信パケットをそのまま保持させる。一方、破棄部２２５は、通信が正常に行われたと判定された場合、通信パケット記憶部２３１に記憶された通信パケットを破棄する。このように、破棄部２２５は、通信障害が発生した場合にその原因を分析するために必要となる通信パケットは保持させ、その他の不要な通信パケットは破棄する。
【００２８】
＜通信モード＞
次に、図３を参照して、通信モードを決定する制御について説明する。図３は、本実施形態に係る情報処理装置１０２が通信モードを決定するシーケンスを示す図である。情報処理装置１０２は、図１に示すように、ハブ１０４と直接接続されている。なお、以下で説明する情報処理装置１０２の処理は、ＣＰＵ２０１によって統括的に制御される。
【００２９】
まず、ステップＳ３０１において、情報処理装置１０２に電源が投入されると、ＣＰＵ２０１は、ネットワークＩ／Ｆ制御部２０７を用いてネットワークインターフェースをリンクアップする。ネットワークインターフェースがリンクアップされると、ステップＳ３０２において、ＣＰＵ２０１は、通信モードをネゴシエートするために、サポートする通信モード情報を含むＦＬＰバーストをハブ１０４に送出する。
【００３０】
続いて、ステップＳ３０３において、ハブ１０４は、ハブ１０４がサポートする通信モード情報を含むＦＬＰバーストを情報処理装置１０２に送出する。その後、ステップＳ３０４及びＳ３０５において、ＣＰＵ２０１は、後述する通信モード優先テーブル４００に従って通信モードを決定する。
【００３１】
図４は、本実施形態に係る情報処理装置１０２が通信モードを決定する際の通信モード優先テーブル４００を示す図である。ＦＬＰバーストで提案される通信モード４０２には６種類ある。また、各通信モード４０２には、優先順位４０１が設けられている。図４は、優先順位順に表示した表である。この通信モード優先テーブル４００は、ＲＯＭ２０２、ＮＶＲＡＭ２０５又はＨＤＤ２０８に予め記憶される。
【００３２】
ＣＰＵ２０１は、ＦＬＰバーストで提案されたハブ１０４及び情報処理装置１０２がサポートする通信モードと、通信モード優先テーブル４００とを用いて、使用する通信モードを決定する。具体的に、ＣＰＵ２０１は、双方がサポートする通信モードの中で、最も優先順位が高い通信モードを使用する通信モードとして決定する。
【００３３】
＜通信パケットの収集方法＞
次に、図５乃至図７を参照して、通信パケットの収集方法について説明する。図５は、本実施形態に係る情報処理装置１０２が通信パケットを収集するシーケンスを示す図である。なお、ここでは、例えば、ホストコンピュータ１０１から情報処理装置１０２に印刷データを送信し、情報処理装置１０２側で印刷処理を実行するケースを想定している。また、以下で説明する情報処理装置１０２の処理についてはＣＰＵ２０１が統括的に制御している。
【００３４】
ステップＳ５０１において、ホストコンピュータ１０１は、情報処理装置１０２にコネクション確立を要求するＳｙｎパケットを送信する。この時刻をＴ１とする。計時部２２６は、このＳｙｎパケットを受信すると、タイマ２１２を用いて接続時間の計時を開始する。また、ステップＳ５０２において、ＣＰＵ２０１は、通信パケット記憶部２３１への送受信された通信パケットの収集を開始する。続いて、ステップＳ５０３において、ＣＰＵ２０１は、ホストコンピュータ１０１にコネクション確立要求を受け入れるＳｙｎ＿Ａｃｋパケットを送信する。
【００３５】
ステップＳ５０４において、ホストコンピュータ１０１は、情報処理装置１０２にコネクション確立が完了したことを示すＡｃｋパケットを送信する。その後、ステップＳ５０６において、ホストコンピュータ１０１は、情報処理装置１０２に電子データを含むＤａｔａパケットの送信を開始する。
【００３６】
一方、Ｓ５０４のＡｃｋパケットを受信すると、ステップＳ５０５において、ＣＰＵ２０１は、確立されたコネクションによって使用されているポート番号に従って、識別部２２２により通信プロトコルの種別を識別する。識別部２２２は、例えば、ポート番号を検索キーワードとして予めＲＯＭ２０２に記憶されている情報を検索し、ポート番号に対応する通信プロトコルを取得することにより、通信プロトコルを識別する。続いて、ステップＳ５０７において、ＣＰＵ２０１は、識別された通信プロトコルの種別と図３のシーケンスにより決定されている通信モードから、後述する通信速度の閾値テーブル７００を用いて閾値管理部２３２により管理された閾値を取得する。
【００３７】
また、電子データを含むＤａｔａパケットの送信が完了すると、ステップＳ５０８において、ホストコンピュータ１０１は、コネクションの切断を要求するＦｉｎパケットを送信する。ステップＳ５０９において、ＣＰＵ２０１は、ホストコンピュータ１０１にコネクション切断要求を受け入れることを示すＦｉｎ＿Ａｃｋパケットを送信する。これに対し、ステップＳ５１０において、ホストコンピュータ１０１は、情報処理装置１０２にコネクションが切断されたことを示すＡｃｋパケットを送信する。この時刻をＴ２とする。ここで、計時部２２６は、時刻Ｔ１から開始した計時を終了させる。
【００３８】
コネクションが切断されると、ステップＳ５１１において、ＣＰＵ２０１は、送受信された通信パケットの通信パケット記憶部２３１への収集を終了させる。続いて、ステップＳ５１２において、ＣＰＵ２０１は、送受信された通信パケットのデータサイズを計測部２２７により計測し取得する。さらに、ステップＳ５１３において、ＣＰＵ２０１は、計時部２２６によって、コネクション中の通信パケットの送受信にかかった接続時間をタイマ２１２から取得する。計時部２２６は、時刻Ｔ１及び時刻Ｔ２の時点のシステム時間を取得しておき、接続時間をＴ２−Ｔ１で算出してもよい。
【００３９】
次に、ステップＳ５１４において、ＣＰＵ２０１は、通信性能である通信速度（データサイズ／接続時間）を算出部２２３によって算出する。さらに、ステップＳ５１５において、ＣＰＵ２０１は、判定部２２１を用いて、Ｓ５０７で閾値管理部２３２から取得した閾値と、Ｓ５１４で導出された通信速度とを比較する。ここで、通信速度が閾値以下である場合、判定部２２１は、通信が正常に行われなかったと判定する。ここで、破棄部２２５は、通信パケット記憶部２３１に記憶された通信パケットを保持させたまま処理を終了する。一方、通信速度が閾値を超えている場合、判定部２２１は、通信が正常に行われたと判定し、処理をＳ５１６に遷移させる。
【００４０】
ステップＳ５１６において、ＣＰＵ２０１は、破棄部２２５によって、ＨＤＤ２０８の通信パケット記憶部２３１に記憶された通信パケットを破棄（削除）する。
【００４１】
このように、本実施形態に係る情報処理装置１０２は、通信速度が予め規定された通信速度（閾値）よりも遅い場合に、通信性能に障害が発生したと判断し、収集した通信パケットをＨＤＤ２０８に保持させる。つまり、通信障害の原因を特定する際に不要となる正常な受信データを破棄することにより、メモリ効率を向上させている。また、本情報処理装置１０２は、通信プロトコル及び通信モードの組み合わせに対応する通信速度の閾値を予め用意しているため、様々な通信プロトコルや通信モードに合わせて通信パケットの収集を行うことができる。
【００４２】
図６は、本実施形態に係る情報処理装置１０２がサポートするコネクション型の通信プロトコル種別と対応するＴＣＰポート番号を定義したテーブル６００の一例を示す図である。テーブル６００は、予めＲＯＭ２０２などに記憶されていることが望ましい。図６に示す６０１は、コネクション型の通信プロトコルの種別を示す。６０２は、各通信プロトコル種別６０１に対応するポート番号を示す。
【００４３】
識別部２２２は、ホストコンピュータ１０１からコネクションを確立された際に、指定されたポート番号によって通信プロトコル種別６０１を識別する。具体的に、識別部２２２は、例えばポート番号９１００にコネクション確立要求を受けた場合、通信プロトコル種別６０１をＲＡＷプロトコルであると特定する。このテーブル６００は、上述したＳ５０５の処理で使用される。
【００４４】
図７は、本実施形態に係る情報処理装置１０２において閾値を決定する閾値テーブル７００の一例を示す図である。本実施形態では、閾値テーブル７００は、閾値管理部２３２により予め管理されている。図７に示す７０１は、通信モードを示す。７０２は、通信プロトコルを示す。７０３は、通信モード７０１及び通信プロトコル７０２の組み合わせに対応する閾値（通信速度）を示す。
【００４５】
閾値テーブル７００では、情報処理装置１０２がサポートする６種類の通信モード７０１と４種類の通信プロトコル７０２において、各組み合わせで対応する正常な通信性能の下限が閾値として定義されている。一般的に手順がシンプルな通信プロトコルほど通信にかかるオーバーヘッドは小さくなる。このため、ＲＡＷやＬＰＲといったシンプルな通信プロトコルは、同一通信モードであってもＩＰＰやＳＭＢといった手順が複雑なプロトコルよりも高速に通信できる。また通信モードに関しては、通信速度が１０Ｍｂｐｓ，１００Ｍｂｐｓ，１０００Ｍｂｐｓと高速になるに従って、通信速度も高速となる。また、同時に双方向通信が可能である全二重通信は、半二重通信より高速になる。また、通信環境がいくら高速化しても、情報処理装置１０２における処理スピードには限界があるため、８Ｍｂｐｓ程度より高速な通信は行われない。このような条件を踏まえて、閾値テーブル７００には、最適な閾値が予め設定されている。
【００４６】
なお、ここでは、情報処理装置１０２の工場出荷時に閾値テーブル７００を予め閾値管理部２３２に記憶しておく場合を想定しているが、閾値テーブル７００に定義された閾値は管理者により適宜更新できるようにしてもよい。例えば、実際に使用される中で、外部装置との通信が行われる度に算出部２２３が算出した通信速度をサンプリングし、通信プロトコル及び通信モードの組み合わせ毎に所定回数のサンプリング結果から算出した平均値を用いて閾値管理部２３２を更新してもよい。また、本実施形態では、通信モード及び通信プロトコルをパラメータとして閾値を決定しているが、他のパラメータを組み合わせてもよい。
【００４７】
以上説明したように、本実施形態に係る情報処理装置１０２は、外部装置との通信における通信性能を予め定められた閾値と比較し、通信が正常に行われなかった場合に、当該通信において送受信された通信パケットを保持する。即ち、本情報処理装置１０２は、通信障害が発生した場合の通信パケットを障害の原因を特定するために自動的に記憶させ、障害が発生していない通信における通信パケットについてはメモリ効率を考慮して破棄する。これにより、本情報処理装置１０２は、障害発生時の原因分析を行うために必要となる通信パケットデータを好適に記憶させることができる。よって、本情報処理装置１０２は、障害発生時に行われるサービスマンの復旧作業を効率化させるとともに、メモリ効率の良い適切な情報収集を行うことができる。
【００４８】
なお、本発明は、上述の実施形態に限らず様々な変形が可能である。例えば、情報処理装置１０２は、正常な通信性能の下限を示す閾値を通信対象の外部装置との通信プロトコルと回線の種別を示す通信モードとの組み合わせごとに保持してもよい。これにより、本情報処理装置１０２は、当該外部装置との通信において、通信プロトコル及び通信モードの組み合わせに対応する閾値と、当該通信における通信性能とを比較することにより、通信障害が発生しているか否かを判定できる。つまり、本来通信速度が遅い通信プロトコルや通信モードを用いて通信しているにも関わらず、正常に通信が行われたと判定されるための閾値が高く設定されてしまい、正常に通信が行われたにも関わらず通信パケットが保持されてしまうことを防ぐことができる。
【００４９】
また、本情報処理装置１０２は、外部装置との通信における通信プロトコルを特定する際に、当該通信で使用されるポート番号から通信プロトコルを特定してもよい。この場合、本情報処理装置１０２は、ポート番号に対応する通信プロトコルの種別を定義したテーブルを予め保持しておくことが望ましい。このような情報を用意しておくことで、本情報処理装置１０２は、通信プロトコルを容易に識別することができ、処理速度を高速化することができる。
【００５０】
また、上述した説明では、コネクション中の通信において送受信された全ての通信パケットを一旦通信パケット記憶部２３１に記憶した後、判定部２２１による判定の結果に従って不要な通信パケットを破棄しているが、他の態様であっても構わない。即ち、コネクション中に随時、通信が正常に行われているか否かを判定し、通信が正常に行われている間は通信パケットを通信パケット記憶部２３１には記憶しないようにしても構わない。または、送受信された全ての通信パケットを通信パケット記憶部２３１に記憶した結果、当該通信パケット記憶部２３１の記憶可能残量が少なくなった場合に、正常に行われなかった通信で送受信された通信パケットを優先的に保持するようにしても構わない。即ち、この場合には、正常に行われた通信で送受信された通信パケットが先に破棄（削除）される。
【００５１】
（その他の実施形態）
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体（記録媒体）等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【００５２】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（実施形態では図に示すフローチャートに対応したプログラム）を、システムあるいは装置に直接あるいは遠隔の外部装置から供給する。そして、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【００５３】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【００５４】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であっても良い。
【００５５】
プログラムを供給するための記録媒体としては、例えば、以下のようなものがある。フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）。
【００５６】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページからハードディスク等の記録媒体にダウンロードすることによっても供給できる。すなわち、ホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをダウンロードする。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【００５７】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等のコンピュータ読み取り可能な記憶媒体に格納してユーザに配布する。そして、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【００５８】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他にも、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【００５９】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後にも前述した実施形態の機能が実現される。すなわち、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行うことによっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【００６０】
【図１】本実施形態に係るネットワークシステムの概要を示す図である。
【図２Ａ】本実施形態に係る情報処理装置１０２の制御構成を示す図である。
【図２Ｂ】本実施形態に係るＣＰＵ２０１及びＨＤＤ２０８の構成を示す図である。
【図３】本実施形態に係る情報処理装置１０２が通信モードを決定するシーケンスを示す図である。
【図４】本実施形態に係る情報処理装置１０２が通信モードを決定する際の通信モード優先テーブル４００を示す図である。
【図５】本実施形態に係る情報処理装置１０２が通信パケットデータを収集するシーケンスを示す図である。
【図６】本実施形態に係る情報処理装置１０２がサポートするコネクション型の通信プロトコル種別と対応するＴＣＰポート番号を定義したテーブル６００の一例を示す図である。
【図７】本実施形態に係る情報処理装置１０２において閾値を決定するテーブル７００の一例を示す図である。
【符号の説明】
【００６１】
２０１：ＣＰＵ
２０２：ＲＯＭ
２０３：ＲＡＭ
２０４：プリンタＩ／Ｆ制御部
２０５：ＮＶＲＡＭ
２０６：パネル制御部
２０７：ネットワークＩ／Ｆ制御部
２０８：ＨＤＤ
２０９：オペレーションパネル
２１０：プリンタ部
２１１：ＬＡＮ
２１２：タイマ
【図１】
0005139859.tif 000002
【図２Ａ】
0005139859.tif 000003
【図２Ｂ】
0005139859.tif 000004
【図３】
0005139859.tif 000005
【図４】
0005139859.tif 000006
【図５】
0005139859.tif 000007
【図６】
0005139859.tif 000008
【図７】
0005139859.tif 000009