JP6469148B2 - Communications system - Google Patents
Communications system Download PDFInfo
- Publication number
- JP6469148B2 JP6469148B2 JP2017031633A JP2017031633A JP6469148B2 JP 6469148 B2 JP6469148 B2 JP 6469148B2 JP 2017031633 A JP2017031633 A JP 2017031633A JP 2017031633 A JP2017031633 A JP 2017031633A JP 6469148 B2 JP6469148 B2 JP 6469148B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- request
- client device
- server device
- data name
- 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
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明は、サーバ装置とクライアント装置とがネットワークを介して通信を行う通信システムに関するものである。 The present invention relates to a communication system in which a server device and a client device communicate via a network.
従来、データの管理を行うサーバ装置に対して、インターネットなどのネットワークを介してクライアント装置が通信を行うことにより、サーバ装置とは異なる装置であるクライアント装置が、サーバ装置の管理するデータへアクセスすることが可能となる通信システムが運用されている。こうした通信システムの一例として、遠隔地に存在する監視対象(サーバ装置による管理対象)の状態(ステータス)を、ウェブブラウザを用いて(インターネットを介して)業者の営業所や個人宅などに設置されたクライアント装置(コンピュータなど)から監視するシステムが挙げられる。 Conventionally, when a client device communicates with a server device that manages data via a network such as the Internet, a client device that is a device different from the server device accesses data managed by the server device. A communication system that enables this is operated. As an example of such a communication system, the status (status) of a monitoring target (managed by a server device) that exists in a remote place is installed in a business office of a contractor or a private house using a web browser (via the Internet). Monitoring system from a client device (such as a computer).
こうした通信システムにおいては、クライアント装置は、サーバ装置の管理するデータのうちアクセス対象とするデータを指定する要求(リクエスト)を、ネットワークを介してサーバ装置へ送信し、サーバ装置は受信した要求によって指定されたデータをクライアント装置へ送信する。 In such a communication system, the client device transmits a request (request) for designating data to be accessed among data managed by the server device to the server device via the network, and the server device is designated by the received request. The transmitted data is transmitted to the client device.
以上のような従来の通信システムにおいては、クライアント装置が同一の要求をサーバ装置へ送信することを何度も繰り返す場合に、クライアント装置とサーバ装置との間の通信量が膨大になってしまうという問題点があった。 In the conventional communication system as described above, when the client device repeatedly transmits the same request to the server device, the amount of communication between the client device and the server device becomes enormous. There was a problem.
例えばクライアント装置が監視対象を遠隔地から監視し続ける場合には、クライアント装置は監視対象に関するステータスの全てをサーバ装置へ定期的に(例えば1秒に1度)要求する。このとき、クライアント装置がサーバ装置へ送信する要求は毎回同じであるが、その要求は複数のデータを指定している。したがって、指定するデータの数に比例した大きさの通信量となる要求が定期的に送信されることになり、例えば監視対象に関するステータスが10種類あるならば、ネットワーク上の通信量は(10×経過秒数)に比例して増加していくことになる。そして、クライアント装置が複数存在するならばそのクライアント装置の数にも比例して通信量は増加していく。 For example, when the client device continues to monitor the monitoring target from a remote place, the client device requests all of the statuses related to the monitoring target from the server device periodically (for example, once per second). At this time, the request transmitted from the client device to the server device is the same every time, but the request specifies a plurality of data. Therefore, a request having a communication amount proportional to the number of data to be specified is periodically transmitted. For example, if there are ten types of statuses related to the monitoring target, the communication amount on the network is (10 × It will increase in proportion to the number of seconds elapsed. If there are a plurality of client devices, the amount of communication increases in proportion to the number of client devices.
このように、従来の通信システムでは、クライアント装置が定期的にサーバ装置へ同一の要求を繰り返すだけでネットワーク上の通信量が膨大になってしまうという問題点があった。 As described above, the conventional communication system has a problem that the amount of communication on the network becomes enormous if the client device periodically repeats the same request to the server device.
また、サーバ装置は要求されたデータを全てクライアント装置へ送信するため、同一の要求が定期的に繰り返された場合、前回の要求の時点からデータが変化していなくとも大量のデータが毎度クライアント装置へ送信されてしまい、やはり通信量が大きくなってしまうという問題点もあった。 In addition, since the server device transmits all requested data to the client device, if the same request is periodically repeated, a large amount of data is received each time even if the data has not changed since the previous request. There is also a problem that the amount of communication is also increased.
本発明は、上記問題点に鑑み、サーバ装置とクライアント装置との間の通信量、特に、クライアント装置がサーバ装置へデータを要求する際の通信量を低減することを課題とする。 In view of the above problems, an object of the present invention is to reduce the amount of communication between a server device and a client device, in particular, the amount of communication when the client device requests data from the server device.
本発明に係る通信システムは、複数のデータを管理する少なくとも1つのサーバ装置と、ネットワークを介して前記サーバ装置と通信することにより前記複数のデータにアクセスする少なくとも1つのクライアント装置と、を含み、前記クライアント装置は、前記複数のデータのうち必要とするデータに対応するデータ名を記した要求データ名リストを前記サーバ装置へ送信し、前記サーバ装置は、受信した前記要求データ名リストに記されているデータ名に対応するデータを、前記要求データ名リストを送信したクライアント装置へ送信する通信システムにおいて、前記サーバは、前記クライアント装置から前記要求データ名リストを受信した際に、前記要求データ名リストに記されたデータ名の組み合わせに応じて一意なリクエストIDを生成して前記リクエストIDを前記クライアント装置へ送信するとともに、前記要求データ名リストと前記リクエストIDとを紐付けたリクエストIDリストを記録し、前記クライアント装置が前記リクエストIDを受信した後、前記クライアント装置が前回送信したものと同一の前記要求データ名リストを前記サーバ装置へ再度送信しようとする際には、前記クライアント装置は前記要求データ名リストの代わりに前記リクエストIDを前記サーバ装置へ送信し、前記リクエストIDを受信したサーバ装置は、前記リクエストIDに紐付いた前記要求データ名リストに記されたデータ名に対応するデータを、前記リクエストIDを送信した前記クライアント装置へ送信することを特徴とする。 A communication system according to the present invention includes at least one server device that manages a plurality of data, and at least one client device that accesses the plurality of data by communicating with the server device via a network, The client device transmits a request data name list in which data names corresponding to necessary data among the plurality of data are transmitted to the server device, and the server device is recorded in the received request data name list. In the communication system for transmitting data corresponding to the data name to the client device that has transmitted the request data name list, the server receives the request data name list from the client device and receives the request data name list. A unique request ID depending on the combination of data names in the list Generate and transmit the request ID to the client device, record a request ID list in which the request data name list and the request ID are linked, and after the client device receives the request ID, the client ID When trying to send the request data name list that is the same as that sent last time by the device to the server device again, the client device sends the request ID to the server device instead of the request data name list. The server apparatus that has received the request ID transmits data corresponding to the data name described in the request data name list associated with the request ID to the client apparatus that has transmitted the request ID. To do.
また、本発明に係る通信システムにおいては、前記サーバ装置は、前記クライアント装置へデータを送信する際に、送信時刻を示す送信タイムスタンプを付加して送信し、前記クライアント装置は、前記サーバ装置へ前記リクエストIDを送信する際に、前記サーバ装置から受信した最新の前記送信タイムスタンプを前記リクエストIDに付加して送信し、前記サーバ装置は、前記クライアント装置から受信した前記リクエストIDに紐付いたデータ名リストに記されたデータ名に対応するデータのうち、前記リクエストIDに付加された前記送信タイムスタンプが示す時刻における状態と現在時刻における状態とで差異があるデータのみを前記クライアント装置へ送信するようにしてもよい。 In the communication system according to the present invention, when the server device transmits data to the client device, the server device adds a transmission time stamp indicating a transmission time, and the client device transmits the data to the server device. When transmitting the request ID, the latest transmission time stamp received from the server device is added to the request ID and transmitted, and the server device transmits data associated with the request ID received from the client device. Of the data corresponding to the data names listed in the name list, only data having a difference between the state at the time indicated by the transmission time stamp added to the request ID and the state at the current time is transmitted to the client device. You may do it.
また、本発明に係る通信システムにおいては、前記クライアント装置にはアクセス可能なデータとアクセス不可能なデータが設定されており、前記クライアント装置が前記サーバ装置へ送信した前記要求データ名リストに、前記クライアント装置がアクセス不可能なデータに対応するデータ名が含まれている場合には、前記サーバ装置は、前記要求データ名リストに記されたデータ名に対応するデータのうち、前記クライアント装置がアクセス可能なデータのみを前記クライアント装置へ送信するとともに、前記要求データ名リストに記されたデータ名のうち、前記クライアント装置がアクセス可能なデータに対応するデータ名のみに基づいて生成したリクエストIDを前記クライアント装置へ送信するようにしてもよい。 In the communication system according to the present invention, accessible data and inaccessible data are set in the client device, and the request data name list transmitted from the client device to the server device includes: When the data name corresponding to the data that cannot be accessed by the client device is included, the server device accesses the data corresponding to the data name described in the request data name list by the client device. And transmitting only requestable data to the client device, and out of the data names listed in the request data name list, the request ID generated based only on the data name corresponding to the data accessible by the client device is You may make it transmit to a client apparatus.
また、本発明に係る通信システムにおいては、前記サーバ装置が前記リクエストIDを生成する際に、前記要求データ名リストに記されたデータ名から計算されたハッシュ値を前記リクエストIDとするようにしてもよい。 In the communication system according to the present invention, when the server device generates the request ID, a hash value calculated from a data name written in the request data name list is used as the request ID. Also good.
本発明に係る通信システムによれば、クライアント装置が以前の要求と同じ組み合わせのデータをサーバ装置へ要求する際には、複数のデータ名が含まれる要求データ名リストではなく、リクエストIDをサーバ装置へ送信するため、要求データ名リストに多量のデータ名が含まれていたとしても、二度目以降の通信の際にはリクエストIDのみが送信されるため、クライアント装置が同一の要求を繰り返す際の通信量が低減される。 According to the communication system of the present invention, when the client device requests the server device for the same combination of data as the previous request, the request ID is not the request data name list including a plurality of data names but the server device. Even if a large amount of data names are included in the request data name list, only the request ID is transmitted in the second and subsequent communications, so the client device repeats the same request. The amount of communication is reduced.
また、リクエストIDに付加された送信タイムスタンプが示す時刻における状態と現在時刻における状態とで差異があるデータのみがサーバ装置からクライアント装置へ送信される場合は、以前にクライアント装置へ送信された時刻以降に変化のないデータは送信されないため、クライアント装置へ送信されるデータの通信量が低減される。 In addition, when only data having a difference between the state at the time indicated by the transmission time stamp added to the request ID and the state at the current time is transmitted from the server device to the client device, the time previously transmitted to the client device Since data that does not change thereafter is not transmitted, the communication amount of data transmitted to the client device is reduced.
また、クライアント装置がアクセス可能なデータに対応するデータ名のみに基づいてリクエストIDが生成されるようになっていると、複数のクライアント装置に別々のアクセス権(アクセス可能なデータとアクセス不可能なデータの割り当て)が設定されている場合に、異なるアクセス権を持つ2つ以上のクライアント装置が同一の要求データ名リストをそれぞれサーバ装置に送信したとしても、アクセス権に応じて別々のリクエストIDが生成されることになり、各クライアント装置のアクセス権が適切に管理される。また、クライアント装置がアクセス不可能なデータは送信されないため、通信量の低減も図られる。 In addition, if the request ID is generated based only on the data name corresponding to the data accessible to the client device, the access rights (accessible data and inaccessible) are separately assigned to the plurality of client devices. Even if two or more client devices having different access rights transmit the same request data name list to the server device respectively when the data allocation is set, different request IDs are assigned according to the access rights. The access right of each client apparatus is appropriately managed. Further, since data that cannot be accessed by the client device is not transmitted, the amount of communication can be reduced.
また、要求データ名リストに記されたデータ名から計算されたハッシュ値がリクエストIDとされる場合には、データ名の組み合わせに応じて一意なリクエストIDを容易に生成することができる。 Further, when a hash value calculated from a data name written in the request data name list is used as a request ID, a unique request ID can be easily generated according to a combination of data names.
図1に、本発明に係る通信システムの実施形態の一例を概略的に示す。図1に示すように、サーバ装置20とクライアント装置30はネットワーク10(インターネットや電話回線のような公共のネットワーク、あるいは専用の通信網)を介して接続されており、複数存在するクライアント装置30はそれぞれサーバ装置20と通信を行うことが可能である。
FIG. 1 schematically shows an example of an embodiment of a communication system according to the present invention. As shown in FIG. 1, the
サーバ装置20は複数のデータを管理するためのデータベース(メインDB22)を備えている。このメインDB22にはクライアント装置30が監視対象とするオブジェクトに関する複数のデータが記録されており、クライアント装置30はネットワーク10を介してサーバ装置20へ要求を送信することによってこのメインDB22に記録されたデータへアクセスする。なお、メインDB22に記録されるデータは、そのデータが記録された時刻に関するデータと組にして記録される。
The
なお、監視対象の具体例としては、山間部に設けられておりダムなどの複数の水源と水路でつながった貯水池40が挙げられる。すなわち、本実施形態の通信システムを用いることにより、システムのユーザは、山間部から離れた都市部に居ながらにして、山間部の貯水池に蓄積されている水の現在水位、水位の変化率(流量)、その貯水池が達するべき目標水位、水門の開閉状態、などの様々なデータを、都市部に設けられたクライアント装置30を利用して監視することが可能となる。また、目標水位や水門の開閉状態などの一部のデータについては、都市部から指令を送って変更することも可能となる。この例では貯水池に設置された各種センサ(水位を測定するセンサなど)およびマニュピレータ(水門を開閉する装置など)と接続されたサーバ装置20が貯水池の近隣に設けられ、このサーバ装置20は各種センサが測定する貯水池のデータを時系列に沿ってメインDB22へ記録したり、マニュピレータを制御(そしてその結果をメインDB22へ記録)したりして貯水池に関するデータを管理する。ここで例えば現在水位の測定データは時間経過と共に変動するが、測定が行われた時刻のデータと組にして記録されることにより、「この時刻においてはこの水位だった」という、時系列に沿った情報が記録される。そして、都市部に分散して存在する多数のクライアント装置30が、ユーザの操作に応じてネットワーク10を介してサーバ装置20と通信を行い、現在水位のデータを閲覧したり、目標水位のデータを変更したりする。
As a specific example of the monitoring target, there is a
こうした通信システムにおいてサーバ装置20によって管理されているデータへクライアント装置30が初めてアクセスする場合、クライアント装置30は、図2に示すように、必要とするデータに対応するデータ名を記した(列挙した)データ名リスト52(要求データ名リスト)を作成し、このデータ名リスト52をサーバ装置20に対するメッセージに含めて送信する(通信A1)。データ名リスト52に記されるデータ名は、貯水池の例でいえば「水位」、「流量」といった、データに設定された属性(アトリビュート)である。
When the
サーバ装置20は、データ名リスト52をクライアント装置30から受信した際に、そのデータ名リスト52に記されているデータ名に対応するデータ54をメインDB22から取得する(通信A2)とともに、データ名リスト52に記されているデータ名を基にリクエストID55を生成する。このとき、データ名リスト52に記されているデータ名の組み合わせに対して一意なリクエストID55が生成されるようにする。例えば2つのデータ名リスト52について、両方のデータ名リスト52に記されたデータ名の組み合わせが同一ならば、両方のデータ名リスト52に対して生成されるリクエストID55は同一となり、データ名の組み合わせが異なっていれば、2つの異なるリクエストID55が生成される。例えばデータ名の羅列を1つのデータとしてハッシュ関数に入力することによって得られるハッシュ値をリクエストID55とすることができる。
When the
サーバ装置20はメインDB22とは別にリクエストID用データベース(IDDB24)を備えている。サーバ装置20がリクエストID55を生成した際に、生成されたリクエストID55と、そのリクエストID55の基となったデータ名リスト52に記されたデータ名とが紐付けられたリクエストIDリスト56が、IDDB24に記録される(通信A3)。
The
データ54の取得とリクエストID55の生成が完了したら、サーバ装置20は取得したデータ54と、生成したリクエストID55とをクライアント装置30へ返信(送信)する。このとき、サーバ装置20からクライアント装置30への送信が行われる時刻を示す送信タイムスタンプt1が、データ54およびリクエストID55に付加されてクライアント装置30へ送信される(通信A4)。
When the acquisition of the
以上のようにして、クライアント装置30はサーバ装置20からデータ54を受信することができる。このときにリクエストID55も受信するので、以降の通信においてはデータ名リスト52の代わりにリクエストID55を用いることができる。図3に、リクエストID55を用いた通信の様子を示す。リクエストID55を得たクライアント装置30は、サーバ装置20にデータ54を要求する際に、リクエストID55を送信する(通信B1)。このとき、好ましくは前回の通信でサーバ装置20から受信した送信タイムスタンプt1もリクエストID55に付加されて送信される。
As described above, the
リクエストID55を受信したサーバ装置20は、そのリクエストID55をIDDB24に記録されているリクエストIDリスト56と照合して、リクエストID55と紐付いているデータ名の組み合わせを取得する(通信B2)。そして、サーバ装置20はそのデータ名に対応するデータ54をメインDB22から取得する(通信B3)。
The
データ54を取得したサーバ装置20は、そのデータ54に、今回の送信時刻を示す新規タイムスタンプt2を付加してクライアント装置30へ返信する(通信B4)。このとき、好ましくはクライアント装置30から受信した前回の送信タイムスタンプt1が示す時刻から変更のあったデータのみを送信する。図3の例では、目標水位のデータに変更がないため、通信B4においてクライアント装置30へ送信されるデータ54に目標水位が含まれていない。
The
以上のようにして、クライアント装置30はリクエストID55を用いてデータ54を取得することができる。図2においてデータ名リスト52を用いて通信を行った場合と比較すると、通信A1において送信されるデータ名リスト52には多数のデータ名が含まれるために通信A1の通信量が大きくなっているのに対し、図3の通信B1ではリクエストID55(および前回の送信タイムスタンプt1)のみが送信されるため、通信B1の通信量は通信A1に比べて大幅に低減される。すなわち、リクエストID55を用いた通信ではクライアント装置30がデータ名リスト52を送信する場合に比べて通信量が低減される。
As described above, the
図4のフローチャートに、サーバ装置20がクライアント装置30からメッセージを受信した場合の処理の手順を示す。ステップS01においてクライアント装置30からメッセージを受信したサーバ装置20は、まずそのメッセージにリクエストID55が含まれているかどうかを判定する(ステップS02)。メッセージにリクエストID55が含まれていない場合(ステップS02−NO)、クライアント装置30はメッセージを詳しく解析する(ステップS03)。
The flowchart of FIG. 4 shows a processing procedure when the
クライアント装置30から送信されるデータ名リスト52を含むメッセージには、実際には単にデータ名が列挙されているだけではなく、マークアップ言語の一種であるXMLなどを用いてデータの形式(数値なのか文字列なのかなど)といったメタデータも含めた記述がなされており、具体的にどのようなデータ名が記されているかについては、サーバ装置20においてメッセージおよびデータ名リスト52の解析を行う必要がある。ステップS03にてメッセージを解析したサーバ装置20は、データ名リスト52に記されている(クライアント装置30が要求している)データ名の組み合わせを抽出し、それらのデータ名からリクエストID55を生成する(ステップS04)。そして、データ名の組み合わせとリクエストID55とを紐付けたリクエストIDリスト56をIDDB24へ記録する(ステップS05)。
In the message including the
一方、ステップS02においてクライアント装置30からのメッセージにリクエストID55が含まれていた場合(ステップS02−YES)には、サーバ装置20はそのリクエストID55をIDDB24と照合し、リクエストID55に紐付いている(クライアント装置30が要求している)データ名の組み合わせを取得する(ステップS06)。
On the other hand, if the
ステップS05においてIDDB24への記録が完了した後、またはステップS06においてデータ名の組み合わせの取得が完了した後、サーバ装置20は、クライアント装置30が要求しているデータ名に対応するデータ54をメインDB22から取得する(ステップS07)。ここで、クライアント装置30から受信したメッセージに前回の送信タイムスタンプt1が含まれているかどうかが判定され(ステップS08)、送信タイムスタンプt1が含まれていた場合(ステップS08−YES)には、前回の送信タイムスタンプt1が示す時刻におけるデータ(前回データ)と現在時刻におけるデータ(現在データ)との比較が行われる(ステップS09)。メインDB22に記録されているデータは、そのデータが記録された時刻に関するデータと組にして記録されているため、サーバ装置20は、前回データと現在データとを比較することができる。比較の結果、メインDB22から取得したデータ54のうち、現在データが前回データから変化していない項目が含まれていた場合には、その変化していない項目をデータ54から削除する。
After the recording in the
ステップS08においてメッセージに送信タイムスタンプt1が含まれていないと判定された後(ステップS08−NO)、またはステップS09における比較が完了した後、サーバ装置20はクライアント装置30が要求しているデータ名に対応するデータ54をクライアント装置30へ返信する(ステップS10)。このとき、ステップS09において現在データが前回データから変化していない項目がデータ54から削除されていた場合には、クライアント装置30が送信したリクエストID55に付加されていた送信タイムスタンプt1が示す時刻における状態と現在時刻における状態とで差異があるデータのみがクライアント装置30へ送信されることになる。なお、ステップS10において送信されるデータ54には、今回の送信時刻を示すタイムスタンプが付加される。このタイムスタンプはクライアント装置30の側で送信タイムスタンプt1または新規タイムスタンプt2として扱われる。
After it is determined in step S08 that the message does not include the transmission time stamp t1 (step S08-NO) or after the comparison in step S09 is completed, the
以上のようにして、サーバ装置20はクライアント装置30から受信したメッセージを処理する。図4のフローチャートからわかるように、クライアント装置30がリクエストID55を送信しなかった場合(データ名リスト52を送信した場合)には、サーバ装置20はステップS03においてメッセージの解析を行う必要があるが、リクエストID55が送信された場合には、ステップS03を実行する必要がなくなる。すなわち、リクエストID55が通信に用いられることで、サーバ装置20はクライアント装置30との通信のたびに毎回データ名リスト52の解析を行う必要がなくなり、処理速度が向上する。
As described above, the
次に、クライアント装置30にアクセス権が設定されている場合の通信の様子を図5に示す。例として、メインDB22に記録されているデータは「公開データ」と「機密データ」の2種類に分かれており、クライアント装置30は公開データにはアクセス可能であるが、機密データにはアクセス不可能であるという設定がなされているものとする。
Next, FIG. 5 shows a state of communication when the access right is set in the
図2に示す場合と同様に、クライアント装置30は自身が必要とするデータに対応するデータ名を記したデータ名リスト52を作成し、このデータ名リスト52をサーバ装置20に対するメッセージに含めて送信する(通信Z1)。このとき、データ名リスト52には「機密データ」に属するデータに対応するデータ名が含まれているものとする(説明をわかりやすくするため、ここではデータ名自体が「機密データ」であるとする)。
As in the case shown in FIG. 2, the
クライアント装置30からメッセージを受信したサーバ装置20は、クライアント装置30からのメッセージを解析することにより、データ名リスト52に「機密データ」のデータ名が含まれていることを発見する。するとサーバ装置20は、データ名リスト52に記されているデータ名のうち「機密データ」以外のデータ名に対応するデータ、すなわちクライアント装置30がアクセス可能な「公開データ」に属するデータのみをメインDB22から取得する(通信Z2)。さらに、リクエストID55を生成するにあたっては、データ名リスト52に記されているデータ名のうち「機密データ」のデータ名を無視し、「公開データ」のデータ名のみに基づいてリクエストID55を生成する。
The
そして、サーバ装置20によって生成されたリクエストID55と、そのリクエストID55の基となったデータ名の組み合わせ(「公開データ」のデータ名のみが含まれ、「機密データ」のデータ名を含まない組み合わせ)とが紐付けられたリクエストIDリスト56が、IDDB24に記録される(通信Z3)。
A combination of the
データ54の取得とリクエストID55の生成が完了したら、サーバ装置20は取得したデータ54と、生成したリクエストID55とをクライアント装置30へ返信(送信)する。このときは図2における通信A4と同様に、サーバ装置20からクライアント装置30への送信が行われる時刻を示す送信タイムスタンプt1が、データ54およびリクエストID55に付加されてクライアント装置30へ送信される(通信Z4)。
When the acquisition of the
以上の通信Z1〜通信Z4によれば、クライアント装置30が「機密データ」に属するデータをサーバ装置20に要求しても、クライアント装置30が最終的に受信するデータ54には「機密データ」に属するデータが含まれないことになり、クライアント装置30のアクセス権が適切に管理される。また、リクエストID55は「機密データ」のデータ名を含まないデータ名の組み合わせと紐付けられるため、クライアント装置30がリクエストID55をサーバ装置20へ送信した場合には、サーバ装置20は改めてクライアント装置30のアクセス権の判定を行う必要がなくなり、処理が高速化される。
According to the above communication Z1 to communication Z4, even if the
なおここでは1つのクライアント装置30のみについて考えたが、複数のクライアント装置30にそれぞれ別々のアクセス権が設定されている(どのデータが「機密データ」に相当するのかがクライアント装置30によって異なる)場合には、サーバ装置20は、リクエストID55の生成の際に、データ名リスト52を送信したクライアント装置30がどれなのかを考慮して、各クライアント装置30にとっての「公開データ」のみに関するリクエストID55およびデータ54を返信するようにすれば、各クライアント装置30のアクセス権が適切に管理される。またリクエストID55を用いた通信を行うことにより、複数のクライアント装置30それぞれに対してアクセス権の判定を行うのが1回ずつで済み、処理が高速化される。
Although only one
以上に説明した実施形態における通信システムによれば、ネットワーク10上での通信量が低減され、またサーバ装置20が行う処理の負担も低減されるため、全体として通信が高速化する。
According to the communication system in the embodiment described above, the communication amount on the
なお上記の実施形態においてはリクエストID55を生成する方法としてハッシュ値を用いることを例示したが、リクエストID55の生成方法はこれに限るものではなく、例えば受信したデータ名リスト52に対して、受信順に連番となるシリアル番号を割り当ててもよい。またハッシュ値を用いる場合、異なるデータ名の組み合わせに対して同一のハッシュ値が得られる(衝突する)ことがあるので、サーバ装置20がリクエストID55を生成する際に、こうしたハッシュ値の衝突が起こった場合の対策がなされるとよい。例えばサーバ装置20はハッシュ値を生成した際にリクエストIDリスト56を確認し、生成したハッシュ値が既に他のデータ名の組み合わせに対して紐付けられている場合には、生成したハッシュ値に所定の数値を加算するなどして、既存のリクエストID55と異なる値のリクエストID55を生成するようにすればよい。
In the above embodiment, the hash value is used as a method for generating the
また、クライアント装置30から送信されるデータ名リスト52が頻繁に更新される場合には、リクエストID55が大量に生成されることとなり、リクエストIDリスト56が肥大化してしまうので、一定の期間以上使用されなかったリクエストID55は破棄される(IDDB24から削除される)ようにするとよい。
Further, when the
10 ネットワーク
20 サーバ装置
30 クライアント装置
52 データ名リスト
55 リクエストID
10
Claims (4)
前記クライアント装置は、前記複数のデータのうち必要とするデータに対応するデータ名を記した要求データ名リストを前記サーバ装置へ送信し、
前記サーバ装置は、受信した前記要求データ名リストに記されているデータ名に対応するデータを、前記要求データ名リストを送信したクライアント装置へ送信する通信システムにおいて、
前記サーバは、前記クライアント装置から前記要求データ名リストを受信した際に、前記要求データ名リストに記されたデータ名の組み合わせに応じて一意なリクエストIDを生成して前記リクエストIDを前記クライアント装置へ送信するとともに、前記要求データ名リストに記されたデータ名と前記リクエストIDとを紐付けたリクエストIDリストを記録し、
前記クライアント装置が前記リクエストIDを受信した後、前記クライアント装置が前回送信したものと同一の前記要求データ名リストを前記サーバ装置へ再度送信しようとする際には、前記クライアント装置は前記要求データ名リストの代わりに前記リクエストIDを前記サーバ装置へ送信し、
前記リクエストIDを受信したサーバ装置は、前記リクエストIDに紐付いたデータ名に対応するデータを、前記リクエストIDを送信した前記クライアント装置へ送信すること
を特徴とする通信システム。 At least one server device that manages a plurality of data; and at least one client device that accesses the plurality of data by communicating with the server device via a network;
The client device transmits a request data name list in which data names corresponding to necessary data among the plurality of data are written to the server device,
In the communication system for transmitting the data corresponding to the data name described in the received request data name list to the client device that has transmitted the request data name list, the server device,
When the server receives the request data name list from the client device, the server generates a unique request ID according to a combination of data names described in the request data name list, and assigns the request ID to the client device. A request ID list in which the data name written in the request data name list and the request ID are associated with each other,
After the client device receives the request ID, when the client device tries to retransmit the request data name list that is the same as that previously transmitted by the client device to the server device, the client device Send the request ID to the server device instead of a list,
The server apparatus that has received the request ID transmits data corresponding to a data name associated with the request ID to the client apparatus that has transmitted the request ID.
前記クライアント装置は、前記サーバ装置へ前記リクエストIDを送信する際に、前記サーバ装置から受信した最新の前記送信タイムスタンプを前記リクエストIDに付加して送信し、
前記サーバ装置は、前記クライアント装置から受信した前記リクエストIDに紐付いたデータ名に対応するデータのうち、前記リクエストIDに付加された前記送信タイムスタンプが示す時刻における状態と現在時刻における状態とで差異があるデータのみを前記クライアント装置へ送信すること
を特徴とする請求項1に記載の通信システム。 When transmitting data to the client device, the server device adds a transmission time stamp indicating a transmission time and transmits the data,
When the client device transmits the request ID to the server device, the latest transmission time stamp received from the server device is added to the request ID and transmitted,
The server device has a difference between the state at the time indicated by the transmission time stamp added to the request ID and the state at the current time among the data corresponding to the data name associated with the request ID received from the client device. The communication system according to claim 1, wherein only certain data is transmitted to the client device.
前記クライアント装置が前記サーバ装置へ送信した前記要求データ名リストに、前記クライアント装置がアクセス不可能なデータに対応するデータ名が含まれている場合には、前記サーバ装置は、前記要求データ名リストに記されたデータ名に対応するデータのうち、前記クライアント装置がアクセス可能なデータのみを前記クライアント装置へ送信するとともに、前記要求データ名リストに記されたデータ名のうち、前記クライアント装置がアクセス可能なデータに対応するデータ名のみに基づいて生成したリクエストIDを前記クライアント装置へ送信すること
を特徴とする請求項1または請求項2に記載の通信システム。 The client device is set with accessible data and inaccessible data,
When the request data name list transmitted from the client device to the server device includes a data name corresponding to data that cannot be accessed by the client device, the server device transmits the request data name list. Among the data corresponding to the data names described in the above, only the data accessible by the client device is transmitted to the client device, and the client device accesses the data names listed in the request data name list. The communication system according to claim 1, wherein a request ID generated based only on a data name corresponding to possible data is transmitted to the client device.
を特徴とする請求項1ないし請求項3のいずれか1項に記載の通信システム。
4. The server device according to claim 1, wherein when the server device generates the request ID, a hash value calculated from a data name described in the request data name list is used as the request ID. The communication system according to claim 1.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2017031633A JP6469148B2 (en) | 2017-02-23 | 2017-02-23 | Communications system |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2017031633A JP6469148B2 (en) | 2017-02-23 | 2017-02-23 | Communications system |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2018136804A JP2018136804A (en) | 2018-08-30 |
| JP6469148B2 true JP6469148B2 (en) | 2019-02-13 |
Family
ID=63366863
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2017031633A Active JP6469148B2 (en) | 2017-02-23 | 2017-02-23 | Communications system |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP6469148B2 (en) |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2002189646A (en) * | 2000-12-22 | 2002-07-05 | Matsushita Electric Ind Co Ltd | Relay device |
| JP4808173B2 (en) * | 2007-03-23 | 2011-11-02 | 株式会社日立製作所 | Distributed system, data management server, and data distribution method |
| JP2011204090A (en) * | 2010-03-26 | 2011-10-13 | Brother Industries Ltd | Delivery system, apparatus and program for processing information and marker information management method |
| US9232022B2 (en) * | 2013-06-27 | 2016-01-05 | Aol Inc. | Systems and methods for reduced bandwidth data transmission between network connected devices |
-
2017
- 2017-02-23 JP JP2017031633A patent/JP6469148B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2018136804A (en) | 2018-08-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN111475728B (en) | Cloud resource information searching method, device, equipment and storage medium | |
| US20240086399A1 (en) | Web services for creation and maintenance of smart entities for connected devices | |
| US20190089597A1 (en) | Device Manager | |
| JP2023504549A5 (en) | ||
| CN116339277A (en) | Over-the-air (OTA) mobile service platform | |
| US10911308B2 (en) | Auto-determining and installing missing components to a to-be-managed device by a single execution of unique device setup command | |
| CN111260396B (en) | An advertisement preloading method, device, electronic equipment and storage medium | |
| JP2017111501A (en) | Data flow control device and data flow control method | |
| CN101681340A (en) | Non-intrusive method and system for collecting information transmitted over a network | |
| EP3647982B1 (en) | Cyber attack evaluation method and cyber attack evaluation device | |
| CN111371889B (en) | Message processing method and device, internet of things system and storage medium | |
| CN117527568A (en) | Data access method and system of data integration platform | |
| CN110622477A (en) | Rule-based information exchange in the internet of things | |
| CN113206886A (en) | Method, device, equipment and medium for accessing equipment to Internet of things platform | |
| CN119025566A (en) | Cache data management method and system based on distributed encrypted storage | |
| CN111966967A (en) | Copyright storage method and system based on block chain technology and CDN | |
| JP6469148B2 (en) | Communications system | |
| KR101082586B1 (en) | Method, Apparatus, and Storage Medium for Collecting Equipment Data | |
| CN112738212B (en) | Method and system for operation and maintenance of motor vehicle electronic identification read-write equipment | |
| JP2003233417A (en) | Data communication device and method, data communication program and recording medium recording the program | |
| JP7100607B2 (en) | Anomaly detection system and anomaly detection method | |
| JP2003525497A (en) | System modeling method and system modeling device | |
| KR101702583B1 (en) | A system for monitoring a network performance using xmpp and method thereof | |
| CN116405399A (en) | Method, device, electronic device, and storage medium for generating a topological relationship diagram | |
| JP7122159B2 (en) | Data processing system, data processing method and program |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20181130 |
|
| 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: 20181218 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190115 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6469148 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 |