(57)【要約】      （修正有）【課題】ネットワークシステムにおけるアプリケーションプログラムに関する通信処理障害について、障害解析のために、ネットワーク層等での通信の状況をアプリケーション層での障害に関連する事象と関連付け可能に把握する。【解決手段】自装置におけるアプリケーションが他のコンピュータ装置におけるアプリケーションに接続する処理を行う際に、前記接続のための通信インタフェースに係る前記自装置および前記他装置のＩＰアドレスおよびポート番号の第一の情報、および前記接続の時刻を第一の接続情報として出力可能に記録、保持し、前記接続において送信された電文が再送された場合に、前記再送の時刻、前記電文、前記第一の情報を再送情報として出力可能に記録、保持する。【選択図】図１
2015185976.tif 000002
【特許請求の範囲】
【請求項１】
自装置におけるアプリケーションが他のコンピュータ装置におけるアプリケーションに接続する処理を行う際に、前記接続のための通信インタフェースに係る前記自装置および前記他装置のＩＰアドレスおよびポート番号の第一の情報、および前記接続の時刻を第一の接続情報として出力可能に記録、保持し、
前記接続において送信された電文が再送された場合に、前記再送の時刻、前記電文、および前記第一の情報を再送情報として出力可能に記録、保持することを特徴とするコンピュータ装置。
【請求項２】
さらに、自装置におけるアプリケーションが他のコンピュータ装置におけるアプリケーションからの接続を受け入れる処理を行う際に、前記受け入れ接続のための通信インタフェースに係る前記自装置および前記他装置のＩＰアドレスおよびポート番号の第二の情報、および前記受け入れ接続の時刻を第二の接続情報として出力可能に記録、保持し、
前記接続が前記受け入れ接続に追従するものである場合、前記接続の際に、前記第二の情報を前記第一の接続情報と共に出力可能に記録、保持することを特徴とする請求項１に記載のコンピュータ装置。
【請求項３】
前記第一の接続情報を記録、保持させる指示がＯＳ（Operating System）層によって行われることを特徴とする請求項１または２に記載のコンピュータ装置。
【請求項４】
前記電文は自身が送信される宛先のＩＰアドレスやポート番号を含むことを特徴とする請求項１乃至３に記載のコンピュータ装置。
【請求項５】
コンピュータ装置におけるアプリケーションが他のコンピュータ装置におけるアプリケーションに接続する処理を行う際に、前記接続のための通信インタフェースに係る前記自装置および前記他装置のＩＰアドレスおよびポート番号の第一の情報、および前記接続の時刻を第一の接続情報として出力可能に記録、保持し、
前記接続において送信された電文が再送された場合に、前記再送の時刻、前記電文、および前記第一の情報を再送情報として出力可能に記録、保持することを特徴とするコンピュータ装置の制御方法。
【請求項６】
さらに、コンピュータ装置におけるアプリケーションが他のコンピュータ装置におけるアプリケーションからの接続を受け入れる処理を行う際に、前記受け入れ接続のための通信インタフェースに係る前記自装置および前記他装置のＩＰアドレスおよびポート番号の第二の情報、および前記受け入れ接続の時刻を第二の接続情報として出力可能に記録、保持し、
前記接続が前記受け入れ接続に追従するものである場合、前記接続の際に、前記第二の情報を前記第一の接続情報と共に出力可能に記録、保持することを特徴とする請求項５に記載のコンピュータ装置の制御方法。
【請求項７】
前記第一の接続情報を記録、保持させる指示がＯＳ層によって行われることを特徴とする請求項５または６に記載のコンピュータ装置の制御方法。
【請求項８】
前記電文は自身が送信される宛先のＩＰアドレスやポート番号を含むことを特徴とする請求項５乃至７に記載のコンピュータ装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータ装置、および方法に関する。
【背景技術】
【０００２】
一般に、ネットワークシステムには多くの通信機器が接続されており、さらに、ネットワークシステムの稼働時間が長時間に亘ることから、ネットワークシステムにおいては障害等が発生する可能性が常にある。障害発生の際には、ネットワークシステムの管理者は障害の解析を行い、迅速にシステムを復旧させる必要がある。このような状況に対し、障害の解析に関する技術が特許文献１に記載されている。
【０００３】
すなわち、特許文献１に記載のネットワーク障害管理システムは、ネットワーク上に障害を検知すると、診断知識データベースを参照して障害内容を解析し、解析結果に応じて障害に対する処置計画を策定する。つまり、特許文献１に記載の技術において、診断知識データベースを参照して障害内容を解析している。なお、診断知識データベースには、例えば過去の障害事象等を参考にして形成された、障害事例および、その障害事例に対する処置例の情報が蓄積されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−２０９２０２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載の技術において、診断知識データベースを参照して障害内容を解析しており、障害を過去の障害事象等に当てはめて処置している。しかしながら、同じような事象の障害でも障害の原因が異なることがあり、その場合、障害の原因にもとづいて障害処置を策定しないと、適切な障害処置が行われないことがある。
【０００６】
例えば、ネットワークシステムにおいて、コンピュータ上で動作するアプリケーションプログラムが他のコンピュータ上で動作するアプリケーションプログラムとＴＣＰ／ＩＰプロトコルにもとづいた通信を行うとき、システムコールなどといった通信処理を行う。ＴＣＰ／ＩＰはTransmission Control Protocol/Internet Protocolの略称である。アプリケーション層での通信処理で発生する障害は、ＴＣＰ／ＩＰプロトコルスタック等に起因することが多い。この場合、適切な障害処置を行うためには、障害の原因を追究する必要がある。さらに、障害原因の追究のためには、ＴＣＰ／ＩＰプロトコルスタック等のネットワーク層等での通信の状況をアプリケーション層での障害に関連する事象と関連付け可能に把握する必要がある。ところが、特許文献１に記載の技術では、障害の事象のみを把握しているため、そのような把握はできない。
【０００７】
つまり、ネットワークシステムにおけるアプリケーションプログラムに関する通信処理障害について、障害解析のために、ネットワーク層等での通信の状況をアプリケーション層での障害に関連する事象と関連付け可能に把握することができないことが課題である。
【０００８】
本発明の目的は、この課題を解決するコンピュータ装置、および方法を提供することである。
【課題を解決するための手段】
【０００９】
本発明のコンピュータ装置は、自装置におけるアプリケーションが他のコンピュータ装置におけるアプリケーションに接続する処理を行う際に、前記接続のための通信インタフェースに係る前記自装置および前記他装置のＩＰアドレスおよびポート番号の第一の情報、および前記接続の時刻を第一の接続情報として出力可能に記録、保持し、前記接続において送信された電文が再送された場合に、前記再送の時刻、前記電文、前記第一の情報を再送情報として出力可能に記録、保持することを特徴とする。
【００１０】
本発明のコンピュータ装置の制御方法は、コンピュータ装置におけるアプリケーションが他のコンピュータ装置におけるアプリケーションに接続する処理を行う際に、前記接続のための通信インタフェースに係る前記自装置および前記他装置のＩＰアドレスおよびポート番号の第一の情報、および前記接続の時刻を第一の接続情報として出力可能に記録、保持し、前記接続において送信された電文が再送された場合に、前記再送の時刻、前記電文、前記第一の情報を再送情報として出力可能に記録、保持することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、ネットワークシステムにおけるアプリケーションプログラムに関する通信処理障害について、障害解析のために、ネットワーク層等での通信の状況をアプリケーション層での障害に関連する事象と関連付け可能に把握することが可能となる。
【図面の簡単な説明】
【００１２】
【図１】本発明の第１の実施形態におけるコンピュータシステムの構成例を示す図である。
【図２】本発明の第１の実施形態におけるコンピュータ装置の構成例を示す図である。
【図３】本発明の第１の実施形態におけるメモリ部の内容の例を示す図である。
【図４】本発明の第１の実施形態における課題を説明する図である。
【図５】本発明の第２の実施形態におけるコンピュータシステムの構成例を示す図である。
【図６】本発明の第２の実施形態におけるコンピュータ装置の構成例を示す図である。
【図７】本発明の第２の実施形態におけるメモリ部の内容の例を示す図である。
【図８】本発明の第３の実施形態におけるコンピュータ装置の構成例を示す図である。
【発明を実施するための形態】
【００１３】
本発明の第１の実施形態について、図面を参照して説明する。
【００１４】
本実施形態では、通信処理障害等により電文の再送が発生した場合、再送の詳細な情報が記録、保持される。なお、再送はＴＣＰ／ＩＰプロトコルスタック等に起因して発生する。
【００１５】
図１は本実施形態におけるコンピュータシステムの構成例を示す。本コンピュータシステムは、クライアント１０、サーバ１１、スイッチ３０を有する。クライアント１０、サーバ１１はスイッチ３０を介して互いに接続されている。なお、クライアント１０、サーバ１１はそれぞれ図２に示されているコンピュータ装置１００で構成されている。
【００１６】
図２は本実施形態におけるコンピュータ装置１００の構成例を示す。コンピュータ装置１００は、再送管理部１１０、メモリ部１２０を備え、アプリケーション（プログラム）１３０を有する。
【００１７】
コンピュータ装置１００の各部を説明する。
【００１８】
再送管理部１１０は、コネクション管理部１１１、イベント管理部１１２、トレースビット設定部１１３を備える。
【００１９】
メモリ部１２０は、ハードディスクドライブ等のメモリである。
【００２０】
アプリケーション１３０は、通信インタフェース（ｓｏｃｋｅｔ）を生成し、他のコンピュータ上のアプリケーションと通信を行う。
【００２１】
再送管理部１１０の各部を説明する。
【００２２】
コネクション管理部１１１は、アプリケーションが通信を行うための通信インタフェースに関係するローカルホストおよびリモートホストのＩＰアドレス、ポート番号を接続時刻と共にメモリ部１２０に記録、保持させる。また、コネクション管理部１１１は、アプリケーションがｓｏｃｋｅｔの生成を通知するためのＡＰＩを備える。
【００２３】
イベント管理部１１２は、アプリケーションから送信された電文で再送が発生した場合、再送発生時刻、再送発生を示す識別子、再送された電文をメモリ部１２０に記録、保持させる。イベント管理部１１２は、同様に電文の再送が発生した通信インタフェースに関係するローカルホストおよびリモートホストのＩＰアドレスおよびポート番号をメモリ部１２０に記録、保持させる。
【００２４】
トレースビット設定部１１３は、アプリケーションがトレースビット１１４に値を設定するためのＡＰＩ（Application Programming Interface）を備える。
【００２５】
なお、トレースビット１１４は、コネクション管理部１１１およびイベント管理部１１２の機能を有効にするかどうかを示す値を保持するデータ構造であり、アプリケーションが通信を行うための通信インタフェースの管理情報の中に含まれている。
【００２６】
上述の構成例を踏まえ、本実施形態におけるコンピュータシステムの動作について、図１〜３を参照して説明する。
【００２７】
図１において、クライアント１０上で動作するアプリケーション１３０−０からサーバ１１上で動作するアプリケーション１３０−１に接続が行われている際に電文が再送される場合について説明する。
【００２８】
なお、クライアント１０、サーバ１１には、ＩＰアドレスとしてそれぞれｉｐ０、ｉｐ１が設定されているものとする。また、クライアント１０、サーバ１１それぞれの上で動作するアプリケーション１３０−０、１３０−１が通信を行うために生成する通信インタフェース（ｓｏｃｋｅｔ）には図１に示されているＩＰアドレス、ポート番号が設定されるものとする。さらに、クライアント１０は、予め、サーバ１１のＩＰアドレス  ｉｐ１、ポート番号  ｐｏｒｔ１０の情報を有しているものとする。
【００２９】
まず、クライアント１０において、ユーザの操作に応じて、アプリケーション１３０−０がサーバ１１上で動作するアプリケーション１３０−１と通信を行うために通信インタフェース（ｓｏｃｋｅｔ０）を生成する。ｓｏｃｋｅｔ０の生成に応じて、トレースビット設定部１１３−０がトレースビット１１４−０に、ｓｏｃｋｅｔ０に対してコネクション管理部１１１−０およびイベント管理部１１２−０の機能を有効にする値、例えば１（無効の場合０）を設定する。これにより、コネクション管理部１１１−０およびイベント管理部１１２−０の機能が有効となる。
【００３０】
なお、これにより、後述のように、ｓｏｃｋｅｔ０から送信された電文で再送が発生した場合、イベント管理部１１２−０は再送発生時刻、再送発生を示す識別子、再送された電文をメモリ部１２０−０に記録、保持させる。イベント管理部１１２−０は同様にｓｏｃｋｅｔ０に関係するローカルホスト（この場合はクライアント１０）およびリモートホスト（この場合はサーバ１１）のＩＰアドレスおよびポート番号をメモリ部１２０−０に記録、保持させる。
【００３１】
次に、クライアント１０において、アプリケーション１３０−０がコネクション管理部１１１−０の備えるＡＰＩを使用してｓｏｃｋｅｔ０の生成をコネクション管理部１１１−０に通知する。なお、本実施形態において採用される方式では、ローカルホストにおいて、リモートホストとの接続の際にｓｏｃｋｅｔにポート番号がＯＳ（Operating System）により設定される。このため、そのＡＰＩ通知の際、アプリケーション１３０−０はコネクション管理部１１１−０に、ｓｏｃｋｅｔ０にローカル・リモートホストのＩＰアドレス・ポート番号の全てが設定されてからそれらをメモリ部１２０−０に記録、保持させるよう指示する。
【００３２】
次に、クライアント１０において、アプリケーション１３０−０がサーバ１１上で動作するアプリケーション１３０−１に接続する処理を行う。この際、ｓｏｃｋｅｔ０に、ローカルホストのポート番号としてｐｏｒｔ０が設定され、ローカルホストのＩＰアドレスｉｐ０、リモートホストのＩＰアドレス  ｉｐ１およびポート番号  ｐｏｒｔ１０はｓｏｃｋｅｔ０の生成時に設定されている（図１）。これにより、コネクション管理部１１１−０はそれらのＩＰアドレス・ポート番号を接続時刻と共にメモリ部１２０−０に記録、保持させる。クライアント１０、サーバ１１の各メモリ部１２に記録、保持される内容が図３（項目１）に示されている。
【００３３】
ここで、通信処理障害により、クライアント１０において、アプリケーション１３０−０がサーバ１１上で動作するアプリケーション１３０−１に接続する処理における電文が再送されたとする。
【００３４】
この際、イベント管理部１１２−０は、通常、電文の送信をモニターしており、再送発生時刻、再送発生を示す識別子（「再送」等）、再送された電文をメモリ部１２０−０に記録、保持させる。また、イベント管理部１１２−０は同様にｓｏｃｋｅｔ０に関係するローカルホスト（クライアント１０）およびリモートホスト（サーバ１１）のＩＰアドレスおよびポート番号をメモリ部１２０−０に記録、保持させる。メモリ部１２０−０に記録、保持されるこの再送の情報が図３（項目２）に示されている。メモリ部１２０に記録、保持された、この再送の情報を含む通信履歴の情報はユーザの操作により出力される。各コンピュータ装置（クライアント１０、サーバ１１）のメモリ部１２０から出力されたそのような情報は、一般的に、照合手段等によりＴＣＰ／ＩＰプロトコルやアプリケーションプログラムの動作の情報とつき合わされて障害の解析が行われる。
【００３５】
なお、通信インタフェースに関係するローカル・リモートホストのＩＰアドレス・ポート番号をメモリ部１２０に記録、保持させる処理は、コネクション管理部１１１でなく、アプリケーション１３０に行わせることも可能である。しかしながら、アプリケーション層での接続処理には本来ローカルホストのポート番号が不要であるため、アプリケーション１３０にローカルホストのポート番号を記録、保持させる処理を行わせると全体の処理が複雑化する懸念がある。このため、アプリケーション１３０にローカルホストのポート番号を扱わさせず、コネクション管理部１１１にその処理を行わせている。
【００３６】
また、イベント管理部１１２に記録、保持させる、通信インタフェースに関係するリモートホストのＩＰアドレス・ポート番号は、再送された電文がそのＩＰアドレス・ポート番号を宛先とした場合、その電文に含まれている。このため、その電文をイベント管理部１１２に記録、保持させると、リモートホストのＩＰアドレス・ポート番号の情報が重複してメモリ部１２０に記録、保持されることとなる。しかしながら、電文はリモートホストのＩＰアドレス・ポート番号を宛先として送信されるのに前もってＤＮＳ（Domain Name Server）等、他の宛先に送信されることがある。このため、他の宛先への電文が再送された場合には、リモートホストのＩＰアドレス・ポート番号と他の宛先がメモリ部１２０に記録、保持される。これにより、ユーザはアプリケーションの動作と電文の再送との関係をより詳細に解析することが可能となる。
【００３７】
以上のように、ユーザは再送発生時刻、再送発生を示す識別子、再送された電文、アプリケーションおよびｓｏｃｋｅｔに関係するローカルホストおよびリモートホストＩＰアドレスおよびポート番号を把握することが可能となる。このようなアプリケーションおよびｓｏｃｋｅｔに関係する情報が関係付けられた再送の情報を含む通信履歴の情報がＴＣＰ／ＩＰプロトコルやアプリケーションプログラムの動作の情報などとつき合わされて障害の解析が行われる。
【００３８】
このように、ネットワークシステムにおけるアプリケーションプログラムに関する通信処理障害について、障害解析のために、ネットワーク層等での通信の状況をアプリケーション層での障害に関連する事象と関連付け可能に把握することが可能となる。
【００３９】
本発明の第２の実施形態について、図面を参照して説明する。
【００４０】
本発明の第１の実施形態において、主従関係のある通信が行われる場合、次のような課題がある。
【００４１】
図４において、主たる通信であるクライアント０−サーバ１間の通信に追従するサーバ１−サーバ２間の通信で再送が発生した場合、その影響を受けるクライアント０上で動作するアプリケーションの通信処理で障害が発生することがある。この場合、追従する通信における再送の状況を把握することができても、その再送と障害の発生したアプリケーションの通信処理との関係性を把握することができないことがある。このため、本実施形態では、追従する通信において再送が発生した場合に、その影響を受ける主たる通信を判別することを可能にする。
【００４２】
図５は本実施形態におけるコンピュータシステムの構成例を示す。本コンピュータシステムは、クライアント２０、サーバ２１、サーバ２２、スイッチ３０を有する。クライアント２０、サーバ２１、サーバ２２はスイッチ３０を介して互いに接続されている。なお、クライアント２０、サーバ２１、サーバ２２はそれぞれコンピュータ装置２００で構成されている。
【００４３】
図６は本実施形態におけるコンピュータ装置２００の構成例を示す。コンピュータ装置２００は、再送管理部２１０、メモリ部２２０を備え、アプリケーション（プログラム）２３０を有する。コンピュータ装置２００は、図２のコンピュータ装置１００と再送管理部２１０、アプリケーション２３０が異なっている。
【００４４】
その異なっている部分を説明する。
【００４５】
再送管理部２１０は、コネクション管理部２１１、イベント管理部２１２、トレースビット設定部２１３を備える。
【００４６】
アプリケーション２３０は、通信インタフェース（ｓｏｃｋｅｔ）を生成し、他のコンピュータ上のアプリケーションと通信を行う。異なっている部分として、アプリケーション２３０は、主たる通信の判別に関係する処理を行う。
【００４７】
再送管理部２１０の各部を説明する。
【００４８】
コネクション管理部２１１は、アプリケーションが通信を行うための通信インタフェースに関係するローカルホストおよびリモートホストのＩＰアドレス、ポート番号を設定時刻と共にメモリ部２２０に記録、保持させる。また、コネクション管理部２１１は、アプリケーションがｓｏｃｋｅｔの生成を通知するためのＡＰＩを備える。異なっている部分として、コネクション管理部２１１は、主たる通信の判別に関係する処理を行う。
【００４９】
次に、本実施形態におけるコンピュータシステムの動作について、図５〜７を参照して説明する。
【００５０】
図５において、サーバ２１上で動作するアプリケーション２３０−１からサーバ２２上で動作するアプリケーション２３０−２に接続が行われている際に電文が再送される場合について説明する。
【００５１】
なお、クライアント２０、サーバ２１、サーバ２２には、ＩＰアドレスとしてそれぞれｉｐ０、ｉｐ１、ｉｐ２が設定されているものとする。また、クライアント２０、サーバ２１、サーバ２２それぞれの上で動作するアプリケーション２３０−０〜２３０−２が通信を行うために生成する通信インタフェース（ｓｏｃｋｅｔ）には図５に示されているＩＰアドレス、ポート番号が設定されるものとする。さらに、クライアント２０は、予め、サーバ２１のＩＰアドレス  ｉｐ１、ポート番号  ｐｏｒｔ１０の情報を有しているものとする。また、サーバ２１は、予め、サーバ２２のＩＰアドレス  ｉｐ２、ポート番号  ｐｏｒｔ２の情報を有しているものとする。
【００５２】
まず、クライアント２０において、ユーザの操作に応じて、アプリケーション２３０−０がサーバ２１上で動作するアプリケーション２３０−１と通信を行うために通信インタフェース（ｓｏｃｋｅｔ０）を生成する。ｓｏｃｋｅｔ０の生成に応じて、トレースビット設定部２１３−０がトレースビット２１４−０に、ｓｏｃｋｅｔ０に対してコネクション管理部２１１−０およびイベント管理部２１２−０の機能を有効にする値、例えば１（無効の場合０）を設定する。これにより、コネクション管理部２１１−０およびイベント管理部２１２−０の機能が有効となる。
【００５３】
次に、クライアント２０において、アプリケーション２３０−０がコネクション管理部２１１−０の備えるＡＰＩを使用してｓｏｃｋｅｔ０の生成をコネクション管理部２１１−０に通知する。なお、本実施形態において採用される方式では、ローカルホストにおいて、リモートホストとの接続の際にｓｏｃｋｅｔにポート番号がＯＳにより設定される。このため、そのＡＰＩ通知の際、アプリケーション２３０−０はコネクション管理部２１１−０に、ｓｏｃｋｅｔ０にローカル・リモートホストのＩＰアドレス・ポート番号の全てが設定されてからそれらをメモリ部２２０−０に記録、保持させるよう指示する。
【００５４】
次に、クライアント２０において、アプリケーション２３０−０がサーバ２１上で動作するアプリケーション２３０−１に接続する処理を行う。この際、ｓｏｃｋｅｔ０に、ローカルホストのポート番号としてｐｏｒｔ０が設定され、ローカルホストのＩＰアドレスｉｐ０、リモートホストのＩＰアドレス  ｉｐ１およびポート番号  ｐｏｒｔ１０はｓｏｃｋｅｔ０の生成時に設定されている。これにより、コネクション管理部２１１−０はそれらのＩＰアドレス・ポート番号を接続時刻と共にメモリ部２２０−０に記録、保持させる。クライアント２０、サーバ２１、サーバ２２の各メモリ部２２０に記録、保持される内容が図７（項目１）に示されている。
【００５５】
クライアント２０からの接続に応じて、サーバ２１において、アプリケーション２３０−１がクライアント２０からの接続を受け入れる処理を行う。この際、アプリケーション２３０−１はアプリケーション２３０−０と通信を行うための通信インタフェース（ｓｏｃｋｅｔ１０）を生成する。ｓｏｃｋｅｔ１０の生成に応じて、トレースビット設定部２１３−１がトレースビット２１４−１に、ｓｏｃｋｅｔ１０に対してコネクション管理部２１１−１およびイベント管理部２１２−１の機能を有効にする値、例えば１（無効の場合０）を設定する。これにより、コネクション管理部２１１−１およびイベント管理部２１２−１の機能が有効となる。
【００５６】
次に、アプリケーション２３０−１がコネクション管理部２１１−１の備えるＡＰＩを使用してｓｏｃｋｅｔ１０の生成をコネクション管理部２１１−１に通知する。この際、ｓｏｃｋｅｔ１０に、ローカルホストのＩＰアドレスおよびポート番号としてそれぞれｉｐ１、ｐｏｒｔ１０が設定され、リモートホストについてはそれぞれｉｐ０、ｐｏｒｔ０が設定される（図５）。このため、アプリケーション２３０−１はコネクション管理部２１１−１に、即座にＩＰアドレス・ポート番号などの情報をメモリ部２２０−１に記録、保持させるよう指定する。これにより、コネクション管理部２１１−１はそれらのＩＰアドレス・ポート番号を設定時刻と共にメモリ部２２０−１に記録、保持させる（図７  項目２）。
【００５７】
次に、クライアント２０において、アプリケーション２３０−０がサーバ２１に要求の送信を行う。（クライアント２０からの要求はサーバ２２で処理されるものとする。）
サーバ２１において、アプリケーション２３０−１が、サーバ２２にクライアント２０からの要求の処理を行わせるために、サーバ２２上で動作するアプリケーション２３０−２と通信を行うために通信インタフェース（ｓｏｃｋｅｔ１２）を生成する。ｓｏｃｋｅｔ１２の生成に応じて、トレースビット設定部２１３−１がトレースビット２１４−１に、ｓｏｃｋｅｔ１２に対してコネクション管理部２１１−１およびイベント管理部２１２−１の機能を有効にする値、例えば１（無効の場合０）を設定する。これにより、コネクション管理部２１１−１およびイベント管理部２１２−１の機能が有効となる。
【００５８】
なお、これにより、後述のように、ｓｏｃｋｅｔ１２から送信される電文で再送が発生した場合、イベント管理部２１２−１は再送発生時刻、再送発生を示す識別子、再送された電文をメモリ部２２０−１に記録、保持させる。イベント管理部２１２−１は同様にｓｏｃｋｅｔ１２に関係するローカルホスト（この場合はサーバ２１）およびリモートホスト（この場合はサーバ２２）のＩＰアドレスおよびポート番号をメモリ部２２０−１に記録、保持させる。
【００５９】
アプリケーション２３０−１はコネクション管理部２１１−１の備えるＡＰＩを使用してｓｏｃｋｅｔ１２の生成をコネクション管理部２１１−１に通知する。このとき、まだ、ローカルホスト(サーバ２１)とリモートホスト（サーバ２２）との接続が行われていない。本実施形態において採用される方式では、ローカルホストとリモートホストとの接続の際にｓｏｃｋｅｔにポート番号がＯＳにより割り当てられる。このため、そのＡＰＩ通知の際、アプリケーション２３０−１はコネクション管理部２１１−１に、ｓｏｃｋｅｔ１２にローカル・リモートホストのＩＰアドレス・ポート番号の全てが設定されてからそれらをメモリ部１２０−１に記録、保持させるよう指示する。また、そのＡＰＩ通知の際、アプリケーション２３０−１はｓｏｃｋｅｔ１２で行われる通信がｓｏｃｋｅｔ１０で行われる主たる通信に追従するものであることも通知する。
【００６０】
次に、サーバ２１において、アプリケーション２３０−１がサーバ２２上で動作するアプリケーション２３０−２に接続する処理を行う。この際、ｓｏｃｋｅｔ１２に、ローカルホストのポート番号としてｐｏｒｔ１２が設定され、ローカルホストのＩＰアドレスｉｐ１、リモートホストのＩＰアドレス  ｉｐ２およびポート番号  ｐｏｒｔ２はｓｏｃｋｅｔ１２の生成時に設定されている（図５）。これにより、コネクション管理部２１１−１はそれらのＩＰアドレス・ポート番号を接続時刻およびｓｏｃｋｅｔ１２で行われる通信が追従する主たる通信の情報と共にメモリ部２２０−１に記録、保持させる（図７  項目３）。
【００６１】
ここで、通信処理障害により、サーバ２１において、アプリケーション２３０−１がサーバ２２上で動作するアプリケーション２３０−２に接続する処理における電文が再送されたとする。
【００６２】
この際、イベント管理部２１２−１は、通常、電文の送信をモニターしており、再送発生時刻、再送発生を示す識別子（「再送」等）、再送された電文をメモリ部２２０−１に記録、保持させる。また、イベント管理部２１２−１は同様にｓｏｃｋｅｔ１２に関係するローカルホスト（サーバ２１）およびリモートホスト（サーバ２２）のＩＰアドレスおよびポート番号をメモリ部２２０−１に記録、保持させる。メモリ部２２０−１に記録、保存されるこの再送の情報が図７（項目４）に示されている。メモリ部２２０に記録、保持された、この再送の情報および主たる通信の情報を含む通信履歴の情報はユーザの操作により出力される。各コンピュータ装置（クライアント２０、サーバ２１、サーバ２２）のメモリ部２２０から出力されたそのような情報は、一般的に、照合手段等によりＴＣＰ／ＩＰプロトコルやアプリケーションプログラムの動作の情報とつき合わされて障害の解析が行われる。
【００６３】
なお、通信インタフェースに関係するローカル・リモートホストのＩＰアドレス・ポート番号をメモリ部２２０に記録、保持させる処理は、コネクション管理部２１１でなく、アプリケーション２３０に行わせることも可能である。しかしながら、アプリケーション層での接続処理には本来ローカルホストのポート番号が不要であるため、アプリケーション１３０にローカルホストのポート番号を記録、保持させる処理を行わせると全体の処理が複雑化する懸念がある。このため、アプリケーション１３０にローカルホストのポート番号を扱わさせず、コネクション管理部１１１にその処理を行わせている。
【００６４】
また、イベント管理部２１２に記録、保持させる、通信インタフェースに関係するリモートホストのＩＰアドレス・ポート番号は、再送された電文がそのＩＰアドレス・ポート番号を宛先とした場合、その電文に含まれている。このため、その電文をイベント管理部２１２に記録、保持させると、リモートホストのＩＰアドレス・ポート番号の情報が重複してメモリ部２２０に記録、保持されることとなる。しかしながら、電文はリモートホストのＩＰアドレス・ポート番号を宛先として送信されるのに前もってＤＮＳ（Domain Name Server）等、他の宛先に送信されることがある。このため、他の宛先への電文が再送された場合には、リモートホストのＩＰアドレス・ポート番号と他の宛先がメモリ部２２０に記録、保持される。これにより、ユーザはアプリケーションの動作と電文の再送との関係をより詳細に解析することが可能となる。
【００６５】
以上のように、ユーザは再送発生時刻、再送発生を示す識別子、再送された電文、アプリケーションおよびｓｏｃｋｅｔに関係するローカルホストおよびリモートホストＩＰアドレスおよびポート番号を把握することが可能となる。さらに、ユーザは追従する通信において再送が発生した場合に、その影響を受ける主たる通信を判別することが可能となる。このようなアプリケーションおよびｓｏｃｋｅｔに関係する情報が関係付けられた再送の情報および主たる通信の情報を含む通信履歴の情報がＴＣＰ／ＩＰプロトコルやアプリケーションプログラムの動作の情報などとつき合わされて障害の解析が行われる。
【００６６】
このように、ネットワークシステムにおけるアプリケーションプログラムに関する通信処理障害について、障害解析のために、ネットワーク層等での通信の状況をアプリケーション層での障害に関連する事象と関連付け可能に把握することが可能となる。さらに、追従する通信において再送が発生した場合に、その影響を受ける主たる通信を判別することが可能となる。
【００６７】
次に、本発明の第３の実施形態について、図面を参照して説明する。
【００６８】
図８は本実施形態におけるコンピュータ装置の構成例を示す。
【００６９】
コンピュータ装置５０は、通信インタフェースに係るローカルホストおよびリモートホストのＩＰアドレスおよびポート番号の通信インタフェース情報、および接続の時刻を接続情報として出力可能に記録、保持する。また、コンピュータ装置５０は、再送の時刻、電文、および通信インタフェース情報を再送情報として出力可能に記録、保持する。
【００７０】
次に、本実施形態におけるコンピュータ装置５０の動作について、図８を参照して説明する。
【００７１】
ユーザの操作に応じて、コンピュータ装置５０におけるアプリケーションが他のコンピュータ装置におけるアプリケーションに接続する処理を行う。その際に、コンピュータ装置５０はその接続のための通信インタフェースに係る自装置（ローカルホスト）および他装置（リモートホスト）のＩＰアドレスおよびポート番号の通信インタフェース情報、および接続の時刻を接続情報として出力可能に記録、保持する。また、その接続において送信された電文が再送された場合に、再送の時刻、電文、および通信インタフェース情報を再送情報として出力可能に記録、保持する。
【００７２】
以上のように、ユーザは再送発生時刻、再送された電文、アプリケーションおよび通信インタフェースに関係するローカルホストおよびリモートホストのＩＰアドレスおよびポート番号を把握することが可能となる。このようなアプリケーションおよびｓｏｃｋｅｔに関係する情報が関係付けられた再送の情報を含む通信履歴の情報がＴＣＰ／ＩＰプロトコルやアプリケーションプログラムの動作の情報などとつき合わされて障害の解析が行われる。
【００７３】
このように、ネットワークシステムにおけるアプリケーションプログラムに関する通信処理障害について、障害解析のために、ネットワーク層等での通信の状況をアプリケーション層での障害に関連する事象と関連付け可能に把握することが可能となる。
【産業上の利用可能性】
【００７４】
本発明は、コンピュータ装置、および方法に利用可能である。
【符号の説明】
【００７５】
０、１０、２０    クライアント
１、２、１１、２１、２２    サーバ
３０    スイッチ
１００、２００    コンピュータ装置
１１０、２１０    再送管理部
１１１、２１１    コネクション管理部
１１２、２１２    イベント管理部
１１３、２１３    トレースビット設定部
１１４、２１４    トレースビット
１２０、２２０    メモリ部
１３０、２３０    アプリケーション
【図１】
2015185976.tif 000003
【図２】
2015185976.tif 000004
【図３】
2015185976.tif 000005
【図４】
2015185976.tif 000006
【図５】
2015185976.tif 000007
【図６】
2015185976.tif 000008
【図７】
2015185976.tif 000009
【図８】
2015185976.tif 000010