説明

中継装置、中継システム、及び中継プログラム

【課題】必要のない処理(無駄な処理)だけを破棄して輻輳発生を低減する。
【解決手段】本実施形態によれば、中継装置は、第1ネットワークを介して第1ノードからリクエストを受け付ける受付部と、第2ネットワークを介して第2ノードから前記リクエストに基づくデータを取得するのに要する第1時間と、前記第1ノードが前記リクエストに対する応答を待ち受ける第2時間とを比較し、前記第1時間が前記第2時間より長い場合に、前記リクエストを破棄すると判定部と、を備える。また、中継装置は、前記判定部が前記リクエストを実行すると判定した場合に、前記第2ノードから前記リクエストに基づくデータを取得する取得部と、取得したデータを前記第1ノードへ送信する応答部と、を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、中継装置、中継システム、及び中継プログラムに関する。
【背景技術】
【0002】
特性の異なる複数の通信媒体同士を接続し、各々の通信媒体を経由して通信可能な通信装置(ノード)同士の通信を媒介する中継装置(例:ルータ、ゲートウェイ)は、情報通信システムにおいて広く用いられている。特に、中継装置の技術的及び経済的な質の向上により、LAN(Local Area Network)のみならず、WAN(Wide Area Network)においても広帯域かつ低コストの通信網が構築され、産業及び文化の発展に寄与している。
【0003】
一方、建築物内に設置された電気設備の状態監視や制御を実施するための制御システム(BAS:Building Automation System)に使われる通信網は、建築物が建築された際に構築されたものを長年使用している場合が多い。これは、元来広帯域な通信を必要としないことや、通信媒体や通信機器が壁面内に埋め込まれてしまっているなど、通信網の更新に高いコストが必要となることが多いためである。
【0004】
近年、省資源、コスト削減、地球温暖化防止のために、建築物内で消費するエネルギーを削減することが求められている。このため、電気設備のエネルギー消費量などのデータを、LANを経由して入居者に対して可視化(見える化)し、入居者の省エネ活動を促進する取り組みもなされている。電気設備のデータを、入居者が利用する通信網(LAN)に伝送するためには、建築物内の制御システムの通信網と、建築物内のLANなどの通信網とを、中継装置を介して接続する必要がある。
【0005】
しかし、建築物内の制御システムの通信網は狭帯域であるのに対し、建築物内のLANなどの通信網は広帯域であることが多い。そのため、中継装置が接続する通信媒体の特性に大きな差があることが多く、従来の中継装置では性能上の問題が発生する可能性があった。
【0006】
例えば、広帯域な第1ネットワークに接続されたアクセスノード(LANに接続されたパーソナルコンピュータなどの情報処理装置)が、中継装置を介して、狭帯域な第2ネットワークに接続されたデータ出力ノード(例えば電気設備に具備されるセンサノード)のデータを取得する場合について考えてみる。
【0007】
アクセスノードが具備する通信入力装置や、アクセスノード内で動作する通信ソフトウェアは、広帯域なネットワークを介して通信を行うことに最適化されていることが多いため、広帯域ネットワークに典型的な通信遅延を想定して設計されていることが多い。一方、第2ネットワークに接続されるデータ出力ノードの応答速度は、第2ネットワークの狭い帯域や、第2ネットワークに典型的な通信遅延を想定して設計されていることが多い。
【0008】
このため、第1ネットワークに接続されているアクセスノードが、第2ネットワークに接続されたデータ出力ノードに対して、高頻度でデータ取得の要求を送信すると、データ出力ノードはこのような高頻度のデータ取得要求に応答できず、輻輳が発生し易くなるという問題があった。
【0009】
また、第2ネットワーク上で輻輳が発生すると、中継装置内において、第2ネットワークに伝送するデータの待ち行列が長くなり、輻輳が発生する可能性が高くなるという問題があった。
【0010】
このように、中継装置が広帯域なネットワークと狭帯域なネットワークの間で中継処理を行う場合、中継装置内および狭帯域なネットワーク上において、輻輳が発生し易くなるという問題があった。
【0011】
従来の中継装置では、輻輳状態を低減するために、輻輳発生前に、確率的にパケットを破棄する、RED(Random Early Detection)と呼ばれる手法が用いられていた。しかし、この手法は、パケットを確率的に破棄するため、破棄してよい処理を破棄できなかったり、破棄すべきでない処理を破棄してしまったりするという課題があった。
【0012】
また、バッファ溢れによるデータ破棄の発生率が増加したら、バッファ容量を増加させて、データ破棄を低減する手法が知られている。しかし、バースト発生時にバッファを増加させるため、処理の破棄は減るが、処理待ち時間が増大し、輻輳状態の発生を防止できないという課題があった。特に、建築物内の設備機器は応答が遅いので、その分滞留するリクエストが増大し、バッファが肥大化する可能性があった。
【0013】
このように、確率的にパケットを破棄して輻輳発生を低減する手法や、バッファ容量を増加させて破棄を低減する手法では、必要のない処理、すなわち無駄な処理、だけを破棄することはできなかった。
【先行技術文献】
【特許文献】
【0014】
【特許文献1】特許第3623712号公報
【非特許文献】
【0015】
【非特許文献1】Floyd, S., and Jacobson, V., “Random Early Detection gateways for Congestion Avoidance”, V.1 N.4, August 1993, pp.397−413
【発明の概要】
【発明が解決しようとする課題】
【0016】
本発明は、必要のない処理(無駄な処理)だけを破棄して輻輳発生を低減する中継装置、中継システム及び中継プログラムを提供することを目的とする。
【課題を解決するための手段】
【0017】
本実施形態によれば、中継装置は、第1ネットワークを介して第1ノードからリクエストを受け付け、前記リクエストを解析する受付部と、第2ネットワークを介して、第2ノードから前記リクエストに基づくデータを取得するのに要する第1時間を記憶する第1記憶部と、前記第1ノードが前記リクエストに対する応答を待ち受ける第2時間を記憶する第2記憶部と、前記第1時間と前記第2時間とを比較し、前記第1時間が前記第2時間より長い場合に、前記リクエストを破棄すると判定し、前記第1時間が前記第2時間以下の場合に、前記リクエストを実行すると判定する判定部と、を備える。また、中継装置は、前記判定部が前記リクエストを実行すると判定した場合に、前記第2ネットワークを介して、前記第2ノードへデータ取得メッセージを送信し、前記第2ノードから前記リクエストに基づくデータを含む応答メッセージを受信する取得部と、前記第1ネットワークを介して前記データを前記第1ノードへ送信する応答部と、を備える。
【図面の簡単な説明】
【0018】
【図1】本発明の実施形態に係る中継システムの概略構成図である。
【図2】同実施形態に係る中継システムの動作の一例を示すシーケンス図である。
【図3】同実施形態に係る中継装置の概略構成図である。
【図4】同実施形態に係るリクエスト受付処理を説明するフローチャートである。
【図5】同実施形態に係るリクエスト破棄判定処理を説明するフローチャートである。
【図6】同実施形態に係るデータ取得処理及びデータ取得時間算出処理を説明するフローチャートである。
【図7】同実施形態に係るリクエスト応答処理及びタイムアウト時間算出処理を説明するフローチャートである。
【発明を実施するための形態】
【0019】
以下、本発明の実施の形態を図面に基づいて説明する。
【0020】
図1に本発明の実施形態に係る中継システムの概略構成を示す。中継システムは、特性の異なる複数のネットワークに接続される中継装置100と、第1ネットワーク10を介して中継装置100と通信可能な複数のアクセスノード11、12と、第2ネットワーク20を介して中継装置100と通信可能な複数のデータ出力ノード21、22とを備える。第1ネットワーク10と第2ネットワーク20は例えば帯域が異なり、第1ネットワーク10が広帯域、第2ネットワーク20が狭帯域である。
【0021】
アクセスノード11、12は、中継装置100と通信することにより、データ出力ノード21、22との間でデータの受け渡しを行う。また、データ出力ノード21、22は、中継装置100と通信することにより、アクセスノード11、12との間でデータの受け渡しを行う。
【0022】
例えば、アクセスノード11、12はPC、第1ネットワーク10はLAN、データ出力ノード21、22は建築物内の設備機器のデータ(空調の設定温度や照明のオン/オフ等のデータ)を観測するセンサノード、第2ネットワーク20は建築物内の制御システムの通信網である。
【0023】
図1では、中継システムが2個のアクセスノード11、12を有する例を示したが、1個でも良いし、3個以上でもよい。同様に、中継システムが有するデータ出力ノードは1個でも良いし、3個以上でもよい。
【0024】
図2に、本実施形態に係る中継システムの動作の一例として、アクセスノード11が、データ出力ノード21の観測データを、中継装置100を経由して取得する場合の動作を示す。
【0025】
まず、アクセスノード11が、中継装置100に対して、データ出力ノード21の観測データを取得するためのリクエストメッセージ201を送信する。リクエストメッセージ201には、データ出力ノード21が観測しているデータを示す識別子が含まれる。
【0026】
中継装置100は、リクエストメッセージ201を解析し、データ出力ノード21に対して、対応するデータを取得するためのデータ取得メッセージ202を送信する。
【0027】
データ出力ノード21は、中継装置100からのデータ取得メッセージ202を解析し、対応するデータを含む応答メッセージ203を中継装置100に送信する。
【0028】
中継装置100は、データ出力ノード21からの応答メッセージ203を解析し、対応するデータを含むリクエスト応答メッセージ204をアクセスノード11に送信する。
【0029】
このような一連の動作により、アクセスノード11は、データ出力ノード21による観測データを取得することができる。
【0030】
なお、中継装置100は、アクセスノード11からリクエストメッセージ201を受け取ってから、アクセスノード11へリクエスト応答メッセージ204を送信するまでに要した時間T1を測定する。また、中継装置100は、データ出力ノード21に対してデータ取得メッセージ202を送信してから、データ出力ノード21からメッセージ203を受信するまでのデータ取得処理に要した時間T2を測定する。以下の説明ではこの時間T2をデータ取得時間と呼ぶ。
【0031】
図3に、中継装置100の概略構成を示す。中継装置100は、リクエスト受付部111、リクエスト破棄判定部112、データ取得部113、データ取得時間算出部114、リクエスト応答部115、タイムアウト時間算出部116、リクエストキュー121、リクエスト応答キュー122、データ取得時間記憶部123、及びタイムアウト時間記憶部124を備える。
【0032】
リクエスト受付部111は、第1ネットワーク10を介してアクセスノード11、12からリクエスト(リクエストメッセージ201)を受け付ける。
【0033】
リクエスト破棄判定部112は、リクエスト受付部111が受け付けたリクエストを破棄するか否か判定する。判定処理については後述する。
【0034】
リクエストキュー121は、リクエスト受付部111が受け付けたリクエストのうち、リクエスト破棄判定部112が破棄しないと判定したリクエストのデータ取得処理内容が登録される。
【0035】
データ取得部113は、リクエストキュー121に登録されているデータ取得処理内容に基づいて、第2ネットワーク20を介してデータ出力ノード21、22へデータ取得メッセージを出力する。また、データ取得部113は、データ出力ノード21、22から応答メッセージを受信し、応答メッセージに含まれるデータをリクエスト応答キュー122に登録する。
【0036】
データ取得時間算出部114は、データ取得部113がデータ出力ノード21、22へデータ取得メッセージを出力してから応答メッセージを受信するまでのデータ取得時間を算出し、データ取得時間記憶部123に格納する。
【0037】
データ取得時間記憶部123は、データ取得先や取得データ毎に、データ取得時間を記憶する。
【0038】
リクエスト応答部115は、リクエスト応答キュー122に登録されているデータを含むリクエスト応答メッセージを、第1ネットワーク10を介してアクセスノード11、12へ出力する。また、リクエスト応答部115は、出力したリクエスト応答メッセージをアクセスノード11、12が受信したか否かを検出する。アクセスノード11、12は、中継装置100へリクエストを出力してから所定時間の間、中継装置100からのリクエスト応答メッセージを待ち受けており、この所定時間を超えると、リクエスト応答メッセージを受信しない。この所定時間をタイムアウト時間と呼ぶ。
【0039】
タイムアウト時間記憶部124は、アクセスノード11、12のタイムアウト時間(タイムアウト時間と推定される時間)を記憶する。
【0040】
タイムアウト時間算出部116は、リクエスト受付部111がリクエストを受け付けてから、リクエスト応答部115がリクエスト応答メッセージを出力するまでに要した時間を計算する。そして、タイムアウト時間算出部116は、算出した時間、及びアクセスノード11、12がリクエスト応答メッセージを受信したか否かに基づいて、タイムアウト時間記憶部124に記憶されているタイムアウト時間を更新する。
【0041】
次に、中継装置100の各部の処理の詳細について、フローチャートを用いて説明する。
【0042】
まず、図4に示すフローチャートを用いて、リクエスト受付部111における処理を説明する。
【0043】
(ステップS401)リクエスト受付部111が、アクセスノード11(又は12)からのリクエストを受信する。なお、このとき、タイムアウト時間算出部116が、リクエスト受け付けからリクエスト応答までに要する時間の計測を開始する。
【0044】
(ステップS402)リクエスト受付部111が、リクエストの解析を行う。
【0045】
(ステップS403)リクエスト受付部111が、当該リクエストを破棄すべきか否かの判定を、リクエスト破棄判定部112に依頼する。
【0046】
(ステップS404)リクエスト廃棄判定部112がリクエストを破棄しないと判定した場合はステップS405へ進み、破棄すると判定した場合はステップS406へ進む。
【0047】
(ステップS405)リクエスト受付部111が、当該リクエストのデータ取得処理内容をリクエストキュー121に登録する。リクエストキュー121に登録する際の、情報の種類または形式は任意である。例えば、当該リクエストに含まれるデータ取得処理内容の全てを登録してもよいし、リクエストに含まれるデータ取得先(ノード、ポイント、識別子)と取得すべきデータ(種類、識別子、データ依存の属性)と関連づけた形式で保存してもよく、リクエストを受信した順序や時刻、登録した順序や時刻と共に登録してもよい。また、データ取得先の識別子やデータ依存の属性が同じリクエストが重複する場合は、適宜集約して登録してもよい。
【0048】
(ステップS406)リクエスト受付部111が、当該リクエストを破棄する。
【0049】
次に、図5に示すフローチャートを用いて、リクエスト破棄判定部112における処理を説明する。
【0050】
(ステップS501)リクエスト破棄判定部112が、リクエスト受付部111により受け付けられたリクエストのデータ取得処理内容に基づいて、このデータ取得処理に要する時間T3を、データ取得時間記憶部123から取得する。データ取得処理内容には、データ取得先や取得すべきデータが含まれており、リクエスト破棄判定部112はこれらの情報に基づいて、データ取得時間記憶部123からデータ取得処理に要する時間T3を取得する。
【0051】
(ステップS502)リクエスト破棄判定部112が、当該リクエストを出力したアクセスノード11(又は12)のタイムアウト時間T4を、タイムアウト時間記憶部124から取得する。なお、ステップS501、ステップS502の処理順序は任意である。
【0052】
(ステップS503)リクエスト破棄判定部112が、ステップS501で取得した時間T3とステップS502で取得した時間T4とを比較する。時間T3が時間T4より大きい場合はステップS504へ進み、時間T3が時間T4以下の場合はステップS505へ進む。
【0053】
(ステップS504)リクエスト破棄判定部112が、リクエストを破棄すると判定する。これは、データ取得時間がタイムアウト時間より長いため、データ取得処理を実行しデータ出力ノード21、22からデータを取得しても、アクセスノード11、12がリクエスト応答メッセージを受信せず、データ取得処理が無駄になるためである。
【0054】
(ステップS505)リクエスト破棄判定部112が、リクエストを破棄しない(実行する)と判定する。これは、データ取得時間がタイムアウト時間以下であり、データ取得処理を実行してアクセスノード11、12へ出力したリクエスト応答メッセージが、アクセスノード11、12によって受信され、データ取得処理が無駄にならないためである。
【0055】
次に、図6に示すフローチャートを用いて、データ取得部113及びデータ取得時間算出部114における処理を説明する。
【0056】
(ステップS601)データ取得部113が、リクエストキュー121からリクエストに係るデータ取得処理内容を取得する。
【0057】
(ステップS602)データ取得部113が、データ出力ノード21(又は22)に対して送信するデータ取得メッセージを作成する。
【0058】
(ステップS603)データ取得部113が、データ取得メッセージを送信する。なお、この時、データ取得時間算出部114が、データ取得時間の計測を開始する。
【0059】
(ステップS604)データ取得部113が、データ出力ノード21(又は22)から応答メッセージを受信する。この時、データ取得時間算出部114は、データ取得時間の計測を停止する。
【0060】
(ステップS605)データ取得部313が、取得したデータを、リクエスト応答キュー122に登録する。リクエストキュー応答122に登録する際の、情報の種類または形式は任意である。例えば、当該取得したデータに含まれるデータのみを登録してもよいし、当該取得したデータに、データ取得先(ノード、ポイント、識別子)と取得したデータに関する情報(種類、識別子、データ依存の属性)と関連づけた形式で保存してもよく、データを受信した順序や時刻、登録した順序や時刻と共に登録してもよい。また、データ取得先の識別子やデータ依存の属性が同じデータが重複する場合は、適宜集約して登録してもよい。
【0061】
(ステップS606)データ取得時間算出部114が、計測したデータ取得時間(図2の時間T2に相当)を、データ取得時間記憶部123に保存する。このとき、取得したデータに関する情報(ノード、ポイント、識別子、種類、識別子、データ依存の属性)と関連づけた形式で保存してもよい。また、データ取得時間は、計測の度に保存してもよいし、過去に計測したデータ取得時間と異なる場合にのみ保存してもよい。また、過去に計測したデータ取得時間の履歴から、平均値や分散値、移動平均値などの統計処理を施した値を保存してもよい。
【0062】
なお、ここでは、データ取得時間算出部114がデータ取得時間を計測する例を示したが、データ取得部113が計測してもよい。また、データ取得にかかる時間が既知である場合には、予めこの時間を装置内もしくは装置外の記憶領域に保存しておいてもよい。
【0063】
次に、図7に示すフローチャートを用いて、リクエスト応答部115及びタイムアウト時間算出部116における処理を説明する。
【0064】
(ステップS701)リクエスト応答部115が、リクエスト応答キュー122に登録されているデータを取得する。
【0065】
(ステップS702)リクエスト応答部115が、アクセスノード11(又は12)に対して、取得したデータを含むリクエスト応答メッセージを送信する。このとき、タイムアウト時間算出部116は、(図4のステップS401で開始していた)リクエスト受け付けからリクエスト応答までに要する時間の計測を停止する。
【0066】
(ステップS703)アクセスノード11(又は12)がリクエスト応答メッセージを受信した場合はステップS704へ進み、受信しなかった場合はステップS705へ進む。
【0067】
アクセスノード11(又は12)がリクエスト応答メッセージを受信したか否かの確認方法については種々の方法があり、例えば、アクセスノードへリクエスト応答メッセージを送信した際の異常の有無や、リクエスト応答メッセージを送信した後にアクセスノードからリクエスト応答メッセージを受信した旨の確認応答メッセージを返送されたか否かで確認できる。さらに、アクセスノードからのリクエストメッセージが繰り返し再送されるような場合には、その再送が継続しているか否かによって、アクセスノードがリクエスト応答メッセージを受信できる状態にあるか否かを推定してもよい。
【0068】
(ステップS704)タイムアウト時間算出部116が、ステップS401からステップS702にかけて計測した時間T5(図2の時間T1に相当)と、タイムアウト時間記憶部124に保存されているタイムアウト時間T4とを比較する。計測時間T5がタイムアウト時間T4より長い場合はステップS706へ進む。
【0069】
(ステップS705)タイムアウト時間算出部116が、ステップS401からステップS702にかけて計測した時間T5と、タイムアウト時間記憶部124に保存されているタイムアウト時間T4とを比較する。計測時間T5がタイムアウト時間T4より短い場合はステップS706へ進む。
【0070】
(ステップS706)タイムアウト時間算出部116が、計測時間T5をタイムアウト時間記憶部124に保存し、アクセスノード11(又は12)のタイムアウト時間を更新する。
【0071】
アクセスノード11(又は12)がリクエスト応答メッセージを受信し(ステップS703−Yes)、かつ計測時間T5がタイムアウト時間T4より長い(ステップS704−Yes)場合、中継装置100で把握しているアクセスノード11(又は12)のタイムアウト時間より、アクセスノード11(又は12)の実際のタイムアウト時間が長いことになる。従って、タイムアウト時間記憶部124に記憶されているタイムアウト時間を更新する(計測時間T5に置き換える)ことで、アクセスノード11(又は12)に対して、より多くのリクエスト応答を送信することができる。
【0072】
アクセスノード11(又は12)がリクエスト応答メッセージを受信せず(ステップS703−No)、かつ計測時間T5がタイムアウト時間T4より短い(ステップS705−Yes)場合、中継装置100で把握しているアクセスノード11(又は12)のタイムアウト時間より、アクセスノード11(又は12)の実際のタイムアウト時間が短いことになる。従って、タイムアウト時間記憶部124に記憶されているタイムアウト時間を更新する(計測時間T5に置き換える)ことで、リクエスト破棄判定部112により破棄すると判定されるリクエストが増え、不要な(無駄になる)データ取得処理の実行を防止することができる。
【0073】
タイムアウト時間記憶部124に計測時間T5を保存する際、アクセスノードからのリクエスト又はアクセスノードへのリクエスト応答に関する情報(アクセスノードの識別子、リクエストに含まれるデータの種類、前記データ依存の属性)と関連づけた形式で保存してもよい。また、時間T5を計測する度に保存してもよいし、過去に計測した時間T5の値と変化があった際にのみ保存してもよいし、過去に計測した時間T5の履歴から、平均値や分散値、移動平均値などの統計処理を施した値を保存してもよい。
【0074】
なお、アクセスノード11、12のタイムアウト時間は、リクエスト受付部111やリクエスト応答部115が計測してもよい。また、例えばアクセスノード11、12のタイムアウト時間が既知である場合には、予め前記時間を装置内もしくは装置外の記憶領域に保存しておいてもよい。さらに、アクセスノード11、12から中継装置100に対して、アクセスノード11、12のタイムアウト時間を明示的に伝達する手段を、アクセスノード11、12と中継装置100に具備させ、中継装置100はこの手段を用いてアクセスノード11、12のタイムアウト時間を取得し、タイムアウト時間記憶部124に保存してもよい。
【0075】
このように、本実施形態に係る中継装置100によれば、データ取得処理に要する時間がアクセスノードのタイムアウト時間より長く、実行する必要のない(データ取得処理が無駄になる)リクエストだけを破棄し、輻輳発生を低減することができる。
【0076】
なお、上記実施形態において、リクエスト応答部115は、リクエスト破棄判定部112がリクエスト(データ取得処理)を破棄すると判定した場合に、その判定内容や判定理由をアクセスノード11、12へ通知してもよい。
【0077】
これにより、アクセスノード11、12は、中継装置100に送信したリクエストが中継装置100で破棄されたことを知ることができるため、リクエストを再送信したり、データを取得できなかったことについてアクセスノード11、12上で動作するソフトウェアに例外処理を実行させたりすることができる。また、アクセスノード11、12が具備する表示装置にデータを取得できなかった旨を表示することで、アクセスノード11、12の使用者に対して情報提供できる。
【0078】
また、データ取得部113がデータ出力ノード21、22の異常を検知した場合に、リクエスト応答部115が、その検知情報をアクセスノード11、12へ通知してもよい。データ出力ノード21、22の異常とは、例えば、電源がオフした状態である。さらに、リクエスト応答部115は、データ出力ノード21、22が正常に戻ったことを検知した場合に、その検知情報をアクセスノード11、12へ通知してもよい。データ出力ノード21、22が正常に戻るとは、例えば、電源がオンしたことである。
【0079】
これにより、アクセスノード11、12は、データ出力ノード21、22の状態を把握し、適当な処理を実行することができる。
【0080】
上述した実施形態で説明した中継装置の少なくとも一部は、ハードウェアで構成してもよいし、ソフトウェアで構成してもよい。ソフトウェアで構成する場合には、中継装置の少なくとも一部の機能を実現するプログラムをフレキシブルディスクやCD−ROM等の記録媒体に収納し、コンピュータに読み込ませて実行させてもよい。記録媒体は、磁気ディスクや光ディスク等の着脱可能なものに限定されず、ハードディスク装置やメモリなどの固定型の記録媒体でもよい。
【0081】
また、中継装置の少なくとも一部の機能を実現するプログラムを、インターネット等の通信回線(無線通信も含む)を介して頒布してもよい。さらに、同プログラムを暗号化したり、変調をかけたり、圧縮した状態で、インターネット等の有線回線や無線回線を介して、あるいは記録媒体に収納して頒布してもよい。
【0082】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【符号の説明】
【0083】
10 第1ネットワーク
11、12 アクセスノード
20 第2ネットワーク
21、22 データ出力ノード
100 中継装置
111 リクエスト受付部
112 リクエスト破棄判定部
113 データ取得部
114 データ取得時間算出部
115 リクエスト応答部
116 タイムアウト時間算出部
121 リクエストキュー
122 リクエスト応答キュー
123 データ取得時間記憶部
124 タイムアウト時間記憶部

【特許請求の範囲】
【請求項1】
第1ネットワークを介して第1ノードからリクエストを受け付け、前記リクエストを解析する受付部と、
第2ネットワークを介して、第2ノードから前記リクエストに基づくデータを取得するのに要する第1時間を記憶する第1記憶部と、
前記第1ノードが前記リクエストに対する応答を待ち受ける第2時間を記憶する第2記憶部と、
前記第1時間と前記第2時間とを比較し、前記第1時間が前記第2時間より長い場合に、前記リクエストを破棄すると判定し、前記第1時間が前記第2時間以下の場合に、前記リクエストを実行すると判定する判定部と、
前記判定部が前記リクエストを実行すると判定した場合に、前記第2ネットワークを介して、前記第2ノードへデータ取得メッセージを送信し、前記第2ノードから前記リクエストに基づくデータを含む応答メッセージを受信する取得部と、
前記第1ネットワークを介して前記データを前記第1ノードへ送信する応答部と、
を備える中継装置。
【請求項2】
前記取得部が前記データ取得メッセージを送信してから前記応答メッセージを受信するまでの時間を算出し、算出した時間を前記第1時間として前記第1記憶部に記憶させる第1算出部をさらに備えることを特徴とする請求項1に記載の中継装置。
【請求項3】
前記受付部が前記リクエストを受け付けてから前記応答部が前記データを送信するまでに要する第3時間を算出する第2算出部をさらに備え、
前記第2算出部は、前記第1ノードが前記データを受信し、かつ前記第3時間が前記第2時間より長い場合、又は、前記第1ノードが前記データを受信せず、かつ前記第3時間が前記第2時間より短い場合に、前記第3時間を用いて前記第2記憶部に記憶されている前記第2時間を更新することを特徴とする請求項2に記載の中継装置。
【請求項4】
前記応答部は、前記判定部が前記リクエストを破棄すると判定したことを前記第1ノードに通知することを特徴とする請求項3に記載の中継装置。
【請求項5】
前記取得部は、前記第2ノードが異常状態にあるか又は正常状態にあるかを検知し、前記応答部は、前記取得部による検知情報を前記第1ノードに通知することを特徴とする請求項3又は4に記載の中継装置。
【請求項6】
第1ネットワーク及び第2ネットワークに接続される中継装置と、
前記第1ネットワークを介して前記中継装置と通信を行う第1ノードと、
前記第2ネットワークを介して前記中継装置と通信を行う第2ノードと、
を備える中継システムであって、
前記中継装置は、
前記第1ネットワークを介して前記第1ノードからリクエストを受け付け、前記リクエストを解析する受付部と、
前記第2ネットワークを介して、前記第2ノードから前記リクエストに基づくデータを取得するのに要する第1時間を記憶する第1記憶部と、
前記第1ノードが前記リクエストに対する応答を待ち受ける第2時間を記憶する第2記憶部と、
前記第1時間と前記第2時間とを比較し、前記第1時間が前記第2時間より長い場合に、前記リクエストを破棄すると判定し、前記第1時間が前記第2時間以下の場合に、前記リクエストを実行すると判定する判定部と、
前記判定部が前記リクエストを実行すると判定した場合に、前記第2ネットワークを介して、前記第2ノードから前記リクエストに基づくデータを取得する取得部と、
前記取得部が取得した前記データを、前記第1ネットワークを介して前記第1ノードへ送信する応答部と、
を備えることを特徴とする中継システム。
【請求項7】
第1ネットワークを介して第1ノードからリクエストを受け付けるステップと、
前記リクエストを解析するステップと、
第2ネットワークを介して第2ノードから前記リクエストに基づくデータを取得するのに要する第1時間を第1記憶部から取り出すステップと、
前記第1ノードが前記リクエストに対する応答を待ち受ける第2時間を第2記憶部から取り出すステップと、
前記第1時間が前記第2時間より長い場合に、前記リクエストを破棄すると判定するステップと、
前記第1時間が前記第2時間以下の場合に、前記リクエストに基づくデータを前記第2ノードから取得するステップと、
前記第2ノードから取得した前記データを前記第1ノードへ送信するステップと、
をコンピュータに実行させる中継プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2012−65071(P2012−65071A)
【公開日】平成24年3月29日(2012.3.29)
【国際特許分類】
【出願番号】特願2010−206391(P2010−206391)
【出願日】平成22年9月15日(2010.9.15)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】