JP2013125478A - Relay device, relay program and relay method - Google Patents

Relay device, relay program and relay method Download PDF

Info

Publication number
JP2013125478A
JP2013125478A JP2011274979A JP2011274979A JP2013125478A JP 2013125478 A JP2013125478 A JP 2013125478A JP 2011274979 A JP2011274979 A JP 2011274979A JP 2011274979 A JP2011274979 A JP 2011274979A JP 2013125478 A JP2013125478 A JP 2013125478A
Authority
JP
Japan
Prior art keywords
communication
communication history
extraction unit
screen
web browser
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2011274979A
Other languages
Japanese (ja)
Other versions
JP5737166B2 (en
Inventor
Masahiro Tanaka
昌弘 田中
Terunobu Kume
照宣 粂
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2011274979A priority Critical patent/JP5737166B2/en
Publication of JP2013125478A publication Critical patent/JP2013125478A/en
Application granted granted Critical
Publication of JP5737166B2 publication Critical patent/JP5737166B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To provide a relay device which performs reproduction at a high speed when reproducing an operation.SOLUTION: A relay device 1 comprises: a communication record table 111 which stores a communication history in which a request from a web browser to a web server is correlated with a response from the web server for an operation performed by the web browser; an authentication state extraction unit 131 which extracts the communication history correlated with a response in which information used in session management exists on the basis of the communication history stored in the communication record table 111; screen transition extraction unit 132 which extracts a series of communication histories obtained by tracking back information which is included in the request and is used to manage transition of a screen outputted on the web browser, on the basis of the communication history stored in the communication record table 111; and a communication reproduction unit 14 which reproduces the operation using a union of the communication history extracted by the authentication state extraction unit 131 and the communication history extracted by the screen transition extraction unit 132.

Description

本発明は、中継装置などに関する。   The present invention relates to a relay device and the like.

コンピュータシステムにおいて、ユーザの操作などの動作履歴をもとに、システムの動作を再現する技術が開示されている。   In a computer system, a technique for reproducing the operation of the system based on an operation history such as a user operation is disclosed.

ウェブシステムにおいても、ユーザの操作を再現する技術がある。ウェブシステムでは、ウェブサーバが、ウェブブラウザでの操作のもと、当該ウェブブラウザとの間でHTTP(Hyper Text Transfer Protocol)でデータのやりとりをして、該当するサービスを提供する。この際、ウェブサーバとウェブブラウザとの間に、データを中継する中継サーバが設置される場合がある。   There is also a technique for reproducing user operations in a web system. In the web system, a web server exchanges data with the web browser using HTTP (Hyper Text Transfer Protocol) under the operation of the web browser to provide a corresponding service. At this time, a relay server that relays data may be installed between the web server and the web browser.

かかる中継サーバは、ウェブサーバとウェブブラウザとの間の通信メッセージを通信履歴として記録し、記録した通信履歴を用いて通信を再現する。これによって、ユーザが、ウェブサーバへの操作を再現したい場合に、ウェブブラウザでのウェブサーバへの操作を再び行う代わりに、中継サーバが通信履歴を用いて通信を再現することで自動的に該当するサービスへの操作を再現できる。   Such a relay server records a communication message between the web server and the web browser as a communication history, and reproduces the communication using the recorded communication history. As a result, when the user wants to reproduce the operation to the web server, the relay server automatically reproduces the communication using the communication history instead of performing the operation to the web server again by the web browser. You can reproduce the operation to the service.

特開平7−84838号公報JP-A-7-84838

しかしながら、従来の技術では、通信履歴をもとに操作を再現する際、再現に時間がかかるという問題がある。すなわち、ある検索条件の入力に対する検索結果がウェブサーバから戻されることだけを再現したい場合がある。かかる場合に、中継サーバは、単に通信履歴を用いて通信を再現すると、再現をしたい部分以外を再現する。例えば、検索条件を検索画面に含まれるフレームから入力する場合、中継サーバは、当該検索条件が入力されるフレームだけを再現すればよいが、単に通信履歴を用いて再現すると、再現したいフレーム以外の検索画面自体も再現することになる。つまり、中継サーバは不要な通信まで再現するので、再現に時間がかかってしまう。   However, the conventional technique has a problem in that it takes time to reproduce the operation when reproducing the operation based on the communication history. That is, there is a case where it is desired to reproduce only that a search result for an input of a certain search condition is returned from the web server. In such a case, if the relay server simply reproduces communication using the communication history, it reproduces parts other than the part to be reproduced. For example, when the search condition is input from a frame included in the search screen, the relay server only needs to reproduce the frame in which the search condition is input. The search screen itself will also be reproduced. That is, since the relay server reproduces even unnecessary communication, it takes time to reproduce.

開示の技術は、操作を再現する際、再現を高速に行うことを可能にすることを目的とする。   An object of the disclosed technique is to enable high-speed reproduction when reproducing an operation.

1つの側面では、中継装置は、ウェブブラウザが行う操作について、前記ウェブブラウザからウェブサーバに送信されたリクエストデータと前記ウェブサーバから受信したレスポンスデータとを対応付けた通信履歴を記憶した記憶部と、前記記憶部に記憶された通信履歴に基づいて、セッション管理に用いられる情報が存在する前記レスポンスデータと対応付けられた通信履歴を抽出する第1の抽出部と、前記記憶部に記憶された通信履歴に基づいて、前記リクエストデータに含まれる情報であって前記ウェブブラウザ側で出力される画面の遷移を管理するために用いられる情報を辿って得られる一連の通信履歴を抽出する第2の抽出部と、前記第1の抽出部によって抽出された通信履歴および前記第2の抽出部によって抽出された通信履歴の和集合を用いて、前記操作を再現する再現部とを有する。   In one aspect, the relay device stores a communication history in which request data transmitted from the web browser to the web server and response data received from the web server are associated with each other for an operation performed by the web browser; A first extraction unit for extracting a communication history associated with the response data in which information used for session management exists based on the communication history stored in the storage unit; and the storage unit stored in the storage unit Based on the communication history, a second series of communication history information that is obtained by tracing information that is included in the request data and that is used to manage screen transitions output on the web browser side is extracted. An extraction unit, a communication history extracted by the first extraction unit, and a communication history extracted by the second extraction unit Using the union, and a reproducing unit for reproducing the operation.

本願の開示する中継装置の一つの態様によれば、操作を再現する際、再現を高速に行うことができる。   According to one aspect of the relay device disclosed in the present application, when the operation is reproduced, the reproduction can be performed at high speed.

図1は、実施例1に係るウェブ中継システムの構成を示す機能ブロック図である。FIG. 1 is a functional block diagram illustrating the configuration of the web relay system according to the first embodiment. 図2は、実施例1に係る中継装置の構成を示す機能ブロック図である。FIG. 2 is a functional block diagram illustrating the configuration of the relay device according to the first embodiment. 図3は、通信記録テーブルのデータ構造の一例を示す図である。FIG. 3 is a diagram illustrating an example of a data structure of the communication record table. 図4は、実施例1に係る認証状態抽出処理の手順を示すフローチャートである。FIG. 4 is a flowchart illustrating the procedure of the authentication state extraction process according to the first embodiment. 図5は、実施例1に係る画面遷移抽出処理の手順を示すフローチャートである。FIG. 5 is a flowchart illustrating the procedure of the screen transition extraction process according to the first embodiment. 図6は、実施例1に係る再現抽出処理の手順を示すフローチャートである。FIG. 6 is a flowchart illustrating the procedure of the reproduction extraction process according to the first embodiment. 図7は、通信記録の具体例を示す図である。FIG. 7 is a diagram illustrating a specific example of the communication record. 図8は、ウェブブラウザに表示される画面遷移の具体例を示す図である。FIG. 8 is a diagram illustrating a specific example of the screen transition displayed on the web browser. 図9は、認証状態抽出処理の具体例を示す図である。FIG. 9 is a diagram illustrating a specific example of the authentication state extraction process. 図10は、画面遷移抽出処理の具体例を示す図である。FIG. 10 is a diagram illustrating a specific example of the screen transition extraction process. 図11は、再現抽出処理の具体例を示す図である。FIG. 11 is a diagram illustrating a specific example of the reproduction extraction process. 図12は、通信再現処理の具体例を示す図である。FIG. 12 is a diagram illustrating a specific example of the communication reproduction process. 図13は、実施例2に係る中継装置の構成を示す機能ブロック図である。FIG. 13 is a functional block diagram illustrating the configuration of the relay device according to the second embodiment. 図14Aは、ログイン画面の親画面のHTMLを示す図である。FIG. 14A is a diagram showing HTML of the main screen of the login screen. 図14Bは、各小画面に対応させたHTMLを示す図である。FIG. 14B is a diagram showing HTML corresponding to each small screen. 図14Cは、小画面で構成された画面例を示す図である。FIG. 14C is a diagram showing an example of a screen composed of small screens. 図15は、実施例2に係る小画面抽出処理の手順を示すフローチャートである。FIG. 15 is a flowchart illustrating the procedure of the small screen extraction process according to the second embodiment. 図16は、通信記録の具体例を示す図である。FIG. 16 is a diagram illustrating a specific example of communication recording. 図17は、ウェブブラウザに表示される画面遷移の具体例を示す図である。FIG. 17 is a diagram illustrating a specific example of the screen transition displayed on the web browser. 図18は、画面遷移抽出処理により抽出された通信記録の具体例を示す図である。FIG. 18 is a diagram illustrating a specific example of the communication record extracted by the screen transition extraction process. 図19は、小画面抽出処理の具体例を示す図である。FIG. 19 is a diagram illustrating a specific example of the small screen extraction process. 図20は、再現抽出処理の具体例を示す図である。FIG. 20 is a diagram illustrating a specific example of the reproduction extraction process. 図21は、通信再現処理の具体例を示す図である。FIG. 21 is a diagram illustrating a specific example of the communication reproduction process. 図22は、中継プログラムを実行するコンピュータを示す図である。FIG. 22 is a diagram illustrating a computer that executes a relay program.

以下に、本願の開示する中継装置、中継プログラムおよび中継方法の実施例を図面に基づいて詳細に説明する。なお、実施例によりこの発明が限定されるものではない。   Hereinafter, embodiments of a relay device, a relay program, and a relay method disclosed in the present application will be described in detail with reference to the drawings. The present invention is not limited to the embodiments.

[実施例1に係るウェブ中継システムの構成]
図1は、本実施例1に係るウェブ中継システム9の構成を示す機能ブロック図である。図1に示すように、ウェブ中継システム9は、中継装置1と、ウェブブラウザ2と、ウェブサーバ3とを有する。中継装置1は、ウェブブラウザ2とウェブサーバ3との間の通信を中継する。ウェブブラウザ2は、ウェブサービスを利用する、パーソナルコンピュータなどのユーザ端末である。ウェブサーバ3は、ウェブサービスを実施する。なお、ウェブ中継システム9では、ウェブサーバ3を中継装置1およびウェブブラウザ2と同一のネットワーク上に適用した場合であっても良いし、ウェブサーバ3を外部装置として異なるネットワーク上に適用した場合であっても良い。
[Configuration of Web Relay System According to Embodiment 1]
FIG. 1 is a functional block diagram illustrating the configuration of the web relay system 9 according to the first embodiment. As shown in FIG. 1, the web relay system 9 includes a relay device 1, a web browser 2, and a web server 3. The relay device 1 relays communication between the web browser 2 and the web server 3. The web browser 2 is a user terminal such as a personal computer that uses a web service. The web server 3 implements a web service. In the web relay system 9, the web server 3 may be applied to the same network as the relay device 1 and the web browser 2, or the web server 3 may be applied to a different network as an external device. There may be.

[実施例1に係る中継装置の構成]
図2は、本実施例1に係る中継装置の構成を示す機能ブロック図である。図2に示すように、中継装置1は、制御部10および記憶部11を有する。
[Configuration of Relay Device According to Embodiment 1]
FIG. 2 is a functional block diagram illustrating the configuration of the relay device according to the first embodiment. As illustrated in FIG. 2, the relay device 1 includes a control unit 10 and a storage unit 11.

制御部10は、プロキシ部12と、通信抽出部13と、通信再現部14とを有する。プロキシ部12は、ウェブブラウザ2が行う一連の操作に関わる、ウェブブラウザ2およびウェブサーバ3間の通信データを通信履歴として記録する。さらに、プロキシ部12は、リクエスト記録部121と、リクエスト送信部122と、レスポンス送信部123と、レスポンス記録部124とを有する。通信抽出部13は、記録した通信履歴から再現に用いられる通信データを抽出し、抽出した通信データを記録する。さらに、通信抽出部13は、認証状態抽出部131と、画面遷移抽出部132と、再現抽出部133とを有する。通信再現部14は、再現に用いられる通信データを用いて操作を再現する。なお、制御部10は、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)などの集積回路またはCPU(Central Processing Unit)やMPU(Micro Processing Unit)などの電子回路である。   The control unit 10 includes a proxy unit 12, a communication extraction unit 13, and a communication reproduction unit 14. The proxy unit 12 records communication data related to a series of operations performed by the web browser 2 between the web browser 2 and the web server 3 as a communication history. Further, the proxy unit 12 includes a request recording unit 121, a request transmission unit 122, a response transmission unit 123, and a response recording unit 124. The communication extraction unit 13 extracts communication data used for reproduction from the recorded communication history, and records the extracted communication data. Furthermore, the communication extraction unit 13 includes an authentication state extraction unit 131, a screen transition extraction unit 132, and a reproduction extraction unit 133. The communication reproduction unit 14 reproduces an operation using communication data used for reproduction. The control unit 10 is, for example, an integrated circuit such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array) or an electronic circuit such as a CPU (Central Processing Unit) or an MPU (Micro Processing Unit).

記憶部11は、通信記録テーブル111を有する。通信記録テーブル111は、通信履歴を記憶し、最終的に再現に用いられる通信履歴を記憶する。なお、記憶部11は、例えば、RAM(Random Access Memory)、フラッシュメモリ(flash memory)などの半導体メモリ素子、または、ハードディスク、光ディスクなどの記憶装置である。   The storage unit 11 has a communication recording table 111. The communication record table 111 stores a communication history and finally stores a communication history used for reproduction. The storage unit 11 is, for example, a semiconductor memory device such as a RAM (Random Access Memory) or a flash memory, or a storage device such as a hard disk or an optical disk.

リクエスト記録部121は、ウェブブラウザ2から送信されたリクエストデータを順次通信記録テーブル111に記録する。リクエスト送信部122は、ウェブブラウザ2から送信されたリクエストデータをウェブサーバに送信する。   The request recording unit 121 sequentially records request data transmitted from the web browser 2 in the communication recording table 111. The request transmission unit 122 transmits the request data transmitted from the web browser 2 to the web server.

レスポンス記録部124は、ウェブサーバ2から送信されたリクエストデータに対応するレスポンスデータを順次通信記録テーブル111に記録する。レスポンス送信部123は、ウェブサーバ2から送信されたリクエストデータに対応するレスポンスデータをウェブブラウザ2に送信する。   The response recording unit 124 sequentially records response data corresponding to the request data transmitted from the web server 2 in the communication recording table 111. The response transmission unit 123 transmits response data corresponding to the request data transmitted from the web server 2 to the web browser 2.

ここで、通信記録テーブル111のデータ構造について、図3を参照しながら説明する。図3は、通信記録テーブル111のデータ構造の一例を示す図である。図3に示すように、通信記録テーブル111は、識別番号111a毎に、リクエストデータ111bおよびレスポンスデータ111cを対応付けて記憶する。リクエストデータ111bは、ウェブブラウザ2から送信されたリクエストに関するデータを示す。レスポンスデータ111cは、リクエストに対するレスポンスに関わるデータを示す。識別番号111aは、リクエストデータ111bとレスポンスデータ111cとを対応付けた1組の通信履歴を識別する番号を示す。識別番号111aは受信した時間順に割り当てられる。   Here, the data structure of the communication record table 111 will be described with reference to FIG. FIG. 3 is a diagram illustrating an example of the data structure of the communication record table 111. As shown in FIG. 3, the communication record table 111 stores request data 111b and response data 111c in association with each identification number 111a. The request data 111b indicates data related to a request transmitted from the web browser 2. The response data 111c indicates data related to the response to the request. The identification number 111a indicates a number for identifying a set of communication histories in which the request data 111b and the response data 111c are associated with each other. The identification number 111a is assigned in the order received.

一例として、識別番号111aが「1」である場合、リクエストデータ111bとしてログイン画面を取得するリクエストデータ「GET /login HTTP/1.0 Host:sample.com」が記憶されている。レスポンスデータ111cとしてログイン画面を表示するレスポンスデータ「HTTP 1.0 200 OK ・・・<html>ログイン画面・・・</html>」が記憶されている。   As an example, when the identification number 111a is “1”, request data “GET / login HTTP / 1.0 Host: sample.com” for acquiring a login screen is stored as the request data 111b. Response data “HTTP 1.0 200 OK... <Html> login screen... </ Html>” that displays a login screen is stored as response data 111c.

図2に戻って、認証状態抽出部131は、通信記録テーブル111に記憶された通信履歴に基づいて、セッション管理に用いられる情報が存在するレスポンスデータ111cと対応付けられた通信履歴を、操作を再現する通信として抽出する。セッション管理に用いられる情報とは、例えば、Set−Cookieヘッダに設定されたセッションid(identification)を指す。   Returning to FIG. 2, the authentication status extraction unit 131 operates the communication history associated with the response data 111 c in which information used for session management exists based on the communication history stored in the communication record table 111. Extract as communication to reproduce. The information used for session management refers to, for example, a session id (identification) set in the Set-Cookie header.

ここで、セッションidを用いた通信について説明する。セッションidは、ウェブブラウザ2の操作(例えばログインやログアウト)により認証状態が変わったときにウェブサーバ3によって設定される。ウェブサーバ3によってSet−Cookieヘッダに設定されたセッションidがウェブブラウザ2へ送信されると、ウェブブラウザ2は、送信されたセッションidを用いてセッション管理を行う。例えば、ウェブブラウザ2は、送信されたセッションidをCookieヘッダに付加したリクエストデータをウェブサーバ3へ送信する。これにより、ウェブサーバ3側では、送信されたセッションidを用いて認証情報を確認できる。また、ウェブブラウザ2は、セッションidを用いて認証が確認されたログイン画面後の画面にアクセスできる。このため、操作の再現を行うには、セッションidを知り得るCookieヘッダが設定された通信が最低限必要な通信と判断される。仮にSet−Cookieヘッダが設定された通信を省くと、セッションidを知り得ないので、再現結果が変わってしまう。すなわち、操作を省いて再現すると結果が変わってしまう通信が最低限必要な通信と判断される。そこで、認証状態抽出部131は、通信記録テーブル111に記憶された通信履歴に基づいて、Set−Cookieヘッダに設定されたセッションidが存在するレスポンスデータ111cと対応付けられた通信履歴を、操作を再現する通信として抽出する。   Here, communication using the session id will be described. The session id is set by the web server 3 when the authentication state is changed by an operation (for example, login or logout) of the web browser 2. When the session id set in the Set-Cookie header by the web server 3 is transmitted to the web browser 2, the web browser 2 performs session management using the transmitted session id. For example, the web browser 2 transmits request data in which the transmitted session id is added to the Cookie header to the web server 3. Thereby, on the web server 3 side, the authentication information can be confirmed using the transmitted session id. Further, the web browser 2 can access the screen after the login screen in which the authentication is confirmed using the session id. For this reason, in order to reproduce the operation, it is determined that the communication in which the cookie header capable of knowing the session id is set as the minimum necessary communication. If the communication in which the Set-Cookie header is set is omitted, since the session id cannot be known, the reproduction result changes. That is, it is determined that the communication whose result is changed when the operation is reproduced without reproduction is the minimum necessary communication. Therefore, the authentication state extraction unit 131 operates the communication history associated with the response data 111c in which the session id set in the Set-Cookie header exists based on the communication history stored in the communication record table 111. Extract as communication to reproduce.

画面遷移抽出部132は、通信記録テーブル111に記憶された通信履歴に基づいて、ウェブブラウザ2側で表示される画面の遷移を管理するために用いられる情報を辿って得られる一連の通信履歴を抽出する。例えば、HTML文の中に埋め込まれた画像のURLは、省いて再現しても結果に影響がないURLである。そこで、画面遷移抽出部132は、当該URLを含む通信履歴を省き、省いて再現すると結果に影響がある通信履歴を、操作を再現する通信として抽出する。ここで、画面の遷移を管理するために用いられる情報とは、遷移する前の画面のURLを示すレファラー(Referer)を指し、リクエストデータ111bに設定される情報である。   Based on the communication history stored in the communication record table 111, the screen transition extraction unit 132 obtains a series of communication histories obtained by tracing information used to manage screen transitions displayed on the web browser 2 side. Extract. For example, the URL of an image embedded in an HTML sentence is a URL that does not affect the result even if it is omitted and reproduced. Therefore, the screen transition extraction unit 132 omits the communication history including the URL, and extracts the communication history that affects the result if the communication history is omitted and reproduced as communication for reproducing the operation. Here, the information used for managing the transition of the screen refers to a referer indicating the URL of the screen before the transition, and is information set in the request data 111b.

具体的には、画面遷移抽出部132は、再現したい最後の画面に到達するまでの画面遷移を辿って得られる通信履歴を抽出する。画面遷移を辿る方法は、ウェブブラウザ2がリクエストデータのRefererヘッダにRefererを追加することを利用する。これを利用して、画面遷移抽出部132は、再現したい最後の画面にアクセスした通信履歴からRefererヘッダのURLを参照し、その前にアクセスした画面の通信を特定していくことで、一連の画面遷移を辿る。一例として、画面遷移抽出部132は、リクエストデータに設定されたRefererを参照し、該リクエストデータ以前のリクエストデータのうち、リクエスト先のURLが参照したRefererと等値であるリクエストデータを選択する。そして、画面遷移抽出部132は、選択したリクエストデータに対応付けられた通信履歴を抽出する。   Specifically, the screen transition extraction unit 132 extracts a communication history obtained by following screen transitions until reaching the last screen to be reproduced. The method of following the screen transition uses that the web browser 2 adds a Referer to the Referer header of the request data. By using this, the screen transition extraction unit 132 refers to the URL of the Referer header from the communication history of accessing the last screen to be reproduced, and specifies the communication of the screen accessed before that, so that a series of Follow screen transitions. As an example, the screen transition extraction unit 132 refers to the Referer set in the request data, and selects request data that is equivalent to the Referer referred to by the request destination URL from among the request data before the request data. Then, the screen transition extraction unit 132 extracts a communication history associated with the selected request data.

再現抽出部133は、認証状態抽出部131によって抽出された通信履歴および画面遷移抽出部132によって抽出された通信履歴を、操作を再現する通信として順序を保持したまま抽出する。例えば、再現抽出部133は、認証状態抽出部131によって抽出された通信履歴と画面遷移抽出部132によって抽出された通信履歴の和集合をとる。そして、再現抽出部133は、通信記録テーブル111に記憶された通信履歴のうち和集合以外の通信履歴を不要な通信として削除し、再現に不要な通信を省いた通信履歴を抽出する。   The reproduction extraction unit 133 extracts the communication history extracted by the authentication state extraction unit 131 and the communication history extracted by the screen transition extraction unit 132 while maintaining the order as communication for reproducing the operation. For example, the reproduction extraction unit 133 takes the union of the communication history extracted by the authentication state extraction unit 131 and the communication history extracted by the screen transition extraction unit 132. Then, the reproduction extraction unit 133 deletes communication histories other than the union from communication histories stored in the communication record table 111 as unnecessary communication, and extracts communication histories that omit communication unnecessary for reproduction.

通信再現部14は、通信記録テーブル111に記憶された通信履歴を用いて、操作を再現する。例えば、通信再現部14は、再現抽出部133によって不要な通信が削除された通信記録テーブル111から通信履歴を読み出し、読み出した通信履歴を用いて、操作を再現する。   The communication reproduction unit 14 reproduces the operation using the communication history stored in the communication record table 111. For example, the communication reproduction unit 14 reads a communication history from the communication record table 111 from which unnecessary communication has been deleted by the reproduction extraction unit 133, and reproduces an operation using the read communication history.

[認証状態抽出処理の手順]
次に、認証状態抽出部131による認証状態抽出処理の手順について、図4を参照して説明する。図4は、実施例1に係る認証状態抽出処理の手順を示すフローチャートである。なお、ウェブブラウザ2が行った一連の操作について、通信記録テーブル111に通信履歴が記録されているものとする。
[Authentication status extraction process]
Next, the procedure of the authentication status extraction process by the authentication status extraction unit 131 will be described with reference to FIG. FIG. 4 is a flowchart illustrating the procedure of the authentication state extraction process according to the first embodiment. It is assumed that a communication history is recorded in the communication record table 111 for a series of operations performed by the web browser 2.

まず、認証状態抽出部131は、通信記録テーブル111から通信履歴の配列R[n]を取得する(ステップS11)。ここでは、nは再現を所望する画面までの通信履歴の個数を指す。そして、認証状態抽出部131は、出力用の通信履歴の集合Sを用意する(ステップS12)。   First, the authentication state extraction unit 131 acquires the communication history array R [n] from the communication record table 111 (step S11). Here, n indicates the number of communication histories up to the screen desired to be reproduced. Then, the authentication state extraction unit 131 prepares a set S of output communication histories (step S12).

続いて、認証状態抽出部131は、配列の添え字を示すインデックスiに初期値0を設定する(ステップS13)。そして、認証状態抽出部131は、変数rに通信履歴の配列R[i]を設定する(ステップS14)。   Subsequently, the authentication state extraction unit 131 sets an initial value 0 to the index i indicating the subscript of the array (step S13). Then, the authentication status extraction unit 131 sets the communication history array R [i] in the variable r (step S14).

そして、認証状態抽出部131は、変数rに設定された通信履歴のレスポンスデータにSet−Cookieヘッダがあるか否かを判定する(ステップS15)。Set−Cookieヘッダがあると判定した場合(ステップS15;Yes)、認証状態抽出部131は、操作を再現する通信として、集合Sに変数rを追加する(ステップS16)。すなわち、Set−Cookieヘッダがレスポンスデータにある場合には、ウェブブラウザ2の操作により認証状態が変わったことを意味する。したがって、認証状態抽出部131は、Set−Cookieヘッダがある通信を、操作を再現する通信として抽出する。   Then, the authentication state extraction unit 131 determines whether or not there is a Set-Cookie header in the response data of the communication history set in the variable r (step S15). If it is determined that there is a Set-Cookie header (step S15; Yes), the authentication state extraction unit 131 adds a variable r to the set S as communication for reproducing the operation (step S16). That is, when the Set-Cookie header is included in the response data, it means that the authentication state has been changed by the operation of the web browser 2. Therefore, the authentication state extraction unit 131 extracts communication having the Set-Cookie header as communication that reproduces the operation.

一方、Set−Cookieヘッダがないと判定した場合(ステップS15;No)、認証状態抽出部131は、ステップS17に移行する。そして、認証状態抽出部131は、インデックスiに1を加算する(ステップS17)。   On the other hand, when it determines with there being no Set-Cookie header (step S15; No), the authentication state extraction part 131 transfers to step S17. Then, the authentication state extraction unit 131 adds 1 to the index i (step S17).

続いて、認証状態抽出部131は、インデックスiがn−1より大きいか否かを判定する(ステップS18)。インデックスiがn−1より大きくないと判定した場合(ステップS18;No)、認証状態抽出部131は、次の通信履歴を判定すべく、ステップS14に移行する。一方、インデックスiがn−1より大きいと判定した場合(ステップS18;Yes)、認証状態抽出部131は、集合Sを再現抽出部133に出力する(ステップS19)。そして、認証状態抽出部131は、処理を終了する。   Subsequently, the authentication state extraction unit 131 determines whether or not the index i is larger than n−1 (step S18). When it determines with the index i not being larger than n-1 (step S18; No), the authentication state extraction part 131 transfers to step S14 in order to determine the next communication history. On the other hand, when it determines with the index i being larger than n-1 (step S18; Yes), the authentication state extraction part 131 outputs the set S to the reproduction extraction part 133 (step S19). Then, the authentication state extraction unit 131 ends the process.

[画面遷移抽出処理の手順]
次に、画面遷移抽出部132による画面遷移抽出処理の手順について、図5を参照して説明する。図5は、実施例1に係る画面遷移抽出処理の手順を示すフローチャートである。なお、ウェブブラウザ2が行った一連の操作について、通信記録テーブル111に通信履歴が記録されているものとする。
[Screen transition extraction procedure]
Next, a procedure of screen transition extraction processing by the screen transition extraction unit 132 will be described with reference to FIG. FIG. 5 is a flowchart illustrating the procedure of the screen transition extraction process according to the first embodiment. It is assumed that a communication history is recorded in the communication record table 111 for a series of operations performed by the web browser 2.

まず、画面遷移抽出部132は、通信記録テーブル111から通信履歴の配列R[n]を取得する(ステップS21)。ここでは、nは再現を所望する画面までの通信履歴の個数を指す。そして、画面遷移抽出部132は、出力用の通信履歴の集合Tを用意する(ステップS22)。   First, the screen transition extraction unit 132 acquires the communication history array R [n] from the communication record table 111 (step S21). Here, n indicates the number of communication histories up to the screen desired to be reproduced. Then, the screen transition extraction unit 132 prepares an output communication history set T (step S22).

続いて、画面遷移抽出部132は、最後にアクセスした通信履歴の配列R[n]を変数tに設定する(ステップS23)。そして、画面遷移抽出部132は、配列の添え字を示すインデックスiに最後から1つ前の通信履歴の添え字n−1を設定する(ステップS24)。そして、画面遷移抽出部132は、変数rに通信履歴の配列R[i]を設定する(ステップS25)。   Subsequently, the screen transition extraction unit 132 sets the array R [n] of the communication history accessed last to the variable t (step S23). Then, the screen transition extraction unit 132 sets the last communication history subscript n-1 to the index i indicating the subscript of the array (step S24). The screen transition extraction unit 132 sets the communication history array R [i] in the variable r (step S25).

そして、画面遷移抽出部132は、変数tのRefererヘッダの値と変数rのリクエスト先のURLが等値であるか否かを判定する(ステップS26)。変数tのRefererヘッダの値と変数rのリクエスト先のURLが等値であると判定した場合(ステップS26;Yes)、画面遷移抽出部132は、集合Tに変数rを追加する(ステップS27)。すなわち、変数tのRefererヘッダの値と変数rのリクエスト先のURLが等値である場合には、変数rの通信によって表示された画面から変数tの通信によって表示された画面に遷移したことを意味する。したがって、画面遷移抽出部132は、変数rの通信を、操作を再現する通信履歴として抽出する。   Then, the screen transition extraction unit 132 determines whether or not the value of the Refer header of the variable t and the request destination URL of the variable r are equal (step S26). When it is determined that the Referrer header value of the variable t and the request destination URL of the variable r are equal (step S26; Yes), the screen transition extraction unit 132 adds the variable r to the set T (step S27). . That is, when the value of the Referer header of the variable t and the request destination URL of the variable r are equal, the transition from the screen displayed by the communication of the variable r to the screen displayed by the communication of the variable t means. Therefore, the screen transition extraction unit 132 extracts the communication of the variable r as a communication history that reproduces the operation.

そして、画面遷移抽出部132は、変数tを変数rに更新する(ステップS28)。すなわち、画面遷移抽出部132は、さらに、変数rの通信履歴から画面遷移を辿るべく、最後にアクセスした通信履歴を指す変数tを変数rに更新する。   Then, the screen transition extraction unit 132 updates the variable t to the variable r (Step S28). That is, the screen transition extraction unit 132 further updates the variable t indicating the communication history accessed last to the variable r so as to trace the screen transition from the communication history of the variable r.

一方、変数tのRefererヘッダの値と変数rのリクエスト先のURLが等値でないと判定した場合(ステップS26;No)、画面遷移抽出部132は、ステップS29に移行する。そして、画面遷移抽出部132は、インデックスiから1を減算する(ステップS29)。   On the other hand, when it is determined that the value of the Referer header of the variable t and the request destination URL of the variable r are not equal (step S26; No), the screen transition extraction unit 132 proceeds to step S29. Then, the screen transition extraction unit 132 subtracts 1 from the index i (step S29).

続いて、画面遷移抽出部132は、インデックスiが0より小さいか否かを判定する(ステップS30)。インデックスiが0より小さくないと判定した場合(ステップS30;No)、画面遷移抽出部132は、次の通信履歴を判定すべく、ステップS25に移行する。一方、インデックスiが0より小さいと判定した場合(ステップS30;Yes)、画面遷移抽出部132は、集合Tを再現抽出部133に出力する(ステップS31)。そして、画面遷移抽出部132は、処理を終了する。   Subsequently, the screen transition extraction unit 132 determines whether the index i is smaller than 0 (step S30). If it is determined that the index i is not smaller than 0 (step S30; No), the screen transition extraction unit 132 proceeds to step S25 to determine the next communication history. On the other hand, when it is determined that the index i is smaller than 0 (step S30; Yes), the screen transition extraction unit 132 outputs the set T to the reproduction extraction unit 133 (step S31). Then, the screen transition extraction unit 132 ends the process.

[再現抽出処理の手順]
次に、再現抽出部133による再現抽出処理の手順について、図6を参照して説明する。図6は、実施例1に係る再現抽出処理の手順を示すフローチャートである。なお、ウェブブラウザ2が行った一連の操作について、通信記録テーブル111に通信履歴が記録されているものとする。
[Reproduction extraction procedure]
Next, the procedure of the reproduction extraction process by the reproduction extraction unit 133 will be described with reference to FIG. FIG. 6 is a flowchart illustrating the procedure of the reproduction extraction process according to the first embodiment. It is assumed that a communication history is recorded in the communication record table 111 for a series of operations performed by the web browser 2.

再現抽出部133は、認証状態抽出部131により抽出された通信の集合Sと画面遷移抽出部132により抽出された通信の集合Tを取得する。さらに、再現抽出部133は、通信記録テーブル111から通信履歴の配列R[n]を取得する(ステップS41)。ここでは、nは再現を所望する画面までの通信履歴の個数を指す。   The reproduction extraction unit 133 acquires the communication set S extracted by the authentication state extraction unit 131 and the communication set T extracted by the screen transition extraction unit 132. Furthermore, the reproduction extraction unit 133 acquires the communication history array R [n] from the communication record table 111 (step S41). Here, n indicates the number of communication histories up to the screen desired to be reproduced.

そして、再現抽出部133は、配列の添え字を示すインデックスiに初期値0を設定する(ステップS42)。そして、再現抽出部133は、変数rに通信履歴の配列R[i]を設定する(ステップS43)。   Then, the reproduction extraction unit 133 sets an initial value 0 to the index i indicating the array subscript (step S42). Then, the reproduction extraction unit 133 sets the communication history array R [i] in the variable r (step S43).

続いて、再現抽出部133は、変数rに設定された通信履歴が集合Sと集合Tの和集合に含まれるか否かを判定する(ステップS44)。通信履歴が集合Sと集合Tの和集合に含まれないと判定した場合(ステップS44;No)、再現抽出部133は、変数rの通信履歴を配列Rから削除する(ステップS45)。すなわち、再現抽出部133は、通信履歴テーブル111に記憶された通信履歴のうち、集合Sと集合Tの和集合に含まれない通信履歴を再現に不要な通信履歴とする。   Subsequently, the reproduction extraction unit 133 determines whether or not the communication history set in the variable r is included in the union of the set S and the set T (step S44). When it is determined that the communication history is not included in the union of the set S and the set T (step S44; No), the reproduction extraction unit 133 deletes the communication history of the variable r from the array R (step S45). That is, the reproduction extraction unit 133 sets communication histories that are not included in the union of the set S and the set T among the communication histories stored in the communication history table 111 as communication histories unnecessary for reproduction.

一方、通信履歴が集合Sと集合Tの和集合に含まれると判定した場合(ステップS44;Yes)、再現抽出部133は、インデックスiを加算すべく、ステップS46に移行する。そして、再現抽出部133は、インデックスiに1を加算する(ステップS46)。   On the other hand, when it is determined that the communication history is included in the union of the set S and the set T (step S44; Yes), the reproduction extraction unit 133 proceeds to step S46 to add the index i. Then, the reproduction extraction unit 133 adds 1 to the index i (step S46).

続いて、再現抽出部133は、インデックスiがn−1より大きいか否かを判定する(ステップS47)。インデックスiがn−1より大きくないと判定した場合(ステップS47;No)、再現抽出部133は、次の通信履歴を判定すべく、ステップS43に移行する。一方、インデックスiがn−1より大きいと判定した場合(ステップS47;Yes)、再現抽出部133は、通信履歴Rを通信記録テーブル111に反映する(ステップS48)。そして、再現抽出部133は、処理を終了する。   Subsequently, the reproduction extraction unit 133 determines whether or not the index i is larger than n−1 (step S47). If it is determined that the index i is not greater than n−1 (step S47; No), the reproduction extraction unit 133 proceeds to step S43 to determine the next communication history. On the other hand, when it is determined that the index i is greater than n−1 (step S47; Yes), the reproduction extraction unit 133 reflects the communication history R in the communication record table 111 (step S48). Then, the reproduction extraction unit 133 ends the process.

[通信記録の具体例]
次に、通信記録の具体例を、図7を参照して説明する。図7は、通信記録の具体例を示す図である。図7に示すように、通信記録は、識別番号毎にリクエストデータとレスポンスデータとを対応付けて記憶されている。識別番号が大きい程、通信記録の時間が新しいことを意味する。
[Specific examples of communication records]
Next, a specific example of communication recording will be described with reference to FIG. FIG. 7 is a diagram illustrating a specific example of the communication record. As shown in FIG. 7, the communication record stores request data and response data in association with each identification number. The larger the identification number, the newer the communication recording time.

[画面遷移の具体例]
次に、図7で示した各通信履歴に対応した各画面の遷移について、図8を参照して説明する。図8は、ウェブブラウザ2に表示される画面遷移の具体例を示す図である。図8に示すように、ウェブブラウザ2は、ウェブサーバ3との間で識別番号1に対応付けられる通信を行った後、ログイン画面A1を表示する。次に、ウェブブラウザ2は、ウェブサーバ3との間で識別番号2に対応付けられる通信を行った後、ログイン画面A1上に「logo.gif」の画像a1を表示する。さらに、ウェブブラウザ2は、ウェブサーバ3との間で識別番号2に対応付けられる通信を行った後、ログイン画面A1上に「info.html」の画面a2を表示する。次に、利用者がログイン画面A1上の「login」を押下し、ウェブブラウザ2が、ウェブサーバ3との間で識別番号4に対応付けられる通信を行った後、ログイン後のトップページ画面A2を表示する。次に、ウェブブラウザ2は、ウェブサーバ3との間で識別番号5に対応付けられる通信を行った後、ログイン後のトップページ画面A2上に「logo2.gif」の画像a3を表示する。さらに、利用者が「設定」を押下し、ウェブブラウザ2が、ウェブサーバ3との間で識別番号6に対応付けられる通信を行った後、設定情報ページA3を表示する。
[Specific example of screen transition]
Next, transition of each screen corresponding to each communication history shown in FIG. 7 will be described with reference to FIG. FIG. 8 is a diagram illustrating a specific example of the screen transition displayed on the web browser 2. As illustrated in FIG. 8, the web browser 2 displays a login screen A <b> 1 after performing communication associated with the identification number 1 with the web server 3. Next, the web browser 2 performs communication associated with the identification number 2 with the web server 3 and then displays the image “a1” of “logo.gif” on the login screen A1. Further, the web browser 2 performs communication associated with the identification number 2 with the web server 3 and then displays a screen “a2” of “info.html” on the login screen A1. Next, after the user presses “login” on the login screen A1 and the web browser 2 performs communication associated with the identification number 4 with the web server 3, the top page screen A2 after login is displayed. Is displayed. Next, after performing communication associated with the identification number 5 with the web server 3, the web browser 2 displays the image a3 of “logo2.gif” on the top page screen A2 after login. Further, after the user presses “Setting” and the web browser 2 performs communication associated with the identification number 6 with the web server 3, the setting information page A3 is displayed.

[認証状態抽出処理の具体例]
次に、図7で示した各通信履歴を用いた認証状態抽出処理について、図9を参照して説明する。図9は、認証状態抽出処理の具体例を示す図である。図9に示すように、識別番号4および識別番号6のレスポンスデータにSet−Cookieヘッダが設定されている。
[Specific example of authentication status extraction processing]
Next, authentication status extraction processing using each communication history shown in FIG. 7 will be described with reference to FIG. FIG. 9 is a diagram illustrating a specific example of the authentication state extraction process. As shown in FIG. 9, the Set-Cookie header is set in the response data of the identification numbers 4 and 6.

認証状態抽出部131は、識別番号1から順に、識別番号に対応付けられたレスポンスデータにSet−Cookieヘッダがあるか否かを判定する。ここでは、認証状態抽出部131は、識別番号4に対応付けられたレスポンスデータにSet−Cookieヘッダb1があると判定する。そして、認証状態抽出部131は、識別番号4に対応する通信履歴を抽出する。すなわち、識別番号4では、ウェブブラウザ2の「ログイン」の操作により認証状態が変わったので、認証状態抽出部131は、操作を再現する通信として識別番号4に対応する通信履歴を抽出する。さらに、認証状態抽出部131は、識別番号6に対応付けられたレスポンスデータにSet−Cookieヘッダb2があると判定する。そして、認証状態抽出部131は、識別番号6に対応する通信履歴を抽出する。すなわち、識別番号6では、ウェブブラウザ2の「設定」の押下により認証状態が変わったので、認証状態抽出部131は、操作を再現する通信として識別番号6に対応する通信履歴を抽出する。   The authentication status extraction unit 131 determines in order from the identification number 1 whether or not the response data associated with the identification number includes a Set-Cookie header. Here, the authentication state extraction unit 131 determines that the response data associated with the identification number 4 includes the Set-Cookie header b1. Then, the authentication state extraction unit 131 extracts a communication history corresponding to the identification number 4. That is, at the identification number 4, since the authentication state has changed due to the “login” operation of the web browser 2, the authentication state extraction unit 131 extracts the communication history corresponding to the identification number 4 as communication for reproducing the operation. Furthermore, the authentication status extraction unit 131 determines that the response data associated with the identification number 6 includes the Set-Cookie header b2. Then, the authentication state extraction unit 131 extracts a communication history corresponding to the identification number 6. That is, at the identification number 6, since the authentication state has been changed by pressing “Setting” of the web browser 2, the authentication state extraction unit 131 extracts the communication history corresponding to the identification number 6 as communication for reproducing the operation.

このようにして、認証状態抽出部131は、セッション管理に用いられるセッションidが設定された通信を、操作を再現する通信として抽出する。ここでは、認証状態抽出部131は、識別番号4、6の通信履歴を、操作を再現する通信として抽出する。   In this way, the authentication state extraction unit 131 extracts communication in which a session id used for session management is set as communication that reproduces an operation. Here, the authentication state extraction unit 131 extracts the communication history of the identification numbers 4 and 6 as communication for reproducing the operation.

[画面遷移抽出処理の具体例]
次に、図7で示した各通信履歴を用いた画面遷移抽出処理について、図10を参照して説明する。図10は、画面遷移抽出処理の具体例を示す図である。図10に示すように、画面遷移抽出部132は、最後の通信履歴に設定されたRefererを参照し、最後の通信履歴から通信履歴を遡って、リクエスト先のURLが、参照したRefererの値と等値である通信履歴を抽出する。ここでは、識別番号6の通信履歴が、最後の通信履歴であり、識別番号6のリクエストデータに設定されたRefererは、「http://sample.com/top」c1である。
[Specific example of screen transition extraction processing]
Next, the screen transition extraction process using each communication history shown in FIG. 7 will be described with reference to FIG. FIG. 10 is a diagram illustrating a specific example of the screen transition extraction process. As illustrated in FIG. 10, the screen transition extraction unit 132 refers to the Referer set in the last communication history, traces the communication history from the last communication history, and the request destination URL is the value of the referred Referer. Extract communication history that is equivalent. Here, the communication history with the identification number 6 is the last communication history, and the Referer set in the request data with the identification number 6 is “http://sample.com/top” c1.

すると、画面遷移抽出部132は、識別番号6のリクエストデータに設定されたRefererを参照し、リクエスト先のURLが参照したRefererの値と等値である通信履歴として識別番号4の通信履歴を抽出する。識別番号4のリクエスト先のURLは、ドメインを示す「sample.com」c3とパスを示す「/top」c2とから「sample.com/top」であるので、識別番号6のリクエストデータに設定されたRefererと等値である。したがって、画面遷移抽出部132は、識別番号4の通信履歴を、操作を再現する通信として抽出する。なお、識別番号5のリクエスト先のURLは、「sample.com/logo2.gif」であるので、識別番号6のリクエストデータに設定されたRefererと等値でないので、操作を再現する通信として不要な通信であり抽出しない。   Then, the screen transition extraction unit 132 refers to the Referer set in the request data with the identification number 6, and extracts the communication history with the identification number 4 as the communication history that is equal to the value of the Referer referred to by the request destination URL. To do. The request destination URL of the identification number 4 is “sample.com/top” from the “sample.com” c3 indicating the domain and the “/ top” c2 indicating the path, and is therefore set in the request data of the identification number 6. Equivalent to Referer. Therefore, the screen transition extraction unit 132 extracts the communication history with the identification number 4 as communication for reproducing the operation. Since the URL of the request destination with the identification number 5 is “sample.com/logo2.gif”, it is not equivalent to the Referer set in the request data with the identification number 6, and is unnecessary as communication for reproducing the operation. Communication is not extracted.

さらに、画面遷移抽出部132は、識別番号4の通信履歴に設定されたRefererを参照し、識別番号4の通信履歴から通信履歴を遡って、リクエスト先のURLが参照したRefererの値と等値である通信履歴を抽出する。ここでは、識別番号4のリクエストデータに設定されたRefererは、「http://sample.com/login」c4である。   Further, the screen transition extraction unit 132 refers to the Referer set in the communication history with the identification number 4, traces back the communication history from the communication history with the identification number 4, and is equal to the value of the Referer referred to by the request destination URL. The communication history that is is extracted. Here, the Referer set in the request data with the identification number 4 is “http://sample.com/login” c4.

すると、画面遷移抽出部132は、識別番号4のリクエストデータに設定されたRefererを参照し、リクエスト先のURLが参照したRefererの値と等値である通信履歴として識別番号1の通信履歴を抽出する。識別番号1のリクエスト先のURLは、ドメインを示す「sample.com」c6とパスを示す「/login」c5とから「sample.com/login」であるので、識別番号4のリクエストデータに設定されたRefererと等値である。したがって、画面遷移抽出部132は、識別番号1の通信履歴を、操作を再現する通信として抽出する。なお、識別番号2、3のリクエスト先のURLは、識別番号6のリクエストデータに設定されたRefererと等値でないので、操作を再現する通信として不要な通信であり抽出しない。   Then, the screen transition extraction unit 132 refers to the Referer set in the request data with the identification number 4, and extracts the communication history with the identification number 1 as the communication history that is equal to the value of the Referrer referred to by the request destination URL. To do. Since the request destination URL of the identification number 1 is “sample.com/login” from “sample.com” c6 indicating the domain and “/ login” c5 indicating the path, it is set in the request data of the identification number 4. Equivalent to Referer. Accordingly, the screen transition extraction unit 132 extracts the communication history with the identification number 1 as communication for reproducing the operation. Note that the request destination URLs with the identification numbers 2 and 3 are not equivalent to the Referer set in the request data with the identification number 6, and are unnecessary communications as communications for reproducing the operation and are not extracted.

このようにして、画面遷移抽出部132は、最後の通信履歴のRefererから前の通信履歴を辿って得られる一連の通信を、操作を再現する通信として抽出する。ここでは、画面遷移抽出部132は、識別番号1、4、6の通信履歴を、操作を再現する通信として抽出する。   In this way, the screen transition extraction unit 132 extracts a series of communications obtained by tracing the previous communication history from the last communication history Referer as communications that reproduce the operation. Here, the screen transition extraction unit 132 extracts the communication history of the identification numbers 1, 4, and 6 as communication for reproducing the operation.

[再現抽出処理の具体例]
次に、図7で示した各通信履歴を用いた再現抽出処理について、図11を参照して説明する。図11は、再現抽出処理の具体例を示す図である。
[Specific example of reproduction extraction processing]
Next, the reproduction extraction process using each communication history shown in FIG. 7 will be described with reference to FIG. FIG. 11 is a diagram illustrating a specific example of the reproduction extraction process.

再現抽出部133は、認証状態抽出部131によって抽出された通信履歴と画面遷移抽出部132によって抽出された通信履歴の和集合をとる。ここでは、認証状態抽出部131によって抽出された通信履歴が、識別番号4、6の各通信履歴である。画面遷移抽出部132によって抽出された通信履歴が、識別番号1、4、6の各通信履歴である。したがって、再現抽出部133は、識別番号1、4、6の各通信履歴を、通信履歴の和集合とする。そして、再現抽出部133は、通信記録テーブル111に記憶された通信履歴のうち和集合以外の通信履歴を削除し、再現に不要な通信を省いた通信履歴を抽出する。ここでは、再現抽出部133は、識別番号2、3、5の通信履歴を削除し、再現に不要な通信を省いた識別番号1、4、6の各通信履歴を抽出する。   The reproduction extraction unit 133 takes the union of the communication history extracted by the authentication state extraction unit 131 and the communication history extracted by the screen transition extraction unit 132. Here, the communication histories extracted by the authentication state extraction unit 131 are the communication histories of the identification numbers 4 and 6. The communication histories extracted by the screen transition extraction unit 132 are the communication histories of the identification numbers 1, 4, and 6. Therefore, the reproduction extraction unit 133 sets each communication history with the identification numbers 1, 4, and 6 as a union of communication histories. Then, the reproduction extraction unit 133 deletes communication histories other than the union from the communication histories stored in the communication record table 111, and extracts communication histories that omit communication unnecessary for reproduction. Here, the reproduction extraction unit 133 deletes the communication histories of the identification numbers 2, 3, and 5, and extracts the communication histories of the identification numbers 1, 4, and 6 that omit communication unnecessary for reproduction.

このようにして、再現抽出部133は、認証状態抽出部131によって抽出された通信履歴と画面遷移抽出部132によって抽出された通信履歴の和集合を、操作を再現する通信として抽出する。ここでは、再現抽出部133は、識別番号1、4、6の通信履歴を、操作を再現する通信として抽出する。   In this way, the reproduction extraction unit 133 extracts the union of the communication history extracted by the authentication state extraction unit 131 and the communication history extracted by the screen transition extraction unit 132 as communication for reproducing the operation. Here, the reproduction extraction unit 133 extracts the communication history of the identification numbers 1, 4, and 6 as communication for reproducing the operation.

[通信再現処理の具体例]
次に、図11で抽出された各通信履歴を用いた通信再現処理について、図12を参照して説明する。図12は、通信再現処理の具体例を示す図である。なお、通信再現処理は、通信履歴を用いて操作を再現する際、最後の通信履歴に対応するレスポンス以外レスポンスをウェブブラウザ2に戻さない。したがって、実際に、ウェブブラウザ2が、最後から1つ前の通信履歴までのレスポンスを用いて画面を表示することはない。しかしながら、図12では、説明の便宜上、仮にウェブブラウザ2にレスポンスを戻すとした場合に、ウェブブラウザ2側で表示する画面を利用して、通信再現処理を説明するものとする。
[Specific example of communication reproduction processing]
Next, communication reproduction processing using each communication history extracted in FIG. 11 will be described with reference to FIG. FIG. 12 is a diagram illustrating a specific example of the communication reproduction process. The communication reproduction process does not return any response other than the response corresponding to the last communication history to the web browser 2 when reproducing the operation using the communication history. Therefore, the web browser 2 does not actually display the screen using the response from the last to the previous communication history. However, in FIG. 12, for convenience of explanation, when a response is returned to the web browser 2, the communication reproduction process is described using a screen displayed on the web browser 2 side.

通信再現部14は、再現抽出部133によって不要な通信が削除された通信記録テーブル111から通信履歴を読み出し、読み出した通信履歴を用いて、操作を再現する。具体的には、通信再現部14は、識別番号1に対応付けられる通信履歴を用いて通信を再現する。ここで、仮にウェブブラウザ2にレスポンスが戻った場合、ウェブブラウザ2は、ログイン画面A1を表示することになる。次に、通信再現部14は、識別番号4に対応付けられる通信履歴を用いて通信を再現する。ここで、仮にウェブブラウザ2にレスポンスが戻った場合、ウェブブラウザ2は、ログイン後のトップページA2を表示することになる。つまり、「logo.gif」の画像が表示される、識別番号2に対応付けられる通信および「info.html」の画面が表示される、識別番号3に対応付けられる通信が排除されているが、これらの通信が省かれても、再現結果が変わらず、ログイン後のトップページA2が表示される。さらに、通信再現部14は、識別番号6に対応付けられる最後の通信履歴を用いて通信を再現する。ここで、ウェブブラウザ2にレスポンスが戻ると、ウェブブラウザ2は、設定情報ページA3を表示する。つまり、「logo2.gif」の画像が表示される、識別番号5に対応付けられる通信が排除されているが、この通信が省かれても、再現結果が変わらず、設定情報ページA3が表示される。   The communication reproduction unit 14 reads the communication history from the communication record table 111 from which unnecessary communication has been deleted by the reproduction extraction unit 133, and reproduces the operation using the read communication history. Specifically, the communication reproduction unit 14 reproduces communication using a communication history associated with the identification number 1. Here, if the response is returned to the web browser 2, the web browser 2 displays the login screen A1. Next, the communication reproduction unit 14 reproduces communication using the communication history associated with the identification number 4. Here, if a response is returned to the web browser 2, the web browser 2 displays the top page A2 after login. That is, the communication associated with the identification number 2 that displays the image of “logo.gif” and the communication associated with the identification number 3 that displays the screen of “info.html” are excluded. Even if these communications are omitted, the reproduction result does not change, and the top page A2 after login is displayed. Further, the communication reproduction unit 14 reproduces the communication using the last communication history associated with the identification number 6. Here, when the response is returned to the web browser 2, the web browser 2 displays the setting information page A3. That is, the communication associated with the identification number 5 in which the image “logo2.gif” is displayed is excluded, but even if this communication is omitted, the reproduction result does not change and the setting information page A3 is displayed. The

このようにして、通信再現部14は、通信履歴を用いて操作を再現する際に、操作を省くと再現結果が変わってしまう通信を再現する。言い換えると、通信再現部14は、操作を省いて再現すると再現結果が変わってしまう通信以外は再現しないようにする。これにより、通信再現部14は、通信履歴を全て使用して再現する場合と比較して、高速に再現することが可能となる。   In this way, when reproducing the operation using the communication history, the communication reproduction unit 14 reproduces communication in which the reproduction result changes if the operation is omitted. In other words, the communication reproduction unit 14 does not reproduce any communication other than the communication whose reproduction result is changed when the operation is reproduced without reproduction. Thereby, the communication reproduction part 14 can reproduce at high speed compared with the case where it reproduces using all the communication histories.

[実施例1の効果]
上記実施例1によれば、認証状態抽出部131は、通信記録テーブル111に記憶された通信履歴に基づいて、セッション管理に用いられるSet−Cookieヘッダが存在するレスポンスデータと対応付けられた通信履歴を抽出する。また、画面遷移抽出部132は、通信記録テーブル111に記憶された通信履歴に基づいて、リクエストデータに含まれる情報であってウェブブラウザ2側で表示される画面の遷移を管理するために用いられるRefererヘッダを辿って得られる一連の通信履歴を抽出する。そして、通信再現部14は、認証状態抽出部131によって抽出された通信履歴および画面遷移抽出部132によって抽出された通信履歴の和集合を用いて、操作を再現する。かかる構成によれば、中継装置1は、操作を省いて再現すると再現結果に影響がある通信履歴、すなわち、レスポンスデータにSet−Cookieヘッダが存在する通信履歴を抽出する。また、中継装置1は、HTML文の中に再現結果に影響がないURLを含む通信履歴を省くように、リクエストデータのRefererヘッダを辿って得られる一連の通信履歴を抽出する。これにより、中継装置1は、操作を再現する際、操作を省いても再現結果に影響がない通信履歴を省くので、高速に再現処理を行うことができる。
[Effect of Example 1]
According to the first embodiment, the authentication state extraction unit 131, based on the communication history stored in the communication record table 111, the communication history associated with the response data including the Set-Cookie header used for session management. To extract. The screen transition extraction unit 132 is used to manage screen transitions that are information included in the request data and displayed on the web browser 2 side based on the communication history stored in the communication record table 111. A series of communication histories obtained by tracing the Referer header is extracted. Then, the communication reproduction unit 14 reproduces the operation using the union of the communication history extracted by the authentication state extraction unit 131 and the communication history extracted by the screen transition extraction unit 132. According to such a configuration, the relay device 1 extracts a communication history that has an effect on the reproduction result if the reproduction is performed without an operation, that is, a communication history in which the Set-Cookie header is present in the response data. Further, the relay device 1 extracts a series of communication histories obtained by tracing the Referer header of the request data so as to omit a communication history including a URL that does not affect the reproduction result in the HTML sentence. Thereby, when reproducing the operation, the relay device 1 omits the communication history that does not affect the reproduction result even if the operation is omitted, so that the reproduction process can be performed at high speed.

ところで、実施例1に係る中継装置1では、再現結果に影響がない通信履歴として、例えばHTML文の中に埋め込まれた画像のURLを含む通信履歴を、操作を省く通信として排除するようにした。しかしながら、中継装置1は、これに限定されず、再現結果に影響がない通信履歴として、さらに、小画面の構成を記述するだけの親画面の通信履歴を、操作を省く通信として排除するようにしても良い。そこで、実施例2では、再現結果に影響がない通信履歴として、小画面の構成を記述するだけの親画面の通信履歴を、操作を省く通信として排除する中継装置1Aについて説明する。   By the way, in the relay apparatus 1 according to the first embodiment, as a communication history that does not affect the reproduction result, for example, a communication history including an image URL embedded in an HTML sentence is excluded as a communication that omits an operation. . However, the relay device 1 is not limited to this, and excludes the communication history of the parent screen that only describes the configuration of the small screen as the communication history that does not affect the reproduction result as the communication that omits the operation. May be. Therefore, in the second embodiment, a relay device 1A that excludes the communication history of the parent screen that only describes the configuration of the small screen as the communication history that does not affect the reproduction result as communication that omits the operation will be described.

[実施例2に係る中継装置の構成]
図13は、実施例2に係る中継装置の構成を示す機能ブロック図である。なお、図2に示す中継装置1と同一の構成については同一符号を示すことで、その重複する構成および動作の説明については省略する。実施例1と実施例2とが異なるところは、通信抽出部13に小画面抽出部201を追加した点にある。また、実施例1と実施例2とが異なるところは、再現抽出部133を再現抽出部133Aに変更した点にある。
[Configuration of Relay Device According to Second Embodiment]
FIG. 13 is a functional block diagram illustrating the configuration of the relay device according to the second embodiment. In addition, about the same structure as the relay apparatus 1 shown in FIG. 2, the same code | symbol is shown, and the description of the overlapping structure and operation | movement is abbreviate | omitted. The difference between the first embodiment and the second embodiment is that a small screen extracting unit 201 is added to the communication extracting unit 13. Further, the difference between the first embodiment and the second embodiment is that the reproduction extraction unit 133 is changed to a reproduction extraction unit 133A.

小画面抽出部201は、画面遷移抽出部132によって抽出された通信履歴から、フレーム(小画面)の構成を記述するだけの画面(親画面)の通信履歴を削除する。すなわち、小画面の構成を記述するだけの親画面のHTMLは、小画面を配置することを宣言しているにすぎないので、親画面の通信を不要とする。ここで、図14A〜図14Cを参照して、小画面の構成を記述するだけの親画面の通信が不要であることを説明する。   The small screen extraction unit 201 deletes the communication history of the screen (parent screen) that only describes the configuration of the frame (small screen) from the communication history extracted by the screen transition extraction unit 132. In other words, the HTML of the parent screen that only describes the configuration of the small screen only declares that the small screen is to be arranged, and thus does not require communication of the parent screen. Here, with reference to FIG. 14A to FIG. 14C, it will be described that communication of the main screen that only describes the configuration of the small screen is unnecessary.

図14Aは、ログイン画面の親画面のHTMLを示す図である。図14Bは、各小画面に対応させたHTMLを示す図である。図14Cは、小画面で構成された画面例を示す図である。図14Aに示すように、ログイン画面の親画面のHTMLには、小画面を構成する「frameset」タグが設定されている。そして、「frameset」タグ内に、小画面として、タイトル画面を示す「/title.html」、リンク画面を示す「/link.html」およびログイン画面を示す「/login」が設定されている。すなわち、図14Aで示すHTMLは、親画面がタイトル画面とリンク画面とログイン画面とで配置されることを宣言している。そして、図14Bに示す各小画面に対応させたHTMLにより、図14Cに示す各小画面の内容で構成された画面が表示される。そうすると、図14Aで示す親画面のHTMLは、小画面の構成を記述するだけのHTMLとなるため、親画面の通信を省略しても画面遷移には影響しない。そこで、通信履歴のレスポンスHTMLに「frameset」タグがあり、「frame src」の値が次のリクエスト先を指している場合、この「frameset」タグがある通信を親画面と判断し、不要な通信として排除する。   FIG. 14A is a diagram showing HTML of the main screen of the login screen. FIG. 14B is a diagram showing HTML corresponding to each small screen. FIG. 14C is a diagram showing an example of a screen composed of small screens. As shown in FIG. 14A, a “frameset” tag that configures a small screen is set in the HTML of the parent screen of the login screen. In the “frameset” tag, “/title.html” indicating a title screen, “/link.html” indicating a link screen, and “/ login” indicating a login screen are set as small screens. That is, the HTML shown in FIG. 14A declares that the parent screen is arranged with a title screen, a link screen, and a login screen. And the screen comprised by the content of each small screen shown in FIG. 14C is displayed by HTML corresponding to each small screen shown in FIG. 14B. Then, since the HTML of the parent screen shown in FIG. 14A is HTML that only describes the configuration of the small screen, even if communication of the parent screen is omitted, the screen transition is not affected. Therefore, if there is a “frameset” tag in the response history response HTML, and the value of “frame src” points to the next request destination, the communication having this “frameset” tag is determined as the parent screen, and unnecessary communication is performed. Eliminate as.

再現抽出部133Aは、認証状態抽出部131によって抽出された通信履歴および小画面抽出部201によって抽出された通信履歴を、再現に必要な通信として順序を保持したまま抽出する。例えば、再現抽出部133Aは、認証状態抽出部131によって抽出された通信履歴と小画面抽出部201によって抽出された通信履歴の和集合をとる。そして、再現抽出部133Aは、通信記録テーブル111に記憶された通信履歴のうち和集合以外の通信履歴を不要な通信として削除し、再現に不要な通信を省いた通信履歴を抽出する。   The reproduction extraction unit 133A extracts the communication history extracted by the authentication state extraction unit 131 and the communication history extracted by the small screen extraction unit 201 while maintaining the order as communication necessary for reproduction. For example, the reproduction extraction unit 133A takes the union of the communication history extracted by the authentication state extraction unit 131 and the communication history extracted by the small screen extraction unit 201. Then, the reproduction extraction unit 133A deletes communication histories other than the union from communication histories stored in the communication record table 111 as unnecessary communication, and extracts communication histories that omit communication unnecessary for reproduction.

[小画面抽出処理の手順]
次に、小画面抽出部201による小画面抽出処理の手順について、図15を参照して説明する。図15は、実施例2に係る小画面抽出処理の手順を示すフローチャートである。なお、ウェブブラウザ2が行った一連の操作について、通信記録テーブル111に通信履歴が記録されているものとする。また、画面遷移抽出部132によって該当する通信履歴が抽出されたものとする。
[Small screen extraction processing procedure]
Next, the procedure of small screen extraction processing by the small screen extraction unit 201 will be described with reference to FIG. FIG. 15 is a flowchart illustrating the procedure of the small screen extraction process according to the second embodiment. It is assumed that a communication history is recorded in the communication record table 111 for a series of operations performed by the web browser 2. In addition, it is assumed that the corresponding communication history is extracted by the screen transition extraction unit 132.

まず、小画面抽出部201は、画面遷移抽出部132によって抽出された通信の集合Tを画面遷移抽出部132から取得する(ステップS51)。ここでは、通信の集合Tに属する通信履歴は、n個あるものとする。小画面抽出部201は、配列の添え字を示すインデックスiに集合Tの最後の通信履歴を指すn−1を設定する(ステップS52)。   First, the small screen extraction unit 201 acquires the communication set T extracted by the screen transition extraction unit 132 from the screen transition extraction unit 132 (step S51). Here, it is assumed that there are n communication histories belonging to the communication set T. The small screen extraction unit 201 sets n−1 indicating the last communication history of the set T to the index i indicating the subscript of the array (step S52).

続いて、小画面抽出部201は、変数sに通信履歴の配列T[i]を設定する(ステップS53)。そして、小画面抽出部201は、変数sのレスポンスデータがHTML文書であり、「frameset」タグが含まれるか否かを判定する(ステップS54)。なお、小画面抽出部201は、レスポンスデータがHTML文書であるか否かを、レスポンスデータに「Content_Type:text/html」が設定されているか否かで判定する。   Subsequently, the small screen extraction unit 201 sets the communication history array T [i] in the variable s (step S53). Then, the small screen extraction unit 201 determines whether or not the response data of the variable s is an HTML document and includes a “frameset” tag (step S54). The small screen extraction unit 201 determines whether or not the response data is an HTML document based on whether or not “Content_Type: text / html” is set in the response data.

レスポンスデータがHTML文書であり、「frameset」タグが含まれると判定した場合(ステップS54;Yes)、小画面抽出部201は、レスポンスデータの「frameset」タグで囲まれた各frameタグのsrc属性のURL値を集合Fに格納する(ステップS55)。そして、小画面抽出部201は、インデックスmに集合Tの最後の通信履歴を指すn−1を設定する(ステップS56)。   When it is determined that the response data is an HTML document and the “frameset” tag is included (step S54; Yes), the small screen extraction unit 201 uses the src attribute of each frame tag surrounded by the “frameset” tag of the response data. Are stored in the set F (step S55). Then, the small screen extraction unit 201 sets n−1 indicating the last communication history of the set T to the index m (step S56).

続いて、小画面抽出部201は、変数tに通信履歴の配列T[m]を設定する(ステップS57)。そして、小画面抽出部201は、変数tのリクエスト先のURLが集合Fに含まれ、且つ変数tのRefererヘッダの値が変数sのリクエスト先のURLと等値であるか否かを判定する(ステップS58)。リクエスト先のURLが集合Fに含まれ、且つ変数tのRefererヘッダの値が変数sのリクエスト先のURLと等値であると判定した場合(ステップS58;Yes)、小画面抽出部201は、集合Tから変数sの通信履歴を削除する(ステップS59)。すなわち、小画面抽出部201は、変数sで表される通信を変数tで表される通信の親画面であると判断し、不要な通信として排除する。そして、小画面抽出部201は、インデックスiを減算すべく、ステップS62に移行する。   Subsequently, the small screen extraction unit 201 sets the communication history array T [m] in the variable t (step S57). Then, the small screen extraction unit 201 determines whether the request destination URL of the variable t is included in the set F and the value of the Refer header of the variable t is equal to the request destination URL of the variable s. (Step S58). When it is determined that the request destination URL is included in the set F and the value of the Referer header of the variable t is equal to the request destination URL of the variable s (step S58; Yes), the small screen extraction unit 201 The communication history of variable s is deleted from set T (step S59). That is, the small screen extraction unit 201 determines that the communication represented by the variable s is the parent screen of the communication represented by the variable t, and excludes it as unnecessary communication. Then, the small screen extraction unit 201 proceeds to step S62 to subtract the index i.

一方、リクエスト先のURLが集合Fに含まれない、または変数tのRefererヘッダの値が変数sのリクエスト先のURLと等値でないと判定した場合(ステップS58;No)、小画面抽出部201は、インデックスmから1を減算する(ステップS60)。そして、小画面抽出部201は、インデックスmが0より小さいか否かを判定する(ステップS61)。インデックスmが0以上と判定した場合(ステップS61;No)、小画面抽出部201は、次の通信履歴を選択すべく、ステップS57に移行する。   On the other hand, when it is determined that the request destination URL is not included in the set F or the value of the Referer header of the variable t is not equal to the request destination URL of the variable s (step S58; No), the small screen extraction unit 201 Subtracts 1 from the index m (step S60). Then, the small screen extraction unit 201 determines whether the index m is smaller than 0 (step S61). When it is determined that the index m is 0 or more (step S61; No), the small screen extraction unit 201 proceeds to step S57 to select the next communication history.

インデックスmが0より小さいと判定した場合(ステップS61;Yes)、小画面抽出部201は、インデックスiから1を減算する(ステップS62)。そして、小画面抽出部201は、インデックスiが0より小さいか否かを判定する(ステップS63)。インデックスiが0以上であると判定した場合(ステップS63;No)、小画面抽出部201は、次の「frameset」タグを探索すべく、ステップS53に移行する。   When it is determined that the index m is smaller than 0 (step S61; Yes), the small screen extraction unit 201 subtracts 1 from the index i (step S62). Then, the small screen extraction unit 201 determines whether or not the index i is smaller than 0 (step S63). When it is determined that the index i is greater than or equal to 0 (step S63; No), the small screen extraction unit 201 proceeds to step S53 in order to search for the next “frameset” tag.

一方、インデックスiが0より小さいと判定した場合(ステップS63;Yes)、小画面抽出部201は、集合Tを再現抽出部133Aに出力する(ステップS64)。そして、小画面抽出部201は、処理を終了する。   On the other hand, when it is determined that the index i is smaller than 0 (step S63; Yes), the small screen extraction unit 201 outputs the set T to the reproduction extraction unit 133A (step S64). Then, the small screen extraction unit 201 ends the process.

[通信記録の具体例]
次に、通信記録の具体例を、図16を参照して説明する。図16は、通信記録の具体例を示す図である。図16に示すように、通信記録は、識別番号毎にリクエストデータとレスポンスデータとを対応付けて記憶されている。識別番号が大きい程、通信記録の時間が新しいことを意味する。
[Specific examples of communication records]
Next, a specific example of communication recording will be described with reference to FIG. FIG. 16 is a diagram illustrating a specific example of communication recording. As shown in FIG. 16, the communication record stores request data and response data in association with each identification number. The larger the identification number, the newer the communication recording time.

[画面遷移の具体例]
次に、図16で示した各通信履歴に対応した各画面の遷移について、図17を参照して説明する。図17は、ウェブブラウザ2に表示される画面遷移の具体例を示す図である。図17に示すように、ウェブブラウザ2は、ウェブサーバ3との間で識別番号1に対応付けられる通信を行った後、親画面B1を表示する。次に、ウェブブラウザ2は、ウェブサーバ3との間で識別番号2に対応付けられる通信を行った後、親画面B1上にタイトル画面d1を表示する。次に、ウェブブラウザ2は、ウェブサーバ3との間で識別番号3に対応付けられる通信を行った後、親画面B1上にリンク画面d2を表示する。次に、ウェブブラウザ2は、ウェブサーバ3との間で識別番号4に対応付けられる通信を行った後、親画面B1上にログイン画面d3を表示する。次に、ウェブブラウザ2は、ウェブサーバ3との間で識別番号5に対応付けられる通信を行った後、ログイン画面d3上に「logo.gif」の画像d4を表示する。次に、ウェブブラウザ2は、ウェブサーバ3との間で識別番号6に対応付けられる通信を行った後、ログイン画面d3上に「info.html」の画面d5を表示する。
[Specific example of screen transition]
Next, transition of each screen corresponding to each communication history shown in FIG. 16 will be described with reference to FIG. FIG. 17 is a diagram illustrating a specific example of the screen transition displayed on the web browser 2. As illustrated in FIG. 17, the web browser 2 displays the parent screen B <b> 1 after performing communication associated with the identification number 1 with the web server 3. Next, the web browser 2 performs communication associated with the identification number 2 with the web server 3, and then displays the title screen d1 on the parent screen B1. Next, the web browser 2 performs communication associated with the identification number 3 with the web server 3, and then displays the link screen d2 on the parent screen B1. Next, the web browser 2 performs communication associated with the identification number 4 with the web server 3, and then displays the login screen d3 on the parent screen B1. Next, the web browser 2 performs communication associated with the identification number 5 with the web server 3, and then displays an image d4 of “logo.gif” on the login screen d3. Next, after performing communication associated with the identification number 6 with the web server 3, the web browser 2 displays a screen d5 of “info.html” on the login screen d3.

さらに、利用者がログイン画面d3上の「login」を押下し、ウェブブラウザ2が、ウェブサーバ3との間で識別番号7に対応付けられる通信を行った後、ログイン後の親画面B2を表示する。次に、ウェブブラウザ2は、ウェブサーバ3との間で識別番号8に対応付けられる通信を行った後、ログイン後の親画面B2上にタイトル画面d6を表示する。次に、ウェブブラウザ2は、ウェブサーバ3との間で識別番号9に対応付けられる通信を行った後、ログイン後の親画面B2上にリンク画面d7を表示する。さらに、ウェブブラウザ2は、ウェブサーバ3との間で識別番号10に対応付けられる通信を行った後、ログイン後の親画面B2上にログイン後メニュー画面d8を表示する。   Further, after the user presses “login” on the login screen d3 and the web browser 2 performs communication associated with the identification number 7 with the web server 3, the main screen B2 after login is displayed. To do. Next, the web browser 2 performs communication associated with the identification number 8 with the web server 3, and then displays the title screen d6 on the main screen B2 after login. Next, the web browser 2 performs communication associated with the identification number 9 with the web server 3, and then displays the link screen d7 on the main screen B2 after login. Furthermore, after performing communication associated with the identification number 10 with the web server 3, the web browser 2 displays the post-login menu screen d8 on the main screen B2 after login.

[画面遷移抽出処理により抽出された通信記録の具体例]
次に、図16で示した各通信履歴を用いた画面遷移抽出処理について、図18を参照して説明する。図18は、画面遷移抽出処理の具体例を示す図である。図18に示すように、画面遷移抽出部132は、最後の通信履歴に設定されたRefererを参照し、最後の通信履歴から通信履歴を遡って、リクエスト先のURLが、参照したRefererの値と等値である通信履歴を抽出する。ここでは、画面遷移抽出部132は、識別番号10の最後の通信履歴から通信履歴を遡って、リクエスト先のURLが、識別番号10における参照したRefererの値と等値である識別番号7の通信履歴を抽出する。また、画面遷移抽出部132は、識別番号7の通信履歴から通信履歴を遡って、リクエスト先のURLが、識別番号7における参照したRefererの値と等値である識別番号4の通信履歴を抽出する。さらに、画面遷移抽出部132は、識別番号4の通信履歴から通信履歴を遡って、リクエスト先のURLが、識別番号4における参照したRefererの値と等値である識別番号1の通信履歴を抽出する。
[Specific examples of communication records extracted by screen transition extraction processing]
Next, screen transition extraction processing using each communication history shown in FIG. 16 will be described with reference to FIG. FIG. 18 is a diagram illustrating a specific example of the screen transition extraction process. As illustrated in FIG. 18, the screen transition extraction unit 132 refers to the Referer set in the last communication history, traces the communication history from the last communication history, and the URL of the request destination is the value of the referred Referer. Extract communication history that is equivalent. Here, the screen transition extraction unit 132 traces the communication history from the last communication history of the identification number 10, and the communication of the identification number 7 in which the URL of the request destination is equal to the value of the referred Referer in the identification number 10. Extract history. Further, the screen transition extraction unit 132 extracts the communication history of the identification number 4 in which the request destination URL is equal to the referred Referer value in the identification number 7 by tracing the communication history from the communication history of the identification number 7. To do. Further, the screen transition extraction unit 132 extracts the communication history of the identification number 1 in which the request destination URL is equal to the referred Referer value in the identification number 4 by tracing the communication history from the communication history of the identification number 4. To do.

[小画面抽出処理の具体例]
次に、図18で示した各通信履歴を用いた小画面抽出処理について、図19を参照して説明する。図19は、小画面抽出処理の具体例を示す図である。なお、図19で示す各通信履歴は、図18で示した各通信履歴を詳細に表したものである。図19に示すように、小画面抽出部201は、通信履歴のレスポンスデータの中で、「frameset」タグを含んでいるものを、最後の通信履歴(識別番号10)から通信履歴を遡って探索する。そして、小画面抽出部201は、「frameset」タグを含んでいるレスポンスデータからframeタグ内のsrc属性のURL値を抽出する。ここでは、小画面抽出部201は、識別番号7のレスポンスデータに「frameset」タグE1、E2を含んでいると判定する。そして、小画面抽出部201は、frameタグ内のsrc属性のURL値である「/title.html」e1、「/link.html」e2、「/menu.html」e3を抽出する。
[Specific example of small screen extraction processing]
Next, small screen extraction processing using each communication history shown in FIG. 18 will be described with reference to FIG. FIG. 19 is a diagram illustrating a specific example of the small screen extraction process. Each communication history shown in FIG. 19 represents each communication history shown in FIG. 18 in detail. As illustrated in FIG. 19, the small screen extraction unit 201 searches the communication history from the last communication history (identification number 10) for the communication history response data including the “frameset” tag. To do. Then, the small screen extraction unit 201 extracts the URL value of the src attribute in the frame tag from the response data including the “frameset” tag. Here, the small screen extraction unit 201 determines that the response data of the identification number 7 includes “frameset” tags E1 and E2. Then, the small screen extraction unit 201 extracts “/title.html” e1, “/link.html” e2, and “/menu.html” e3 which are URL values of the src attribute in the frame tag.

さらに、小画面抽出部201は、識別番号7と異なる通信履歴を探し、探した通信履歴のリクエスト先URLがsrc属性のいずれかの値と同じであるか否かを判定する。加えて、小画面抽出部201は、探した通信履歴のRefererヘッダの値がsrc属性のあった通信履歴のリクエスト先URLと等値であるか否かを判定する。ここでは、識別番号10のリクエスト先URLが「/menu.html」f1であり、小画面抽出部201は、当該リクエスト先URLがsrc属性の「/menu.html」e3と同じであると判定する。また、識別番号10のRefererヘッダの値が「http://sample.com/」r1であり、src属性のあった通信履歴のリクエスト先URLが「sample.com」g1である。このため、小画面抽出部201は、r1が示す値とg1が示す値とは等値であると判定する。そこで、小画面抽出部201は、識別番号7に対応する画面を、メニュー画面を含む小画面の構成を記述するだけの親画面であると判断し、親画面の通信履歴(識別番号7)を削除する。一方、小画面抽出部201は、識別番号10の通信履歴を、操作を再現する通信履歴として抽出する。   Further, the small screen extraction unit 201 searches for a communication history different from the identification number 7 and determines whether the request destination URL of the searched communication history is the same as any value of the src attribute. In addition, the small screen extraction unit 201 determines whether or not the value of the Referer header of the searched communication history is equal to the request destination URL of the communication history having the src attribute. Here, the request destination URL of the identification number 10 is “/menu.html” f1, and the small screen extraction unit 201 determines that the request destination URL is the same as “/menu.html” e3 of the src attribute. . Also, the value of the Referer header with the identification number 10 is “http://sample.com/”r1, and the request destination URL of the communication history having the src attribute is“ sample.com ”g1. For this reason, the small screen extraction unit 201 determines that the value indicated by r1 is equal to the value indicated by g1. Therefore, the small screen extraction unit 201 determines that the screen corresponding to the identification number 7 is a parent screen that only describes the configuration of the small screen including the menu screen, and determines the communication history (identification number 7) of the parent screen. delete. On the other hand, the small screen extraction unit 201 extracts the communication history with the identification number 10 as a communication history for reproducing the operation.

引き続き、小画面抽出部201は、通信履歴のレスポンスデータの中で、「frameset」タグを含んでいるものを、通信履歴を遡って探索する。そして、小画面抽出部201は、「frameset」タグを含んでいるレスポンスデータからframeタグ内のsrc属性のURL値を抽出する。ここでは、小画面抽出部201は、識別番号1のレスポンスデータに「frameset」タグE3、E4を含んでいると判定する。そして、小画面抽出部201は、frameタグ内のsrc属性のURL値である「/title.html」e4、「/link.html」e5、「/login」e6を抽出する。   Subsequently, the small screen extraction unit 201 searches the communication history retrospectively for the communication history response data including the “frameset” tag. Then, the small screen extraction unit 201 extracts the URL value of the src attribute in the frame tag from the response data including the “frameset” tag. Here, the small screen extraction unit 201 determines that the response data with the identification number 1 includes “frameset” tags E3 and E4. Then, the small screen extracting unit 201 extracts “/title.html” e4, “/link.html” e5, and “/ login” e6 which are URL values of the src attribute in the frame tag.

さらに、小画面抽出部201は、識別番号1と異なる通信履歴を探し、探した通信履歴のリクエスト先URLがsrc属性のいずれかの値と同じであるか否かを判定する。加えて、小画面抽出部201は、探した通信履歴のRefererヘッダの値がsrc属性のあった通信履歴のリクエスト先URLと等値であるか否かを判定する。ここでは、識別番号4のリクエスト先URLが「/login」f2であり、小画面抽出部201は、当該リクエスト先URLがsrc属性の「/login」e6と同じであると判定する。また、識別番号4のRefererヘッダの値が「http://sample.com/parent」r2である。src属性のあった通信履歴のリクエスト先URLがドメインを示す「sample.com」g3とパスを示す「/parent」g2とから「sample.com/parent」である。このため、小画面抽出部201は、識別番号4のRefererヘッダの値とsrc属性のあった通信履歴のリクエスト先URLとは等値であると判定する。そこで、小画面抽出部201は、識別番号1を、ログイン画面を含む小画面の構成を記述するだけの親画面であると判断し、親画面の通信履歴(識別番号1)を削除する。一方、小画面抽出部201は、識別番号4の通信履歴を、操作を再現する通信履歴として抽出する。   Further, the small screen extraction unit 201 searches for a communication history different from the identification number 1, and determines whether the request destination URL of the searched communication history is the same as any value of the src attribute. In addition, the small screen extraction unit 201 determines whether or not the value of the Referer header of the searched communication history is equal to the request destination URL of the communication history having the src attribute. Here, the request destination URL of the identification number 4 is “/ login” f2, and the small screen extraction unit 201 determines that the request destination URL is the same as “/ login” e6 of the src attribute. In addition, the value of the Refer header with the identification number 4 is “http://sample.com/parent” r2. The request destination URL of the communication history having the src attribute is “sample.com/parent” from “sample.com” g3 indicating the domain and “/ parent” g2 indicating the path. Therefore, the small screen extraction unit 201 determines that the value of the Referer header with the identification number 4 and the request destination URL of the communication history having the src attribute are equal. Therefore, the small screen extraction unit 201 determines that the identification number 1 is a parent screen that only describes the configuration of the small screen including the login screen, and deletes the communication history (identification number 1) of the parent screen. On the other hand, the small screen extraction unit 201 extracts the communication history with the identification number 4 as a communication history for reproducing the operation.

このようにして、小画面抽出部201は、小画面の構成を記述するだけの親画面の通信を排除し、小画面自体の通信を、操作を再現する通信として抽出する。ここでは、小画面抽出部201は、識別番号4、10の通信履歴を、操作を再現する通信として抽出する。   In this way, the small screen extraction unit 201 excludes communication of the main screen that only describes the configuration of the small screen, and extracts communication of the small screen itself as communication that reproduces the operation. Here, the small screen extraction unit 201 extracts the communication history with the identification numbers 4 and 10 as communication for reproducing the operation.

[再現抽出処理の具体例]
次に、図16で示した各通信履歴を用いた再現抽出処理について、図20を参照して説明する。図20は、再現抽出処理の具体例を示す図である。
[Specific example of reproduction extraction processing]
Next, reproduction extraction processing using each communication history shown in FIG. 16 will be described with reference to FIG. FIG. 20 is a diagram illustrating a specific example of the reproduction extraction process.

再現抽出部133Aは、認証状態抽出部131によって抽出された通信履歴と小画面抽出部201によって抽出された通信履歴の和集合をとる。ここでは、認証状態抽出部131によって抽出された通信履歴が、識別番号4、10の各通信履歴であるとする。また、小画面抽出部201によって抽出された通信履歴も、識別番号4、10の各通信履歴である。したがって、再現抽出部133Aは、通信履歴の和集合として識別番号4、10をとる。そして、再現抽出部133Aは、通信記録テーブル111に記憶された通信履歴のうち和集合以外の通信履歴を削除し、再現に不要な通信を省いた通信履歴を抽出する。ここでは、再現抽出部133Aは、識別番号1〜3、5〜9の通信履歴を削除し、再現に不要な通信を省いた識別番号4、10の通信履歴を抽出する。   The reproduction extraction unit 133A takes the union of the communication history extracted by the authentication state extraction unit 131 and the communication history extracted by the small screen extraction unit 201. Here, it is assumed that the communication history extracted by the authentication state extraction unit 131 is the communication history of the identification numbers 4 and 10. The communication history extracted by the small screen extraction unit 201 is also the communication history with the identification numbers 4 and 10. Therefore, the reproduction extraction unit 133A takes the identification numbers 4 and 10 as the union of communication histories. Then, the reproduction extraction unit 133A deletes communication histories other than the union from the communication histories stored in the communication record table 111, and extracts communication histories that omit communication unnecessary for reproduction. Here, the reproduction extraction unit 133A deletes the communication histories of the identification numbers 1 to 3 and 5 to 9, and extracts the communication histories of the identification numbers 4 and 10 that omit communication unnecessary for reproduction.

このようにして、再現抽出部133Aは、認証状態抽出部131によって抽出された通信履歴と小画面抽出部201によって抽出された通信履歴の和集合を、操作を再現する通信として抽出する。ここでは、再現抽出部133Aは、識別番号4、10の通信履歴を、操作を再現する通信として抽出する。   In this way, the reproduction extraction unit 133A extracts the union of the communication history extracted by the authentication state extraction unit 131 and the communication history extracted by the small screen extraction unit 201 as communication for reproducing the operation. Here, the reproduction extraction unit 133A extracts the communication history with the identification numbers 4 and 10 as communication for reproducing the operation.

[通信再現処理の具体例]
次に、図20で抽出された各通信履歴を用いた通信再現処理について、図21を参照して説明する。図21は、通信再現処理の具体例を示す図である。なお、通信再現処理は、通信履歴を用いて操作を再現する際、最後の通信履歴に対応するレスポンス以外レスポンスをウェブブラウザ2に戻さない。したがって、実際に、ウェブブラウザ2が、最後から1つ前の通信履歴までのレスポンスを用いて画面を表示することはない。しかしながら、図21では、説明の便宜上、仮にウェブブラウザ2にレスポンスを戻すとした場合に、ウェブブラウザ2側で表示する画面を利用して、通信再現処理を説明するものとする。
[Specific example of communication reproduction processing]
Next, communication reproduction processing using each communication history extracted in FIG. 20 will be described with reference to FIG. FIG. 21 is a diagram illustrating a specific example of the communication reproduction process. The communication reproduction process does not return any response other than the response corresponding to the last communication history to the web browser 2 when reproducing the operation using the communication history. Therefore, the web browser 2 does not actually display the screen using the response from the last to the previous communication history. However, in FIG. 21, for convenience of explanation, when a response is returned to the web browser 2, the communication reproduction process is described using a screen displayed on the web browser 2 side.

通信再現部14は、再現抽出部133によって不要な通信が削除された通信記録テーブル111から通信履歴を読み出し、読み出した通信履歴を用いて、操作を再現する。具体的には、通信再現部14は、識別番号4に対応付けられる通信履歴を用いて通信を再現する。ここで、仮にウェブブラウザ2にレスポンスが戻った場合、ウェブブラウザ2は、ログイン画面d3を表示することになる。つまり、親画面B1が表示される、識別番号1に対応付けられる通信が排除されているが、この通信が省かれても、再現結果が変わらず、ログイン画面d3が表示される。次に、通信再現部14は、識別番号10に対応付けられる最後の通信履歴を用いて通信を再現する。ここで、ウェブブラウザ2にレスポンスが戻ると、ウェブブラウザ2は、ログイン後メニュー画面d8を表示する。つまり、親画面B2が表示される、識別番号7に対応付けられる通信が排除されているが、この通信が省かれても、再現結果が変わらず、ログイン後メニュー画面d8が表示される。   The communication reproduction unit 14 reads the communication history from the communication record table 111 from which unnecessary communication has been deleted by the reproduction extraction unit 133, and reproduces the operation using the read communication history. Specifically, the communication reproduction unit 14 reproduces communication using a communication history associated with the identification number 4. Here, if a response is returned to the web browser 2, the web browser 2 displays a login screen d3. That is, the communication associated with the identification number 1 in which the parent screen B1 is displayed is excluded, but even if this communication is omitted, the reproduction result does not change and the login screen d3 is displayed. Next, the communication reproduction unit 14 reproduces the communication using the last communication history associated with the identification number 10. Here, when the response returns to the web browser 2, the web browser 2 displays a menu screen d8 after login. That is, the communication associated with the identification number 7 on which the parent screen B2 is displayed is excluded, but even if this communication is omitted, the reproduction result does not change and the post-login menu screen d8 is displayed.

このようにして、通信再現部14は、通信履歴を用いて操作を再現する際に、操作を省いても再現結果が変わらない通信として、さらに、親画面の通信を省いた通信を再現する。これにより、通信再現部14は、通信履歴を全て使用して再現する場合と比較して、高速に再現することが可能となる。   In this way, when reproducing the operation using the communication history, the communication reproduction unit 14 reproduces the communication without the parent screen communication as the communication whose reproduction result does not change even if the operation is omitted. Thereby, the communication reproduction part 14 can reproduce at high speed compared with the case where it reproduces using all the communication histories.

[実施例2の効果]
上記実施例2によれば、認証状態抽出部131は、通信記録テーブル111に記憶された通信履歴に基づいて、セッション管理に用いられるSet−Cookieヘッダが存在するレスポンスデータと対応付けられた通信履歴を抽出する。また、画面遷移抽出部132は、通信記録テーブル111に記憶された通信履歴に基づいて、リクエストデータに含まれる情報であってウェブブラウザ2側で表示される画面の遷移を管理するために用いられるRefererヘッダを辿って得られる一連の通信履歴を抽出する。さらに、小画面抽出部201は、画面遷移抽出部132によって抽出された通信履歴から、画面内に小画面を構成する際に用いられる「frameset」が存在するレスポンスデータと対応付けられた通信履歴を削除し、削除した通信履歴を除いた通信履歴を抽出する。通信再現部14は、認証状態抽出部131によって抽出された通信履歴および小画面抽出部201によって抽出された通信履歴の和集合を用いて、操作を再現する。かかる構成によれば、中継装置1Aは、画面内に小画面を構成する際に用いられる「frameset」が存在するレスポンスデータと対応付けられた通信履歴を削除する。これにより、中継装置1Aは、操作を再現する際、操作を省いても再現結果に影響がない通信履歴として、小画面の構成を記述するだけの親画面の通信履歴を省くので、高速に再現処理を行うことができる。
[Effect of Example 2]
According to the second embodiment, the authentication status extraction unit 131, based on the communication history stored in the communication record table 111, the communication history associated with the response data including the Set-Cookie header used for session management. To extract. The screen transition extraction unit 132 is used to manage screen transitions that are information included in the request data and displayed on the web browser 2 side based on the communication history stored in the communication record table 111. A series of communication histories obtained by tracing the Referer header is extracted. Furthermore, the small screen extraction unit 201 uses the communication history extracted by the screen transition extraction unit 132 to display the communication history associated with the response data including “frameset” used when configuring the small screen in the screen. Delete the communication history excluding the deleted communication history. The communication reproduction unit 14 reproduces the operation using the union of the communication history extracted by the authentication state extraction unit 131 and the communication history extracted by the small screen extraction unit 201. According to such a configuration, the relay apparatus 1A deletes the communication history associated with the response data including “frameset” used when the small screen is configured in the screen. As a result, when reproducing the operation, the relay device 1A omits the communication history of the main screen that only describes the configuration of the small screen as the communication history that does not affect the reproduction result even if the operation is omitted. Processing can be performed.

なお、認証状態抽出部131は、通信記録テーブル111に記憶された通信履歴に基づいて、セッション管理に用いられる情報が存在するレスポンスデータ111cと対応付けられた通信履歴を、操作を再現する通信として抽出する。実施例では、セッション管理に用いられる情報を、Set−Cookieヘッダに設定されたセッションidとして説明した。しかしながら、セッション管理に用いられる情報は、これに限定されず、認証状態が変わったときに設定される情報であれば良い。   Note that the authentication status extraction unit 131 uses the communication history associated with the response data 111c in which information used for session management is present as communication for reproducing the operation, based on the communication history stored in the communication record table 111. Extract. In the embodiment, the information used for session management has been described as the session id set in the Set-Cookie header. However, the information used for session management is not limited to this, and may be information set when the authentication state is changed.

また、画面遷移抽出部132は、通信記録テーブル111に記憶された通信履歴に基づいて、ウェブブラウザ2側で表示される画面の遷移を管理するために用いられる情報を辿って得られる一連の通信履歴を抽出する。実施例では、画面の遷移を管理するために用いられる情報を、Refererヘッダに設定されたURLとして説明した。しかしながら画面の遷移を管理するために用いられる情報は、これに限定されず、遷移する前の画面のアドレスを示す情報であれば良い。   The screen transition extraction unit 132 also obtains a series of communications obtained by tracing information used to manage screen transitions displayed on the web browser 2 side based on the communication history stored in the communication record table 111. Extract history. In the embodiment, the information used for managing the transition of the screen has been described as the URL set in the Referer header. However, the information used for managing the transition of the screen is not limited to this, and may be information indicating the address of the screen before the transition.

また、小画面抽出部201は、画面遷移抽出部132によって抽出された通信履歴から、小画面の構成を記述するだけの親画面の通信履歴を削除する。実施例では、小画面の構成を記述するだけの親画面の通信履歴を、少なくとも「frameset」タグを含む通信履歴として説明した。しかしながら、小画面の構成を記述するだけの親画面の通信履歴は、これに限定されず、小画面の構成を記述するだけの情報であれば良い。   Further, the small screen extraction unit 201 deletes the communication history of the parent screen that only describes the configuration of the small screen from the communication history extracted by the screen transition extraction unit 132. In the embodiment, the communication history of the parent screen that only describes the configuration of the small screen has been described as the communication history including at least the “frameset” tag. However, the communication history of the parent screen that only describes the configuration of the small screen is not limited thereto, and may be information that only describes the configuration of the small screen.

また、中継装置1は、ウェブブラウザ2と同一のネットワーク上に適用した場合を説明した。しかしながら、中継装置1は、ウェブブラウザ2と異なるネットワーク上に適用しても良い。この場合に、ウェブブラウザ2と中継装置1との間にプロキシサーバを設置することもある。このプロキシサーバと中継装置1とを一体化することも可能である。   Moreover, the relay apparatus 1 demonstrated the case where it applied on the same network as the web browser 2. FIG. However, the relay device 1 may be applied on a different network from the web browser 2. In this case, a proxy server may be installed between the web browser 2 and the relay device 1. The proxy server and the relay device 1 can be integrated.

[プログラムなど]
なお、中継装置1は、既知のパーソナルコンピュータ、ワークステーションなどの情報処理装置に、上記したプロキシ部12、通信抽出部13および通信再現部14などの各機能を搭載することによって実現することができる。
[Programs]
The relay device 1 can be realized by mounting each function such as the proxy unit 12, the communication extraction unit 13, and the communication reproduction unit 14 on an information processing apparatus such as a known personal computer or workstation. .

また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的態様は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的又は物理的に分散・統合して構成することができる。例えば、画面遷移抽出部132と小画面抽出部201とを1個の部として統合しても良い。一方、通信記録テーブル111を、プロキシ部12によって通信を記録する通信記録テーブルと、再現する通信を記録する再現記録テーブルとに分散しても良い。かかる場合、再現抽出部133Aは、通信記録テーブル111に記憶された通信履歴のうち和集合以外の通信履歴を不要な通信とし、再現に不要な通信を省いた通信履歴を再現記録テーブルに記録すれば良い。そして、通信再現部14は、再現記録テーブルから通信履歴を読み出し、読み出した通信履歴を用いて、操作を再現すれば良い。   In addition, each component of each illustrated apparatus does not necessarily need to be physically configured as illustrated. In other words, the specific mode of distribution / integration of each device is not limited to that shown in the figure, and all or a part thereof may be functionally or physically distributed or arbitrarily distributed in arbitrary units according to various loads or usage conditions. Can be integrated and configured. For example, the screen transition extraction unit 132 and the small screen extraction unit 201 may be integrated as one unit. On the other hand, the communication record table 111 may be distributed into a communication record table for recording communication by the proxy unit 12 and a reproduction record table for recording communication to be reproduced. In such a case, the reproduction extraction unit 133A records the communication history other than the union out of the communication histories stored in the communication record table 111 as unnecessary communication, and records the communication history without communication unnecessary for reproduction in the reproduction record table. It ’s fine. Then, the communication reproduction unit 14 may read the communication history from the reproduction record table and reproduce the operation using the read communication history.

また、通信記録テーブル111などの記憶部を中継装置1の外部装置としてネットワーク経由で接続するようにしても良い。   Further, a storage unit such as the communication record table 111 may be connected as an external device of the relay device 1 via a network.

また、上記実施例で説明した各種の処理は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図22を用いて、図2に示した中継装置1の制御部10と同様の機能を有する中継プログラムを実行するコンピュータの一例を説明する。   The various processes described in the above embodiments can be realized by executing a program prepared in advance on a computer such as a personal computer or a workstation. Therefore, in the following, an example of a computer that executes a relay program having the same function as the control unit 10 of the relay apparatus 1 illustrated in FIG. 2 will be described with reference to FIG.

図22は、中継プログラムを実行するコンピュータを示す図である。図22に示すように、コンピュータ1000は、RAM(Random Access Memory)1010と、ネットワークインタフェース装置1020と、HDD1030と、CPU(Central Processing Unit)1040、媒体読取装置1050およびバス1060とを有する。RAM1010、ネットワークインタフェース装置1020、HDD1030、CPU1040、媒体読取装置1050は、バス1060によって接続されている。   FIG. 22 is a diagram illustrating a computer that executes a relay program. As illustrated in FIG. 22, the computer 1000 includes a RAM (Random Access Memory) 1010, a network interface device 1020, an HDD 1030, a CPU (Central Processing Unit) 1040, a medium reading device 1050, and a bus 1060. The RAM 1010, the network interface device 1020, the HDD 1030, the CPU 1040, and the medium reading device 1050 are connected by a bus 1060.

そして、HDD1030には、図2に示した制御部10と同様の機能を有する中継プログラム1031が記憶される。また、HDD1030には、図2に示した通信記録テーブル111に対応する中継処理関連情報1032が記憶される。   The HDD 1030 stores a relay program 1031 having the same function as that of the control unit 10 shown in FIG. The HDD 1030 stores relay processing related information 1032 corresponding to the communication record table 111 shown in FIG.

そして、CPU1040が中継プログラム1031をHDD1030から読み出してRAM1010に展開することにより、中継プログラム1031は、中継プロセス1011として機能するようになる。そして、中継プロセス1011は、中継処理関連情報1032から読み出した情報などを適宜RAM1010上の自身に割り当てられた領域に展開し、この展開したデータなどに基づいて各種データ処理を実行する。   Then, the CPU 1040 reads the relay program 1031 from the HDD 1030 and develops it in the RAM 1010, so that the relay program 1031 functions as the relay process 1011. Then, the relay process 1011 expands information read from the relay processing related information 1032 and the like in an area allocated to itself on the RAM 1010 as appropriate, and executes various data processing based on the expanded data.

媒体読取装置1050は、中継プログラム1031がHDD1030に格納されていない場合であっても中継プログラム1031を記憶する媒体などから中継プログラム1031を読み取る。媒体読取装置1050には、例えばCD−ROMや光ディスク装置がある。また、ネットワークインタフェース装置1020は、外部装置とネットワーク経由で接続する装置であり、有線、無線がある。   The medium reading device 1050 reads the relay program 1031 from a medium that stores the relay program 1031 or the like even when the relay program 1031 is not stored in the HDD 1030. Examples of the medium reading device 1050 include a CD-ROM and an optical disk device. The network interface device 1020 is a device connected to an external device via a network, and there are wired and wireless.

なお、上記の中継プログラム1031は、必ずしもHDD1030に格納されている必要はなく、CD−ROMなどの媒体読取装置1050に記憶されたこのプログラムを、コンピュータ1000が読み出して実行するようにしてもよい。また、公衆回線、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)などを介してコンピュータ1000に接続される他のコンピュータ(またはサーバ)などにこのプログラムを記憶させておいても良い。この場合には、コンピュータ1000がネットワークインタフェース装置1020を介してこれらからプログラムを読み出して実行する。   Note that the relay program 1031 is not necessarily stored in the HDD 1030, and the computer 1000 may read and execute the program stored in the medium reader 1050 such as a CD-ROM. In addition, this program may be stored in another computer (or server) connected to the computer 1000 via a public line, the Internet, a LAN (Local Area Network), a WAN (Wide Area Network), or the like. In this case, the computer 1000 reads the program from these via the network interface device 1020 and executes it.

以上の実施例1〜2を含む実施形態に関し、さらに以下の付記を開示する。   The following appendices are further disclosed with respect to the embodiments including Examples 1 and 2 described above.

(付記1)ウェブブラウザが行う操作について、前記ウェブブラウザからウェブサーバに送信されたリクエストデータと前記ウェブサーバから受信したレスポンスデータとを対応付けた通信履歴を記憶した記憶部と、
前記記憶部に記憶された通信履歴に基づいて、セッション管理に用いられる情報が存在する前記レスポンスデータと対応付けられた通信履歴を抽出する第1の抽出部と、
前記記憶部に記憶された通信履歴に基づいて、前記リクエストデータに含まれる情報であって前記ウェブブラウザ側で出力される画面の遷移を管理するために用いられる情報を辿って得られる一連の通信履歴を抽出する第2の抽出部と、
前記第1の抽出部によって抽出された通信履歴および前記第2の抽出部によって抽出された通信履歴の和集合を用いて、前記操作を再現する再現部と
を有することを特徴とする中継装置。
(Additional remark 1) About operation which a web browser performs, the memory | storage part which memorize | stored the communication history which matched the request data transmitted from the said web browser to the web server, and the response data received from the said web server,
A first extraction unit for extracting a communication history associated with the response data in which information used for session management exists based on the communication history stored in the storage unit;
Based on the communication history stored in the storage unit, a series of communications obtained by tracing information that is included in the request data and that is used to manage screen transitions output on the web browser side A second extraction unit for extracting a history;
And a reproduction unit that reproduces the operation using a union of the communication history extracted by the first extraction unit and the communication history extracted by the second extraction unit.

(付記2)前記第1の抽出部は、クッキーが設定される前記レスポンスデータに対応付けられた通信記録を抽出することを特徴とする付記1に記載の中継装置。 (Additional remark 2) The said 1st extraction part extracts the communication record matched with the said response data to which a cookie is set, The relay apparatus of Additional remark 1 characterized by the above-mentioned.

(付記3)前記第2の抽出部は、前記操作におけるリクエストデータに設定された遷移元画面のアドレスを示すリファラーを参照し、該リクエストデータ以前のリクエストデータのうち、リクエストを要求するアドレスが該参照したリファラーが示すアドレスと同じであるリクエストデータを選択し、選択したリクエストデータの通信記録を抽出することを特徴とする付記1に記載の中継装置。 (Supplementary Note 3) The second extraction unit refers to a referrer that indicates an address of the transition source screen set in the request data in the operation, and among the request data before the request data, an address that requests a request is The relay apparatus according to appendix 1, wherein request data having the same address as the referred referer is selected, and a communication record of the selected request data is extracted.

(付記4)前記第2の抽出部によって抽出された通信履歴から、画面内に小画面を構成する際に用いられる情報が存在する前記レスポンスデータと対応付けられた通信履歴を削除し、削除した通信履歴を除いた通信履歴を抽出する第3の抽出部をさらに有し、
前記再現部は、
前記第1の抽出部によって抽出された通信履歴および前記第3の抽出部によって抽出された通信履歴の和集合を用いて、前記操作を再現する
ことを特徴とする付記1から付記3のいずれか1つに記載の中継装置。
(Supplementary Note 4) The communication history associated with the response data in which information used when configuring the small screen is present is deleted from the communication history extracted by the second extraction unit, and deleted. A third extraction unit for extracting a communication history excluding the communication history;
The reproduction unit is
Any one of appendix 1 to appendix 3, wherein the operation is reproduced using a union of the communication history extracted by the first extraction unit and the communication history extracted by the third extraction unit. The relay device according to one.

(付記5)コンピュータに、
ウェブブラウザが行う操作について、前記ウェブブラウザからウェブサーバに送信されたリクエストデータと前記ウェブサーバから受信したレスポンスデータとを対応付けた通信履歴を記憶した記憶部に記憶された通信履歴に基づいて、セッション管理に用いられる情報が存在する前記レスポンスデータと対応付けられた通信履歴を抽出し、
前記記憶部に記憶された通信履歴に基づいて、前記リクエストデータに含まれる情報であって前記ウェブブラウザ側で出力される画面の遷移を管理するために用いられる情報を辿って得られる一連の通信履歴を抽出し、
2つの前記抽出する処理によって抽出された通信履歴の和集合を用いて、前記操作を再現する
処理を実行させる中継プログラム。
(Appendix 5)
For operations performed by the web browser, based on the communication history stored in the storage unit storing the communication history in which the request data transmitted from the web browser to the web server and the response data received from the web server are associated with each other. Extracting a communication history associated with the response data in which information used for session management exists,
Based on the communication history stored in the storage unit, a series of communications obtained by tracing information that is included in the request data and that is used to manage screen transitions output on the web browser side Extract the history,
A relay program that executes a process of reproducing the operation using a union of communication histories extracted by the two processes to be extracted.

(付記6)コンピュータが
ウェブブラウザが行う操作について、前記ウェブブラウザからウェブサーバに送信されたリクエストデータと前記ウェブサーバから受信したレスポンスデータとを対応付けた通信履歴を記憶した記憶部に記憶された通信履歴に基づいて、セッション管理に用いられる情報が存在する前記レスポンスデータと対応付けられた通信履歴を抽出し、
前記記憶部に記憶された通信履歴に基づいて、前記リクエストデータに含まれる情報であって前記ウェブブラウザ側で出力される画面の遷移を管理するために用いられる情報を辿って得られる一連の通信履歴を抽出し、
2つの前記抽出する処理によって抽出された通信履歴の和集合を用いて、前記操作を再現する
各処理を実行することを特徴とする中継方法。
(Additional remark 6) It memorize | stored in the memory | storage part which memorize | stored the communication history which matched the request data transmitted from the said web browser to the web server, and the response data received from the said web server about operation which a computer performs by a web browser Based on the communication history, extract the communication history associated with the response data in which information used for session management exists,
Based on the communication history stored in the storage unit, a series of communications obtained by tracing information that is included in the request data and that is used to manage screen transitions output on the web browser side Extract the history,
A relay method, wherein each process for reproducing the operation is executed using a union of communication histories extracted by the two processes to be extracted.

1、1A 中継装置
2 ウェブブラウザ
3 ウェブサーバ
9 ウェブ中継システム
10 制御部
11 記憶部
12 プロキシ部
13 通信抽出部
14 通信再現部
111 通信記録テーブル
121 リクエスト記録部
122 リクエスト送信部
123 レスポンス送信部
124 レスポンス記録部
131 認証状態抽出部
132 画面遷移抽出部
133、133A 再現抽出部
DESCRIPTION OF SYMBOLS 1, 1A relay apparatus 2 Web browser 3 Web server 9 Web relay system 10 Control part 11 Memory | storage part 12 Proxy part 13 Communication extraction part 14 Communication reproduction part 111 Communication recording table 121 Request recording part 122 Request transmission part 123 Response transmission part 124 Response Recording unit 131 Authentication state extraction unit 132 Screen transition extraction unit 133, 133A Reproduction extraction unit

Claims (4)

ウェブブラウザが行う操作について、前記ウェブブラウザからウェブサーバに送信されたリクエストデータと前記ウェブサーバから受信したレスポンスデータとを対応付けた通信履歴を記憶した記憶部と、
前記記憶部に記憶された通信履歴に基づいて、セッション管理に用いられる情報が存在する前記レスポンスデータと対応付けられた通信履歴を抽出する第1の抽出部と、
前記記憶部に記憶された通信履歴に基づいて、前記リクエストデータに含まれる情報であって前記ウェブブラウザ側で出力される画面の遷移を管理するために用いられる情報を辿って得られる一連の通信履歴を抽出する第2の抽出部と、
前記第1の抽出部によって抽出された通信履歴および前記第2の抽出部によって抽出された通信履歴の和集合を用いて、前記操作を再現する再現部と
を有することを特徴とする中継装置。
For operations performed by the web browser, a storage unit storing a communication history in which request data transmitted from the web browser to the web server and response data received from the web server are associated with each other;
A first extraction unit for extracting a communication history associated with the response data in which information used for session management exists based on the communication history stored in the storage unit;
Based on the communication history stored in the storage unit, a series of communications obtained by tracing information that is included in the request data and that is used to manage screen transitions output on the web browser side A second extraction unit for extracting a history;
And a reproduction unit that reproduces the operation using a union of the communication history extracted by the first extraction unit and the communication history extracted by the second extraction unit.
前記第2の抽出部によって抽出された通信履歴から、画面内に小画面を構成する際に用いられる情報が存在する前記レスポンスデータと対応付けられた通信履歴を削除し、削除した通信履歴を除いた通信履歴を抽出する第3の抽出部をさらに有し、
前記再現部は、
前記第1の抽出部によって抽出された通信履歴および前記第3の抽出部によって抽出された通信履歴の和集合を用いて、前記操作を再現する
ことを特徴とする請求項1に記載の中継装置。
From the communication history extracted by the second extraction unit, delete the communication history associated with the response data in which information used when configuring a small screen in the screen exists, and remove the deleted communication history A third extraction unit for extracting the communication history
The reproduction unit is
The relay apparatus according to claim 1, wherein the operation is reproduced using a union of the communication history extracted by the first extraction unit and the communication history extracted by the third extraction unit. .
コンピュータに、
ウェブブラウザが行う操作について、前記ウェブブラウザからウェブサーバに送信されたリクエストデータと前記ウェブサーバから受信したレスポンスデータとを対応付けた通信履歴を記憶した記憶部に記憶された通信履歴に基づいて、セッション管理に用いられる情報が存在する前記レスポンスデータと対応付けられた通信履歴を抽出し、
前記記憶部に記憶された通信履歴に基づいて、前記リクエストデータに含まれる情報であって前記ウェブブラウザ側で出力される画面の遷移を管理するために用いられる情報を辿って得られる一連の通信履歴を抽出し、
2つの前記抽出する処理によって抽出された通信履歴の和集合を用いて、前記操作を再現する
処理を実行させる中継プログラム。
On the computer,
For operations performed by the web browser, based on the communication history stored in the storage unit storing the communication history in which the request data transmitted from the web browser to the web server and the response data received from the web server are associated with each other. Extracting a communication history associated with the response data in which information used for session management exists,
Based on the communication history stored in the storage unit, a series of communications obtained by tracing information that is included in the request data and that is used to manage screen transitions output on the web browser side Extract the history,
A relay program that executes a process of reproducing the operation using a union of communication histories extracted by the two processes to be extracted.
コンピュータが
ウェブブラウザが行う操作について、前記ウェブブラウザからウェブサーバに送信されたリクエストデータと前記ウェブサーバから受信したレスポンスデータとを対応付けた通信履歴を記憶した記憶部に記憶された通信履歴に基づいて、セッション管理に用いられる情報が存在する前記レスポンスデータと対応付けられた通信履歴を抽出し、
前記記憶部に記憶された通信履歴に基づいて、前記リクエストデータに含まれる情報であって前記ウェブブラウザ側で出力される画面の遷移を管理するために用いられる情報を辿って得られる一連の通信履歴を抽出し、
2つの前記抽出する処理によって抽出された通信履歴の和集合を用いて、前記操作を再現する
各処理を実行することを特徴とする中継方法。
Based on the communication history stored in the storage unit storing the communication history in which the request data transmitted from the web browser to the web server and the response data received from the web server are associated with the operation performed by the web browser by the computer. A communication history associated with the response data in which information used for session management exists,
Based on the communication history stored in the storage unit, a series of communications obtained by tracing information that is included in the request data and that is used to manage screen transitions output on the web browser side Extract the history,
A relay method, wherein each process for reproducing the operation is executed using a union of communication histories extracted by the two processes to be extracted.
JP2011274979A 2011-12-15 2011-12-15 Relay device, relay program, and relay method Active JP5737166B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011274979A JP5737166B2 (en) 2011-12-15 2011-12-15 Relay device, relay program, and relay method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011274979A JP5737166B2 (en) 2011-12-15 2011-12-15 Relay device, relay program, and relay method

Publications (2)

Publication Number Publication Date
JP2013125478A true JP2013125478A (en) 2013-06-24
JP5737166B2 JP5737166B2 (en) 2015-06-17

Family

ID=48776661

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011274979A Active JP5737166B2 (en) 2011-12-15 2011-12-15 Relay device, relay program, and relay method

Country Status (1)

Country Link
JP (1) JP5737166B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021157255A (en) * 2020-03-25 2021-10-07 エルジー シーエヌエス カンパニー リミテッド IT system verification method and system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005250945A (en) * 2004-03-05 2005-09-15 Mitsubishi Electric Corp Web application inspection device
JP2008108047A (en) * 2006-10-25 2008-05-08 Toshiba Corp Communication picture reproducing device and communication picture reproducing program
JP2009087032A (en) * 2007-09-28 2009-04-23 Internatl Business Mach Corp <Ibm> Technology for automating operation of user
JP2011060196A (en) * 2009-09-14 2011-03-24 Hitachi Ltd Method and system for recording and reproducing operation of web application
JP2012099012A (en) * 2010-11-04 2012-05-24 Fujifilm Corp Relay server, data transmission and reception method, and program
JP2013045184A (en) * 2011-08-22 2013-03-04 Internatl Business Mach Corp <Ibm> Device and method for generating data for reproducing transaction

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005250945A (en) * 2004-03-05 2005-09-15 Mitsubishi Electric Corp Web application inspection device
JP2008108047A (en) * 2006-10-25 2008-05-08 Toshiba Corp Communication picture reproducing device and communication picture reproducing program
JP2009087032A (en) * 2007-09-28 2009-04-23 Internatl Business Mach Corp <Ibm> Technology for automating operation of user
JP2011060196A (en) * 2009-09-14 2011-03-24 Hitachi Ltd Method and system for recording and reproducing operation of web application
JP2012099012A (en) * 2010-11-04 2012-05-24 Fujifilm Corp Relay server, data transmission and reception method, and program
JP2013045184A (en) * 2011-08-22 2013-03-04 Internatl Business Mach Corp <Ibm> Device and method for generating data for reproducing transaction

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021157255A (en) * 2020-03-25 2021-10-07 エルジー シーエヌエス カンパニー リミテッド IT system verification method and system
JP7069500B2 (en) 2020-03-25 2022-05-18 エルジー シーエヌエス カンパニー リミテッド IT system verification method and system

Also Published As

Publication number Publication date
JP5737166B2 (en) 2015-06-17

Similar Documents

Publication Publication Date Title
JP5443513B2 (en) Method and system for handling cookies across domains
US20100058118A1 (en) Storage medium recording information reacquisition procedure generation program and information reacquisition procedure generation apparatus
TWI427490B (en) Methods and systems for viewing web pages, and computer program products thereof
JP5463717B2 (en) Application test generation program, application test generation method, and application test apparatus
JP2009181459A (en) Access analyzing device and access analyzing method and access analyzing program
JP2006004136A (en) Html file processing method and program
JP2019021272A (en) Information processing system, information processing method, information processing program and retrieval terminal
CN103905477B (en) A kind of method and server for handling HTTP request
JP5737166B2 (en) Relay device, relay program, and relay method
JP2012123598A (en) Information processor, display method and program
WO2001073562A1 (en) Content server device
JP2016071491A (en) Information processing method and program
JP2007280028A (en) Information processor and method for setting/changing shortcut key
CN101194244B (en) Menu bar providing method and information read screen configuration file creation method
JP5948955B2 (en) Relay device, information reproduction program, and information reproduction method
JP6079267B2 (en) Relay server, relay program, and relay method
KR20100081155A (en) Apparatus and method for going backward to the previous web site on web browser
JP4729089B2 (en) Website counting device and website counting program
JP5699721B2 (en) Request processing program, request processing apparatus, and request processing method
JP5476014B2 (en) Information processing apparatus and program
JP2009176176A (en) Web page distribution device
JP2014229119A (en) Web browsing history analysis system and its web browsing state reproduction method
JP2006059171A (en) Method and system for displaying information related to character string
JP5808484B2 (en) Program, information processing apparatus and data providing method
JP2005339356A (en) Method, device, and program for bookmark management

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140805

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150319

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150324

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150406

R150 Certificate of patent or registration of utility model

Ref document number: 5737166

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150