JP2015170031A - Association method, association program, and association device - Google Patents

Association method, association program, and association device Download PDF

Info

Publication number
JP2015170031A
JP2015170031A JP2014043069A JP2014043069A JP2015170031A JP 2015170031 A JP2015170031 A JP 2015170031A JP 2014043069 A JP2014043069 A JP 2014043069A JP 2014043069 A JP2014043069 A JP 2014043069A JP 2015170031 A JP2015170031 A JP 2015170031A
Authority
JP
Japan
Prior art keywords
input operation
coordinates
data
operation data
drawing processing
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.)
Withdrawn
Application number
JP2014043069A
Other languages
Japanese (ja)
Inventor
久保田 敦
Atsushi Kubota
敦 久保田
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 JP2014043069A priority Critical patent/JP2015170031A/en
Priority to US14/635,409 priority patent/US9646575B2/en
Publication of JP2015170031A publication Critical patent/JP2015170031A/en
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/38Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory with means for controlling the display position
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1415Digital output to display device ; Cooperation and interconnection of the display device with other functional units with means for detecting differences between the image stored in the host and the images displayed on the displays
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/02Networking aspects
    • G09G2370/022Centralised management of display operation, e.g. in a server instead of locally
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/14Display of multiple viewports

Abstract

PROBLEM TO BE SOLVED: To identify drawing processing for an input operation corresponding to a screen operation in a remote desktop system.SOLUTION: Provided is an association method executed by a computer capable of acquiring input operation data and drawing processing data in a remote desktop system in which: an input operation data group and a drawing processing data group in a prescribed period are extracted from the acquired input operation data and drawing processing data; a relative position between a coordinate contained in a piece of input operation data of the input operation data group, and a coordinate in a drawing area contained in a piece of drawing processing data of the drawing processing data group is calculated; on the basis of the relative position of the coordinates, a coordinate assumed to be contained in the input operation data is calculated from a different piece of drawing processing data contained in the drawing processing data group; and on the basis of the assumed coordinate, input operation data contained in the input operation data group is associated with the different piece of drawing processing data.

Description

本発明は、対応付け方法、対応付けプログラム及び対応付け装置に関する。   The present invention relates to an association method, an association program, and an association apparatus.

GUI(Graphical User Interface)を有する対話システムの性能や品質を評価する方法が提案されている(例えば、特許文献1〜3参照)。対話システムの一例としては、サーバのGUIをクライアント機器から操作し、サーバによる描画処理によって生成された画面をクライアント機器に提供するリモートデスクトップシステムが挙げられる。リモートデスクトップシステムの性能や品質を評価するために、ユーザによりマウスの移動等の操作がなされてから画面が提供されるまでの応答時間を計測することがある。この応答時間が短いほど、リモートデスクトップシステムにおけるユーザの体感品質が良いと評価できる。   A method for evaluating the performance and quality of an interactive system having a GUI (Graphical User Interface) has been proposed (see, for example, Patent Documents 1 to 3). As an example of the interactive system, there is a remote desktop system in which a GUI of a server is operated from a client device, and a screen generated by a drawing process by the server is provided to the client device. In order to evaluate the performance and quality of a remote desktop system, a response time from when a user performs an operation such as moving a mouse to when a screen is provided may be measured. It can be evaluated that the shorter the response time, the better the quality of the user experience in the remote desktop system.

特開平8−153022号公報JP-A-8-153022 特開2008−191981号公報JP 2008-191981 特開2004−38619号公報JP 2004-38619 A

上記リモートデスクトップシステムにおいて、ユーザの画面操作に応じた入力操作に対する描画処理が一対一であれば、入力操作データの送信時刻と描画処理データの受信時刻とに基づき応答時間を正確に算出し、システムの品質を正しく評価することができる。   In the remote desktop system, if the drawing process for the input operation corresponding to the user's screen operation is one-to-one, the response time is accurately calculated based on the transmission time of the input operation data and the reception time of the drawing process data, and the system Can be evaluated correctly.

しかしながら、入力操作と描画処理とは必ず一対一に対応するとは限らない。このため、入力操作データと描画処理データとを単純に対応させて応答時間を算出しても、応答時間が正確に算出できずにシステムの品質を正しく評価することは困難である。   However, the input operation and the drawing process do not always correspond one-on-one. For this reason, even if the response time is calculated simply by associating the input operation data with the drawing processing data, it is difficult to accurately calculate the system quality without accurately calculating the response time.

そこで、一側面では、リモートデスクトップシステムにおける画面操作に応じた入力操作に対する描画処理を識別することを目的とする。   Therefore, an object of one aspect is to identify a drawing process for an input operation corresponding to a screen operation in a remote desktop system.

一つの案では、リモートデスクトップシステムにおける画面操作に応じた座標を含む入力操作データと、描画処理された領域の座標を含む描画処理データと、を取得可能なコンピュータが実行する対応付け方法であって、取得された入力操作データと描画処理データとから所定期間内の入力操作データ群と描画処理データ群とを抽出し、前記入力操作データ群のうちの一の入力操作データに含まれる座標と、前記描画処理データ群のうちの一の描画処理データに含まれる描画領域の座標と、の相対位置を算出し、前記座標の相対位置に基づき、前記描画処理データ群に含まれる他の描画処理データから入力操作データに含まれると想定される座標を算出し、前記想定される座標に基づき、前記入力操作データ群に含まれる入力操作データを前記他の描画処理データに対応付ける、処理を含む対応付け方法が提供される。   In one proposal, there is an association method executed by a computer capable of acquiring input operation data including coordinates according to screen operations in a remote desktop system and drawing processing data including coordinates of a drawing processed area. Extracting an input operation data group and a drawing process data group within a predetermined period from the acquired input operation data and drawing process data, and coordinates included in one input operation data of the input operation data group; The relative position of the drawing area coordinate included in one drawing processing data of the drawing processing data group is calculated, and other drawing processing data included in the drawing processing data group based on the relative position of the coordinate The coordinates assumed to be included in the input operation data are calculated from the input operation data included in the input operation data group based on the assumed coordinates. Associating the other drawing processing data, associating method including the process is provided.

一態様によれば、リモートデスクトップシステムにおける画面操作に応じた入力操作に対する描画処理を識別することができる。   According to one aspect, it is possible to identify a drawing process for an input operation corresponding to a screen operation in the remote desktop system.

一実施形態に係るリモートデスクトップシステムの構成例を示す図。The figure which shows the structural example of the remote desktop system which concerns on one Embodiment. 一実施形態に係るリモートデスクトップシステムの動作例を示す図。The figure which shows the operation example of the remote desktop system which concerns on one Embodiment. クライアント機器とサービスサーバとで送受信されるデータの一例を示す図。The figure which shows an example of the data transmitted / received by a client apparatus and a service server. 入力操作に対して描画処理される例を示す図。The figure which shows the example by which a drawing process is performed with respect to input operation. 一実施形態に係るキャプチャサーバの機能構成例を示す図。The figure which shows the function structural example of the capture server which concerns on one Embodiment. 一実施形態に係る操作ログテーブルに記憶される情報の一例を示す図。The figure which shows an example of the information memorize | stored in the operation log table which concerns on one Embodiment. 一実施形態に係るユーザ操作テーブルに記憶される情報の一例を示す図。The figure which shows an example of the information memorize | stored in the user operation table which concerns on one Embodiment. 一実施形態に係る描画処理テーブルに記憶される情報の一例を示す図。The figure which shows an example of the information memorize | stored in the drawing process table which concerns on one Embodiment. 一実施形態に係る相対座標の一例を示す図。The figure which shows an example of the relative coordinate which concerns on one Embodiment. 一実施形態に係る想定されるカーソルの座標の一例を示す図。The figure which shows an example of the coordinate of the assumed cursor which concerns on one Embodiment. 一実施形態に係る対応付けの一例を示す図。The figure which shows an example of the matching which concerns on one Embodiment. 第1実施形態にかかる対応付け処理を示すフローチャート。The flowchart which shows the matching process concerning 1st Embodiment. 第1実施形態にかかる操作ログテーブルに記憶される情報の一例を示す図。The figure which shows an example of the information memorize | stored in the operation log table concerning 1st Embodiment. 第1実施形態にかかる相対座標及び想定されるカーソルの座標の一例を示す図。The figure which shows an example of the relative coordinate concerning 1st Embodiment, and the coordinate of the assumed cursor. 第2実施形態にかかる対応付け処理を説明するための図。The figure for demonstrating the matching process concerning 2nd Embodiment. 第2実施形態にかかる対応付け処理を説明するための図。The figure for demonstrating the matching process concerning 2nd Embodiment. 第2実施形態にかかる操作ログテーブルに記憶される情報の一例を示す図。The figure which shows an example of the information memorize | stored in the operation log table concerning 2nd Embodiment. 第2実施形態にかかる対応付け処理を示すフローチャート。The flowchart which shows the matching process concerning 2nd Embodiment. 一実施形態に係る応答時間テーブルに記憶される情報の一例を示す図。The figure which shows an example of the information memorize | stored in the response time table which concerns on one Embodiment. 一実施形態に係るキャプチャサーバのハードウェア構成の一例を示す図。The figure which shows an example of the hardware constitutions of the capture server which concerns on one Embodiment.

以下、本発明の実施形態について添付の図面を参照しながら説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複した説明を省く。   Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. In addition, in this specification and drawing, about the component which has the substantially same function structure, the duplicate description is abbreviate | omitted by attaching | subjecting the same code | symbol.

[リモートデスクトップシステム]
まず、本発明の一実施形態にかかるリモートデスクトップシステムについて、図1及び図2を参照しながら簡単に説明する。図1は、一実施形態に係るリモートデスクトップシステムの構成例を示す。図2は、一実施形態に係るリモートデスクトップシステムの動作例を示す。
[Remote desktop system]
First, a remote desktop system according to an embodiment of the present invention will be briefly described with reference to FIGS. 1 and 2. FIG. 1 shows a configuration example of a remote desktop system according to an embodiment. FIG. 2 shows an operation example of the remote desktop system according to the embodiment.

本実施形態のリモートデスクトップシステム10は、クライアント機器1、サービスサーバ2、スイッチ3及びキャプチャサーバ4を有する。クライアント機器1とサービスサーバ2とは、ネットワーク5で相互に接続されている。キャプチャサーバ4は、スイッチ3を介してクライアント機器1とサービスサーバ2とで送受信されるデータを取得可能な装置である。   The remote desktop system 10 of this embodiment includes a client device 1, a service server 2, a switch 3, and a capture server 4. The client device 1 and the service server 2 are connected to each other via a network 5. The capture server 4 is a device that can acquire data transmitted and received between the client device 1 and the service server 2 via the switch 3.

例えば、リモートデスクトップシステム10には、サービスサーバ2がデスクトップ画面の生成を実行し、クライアント機器1に提供するシンクライアントシステムと呼ばれるシステムも含まれる。   For example, the remote desktop system 10 includes a system called a thin client system that the service server 2 generates a desktop screen and provides to the client device 1.

なお、本実施形態のシステムでは、クライアント機器1が複数であるが、単数でもよい。また、本実施形態のシステムでは、サービスサーバ2及びキャプチャサーバ4が単数であるが、複数でもよい。サービスサーバ2及びキャプチャサーバ4が複数の場合、それぞれ分散処理をすることも可能である。   In the system of the present embodiment, there are a plurality of client devices 1, but a single client device 1 may be used. In the system of this embodiment, the service server 2 and the capture server 4 are singular, but may be plural. When there are a plurality of service servers 2 and capture servers 4, it is possible to perform distributed processing.

クライアント機器1及びサービスサーバ2は、図2に示したように次のような一連の処理を繰り返す。まず、クライアント機器1は、ユーザによるマウス等の入力装置の操作(以下、「ユーザ操作」ともいう。)に対して入力操作のコマンドをサービスサーバ2に送信する(ステップS1)。入力操作のコマンドには、その操作に関する情報を示す入力操作データが含まれる。   The client device 1 and the service server 2 repeat the following series of processes as shown in FIG. First, the client device 1 transmits an input operation command to the service server 2 in response to an operation of an input device such as a mouse (hereinafter also referred to as “user operation”) by the user (step S1). The input operation command includes input operation data indicating information related to the operation.

「ユーザ操作」は、マウスボタンの押下げ、マウスボタンの移動、キー入力などのユーザによる操作であり、クライアント機器1は、ユーザ操作に応じた入力操作のコマンドを画面更新とは独立にサービスサーバ2に送信する。   The “user operation” is an operation by the user such as a mouse button depression, a mouse button movement, or a key input. The client device 1 sends an input operation command corresponding to the user operation to the service server independently of the screen update. 2 to send.

サービスサーバ2は、受信した入力操作のコマンドに対応する処理を行う。サービスサーバ2は、描画処理のコマンドをクライアント機器1に返信する(ステップS2)。描画処理のコマンドには、サービスサーバ2による描画処理により生成された画面の描画処理データが含まれる。なお、サービスサーバ2による描画処理の一例としては、例えばキー入力に応じた文字の表示、マウス移動操作に伴うポインタの移動、画面のスクロール等、コンピュータが入力操作に応じて実行する種々の描画処理が挙げられる。   The service server 2 performs processing corresponding to the received input operation command. The service server 2 returns a drawing process command to the client device 1 (step S2). The drawing processing command includes screen drawing processing data generated by the drawing processing by the service server 2. Note that as an example of the drawing process by the service server 2, various drawing processes executed by the computer in response to the input operation, such as display of characters in response to key input, movement of a pointer accompanying a mouse movement operation, scrolling of the screen, and the like. Is mentioned.

クライアント機器1は、サービスサーバ2から受信した描画処理データに基づいてディスプレイの画面を更新する。これにより、ユーザは、ユーザ操作の結果を画面上の表示から視覚的に認識することができる。   The client device 1 updates the display screen based on the drawing processing data received from the service server 2. Thereby, the user can visually recognize the result of the user operation from the display on the screen.

リモートデスクトップ環境では、クライアント機器1から「入力操作データ」が送信されてから、クライアント機器1が「描画処理データ」を受信するまでの時間が短いほどユーザの体感する品質が良いということになる。本システムには、クライアント機器1及びサービスサーバ2間で送受信される入力操作データ及び描画処理データを時系列に沿って取得するためにスイッチ3及びキャプチャサーバ4が備えられている。   In the remote desktop environment, the shorter the time from when the “input operation data” is transmitted from the client device 1 until the client device 1 receives the “drawing process data”, the better the quality experienced by the user. The system includes a switch 3 and a capture server 4 for acquiring input operation data and drawing processing data transmitted and received between the client device 1 and the service server 2 in time series.

スイッチ3は、通常のスイッチング機能を備えると共に、ポートミラーリング機能を備える。スイッチ3は、クライアント機器1からサービスサーバ2に送信される入力操作データ及びサービスサーバ2からクライアント機器1に返信される描画処理データを、キャプチャサーバ4に対しポートミラーリングする。   The switch 3 has a normal switching function and a port mirroring function. The switch 3 port mirrors the input operation data transmitted from the client device 1 to the service server 2 and the drawing processing data returned from the service server 2 to the client device 1 with respect to the capture server 4.

キャプチャサーバ4は、スイッチ3によってポートミラーリングされる入力操作データ及び描画処理データをキャプチャすることによって取得する。そして、キャプチャサーバ4は、キャプチャした入力操作データ及び描画処理データを用いて、クライアント機器1における入力操作が送信されてから、その入力操作に応じて生成された描画処理データがクライアント機器1に返信されるまでの応答時間を算出する。   The capture server 4 acquires the input operation data and the drawing process data that are port-mirrored by the switch 3. The capture server 4 uses the captured input operation data and drawing processing data to transmit the input operation in the client device 1, and then returns the drawing processing data generated according to the input operation to the client device 1. The response time to be calculated is calculated.

(クライアント機器及びサービスサーバ間で送受信されるデータの一例)
クライアント機器1及びサービスサーバ2間で送受信されるデータの一例を、図3を参照しながら具体的に説明する。図3に示す例において、下から上に向く矢印は、クライアント機器1からサービスサーバ2に送信されるデータを示す。クライアント機器1からサービスサーバ2に送信されるデータは、入力操作データを含む。
(Example of data sent and received between client device and service server)
An example of data transmitted and received between the client device 1 and the service server 2 will be specifically described with reference to FIG. In the example illustrated in FIG. 3, the arrow pointing from the bottom to the top indicates data transmitted from the client device 1 to the service server 2. Data transmitted from the client device 1 to the service server 2 includes input operation data.

一方、上から下に向く矢印は、サービスサーバ2からクライアント機器1に送信されるデータを示す。サービスサーバ2からクライアント機器1に送信されるデータは、描画処理データを含む。また、描画処理データは、描画処理が新規画面の描画を伴う場合には、描画対象となる画面データを含む。ここで、フレーム送信完了コマンドは、画面の一フレーム分を表示するための描画処理データの送信が完了したことを示す。換言すれば、1つのフレーム送信完了コマンドとその次のフレーム送信完了コマンドとの間に送信される描画処理データが、1フレーム分の画面を表示するための描画処理データに相当する。   On the other hand, arrows pointing from top to bottom indicate data transmitted from the service server 2 to the client device 1. Data transmitted from the service server 2 to the client device 1 includes drawing processing data. The drawing processing data includes screen data to be drawn when the drawing processing involves drawing a new screen. Here, the frame transmission completion command indicates that transmission of the drawing processing data for displaying one frame of the screen has been completed. In other words, the drawing processing data transmitted between one frame transmission completion command and the next frame transmission completion command corresponds to drawing processing data for displaying a screen for one frame.

ところで、サービスサーバ2は原則として、クライアント機器1で表示する画面に更新が発生していないときは、フレーム送信完了コマンドデータを送信しない。例えば、図3に示したように、ユーザがマウスによるウィンドウ移動の操作を行った場合、ユーザ操作「マウスボタンの押上げ及び押下げ」に応じたクライアント機器1の入力操作データに対する「描画処理データ」は一対一に対応している。一方、Aで示した通信データでは、ユーザ操作「マウスカーソルの移動」を示す複数の座標の変化に応じた複数の入力操作データに対して「描画処理データ」は一度送信されたのみである。   Incidentally, in principle, the service server 2 does not transmit the frame transmission completion command data when the screen displayed on the client device 1 is not updated. For example, as illustrated in FIG. 3, when the user performs an operation of moving the window with the mouse, the “drawing processing data” corresponding to the input operation data of the client device 1 in response to the user operation “pushing and pushing the mouse button” "Corresponds one to one. On the other hand, in the communication data indicated by A, “drawing process data” is only transmitted once for a plurality of input operation data corresponding to a change in a plurality of coordinates indicating a user operation “movement of the mouse cursor”.

つまり、マウス操作によるカーソルの位置情報では、ユーザ操作に対する入力操作データが、クライアント機器1からサービスサーバ2にきめ細かく通知されることが多い。その結果として、キャプチャサーバ4は、マウスによりウィンドウを移動するような操作においてはユーザ操作に基づく入力操作データを描画処理データよりも多く取得することとなる。   That is, in the cursor position information by the mouse operation, the input operation data for the user operation is often notified from the client device 1 to the service server 2 in detail. As a result, the capture server 4 acquires more input operation data based on a user operation than drawing processing data in an operation of moving a window with a mouse.

このように、リモートデスクトップ環境においては、複数の入力操作が間引かれ、単一の描画処理にまとめられてしまう場合がある。図4(a)は、複数の入力操作に対して間引かれて描画処理が行われる例を示す。例えば、ユーザ操作a〜dは、それぞれユーザ操作に応じた入力操作に対してそれぞれ描画処理が行われて描画されるのではなく、まとめて単一の描画処理が実行されて、(1)の時点で描画される。同様に、ユーザ操作e〜i、ユーザ操作j〜n、ユーザ操作o〜sは、それぞれまとめて単一の描画処理が実行されて、(2)、(3)、(4)の時点でそれぞれ描画される。   Thus, in a remote desktop environment, a plurality of input operations may be thinned out and combined into a single drawing process. FIG. 4A shows an example in which drawing processing is performed by thinning out a plurality of input operations. For example, the user operations a to d are not drawn by performing the drawing process for each input operation corresponding to the user operation, but are collectively executed as a single drawing process. It is drawn at the time. Similarly, the user operations e to i, the user operations j to n, and the user operations o to s are collectively performed at a time point (2), (3), and (4), respectively. Drawn.

加えて、リモートデスクトップ環境においてはユーザ操作に対する描画処理は多少なりとも遅延する。そのため、抽出する描画処理の終端区間をユーザ操作に対して余裕を持たせる必要がある。一般にインタラクティブな入力操作に対する応答時間の待ち時間の限界値は150ミリ秒といわれており、これは時間αの最短値として使用可能であると考える。また、異常検知を目的とする場合は数秒単位での値が適切であると考える。   In addition, in the remote desktop environment, drawing processing for user operations is somewhat delayed. Therefore, it is necessary to provide a margin for the user operation in the end section of the drawing process to be extracted. Generally, the limit value of the waiting time of response time for interactive input operation is said to be 150 milliseconds, which is considered to be usable as the shortest value of time α. For the purpose of abnormality detection, a value in units of several seconds is considered appropriate.

なお、ネットワークに起因する遅延が発生している場合は上記の待ち時間の基準とは別に、発生している遅延時間に応じて終端区間をさらに延長する必要がある。図4(b)はユーザ操作と描画処理の時系列での関係を表したものである。本実行形態に記載のとおり、リモートデスクトップ環境ではユーザ操作に応じた入力操作データはネットワーク5を通じてサービスサーバ2送られる。サービスサーバ2は、描画処理後、処理結果である描画処理データをネットワーク5を通じてクライアント機器1に送信する。そのため、上記応答時間には、必ずデータ通信による遅延時間が含まれる。図4(b)の例では、ユーザ操作aに対する描画処理データの取得は、上記遅延により(1)で示すタイミングに行われている。(1)のタイミングには次のユーザ操作bが行われている。以下、ユーザ操作bは(2)で示すタイミングに行われ、ユーザ操作cは(3)で示すタイミングに行われる、という具合に処理される。   In addition, when the delay resulting from a network has generate | occur | produced, it is necessary to further extend a termination | terminus area according to the generated delay time separately from the reference | standard of said waiting time. FIG. 4B shows a time-series relationship between the user operation and the drawing process. As described in the present embodiment, in the remote desktop environment, input operation data corresponding to a user operation is sent to the service server 2 through the network 5. After the drawing process, the service server 2 transmits drawing processing data as a processing result to the client device 1 through the network 5. Therefore, the response time always includes a delay time due to data communication. In the example of FIG. 4B, the drawing process data for the user operation a is acquired at the timing indicated by (1) due to the delay. The following user operation b is performed at the timing of (1). Hereinafter, the user operation b is performed at the timing indicated by (2), and the user operation c is performed at the timing indicated by (3).

以上に説明したように、リモートデスクトップ環境において、入力操作データと描画処理データとは必ずしも一対一に対応して送受信されるものではない。また、同じ入力操作データに対して必ず特定の描画処理データが返信されるという性質のものでもない。このため、入力操作データと描画処理データとを単純に対応させて応答時間を算出しても、応答時間が正確に算出できずにシステムの品質を正しく評価することは困難である。   As described above, in the remote desktop environment, the input operation data and the drawing processing data are not necessarily transmitted and received in a one-to-one correspondence. Further, it is not of a nature that specific drawing processing data is always returned for the same input operation data. For this reason, even if the response time is calculated simply by associating the input operation data with the drawing processing data, it is difficult to accurately calculate the system quality without accurately calculating the response time.

そこで、キャプチャサーバ4は、クライアント機器1がサービスサーバ2から受信する描画処理データ群のうちから、一の入力操作データに対応する描画処理データを識別することを可能とする。   Therefore, the capture server 4 can identify drawing processing data corresponding to one input operation data from the drawing processing data group received by the client device 1 from the service server 2.

以下、キャプチャサーバ4によって実行される入力操作データと描画処理データとの対応付けの一実施形態について説明する。なお、キャプチャサーバ4は、入力操作データと描画処理データとの対応付けを行う対応付け装置の一例である。対応付け装置の他の例としては、キャプチャサーバ4からデータを得ることができる他のサーバが挙げられる。つまり、対応付け装置は、クライアント機器1及びサービスサーバ2間で送受信されるデータを取得可能な装置であればどのような形態でシステムに組み込まれていてもよい。   Hereinafter, an embodiment of the association between the input operation data executed by the capture server 4 and the drawing processing data will be described. The capture server 4 is an example of an association device that associates input operation data with drawing processing data. Another example of the associating device is another server that can obtain data from the capture server 4. That is, the associating device may be incorporated in the system in any form as long as it can acquire data transmitted and received between the client device 1 and the service server 2.

また、本明細書では、ユーザ操作の一例として「マウス移動」による「ウィンドウの移動」を上げて説明する。しかしながら、本実施形態に係る対応付け方法では、ユーザ操作はウィンドウの移動に限定されない。   Also, in this specification, “window movement” by “mouse movement” will be described as an example of a user operation. However, in the association method according to the present embodiment, the user operation is not limited to moving the window.

[キャプチャサーバの機能構成]
次に、一実施形態に係るキャプチャサーバ4の機能構成の一例について、図5を参照しながら説明する。図5は、一実施形態に係るキャプチャサーバ4の機能構成の一例を示す。キャプチャサーバ4は、キャプチャ部11、L7解析部12、データ抽出部13、想定位置算出部14、想定位置算出部15、対応付け部16、応答時間算出部17及び記憶部20を有する。また、キャプチャサーバ4の記憶部20は、操作ログテーブル21、ユーザ操作テーブル22、描画処理テーブル23及び応答時間テーブル24を記憶する。
[Capture server function configuration]
Next, an example of a functional configuration of the capture server 4 according to an embodiment will be described with reference to FIG. FIG. 5 shows an example of the functional configuration of the capture server 4 according to an embodiment. The capture server 4 includes a capture unit 11, an L7 analysis unit 12, a data extraction unit 13, an assumed position calculation unit 14, an assumed position calculation unit 15, an association unit 16, a response time calculation unit 17, and a storage unit 20. The storage unit 20 of the capture server 4 stores an operation log table 21, a user operation table 22, a drawing process table 23, and a response time table 24.

キャプチャ部11は、スイッチ3によってポートミラーリングされた、クライアント機器1から送信された入力操作データ及びサービスサーバ2から送信された描画処理データを取得する。この時点では、入力操作データ及び描画処理データは、バイナリデータである。   The capture unit 11 acquires input operation data transmitted from the client device 1 and drawing processing data transmitted from the service server 2, which are port mirrored by the switch 3. At this point, the input operation data and the drawing process data are binary data.

L7解析部12は、キャプチャ部11によって取得された入力操作データ及び描画処理データを解析し、当該データを変換し、入力操作データ及び描画処理データの内容を示す操作ログを生成し、操作ログテーブル21に書き込む。   The L7 analysis unit 12 analyzes the input operation data and the drawing processing data acquired by the capture unit 11, converts the data, generates an operation log indicating the contents of the input operation data and the drawing processing data, and an operation log table Write to 21.

なお、キャプチャ部11及びL7解析部12は、入力操作データ及び描画処理データを取得し、解析するデータ取得部に相当する。入力操作データは、ユーザ操作に応じた画面上の座標を含む。また、描画処理データには、入力操作データに応じてサービスサーバ2により描画処理された描画領域の座標を含む。   Note that the capture unit 11 and the L7 analysis unit 12 correspond to a data acquisition unit that acquires and analyzes input operation data and drawing processing data. The input operation data includes coordinates on the screen according to the user operation. The drawing process data includes the coordinates of the drawing area that has been drawn by the service server 2 in accordance with the input operation data.

データ抽出部13は、操作ログテーブル21に書き込まれたデータのうち、所定の期間内の入力操作データ群と描画処理データ群とを抽出する。所定の期間の一例として、ユーザ操作によりマウスボタンが押し下げられて、カーソルが移動し、マウスボタンが押し上げ(離される)までの時間に更に時間αを加えた時間が挙げられる。時間αの一例としては、サービスサーバ2において描画処理にかかる時間やネットワーク5を介した入力操作データ及び描画処理データの転送にかかる時間等、クライアント機器1及びサービスサーバ2間におけるデータ取得までの遅延時間が挙げられる。抽出された入力操作データ群は、ユーザ操作テーブル22に記憶され、抽出された描画処理データ群は、描画処理テーブル23に記憶される。   The data extraction unit 13 extracts an input operation data group and a drawing process data group within a predetermined period from the data written in the operation log table 21. As an example of the predetermined period, there is a time obtained by adding a time α to the time from when the mouse button is pressed down by the user operation, the cursor moves, and the mouse button is pushed up (released). As an example of the time α, a delay until data acquisition between the client device 1 and the service server 2 such as a time required for drawing processing in the service server 2 and a time required for transferring input operation data and drawing processing data via the network 5. Time is given. The extracted input operation data group is stored in the user operation table 22, and the extracted drawing process data group is stored in the drawing process table 23.

想定位置算出部14は、抽出された入力操作データ群から一の入力操作データを取り出す。想定位置算出部14は、取り出した一の入力操作データに対応する描画処理データを、抽出された描画処理データ群から取り出す。想定位置算出部14は、取り出した入力操作データに含まれるマウスカーソルの座標と描画処理データの描画領域の座標とからマウスカーソルの座標に対する描画領域の座標の相対位置を算出する。   The assumed position calculation unit 14 extracts one input operation data from the extracted input operation data group. The assumed position calculation unit 14 extracts drawing process data corresponding to the extracted input operation data from the extracted drawing process data group. The assumed position calculation unit 14 calculates the relative position of the coordinates of the drawing area with respect to the coordinates of the mouse cursor from the coordinates of the mouse cursor included in the extracted input operation data and the coordinates of the drawing area of the drawing processing data.

後述されるように、想定位置算出部14は、入力操作データ群の最後の入力操作データと描画処理データ群の最後の描画処理データとを取り出し、取り出したデータから相対位置を算出してもよい。また、想定位置算出部14は、入力操作データ群の最後から一つ前又は複数前の入力操作データと描画処理データ群の最後から一つ前又は複数前の描画処理データとを取り出し、取り出したデータから相対位置を算出してもよい。   As will be described later, the assumed position calculation unit 14 may extract the last input operation data of the input operation data group and the last drawing process data of the drawing process data group, and calculate the relative position from the extracted data. . Further, the assumed position calculation unit 14 takes out the input operation data one or more previous times from the last of the input operation data group and the drawing process data one or more times before or from the last of the drawing process data group, and takes them out. The relative position may be calculated from the data.

例えば、「マウスボタンの押下げ」のような入力操作に対する描画処理は一対一に対応している。その理由は、マウスボタンの押下げによるスクロール描画のような場合には、ユーザである人間がキーボードを操作できる速度がコンピュータの処理能力に比べて十分に遅いからである。一方、マウス操作によるカーソルの位置情報は、入力操作がきめ細かく通知されることが多い。その場合、入力操作に対する描画処理は多対一に対応する場合がある。よって、想定位置算出部14は、「マウスボタンの押下げ」のような入力操作に対する描画処理が一対一に対応している入力操作データ及び描画処理データを入力操作データ群及び描画処理データ群から取り出し、相対位置を算出することが好ましい。   For example, a drawing process corresponding to an input operation such as “pressing a mouse button” has a one-to-one correspondence. The reason is that, in the case of scroll drawing by pressing down a mouse button, the speed at which a human user can operate the keyboard is sufficiently slower than the processing capability of the computer. On the other hand, the position information of the cursor by the mouse operation is often notified in detail of the input operation. In that case, the drawing process for the input operation may correspond many-to-one. Therefore, the assumed position calculation unit 14 obtains input operation data and drawing processing data corresponding to a drawing process corresponding to an input operation such as “mouse button depression” from the input operation data group and the drawing processing data group. It is preferable to take out and calculate the relative position.

想定位置算出部15は、算出された座標の相対位置に基づき、描画処理データ群に含まれる他の描画処理データから入力操作データに含まれると想定される座標を算出する。   The assumed position calculation unit 15 calculates coordinates assumed to be included in the input operation data from other drawing process data included in the drawing process data group based on the calculated relative position of the coordinates.

対応付け部16は、想定される座標に基づき、入力操作データ群に含まれる入力操作データを前記他の描画処理データに対応付ける。   The association unit 16 associates the input operation data included in the input operation data group with the other drawing processing data based on the assumed coordinates.

応答時間算出部17は、対応付け部16で対応付けた入力操作データの送信時刻と描画処理データの送信時刻との時間差である応答時間を算出する。   The response time calculation unit 17 calculates a response time that is a time difference between the transmission time of the input operation data associated with the association unit 16 and the transmission time of the drawing process data.

次に、キャプチャサーバ4の記憶部20が記憶する各種データのデータ構造について説明する。   Next, the data structure of various data stored in the storage unit 20 of the capture server 4 will be described.

操作ログテーブル21は、クライアント機器1及びサービスサーバ2間で送受信されるデータの操作ログ情報が記録されるテーブルである。操作ログテーブル21に記憶される操作ログ情報の一例を図6(a)に示す。操作ログテーブル21は、時刻情報(Time)21a、クライアント情報21b、サーバ情報21c、種別(Type)21d、コマンド(Command Name)21e及びコマンド引数(Args)21fの項目を含む。時刻情報21aは、データが送信された時刻を示す。クライアント情報21bは、クライアント機器1のIPアドレス(Client Address)を示す。クライアント情報21bは、クライアント機器1のポート番号(Client Port)を含んでもよい。サーバ情報21cは、サービスサーバ2のIPアドレス(Server Address)を示す。サーバ情報21cは、サービスサーバ2のポート番号(Server Port)を含んでもよい。種別情報21dは、送信されたデータが入力操作データ(REQ)か描画処理データ(RES)かを示す。コマンド21eは、入力操作データ又は描画処理データの指示内容を示し、コマンド引数21fは、コマンド21eの引数を示す。   The operation log table 21 is a table in which operation log information of data transmitted and received between the client device 1 and the service server 2 is recorded. An example of operation log information stored in the operation log table 21 is shown in FIG. The operation log table 21 includes items of time information (Time) 21a, client information 21b, server information 21c, type (Type) 21d, command (Command Name) 21e, and command argument (Args) 21f. The time information 21a indicates the time when data is transmitted. The client information 21b indicates the IP address (Client Address) of the client device 1. The client information 21b may include a port number (Client Port) of the client device 1. The server information 21c indicates the IP address (Server Address) of the service server 2. The server information 21c may include a port number (Server Port) of the service server 2. The type information 21d indicates whether the transmitted data is input operation data (REQ) or drawing processing data (RES). The command 21e indicates the instruction content of the input operation data or the drawing process data, and the command argument 21f indicates the argument of the command 21e.

なお、図6(a)に示した操作ログ情報のうち、スクロールバー領域でのマウスボタンの押下げの入力操作(S)に対して、サービスサーバ2から領域コピーの描画処理(T)と画像描画の描画処理(U)が送信された例を図6(b)に示す。図6(b)の左の画面は、マウスボタンを押下する直前の状態を示し、図6(b)の右の画面は、マウスボタンを押下した直後の状態を示す。   Note that, in the operation log information shown in FIG. 6A, the region copy drawing process (T) and the image from the service server 2 in response to an input operation (S) for pressing the mouse button in the scroll bar area. FIG. 6B shows an example in which the drawing process (U) for drawing is transmitted. The left screen in FIG. 6B shows a state immediately before the mouse button is pressed, and the right screen in FIG. 6B shows a state immediately after the mouse button is pressed.

マウスボタンが押下されると(S)、図6(b)の左の画面に示すように、画面が上方向にスクロールする。このように画面が上方向にスクロールするという画面上の変化は、画面の一部の領域を指定して下から上方向へコピーし(T)、コピーした当該部分の下の領域に画面を新規描画する(U)ことで表現することができる。「上方向領域コピー(T)」及び「新規描画(U)」は、いずれも画面が上方向にスクロールするときに発生する描画処理である。   When the mouse button is pressed (S), the screen scrolls upward as shown in the left screen of FIG. 6B. In this way, the change in the screen that the screen scrolls upward is specified by copying a portion of the screen from the bottom to the top (T), and the screen is newly displayed in the region below the copied portion. It can be expressed by drawing (U). “Upward area copy (T)” and “new drawing (U)” are both drawing processes that occur when the screen scrolls upward.

リモートデスクトップシステム10では、サービスサーバ2からクライアント機器1に画面更新用の描画処理データが送られ、クライアント機器1では受け取ったデータに従って画面の表示を更新する。その際、図6(b)に示したように、画面更新は一般的に画面全体ではなく、更新が必要な部分のみを小区画に区切って、小区画の群をクライアント機器1に送信する。クライアント機器1では小区画のデータを座標に応じて画面表示に反映させることで更新された画面を構成する。この時、どこまでのデータでその時点の画面表示とするのかを通知するためのコマンドが定められている。その一例としては、前述した「フレーム送信完了」コマンドであり、これらに挟まれたデータ群(とその直前までに表示されていた画面)により構成される画面表示をフレームと呼ぶ。   In the remote desktop system 10, drawing processing data for screen update is sent from the service server 2 to the client device 1, and the client device 1 updates the screen display according to the received data. At that time, as shown in FIG. 6B, the screen update is not generally performed on the entire screen, but only a portion that needs to be updated is divided into small sections, and the group of small sections is transmitted to the client device 1. The client device 1 configures the updated screen by reflecting the small section data on the screen display according to the coordinates. At this time, a command for notifying how far data is to be displayed on the screen at that time is determined. As an example, the above-mentioned “frame transmission complete” command is used, and a screen display constituted by a data group sandwiched between them (and a screen displayed up to that point) is called a frame.

具体的には直前のフレームに描画されたデータに関しては再送するのではなく、直前のフレームに対するコピー元の座標と大きさ、及びコピー先の座標をクライアント機器1に送信する。クライアント機器1では指定されたコピー元の座標と大きさから指定された大きさの画像データを採取し、それを指定されたコピー先の座標に表示する。これにより画面の全画像データを送ることなく画面の更新を行うことができる。本実施形態では、これを「領域コピー」コマンドで実行する。使用例としては例えばスクロール処理などがある。   Specifically, the data drawn in the immediately preceding frame is not retransmitted, but the copy source coordinates and size and the copy destination coordinates for the immediately preceding frame are transmitted to the client device 1. The client device 1 collects image data of a specified size from the specified copy source coordinates and size, and displays it at the specified copy destination coordinates. Thus, the screen can be updated without sending all the image data of the screen. In the present embodiment, this is executed by the “area copy” command. Examples of usage include scroll processing.

ユーザ操作テーブル22は、抽出された所定期間内の入力操作データ群のリストが記録される。図7は、一実施形態に係るユーザ操作テーブルに記憶される情報の一例を示す。図7には、ユーザ操作の一例として、「マウスによるウィンドウの移動(マウス移動)」が挙げられている。この場合、ユーザ操作テーブル22に記憶される入力操作データは、入力操作データの送信時刻情報22a及び「マウスによるウィンドウの移動」に対応する画面上の座標(X,Y)22bの項目を含む。   The user operation table 22 records a list of extracted input operation data groups within a predetermined period. FIG. 7 shows an example of information stored in the user operation table according to an embodiment. In FIG. 7, “window movement with mouse (mouse movement)” is given as an example of user operation. In this case, the input operation data stored in the user operation table 22 includes items of transmission time information 22a of the input operation data and coordinates (X, Y) 22b on the screen corresponding to “move window by mouse”.

マウスによるウィンドウの移動では、「マウスボタン押下げ」→「マウスカーソル移動(複数)」→「マウスボタン押し上げ」という順にユーザ操作のコマンドが発生する。   When the window is moved by the mouse, commands for user operations are generated in the order of “mouse button press” → “mouse cursor move (plural)” → “mouse button press”.

そこで、本実施形態に係るユーザ操作テーブル22は、操作ログテーブル21に蓄積された操作ログ情報のうち、所定期間内に発生した「マウスカーソル移動」コマンドの入力操作データ群を抽出し、入力操作データに内包されている座標を時系列にリスト化する(ユーザ操作リスト)。   Therefore, the user operation table 22 according to the present embodiment extracts an input operation data group of a “mouse cursor movement” command generated within a predetermined period from the operation log information accumulated in the operation log table 21, and the input operation data Coordinates included in the data are listed in time series (user operation list).

描画処理テーブル23は、操作ログテーブル21に蓄積された操作ログ情報のうち、所定期間内に発生した「領域コピー」コマンドの描画処理データ群を抽出し、時系列にリスト化する(描画処理リスト)。図8は、一実施形態に係る描画処理テーブル23に記憶される描画処理データの一例を示す。例えば、描画処理データは、描画処理データの送信時刻情報23aと、コピー元(X,Y)の座標23b及びコピー先(X,Y)の座標23cの項目を含む。   The drawing process table 23 extracts drawing process data groups of the “area copy” command generated within a predetermined period from the operation log information accumulated in the operation log table 21, and lists them in time series (draw process list). ). FIG. 8 shows an example of drawing process data stored in the drawing process table 23 according to the embodiment. For example, the drawing processing data includes items of transmission time information 23a of drawing processing data and coordinates 23b of the copy source (X, Y) and coordinates 23c of the copy destination (X, Y).

ここで、所定期間とは、ユーザのマウスボタンの押下操作に応じた入力操作が発生してからマウスボタンの押上(マウスボタンが離される)操作までの時間(例えば、
インタラクティブな入力操作に対する応答時間の待ち時間の限界値である150ミリ秒)であってもよいし、この時間に時間αを加えた時間であってもよい。時間αは、描画処理やデータ通信にかかる遅延時間を考慮して定められてもよい。
Here, the predetermined period is a time period from when an input operation corresponding to a user's mouse button pressing operation occurs until the mouse button is pressed up (mouse button is released) (for example,
It may be 150 milliseconds, which is a limit value of the waiting time of response time for interactive input operation, or may be a time obtained by adding time α to this time. The time α may be determined in consideration of a delay time for drawing processing and data communication.

応答時間テーブル24には、入力操作データの送信時刻と描画処理データの受信時刻との時間差である応答時間が記録される。   In the response time table 24, a response time that is a time difference between the transmission time of the input operation data and the reception time of the drawing process data is recorded.

[入力操作データと描画処理データとの対応付け]
図3に示したように、ユーザ操作が「マウスボタン(カーソルキー)の押下げ、押上げ」によるスクロール描画のような場合、ユーザ操作に応じたクライアント機器1の入力操作データと描画処理データとは一対一に対応する。これはユーザである人間がマウスやキーボードを操作できる速度がコンピュータの処理能力に比べて十分遅いからである。
[Association between input operation data and drawing processing data]
As shown in FIG. 3, when the user operation is such as scroll drawing by “pressing and pushing the mouse button (cursor key)”, input operation data and drawing processing data of the client device 1 according to the user operation, Corresponds one-to-one. This is because the speed at which a human user can operate the mouse and keyboard is sufficiently slower than the processing capability of the computer.

そのため、データ抽出部13が入力操作データ群及び描画処理データ群を抽出する際の所定期間の終端を「マウス移動」コマンドの完了ではなく、「マウスボタンの押上げ」コマンド以降とすることが好ましい。これによれば、入力操作データ群の最後の入力操作に対応する描画処理が確実に発生するため、最後の入力操作データと描画処理データ群の最後の描画処理データとが一対一に対応する区間を抽出することができる。   Therefore, it is preferable that the end of the predetermined period when the data extraction unit 13 extracts the input operation data group and the drawing process data group is not the completion of the “mouse movement” command but the “mouse button press” command or later. . According to this, since the drawing process corresponding to the last input operation of the input operation data group surely occurs, the section in which the last input operation data and the last drawing process data of the drawing process data group correspond one-to-one. Can be extracted.

以下に説明する、第1及び第2実施形態に係る入力操作データと描画処理データとの対応付け方法では、ユーザ操作(入力操作)と描画処理を下記の3ステップで対応付ける。   In the method for associating input operation data and drawing processing data according to the first and second embodiments described below, user operation (input operation) and drawing processing are associated with each other in the following three steps.

(ステップ1:ユーザ操作の範囲を抽出)
ステップ1は、ユーザ操作の範囲を抽出する。ステップ1では、マウスカーソルの座標と描画されるウィンドウの座標とから相対座標が算出される。相対座標の算出の一例を、図9を参照しながら説明する。図9は、一実施形態に係る相対座標の一例を示す図である。
(Step 1: Extract user operation range)
Step 1 extracts a range of user operations. In step 1, relative coordinates are calculated from the coordinates of the mouse cursor and the coordinates of the window to be drawn. An example of the calculation of relative coordinates will be described with reference to FIG. FIG. 9 is a diagram illustrating an example of relative coordinates according to an embodiment.

ステップ1では、入力操作データ群の最後の入力操作データの「マウス移動」コマンドの座標と、描画処理データ群の最後の描画処理データの「領域コピー」コマンドの描画領域の座標とから、描画されるウィンドウとマウスカーソルとの相対座標が算出される。図9の上図では、「マウス移動」コマンドの最後の座標(x,y)と、「領域コピー」の座標における最後の領域の座標(x1,y1,x2,y2、x3,y3)のうちのコピー先の左上の座標(x2,y2)とからコピー先のウィンドウとマウスカーソルとの相対座標が算出される。   In step 1, drawing is performed from the coordinates of the “mouse move” command of the last input operation data of the input operation data group and the coordinates of the drawing area of the “copy area” command of the last drawing processing data of the drawing process data group. The relative coordinates between the window and the mouse cursor are calculated. In the upper diagram of FIG. 9, among the last coordinates (x, y) of the “move mouse” command and the coordinates (x1, y1, x2, y2, x3, y3) of the last area in the coordinates of the “area copy” The relative coordinates of the copy destination window and the mouse cursor are calculated from the upper left coordinates (x2, y2) of the copy destination.

なお、座標(x1,y1)は、コピー元のウィンドウの左上の座標であり、座標(x2,y2)は、コピー先のウィンドウの左上の座標であり、座標(x3,y3)は、コピー先のウィンドウの右下の座標である。図8の「領域コピー」コマンドの座標のうちコピー先座標(X,Y)23cは、ウィンドウの左上の座標(x2,y2)に相当する。なお、図8の「領域コピー」コマンドの座標の例では、ウィンドウの右下の座標(x3,y3)は示されていない。   The coordinates (x1, y1) are the upper left coordinates of the copy source window, the coordinates (x2, y2) are the upper left coordinates of the copy destination window, and the coordinates (x3, y3) are the copy destination. The coordinates of the lower right corner of the window. Of the coordinates of the “copy area” command in FIG. 8, the copy destination coordinates (X, Y) 23c correspond to the coordinates (x2, y2) at the upper left of the window. In the example of the coordinates of the “copy area” command in FIG. 8, the coordinates (x3, y3) at the lower right of the window are not shown.

たとえば、図7に示した入力操作データ群の例と、図8に示した描画処理データ群の例を挙げて説明する。図7に示した入力操作例である「マウス移動」コマンドの座標22bのうちの最後の座標(x,y)は、(556,410)である。また、図8に示した描画処理例である「領域コピー」の座標23b、23cの最後の領域の左上の座標(x2,y2)、つまり、コピー先座標(X,Y)23cは、(229,401)である。よって、図9の下図に示されるように、「マウス移動」の最後の座標(556,410)と、「領域コピー」の座標における最後の領域の左上の座標(229,401)とから、描画されるウィンドウとマウスカーソルとの相対座標は、(327,9)と算出される。   For example, an example of the input operation data group shown in FIG. 7 and an example of the drawing process data group shown in FIG. 8 will be described. The last coordinates (x, y) of the coordinates 22b of the “move mouse” command as an example of the input operation shown in FIG. 7 are (556, 410). Further, the upper left coordinates (x2, y2) of the last area of the “area copy” coordinates 23b and 23c, which is the drawing processing example shown in FIG. 8, that is, the copy destination coordinates (X, Y) 23c is (229). 401). Therefore, as shown in the lower diagram of FIG. 9, the drawing is performed from the last coordinates (556, 410) of “Mouse move” and the upper left coordinates (229, 401) of the last area in the coordinates of “Area copy”. The relative coordinates between the window to be displayed and the mouse cursor are calculated as (327, 9).

(ステップ2:描画処理の範囲を抽出)
ステップ2は、描画処理の範囲を抽出する。ステップ2では、ステップ1にて算出した相対座標に基づいて描画領域のそれぞれに対して想定されるマウスカーソルの座標(該当するマウスカーソルがあるはずの論理的な座標)が算出される。描画処理データ群から、想定されるマウスカーソルの座標を算出する例を、図10を参照しながら説明する。図10は、一実施形態にかかる想定されるマウスカーソルの座標の一例を示す。
(Step 2: Extract the drawing process range)
Step 2 extracts a drawing process range. In step 2, the coordinates of the mouse cursor assumed for each of the drawing areas (logical coordinates where the corresponding mouse cursor should be) are calculated based on the relative coordinates calculated in step 1. An example of calculating the coordinates of the assumed mouse cursor from the drawing processing data group will be described with reference to FIG. FIG. 10 shows an example of the coordinates of the assumed mouse cursor according to the embodiment.

ステップ2では、「領域コピー」コマンドの座標23cに相対座標を加算することで想定されるマウスカーソルの座標が算出される。たとえば、図10の左表の「領域コピー」コマンドの最初の座標23cである座標(432,406)に相対座標(327,9)を加算することで、図10の右表に示される、想定されるマウスカーソルの座標(759,415)が算出される。このようにして、取得した描画処理データ群のすべての「領域コピー」コマンドの座標23cから、想定されるマウスカーソルの座標を算出することができる。   In step 2, the assumed coordinates of the mouse cursor are calculated by adding the relative coordinates to the coordinates 23c of the “copy area” command. For example, the assumption shown in the right table of FIG. 10 is made by adding the relative coordinates (327, 9) to the coordinates (432, 406) which are the first coordinates 23c of the “copy region” command in the left table of FIG. The coordinates (759, 415) of the mouse cursor to be executed are calculated. In this manner, the coordinates of the assumed mouse cursor can be calculated from the coordinates 23c of all “area copy” commands in the acquired drawing processing data group.

以上から、ステップ2では、図4(a)に示した間引きを考慮し、つまり、入力操作データと描画処理データとが一対一に対応していないことを考慮し、間引きの影響を除去するように描画処理データの座標からマウスカーソルの座標を想定する。   From the above, in step 2, the thinning shown in FIG. 4A is considered, that is, the influence of the thinning is removed in consideration of the fact that the input operation data and the drawing processing data do not correspond one-to-one. Let us assume the coordinates of the mouse cursor from the coordinates of the drawing processing data.

(ステップ3:ユーザ処理と描画処理を対応付け)
ステップ3は、ユーザ処理と描画処理を対応付ける。ステップ3では、ステップ2にて算出された、想定されるマウスカーソルの座標と、入力操作データに含まれるマウスカーソルの座標とから、入力操作データ(ユーザ操作)と描画処理データとが対応付けられる。 図11は、ステップ2にて算出された、想定されるマウスカーソルの位置と図7の入力操作データ群の「マウス移動」コマンドの座標との対応付けの結果の一例を示す。ここでは、ユーザ操作テーブル22から想定されるマウスカーソルの位置と一致する座標を有する「マウス移動」コマンドを検索し、一致した「マウス移動」コマンドを該当描画処理データに対応付ける。図11の右表は、対応付けられた「マウス移動」コマンドを塗りつぶして示す。この対応付けによって、リモートデスクトップシステム10において、入力操作に対する描画処理を識別することができる。
(Step 3: Associating user processing with drawing processing)
Step 3 associates user processing with drawing processing. In step 3, the input operation data (user operation) and the drawing process data are associated with each other from the assumed mouse cursor coordinates calculated in step 2 and the mouse cursor coordinates included in the input operation data. . FIG. 11 shows an example of the result of associating the assumed mouse cursor position calculated in step 2 with the coordinates of the “mouse move” command in the input operation data group of FIG. Here, a “move mouse” command having coordinates that match the assumed mouse cursor position is searched from the user operation table 22, and the matched “mouse move” command is associated with the corresponding drawing process data. The right table of FIG. 11 shows the associated “mouse move” command filled in. With this association, the drawing process for the input operation can be identified in the remote desktop system 10.

本実施形態に係る対応付け方法では、上記の3ステップによりリモートデスクトップシステム10における応答時間を正確に測定することができる。これにより、応答時間に基づきリモートデスクトップシステム10の性能や品質を正しく評価することができる。以下では、本実施形態に係る対応付け方法について、第1実施形態及び第2実施形態に分けて詳細に説明する。   In the association method according to the present embodiment, the response time in the remote desktop system 10 can be accurately measured by the above three steps. Thereby, the performance and quality of the remote desktop system 10 can be correctly evaluated based on the response time. Hereinafter, the associating method according to the present embodiment will be described in detail for the first embodiment and the second embodiment.

<第1実施形態>
[キャプチャサーバで実行される対応付け処理]
次に、第1実施形態かかるキャプチャサーバ4で実行される対応付け処理の一例について、図12〜図14を用いて詳細に説明する。図12は、第1実施形態にかかる対応付け処理を示すフローチャートである。図13は、第1実施形態にかかる操作ログテーブルに記憶される情報の一例を示す。図14は、第1実施形態にかかる相対座標及び想定されるカーソルの座標の一例を示す。ここでは、ユーザがマウスカーソルにより画面上のウィンドウの移動の操作を行った場合を例に挙げて説明する。つまり、ユーザ操作によりマウスボタンが押し下げられて、マウスカーソルが移動し、マウスボタンが押し上げられる(離される)動作に応じてキャプチャサーバ4で実行される対応付け処理を説明する。
<First Embodiment>
[Association process executed on the capture server]
Next, an example of the association process executed by the capture server 4 according to the first embodiment will be described in detail with reference to FIGS. FIG. 12 is a flowchart showing the association processing according to the first embodiment. FIG. 13 shows an example of information stored in the operation log table according to the first embodiment. FIG. 14 shows an example of relative coordinates and assumed cursor coordinates according to the first embodiment. Here, a case where the user performs an operation of moving a window on the screen with a mouse cursor will be described as an example. That is, the association processing executed by the capture server 4 in response to an operation in which the mouse button is pressed down by a user operation, the mouse cursor moves, and the mouse button is pressed up (released) will be described.

図12の対応付け処理が開始されると、キャプチャ部11は、クライアント機器1から送信された入力操作データ及びサービスサーバ2から送信された描画処理データを取得する。L7解析部12は、キャプチャ部11によって取得されたバイナリデータを解析し、当該データを変換して入力操作データの情報及び描画処理データの情報を生成する。記憶部20は、生成された入力操作データ及び描画処理データを操作ログテーブル21に記憶する(ステップS10)。操作ログテーブル21の一例を図13に示す。操作ログテーブル21においてコマンド「mouse move」は、ユーザによる「マウスの移動」を指示する。「マウスの移動」コマンドの「コマンド引数」は、「マウスの移動」コマンドの入力操作データに含まれるカーソルの位置を示す座標である。   When the association process of FIG. 12 is started, the capture unit 11 acquires the input operation data transmitted from the client device 1 and the drawing process data transmitted from the service server 2. The L7 analysis unit 12 analyzes the binary data acquired by the capture unit 11, converts the data, and generates input operation data information and drawing processing data information. The storage unit 20 stores the generated input operation data and drawing process data in the operation log table 21 (step S10). An example of the operation log table 21 is shown in FIG. In the operation log table 21, the command “mouse move” instructs “mouse movement” by the user. The “command argument” of the “move mouse” command is a coordinate indicating the position of the cursor included in the input operation data of the “move mouse” command.

コマンド「copy rect cmd」は、「領域コピー」コマンドの描画処理データに含まれる描画されるウィンドウの領域のコピーを指示する。「領域コピー」コマンドの「コマンド引数」では、移動させるウィンドウの「コピー元の左上」、「コピー先の左上」、「コピー先の右下」の座標が順に指定される。   The command “copy rect cmd” instructs to copy the area of the window to be drawn included in the drawing process data of the “area copy” command. In the “command argument” of the “area copy” command, the coordinates of “upper left of copy source”, “upper left of copy destination”, and “lower right of copy destination” of the window to be moved are specified in order.

コマンド「send desk picture」は、「新規描画」コマンドの描画処理データに含まれる描画されるウィンドウの領域のコピーを指示する。「新規描画」コマンドの「コマンド引数」には「画像フォーマット」、「描画領域の左上の座標」、「画像データの幅と高さ」が順に指定される
コマンド「send desk flush image」は、実際にクライアント機器1でのディスプレイ描画の開始を指示する。
The command “send desk picture” instructs to copy the area of the window to be drawn included in the drawing process data of the “new drawing” command. "Image format", "Upper left coordinates of drawing area", "Image data width and height" are specified in order for "Command argument" of "New drawing" command. The command "send desk flush image" is actually Is instructed to start display drawing on the client device 1.

コマンド「mouse button down/mouse button up」は、ユーザによる「マウスのボタンを押下げ/押上げ」の操作を示す。「マウスのボタンを押下げ/押上げ」コマンドの「コマンド引数」によりどのボタンが押下げ及び押上げされたかが通知される。なお、「Btn=0」は左ボタンを表す。   The command “mouse button down / mouse button up” indicates an operation of “pressing / pressing down a mouse button” by the user. The “command argument” of the “press / press mouse button” command notifies which button is pressed and pressed. “Btn = 0” represents the left button.

データ抽出部13は、操作ログテーブル21から入力操作データを一つ取り出す(ステップS11)。これにより、図13の各行に示される入力操作データのいずれかが取り出される。入力操作データであるかは、図13の操作ログテーブル21の各入力操作データに含まれる種別により判定可能である。データ抽出部13は、取り出した入力操作データが「マウスボタンの押下げ」の操作であることが判定されるまで(ステップS12)、順に入力操作データを取り出す(ステップS11)。取り出した入力操作データが「マウスボタンの押下げ」の操作である場合、ステップS13に進む。そして、記憶部20は、ステップS13にて、取り出した入力操作データが「マウスボタンの押上げ」の操作になるまで、操作ログテーブル21から入力操作データを取り出し、ユーザ操作リストを作成する(ステップS14)。次に、データ抽出部13は、操作ログテーブル21に記憶されたデータをすべて処理したかを判定し(ステップS15)、すべてのデータを処理していない場合は、ステップS11に戻って次の入力操作データを取り出し、ステップS12〜S15の処理を実行する。   The data extraction unit 13 extracts one input operation data from the operation log table 21 (step S11). Thereby, any of the input operation data shown in each row of FIG. 13 is extracted. Whether it is input operation data can be determined by the type included in each input operation data of the operation log table 21 of FIG. The data extraction unit 13 sequentially extracts the input operation data (step S11) until it is determined that the extracted input operation data is a “mouse button depression” operation (step S12). If the extracted input operation data is a “mouse button depression” operation, the process proceeds to step S13. Then, in step S13, the storage unit 20 extracts input operation data from the operation log table 21 and creates a user operation list until the input operation data that has been extracted is a “mouse button push-up” operation (step S13). S14). Next, the data extraction unit 13 determines whether all the data stored in the operation log table 21 has been processed (step S15). If all the data has not been processed, the process returns to step S11 for the next input. The operation data is taken out and the processes of steps S12 to S15 are executed.

これにより、図13に示したユーザ操作テーブル22の「上から2行目のボタン押下げコマンド」と「下から3行目のボタン押上げコマンド」の間にある「mouse move」コマンド群(「マウスの移動」コマンド群)が抽出される。このようにして「マウスの移動」コマンド群を抽出することで、上記に説明した本実施形態の対応付け方法の3ステップのうちのステップ1に当たる入力操作(ユーザ操作)データの範囲を抽出したユーザ操作リストが作成される。ユーザ操作リストは、入力操作データ群に相当する。   Thus, the “mouse move” command group (““ button push command on the second line from the top ”) and“ button push command on the third line from the bottom ”in the user operation table 22 shown in FIG. The “move mouse” command group) is extracted. Thus, by extracting the “move mouse” command group, the user who has extracted the range of input operation (user operation) data corresponding to step 1 out of the three steps of the association method of the present embodiment described above. An operation list is created. The user operation list corresponds to an input operation data group.

すべてのデータを処理した場合、データ抽出部13は、ユーザ操作テーブル22に記憶されたユーザ操作リストから入力操作データを一つ取り出す(ステップS16)。   When all the data has been processed, the data extraction unit 13 extracts one input operation data from the user operation list stored in the user operation table 22 (step S16).

次に、データ抽出部13は、取り出した入力操作データ群の時刻情報から開始時刻を取得する(ステップS17)。次に、データ抽出部13は、取り出した入力操作データ群の最終の入力操作データの時刻情報から取得すべき描画処理の最終時刻を取得する(ステップS18)。   Next, the data extraction unit 13 acquires the start time from the time information of the extracted input operation data group (step S17). Next, the data extraction unit 13 acquires the final time of the drawing process to be acquired from the time information of the final input operation data of the extracted input operation data group (step S18).

次に、データ抽出部13は、取得した開始時刻と終了時刻との間に存在する「copy rect cmd」コマンド群(「領域コピー」コマンド群)を抽出した描画処理リストを作成する(ステップS19)。このようにして「領域コピー」コマンド群を抽出することで、上記に説明した本実施形態の対応付け方法の3ステップのうちのステップ2に当たる描画処理データの範囲を抽出した描画処理リストが作成される。図13の例では、下から3行目の「ボタン押上げ」コマンドから一定範囲内に存在する「copy rect cmd」コマンドの画像処理データの範囲を抽出した描画処理リストが作成される。描画処理リストは、描画処理データ群に相当する。   Next, the data extraction unit 13 creates a drawing process list in which the “copy rect cmd” command group (“area copy” command group) existing between the acquired start time and end time is extracted (step S19). . By extracting the “copy area” command group in this way, a drawing processing list is created by extracting the range of drawing processing data corresponding to step 2 out of the three steps of the association method of the present embodiment described above. The In the example of FIG. 13, a drawing processing list is created by extracting the range of image processing data of the “copy rect cmd” command existing within a certain range from the “button push up” command on the third line from the bottom. The drawing process list corresponds to a drawing process data group.

次に、想定位置算出部14は、描画処理リストの最終の画像処理データに含まれる座標を取得する(ステップS20)。次いで、想定位置算出部14は、ユーザ操作リストの最終の入力操作データに含まれる座標を取得する(ステップS21)。次に、想定位置算出部14は、描画処理リストの最終の画像処理データに含まれる左上の座標と、ユーザ操作リストの最終の入力操作データに含まれる座標とから相対座量を算出する(ステップS22)。   Next, the assumed position calculation unit 14 acquires coordinates included in the final image processing data in the drawing processing list (step S20). Next, the assumed position calculation unit 14 acquires coordinates included in the final input operation data in the user operation list (step S21). Next, the assumed position calculation unit 14 calculates a relative seating amount from the upper left coordinates included in the final image processing data of the drawing processing list and the coordinates included in the final input operation data of the user operation list (Step S1). S22).

図13の例によれば、(1)の「ボタン押上げ」コマンドまでの「マウスの移動」コマンドを見ると、最終の入力操作データ(2)の座標(X,Y)は、(506、18)である。また、抽出された「領域コピー」コマンドを見ると、最終の画像処理データ(3)のウィンドウの左上の座標(X2,Y2)は、(10、8)である。これにより、図14(a)に示すように、相対位置は(496、10)と算出される。   According to the example of FIG. 13, when the “move mouse” command up to the “button up” command in (1) is viewed, the coordinates (X, Y) of the final input operation data (2) are (506, 18). When the extracted “copy area” command is viewed, the coordinates (X2, Y2) at the upper left of the window of the final image processing data (3) are (10, 8). Thereby, as shown in FIG. 14A, the relative position is calculated as (496, 10).

次に、想定位置算出部15は、描画処理リストに挙げられた描画処理データに対して論理的なマウスカーソルの位置(想定されるマウスカーソルの位置)を算出する(ステップS23)。たとえば、図13の例では、最後の「領域コピー」コマンドの描画処理データ(3)以外の抽出された描画処理データのうち、「領域コピー」コマンドの描画処理データ(4)、(6)、(7)について、想定されるマウスカーソルの位置が算出される。例えば、描画処理データ(4)の場合、ウィンドウの領域のコピー先の左上の座標(X、Y)は、(365、251)である。図14(b)に示したように、この座標(365、251)に、先に求めた相対座標(496,10)を加算することで、マウスカーソルのの論理的な位置として想定される座標(861,261)が算出される。   Next, the assumed position calculation unit 15 calculates a logical mouse cursor position (assumed mouse cursor position) for the drawing process data listed in the drawing process list (step S23). For example, in the example of FIG. 13, among the drawing process data other than the drawing process data (3) of the last “area copy” command, the drawing process data (4), (6), For (7), the assumed mouse cursor position is calculated. For example, in the case of the drawing processing data (4), the upper left coordinates (X, Y) of the copy destination of the window area are (365, 251). As shown in FIG. 14B, by adding the previously obtained relative coordinates (496, 10) to the coordinates (365, 251), coordinates assumed as the logical position of the mouse cursor. (861,261) is calculated.

図12に戻り、対応付け部16は、描画処理リストから描画処理データを一つ取り出す(ステップS24)。対応付け部16は、想定される座標に一致する「マウスの移動」コマンドの入力操作データがユーザ操作テーブル22に記憶されているかを検索する。対応付け部16は、想定される座標に一致する入力操作データがユーザ操作テーブル22に記憶されていればその入力操作により該当描画処理が実行されたとして、入力操作データ及び描画処理データを対応付ける(ステップS25)。なお、図13の例では、対応付け部16は、対応付けの対象となる入力操作データを、画像処理データ(4)の「copy rect cmd(領域コピー)」コマンドよりも時系列で前の「mouse move(マウス移動)」コマンドのみとすればよい。図13の例では、描画処理データ(4)から想定される座標に一致する「マウスの移動」コマンドの入力操作データ(5)が対応付けられる。   Returning to FIG. 12, the associating unit 16 extracts one drawing process data from the drawing process list (step S24). The associating unit 16 searches the user operation table 22 for the input operation data of the “move mouse” command that matches the assumed coordinates. The associating unit 16 associates the input operation data with the drawing processing data on the assumption that the drawing operation is executed by the input operation if the input operation data matching the assumed coordinates is stored in the user operation table 22 ( Step S25). In the example of FIG. 13, the associating unit 16 sets the input operation data to be associating with the “copy rect cmd (region copy)” command of the image processing data (4) in time series. Only the “mouse move” command is required. In the example of FIG. 13, the input operation data (5) of the “move mouse” command that matches the coordinates assumed from the drawing processing data (4) is associated.

次に、対応付け部16は、抽出した操作群から対応付けした操作より時系列で前に存在するエントリ(項目)を削除する(ステップS26)。図13の例では、画像処理データ(4)より時系列で前に存在する「mouse move」コマンドの入力操作データが削除される。なお、ステップS26は省略することも可能であるが、操作ログテーブル21を有効に使用するためには省略しないほうが良い。   Next, the associating unit 16 deletes entries (items) existing before in time series from the associated operations from the extracted operation group (step S26). In the example of FIG. 13, the input operation data of the “mouse move” command existing in chronological order before the image processing data (4) is deleted. Although step S26 can be omitted, it is better not to omit it in order to use the operation log table 21 effectively.

以後、ステップS27にて、想定位置算出部15は、描画処理リストに含まれる、想定座標が算出されていない描画処理データに対して想定されるマウスカーソルの想定座標を算出する。そして、描画処理リストに含まれるすべての描画処理データについて処理が行われるまで(ステップS28)、対応付け部16は、ステップS24〜S27の対応付け処理を実行する。これにより、図13の例では、描画処理データ(6)、(7)についても同様にしてマウスカーソルのの論理的な位置として想定される座標を算出し、想定される座標に一致する「マウスの移動」コマンドの入力操作データと対応付ける。   Thereafter, in step S27, the assumed position calculation unit 15 calculates the assumed coordinates of the mouse cursor that are assumed for the drawing process data for which the assumed coordinates are not included, which are included in the drawing process list. Then, the association unit 16 performs the association process of steps S24 to S27 until the process is performed for all the drawing process data included in the drawing process list (step S28). Accordingly, in the example of FIG. 13, the coordinates assumed as the logical position of the mouse cursor are similarly calculated for the drawing processing data (6) and (7), and the “mouse” matching the assumed coordinates is calculated. Is associated with the input operation data of the "Move" command.

描画処理リストに含まれるすべての描画処理データについて(ステップS28)、ユーザ操作リストに含まれる入力操作データのいずれかとの対応付けの処理が完了するまで(ステップS29)、S24〜S28の対応付け処理が実行される。すべての対応付け処理が終了したとき、本処理は終了する。   For all the drawing process data included in the drawing process list (step S28), until the process of associating with any of the input operation data included in the user operation list is completed (step S29), the association process of S24 to S28. Is executed. When all the association processes are completed, this process ends.

以上に説明したように、第1実施形態にかかるキャプチャサーバ4によれば、リモートデスクトップシステム10において、クライアント機器1による入力操作に対するサービスサーバ2からの描画処理を識別することができる。これにより、入力操作データと、その入力操作に応じた描画処理の結果得られる描画処理データとを対応付けることができる。つまり、キャプチャサーバ4は、「ユーザ操作に応じた入力操作」と「描画処理」の座標情報のズレである相対座標を算出し、相対座標を用いて想定されるマウスカーソルの座標を算出し、算出されたマウスカーソルの座標と一致する座標を有する入力操作データを特定する。このようにして特定された入力操作データを描画処理データに対応付ける。こうして対応付けられた入力操作データと描画処理データとの時刻情報の差分から応答時間を正確に測定することができる。この結果、正確な応答時間に基づきリモートデスクトップシステム10の性能や品質を正しく評価することができる。   As described above, according to the capture server 4 according to the first embodiment, the drawing process from the service server 2 for the input operation by the client device 1 can be identified in the remote desktop system 10. Thereby, the input operation data can be associated with the drawing process data obtained as a result of the drawing process corresponding to the input operation. That is, the capture server 4 calculates a relative coordinate that is a difference between the coordinate information of the “input operation according to the user operation” and the “drawing process”, calculates the coordinate of the assumed mouse cursor using the relative coordinate, The input operation data having coordinates that match the calculated coordinates of the mouse cursor are specified. The input operation data specified in this way is associated with the drawing process data. The response time can be accurately measured from the difference in time information between the input operation data and the drawing process data thus associated. As a result, it is possible to correctly evaluate the performance and quality of the remote desktop system 10 based on the accurate response time.

<第2実施形態>
次に、第2実施形態かかるキャプチャサーバ4で実行される対応付け処理の一例について、図15〜図18を用いて詳細に説明する。図15及び図16は、第2実施形態にかかる対応付け処理を説明するための図である。図17は、第2実施形態にかかる操作ログテーブルに記憶される情報の一例を示す.図18は、第2実施形態にかかる対応付け処理を示すフローチャートである。ここでは、第1実施形態と同様にユーザがマウスカーソルにより画面上のウィンドウの移動の操作を行った場合を例に挙げて説明する。
Second Embodiment
Next, an example of the association process executed by the capture server 4 according to the second embodiment will be described in detail with reference to FIGS. 15 and 16 are diagrams for explaining the association processing according to the second embodiment. FIG. 17 shows an example of information stored in the operation log table according to the second embodiment. FIG. 18 is a flowchart illustrating the association processing according to the second embodiment. Here, as in the first embodiment, a case where the user performs an operation of moving a window on the screen using a mouse cursor will be described as an example.

第1実施形態では、「領域コピー」コマンドの描画処理データに含まれるコピー先領域の左上の座標を基準として相対座標が求められた。しかしながら、図15に示したように、マウスの移動時にウィンドウの左端が画面の左端を超えるとコピー先領域として画面の範囲外の部分は通知されない。このため、ウィンドウの左上の座標Pからのマウスカーソルの相対位置が、正しいマウスカーソルの座標であるにもかかわらず、ウィンドウの領域内の画面の左上に対する座標Qからのマウスカーソルの相対位置が誤って算出されてしまう場合が考えられる。   In the first embodiment, the relative coordinates are obtained with reference to the upper left coordinates of the copy destination area included in the drawing process data of the “area copy” command. However, as shown in FIG. 15, when the left edge of the window exceeds the left edge of the screen when the mouse is moved, a portion outside the screen range is not notified as the copy destination area. For this reason, the relative position of the mouse cursor from the coordinate Q with respect to the upper left of the screen in the window area is incorrect even though the relative position of the mouse cursor from the coordinate P at the upper left of the window is the correct coordinate of the mouse cursor. May be calculated.

そこで、第2実施形態では、想定位置算出部14は、第1実施形態にかかる対応付け方法と同様に、ウィンドウの左上の座標からのマウスカーソルの相対位置を算出する。これに加えて、第2実施形態では、想定位置算出部14は、ウィンドウの右下の座標からのマウスカーソルの相対位置を算出する。   Therefore, in the second embodiment, the assumed position calculation unit 14 calculates the relative position of the mouse cursor from the upper left coordinates of the window, as in the association method according to the first embodiment. In addition, in the second embodiment, the assumed position calculation unit 14 calculates the relative position of the mouse cursor from the lower right coordinates of the window.

たとえば、図13の例によれば、(1)の「ボタン押上げ」コマンドまでの「マウスの移動」コマンドを見ると、最終の入力操作データ(2)の座標(X,Y)は、(506、18)である。また、抽出された「領域コピー(copy rect cmd)」コマンドの描画処理データ(3)では、ウィンドウの左上の座標(x2、y2)は(10,8)である。よって、図15の右の座標に示すように、ウィンドウの左上の座標からのマウスカーソルの相対位置は、第1実施形態において説明したとおり(496,10)と算出される。   For example, according to the example of FIG. 13, when the “move mouse” command up to the “button up” command in (1) is viewed, the coordinates (X, Y) of the final input operation data (2) are ( 506, 18). In the drawing process data (3) of the extracted “copy rect cmd” command, the coordinates (x2, y2) at the upper left of the window are (10, 8). Therefore, as shown in the right coordinate of FIG. 15, the relative position of the mouse cursor from the upper left coordinate of the window is calculated as (496, 10) as described in the first embodiment.

これに加えて、第2実施形態では、ウィンドウの右下の座標からのマウスカーソルの相対位置が算出される。抽出された「領域コピー(copy rect cmd)」コマンドの描画処理データ(3)では、ウィンドウの右下の座標(x3、y3)は、(942,593)である。よって、ウィンドウの右下の座標に対するマウスカーソルの相対位置は、(436,575)と算出される。   In addition, in the second embodiment, the relative position of the mouse cursor is calculated from the lower right coordinates of the window. In the drawing processing data (3) of the extracted “copy rect cmd” command, the coordinates (x3, y3) at the lower right of the window are (942, 593). Therefore, the relative position of the mouse cursor with respect to the lower right coordinates of the window is calculated as (436, 575).

ここで、図16に示すように、ウィンドウの左300ドット分が画面外に出たとする。この時、「領域コピー」コマンドの描画処理データに含まれるコピー先の左端のx座標は、0に設定される。つまり、「領域コピー」コマンドのコピー先の左上の座標(x2、y2)は、(0,8)に設定される。例えば、第2実施形態では、図17に示した操作ログテーブル21に記憶された入力操作データ及び描画処理データが用いられるとする。この場合、第1実施形態における操作ログテーブル21に記憶された入力操作データ及び描画処理データとの違いは、中央部分に記載された差分データのみである。この差分データ中の「領域コピー」コマンドから、コピー先の右下の座標座標(x3、y3)が(632,593)であることが通知される。   Here, as shown in FIG. 16, it is assumed that the left 300 dots of the window are out of the screen. At this time, the x coordinate of the left end of the copy destination included in the drawing process data of the “area copy” command is set to zero. That is, the upper left coordinates (x2, y2) of the copy destination of the “copy area” command are set to (0, 8). For example, in the second embodiment, it is assumed that input operation data and drawing process data stored in the operation log table 21 illustrated in FIG. 17 are used. In this case, the difference between the input operation data and the drawing process data stored in the operation log table 21 in the first embodiment is only the difference data described in the central portion. The “copy area” command in the difference data notifies that the lower right coordinate coordinates (x3, y3) of the copy destination are (632, 593).

上記「領域コピー」コマンドに含まれる左上の座標を基準としてマウスカーソルの想定される座標を算出すると(496,18)となる。実際の正しい座標は(196,18)であり、描画処理データと入力操作データとが正しく対応付けられていない。   When the coordinates of the mouse cursor that are assumed are calculated based on the upper left coordinates included in the above-mentioned “copy area” command, (496, 18) is obtained. The actual correct coordinates are (196, 18), and the drawing process data and the input operation data are not correctly associated.

この場合、「領域コピー」コマンドに含まれる右下の座標を基準としてマウスカーソルの想定される座標を算出すると(206,18)となり、正しいマウスカーソルの座標が得られる。そこで、第2実施形態では、ウィンドウの領域を画定する複数の座標を用いて想定されるマウスカーソルの座標を算出し、入力操作データと描画処理データとをより正しく対応付ける。   In this case, when the assumed coordinates of the mouse cursor are calculated based on the lower right coordinates included in the “copy area” command, (206, 18), the correct mouse cursor coordinates are obtained. Therefore, in the second embodiment, the coordinates of the assumed mouse cursor are calculated using a plurality of coordinates that define the window area, and the input operation data and the drawing process data are more accurately associated with each other.

[キャプチャサーバで実行される対応付け処理]
第2実施形態にかかる対応付け処理は、図18に示したように、ステップS100及びS101のみ、第1実施形態にかかる対応付け処理と異なる。よって、第1実施形態にかかる対応付け処理と同じ部分は、図12の第1実施形態にかかる対応付け処理のフローチャートに示されるステップと同じステップが付与されている。つまり、図18に示したステップS10〜S22、ステップS23〜25、ステップS26〜S29は図12のステップS10〜S29と同一の処理であるため、ここでは説明を省略する。
[Association process executed on the capture server]
As shown in FIG. 18, the association process according to the second embodiment is different from the association process according to the first embodiment only in steps S100 and S101. Therefore, the same steps as those shown in the flowchart of the association process according to the first embodiment in FIG. 12 are given to the same parts as the association process according to the first embodiment. That is, steps S10 to S22, steps S23 to S25, and steps S26 to S29 shown in FIG. 18 are the same processes as steps S10 to S29 in FIG.

ステップS100では、想定位置算出部14は、描画処理リストの最終の画像処理データに含まれる右下の座標と、ユーザ操作リストの最終の入力操作データに含まれる座標とから相対座標(右下基準の相対座標)を算出する。次に、ステップS23〜S25が実行され、対応付け部16は、ステップS22の左上基準の相対座標に基づき算出された、左上基準の想定されるマウスカーソルの座標と一致する入力操作データを対応付ける。ただし、左上基準の想定されるマウスカーソルの座標と一致する入力操作データが存在しない場合もある。その場合であっても、第2実施形態では、ステップS101において、対応付け部16は、右下基準の相対座標に基づき算出された、右下基準の想定されるマウスカーソルの座標と一致する入力操作データを対応付ける。   In step S100, the assumed position calculation unit 14 calculates relative coordinates (lower right reference) from the lower right coordinates included in the final image processing data of the drawing processing list and the coordinates included in the final input operation data of the user operation list. Relative coordinates). Next, steps S23 to S25 are executed, and the associating unit 16 associates the input operation data that matches the coordinates of the assumed mouse cursor with the upper left reference calculated based on the upper left reference relative coordinates in step S22. However, there may be cases where there is no input operation data that matches the assumed coordinates of the mouse cursor based on the upper left. Even in that case, in the second embodiment, in step S101, the associating unit 16 matches the coordinates of the assumed mouse cursor with the lower right reference calculated based on the relative coordinates with the lower right reference. Associate operation data.

以上に説明したように、第2実施形態にかかるキャプチャサーバ4によれば、複数の論理的な座標(想定される座標)に基づいてキャプチャサーバ4が取得した「ユーザ操作に基づく入力操作」と「描画処理」とをより正確に対応付けることができる。こうして対応付けられた「入力操作データ」と「描画処理データ」との時刻情報の差分から応答時間の測定がより精度よく求められる。この結果、その応答時間に基づきリモートデスクトップシステム10の性能や品質の評価の精度をより高めることができる。   As described above, according to the capture server 4 according to the second embodiment, “input operation based on user operation” acquired by the capture server 4 based on a plurality of logical coordinates (assumed coordinates). The “drawing process” can be associated more accurately. The response time can be measured more accurately from the difference in time information between the “input operation data” and the “drawing process data” thus associated. As a result, the accuracy of the performance and quality evaluation of the remote desktop system 10 can be further increased based on the response time.

上記各実施形態において対応付けられた入力操作データと描画処理データとの時刻情報の差分から応答時間を算出した例を図19に示す。図19は、応答時間テーブルに記憶される情報の一例を示す。応答時間算出部17は、入力操作データと描画処理データとの時刻情報の差分から「マウスの移動」の入力操作から実際の画面描画までの応答時間を算出する。例えば、リモートデスクトップシステム10の性能や品質の評価は、これらの応答時間の平均値や中央値等の代表値に基づき行われてもよい。   FIG. 19 shows an example in which the response time is calculated from the difference in time information between the input operation data and the drawing process data associated with each other in the above embodiments. FIG. 19 shows an example of information stored in the response time table. The response time calculation unit 17 calculates the response time from the input operation of “movement of the mouse” to the actual screen drawing from the difference in time information between the input operation data and the drawing processing data. For example, the performance and quality of the remote desktop system 10 may be evaluated based on a representative value such as an average value or a median value of these response times.

(ハードウェア構成例)
最後に、一実施形態に係るキャプチャサーバ4のハードウェア構成例について簡単に説明する。図20は、一実施形態に係るキャプチャサーバ4のハードウェア構成の一例を示す。
(Hardware configuration example)
Finally, a hardware configuration example of the capture server 4 according to an embodiment will be briefly described. FIG. 20 shows an example of the hardware configuration of the capture server 4 according to an embodiment.

キャプチャサーバ4は、入力装置101、表示装置102、外部I/F103、RAM(Random Access Memory)104、ROM(Read Only Memory)105、CPU(Central Processing Unit)106、通信I/F107及びHDD(Hard Disk Drive)108を有し、それぞれがバスBで相互に接続されている。   The capture server 4 includes an input device 101, a display device 102, an external I / F 103, a RAM (Random Access Memory) 104, a ROM (Read Only Memory) 105, a CPU (Central Processing Unit) 106, a communication I / F 107, and an HDD (Hard). Disk Drive) 108 are connected to each other by a bus B.

入力装置101は、キーボードやマウスなどを含み、ユーザのマウス操作等に応じてキャプチャサーバ4に各操作を入力するのに用いられる。表示装置102は、ディスプレイなどを含み、キャプチャサーバ4の管理者にシステム運用結果等を表示する。   The input device 101 includes a keyboard, a mouse, and the like, and is used to input each operation to the capture server 4 according to a user's mouse operation or the like. The display device 102 includes a display or the like, and displays a system operation result or the like to the administrator of the capture server 4.

通信I/F107は、キャプチャサーバ4をネットワーク5に接続するインタフェースである。これにより、キャプチャサーバ4は、通信I/F107を介して入力操作データや描画処理データを取得することができる。   The communication I / F 107 is an interface that connects the capture server 4 to the network 5. Thereby, the capture server 4 can acquire input operation data and drawing process data via the communication I / F 107.

HDD108は、プログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムやデータには、装置全体を制御する基本ソフトウェアであるOS(Operating System)、及びOS上において各種機能を提供するアプリケーションソフトウェアなどがある。また、HDD108は、上記実施形態の対応付け処理を行うためにCPU106により実行される対応付けプログラムを格納する。   The HDD 108 is a non-volatile storage device that stores programs and data. The stored programs and data include an OS (Operating System) that is basic software for controlling the entire apparatus, and application software that provides various functions on the OS. Further, the HDD 108 stores an association program executed by the CPU 106 in order to perform the association process of the above embodiment.

外部I/F103は、外部装置とのインタフェースである。外部装置には、記録媒体103aなどがある。キャプチャサーバ4は、外部I/F103を介して、記録媒体103aの読み取り及び/又は書き込みを行うことができる。記録媒体103aには、CD(Compact Disk)、及びDVD(Digital Versatile Disk)、ならびに、SDメモリカード(SD Memory card)やUSBメモリ(Universal Serial Bus memory)等がある。   The external I / F 103 is an interface with an external device. The external device includes a recording medium 103a. The capture server 4 can read and / or write to the recording medium 103 a via the external I / F 103. The recording medium 103a includes a CD (Compact Disk), a DVD (Digital Versatile Disk), an SD memory card (SD Memory card), a USB memory (Universal Serial Bus memory), and the like.

ROM105は、不揮発性の半導体メモリ(記憶装置)であり、起動時に実行されるBIOS(Basic Input/Output System)、OS設定、及びネットワーク設定などのプログラムやデータが格納されている。RAM104は、プログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)である。CPU106は、上記記憶装置(例えば「HDD」や「ROM」など)から、プログラムやデータをRAM上に読み出し、処理を実行することで、装置全体の制御や搭載機能を実現する演算装置である。   The ROM 105 is a nonvolatile semiconductor memory (storage device), and stores programs and data such as BIOS (Basic Input / Output System), OS settings, and network settings that are executed at startup. The RAM 104 is a volatile semiconductor memory (storage device) that temporarily stores programs and data. The CPU 106 is an arithmetic device that realizes control and mounting functions of the entire apparatus by reading programs and data from the storage device (for example, “HDD” and “ROM”) onto the RAM and executing processing.

データ抽出部13、想定位置算出部14、想定位置算出部15、対応付け部16及び応答時間算出部17の各部は、HDD108にインストールされたプログラムがCPU106に実行させる処理により実現される。操作ログテーブル21、ユーザ操作テーブル22及び描画処理テーブル23は、例えば、RAM104、HDD108、又はキャプチャサーバ4にネットワーク5を介して接続される記憶装置を用いて実現可能である。   Each of the data extraction unit 13, the assumed position calculation unit 14, the assumed position calculation unit 15, the association unit 16, and the response time calculation unit 17 is realized by processing executed by the CPU 106 by a program installed in the HDD 108. The operation log table 21, the user operation table 22, and the drawing processing table 23 can be realized using, for example, the RAM 104, the HDD 108, or a storage device connected to the capture server 4 via the network 5.

以上に説明したように、各実施形態におけるクライアント機器1とサービスサーバ2との間では、通信プロトコルに従い入力操作データと描画処理データとが送受信されている。各実施形態にかかるキャプチャサーバ4は、入力操作データと描画処理データとの座標情報のズレを算出し、ズレを用いて論理的な座標情報を算出する。論理的な座標情報に基づいて実際の「ユーザ操作」と「描画処理」とを対応付ける。キャプチャサーバ4は、こうして対応付けられた入力操作データと描画処理データととの時刻情報の差分から応答時間を測定し、これによりリモートデスクトップシステム10の品質を正確に測定することができる。   As described above, between the client device 1 and the service server 2 in each embodiment, the input operation data and the drawing process data are transmitted and received according to the communication protocol. The capture server 4 according to each embodiment calculates a shift of coordinate information between the input operation data and the drawing processing data, and calculates logical coordinate information using the shift. Based on the logical coordinate information, the actual “user operation” is associated with the “drawing process”. The capture server 4 measures the response time from the difference in time information between the input operation data and the drawing process data thus associated, and thereby can accurately measure the quality of the remote desktop system 10.

以上、対応付け方法、対応付けプログラム及び対応付け装置を上記各実施形態により説明したが、本発明は上記実施形態に限定されるものではなく、本発明の範囲内で種々の変形及び改良が可能である。また、本発明では、上記各実施形態で述べた技術を矛盾しない範囲で組み合わせることができる。   As described above, the association method, the association program, and the association apparatus have been described in the above embodiments, but the present invention is not limited to the above embodiments, and various modifications and improvements can be made within the scope of the present invention. It is. Further, in the present invention, the techniques described in the above embodiments can be combined within a consistent range.

例えば、上記実施形態では、主な入力操作として、ユーザによるマウスやキーボードの操作に基づく画面上の「マウスカーソルの移動」による「ウィンドウの移動」を例に挙げて説明した。しかしながら、入力操作には、これに限られず、ユーザによる様々な画面操作に応じた座標を含む操作が含まれる。例えば、入力操作は、画面上に表示された「何らかのオブジェクトの移動」やその他のいかなる操作であってもよい。また、入力操作には、ユーザがマウスやキーボードを用いて直接的に画面操作に応じた操作だけでなく、ユーザのジェスチャ操作により、遠隔的に画面操作に応じた操作も含まれる。   For example, in the above-described embodiment, as the main input operation, “window movement” by “movement of the mouse cursor” on the screen based on the operation of the mouse or the keyboard by the user has been described as an example. However, the input operation is not limited to this, and includes an operation including coordinates according to various screen operations by the user. For example, the input operation may be “movement of some object” displayed on the screen or any other operation. The input operation includes not only an operation according to a screen operation directly by a user using a mouse or a keyboard but also an operation according to a screen operation remotely by a user's gesture operation.

本発明にかかる対応付け方法によれば、クライアント機器が送信する入力操作データと、クライアント機器がサービスサーバから受信する描画処理データとが必ずしも一対一に取得されない場合においても、システムの性能や品質をより正しく評価することができる。   According to the associating method according to the present invention, even when the input operation data transmitted by the client device and the drawing processing data received by the client device from the service server are not necessarily acquired one-to-one, the performance and quality of the system can be improved. It can be evaluated more correctly.

また、本発明にかかる対応付け方法は、入力操作データ及び描画処理データにユーザの識別情報を含むことによって、ユーザ毎の応答時間を算出することができる。   Further, the association method according to the present invention can calculate the response time for each user by including the user identification information in the input operation data and the drawing processing data.

以上の説明に関し、更に以下の項を開示する。
(付記1)
リモートデスクトップシステムにおける画面操作に応じた座標を含む入力操作データと、描画処理された領域の座標を含む描画処理データと、を取得可能なコンピュータが実行する対応付け方法であって、
取得された入力操作データと描画処理データとから所定期間内の入力操作データ群と描画処理データ群を抽出し、
前記入力操作データ群のうちの一の入力操作データに含まれる座標と、前記描画処理データ群のうちの一の描画処理データに含まれる描画領域の座標と、の相対位置を算出し、
前記座標の相対位置に基づき、前記描画処理データ群に含まれる他の描画処理データから入力操作データに含まれると想定される座標を算出し、
前記想定される座標に基づき、前記入力操作データ群に含まれる入力操作データを前記他の描画処理データに対応付ける、
処理を含む対応付け方法。
(付記2)
前記相対位置を算出する処理は、
前記入力操作データ群のうちの最後の入力操作データに含まれる座標と、前記描画処理データ群のうちの最後の描画処理データに含まれる描画領域の座標と、の相対位置を算出する、
付記1に記載の対応付け方法。
(付記3)
前記相対位置を算出する処理は、
前記入力操作データ群のうちの最後の入力操作データに含まれる座標と、前記描画処理データ群のうちの最後の描画処理データに含まれる描画領域を画定する複数の座標のそれぞれとから、前記座標の相対位置を複数算出し、
前記想定される座標を算出する処理は、
複数の前記座標の相対位置に基づき、前記描画処理データ群に含まれる他の描画処理データから入力操作データに含まれると想定される座標を複数算出し、
前記対応付ける処理は、
複数の前記想定される座標の少なくともいずれかに基づき、前記入力操作データ群に含まれる入力操作データを前記他の描画処理データに対応付ける、
付記2に記載の対応付け方法。
(付記4)
リモートデスクトップシステムにおける画面操作に応じた座標を含む入力操作データと、描画処理された領域の座標を含む描画処理データと、を取得可能なコンピュータに実行させるための対応付けプログラムであって、
取得された入力操作データと描画処理データとから所定期間内の入力操作データ群と描画処理データ群とを抽出し、
前記入力操作データ群のうちの一の入力操作データに含まれる座標と、前記描画処理データ群のうちの一の描画処理データに含まれる描画領域の座標と、の相対位置を算出し、
前記座標の相対位置に基づき、前記描画処理データ群に含まれる他の描画処理データから入力操作データに含まれると想定される座標を算出し、
前記想定される座標に基づき、前記入力操作データ群に含まれる入力操作データを前記他の描画処理データに対応付ける、
処理を含む対応付けプログラム。
(付記5)
前記相対位置を算出する処理は、
前記入力操作データ群のうちの最後の入力操作データに含まれる座標と、前記描画処理データ群のうちの最後の描画処理データに含まれる描画領域の座標と、の相対位置を算出する、
付記4に記載の対応付けプログラム。
(付記6)
前記相対位置を算出する処理は、
前記入力操作データ群のうちの最後の入力操作データに含まれる座標と、前記描画処理データ群のうちの最後の描画処理データに含まれる描画領域を画定する複数の座標のそれぞれとから、前記座標の相対位置を複数算出し、
前記想定される座標を算出する処理は、
複数の前記座標の相対位置に基づき、前記描画処理データ群に含まれる他の描画処理データから入力操作データに含まれると想定される座標を複数算出し、
前記対応付ける処理は、
複数の前記想定される座標の少なくともいずれかに基づき、前記入力操作データ群に含まれる入力操作データを前記他の描画処理データに対応付ける、
付記5に記載の対応付けプログラム。
(付記7)
リモートデスクトップシステムにおける画面操作に応じた座標を含む入力操作データと、描画処理された領域の座標を含む描画処理データと、を取得可能な対応付け装置であって、
取得された入力操作データと描画処理データとから所定期間内の入力操作データ群と描画処理データ群とを抽出するデータ抽出部と、
前記入力操作データ群のうちの一の入力操作データに含まれる座標と、前記描画処理データ群のうちの一の描画処理データに含まれる描画領域の座標と、の相対位置を算出する相対位置算出部と、
前記座標の相対位置に基づき、前記描画処理データ群に含まれる他の描画処理データから入力操作データに含まれると想定される座標を算出する想定位置算出部と、
前記想定される座標に基づき、前記入力操作データ群に含まれる入力操作データを前記他の描画処理データに対応付ける対応付け部と、
を有する対応付け装置。
(付記8)
前記相対位置算出部は、
前記入力操作データ群のうちの最後の入力操作データに含まれる座標と、前記描画処理データ群のうちの最後の描画処理データに含まれる描画領域の座標と、の相対位置を算出する、
付記7に記載の対応付け装置。
(付記9)
前記相対位置算出部は、
前記入力操作データ群のうちの最後の入力操作データに含まれる座標と、前記描画処理データ群のうちの最後の描画処理データに含まれる描画領域を画定する複数の座標のそれぞれとから、前記座標の相対位置を複数算出し、
前記想定位置算出部は、
複数の前記座標の相対位置に基づき、前記描画処理データ群に含まれる他の描画処理データから入力操作データに含まれると想定される座標を複数算出し、
前記対応付け部は、
複数の前記想定される座標の少なくともいずれかに基づき、前記入力操作データ群に含まれる入力操作データを前記他の描画処理データに対応付ける、
付記8に記載の対応付け装置。
Regarding the above description, the following items are further disclosed.
(Appendix 1)
An association method executed by a computer capable of acquiring input operation data including coordinates according to a screen operation in a remote desktop system and drawing processing data including coordinates of a drawing processed area,
An input operation data group and a drawing process data group within a predetermined period are extracted from the acquired input operation data and the drawing process data,
Calculating a relative position between coordinates included in one input operation data of the input operation data group and coordinates of a drawing area included in one drawing processing data of the drawing processing data group;
Based on the relative position of the coordinates, calculate coordinates assumed to be included in the input operation data from other drawing processing data included in the drawing processing data group,
Based on the assumed coordinates, the input operation data included in the input operation data group is associated with the other drawing processing data.
Association method including processing.
(Appendix 2)
The process of calculating the relative position is as follows:
Calculating a relative position between the coordinates included in the last input operation data in the input operation data group and the coordinates of the drawing area included in the last drawing process data in the drawing process data group;
The association method according to attachment 1.
(Appendix 3)
The process of calculating the relative position is as follows:
From the coordinates included in the last input operation data in the input operation data group and each of a plurality of coordinates demarcating the drawing area included in the last drawing process data in the drawing process data group, the coordinates Multiple relative positions of
The process of calculating the assumed coordinates is as follows:
Based on the relative positions of the plurality of coordinates, calculate a plurality of coordinates that are assumed to be included in the input operation data from other drawing processing data included in the drawing processing data group,
The associating process is
Based on at least one of the plurality of assumed coordinates, the input operation data included in the input operation data group is associated with the other drawing processing data.
The association method according to attachment 2.
(Appendix 4)
An association program for causing an obtainable computer to execute input operation data including coordinates according to a screen operation in a remote desktop system and drawing processing data including coordinates of a drawing processed area,
An input operation data group and a drawing process data group within a predetermined period are extracted from the acquired input operation data and the drawing process data,
Calculating a relative position between coordinates included in one input operation data of the input operation data group and coordinates of a drawing area included in one drawing processing data of the drawing processing data group;
Based on the relative position of the coordinates, calculate coordinates assumed to be included in the input operation data from other drawing processing data included in the drawing processing data group,
Based on the assumed coordinates, the input operation data included in the input operation data group is associated with the other drawing processing data.
An association program that includes processing.
(Appendix 5)
The process of calculating the relative position is as follows:
Calculating a relative position between the coordinates included in the last input operation data in the input operation data group and the coordinates of the drawing area included in the last drawing process data in the drawing process data group;
The association program according to attachment 4.
(Appendix 6)
The process of calculating the relative position is as follows:
From the coordinates included in the last input operation data in the input operation data group and each of a plurality of coordinates demarcating the drawing area included in the last drawing process data in the drawing process data group, the coordinates Multiple relative positions of
The process of calculating the assumed coordinates is as follows:
Based on the relative positions of the plurality of coordinates, calculate a plurality of coordinates that are assumed to be included in the input operation data from other drawing processing data included in the drawing processing data group,
The associating process is
Based on at least one of the plurality of assumed coordinates, the input operation data included in the input operation data group is associated with the other drawing processing data.
The association program according to attachment 5.
(Appendix 7)
An association device capable of acquiring input operation data including coordinates according to a screen operation in a remote desktop system and drawing processing data including coordinates of a region subjected to drawing processing,
A data extraction unit that extracts an input operation data group and a drawing process data group within a predetermined period from the acquired input operation data and the drawing process data;
Relative position calculation for calculating a relative position between coordinates included in one input operation data of the input operation data group and coordinates of a drawing area included in one drawing processing data of the drawing processing data group And
An assumed position calculation unit for calculating coordinates assumed to be included in the input operation data from other drawing process data included in the drawing process data group based on the relative position of the coordinates;
An association unit that associates input operation data included in the input operation data group with the other drawing processing data based on the assumed coordinates;
An associating device.
(Appendix 8)
The relative position calculator is
Calculating a relative position between the coordinates included in the last input operation data in the input operation data group and the coordinates of the drawing area included in the last drawing process data in the drawing process data group;
The association device according to attachment 7.
(Appendix 9)
The relative position calculator is
From the coordinates included in the last input operation data in the input operation data group and each of a plurality of coordinates demarcating the drawing area included in the last drawing process data in the drawing process data group, the coordinates Multiple relative positions of
The assumed position calculation unit
Based on the relative positions of the plurality of coordinates, calculate a plurality of coordinates that are assumed to be included in the input operation data from other drawing processing data included in the drawing processing data group,
The association unit
Based on at least one of the plurality of assumed coordinates, the input operation data included in the input operation data group is associated with the other drawing processing data.
The association device according to attachment 8.

1:クライアント機器
2:サービスサーバ
3:スイッチ
4:キャプチャサーバ
5:ネットワーク
10:リモートデスクトップシステム
11:キャプチャ部
12:L7解析部
13:データ抽出部
14:相対位置算出部
15:想定位置算出部
16:対応付け部
17:応答時間算出部
20:記憶部
21:操作ログテーブル
22:ユーザ操作テーブル
23:描画処理テーブル
24:応答時間テーブル
1: Client device 2: Service server 3: Switch 4: Capture server 5: Network 10: Remote desktop system 11: Capture unit 12: L7 analysis unit 13: Data extraction unit 14: Relative position calculation unit 15: Assumed position calculation unit 16 : Association unit 17: Response time calculation unit 20: Storage unit 21: Operation log table 22: User operation table 23: Drawing process table 24: Response time table

Claims (5)

リモートデスクトップシステムにおける画面操作に応じた座標を含む入力操作データと、描画処理された領域の座標を含む描画処理データと、を取得可能なコンピュータが実行する対応付け方法であって、
取得された入力操作データと描画処理データとから所定期間内の入力操作データ群と描画処理データ群とを抽出し、
前記入力操作データ群のうちの一の入力操作データに含まれる座標と、前記描画処理データ群のうちの一の描画処理データに含まれる描画領域の座標と、の相対位置を算出し、
前記座標の相対位置に基づき、前記描画処理データ群に含まれる他の描画処理データから入力操作データに含まれると想定される座標を算出し、
前記想定される座標に基づき、前記入力操作データ群に含まれる入力操作データを前記他の描画処理データに対応付ける、
処理を含む対応付け方法。
An association method executed by a computer capable of acquiring input operation data including coordinates according to a screen operation in a remote desktop system and drawing processing data including coordinates of a drawing processed area,
An input operation data group and a drawing process data group within a predetermined period are extracted from the acquired input operation data and the drawing process data,
Calculating a relative position between coordinates included in one input operation data of the input operation data group and coordinates of a drawing area included in one drawing processing data of the drawing processing data group;
Based on the relative position of the coordinates, calculate coordinates assumed to be included in the input operation data from other drawing processing data included in the drawing processing data group,
Based on the assumed coordinates, the input operation data included in the input operation data group is associated with the other drawing processing data.
Association method including processing.
前記相対位置を算出する処理は、
前記入力操作データ群のうちの最後の入力操作データに含まれる座標と、前記描画処理データ群のうちの最後の描画処理データに含まれる描画領域の座標と、の相対位置を算出する、
請求項1に記載の対応付け方法。
The process of calculating the relative position is as follows:
Calculating a relative position between the coordinates included in the last input operation data in the input operation data group and the coordinates of the drawing area included in the last drawing process data in the drawing process data group;
The association method according to claim 1.
前記相対位置を算出する処理は、
前記入力操作データ群のうちの最後の入力操作データに含まれる座標と、前記描画処理データ群のうちの最後の描画処理データに含まれる描画領域を画定する複数の座標のそれぞれとから、前記座標の相対位置を複数算出し、
前記想定される座標を算出する処理は、
複数の前記座標の相対位置に基づき、前記描画処理データ群に含まれる他の描画処理データから入力操作データに含まれると想定される座標を複数算出し、
前記対応付ける処理は、
複数の前記想定される座標の少なくともいずれかに基づき、前記入力操作データ群に含まれる入力操作データを前記他の描画処理データに対応付ける、
請求項2に記載の対応付け方法。
The process of calculating the relative position is as follows:
From the coordinates included in the last input operation data in the input operation data group and each of a plurality of coordinates demarcating the drawing area included in the last drawing process data in the drawing process data group, the coordinates Multiple relative positions of
The process of calculating the assumed coordinates is as follows:
Based on the relative positions of the plurality of coordinates, calculate a plurality of coordinates that are assumed to be included in the input operation data from other drawing processing data included in the drawing processing data group,
The associating process is
Based on at least one of the plurality of assumed coordinates, the input operation data included in the input operation data group is associated with the other drawing processing data.
The association method according to claim 2.
リモートデスクトップシステムにおける画面操作に応じた座標を含む入力操作データと、描画処理された領域の座標を含む描画処理データと、を取得可能なコンピュータに実行させるための対応付けプログラムであって、
取得された入力操作データと描画処理データとから所定期間内の入力操作データ群と描画処理データ群とを抽出し、
前記入力操作データ群のうちの一の入力操作データに含まれる座標と、前記描画処理データ群のうちの一の描画処理データに含まれる描画領域の座標と、の相対位置を算出し、
前記座標の相対位置に基づき、前記描画処理データ群に含まれる他の描画処理データから入力操作データに含まれると想定される座標を算出し、
前記想定される座標に基づき、前記入力操作データ群に含まれる入力操作データを前記他の描画処理データに対応付ける、
処理を含む対応付けプログラム。
An association program for causing an obtainable computer to execute input operation data including coordinates according to a screen operation in a remote desktop system and drawing processing data including coordinates of a drawing processed area,
An input operation data group and a drawing process data group within a predetermined period are extracted from the acquired input operation data and the drawing process data,
Calculating a relative position between coordinates included in one input operation data of the input operation data group and coordinates of a drawing area included in one drawing processing data of the drawing processing data group;
Based on the relative position of the coordinates, calculate coordinates assumed to be included in the input operation data from other drawing processing data included in the drawing processing data group,
Based on the assumed coordinates, the input operation data included in the input operation data group is associated with the other drawing processing data.
An association program that includes processing.
リモートデスクトップシステムにおける画面操作に応じた座標を含む入力操作データと、描画処理された領域の座標を含む描画処理データと、を取得可能な対応付け装置であって、
取得された入力操作データと描画処理データとから所定期間内の入力操作データ群と描画処理データ群とを抽出するデータ抽出部と、
前記入力操作データ群のうちの一の入力操作データに含まれる座標と、前記描画処理データ群のうちの一の描画処理データに含まれる描画領域の座標と、の相対位置を算出する相対位置算出部と、
前記座標の相対位置に基づき、前記描画処理データ群に含まれる他の描画処理データから入力操作データに含まれると想定される座標を算出する想定位置算出部と、
前記想定される座標に基づき、前記入力操作データ群に含まれる入力操作データを前記他の描画処理データに対応付ける対応付け部と、
を有する対応付け装置。
An association device capable of acquiring input operation data including coordinates according to a screen operation in a remote desktop system and drawing processing data including coordinates of a region subjected to drawing processing,
A data extraction unit that extracts an input operation data group and a drawing process data group within a predetermined period from the acquired input operation data and the drawing process data;
Relative position calculation for calculating a relative position between coordinates included in one input operation data of the input operation data group and coordinates of a drawing area included in one drawing processing data of the drawing processing data group And
An assumed position calculation unit for calculating coordinates assumed to be included in the input operation data from other drawing process data included in the drawing process data group based on the relative position of the coordinates;
An association unit that associates input operation data included in the input operation data group with the other drawing processing data based on the assumed coordinates;
An associating device.
JP2014043069A 2014-03-05 2014-03-05 Association method, association program, and association device Withdrawn JP2015170031A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014043069A JP2015170031A (en) 2014-03-05 2014-03-05 Association method, association program, and association device
US14/635,409 US9646575B2 (en) 2014-03-05 2015-03-02 Remote desktop system evaluating method, medium and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014043069A JP2015170031A (en) 2014-03-05 2014-03-05 Association method, association program, and association device

Publications (1)

Publication Number Publication Date
JP2015170031A true JP2015170031A (en) 2015-09-28

Family

ID=54017952

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014043069A Withdrawn JP2015170031A (en) 2014-03-05 2014-03-05 Association method, association program, and association device

Country Status (2)

Country Link
US (1) US9646575B2 (en)
JP (1) JP2015170031A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI536174B (en) * 2014-12-17 2016-06-01 緯創資通股份有限公司 Method and system of sharing data and server apparatus thereof

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2626598B2 (en) 1994-11-25 1997-07-02 日本電気株式会社 Operability evaluation device for interactive system with graphical user interface
JPH10124689A (en) * 1996-10-15 1998-05-15 Nikon Corp Image recorder/reproducer
JP2004038619A (en) 2002-07-04 2004-02-05 Hitachi Ltd Automatic response time measuring method, and device therefor
JP4130841B1 (en) 2007-02-06 2008-08-06 Sky株式会社 Network management system and program therefor
JP5716491B2 (en) * 2011-03-29 2015-05-13 富士通株式会社 Server, terminal device and grouping method

Also Published As

Publication number Publication date
US20150255046A1 (en) 2015-09-10
US9646575B2 (en) 2017-05-09

Similar Documents

Publication Publication Date Title
CN104246767B (en) Telemetry system for cloud synchronization system
JP5599400B2 (en) Method system and software for providing an image sensor based human machine interface
US20180173614A1 (en) Technologies for device independent automated application testing
US20140089824A1 (en) Systems And Methods For Dynamically Altering A User Interface Based On User Interface Actions
EP3776193B1 (en) Capturing and processing interactions with a user interface of a native application
EP3526726B1 (en) Time-correlated ink
CN109739855B (en) Method and system for realizing data sheet splicing and automatically training machine learning model
US20110307535A1 (en) Freeform mathematical computations
KR102298395B1 (en) System and Method for User Behavior Analysis and Agent for Collection of Event
JP2018026060A (en) Programmable display unit, update processing apparatus, update method, information processing method, and program
WO2016130344A1 (en) Supporting digital ink in markup language documents
JP2016531352A (en) Method, device, program and device for updating input system
US11813538B2 (en) Videogame telemetry data and game asset tracker for session recordings
US20170017382A1 (en) System and method for interaction between touch points on a graphical display
WO2017162031A1 (en) Method and device for collecting information, and intelligent terminal
CN104024991B (en) Different event models are supported using single input source
US20120242589A1 (en) Computer Interface Method
CN113312119A (en) Information synchronization method and device, computer readable storage medium and electronic equipment
US20090158090A1 (en) Data entry retrieval
JP2015170031A (en) Association method, association program, and association device
KR20140134154A (en) Method and Terminal for Extracting a Object from Image
WO2016065903A1 (en) Content input method, system and device and non-volatile computer storage medium
JP7338791B2 (en) User operation recording device and user operation recording method
KR20150130800A (en) user terminal device for supporting data share function and methods thereof
JP2017102847A (en) Information processing system, relay device, method, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161102

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20170227