説明

情報システムの状態を解析する技術

【課題】情報システムの状態を精度良く解析して、障害対策を支援する。
【解決手段】複数の情報処理装置を通信回線によって相互に接続した情報システムの状態を解析する装置であって、通信回線により伝送される通信パケットを取得する取得部と、取得したそれぞれの通信パケットから通信の属性を示す属性値を読み出し、通信パケットの宛先毎に属性値を集計する第1集計部と、取得したそれぞれの通信パケットから通信の属性を示す属性値を読み出し、通信パケットの送信元毎に属性値を集計する第2集計部と、それぞれの情報処理装置のそれぞれの通信ポートについて、当該通信ポートを宛先とした通信パケットについて集計された属性値、および、当該通信ポートを送信元とした通信パケットについて集計された属性値に基づいて、当該通信ポートがサーバ機能およびクライアント機能の何れにより使用されているかを判定する判定部とを備える装置を提供する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報システムの状態を解析する技術に関する。特に、本発明は、ネットワークを伝送される通信パケットの内容に基づき情報システムの状態を解析する技術に関する。
【背景技術】
【0002】
近年の情報システムは、数千台から数万台の情報処理装置を組み合わせて構成されており、その運用維持は企業経営上重要な課題となっている。一方で、コンピュータウィルスの新種が次々と現れており、不正なネットワークトラフィックが発生し、サービスを停止せざるを得ない状況を引き起こす場合がある。これに対し、従来は、それぞれの情報処理装置の動作状態を解析するために、情報処理装置の動作を監視するエージェントソフトウェアを常駐させることなどが行われている。
【0003】
しかしながら、多数の情報処理装置の組合せによってサービスを提供する近年の情報システムにおいては、個々の情報処理装置の管理に加えて、複数の情報処理装置がどの様に連携しているかを把握することが重要である。これを実現するために個々の情報処理装置にエージェントソフトウェアを常駐させると、エージェントソフトウェア自体の処理負荷により、または、エージェントソフトウェアから監視結果を収集する処理の負荷により、情報システムの通常の運用を妨げるおそれがある。
【0004】
以下、参考技術として、情報システムの通常の運用を妨げずに情報システムの状態を解析する既存技術を挙げる(特許文献1から4、および、非特許文献1から5を参照。)。非特許文献2および3の技術は、ルータやネットワークスイッチなどの通信装置にエージェントソフトウェアを導入し、通信トラフィックなどを監視するものである。これらの技術では、個々の情報処理装置にはエージェントソフトウェアを導入する必要がないが、既存の通信装置の設定変更が必要となり、または、通信装置の処理負荷を増大させる問題が指摘されている(非特許文献4を参照。)。
【0005】
これに対し、非特許文献1は、サンプリング方式の併用によって通信装置の処理負荷を軽減する技術を提案している。また、非特許文献5は、スイッチング・ハブから通信パケットの複製データを取り出すことで、通信装置の負荷を極めて小さくする方法を提案している。また、参考技術として、特許文献3は、ソフトウェアにより通信パケットを収集する方法を提案しており、特許文献4は、情報処理装置において通信パケットを収集する際に情報処理装置の負荷を軽減する方法を提案している。さらに、特許文献1および2は、収集した通信パケットの内容を解析して情報システムの監視に役立てる技術を提案している。また、従来、ネットワークを伝送される通信パケットをキャプチャし、そのパターンを分析することにより、情報システムに対し外部から攻撃が加えられているかを検知するシステムが用いられている。
【0006】
【特許文献1】特開平7−321783号公報
【特許文献2】特開2002−261799号公報
【特許文献3】特開2003−87255号公報
【特許文献4】特開2003−23464号公報
【非特許文献1】K. C. Claffy, G. C. Polyzos, and H-W Braun. Application of Sampling Methodologies to Network Traffic Characterisation. In Proceedings of ACM SIGCOMM'93, San Francisco, CA, September 1993. (p 65)
【非特許文献2】RFC 3176 InMon Corporation's sFlow: A Method for Monitoring Traffic in Switched and Routed Networks
【非特許文献3】RFC 3954 Cisco Systems NetFlow Services Export Version 9
【非特許文献4】Cisco Systems ホワイトペーパー NetFlowによるパフォーマンス分析
【非特許文献5】Cisco Systems Document-ID 10570 Configuring the Catalyst Switched Port Analyzer (SPAN) Feature P24
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかしながら、情報システムに対する脅威は、外部からの攻撃のみならず、個々の情報処理装置に対するコンピュータ・ウィルスの侵入や、情報処理装置のハードウェアの故障、ソフトウェアのバグなど、様々である。したがって、外部からの攻撃のみを攻撃があった後に事後的に検出したのでは不十分であり、故障や攻撃などの異常が発生する前に、そのような異常が発生した場合に生じる事態を想定して対策することが望ましい。特に、多数の情報処理装置の組合せによってサービスを提供する近年の情報システムにおいては、個々の情報処理装置の管理に加えて、複数の情報処理装置がどの様に連携しているかを把握することが重要である。
【0008】
例えば、仮にある情報処理装置が動作不能となった場合に、それに依存する他の情報処理装置の台数や利用者の数などを把握できれば、システム構成の改善などに役立てることができる。しかしながら、大規模な情報システムにおいて、それぞれの情報処理装置の連携関係は、システム管理者といえども正確に把握できない場合が多い。特に、経営環境の変化や情報技術の進歩に伴って構成が頻繁に変更される場合には、その変更に追従して構成変更を把握していくのは容易でない。上記の何れの参考技術によっても、そのような構成の状態や変化を的確に把握することはできない。
そこで本発明は、上記の課題を解決することのできるシステム、方法およびプログラムを提供することを目的とする。この目的は特許請求の範囲における独立項に記載の特徴の組み合わせにより達成される。また従属項は本発明の更なる有利な具体例を規定する。
【課題を解決するための手段】
【0009】
上記課題を解決するために、本発明においては、複数の情報処理装置を通信回線によって相互に接続した情報システムの状態を解析する装置であって、通信回線により伝送される通信パケットを取得する取得部と、取得したそれぞれの通信パケットから通信の属性を示す属性値を読み出し、通信パケットの宛先毎に属性値を集計する第1集計部と、取得したそれぞれの通信パケットから通信の属性を示す属性値を読み出し、通信パケットの送信元毎に属性値を集計する第2集計部と、それぞれの情報処理装置のそれぞれの通信ポートについて、当該通信ポートを宛先とした通信パケットについて集計された属性値、および、当該通信ポートを送信元とした通信パケットについて集計された属性値に基づいて、当該通信ポートがサーバ機能およびクライアント機能の何れにより使用されているかを判定する判定部とを備える装置を提供する。
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【発明の効果】
【0010】
本発明によれば、情報システムの状態を精度良く解析して、障害対策を支援することができる。
【発明を実施するための最良の形態】
【0011】
以下、発明を実施するための最良の形態(以下、実施形態と称す)を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【0012】
図1は、情報システム10の全体構成を示す。情報システム10は、例えば1つの企業内の情報システムを示しており、複数の拠点システム100と、中央システム200と、分析システム300とを備える。複数の拠点システム100のそれぞれは、例えば、部門毎に設けられ、複数の端末装置110と、サーバ装置120と、通信中継装置130と、収集装置140とを有する。それぞれの端末装置110は、例えば社員ごとに設けられた情報処理装置であり、通信中継装置130を経由してサーバ装置120と通信する。また、端末装置110は、通信中継装置130を経由して中央システム200と通信する。収集装置140は、通信中継装置130において中継される通信パケットを収集する。例えば、収集装置140は、拠点システム100内に設けられたネットワークスイッチのミラーポートから、伝送される通信パケットの複製データを収集してもよい。一例として、収集装置140は、上記非特許文献2または上記非特許文献3の記載の規格に準拠した機器であってもよい。収集装置を中央システム200のみならず各拠点システム100に設けることで、拠点システム100から中央システム200に対し送信元IPアドレスを偽装した通信パケットが送信される場合でもその偽装を看破することができる。
【0013】
中央システム200は、例えばデータセンターなどの、企業内の情報システムを統括する部署に設けられている。中央システム200は、通信中継装置210と、複数のサーバ装置220と、収集装置240と、収集装置250とを有する。通信中継装置210は、通信回線を経由して拠点システム100から通信パケットを受信し、通信中継装置230に転送する。それぞれのサーバ装置220は、サービスを提供する情報処理装置であり、通信中継装置130、通信中継装置210、および、通信中継装置230を経由して端末装置110から要求を受けると、当該要求に応じて処理を行い、処理結果をその端末装置110に対し送信する。また、サーバ装置220は、他のサーバ装置220からの要求に応じて処理を行い、当該他のサーバ装置220に対しその処理結果を返信してもよい。収集装置240は、通信中継装置210において中継される通信パケットを収集し、そのヘッダ部分に基づく情報を分析システム300に送る。収集装置250は、通信中継装置230において中継される通信パケットを収集し、そのヘッダ部分に基づく情報を分析システム300に送る。収集装置240のみならず収集装置250を設けることで、拠点システム100および中央システム200間の通信のみならず、サーバ装置220と他のサーバ装置220との間の通信を適切に把握することができる。
【0014】
分析システム300は、分析装置310と、レポート装置320とを有する。分析装置310は、収集装置140、収集装置240、および、収集装置250から通信パケットを取得することによって、情報システム10内の通信回線により伝送される通信パケットを取得する。なお、ここでいう通信パケットとは、通信パケットの少なくとも一部、例えばヘッダ部分等のみであってもよいし、それに対し何らかのデータ形式の変更を行ったデータであってもよい。そして、分析装置310は、取得した通信パケットの内容を解析し、その解析結果に基づき情報システム10内の情報処理装置の連携関係を認識してレポート装置320に出力する。レポート装置320は、利用者の要求に応じて連携関係を出力し、または、情報システム10内に何らかの異常があった場合は利用者に警告する。
このように、本実施形態に係る分析システム300は、情報システム10中の情報処理装置を相互に接続する通信回線によって伝送される通信パケットを、情報システム10に負荷を与えることなく収集する。そして、分析システム300は、通信パケットの内容に基づいて情報システム10内の連携関係を解析して利用者に出力する。これにより、情報システム10内の運用を継続しながら、情報システム10内の障害発生の予防や障害発生時の対応を支援することができる。
以下、図2から図14を参照して詳細に説明する。
【0015】
図2は、分析装置310の機能構成を示す。分析装置310は、取得部330と、合計算出部335と、第1集計部340と、第2集計部345と、第1算出部350と、第2算出部355と、判定部360と、第3集計部365とを有する。取得部330は、情報システム10内の通信回線によって伝送される通信パケットを、収集装置140、収集装置240および収集装置250を用いて順次キャプチャさせ、その内容をこれらの収集装置から取得する。拠点システム100および中央システム200と分析システム300との間の通信量削減のため、好ましくは、取得部330は、通信パケットのヘッダ部分のみを取得してもよい。
【0016】
第1集計部340は、取得したそれぞれの通信パケットから通信の属性を示す属性値を読み出し、通信パケットの宛先毎に属性値を集計する。第2集計部345は、取得したそれぞれの通信パケットから通信の属性を示す属性値を読み出し、通信パケットの送信元毎に属性値を集計する。これらの処理は、合計算出部335との連携によって実現される。例えば、合計算出部335は、通信パケットの宛先および送信元の組のそれぞれについて、通信パケットの数、通信パケットのデータサイズ、および、予め定められたフラグの設定された通信パケットの数のそれぞれをカウントするカウンタを有している。例えば、このカウンタは、TCPプロトコルのACKフラグおよびSYNフラグの双方が設定された通信パケットの数を集計するものであってよい。そして、合計算出部335は、通信パケットが順次キャプチャされる毎に、通信パケットの宛先および送信元の組のそれぞれについて、通信パケットの数、通信パケットのデータサイズ、および、予め定められたフラグの設定された通信パケットの数のそれぞれのカウンタに値を加算する。そして、第1集計部340は、合計算出部335により算出された通信パケットの数を、宛先を同一とする通信ポート毎に集計し、当該宛先について集計された属性値と判断する。また、第2集計部345は、合計算出部335により算出された通信パケットの数を、送信元を同一とする通信ポート毎に集計し、当該送信元について集計された属性値と判断する。情報システム10内において複数の通信プロトコルが混在する場合には、属性値は、さらに通信プロトコル毎に分類されて集計されることが望ましい。さらには、予め定められた通信プロトコルについてのみ属性値が集計されてもよい。
【0017】
第1算出部350は、それぞれの通信ポートについて、当該通信ポートを宛先とした通信パケットについて集計された属性値と、当該通信ポートを送信元とした通信パケットについて集計された属性値とが、サーバ機能の特性を示す複数の条件のそれぞれを満たすか判断する。ここでいう通信ポートとは、1つの情報処理装置における複数の種類の通信を区別するために番号が割り振られた仮想的な通信ポートであり、例えば、TCPによる通信のためのポートである。そして、第1算出部350は、それぞれの通信ポートについての判断結果に基づき当該通信ポートがサーバ機能の特性を有する程度を示す第1指標値を算出する。第2算出部355は、それぞれの通信ポートについて、当該通信ポートを宛先とした通信パケットについて集計された属性値と、当該通信ポートを送信元とした通信パケットについて集計された属性値とが、クライアント機能の特性を示す複数の条件のそれぞれを満たすか判断する。そして、第2算出部355は、それぞれの通信ポートについての判断結果に基づき当該通信ポートがクライアント機能の特性を有する程度を示す第2指標値を算出する。
【0018】
判定部360は、それぞれの情報処理装置のそれぞれの通信ポートについて、当該通信ポートを宛先とした通信パケットについて集計された属性値、および、当該通信ポートを送信元とした通信パケットについて集計された属性値に基づいて、当該通信ポートがサーバ機能およびクライアント機能の何れにより使用されているかを判定する。具体的には、判定部360は、それぞれの通信ポートについて、上記第1指標値よりも上記第2指標値が大きいことを条件に、当該通信ポートがクライアント機能により使用されていると判定し、上記第2指標値よりも上記第1指標値が大きいことを条件に、当該通信ポートがサーバ機能により使用されていると判定してもよい。
【0019】
第3集計部365は、情報システム10内に生じた異常を検知するべく、取得部330により取得された通信パケット全体について属性値を集計する。例えば、第3集計部365は、TCPプロトコルのFINフラグが設定された通信パケットの数を集計し、さらに、TCPプロトコルのSYNフラグが設定された通信パケットの数を集計する。集計結果はレポート装置320に送信され、レポート装置320において異常検知に用いられる。
【0020】
図3は、レポート装置320の機能構成を示す。レポート装置320は、判定結果記憶部370と、選択部375と、出力部380と、設定部385と、警告部390と、構成情報DB395とを有する。判定結果記憶部370は、判定部360による判定結果を、第1集計部340および第2集計部345による集計結果と共に記憶する。構成情報DB395は、情報システム10内の構成を示す情報を記憶している。選択部375は、情報システム10内の構成を示す情報を読み出して利用者に対し表示する。例えば、選択部375は、情報システム10内の情報処理装置の一覧を表示してもよい。そして、選択部375は、ある情報処理装置が利用者により指定されたことに応じ、指定されたその情報処理装置の通信ポートのうちサーバ機能に用いられると判定された通信ポートを、判定結果記憶部370に記憶された判定結果に基づき判断する。そして、選択部375は、サーバ機能に用いられると判定された通信ポートの通信先となる全ての情報処理装置を、判定結果記憶部370に記憶された判定結果に基づき選択する。選択の結果は出力部380に送信される。そして、出力部380は、判定結果記憶部370によって選択された情報処理装置を示す情報を、初めに指定された情報処理装置が停止した場合の影響範囲を示す情報として出力する。この際、出力部380は、それぞれの情報処理装置の設置場所などの情報を構成情報DB395から読み出して出力してもよい。これにより、利用者は、指定したサーバ装置が停止した場合の影響範囲を、そのサーバ装置に依存するクライアント装置の数や設置場所などの情報により知ることができる。
【0021】
設定部385は、選択部375によって選択された情報処理装置(即ちクライアント側の装置)の台数が、予め定められた基準台数よりも多いことを条件に、指定された情報処理装置(即ちサーバ側の装置)の処理負荷を他の情報処理装置に分散する設定を行ってもよい。この設定は、例えば、中央システム200内の負荷分散処理用の装置、例えば、サーバ装置220に対し指示することによって実現される。これにより、レポート装置320は、利用者に情報を提供して情報システム10の構成変更を間接的に支援するのみならず、設定変更により情報システム10の構成を直接的に変更することもできる。
【0022】
警告部390は、FINフラグの設定された通信パケットの数、および、SYNフラグの設定された通信パケットの数の集計結果を第3集計部365から取得する。そして、警告部390は、SYNフラグが設定された通信パケットの数に対する、FINフラグが設定された通信パケットの数の割合が、予め定められた基準よりも小さいことを条件に、情報システム10が攻撃を受けた可能性を示す警告を利用者に対し発する。これにより、SYNフラグの設定された通信パケットをサーバに対し大量に送りつけてサーバの機能を麻痺させる攻撃(DOS:Dead of Service)などを適切に検知することができる。
【0023】
警告部390が発する警告はDOS攻撃についてのものに限られない。例えば、警告部390は、不正の予備的行為であるポートスキャンを検出して利用者に警告を発してもよい。具体的には、第3集計部365は、通信パケットの送信元毎に、通信パケットの宛先のIPアドレスおよび通信ポートの組の数を集計する。そして、警告部390は、宛先のIPアドレスおよび通信ポートの組の数が所定の基準値より多い送信元IPアドレスを、ポートスキャンに用いられているIPアドレスと判断して、利用者に警告を発してもよい。他の例として、計億部390は、アプリケーションプロトコルレベルでの攻撃を検出してもよい。具体的には、第3集計部365は、伝送される通信パケットのデータサイズの総量を集計し、また、通信の確立のために伝送された所定の通信パケットの数を集計する。そして、警告部390は、通信の確立のための通信パケットの数あたりの、伝送されるデータのデータサイズが、予め定められた基準よりも小さい場合には、攻撃のために小さい通信パケットが大量に送信されていると判断し、警告を発する。本実施形態に係る分析システム30によれば、伝送される通信パケットの属性を集計できるので、このような不正行為や予備的行為の検出を可能とすることができる。
【0024】
以下、図4aおよび図4bを参照して、判定結果記憶部370に記憶される判定結果および集計結果の具体例を示す。判定結果および集計結果は、図4aに示す第1例および図4bに示す第2例の組合せとして表すことができる。
図4aは、判定結果記憶部370のデータ構造の第1例を示す。判定結果記憶部370は、それぞれの情報処理装置に分類して、その情報処理装置から送信またはその情報処理装置により受信された通信パケットについて属性値の集計結果を記憶する。例えば、判定結果記憶部370は、それぞれの通信ポートについて、当該通信ポートを送信元とした通信パケットについて第2集計部345により集計された属性値を「送信」フィールドに記憶し、当該通信ポートを宛先とした通信パケットについて第1集計部340により集計された属性値を「受信」フィールドに記憶する。
【0025】
「送信」フィールドには、当該通信ポートを宛先として送信された通信パケットのパケット数と、通信パケットのデータサイズを示すオクテット数と、SYNフラグおよびACKフラグの双方が設定された通信パケットの数とが記憶される。「受信」フィールドにも、当該通信ポートを送信元として送信された通信パケットのパケット数と、通信パケットのデータサイズを示すオクテット数と、SYNフラグおよびACKフラグの双方が設定された通信パケットの数とが記憶される。さらに、判定結果記憶部370は、それぞれの通信ポートについて、その通信ポートを用いた通信のプロトコルを示す情報を記憶してもよい。
【0026】
例えば、IPアドレスがX.X.X.74の情報処理装置の通信ポート23を宛先として、2713個の通信パケットが送信され、そのオクテット数は2217921であり、そのうちSYNフラグおよびACKフラグの双方が設定された通信パケットの数は17である。また、この通信ポート23を送信元として、2563個の通信パケットが送信され、そのオクテット数は975462であり、そのうちSYNフラグおよびACKフラグの双方が設定された通信パケットの数は0である。そして、この通信ポート23は、TCPプロトコルによって用いられている。
【0027】
判定結果記憶部370は、このように通信ポート毎に集計結果を記憶するのに加えて、通信ポート毎に、その通信ポートがサーバ機能により使用されているか、クライアント機能により使用されているかの判定結果を記憶している。例えば、通信ポート23は、判定部360によって、サーバ機能により使用されていると判定されている。このように、判定結果は、サーバまたはクライアントを識別するための情報として記憶されていてもよい。他の例としては、判定結果記憶部370は、サーバ機能の特性を有する程度を示す第1指標値、および、クライアント機能の特性を有する程度を示す第2指標値を、判定結果として記憶してもよい。これにより、利用者は、判定結果のみならずその確度を知ることもできる。
【0028】
図4bは、判定結果記憶部370のデータ構造の第2例を示す。判定結果記憶部370は、それぞれの情報処理装置のそれぞれの通信ポートについて、その通信ポートを用いた通信の属性値を記憶している。この属性値は、例えば、通信相手のIPアドレスおよび通信ポート番号であり、第1集計部340および第2集計部345により集計されたものである。即ち、第1集計部340は、通信パケットの宛先(即ちここではX.X.X.74:23、以下、「IPアドレス:通信ポート」と表記して通信ポートを特定する)毎に、送信元のIPアドレスおよび通信ポートを集計し、図4bに示す表形式データとして判定結果記憶部370に記憶する。また、第2集計部345は、通信パケットの送信元(即ちここではX.X.X.74:23)毎に、宛先のIPアドレスおよび通信ポートを集計し、図4bに示す表形式データとして判定結果記憶部370に記憶する。さらに、それぞれの宛先に対し送信した通信パケットのパケット数、および、それぞれの送信元から送信された通信パケットのパケット数などが、属性値として集計され、判定結果記憶部370に記憶されてもよい。
【0029】
具体的には、X.Y.Y.25:1333の通信ポートは、X.X.X.74:23の通信ポートを送信元とする通信パケットの宛先となっており、かつ、X.X.X.74:23の通信ポートを宛先とする通信パケットの送信元ともなっている。そして、X.X.X.74:23からX.Y.Y.25:1333に送信された通信パケットのパケット数は30であり、そのオクテット数は1800である。また、X.Y.Y.25:1333からX.X.X.74:23に送信された通信パケットのパケット数は25であり、そのオクテット数は12115である。
【0030】
図5は、構成情報DB395のデータ構造の一例を示す。構成情報DB395は、それぞれのIPアドレスに対応付けて、そのIPアドレスを有する情報処理装置のホスト名、その情報処理装置の設置場所、および、その情報処理装置に対し予め定められた機能を記憶している。これらの情報は、システム管理者などによって予め入力されたものであってよい。上述の選択部375はこれらの情報を情報処理装置のIPアドレスに対応付けて表示することで、利用者に対し情報処理装置を指定しやすくすることができる。また、上述の出力部380は、判定結果や集計結果に対応付けてこれらの情報を出力することで、障害発生時の影響範囲などを現実の設置場所に即して認識させることができる。
【0031】
図6は、分析システム300によって通信パケットが収集されて判定結果が表示される処理のフローチャートを示す。取得部330は、収集装置140、収集装置240および収集装置250を用いて、情報システム10内の通信回線によって伝送される通信パケットを収集する(S600)。収集は、予め定められた期間(たとえば5分)毎に行われることが望ましい。これにより、収集装置の負荷を軽減しつつも、偶然観測された異常な通信パケットの影響を小さくして判定精度を高めることができる。次に、第1集計部340等は、通信パケットに基づき通信の属性値を集計し、集計結果を分析することによって、それぞれの通信ポートがサーバ機能によって用いられているか、または、クライアント機能によって用いられているかを判定する(S610)。そして、選択部375は、サーバ機能を有する情報処理装置が利用者によって指定されたことに応じて、その指定された情報処理装置が停止したときの影響範囲などを利用者に対し表示する(S620)。
【0032】
図7は、S610における処理の詳細を示す。合計算出部335は、送信元および宛先の組毎に、通信の属性を示す属性値をカウントする(S700)。図8にその処理の詳細を示す。
図8は、S700における処理の概念図である。図8最下部に示すように、合計算出部335は、データの送信元および送信先を識別する識別子であるフローキーに対応付けられたカウンタの集合を有している。図8では、ある送信元および宛先がAおよびBの組合せである場合についてのカウンタの集合を例示する。これらのカウンタは、左から順に、AからBに送信した通信パケットの数、AからBに送信した通信パケットのオクテット数、BからAに送信した通信パケットの数、BからAに送信した通信パケットのオクテット数、AからBに送信した通信パケットのうち所定のフラグが設定された通信パケットの数、BからAに送信した通信パケットのうち所定のフラグが設定された通信パケットの数をカウントするものである。
【0033】
合計算出部335は、収集した通信パケットのヘッダを走査し、その通信パケットの送信元および宛先のIPアドレスと通信ポートを取得する。そして、合計算出部335は、宛先IPアドレスのアドレス値と、送信元IPアドレスのアドレス値とを比較する。合計算出部335は、宛先IPアドレスのアドレス値が、送信元IPアドレスのアドレス値より小さいことを条件に、図8(a)に示す処理を行う。即ち、まず、合計算出部335は、宛先ポート番号と送信元IPアドレスのデータを入換え、宛先IPアドレス、宛先通信ポート番号、送信元IPアドレス、送信元ポート番号をこの順に並べる。そして、合計算出部335は、これらのアドレスおよびポート番号の組に先頭部分が一致するフローキーを検索する。プロトコル番号により分類して集計する場合には、合計算出部335は、これらのアドレスおよびポート番号の組にプロトコル番号を加えたデータを作り、そのデータに先頭部分が一致するフローキーを検索してよい。フローキーが検索されなければ、合計算出部335は、フローキーを新たに生成する。
【0034】
そして、合計算出部335は、検索されたフローキーに対応するカウンタのうちパケット数をカウントするカウンタをインクリメントする。また、合計算出部335は、検索されたフローキーに対応するカウンタのうちパケット長をカウントするカウンタにパケット長を加算する。また、合計算出部335は、収集した通信パケットにおいて設定されたフラグが所定の条件を満たす場合に、当該所定の条件を満たす通信パケットの数をカウントするカウンタをインクリメントする。
【0035】
一方で、合計算出部335は、宛先IPアドレスのアドレス値が、送信元IPアドレスのアドレス値より大きいことを条件に、図8(b)に示す処理を行う。まず、合計算出部335は、送信元IPアドレス、送信元ポート番号、宛先IPアドレス、および、宛先ポート番号をこの順に配列する。そして、合計算出部335は、並べ替えたこれらのアドレスおよびポート番号と先頭部分が一致するフローキーを検索する。そして、合計算出部335は、検索されたフローキーに対応するカウンタのうちパケット数をカウントするカウンタをインクリメントする。また、合計算出部335は、検索されたフローキーに対応するカウンタのうちパケット長をカウントするカウンタにパケット長を加算する。また、合計算出部335は、収集した通信パケットにおいて設定されたフラグが所定の条件を満たす場合に、当該所定の条件を満たす通信パケットの数をカウントするカウンタをインクリメントする。
【0036】
以上、図8に例示したフローキーとカウンタとによれば、通信パケットの送信元と宛先との組ごとに、これらの2者間でどの様な通信が行われたのかを把握することができる。
【0037】
図7に戻る。続いて、第1集計部340は、宛先ポート毎に属性値を集計し(S710)、第2集計部345は、送信元ポート毎に属性値を集計する(S720)。即ち、第1集計部340は、IPアドレスおよび宛先ポートの組ごとに、当該IPアドレスおよび宛先ポートの組に、第1エントリおよび第2エントリが一致するフローキーと、第3エントリおよび第4エントリが一致するフローキーとを検索する。そして、第1集計部340および第2集計部345は、検索されたそれぞれのフローキーの対応するエントリの値を合計することにより、当該通信ポートを宛先とする属性値の集計値と、当該通信ポートを送信元とする属性値の集計値とを算出する。
【0038】
具体的には、第1集計部340は、通信パケットの宛先毎に、通信パケットのデータサイズの合計または平均に基づく値を集計し、第2集計部345は、通信パケットの送信元毎に、通信パケットのデータサイズの合計または平均に基づく値を集計してもよい。また、第1集計部340は、通信パケットの宛先毎に、ACKフラグおよびSYNフラグの双方が設定された通信パケットの数を集計し、第2集計部345は、通信パケットの送信元毎に、ACKフラグおよびSYNフラグの双方が設定された通信パケットの数を集計してもよい。これらの集計結果は図4aに例示したように、判定結果記憶部370に記憶される。また、第1集計部340は、通信パケットの宛先毎に、送信元の情報処理装置のIPアドレスやポート番号を集計し、第2集計部345は、通信パケットの送信元毎に、宛先の情報処理装置のIPアドレスやポート番号を集計してもよい。集計結果は図4bに例示したように、判定結果記憶部370に記憶される。
【0039】
第1算出部350は、それぞれの通信ポートについて、上記の集計結果に基づいて、当該通信ポートがサーバ機能の特性を有する程度を示す第1指標値を算出する(S730)。また、第2算出部355は、それぞれの通信ポートについて、上記の集計結果に基づいて、当該通信ポートがクライアント機能の特性を有する程度を示す第2指標値を算出する(S740)。そして、判定部360は、それぞれの情報処理装置のそれぞれの通信ポートについて、当該第1指標値および当該第2指標値に基づいて、当該通信ポートがサーバ機能およびクライアント機能の何れにより使用されているかを判定する(S750)。判定部360は、第1指標値および第2指標値が等しくて判定不能の場合には、判定不能である旨を判定結果として生成してもよい。
【0040】
図9は、S730における処理の詳細を示す。第1算出部350は、それぞれの通信ポートについて第1指標値を格納するための変数PSを用意し、それぞれの通信ポートの変数PSについて以下の処理を行う。まず、第1算出部350は、変数PSの値を0とする(S900)。次に、第1算出部350は、当該通信ポートを送信元とする何れかの通信パケットにおいて、SYNフラグおよびACKフラグの双方が設定されていたかを判断する(S905)。SYNフラグおよびACKフラグの双方が設定されていれば(S905:YES)、変数PSに1を加える(S910)。なお、この処理は一例であり、第1算出部350は、SYNフラグおよびACKフラグの双方が設定されていた通信パケットの数に応じて変数PSに加える値を大きくしてもよい。即ち、第1算出部350は、当該通信ポートを送信元とする通信パケットのうちACKフラグおよびSYNフラグの双方が設定されている通信パケットの合計数がより大きいことを条件に、より大きい値を第1指標値として算出すればよい。
【0041】
次に、第1算出部350は、当該通信ポートを送信元とする通信パケットの宛先IPアドレスと、当該通信ポートを宛先とする通信パケットの送信元IPアドレスとの合計数が1より大きいかを判断する(S915)。1より大きければ(S915:YES)、第1算出部350は、変数PSに1を加える(S920)。なお、この処理は一例であり、第1算出部350は、当該合計数の大きさに応じて変数PSに加える値を大きくしてもよい。即ち、第1算出部350は、当該通信ポートを送信元とする通信パケットの宛先のIPアドレス、および、当該通信ポートを宛先とする通信パケットの送信元のIPアドレスの合計数がより大きいことを条件に、より大きい値を第1指標値として算出すればよい。
【0042】
次に、第1算出部350は、当該通信ポートを送信元とする通信パケットの宛先通信ポートと、当該通信ポートを宛先とする通信パケットの送信元通信ポートとの合計数が1より大きいかを判断する(S925)。1より大きければ(S925:YES)、第1算出部350は、変数PSに1を加える(S930)。次に、第1算出部350は、当該通信ポートを送信元とする通信パケットの宛先通信ポートと、当該通信ポートを宛先とする通信パケットの送信元通信ポートとの中で最大のポート番号と最小のポート番号とを算出し、その差分値が1より大きいかを判断する(S935)。1より大きければ(S935:YES)、第1算出部350は、変数PSに1を加える(S940)。なお、これらの処理は一例であり、第1算出部350は、当該合計数の大きさに応じて変数PSに加える値を大きくしてもよい。即ち、第1算出部350は、当該通信ポートを送信元とする通信パケットの宛先の通信ポート、および、当該通信ポートを宛先とする通信パケットの送信元の通信ポートの合計数がより大きいことを条件に、より大きい値を第1指標値として算出すればよい。
【0043】
次に、第1算出部350は、当該通信ポートを送信元とする通信パケットの平均パケット長(送出パケット長と呼ぶ)を算出し、当該通信ポートを宛先とする通信パケットの平均パケット長(受信パケット長と呼ぶ)を算出する(S945)。具体的には、第1算出部350は、当該通信ポートを送信元とする通信パケットのオクテット数を、当該通信ポートを送信元とする通信パケットのパケット数で除することで送出パケット長を算出する。また、第1算出部350は、当該通信ポートを宛先とする通信パケットのオクテット数を、当該通信ポートを宛先とする通信パケットのパケット数で除することによって受信パケット長を算出する。そして、第1算出部350は、送出パケット長が受信パケット長より大きいかを判断する。送出パケット長が受信パケット長より大きければ(S945:YES)、第1算出部350は、変数PSに1を加える(S950)。
【0044】
なお、この処理に用いるパケット長は一例であり、これに代えて、通信パケットのデータサイズの平均または合計に基づく何らかの指標値を用いてもよい。即ち、第1算出部350は、当該通信ポートを送信元とする通信パケットについての、データサイズの合計または平均に基づく値が、当該通信ポートを宛先とする通信パケットについての、データサイズの合計または平均に基づく値よりも大きいことを条件に、より大きい値を第1指標値として算出すればよい。
【0045】
次に、第1算出部350は、当該通信ポートのポート番号が、当該通信ポートに対向する通信ポートのポート番号より小さいかを判断する(S955)。対向する通信ポートとは、当該通信ポートを送信元とする通信パケットの宛先の通信ポート、または、当該通信ポートを宛先とする通信パケットの送信元の通信ポートである。対向する通信ポートのポート番号より小さければ(S955:YES)、第1算出部350は、より高い値を第1指標値として算出する。例えば、第1算出部は、当該通信ポートのポート番号が対向する通信ポートのポート番号より小さければ変数PSに1を加え(S960)、そうでなければ何もしない。なお、通信プロトコルにおいて、所定の役割を果たす予約ポートは静的に定められるゆえ、比較的小さいポート番号が予め割り当てられている場合が多い。そして、この予約ポートはサーバ用途で用いられる場合が多い。一方で、クライアント用途で用いられる通信ポートには使用時に動的に番号が割り当てられるゆえ、予約ポートのポート番号を避けて比較的大きいポート番号が割り当てられる場合が多い。このようなポート番号の性質を利用して、第1算出部350は、ポート番号の大小判断によって第1指標値を効率的かつ精度良く算出することができる。
第1算出部350は、以上の処理を終えた時点の変数PSの値を第1指標値として記録する(S980)。
【0046】
図10は、S740における処理の詳細を示す。第2算出部355は、それぞれの通信ポートについて第2指標値を格納するための変数PCを用意し、それぞれの通信ポートの変数PCについて以下の処理を行う。まず、第2算出部355は、変数PCの値を0とする(S1000)。次に、第2算出部355は、当該通信ポートを宛先とする何れかの通信パケットにおいて、SYNフラグおよびACKフラグの双方が設定されていたかを判断する(S1005)。SYNフラグおよびACKフラグの双方が設定されていれば(S1005:YES)、変数PCに1を加える(S1010)。なお、この処理は一例であり、第2算出部355は、SYNフラグおよびACKフラグの双方が設定されていた通信パケットの数に応じて変数PCに加える値を大きくしてもよい。即ち、第2算出部355は、当該通信ポートを宛先とする通信パケットのうちACKフラグおよびSYNフラグの双方が設定されている通信パケットの合計数がより大きいことを条件に、より大きい値を第2指標値として算出すればよい。
【0047】
次に、第2算出部355は、当該通信ポートを送信元とする通信パケットの宛先IPアドレスと、当該通信ポートを宛先とする通信パケットの送信元IPアドレスとの合計数が1であるか判断する(S1015)。IPアドレスの合計数が1でなければ(S1015:NO)、第2算出部355は、以上の処理を終えた時点の変数PCの値を第2指標値として記録し(S1080)、本図の処理を終了する。一方で、IPアドレスの合計数が1であれば(S1015:YES)、第2算出部355は、変数PCの値に1を加える(S1020)。なお、この処理は一例であり、第2算出部355は、当該合計数の小ささに応じて変数PCに加える値を大きくしてもよい。即ち、第2算出部355は、当該通信ポートを送信元とする通信パケットの宛先のIPアドレス、および、当該通信ポートを宛先とする通信パケットの送信元のIPアドレスの合計数がより小さいことを条件に、より大きい値を第2指標値として算出すればよい。
【0048】
次に、第2算出部355は、当該通信ポートを送信元とする通信パケットの宛先ポート番号と、当該通信ポートを宛先とする通信パケットの送信元ポート番号との合計数が1であるか判断する(S1025)。合計数が1であれば(S1025:YES)、第2算出部355は、変数PCの値に1を加える(S1030)。次に、第2算出部355は、当該通信ポートを送信元とする通信パケットの宛先ポート番号、および、当該通信ポートを宛先とする通信パケットの送信元ポート番号について、ポート番号の最大値から最小値を差し引くと0であるかを判断する(S1035)。最大値から最小値を差し引くと0であれば(S1035:YES)、第2算出部355は、変数PCの値に1を加える(S1040)。なお、これらの処理は一例であり、第2算出部355は、当該合計数の小ささに応じて変数PCに加える値を大きくしてもよい。即ち、第2算出部355は、当該通信ポートを送信元とする通信パケットの宛先の通信ポート、および、当該通信ポートを宛先とする通信パケットの送信元の通信ポートの合計数がより小さいことを条件に、より大きい値を第2指標値として算出すればよい。
【0049】
次に、第2算出部355は、当該通信ポートの送出パケット長が受信パケット長より小さいかを判断する(S1045)。送出パケット長が受信パケット長より小さければ(S1045:YES)、第2算出部355は、変数PCの値に1を加える(S1050)。なお、この処理に用いるパケット長は一例であり、これに代えて、通信パケットのデータサイズの平均または合計に基づく何らかの指標値を用いてもよい。即ち、第2算出部355は、当該通信ポートを送信元とする通信パケットについての、データサイズの合計または平均に基づく値が、当該通信ポートを宛先とする通信パケットについての、データサイズの合計または平均に基づく値よりも小さいことを条件に、より大きい値を第2指標値として算出すればよい。
【0050】
次に、第2算出部355は、当該通信ポートのポート番号が対向する通信ポートのポート番号より大きいかを判断する(S1055)。当該通信ポートのポート番号が対抗する通信ポートのポート番号より大きければ(S1055:YES)、第2算出部355は、より大きい値を第2指標値として算出する。例えば、第2算出部355は、変数PCの値に1を加えてもよい(S1060)。
第2算出部355は、以上の処理を終えた時点の変数PCの値を第2指標値として記録する(S1080)。
【0051】
図11は、S620における処理の詳細を示す。まず、出力部380は、判定部360によりサーバ機能に用いられると判定された通信ポートを選択可能に一覧表示する(S1100)。その表示例を図12に例示する。
図12は、S1100における処理の画面表示例を示す。この例において、判定部360は、IPアドレスがX.X.X.74の情報処理装置について、サーバ機能に用いられると判定された通信ポートを一覧表示する。利用者の便宜のため、判定部360は、このIPアドレスに対応して構成情報DB395に記憶されている情報、即ち、ホスト名、設置場所、および、機能などの情報を併せて表示してもよい。また、判定部360は、一覧表示したそれぞれの通信ポートの番号に対応付けて、その通信ポートを用いた通信のプロトコル、その通信ポートを用いて提供されたサービス、パケットや判定結果などを表示してもよい。判定結果は、サーバかクライアントかの区別のみならず、その特性を有する程度を示す指標値などを含んでいてもよい。
【0052】
図11に戻る。選択部375は、通信ポートの選択の入力を受け付ける(S1110)。選択の入力が受け付けられると(S1120:YES)、選択部375は、判定結果記憶部370に記憶された集計結果に基づいて、選択されたその通信ポートの通信先となる全ての情報処理装置の通信ポートを選択する。そして、出力部380は、選択されたそれらの通信ポートを、初めに指定された通信ポートが使用不能となった場合の影響範囲を示す情報として一覧表示する(S1130)。図13にその表示例を示す。
図13は、S1130における処理の画面表示例を示す。出力部380は、情報処理装置(X.X.X.74)が停止した場合の影響範囲を示す情報として、通信ポート(X.X.X.74:23)の通信先となる通信ポートを一覧表示する。一覧表示される通信ポートのそれぞれには、更に、その通信のパケット数などが併せて表示されてもよい。これにより、利用者は、通信相手の情報処理装置の数や、どの程度頻繁に通信が行われているかを適切に把握することができる。
図11に戻る。選択部375は、利用者から、操作終了の指示などを受けると(S1140:YES)、本図の処理を終了する。
【0053】
図14は、分析システム300として機能するコンピュータ500のハードウェア構成の一例を示す。コンピュータ500は、ホストコントローラ1082により相互に接続されるCPU1000、RAM1020、及びグラフィックコントローラ1075を有するCPU周辺部と、入出力コントローラ1084によりホストコントローラ1082に接続される通信インターフェイス1030、ハードディスクドライブ1040、及びCD−ROMドライブ1060を有する入出力部と、入出力コントローラ1084に接続されるROM1010、フレキシブルディスクドライブ1050、及び入出力チップ1070を有するレガシー入出力部とを備える。
【0054】
ホストコントローラ1082は、RAM1020と、高い転送レートでRAM1020をアクセスするCPU1000及びグラフィックコントローラ1075とを接続する。CPU1000は、ROM1010及びRAM1020に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィックコントローラ1075は、CPU1000等がRAM1020内に設けたフレームバッファ上に生成する画像データを取得し、表示装置1080上に表示させる。これに代えて、グラフィックコントローラ1075は、CPU1000等が生成する画像データを格納するフレームバッファを、内部に含んでもよい。
【0055】
入出力コントローラ1084は、ホストコントローラ1082と、比較的高速な入出力装置である通信インターフェイス1030、ハードディスクドライブ1040、及びCD−ROMドライブ1060を接続する。通信インターフェイス1030は、ネットワークを介して外部の装置と通信する。ハードディスクドライブ1040は、コンピュータ500が使用するプログラム及びデータを格納する。CD−ROMドライブ1060は、CD−ROM1095からプログラム又はデータを読み取り、RAM1020又はハードディスクドライブ1040に提供する。
【0056】
また、入出力コントローラ1084には、ROM1010と、フレキシブルディスクドライブ1050や入出力チップ1070等の比較的低速な入出力装置とが接続される。ROM1010は、コンピュータ500の起動時にCPU1000が実行するブートプログラムや、コンピュータ500のハードウェアに依存するプログラム等を格納する。フレキシブルディスクドライブ1050は、フレキシブルディスク1090からプログラム又はデータを読み取り、入出力チップ1070を介してRAM1020またはハードディスクドライブ1040に提供する。入出力チップ1070は、フレキシブルディスク1090や、例えばパラレルポート、シリアルポート、キーボードポート、マウスポート等を介して各種の入出力装置を接続する。
【0057】
コンピュータ500に提供されるプログラムは、フレキシブルディスク1090、CD−ROM1095、又はICカード等の記録媒体に格納されて利用者によって提供される。プログラムは、入出力チップ1070及び/又は入出力コントローラ1084を介して、記録媒体から読み出されコンピュータ500にインストールされて実行される。プログラムがコンピュータ500等に働きかけて行わせる動作は、図1から図13において説明した分析システム300における動作と同一であるから、説明を省略する。
【0058】
以上に示したプログラムは、外部の記憶媒体に格納されてもよい。記憶媒体としては、フレキシブルディスク1090、CD−ROM1095の他に、DVDやPD等の光学記録媒体、MD等の光磁気記録媒体、テープ媒体、ICカード等の半導体メモリ等を用いることができる。また、専用通信ネットワークやインターネットに接続されたサーバシステムに設けたハードディスク又はRAM等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムをコンピュータ500に提供してもよい。
【0059】
以上、本実施形態に係る分析システム300によれば、通信パケットの内容解析により、情報システム10の通常運用を妨げることなく情報システム10内の情報処理装置の連携関係を適切に把握して、障害発生の対策や予防に役立てることができる。また、通信パケットの解析結果を利用して、情報システム10に対する外部からの攻撃や不正の通信を検知して利用者に警告することができる。このような機能は、高度に複雑化し日々構成が変化する今日の大規模システムにおいては、システム管理者の労力を大幅に削減できる点で特に有効である。例えば、要求の集中しているサーバを検出して負荷分散させることができる。また、ファイアウォールの新設や増設に際し、通信内容を的確に把握できるので、パケットフィルタリングなどの設定を効率化できる。
【0060】
更に、本実施形態に係る分析システム300によれば、情報システムに生じる障害が、ビジネスや社会生活への影響範囲を把握することで、これから得られる情報に基づいて、障害発生に伴う被害を軽減するための対策を講じることができる。すなわちたとえば、障害発生がのべ何人のアクセスに対して影響するか、また、業務拠点に影響があるかなどを事前把握できるので、信頼性向上のための投資がもたらす価値を評価する指標に用いることができる。
【0061】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【図面の簡単な説明】
【0062】
【図1】図1は、情報システム10の全体構成を示す。
【図2】図2は、分析装置310の機能構成を示す。
【図3】図3は、レポート装置320の機能構成を示す。
【図4a】図4aは、判定結果記憶部370のデータ構造の第1例を示す。
【図4b】図4bは、判定結果記憶部370のデータ構造の第2例を示す。
【図5】図5は、構成情報DB395のデータ構造の一例を示す。
【図6】図6は、分析システム300によって通信パケットが収集されて判定結果が表示される処理のフローチャートを示す。
【図7】図7は、S610における処理の詳細を示す。
【図8】図8は、S700における処理の概念図である。
【図9】図9は、S730における処理の詳細を示す。
【図10】図10は、S740における処理の詳細を示す。
【図11】図11は、S620における処理の詳細を示す。
【図12】図12は、S1100における処理の画面表示例を示す。
【図13】図13は、S1130における処理の画面表示例を示す。
【図14】図14は、分析システム300として機能するコンピュータ500のハードウェア構成の一例を示す。
【符号の説明】
【0063】
10 情報システム
100 拠点システム
110 端末装置
120 サーバ装置
130 通信中継装置
140 収集装置
200 中央システム
210 通信中継装置
220 サーバ装置
230 通信中継装置
240 収集装置
250 収集装置
300 分析システム
310 分析装置
320 レポート装置
330 取得部
335 合計算出部
340 第1集計部
345 第2集計部
350 第1算出部
355 第2算出部
360 判定部
365 第3集計部
370 判定結果記憶部
375 選択部
380 出力部
385 設定部
390 警告部
395 構成情報DB
500 コンピュータ

【特許請求の範囲】
【請求項1】
複数の情報処理装置を通信回線によって相互に接続した情報システムの状態を解析するシステムであって、
前記通信回線により伝送される通信パケットを取得する取得部と、
取得したそれぞれの通信パケットから通信の属性を示す属性値を読み出し、通信パケットの宛先毎に属性値を集計する第1集計部と、
取得したそれぞれの通信パケットから通信の属性を示す属性値を読み出し、通信パケットの送信元毎に属性値を集計する第2集計部と、
それぞれの情報処理装置のそれぞれの通信ポートについて、当該通信ポートを宛先とした通信パケットについて集計された属性値、および、当該通信ポートを送信元とした通信パケットについて集計された属性値に基づいて、当該通信ポートがサーバ機能およびクライアント機能の何れにより使用されているかを判定する判定部と
を備えるシステム。
【請求項2】
それぞれの通信ポートを宛先とした通信パケットについて集計された属性値と、当該通信ポートを送信元とした通信パケットについて集計された属性値とが、サーバ機能の特性を示す複数の条件のそれぞれを満たすか判断し、判断結果に基づき当該通信ポートがサーバ機能の特性を有する程度を示す第1指標値を算出する第1算出部と、
それぞれの通信ポートを宛先とした通信パケットについて集計された属性値と、当該通信ポートを送信元とした通信パケットについて集計された属性値とが、クライアント機能の特性を示す複数の条件のそれぞれを満たすか判断し、判断結果に基づき当該通信ポートがクライアント機能の特性を有する程度を示す第2指標値を算出する第2算出部と
を更に備え、
前記判定部は、それぞれの通信ポートについて、第1指標値よりも第2指標値が大きいことを条件に、当該通信ポートがクライアント機能により使用されていると判定し、第2指標値よりも第1指標値が大きいことを条件に、当該通信ポートがサーバ機能により使用されていると判定する
請求項1に記載のシステム。
【請求項3】
前記第1集計部は、通信パケットの宛先毎に、TCPプロトコルのACKフラグおよびSYNフラグの双方が設定された通信パケットの数を集計し、
前記第2集計部は、通信パケットの送信元毎に、TCPプロトコルのACKフラグおよびSYNフラグの双方が設定された通信パケットの数を集計し、
前記第1算出部は、それぞれの通信ポートについて、当該通信ポートを送信元とする通信パケットのうちACKフラグおよびSYNフラグの双方が設定されている通信パケットの合計数がより大きいことを条件に、より大きい値を第1指標値として算出し、
前記第2算出部は、それぞれの通信ポートについて、当該通信ポートを宛先とする通信パケットのうちACKフラグおよびSYNフラグの双方が設定されている通信パケットの合計数がより大きいことを条件に、より大きい値を第2指標値として算出する
請求項2に記載のシステム。
【請求項4】
前記第1集計部は、通信パケットの宛先毎に、送信元の情報処理装置のIPアドレスを集計し、
前記第2集計部は、通信パケットの送信元毎に、宛先の情報処理装置のIPアドレスを集計し、
前記第1算出部は、それぞれの通信ポートについて、当該通信ポートを送信元とする通信パケットの宛先のIPアドレス、および、当該通信ポートを宛先とする通信パケットの送信元のIPアドレスの合計数がより大きいことを条件に、より大きい値を第1指標値として算出し、
前記第2算出部は、それぞれの通信ポートについて、当該通信ポートを送信元とする通信パケットの宛先のIPアドレス、および、当該通信ポートを宛先とする通信パケットの送信元のIPアドレスの合計数がより少ないことを条件に、より大きい値を第2指標値として算出する
請求項2に記載のシステム。
【請求項5】
前記第1集計部は、通信パケットの宛先毎に、送信元の通信ポートのポート番号を集計し、
前記第2集計部は、通信パケットの送信元毎に、宛先の通信ポートのポート番号を集計し、
前記第1算出部は、それぞれの通信ポートについて、当該通信ポートを送信元とする通信パケットの宛先の通信ポート、および、当該通信ポートを宛先とする通信パケットの送信元の通信ポートの合計数がより大きいことを条件に、より大きい値を第1指標値として算出し、
前記第2算出部は、それぞれの通信ポートについて、当該通信ポートを送信元とする通信パケットの宛先の通信ポート、および、当該通信ポートを宛先とする通信パケットの送信元の通信ポートの合計数がより小さいことを条件に、より大きい値を第2指標値として算出する
請求項2に記載のシステム。
【請求項6】
前記第1算出部は、それぞれの通信ポートについて、当該通信ポートのポート番号が、当該通信ポートを送信元とする通信パケットの宛先のポート番号、または、当該通信ポートを宛先とする通信パケットの送信元のポート番号よりも小さいことを条件に、より高い値を第1指標値として算出し、
前記第2算出部は、それぞれの通信ポートについて、当該通信ポートのポート番号が、当該通信ポートを送信元とする通信パケットの宛先のポート番号、または、当該通信ポートを宛先とする通信パケットの送信元のポート番号よりも大きいことを条件に、より高い値を第2指標値として算出する
請求項2に記載のシステム。
【請求項7】
前記第1集計部は、通信パケットの宛先毎に、通信パケットのデータサイズの合計または平均に基づく値を集計し、
前記第2集計部は、通信パケットの送信元毎に、通信パケットのデータサイズの合計または平均に基づく値を集計し、
前記第1算出部は、それぞれの通信ポートについて、当該通信ポートを送信元とする通信パケットについての、データサイズの合計または平均に基づく前記値が、当該通信ポートを宛先とする通信パケットについての、データサイズの合計または平均に基づく前記値よりも大きいことを条件に、より大きい値を第1指標値として算出し、
前記第2算出部は、それぞれの通信ポートについて、当該通信ポートを送信元とする通信パケットについての、データサイズの合計または平均に基づく前記値が、当該通信ポートを宛先とする通信パケットについての、データサイズの合計または平均に基づく前記値よりも大きいことを条件に、より大きい値を第2指標値として算出する
請求項2に記載のシステム。
【請求項8】
前記取得部は、前記通信回線により伝送される通信パケットを順次キャプチャし、
通信パケットが順次キャプチャされる毎に、宛先および送信元の組のそれぞれについて、通信パケットの数、通信パケットのデータサイズ、および、予め定められたフラグの設定された通信パケットの数のそれぞれを示すカウンタに値を加算する合計算出部を更に備え、
前記第1集計部は、前記合計算出部により算出された通信パケットの数を、宛先を同一とする通信ポート毎に集計し、
前記第2集計部は、前記合計算出部により算出された通信パケットの数を、送信元を同一とする通信ポート毎に集計する
請求項1に記載のシステム。
【請求項9】
情報処理装置が指定されたことに応じ、指定された当該情報処理装置の通信ポートのうちサーバ機能に用いられると判定された通信ポートの通信先となる全ての情報処理装置を選択する選択部と、
選択した情報処理装置を示す情報を、指定された前記情報処理装置が停止した場合の影響範囲を示す情報として出力する出力部と
を更に備える請求項1に記載のシステム。
【請求項10】
選択された前記情報処理装置の台数が、予め定められた基準台数よりも多いことを条件に、指定された前記情報処理装置の処理負荷を他の情報処理装置に分散する設定を行う設定部を更に備える請求項9に記載のシステム。
【請求項11】
TCPプロトコルのFINフラグが設定された通信パケットの数と、TCPプロトコルのSYNフラグが設定された通信パケットの数とを集計する第3集計部と、
SYNフラグが設定された通信パケットの数に対する、FINフラグが設定された通信パケットの数の割合が、予め定められた基準よりも小さいことを条件に、前記情報システムが攻撃を受けた可能性を示す警告を発する警告部と
を更に備える請求項1に記載のシステム。
【請求項12】
複数の情報処理装置を通信回線によって相互に接続した情報システムの状態を解析する方法であって、
前記通信回線により伝送される通信パケットを取得するステップと、
取得したそれぞれの通信パケットから通信の属性を示す属性値を読み出し、通信パケットの宛先毎に属性値を集計するステップと、
取得したそれぞれの通信パケットから通信の属性を示す属性値を読み出し、通信パケットの送信元毎に属性値を集計するステップと、
それぞれの情報処理装置のそれぞれの通信ポートについて、当該通信ポートを宛先とした通信パケットについて集計された属性値、および、当該通信ポートを送信元とした通信パケットについて集計された属性値に基づいて、当該通信ポートがサーバ機能およびクライアント機能の何れにより使用されているかを判定するステップと
を備える方法。
【請求項13】
複数の情報処理装置を通信回線によって相互に接続した情報システムの状態を解析するシステムとして、コンピュータを機能させるプログラムであって、
前記コンピュータを、
前記通信回線により伝送される通信パケットを取得する取得部と、
取得したそれぞれの通信パケットから通信の属性を示す属性値を読み出し、通信パケットの宛先毎に属性値を集計する第1集計部と、
取得したそれぞれの通信パケットから通信の属性を示す属性値を読み出し、通信パケットの送信元毎に属性値を集計する第2集計部と、
それぞれの情報処理装置のそれぞれの通信ポートについて、当該通信ポートを宛先とした通信パケットについて集計された属性値、および、当該通信ポートを送信元とした通信パケットについて集計された属性値に基づいて、当該通信ポートがサーバ機能およびクライアント機能の何れにより使用されているかを判定する判定部と
して機能させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4a】
image rotate

【図4b】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate


【公開番号】特開2008−35266(P2008−35266A)
【公開日】平成20年2月14日(2008.2.14)
【国際特許分類】
【出願番号】特願2006−207073(P2006−207073)
【出願日】平成18年7月28日(2006.7.28)
【出願人】(592073101)日本アイ・ビー・エム株式会社 (42)
【復代理人】
【識別番号】100104156
【弁理士】
【氏名又は名称】龍華 明裕
【Fターム(参考)】