JP5850660B2 - Thin client server system, communication system, and screen information transmission method - Google Patents
Thin client server system, communication system, and screen information transmission method Download PDFInfo
- Publication number
- JP5850660B2 JP5850660B2 JP2011155190A JP2011155190A JP5850660B2 JP 5850660 B2 JP5850660 B2 JP 5850660B2 JP 2011155190 A JP2011155190 A JP 2011155190A JP 2011155190 A JP2011155190 A JP 2011155190A JP 5850660 B2 JP5850660 B2 JP 5850660B2
- Authority
- JP
- Japan
- Prior art keywords
- server
- unit
- client
- processing
- information
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 151
- 238000004891 communication Methods 0.000 title claims description 94
- 230000005540 biological transmission Effects 0.000 title claims description 70
- 238000012545 processing Methods 0.000 claims description 162
- 230000008569 process Effects 0.000 claims description 140
- 238000005516 engineering process Methods 0.000 claims description 7
- 230000004913 activation Effects 0.000 description 25
- 238000012546 transfer Methods 0.000 description 25
- 230000006870 function Effects 0.000 description 17
- 230000004048 modification Effects 0.000 description 13
- 238000012986 modification Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 12
- 230000004044 response Effects 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 6
- 230000006835 compression Effects 0.000 description 5
- 238000007906 compression Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000001934 delay Effects 0.000 description 2
- 238000010187 selection method Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
Images
Landscapes
- Computer And Data Communications (AREA)
Description
本発明は、シンクライアントを利用して画面表示を行う技術に関する。 The present invention relates to a technique for displaying a screen using a thin client.
シンクライアントを利用してクライアント装置の画面表示を行う技術では、シンクライアントサーバが、ユーザによりクライアント装置に対して行われた操作を示す操作情報を受信して、受信した操作情報が示す操作に応じた処理を実行して画面情報を生成し、生成した画面情報をクライアント装置宛に送信する、という複数の処理を繰り返し実行する。このような技術では、クライアント装置に行われた操作に対して画面表示が遅延することがある。画面表示の遅延は、クライアント装置においてユーザの誤操作の原因となったり、画面表示を見るユーザに違和感を与える原因となったりする。特許文献1から特許文献3は、シンクライアントを利用したシステムにおいて、画面表示の遅延による影響を抑えるための技術を開示している。 In the technology for displaying a screen of a client device using a thin client, the thin client server receives operation information indicating an operation performed on the client device by a user, and responds to the operation indicated by the received operation information. A plurality of processes are repeatedly executed such that screen information is generated by executing the processes described above, and the generated screen information is transmitted to the client device. In such a technique, the screen display may be delayed with respect to the operation performed on the client device. The delay in the screen display may cause a user's erroneous operation in the client device or cause the user who views the screen display to feel uncomfortable. Patent Documents 1 to 3 disclose techniques for suppressing the influence of screen display delay in a system using a thin client.
ところで、特許文献1に記載された発明は、画面表示の遅延の影響による画面上のボタン押下間違いを抑えるために、ポインタ座標を補正するものであるが、クライアント装置での画面表示の遅延を継続して抑えるものではない。特許文献2及び特許文献3に記載された発明では、一台のシンクライアントサーバで、操作情報の受信、操作情報が示す操作に応じた処理の実行、画面情報の生成及び画面情報の送信という一連の処理が実行されるとともに、更に、画面情報を複数のブロックに分割するための画像処理も実行される。 By the way, the invention described in Patent Document 1 corrects the pointer coordinates in order to suppress erroneous button presses on the screen due to the delay of the screen display, but continues the delay of the screen display on the client device. It is not something to suppress. In the inventions described in Patent Literature 2 and Patent Literature 3, a series of reception of operation information, execution of processing according to an operation indicated by the operation information, generation of screen information, and transmission of screen information with a single thin client server. The image processing for dividing the screen information into a plurality of blocks is also executed.
以上の特許文献1から特許文献3に記載された発明では、一台のシンクライアントサーバに様々な処理に起因する負荷が集中する。よって、一台のシンクライアントサーバが、画面表示の遅延を抑制しつつ、多数のクライアント装置に対して個別の画面表示を行わせる処理を並行して行うことが困難であった。
これに対し、本発明は、クライアント装置での画面表示の遅延を抑制しうるようにシンクライアントサーバの負荷分散を実現することである。
In the inventions described in Patent Document 1 to Patent Document 3 described above, loads caused by various processes are concentrated on one thin client server. Therefore, it has been difficult for a single thin client server to perform parallel processing for causing a large number of client devices to display individual screens while suppressing delays in screen display.
On the other hand, the present invention is to realize load distribution of a thin client server so that delay of screen display in a client device can be suppressed.
上述した課題を解決するため、本発明のシンクライアントサーバシステムは、 第1サーバ装置と第2サーバ装置とを備え、前記第1サーバ装置は、受信した画面情報に応じた画像を表示するクライアント装置により受け付けられた操作を示す操作情報を受信する第1受信部と、前記第1受信部により受信された操作情報が示す操作に応じた複数の処理を、前記クライアント装置毎に独立したプロセスによって並列に実行する処理実行部と、前記複数の処理の各々について、前記処理実行部による当該処理の実行後に表示される画像を表す画面情報を生成するための演算処理を規定した処理情報を送信する第1送信部とを有し、前記第2サーバ装置は、前記第1送信部により送信された処理情報を受信する第2受信部と、前記第2受信部により受信された前記複数の処理の各々に対応する前記処理情報に従って順番に演算処理を実行し、前記画面情報を生成する画面情報生成部と、前記画面情報生成部により生成された画面情報を前記クライアント装置宛てに送信する第2送信部とを有することを特徴とする。 In order to solve the above-described problem, a thin client server system of the present invention includes a first server device and a second server device, and the first server device displays an image corresponding to received screen information. A first receiving unit that receives operation information indicating an operation received by the first receiving unit, and a plurality of processes corresponding to the operation indicated by the operation information received by the first receiving unit are performed in parallel by an independent process for each client device a processing execution unit for executing a, for each of said plurality of processing, first transmits the processing information defining the processing for generating the screen information representing an image to be displayed after execution of the processing by the processing execution unit The second server device receives the processing information transmitted by the first transmission unit, and the second reception unit receives the processing information transmitted from the first transmission unit. Performs operations sequentially processed according to the processing information corresponding to each of the received plurality of processing, and the screen information generating unit that generates a pre-Symbol screen information, the screen information generated by said screen information generation unit wherein And a second transmission unit that transmits to the client device.
本発明のシンクライアントサーバシステムにおいて、前記処理実行部は、前記複数の処理を仮想マシンで実行されたオペレーティングシステム上で実行してもよい。 In the thin client server system of the present invention, the process execution unit may execute the plurality of processes on an operating system executed by a virtual machine .
本発明のシンクライアントサーバシステムにおいて、前記画面情報生成部による前記画面情報の生成、及び前記第2送信部による当該画面情報の送信が、仮想化技術を用いないで行われてもよい。 In the thin client server system of the present invention, the generation of the screen information by the screen information generation unit and the transmission of the screen information by the second transmission unit may be performed without using a virtualization technique .
本発明のシンクライアントサーバシステムにおいて、前記第1サーバ装置を複数有し、前記クライアント装置から前記第1サーバ装置に送信されるデータを中継するクライアント管理サーバを備え、前記クライアント管理サーバは、前記クライアント装置のユーザを識別するユーザIDと、いずれか1の前記第1サーバ装置を識別する第1サーバIDとを対応付けて記憶する第1記憶部と、前記クライアント装置により送信された操作情報を受信する第3受信部と、前記第3受信部により受信された操作情報の送信元であるクライアント装置の前記ユーザIDに対応付けて、前記第1記憶部に第1サーバIDが記憶された前記第1サーバ装置宛てに、当該操作情報を送信する第3送信部とを有し、前記第1受信部は、前記第3送信部により送信された操作情報を受信してもよい。
このシンクライアントサーバシステムにおいては、前記第2サーバ装置を複数有し、前記クライアント管理サーバは、更に、前記第1サーバ装置から前記第2サーバ装置に送信されるデータを中継し、前記ユーザIDと、いずれか1の前記第2サーバ装置を識別する第2サーバIDとを対応付けて記憶する第2記憶部と、前記第1送信部により送信された処理情報を受信する第4受信部と、前記画面情報の送信先となるクライアント装置の前記ユーザIDに対応付けて、前記第2記憶部に第2サーバIDが記憶された前記第2サーバ装置宛てに、前記第4受信部が受信した処理情報を送信する第4送信部とを有してもよい。
また、本発明のシンクライアントサーバシステムにおいては、前記処理実行部は、前記クライアント装置で動作するプロセッサと同じ種類のプロセッサを用いて処理を実行してもよい。また、このシンクライアントサーバシステムにおいて、前記オペレーティングシステムは、前記クライアント装置が有するプロセッサで動作するオペレーティングシステムであってもよい。
The thin client server system of the present invention includes a client management server that includes a plurality of the first server devices and relays data transmitted from the client devices to the first server device, and the client management server includes the client A first storage unit that stores a user ID that identifies a user of the device and a first server ID that identifies any one of the first server devices, and receives operation information transmitted by the client device The first server ID is stored in the first storage unit in association with the user ID of the client device that is the transmission source of the operation information received by the third reception unit. A third transmission unit that transmits the operation information to one server device, and the first reception unit transmits the operation information by the third transmission unit. Operation information may be received.
The thin client server system includes a plurality of the second server devices, and the client management server further relays data transmitted from the first server device to the second server device, and A second storage unit that associates and stores a second server ID that identifies any one of the second server devices, a fourth reception unit that receives the processing information transmitted by the first transmission unit, The process received by the fourth receiving unit to the second server device in which the second server ID is stored in the second storage unit in association with the user ID of the client device that is the transmission destination of the screen information You may have a 4th transmission part which transmits information .
In the thin client server system of the present invention, the processing execution unit, a process using the same type of processor and processor operating at the client device may be run. Further, in the thin client server system, the operating system may be operating system Tsu der operating in a processor in which the client device has.
本発明の通信システムは、上記いずれかの構成のシンクライアントサーバシステムと、クライアント装置とを備える通信システムであって、前記クライアント装置は、前記シンクライアントサーバシステムと通信する通信部と、画像を表示する表示部と、自装置に対して行われた操作を受け付ける受付部と、前記受付部が受け付けた操作を示す操作情報を前記通信部により送信する送信制御部と、前記送信制御部の制御により送信された操作情報に基づいて前記シンクライアントサーバシステムにより生成されて前記第2送信部により送信された画面情報が、前記通信部により受信されると、受信された画面情報に応じて前記表示部に画像を表示させる表示制御部とを有することを特徴とする。 A communication system according to the present invention is a communication system including the thin client server system having any one of the above configurations and a client device, wherein the client device displays a communication unit that communicates with the thin client server system, and displays an image. A display unit that receives the operation performed on the device, a transmission control unit that transmits operation information indicating the operation received by the reception unit by the communication unit, and a control by the transmission control unit. When the screen information generated by the thin client server system based on the transmitted operation information and transmitted by the second transmission unit is received by the communication unit, the display unit according to the received screen information. And a display control unit for displaying an image.
本発明の画面情報送信方法は、第1サーバ装置と第2サーバ装置とを備えるシンクライアントサーバシステムの画面情報送信方法であって、前記第1サーバ装置が、受信した画面情報に応じた画像を表示するクライアント装置により受け付けられた操作を示す操作情報を受信する第1受信ステップと、前記第1サーバ装置が、前記第1受信ステップで受信した操作情報が示す操作に応じた複数の処理を、前記クライアント装置毎に独立したプロセスによって並列に実行する処理実行ステップと、前記第1サーバ装置が、前記複数の処理の各々について、前記処理実行ステップでの当該処理の実行後に表示される画像を表す画面情報を生成するための演算処理を規定した処理情報を送信する第1送信ステップと、前記第2サーバ装置が、前記第1送信ステップで送信された処理情報を受信する第2受信ステップと、前記第2サーバ装置が、前記第2受信ステップで受信した前記複数の処理の各々に対応する前記処理情報に従って順番に演算処理を実行し、前記画面情報を生成する画面情報生成ステップと、前記第2サーバ装置が、前記画面情報生成ステップで生成した画面情報を前記クライアント装置宛てに送信する第2送信ステップとを有することを特徴とする。 The screen information transmission method of the present invention is a screen information transmission method of a thin client server system including a first server device and a second server device, and the first server device displays an image corresponding to the received screen information. A first receiving step for receiving operation information indicating an operation accepted by the client device to be displayed; and a plurality of processes according to the operation indicated by the operation information received by the first server device in the first receiving step . a process executing step of executing in parallel by a process independent for each of the client device, the first server device, for each of said plurality of processing, representing an image to be displayed after execution of the processing in said processing execution step A first transmission step of transmitting processing information defining a calculation process for generating screen information; and the second server device, A second receiving step of receiving the process information transmitted in the transmission step, the second server apparatus, the operation process in sequence in accordance with the processing information corresponding to each of the plurality of processing received by the second reception step A screen information generating step that executes the screen information, and a second transmission step in which the second server device transmits the screen information generated in the screen information generation step to the client device. And
本発明によれば、クライアント装置での画面表示の遅延を抑制しうるようにシンクライアントサーバの負荷分散を実現することができる。 According to the present invention, it is possible to realize load distribution of a thin client server so that delay of screen display in a client device can be suppressed.
以下、図面を参照しつつ本発明の実施形態を説明する。
図1は、通信システム100の全体構成を示す図である。
通信システム100は、シンクライアントサーバシステム1と、クライアント装置40とを備えるクライアント−サーバシステムである。通信システム100では、シンクライアントサーバシステム1で管理されるソフトウェア資源等に基づく画面表示を、クライアント装置40に行わせるためのサービスが提供される。シンクライアントサーバシステム1は、詳細には、第1サーバ装置10と、第2サーバ装置20と、クライアント管理サーバ30という複数サーバの組み合わせで構成される。シンクライアントサーバシステム1が、どのようなソフトウェア資源に関する画面表示をクライアント装置40に行わせるかについては、本実施形態においては特に問わない。
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
FIG. 1 is a diagram illustrating an overall configuration of the
The
図1には、第1サーバ装置10のうち第1サーバ装置10a,10bのみを図示し、第2サーバ装置20のうち第2サーバ装置20a,20bのみを図示しているが、実際にはより多数存在している。また、図1には、クライアント装置40を1台のみ図示しているが、実際より多数存在している。クライアント装置40は、ネットワークNW経由で、第2サーバ装置20及びクライアント管理サーバ30と通信可能に接続されている。ネットワークNWは、ここでは、移動体通信網、ゲートウェイ及びインターネットを含む通信網である。また、クライアント管理サーバ30は専用の通信路を介して、第1サーバ装置10及び第2サーバ装置20と通信可能に接続されている。
FIG. 1 illustrates only the
第1サーバ装置10及び第2サーバ装置20は、クライアント装置40での画面表示に必要な処理を実行するが、それぞれ異なる処理を実行する。クライアント管理サーバ30は、クライアント装置40と、第1サーバ装置10と、第2サーバ装置20との間でデータを中継する中継サーバとして機能する。クライアント装置40は、ここでは移動機たるスマートフォンであり、通信システム100においてサービスの提供を受けるための加入契約を行ったユーザにより所有される。
The
図2は、第1サーバ装置10のハードウェア構成を示すブロック図である。図2に示すように、第1サーバ装置10は、制御部11と、通信部12と、記憶部13とを備える。
制御部11は、CPU(Central Processing Unit)、ROM(Read Only Memory)、及びRAM(Random Access Memory)を備えるマイクロプロセッサである。CPUは、ROMや記憶部13に記憶されたプログラムをRAMに読み出して実行することにより、第1サーバ装置10の各部を制御する。ここでは、CPUは、移動機向けに作成されたプロセッサであり、要するに、クライアント装置40で動作するプロセッサである。通信部12は、ネットワークNWに接続するためのインタフェースである。記憶部13は、例えばハードディスク装置を備え、ホストOS(Operating System)131やゲストOS132を含むソフトウェアを記憶する。ホストOS131は、制御部11のプロセッサで動作し、第1サーバ装置10において仮想マシン上でソフトウェアを動作させる基盤となるOSである。ゲストOS132は、ホストOS131の実行により第1サーバ装置10において仮想マシンが動作させられたときに、仮想マシン上で実行されるOSである。ゲストOS132は、ここでは移動機向けに作成されたOSであり、クライアント装置40が有するプロセッサでも動作する。
FIG. 2 is a block diagram illustrating a hardware configuration of the
The
図3は、第2サーバ装置20のハードウェア構成を示すブロック図である。図3に示すように、第2サーバ装置20は、制御部21と、ネットワーク通信部22と、サーバ通信部23と、記憶部24と、GPU(Graphics Processing Unit)25とを備える。
制御部21は、CPU、ROM、及びRAMを備えるマイクロプロセッサである。CPUは、ROMや記憶部24に記憶されたプログラムをRAMに読み出して実行することにより、第2サーバ装置20の各部を制御する。ネットワーク通信部22は、ネットワークNWに接続するためのインタフェースである。サーバ通信部23は、クライアント管理サーバ30に接続するためのインタフェースである。記憶部24は、例えばハードディスク装置を備え、OS241を含むソフトウェアを記憶する。OS241は、第2サーバ装置20でソフトウェアを動作させる基盤となるOSである。GPU25は、画像処理に関する演算処理を行うプロセッサであり、第2サーバ装置20で実行される画像処理を司る。
FIG. 3 is a block diagram illustrating a hardware configuration of the
The
図4は、クライアント管理サーバ30は、制御部31と、ネットワーク通信部32と、第1サーバ通信部33と、第2サーバ通信部34と、記憶部35とを備える。
制御部31は、CPU、ROM、及びRAMを備えるマイクロプロセッサである。CPUは、ROMや記憶部35に記憶されたプログラムをRAMに読み出して実行することにより、クライアント管理サーバ30の各部を制御する。ネットワーク通信部32は、ネットワークNWに接続するためのインタフェースである。第1サーバ通信部33は、第1サーバ装置10に接続するためのインタフェースである。第2サーバ通信部34は、第2サーバ装置20に接続するためのインタフェースである。
4, the
The
記憶部35は、例えばハードディスク装置を備え、各種ソフトウェアのほか、第1管理テーブル351及び第2管理テーブル352を記憶する。第1管理テーブル351及び第2管理テーブル352は、それぞれ、クライアント管理サーバ30がデータの転送先を選択する際に参照される。より詳細には、第1管理テーブル351には、データの転送先とする第1サーバ装置10を定める情報が記述されている。第2管理テーブル352には、データの転送先とする第2サーバ装置20を定める情報が記述されている。
なお、第1管理テーブル351及び第2管理テーブル352には、シンクライアントサーバシステム1によるサービスの提供中にデータが記述され、このサービスが提供されていない期間にはデータは記述されていないものとする。第1管理テーブル351を記憶する記憶部35が第1記憶部に相当する。また、第2管理テーブル352を記憶する記憶部35が第2記憶部に相当する。
The
In the first management table 351 and the second management table 352, data is described during service provision by the thin client server system 1, and data is not described during a period when the service is not provided. To do. The
図5は、第1管理テーブル351のデータ構造を示す図である。
図5に示すように、第1管理テーブル351は、「ユーザID」と、「第1サーバID」と、「プロセスID」とで示される各情報が対応付けられたデータテーブルである。ユーザIDは、各クライアント装置40のユーザを識別する識別情報であるが、ここでは、各クライアント装置40を識別する識別情報でもある。本実施形態のユーザIDは、クライアント装置40に割り当てられた電話番号であるが、例えば、SIM(Subscriber Identity Module)カードから特定される端末識別情報や、各ユーザに排他的に付与された識別番号であってもよい。第1サーバIDは、各第1サーバ装置10を識別する識別情報である。プロセスIDは、クライアント装置40毎に独立して実行される処理の各プロセスを識別する識別情報である。
なお、本実施形態において、クライアント装置40のユーザIDは「090aaaa0001」である。第1サーバ装置10aの第1サーバIDは「001」であり、第1サーバ装置10bの第1サーバIDは「002」である。また、各第1サーバIDは、それぞれ対応する第1サーバ装置10にも予め記憶されている。また、第1サーバIDは、第1サーバ装置10に割り当てられたIP(Internet Protocol)アドレス等の通信アドレス等で代用することもできる。
FIG. 5 is a diagram illustrating the data structure of the first management table 351.
As shown in FIG. 5, the first management table 351 is a data table in which pieces of information indicated by “user ID”, “first server ID”, and “process ID” are associated with each other. The user ID is identification information for identifying the user of each
In the present embodiment, the user ID of the
図6は、第2管理テーブル352のデータ構造を示す図である。
図6に示すように、第1管理テーブル351は、「ユーザID」と、「第2サーバID」とで示される各情報が対応付けられたデータテーブルである。ユーザIDは、第1管理テーブル351に記述されたユーザIDと同じである。第2サーバIDは、各第2サーバ装置20を識別する識別情報である。
なお、本実施形態において、第2サーバ装置20aの第2サーバIDは「00a」であり、第2サーバ装置20bの第2サーバIDは「00b」である。第2サーバIDは、第2サーバ装置20に割り当てられたIPアドレス等の通信アドレス等で代用することもできる。
FIG. 6 is a diagram illustrating the data structure of the second management table 352.
As illustrated in FIG. 6, the first management table 351 is a data table in which pieces of information indicated by “user ID” and “second server ID” are associated with each other. The user ID is the same as the user ID described in the first management table 351. The second server ID is identification information for identifying each
In the present embodiment, the second server ID of the
図7は、クライアント装置40のハードウェア構成を示すブロック図である。図7に示すように、クライアント装置40は、制御部41と、音声入出力部42と、無線通信部43と、UI(User Interface)部44と、記憶部45とを備える。
制御部41は、CPU、ROM、及びRAMを備えるマイクロプロセッサである。CPUは、移動機向けに作成されたプロセッサであり、例えば低消費電力化に優れたものが用いられる。CPUは、ROMや記憶部45に記憶されたソフトウェアをRAMに読み出して実行することにより、クライアント装置40の各部を制御する。音声入出力部42は、受話音声等を収音するマイクロホンと送話音声を放音するスピーカとを備え、音声の入出力に関する機能を実現する。無線通信部43は、無線通信回路やアンテナを備え、ネットワークNWに無線通信により接続するためのインタフェースである。UI部44は、画像を表示する表示面と、表示面に重ねられたタッチパネルとを備え、GUI(Graphical User Interface)を提供する。すなわち、UI部44は、タッチパネルのようなユーザによって操作される操作部と、表示面に表示する画像により情報を報知する表示部としての機能を実現する。記憶部45は、例えばEEPROM(Electronically Erasable and Programmable ROM)を備え、OS451を含むソフトウェアを記憶する。OS451は、移動機向けに作成されたOSであり、ここではゲストOS132と同じオペレーティングシステムである。
なお、クライアント装置40は、操作部と表示部とが別々のハードウェアデバイスで構成されていてもよい。また、クライアント装置40は、ユーザにより行われた操作を受け付けるためのハードウェアデバイスとして、上記以外に、クライアント装置40を傾けたり振動させたりする等の筐体に対する操作を受け付けるための加速度センサを有している。
FIG. 7 is a block diagram illustrating a hardware configuration of the
The
In the
図8は、通信システム100の機能的構成を示す機能ブロック図である。まず、クライアント装置40の機能的構成を説明する。
クライアント装置40の制御部41は、プログラムを実行することにより、受付部411と、送信制御部412と、表示制御部413とに相当する機能を実現する。
受付部411は、クライアント装置40に対する操作を受け付ける。受付部411は、UI部44を用いて行われた操作のほか、クライアント装置40を傾けたり振動させたりする等のクライアント装置40の筐体に対して行われた操作、音声入出力部42を介した音声入力で行われた操作等を含む。要するに、受付部411は、クライアント装置40に対してユーザにより行われたあらゆる操作を受け付ける。
送信制御部412は、受付部411が受け付けた操作を示す操作情報を、無線通信部43により送信する。ここでは、送信制御部412は、クライアント管理サーバ30宛てに操作情報を送信する。操作情報は、クライアント装置40に対して行われた操作の識別機能を持った情報である。
表示制御部413は、送信制御部412の制御により送信された操作情報に基づいてシンクライアントサーバシステム1で生成された画面情報が、無線通信部43により受信されると、受信された画面情報に応じてUI部44に画像を表示する。
クライアント装置40の機能的構成の説明は以上である。次に、クライアント管理サーバ30及び第1サーバ装置10の機能的構成を説明する。
FIG. 8 is a functional block diagram showing a functional configuration of the
The
The accepting
The
When the screen information generated by the thin client server system 1 based on the operation information transmitted under the control of the
The functional configuration of the
クライアント管理サーバ30は、第3受信部301と、第1サーバ選択部302と、第3送信部303と、第4受信部304と、第2サーバ選択部305と、第4送信部306とに相当する機能を実現する。第1サーバ装置10は、第1受信部101と、処理実行部102と、第1送信部103とに相当する機能を実現する。
第3受信部301は、クライアント装置40により送信された操作情報を受信する。
第1サーバ選択部302は、第1管理テーブル351を参照して、第3受信部301により受信された操作情報の送信先(転送先)を選択する。具体的には、第1サーバ選択部302は、操作情報の送信元であるクライアント装置40のユーザIDに対応付けて、第1管理テーブル351に第1サーバIDが記憶された第1サーバ装置10を選択する。
第3送信部303は、第3受信部301が受信した操作情報を、第1サーバ選択部302により選択された第1サーバ装置10宛てに送信する。
なお、第3送信部303は、第1サーバ選択部302により第1管理テーブル351から取得されたプロセスIDを送信することがある。
The
The
The first
The
Note that the
第1受信部101は、第3送信部303により送信された操作情報を受信する。
処理実行部102は、第1受信部が受信した操作情報が示す操作に応じた処理を実行する。ここでは、処理実行部102は、クライアント装置40に画面表示を行わせるサービスの提供に必要な処理(以下、「プロセス処理」という。)を操作情報が示す操作に応じて実行する。
第1送信部103は、処理実行部102による処理の実行後にクライアント装置40で表示される画像を表す画面情報を生成するための処理情報を送信する。処理情報は、画面情報を生成するために実行すべき演算処理を規定したデータで、演算処理のアルゴリズムが記述されている。
The
The
The
第4受信部304は、第1送信部103により送信された処理情報を受信する。
第2サーバ選択部305は、第2管理テーブル352を参照して、第4受信部304により受信された処理情報の送信先(転送先)を選択する。具体的には、第2サーバ選択部305は、処理情報の送信元であるクライアント装置40のユーザIDに対応付けて、第2管理テーブル352に第2サーバIDが記憶された第2サーバ装置20を選択する。
第4送信部306は、第4受信部304が受信した処理情報を、第2サーバ選択部305により選択された第2サーバ装置20宛てに送信する。
クライアント管理サーバ30及び第1サーバ装置10の機能的構成の説明は以上である。次に、第2サーバ装置20の機能的構成を説明する。
The
The second
The
The functional configurations of the
第2サーバ装置20は、第2受信部201と、画面情報生成部202と、第2送信部203に相当する機能を実現する。
第2受信部201は、第4送信部306より送信された処理情報を受信する。
画面情報生成部202は、第2受信部201により受信された処理情報に従って演算処理を実行し、画面情報を生成する。画面情報生成部202は、例えば、処理情報を解釈して画像処理を含む演算処理を実行することにより、画面情報を生成する。
第2送信部203は、画面情報生成部202により生成された画面情報をクライアント装置40宛てに送信(転送)する。第2送信部203は、画面情報生成部202により生成された画面情報に圧縮処理及びエンコード処理を施してから、画面情報を送信する。第2送信部203が送信した画面情報は、クライアント装置40の無線通信部43によって受信される。
第2サーバ装置20の機能的構成の説明は以上である。次に、通信システム100のソフトウェア構成を説明する。
The
The
The screen
The
The functional configuration of the
図9は、通信システム100のソフトウェア構成を示す図である。詳細には、図9には、第1サーバ装置10、第2サーバ装置20及びクライアント装置40のソフトウェア構成が図示されている。
まず、第1サーバ装置10のソフトウェア構成を説明する。
ホストOS131は、第1サーバ装置10における基本的な機能を提供し、第1サーバ装置10全体を管理する基本ソフトウェアである。仮想化ソフトウェア133は、ホストOS131上で動作し、第1サーバ装置10上に仮想マシン134を形成するためのソフトウェアである。仮想マシンとは、物理的に単一のコンピュータ装置内に仮想的に形成されるコンピュータ環境をいう。仮想マシン134は、仮想化ソフトウェア133上で複数並列して動作する(図9には4つの仮想マシン134を示す。)。詳細には、仮想マシン134は、仮想化ソフトウェア133上で動作するゲストOS132と、ゲストOS132上で動作するサービスプロセス135とを動作させる。各仮想マシン134は、1のクライアント装置40に対応するプロセス処理をサービスプロセス135により実行する。サービスプロセス135は、画面情報の生成に必要な演算処理を規定した処理情報を供給するためのソフトウェアである。
更に、ホストOS131には、処理情報IF(Interface)131aの機能が実装されている。処理情報IF131aは、サービスプロセス135により供給された処理情報を、第2サーバ装置20に転送するためのソフトウェアインタフェースである。
次に、第2サーバ装置20のソフトウェア構成を説明する。
FIG. 9 is a diagram illustrating a software configuration of the
First, the software configuration of the
The
Furthermore, the
Next, the software configuration of the
OS241は、第2サーバ装置20における基本的な機能を提供し、第2サーバ装置20全体を管理する基本ソフトウェアである。画面情報生成プロセス242は、OS241上で動作し、処理情報に従って演算処理を実行するプロセスを実現するソフトウェアである。図9に示すように、OS241にはGPUIF241aの機能が実装されている。GPUIF241aは、画面情報生成プロセス242で画面情報が生成される際に、GPU25との間でデータの授受を行うためのソフトウェアインタフェースである。画面転送プロセス243は、OS241上で動作し、画面情報生成プロセス242で生成された画面情報を、クライアント装置40に転送するプロセスを実現するソフトウェアである。画面転送プロセス243は、例えば、画面情報生成プロセス242から供給された画面情報に圧縮処理及びエンコード処理を施して転送するものである。
次に、クライアント装置40のソフトウェア構成を説明する。
The
Next, the software configuration of the
OS451は、クライアント装置40における基本的な機能を提供し、クライアント装置40全体を管理する基本ソフトウェアである。画像ビューア452は、OS451上で動作し、第2サーバ装置20から転送された画面情報に応じた画像を表示するためのソフトウェアである。
以上が、通信システム100のソフトウェア構成の説明である。
The
The above is the description of the software configuration of the
上述したように、シンクライアントサーバシステム1では、第1サーバ装置10が、主操作情報の受信、操作情報が示す操作に応じたプロセス処理の実行、及び処理情報の送信という処理を司り、第2サーバ装置20が、処理情報に従った画面情報の生成、及び画面情報の転送という処理を司る。このように、シンクライアントサーバシステム1では、サービスの提供に必要な処理の一部と残りとが、それぞれ異なるサーバで実行される。このようにして、シンクライアントサーバシステム1では、サービスの提供に起因して生じる処理負荷が複数サーバに分散されるわけであるが、このような仕組みにより効率良く負荷分散が実現される、という知見を発明者は得た。この根拠について、図14に示す従来のシンクライアントサーバのソフトウェア構成と対比しつつ説明する。
As described above, in the thin client server system 1, the
図14に示すように、従来の通信システムでは、通信システム100と同様、ホストOS上で仮想化ソフトウェアが動作し、仮想化ソフトウェア上でゲストOS及びサービスプロセスを動作させる仮想マシンが動作する。このサービスプロセスは、シンクライアントサーバシステム1とは異なり、操作情報が示す操作に応じた処理のほか、画面情報を生成する処理も含む。更に、従来の通信システムでは、仮想化ソフトウェアとは別に、ホストOS上で画面転送プロセスが動作する。この画面転送プロセスは、画面情報の圧縮処理及びエンコード処理、更に、画面情報の転送を実現するものである。このように、仮想化技術を用いたサービスプロセスと、画面転送プロセスとが同一ハードウェア上で実現された場合に、これら両プロセスの処理負荷の集中が問題となる、という知見を発明者は得た。このような問題点に対し、一台のシンクライアントサーバでこれらの両プロセスが実現された場合には、各プロセスでハードウェアを分離することが不可能である。その具体例として、仮想化技術では、複数の仮想マシンでGPUを共有するのが困難と言われていて、シンクライアントサーバのCPUで画面情報の生成を行わなければならず、処理効率が低くなる(つまり、処理負荷の高さに対して実行可能な演算処理量が少なくなる)原因となる。
以上のような理由から、従来の通信システムでは、一台のシンクライアントサーバが多数のクライアント装置を相手としてサービスを提供することが困難であった。
As shown in FIG. 14, in the conventional communication system, like the
For the reasons described above, in the conventional communication system, it is difficult for one thin client server to provide a service to a large number of client devices.
これに対し、シンクライアントサーバシステム1では、サービスプロセスと画面転送プロセスとが、それぞれ異なるハードウェアで実現されるように、第1サーバ装置10と第2サーバ装置20とに分離されている。すなわち、処理負荷が相対的に高いプロセスが同一のハードウェア上で実現されないから、効果的に処理負荷を分散させることができるというわけである。例えば、第1サーバ装置10が処理情報を第2サーバ装置20に転送するための処理負荷は、画面情報を生成するための処理負荷や画面情報を転送するための処理負荷よりも十分に低い。
On the other hand, in the thin client server system 1, the service process and the screen transfer process are separated into the
更に、このように第1サーバ装置10と第2サーバ装置20とに分離されることで、サービスプロセスと画面転送プロセスとのそれぞれに適したハードウェアを選定して、シンクライアントサーバシステム1に実装することが容易になる。例えば、第1サーバ装置10では、操作情報が示す操作に応じたプロセス処理を実行するが、画面情報の生成及び転送を行わなくてよい。よって、例えば、CPUは、移動機向けに作成されたプロセッサであり、1台のシンライアントサーバでサービスの提供に係る全処理を実現する場合、移動機向けのプロセッサをシンクライアントサーバに実装することが難しい。これでは、シンクライアントサーバで移動機向けのOSを動作させるのが困難であり、処理効率の低下の原因になりうる。これに対し、シンクライアントサーバシステム1では、第1サーバ装置10が第2サーバ装置20から分離されているので、このような移動機向けのプロセッサを第1サーバ装置10に実装することを妨げる事情がない。よって、クライアント装置40とシンクライアントサーバシステム1とのOSの相違に起因して処理効率が低下することを抑制することができる。
Further, by separating the
更に、第2サーバ装置20では、仮想化技術を用いていないし、クライアント装置40毎に独立したプロセスの処理を実行していない。よって、例えば、第2サーバ装置20では、一のクライアント装置40に関する画像処理を、GPU25を占有して実行することもできる。また、第1サーバ装置10と同じ理由により、第2サーバ装置20のハードウェアとして、画像処理の実行に適したハードウェア(プロセッサ)を適用することも容易である。よって、クライアント装置40とシンクライアントサーバシステム1とのプロセッサの相違に起因して処理効率が低下することも抑制することができる。
Further, the
以上が、シンクライアントサーバシステム1における負荷分散の仕組みが、効果的に負荷分散を実現できることの根拠の説明である。仮に、シンクライアントサーバシステム1を構成するサーバ装置を3台以上にすれば、各装置に強いられる処理負荷が分散される。しかしながら、以上の根拠に基づけば2台のサーバ装置に分離すれば十分な負荷分散の効果を奏するので、シンクライアントサーバシステム1によれば、サーバの台数を無駄に増加させなくて済むので、ハードウェア資源の節約にもなる。
次に、通信システム100の動作を説明する。
The above is the explanation of the grounds that the load distribution mechanism in the thin client server system 1 can effectively achieve load distribution. If the number of server devices constituting the thin client server system 1 is three or more, the processing load imposed on each device is distributed. However, if the two server devices are separated on the basis of the above reason, sufficient load distribution effect is obtained. Therefore, according to the thin client server system 1, since the number of servers does not need to be increased, It also saves wear resources.
Next, the operation of the
図10は、通信システム100においてサービスの提供を開始するときの処理の流れを示す。図11は、第1管理テーブル351及び第2管理テーブル352の更新の様子を説明する図である。
クライアント装置40の制御部41は、UI部44によりユーザにより利用したサービスを指定する操作を受け付けると、記憶部45から必要なソフトウェアを読み出して実行することにより、サービスを起動する(ステップSA1)。サービスを起動するということは、クライアント装置40がサービスの提供を受けるための動作状態になることを意味する。そこで、制御部41は、まず、サービスの起動を指示するための起動指示を、無線通信部43によりクライアント管理サーバ30宛てに送信する(ステップSA2)。この起動指示は、クライアント装置40のユーザがサービスの起動を開始させるための操作を行ったことを示すデータであり、送信元のクライアント装置40のユーザID(ここでは、「090aaaa0001」)を含む。
FIG. 10 shows the flow of processing when service provision is started in the
When the
クライアント管理サーバ30の制御部31は、ネットワーク通信部32によりクライアント装置40から起動指示を受信すると、サービスの提供に用いられる第1サーバ装置10を選択する(ステップSA3)。制御部31は、例えば、現時点で利用中のクライアント装置40数が最も少ない第1サーバ装置10を選択したり、予め決められた選択順に従って第1サーバ装置10を選択したりすればよく、この選択方法については特に問わない。ここでは、制御部31は、第1サーバ装置10aを選択したものとする。
When the
ところで、一般にシンクライアントサーバでは、例えばユーザの認証に必要な認証情報やアプリケーションプログラムの実行に用いられる情報等の、ユーザ毎に個別に管理されるユーザデータが保持されている。本実施形態のシンクライアントサーバシステム1には、プロセス処理を実行する第1サーバ装置10が複数含まれているが、以下のような仕組みでユーザデータが保持されていればよい。例えば、シンクライアントサーバシステム1に含まれるすべての第1サーバ装置10が、全ユーザのユーザデータを記憶部13に保持する。また、ユーザデータを一括して保持する管理サーバが別途設けられ、各第1サーバ装置10がこの管理サーバにアクセスしてユーザデータを取得してもよい。また、特定の第1サーバ装置10だけがユーザデータを記憶部13に保持し、且つ、このユーザデータを保持する第1サーバ10を特定するための所在情報をすべての第1サーバ装置10が記憶部13に保持する構成であってもよい。この場合、ステップSA3の処理で、クライアント装置40のユーザのユーザデータを保持しない第1サーバ装置10が選択されたときには、選択された第1サーバ装置10が所在情報に基づいてユーザデータを保持する第1サーバ装置10を特定し、特定した第1サーバ装置10にアクセスしてユーザデータを取得すればよい。
By the way, in general, a thin client server holds user data individually managed for each user, such as authentication information necessary for user authentication and information used for executing an application program. The thin client server system 1 of the present embodiment includes a plurality of
図10に戻って説明する。
次に、制御部31は、記憶部35に記憶された第1管理テーブル351を更新する(ステップSA4)。ここでは、制御部31は、図11(a)に示すようにして、起動指示に含まれるユーザID「090aaaa0001」と、ステップSA3の処理で選択した第1サーバ装置10aに割り当てられた第1サーバID「001」とを対応付けて、第1管理テーブル351に新たに記述する。ただし、制御部31は、ここではプロセスIDの更新を行わず、第1管理テーブル351をブランク(図11では「−」(ハイフン)で図示。)にしておく。
Returning to FIG.
Next, the
次に、制御部31は、第1管理テーブル351を参照して、ステップSA3の処理で選択した第1サーバ装置10宛てに、第1サーバ通信部33によりサービスの起動指示を送信する(ステップSA5)。ここでは、制御部31は、第1サーバ装置10a宛てに起動指示を送信する。
Next, the
第1サーバ装置10aの制御部11は、通信部12により起動指示を受信すると、受信した起動指示に従ってサービスを起動する(ステップSA6)。ここでサービスを起動するということは、第1サーバ装置10aがサービスを提供するための動作状態になることを意味する。そこで、制御部11は、まず、未使用のプロセスIDを起動指示の送信元のクライアント装置40に割り当て、サービスの提供に必要なソフトウェアを記憶部13から読み出して実行する。これにより、第1サーバ装置10aでは、起動指示の送信元のクライアント装置40に対応して、図9に示したようなソフトウェア構成が実現される。
When the
次に、制御部11は、起動完了したことを示す起動応答を、通信部12によりクライアント管理サーバ30宛てに送信する(ステップSA7)。起動応答には、ステップSA6の処理で制御部11が割り当てたプロセスIDが含まれる。
クライアント管理サーバ30の制御部31は、第1サーバ通信部33により起動応答を受信すると、受信した起動応答に応じて第1管理テーブル351を更新する(ステップSA8)。ここでは、制御部31は、起動応答に含まれていたプロセスIDを、起動指示の送信元であるクライアント装置40のユーザIDに対応付けて、第1管理テーブル351に記述する。ここでは、制御部31は、図11(b)に示すようにして、第1管理テーブル351に記憶されたユーザID「090aaaa0001」と、第1サーバID「001」とに対応付けて、プロセスID「0001」を新たに記述する。
Next, the
When receiving the activation response from the first
次に、第1サーバ装置10aの制御部11は、起動指示に応じたプロセス処理を実行する(ステップSA9)。ここでは、制御部11は、プロセスID「0001」が示すプロセスについて、ユーザにより行われた操作情報が示す操作(ここでは、サービスの起動を指示する操作)に応じた処理を実行する。ここでのプロセス処理は、例えば、クライアント装置40に表示させる画像の画面情報を生成するための演算処理を規定した処理情報を供給する処理を含む。そして、制御部11は、この処理情報と、自装置に割り当てられた第1サーバID(ここでは、「001」)と、プロセスIDとのセット(ここでは、「0001」)を、通信部12によりクライアント管理サーバ30宛てに送信する(ステップSA10)。送信完了すると、制御部11は、送信完了したこと旨の応答を、処理情報IF131aの機能によって取得することができる。
Next, the
クライアント管理サーバ30の制御部31は、ステップSA10の処理で送信されたデータのセットを第1サーバ通信部33により受信すると、第1管理テーブル351に記述された、起動指示の送信元となったクライアント装置40のユーザIDを参照する(ステップSA11)。ここでは、制御部31は、第1管理テーブル351に記述されたユーザID「090aaaa0001」を参照する。
When the first
次に、制御部31は、サービスの提供に用いられる第2サーバ装置20を選択する(ステップSA12)。制御部31は、例えば、現時点で利用中のクライアント装置40数が最も少ない第2サーバ装置20を選択したり、予め決められた選択順に従って第2サーバ装置20を選択したりすればよいが、この選択方法については特に問わない。ここでは、制御部31は、第2サーバ装置20aを選択したものとする。
Next, the
次に、制御部31は、記憶部35に記憶された第2管理テーブル352を更新する(ステップSA13)。ここでは、制御部31は、図11(c)に示すようにして、起動指示に含まれていたユーザID「090aaaa0001」と、ステップSA12の処理で選択した第2サーバ装置20aに割り当てられた第1サーバID「00a」とを対応付けて、第2管理テーブル352に新たに記述する。
Next, the
次に、制御部31は、第2管理テーブル352を参照して、処理情報とユーザIDとのセットを、このユーザIDに対応付けられた第2サーバIDの第2サーバ装置20宛てに、第2サーバ通信部34により送信する(ステップSA14)。ここでは、制御部31は、処理情報とユーザID「090aaaa0001」とのセットを、第2サーバ装置20a宛てに送信させる。
Next, the
第2サーバ装置20aの制御部21は、ステップSA14の処理で送信されたデータのセットをサーバ通信部23により受信すると、受信した処理情報が示す演算処理を実行し、画面情報を生成する(ステップSA15)。ここでは、制御部21は、処理情報が示す演算処理としてGPU25を用いた画像処理(例えば、レンダリング処理)を実行して、例えばビットマップ形式の画像情報を生成する。
なお、画面情報は、クライアント装置40が画像の表示に用いることのできる形式のデータであればよい。
When the
The screen information may be data in a format that can be used by the
次に、制御部21は、ステップSA15の処理で生成した画面情報に圧縮処理及びエンコード処理を施す(ステップSA16)。そして、制御部21は、処理後の画面情報を、ネットワーク通信部22によりクライアント装置40宛てに送信する(ステップSA17)。ここでは、制御部21は、ユーザIDで識別されるクライアント装置40宛に画面情報を送信すればよい。
Next, the
クライアント装置40の制御部41は、無線通信部43により画面情報を受信すると、受信した画面情報にデコード処理や伸張処理を施す(ステップSA18)。そして、制御部41は、画面情報に応じた画像をUI部44に表示させる(ステップSA19)。
以上が、サービスの提供を開始するときの通信システム100での処理の流れの説明である。次に、通信システム100でのサービスの提供中における処理の流れを、図12を参照しつつ説明する。
When the screen information is received by the
The above is the description of the flow of processing in the
図12は、通信システム100においてサービスの提供中における処理の流れを示すシーケンス図である。
クライアント装置40の制御部41は、ユーザにより行われた操作をUI部44等によって受け付けると(ステップSB1)、受け付けた操作を示す操作情報と、自装置のユーザのユーザIDとのセットを、無線通信部43によりクライアント管理サーバ30宛てに送信する(ステップSB2)。ここでは、制御部41は、操作情報とユーザID「090aaaa0001」とのセットを送信させる。
FIG. 12 is a sequence diagram showing the flow of processing during service provision in the
When the operation performed by the user is received by the
クライアント管理サーバ30の制御部31は、ステップSB2の処理で送信されたデータのセットをネットワーク通信部32により受信すると、第1サーバ装置10を選択する(ステップSB3)。制御部31は、受信したユーザIDに第1管理テーブル351において対応付けられた第1サーバIDを特定し、特定した第1サーバIDの第1サーバ装置10を選択する。制御部31は、ユーザID「090aaaa0001」を受信したから、ここでは、第1サーバ装置10aを選択する。
次に、制御部31は、操作情報と、第1管理テーブル351においてユーザIDに対応付けられたプロセスIDとのセットを、第1サーバ通信部33により、ステップSB3の処理で選択した第1サーバ装置10宛てに送信する(ステップSB4)。ここでは、制御部31は、操作情報とプロセスID「0001」とのセットを、第1サーバ装置10a宛てに送信させる。
The
Next, the
第1サーバ装置10aの制御部11は、ステップSB4の処理で送信されたデータのセットを通信部12により受信すると、これらの情報に応じてプロセス処理を実行する(ステップSB5)。具体的には、制御部11は、プロセスIDで識別されるプロセスにおいて、操作情報が示す操作に応じた処理を実行する。次に、制御部11は、ステップSB5の処理の実行後に表示される画像を表す画面情報を生成するための演算処理を規定した処理情報と、自装置の第1サーバID(ここでは、「001」)と、プロセスID(ここでは、「0001」)とのセットを、通信部12によりクライアント管理サーバ30宛てに送信する(ステップSB6)。
When the
クライアント管理サーバ30の制御部31は、ステップSB6の処理で送信されたデータのセットを第1サーバ通信部33により受信すると、第1管理テーブル351に記述された、操作情報の送信元となったクライアント装置40のユーザIDを参照する(ステップSB7)。ここでは、制御部31は、第1管理テーブル351のユーザID「090aaaa0001」を参照する。
When the
次に、制御部31は、サービスの提供に用いられる第2サーバ装置20を選択する(ステップSB8)。ここでは、制御部31は、受信したユーザIDに第2管理テーブル352において対応付けられた第2サーバIDを特定し、特定した第2サーバIDの第2サーバ装置20を選択する。ここでは、制御部31は、第2サーバ装置20aを選択する。
次に、制御部31は、第2管理テーブル352を参照して、処理情報とユーザIDとのセットを、このユーザIDに対応付けられた第2サーバIDの第2サーバ装置20宛てに、第2サーバ通信部34により送信する(ステップSB9)。ここでは、制御部31は、第2サーバ装置20a宛てに処理情報とユーザIDとのセットを送信させる。
Next, the
Next, the
第2サーバ装置20aの制御部21は、ステップSB9の処理で送信されたデータのセットをサーバ通信部23により受信すると、処理情報に従って演算処理を実行し画面情報を生成する(ステップSB10)。次に、制御部21は、生成した画面情報に圧縮処理及びエンコード処理を施す(ステップSB11)。そして、制御部21は、処理後の画面情報をネットワーク通信部22によりクライアント装置40宛てに送信する(ステップSB12)。
When the
クライアント装置40の制御部41は、無線通信部43により画面情報を受信すると、受信した画面情報にデコード処理や伸張処理等の処理を施す(ステップSB13)。そして、制御部41は、画面情報に応じた画像をUI部44に表示させる(ステップSB14)。以上のステップSB9からSB14までの各処理ステップは、上述したステップSA14からSA19までの各処理ステップと同じ方法で実行される。
以上が、通信システム100でのサービスの提供の開始後における処理の流れの説明である。以上の処理ステップは、クライアント装置40がユーザにより行われた操作を受け付けるたびに実行される。また、サービスの提供を受けるクライアント装置40は、クライアント管理サーバ30の管理により、サービスを受けている期間中は、同一の第1サーバ装置10及び同一の第2サーバ装置20を経由してデータの授受を行うこととなる。
When receiving the screen information by the
The above is the description of the processing flow after the start of service provision in the
以上説明した実施形態によれば、シンクライアントサーバシステム1においては、プロセス処理を実行する第1サーバ装置10と、画面情報の生成及び画面情報の転送を行う第2サーバ装置20とが分離されるので、効果的にシンクライアントサーバの負荷分散を実現することができる。通信システム100によれば、第1サーバ装置10と第2サーバ装置20とのそれぞれにおいて、実行すべき処理に適した設備設計が可能となるし、前掲した複数の作用の協働によって、クライアント装置40における画面表示の遅延を抑制しつつ、多数のクライアント装置40に個別の画面表示を行わせるための処理を並行して行うことができる。
According to the embodiment described above, in the thin client server system 1, the
第1サーバ装置10のプロセッサ(CPU)として、クライアント装置40で動作するプロセッサでなく、一般のサーバ向けに作成されたプロセッサを適用した場合、仮想マシンにおいてはこのプロセッサで動作するOSが適用されることにより、前掲の作用効果を同等に奏する。
したがって、シンクライアントサーバステム1では、第1サーバ装置10に適用するプロセッサの種類に応じて、プロセス処理によって提供可能なサービスの幅が、従来構成のシンクライアントサーバよりも広がることも期待できる。
When a processor created for a general server is applied as a processor (CPU) of the
Therefore, in the thin client server system 1, it can be expected that the range of services that can be provided by process processing is wider than that of the thin client server having the conventional configuration, depending on the type of processor applied to the
また、通信システム100によれば、クライアント装置40におけるバッファ機能が実質的に不要である。これによりバッファリングされたデータをファイル化するアプリケーションプログラムが用いられても、画面情報がファイル化されることがないので、著作物の保護の観点からも好適である。
また、通信システム100において、クライアント装置40よりも高品質なハードウェア資源やソフトウェア資源をシンクライアントサーバシステム1に実装することで、クライアント装置40を安価で提供しつつ、クライアント装置40に高いサービスを提供することができる。
Further, according to the
Further, in the
[変形例]
本発明は、上述した実施形態と異なる形態で実施することが可能である。本発明は、例えば、以下のような形態で実施することも可能である。また、以下に示す変形例は、各々を適宜に組み合わせてもよい。
[変形例1]
上述した実施形態では、第1サーバ装置10は仮想マシンを動作させて、クライアント装置40毎のプロセス処理を実行していた。これに代えて、第1サーバ装置10が仮想化技術を用いないようにしてもよい。
図13は、仮想化技術を用いない場合の通信システム100のソフトウェア構成の一例を示す図である。図13(a)は、この変形例の通信システム100のソフトウェア構成を示し、図13(b)は従来の通信システムのソフトウェア構成を示す。
図13(a)に示すように、この変形例のソフトウェア構成は、図9(a)に示すものから、仮想化ソフトウェア133及びゲストOS132に相当するものがなく、OS上で各ソフトウェアが動作する構成に等しい。一方、図13(b)に示すように、従来の通信システムのソフトウェア構成にあっては、やはり、一台のサーバにおいて、画面情報を生成するまでのプロセスと画面転送プロセスとが実現される。このような仕組みでも、やはり、画面情報の生成及び画面転送プロセスに係る処理負荷が高いが故に、画面表示の遅延の原因になる。これに対し、本変形例では、シンクライアントサーバシステム1において、操作情報が示す操作に応じてプロセス処理を実行する第1サーバ装置10と、画面情報の生成及び画面情報の転送を行う第2サーバ装置20とが分離されている。よって、上述した実施形態と同等の作用により、クライアント装置40での画面表示の遅延を抑制しうるようにシンクライアントサーバの負荷分散を実現することができる。
本変形例ような第1サーバ装置10に仮想化技術を用いない構成は、第1サーバ装置10全体を管理するOS(サーバOS)上でサービス処理を行う場合に適用することができる。もちろん、本変形例においても、第1サーバ装置10のプロセッサとして、クライアント装置40で動作するプロセッサ、及びサーバ向けに作成されたプロセッサのどちらも適用することができる。
なお、一台の第1サーバ装置10において、仮想化マシンを用いたプロセス処理と、仮想マシンを用いないプロセス処理とが並列して実現されてもよい。
[Modification]
The present invention can be implemented in a form different from the above-described embodiment. The present invention can also be implemented in the following forms, for example. Further, the following modifications may be combined as appropriate.
[Modification 1]
In the above-described embodiment, the
FIG. 13 is a diagram illustrating an example of a software configuration of the
As shown in FIG. 13A, the software configuration of this modification is not equivalent to the
The configuration in which the virtualization technology is not used for the
Note that, in the
[変形例2]
上述した実施形態では、クライアント管理サーバ30は、ステップSA12の処理で選択した第2サーバ装置20を、サービスが提供される期間中において継続して利用していた。これに代えて、クライアント管理サーバ30は、このような継続利用をしなくてもよい。第2サーバ装置20では、受信した処理情報に従って画面情報を生成しそれを転送すればよく、クライアント装置40毎のプロセスを管理する必要がないからである。そこで、クライアント管理サーバ30は、処理情報を受信すると、いずれか1の第2サーバ装置20を選択するという具合に、ユーザにより操作が行われるたびに第2サーバ装置20を選択してもよい。
この構成であっても、上述した第1実施形態と同等の効果を奏する。また、この構成では、第2管理テーブル352が不要である。
[Modification 2]
In the above-described embodiment, the
Even this configuration has the same effects as those of the first embodiment described above. In this configuration, the second management table 352 is not necessary.
[変形例3]
上述した実施形態で、クライアント管理サーバ30は、サービスの提供のたびにステップSA3の処理で第1サーバ装置10を選択していた。これに代えて、各クライアント装置40と第1サーバ装置10との関係を予め決めておいてもよい。この構成であれば、クライアント管理サーバ30は、ステップSA4の処理で第1管理テーブル351を更新しなくてよい。同様に、クライアント管理サーバ30は、サービスの提供のたびにステップSA12の処理で第2サーバ装置20を選択していた。これに代えて、各クライアント装置40と第2サーバ装置20との対応関係を予め決めておいてもよい。この構成であれば、クライアント管理サーバ30は、ステップSA12の処理で第2管理テーブル352を更新しなくてよい。
上述した実施形態では、第1サーバ装置10は、ステップSA7の処理で、起動応答にプロセスIDを含めてクライアント管理サーバ30宛てに送信していた。これに代えて、第1サーバ装置10は、ステップSA10の処理で、処理情報及びプロセスIDのセットを送信してもよい。また、クライアント管理サーバ30は、ステップSA5の処理でプロセスIDを送信して、起動指示の送信元のクライアント装置40に対応したプロセスを実現させてもよいし、実現させるプロセスの内容を指定したデータを送信してもよい。
[Modification 3]
In the embodiment described above, the
In the embodiment described above, the
[変形例4]
上述した実施形態では、シンクライアントサーバシステム1は、第1サーバ装置10と、第2サーバ装置20と、クライアント管理サーバ30とにより構成されていたが、クライアント管理サーバ30を有しない構成としてもよい。この場合、クライアント装置40が、起動指示や操作情報をいずれか1の第1サーバ装置10宛てに送信する。そして、第1サーバ装置10は、操作情報が示す操作に応じてプロセス処理を実行し、画面情報を生成するための処理情報を、第2サーバ装置20宛てに送信する。そして、第2サーバ装置20は、処理情報で規定される演算処理を実行して画面情報を生成し、起動指示の送信元のクライアント装置40宛てに画面情報を送信する。
このように、シンクライアントサーバシステム1においては、操作情報が示す操作に応じてプロセス処理を実行する第1サーバ装置と、画面情報の生成及び画面情報の転送を行う第2サーバ装置とに分離されていれば、上述の実施形態と同等の効果を奏する。
なお、シンクライアントサーバシステム1では、第1サーバ装置10と、第2サーバ装置20とがそれぞれ少なくとも1台ずつあればよい。
[Modification 4]
In the embodiment described above, the thin client server system 1 is configured by the
As described above, the thin client server system 1 is divided into the first server device that executes the process according to the operation indicated by the operation information and the second server device that generates the screen information and transfers the screen information. If it does, there exists an effect equivalent to the above-mentioned embodiment.
In the thin client server system 1, at least one
[変形例5]
上述した実施形態において、シンクライアントサーバシステム1では、第1サーバ装置10と第2サーバ装置20とに分離されていた。上述した発明者の知見によれば、シンクライアントサーバシステム1にあっては、プロセス処理を実行するハードウェア資源と、画面情報の生成及び転送を実行するハードウェア資源とが分離されていればよいと考えられる。よって、図8を用いれば、少なくとも処理実行部102構成するハードウェア資源は、画面情報生成部202及び第2送信部203を構成するハードウェア資源とが分離されていればよいとも言える。ここでハードウェア資源が分離されているということは、例えば、上記機能ブロックの実現において、共通するハードウェアデバイスが用いられないことである。
また、通信システム100において、上述した第1サーバ装置10と第2サーバ装置20とが同一筐体内に設けられたシンクライアントサーバシステム1が構成されてもよい。
[Modification 5]
In the embodiment described above, the thin client server system 1 is separated into the
In the
[変形例6]
上述した実施形態において、第1サーバ装置10が実行するOSと、クライアント装置40が実行するOSとが同一でなくてもよい。また、第1サーバ装置10のプロセッサは、必ずしもクライアント装置40で動作するように作成されたものでなくてもよいが、プロセス処理の実行に適したプロセッサであることが好ましい。
また、本発明は、OS上で各プロセスを実現することを必須とするものでない。
また、第2サーバ装置20でGPU25が画像処理を司る画像処理部として機能していたが、他のプロセッサが用いられてもよい。
[Modification 6]
In the above-described embodiment, the OS executed by the
Further, the present invention does not necessarily require each process to be realized on the OS.
Further, although the
[変形例7]
クライアント装置40はスマートフォンに限らず、例えば携帯電話端末やタブレット端末、パーソナルコンピュータ、PDA(Personal Digital Assistant)等の他のクライアント装置であってもよく、移動機であるか否かも問わない。
また、第1サーバ装置10、第2サーバ装置20、クライアント管理サーバ30及びクライアント装置40の制御部41が実現する各機能は、複数のプログラムの組み合わせによって実現され、又は、複数のハードウェア資源の協働によって実現されうる。
[Modification 7]
The
Each function realized by the
1…シンクライアントサーバシステム、10,10a,10b…第1サーバ装置、100…通信システム、101…第1受信部、102…処理実行部、103…第1送信部、11…制御部、12…通信部、13…記憶部、131…ホストOS、131a…処理情報IF、132…ゲストOS、133…仮想化ソフトウェア、134…サービスプロセス、135…仮想マシン、20,20a,20b…第2サーバ装置、201…第2受信部、202…画面情報生成部、203…第2送信部、21…制御部、22…ネットワーク通信部、23…サーバ通信部、24…記憶部、241…OS、241a…GPUIF、242…画面情報生成プロセス、243…画面転送プロセス、30…クライアント管理サーバ、301…第3受信部、302…第1サーバ選択部、303…第3送信部、304…第4受信部、305…第2サーバ選択部、306…第4送信部、31…制御部、32…ネットワーク通信部、33…第1サーバ通信部、34…第2サーバ通信部、35…記憶部、131…第1管理テーブル、132…第2管理テーブル、40…クライアント装置、41…制御部、411…受付部、412…送信制御部、413…表示制御部、42…音声入出力部、43…無線通信部、44…UI部、45…記憶部、451…OS
DESCRIPTION OF SYMBOLS 1 ... Thin
Claims (9)
前記第1サーバ装置は、
受信した画面情報に応じた画像を表示するクライアント装置により受け付けられた操作を示す操作情報を受信する第1受信部と、
前記第1受信部により受信された操作情報が示す操作に応じた複数の処理を、前記クライアント装置毎に独立したプロセスによって並列に実行する処理実行部と、
前記複数の処理の各々について、前記処理実行部による当該処理の実行後に表示される画像を表す画面情報を生成するための演算処理を規定した処理情報を送信する第1送信部と
を有し、
前記第2サーバ装置は、
前記第1送信部により送信された処理情報を受信する第2受信部と、
前記第2受信部により受信された前記複数の処理の各々に対応する前記処理情報に従って順番に演算処理を実行し、前記画面情報を生成する画面情報生成部と、
前記画面情報生成部により生成された画面情報を前記クライアント装置宛てに送信する第2送信部と
を有することを特徴とするシンクライアントサーバシステム。 A first server device and a second server device;
The first server device
A first receiving unit that receives operation information indicating an operation accepted by the client device that displays an image corresponding to the received screen information;
A process execution unit that executes a plurality of processes according to operations indicated by the operation information received by the first reception unit in parallel by independent processes for each of the client devices ;
Wherein for each of the plurality of processes, and a first transmission unit for transmitting the processed information defining the processing for generating the screen information representing an image to be displayed after execution of the processing by the processing execution unit,
The second server device is
A second receiver for receiving the processing information transmitted by the first transmitter;
A screen information generating unit that sequentially performs arithmetic processing according to the processing information corresponding to each of the plurality of processes received by the second receiving unit, and generates the screen information;
A thin client server system comprising: a second transmission unit configured to transmit the screen information generated by the screen information generation unit to the client device.
前記複数の処理を仮想マシンで実行されたオペレーティングシステム上で実行する
ことを特徴とする請求項1に記載のシンクライアントサーバシステム。 The process execution unit
Thin client server system according to claim 1, characterized in that run on an operating system that is running in a virtual machine of the plurality of processing.
ことを特徴とする請求項2に記載のシンクライアントサーバシステム。The thin client server system according to claim 2.
前記クライアント装置から前記第1サーバ装置に送信されるデータを中継するクライアント管理サーバを備え、
前記クライアント管理サーバは、
前記クライアント装置のユーザを識別するユーザIDと、いずれか1の前記第1サーバ装置を識別する第1サーバIDとを対応付けて記憶する第1記憶部と、
前記クライアント装置により送信された操作情報を受信する第3受信部と、
前記第3受信部により受信された操作情報の送信元であるクライアント装置の前記ユーザIDに対応付けて、前記第1記憶部に第1サーバIDが記憶された前記第1サーバ装置宛てに、当該操作情報を送信する第3送信部と
を有し、
前記第1受信部は、前記第3送信部により送信された操作情報を受信する
ことを特徴とする請求項1から請求項3のいずれか1項に記載のシンクライアントサーバシステム。 A plurality of the first server devices;
A client management server that relays data transmitted from the client device to the first server device;
The client management server
A first storage unit that stores a user ID that identifies a user of the client device and a first server ID that identifies any one of the first server devices;
A third receiver for receiving operation information transmitted by the client device;
In association with the user ID of the client device that is the transmission source of the operation information received by the third receiving unit, the first server device in which the first server ID is stored in the first storage unit, A third transmitter for transmitting operation information,
The thin client server system according to any one of claims 1 to 3, wherein the first receiving unit receives the operation information transmitted by the third transmitting unit.
前記クライアント管理サーバは、更に、前記第1サーバ装置から前記第2サーバ装置に送信されるデータを中継し、
前記ユーザIDと、いずれか1の前記第2サーバ装置を識別する第2サーバIDとを対応付けて記憶する第2記憶部と、
前記第1送信部により送信された処理情報を受信する第4受信部と、
前記画面情報の送信先となるクライアント装置の前記ユーザIDに対応付けて、前記第2記憶部に第2サーバIDが記憶された前記第2サーバ装置宛てに、前記第4受信部が受信した処理情報を送信する第4送信部と
を有することを特徴とする請求項4に記載のシンクライアントサーバシステム。 A plurality of the second server devices;
The client management server further relays data transmitted from the first server device to the second server device,
A second storage unit that stores the user ID and a second server ID that identifies any one of the second server devices;
A fourth receiver for receiving the processing information transmitted by the first transmitter;
The process received by the fourth receiving unit to the second server device in which the second server ID is stored in the second storage unit in association with the user ID of the client device that is the transmission destination of the screen information The thin client server system according to claim 4 , further comprising: a fourth transmission unit configured to transmit information.
前記クライアント装置で動作するプロセッサと同じ種類のプロセッサを用いて処理を実行する
ことを特徴とする請求項1から請求項5のいずれか1項に記載のシンクライアントサーバシステム。 The process execution unit
The thin client server system according to any one of claims 1 to 5, wherein the processing is executed using a processor of the same type as a processor that operates in the client device.
ことを特徴とする請求項2又は請求項3に記載のシンクライアントサーバシステム。 The thin client server system according to claim 2 , wherein the operating system is an operating system that operates on a processor included in the client device.
前記クライアント装置は、
前記シンクライアントサーバシステムと通信する通信部と、
画像を表示する表示部と、
自装置に対して行われた操作を受け付ける受付部と、
前記受付部が受け付けた操作を示す操作情報を前記通信部により送信する送信制御部と、
前記送信制御部の制御により送信された操作情報に基づいて前記シンクライアントサーバシステムにより生成されて前記第2送信部により送信された画面情報が、前記通信部により受信されると、受信された画面情報に応じて前記表示部に画像を表示させる表示制御部と
を有することを特徴とする通信システム。 A communication system comprising the thin client server system according to any one of claims 1 to 7 and a client device,
The client device is
A communication unit communicating with the thin client server system;
A display for displaying an image;
A reception unit that receives an operation performed on the device;
A transmission control unit that transmits operation information indicating an operation received by the reception unit by the communication unit;
When the screen information generated by the thin client server system and transmitted by the second transmission unit based on the operation information transmitted by the control of the transmission control unit is received by the communication unit, the received screen is displayed. A display control unit that displays an image on the display unit according to information.
前記第1サーバ装置が、受信した画面情報に応じた画像を表示するクライアント装置により受け付けられた操作を示す操作情報を受信する第1受信ステップと、
前記第1サーバ装置が、前記第1受信ステップで受信した操作情報が示す操作に応じた複数の処理を、前記クライアント装置毎に独立したプロセスによって並列に実行する処理実行ステップと、
前記第1サーバ装置が、前記複数の処理の各々について、前記処理実行ステップでの当該処理の実行後に表示される画像を表す画面情報を生成するための演算処理を規定した処理情報を送信する第1送信ステップと、
前記第2サーバ装置が、前記第1送信ステップで送信された処理情報を受信する第2受信ステップと、
前記第2サーバ装置が、前記第2受信ステップで受信した前記複数の処理の各々に対応する前記処理情報に従って順番に演算処理を実行し、前記画面情報を生成する画面情報生成ステップと、
前記第2サーバ装置が、前記画面情報生成ステップで生成した画面情報を前記クライアント装置宛てに送信する第2送信ステップと
を有することを特徴とする画面情報送信方法。 A screen information transmission method for a thin client server system comprising a first server device and a second server device,
A first receiving step in which the first server device receives operation information indicating an operation accepted by a client device that displays an image corresponding to the received screen information;
A process execution step in which the first server device executes a plurality of processes corresponding to operations indicated by the operation information received in the first reception step in parallel by independent processes for each of the client devices ;
The first server device, for each of said plurality of processing, first transmits the processing information defining the processing for generating the screen information representing an image to be displayed after execution of the processing in said processing execution step One transmission step;
A second receiving step in which the second server device receives the processing information transmitted in the first transmitting step;
A screen information generating step in which the second server device executes arithmetic processing in order according to the processing information corresponding to each of the plurality of processes received in the second receiving step, and generates the screen information;
The screen information transmission method, wherein the second server device includes a second transmission step of transmitting the screen information generated in the screen information generation step to the client device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011155190A JP5850660B2 (en) | 2011-07-13 | 2011-07-13 | Thin client server system, communication system, and screen information transmission method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011155190A JP5850660B2 (en) | 2011-07-13 | 2011-07-13 | Thin client server system, communication system, and screen information transmission method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013020553A JP2013020553A (en) | 2013-01-31 |
JP5850660B2 true JP5850660B2 (en) | 2016-02-03 |
Family
ID=47691908
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011155190A Active JP5850660B2 (en) | 2011-07-13 | 2011-07-13 | Thin client server system, communication system, and screen information transmission method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5850660B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6527660B2 (en) * | 2013-07-29 | 2019-06-05 | 小松電機産業株式会社 | Information monitoring system |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008310417A (en) * | 2007-06-12 | 2008-12-25 | Hitachi Ltd | Access status monitoring system |
JP4966942B2 (en) * | 2008-10-01 | 2012-07-04 | 株式会社日立製作所 | Virtual PC management method, virtual PC management system, and virtual PC management program |
-
2011
- 2011-07-13 JP JP2011155190A patent/JP5850660B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2013020553A (en) | 2013-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10354430B2 (en) | Image update method, system, and apparatus | |
CN102413150B (en) | Server and virtual desktop control method and virtual desktop control system | |
KR102255138B1 (en) | Message processing method and device, storage medium, and computer device | |
US9814979B2 (en) | Data provision system, provision apparatus, execution apparatus, control method, and recording medium | |
JP5419654B2 (en) | Information processing apparatus and information processing system | |
JP2013532334A5 (en) | ||
CN101087397B (en) | Server device, control instruction processing method therefor and terminal device | |
CN103841004B (en) | Method for information display and information server | |
US20120122573A1 (en) | Apparatus and method for synchronizing virtual machine | |
JP5850660B2 (en) | Thin client server system, communication system, and screen information transmission method | |
CN111143017B (en) | Cloud operation system interaction processing method, client and cloud operation system | |
EP2861313B1 (en) | Processing system, information processing apparatus, control method, program and storage medium | |
JP2013150273A (en) | Image forming system, image forming apparatus, external terminal, and program | |
JP2014186472A (en) | Communication system, information processing device and program | |
JP2003296129A (en) | Information processing program and information processor | |
JP2020009030A (en) | Information processing system, information processing system control method, and information processing system control program | |
KR102537913B1 (en) | Method And Apparatus for Displaying VMI Screen and Local Screen in Specific Region | |
CN111158885B (en) | Concurrency control method and device in job scheduling system | |
US20150082365A1 (en) | Distribution management apparatus, distribution system, and distribution management method | |
JP4643205B2 (en) | Software defined radio | |
JP2004318207A (en) | Information processor, information processing program, and recording medium | |
JP2015143893A (en) | server system | |
JP2017010334A (en) | Information processor, hidden information attached pattern, information processing method, and program | |
KR20170076749A (en) | Membership management device, membership management method, and recording medium | |
JP2017108757A (en) | Game device, game system, control method, and control program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140225 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20150129 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20150210 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150413 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20151110 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20151201 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5850660 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |