JP5866101B2 - 中継装置及び中継方法及びプログラム - Google Patents

中継装置及び中継方法及びプログラム Download PDF

Info

Publication number
JP5866101B2
JP5866101B2 JP2012096983A JP2012096983A JP5866101B2 JP 5866101 B2 JP5866101 B2 JP 5866101B2 JP 2012096983 A JP2012096983 A JP 2012096983A JP 2012096983 A JP2012096983 A JP 2012096983A JP 5866101 B2 JP5866101 B2 JP 5866101B2
Authority
JP
Japan
Prior art keywords
response data
request command
header
waiting time
transmission
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.)
Expired - Fee Related
Application number
JP2012096983A
Other languages
English (en)
Other versions
JP2013225763A (ja
Inventor
倉田 守
守 倉田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2012096983A priority Critical patent/JP5866101B2/ja
Publication of JP2013225763A publication Critical patent/JP2013225763A/ja
Application granted granted Critical
Publication of JP5866101B2 publication Critical patent/JP5866101B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Communication Control (AREA)

Description

本発明は、リクエストコマンドを送信する装置と、リクエストコマンドに対する応答データを送信する装置との間で中継を行う技術に関する。
マスタ装置とスレーブ装置で構成される通信システムを想定する。
この通信システムにおいて、マスタ装置が送信したリクエストコマンドに対してスレーブ装置が応答するときに、応答データの前にヘッダを付加したフォーマットでマスタ装置に返送する方法がある。
この方法は送信するヘッダ分の通信量が増すことや、応答データの送信時間の遅れを招いてしまうという課題がある。
この点につき、例えば特許文献1では応答データの前方に付加するヘッダを送信するか否かをフラグによって判定し、ヘッダの送信そのものを省くような工夫がなされている。
特開平10−42001号公報
このように特許文献1の技術では、応答データの前方に付加するヘッダの送信そのものを省くような工夫がなされるものの、ヘッダの送信が必須の状況ではヘッダを送信することを避けられない。
従って、応答データの前方に付加しているヘッダの転送を実施する分、応答データの転送開始を遅らせてしまうことになり、ヘッダの付加による応答データの送信の遅れを常時回避しているわけではない。
また、マスタ装置とスレーブ装置とが異なるプロトコルに準拠している場合は、プロトコルの違いを吸収するための中継装置をマスタ装置とスレーブ装置の間に接続し、中継装置においてプロトコル変換をすることになる。
中継装置を接続する場合にも、ヘッダの送信が必須であれば、中継装置はスレーブ装置からヘッダと応答データを受信した後に、ヘッダ、プロトコル変換後の応答データの順でマスタ装置に送信するため、ヘッダの送信により応答データの送信が遅延することになる。
この発明は、このような点に鑑みたものであり、第1のプロトコルに準拠し、リクエストコマンドを送信する第1の装置と、第2のプロトコルに準拠し、応答データを送信する第2の装置との間の通信の中継において、応答データの送信を効率的に行うことを主な目的とする。
本発明に係る中継装置は、
第1のプロトコルに準拠し、リクエストコマンドを送信する第1の装置と、
第2のプロトコルに準拠し、リクエストコマンドに応答する応答データを送信する第2の装置との間で中継を行う中継装置であって、
前記第1の装置から、前記第2の装置へのリクエストコマンドを受信し、受信したリクエストコマンドを前記第2のプロトコルに対応させて変換し、変換後のリクエストコマンドを前記第2の装置に送信するリクエストコマンド処理部と、
前記第2の装置から、前記リクエストコマンドに応答する応答データを受信し、受信した応答データを前記第1のプロトコルに対応させて変換し、変換後の応答データを前記第1の装置に送信する応答データ処理部と、
前記リクエストコマンドに対する応答データであることが記述されるヘッダを生成するとともに、ヘッダの送信が完了した直後に前記変換後の応答データの送信が開始されるように前記ヘッダの送信タイミングを制御して、前記ヘッダを前記第1の装置に送信するヘッダ処理部とを有することを特徴とする。
本発明によれば、ヘッダの送信が完了した直後にプロトコル変換後の応答データの送信が開始されるようにヘッダの送信タイミングを制御して、ヘッダを第2の装置に送信するため、ヘッダの送信を待つことなくプロトコル変換後の応答データを送信することができ、応答データの送信を効率的に行うことができる。
実施の形態1に係るインターフェース変換装置の構成例を示す図。 実施の形態1に係るインターフェース変換装置の処理を時系列的に表した概念図。 実施の形態1に係るリクエストコマンド、ヘッダ、応答データの送受信タイミングを示す図。 実施の形態1に係るリクエストコマンド、ヘッダ、応答データの送受信タイミングを示す図。 実施の形態1に係る、ばらつきによる最大遅延値を決定する処理の例を示すフローチャート図。 実施の形態1に係るインターフェース変換装置のハードウェア構成例を示す図。
実施の形態1.
応答データの先方に付加するヘッダは、マスタ装置が送信したリクエストコマンドの内容を正しく受信したことを示すための情報である。
ヘッダとしてリクエストコマンドの内容を送付するシステムの場合、スレーブ装置からの応答データの内容に関わらずヘッダの内容は決定する。
そのため、マスタ装置とスレーブ装置との間の通信を中継する中継装置を設け、中継装置がマスタ装置に応答データを送信する前に、予めヘッダのみを送信することは可能であり、中継装置がスレーブ装置から応答データを受信する前に、マスタ装置に予めヘッダを送ることは可能であるが、これはヘッダの送信と応答データの送信の間を空けることを招く。
しかし、ヘッダの送信と応答データの送信の間に転送ノイズが入り、その後の応答データ送信以降の処理が誤動作する可能性があるため、ヘッダと応答データは間隔を空けずに送信することが望ましい。
そこで、本実施の形態では、中継装置が、応答データの先方に付加するヘッダを予め生成し、スレーブ装置から応答データを受信する時刻を予測し、その予測に基づいて、応答データを受信する前又は受信した後にヘッダをマスタ装置に送信し、ヘッダ送信後間を空けずに応答データの送信を行う。
該予測をするためには、データを受信する時間を複数回保持し、保持した時間の値からデータを受信する時間を決定する。
本実施の形態では、これらの機能を備えたインターフェース変換装置をマスタ装置とスレーブ装置の間に接続し、マスタ装置とスレーブ装置との間の通信を中継する。
図1は、インターフェース変換装置を含む通信システムの全体構成例を示す。
インターフェース変換装置1は、マスタ装置2とスレーブ装置3との間の通信を中継し、中継装置の例に相当する。
マスタ装置2は、第1のプロトコルに準拠し、リクエストコマンドを送信する。
マスタ装置2は、第1の装置の例に相当する。
スレーブ装置3は、第2のプロトコルに準拠し、リクエストコマンドに応答する応答データを送信する。
スレーブ装置3は、第2の装置の例に相当する。
インターフェース変換装置1は、マスタ装置2がマスタ装置インターフェース21に送信したリクエストコマンドを受信し、ヘッダ・データ送信時間決定部15は、その受信タイミングを情報として保持する。
また、そのリクエストコマンドに対して、ヘッダ生成部12によってヘッダを生成するとともに、リクエストコマンド変換部11によってスレーブ装置3用のリクエストコマンドを生成する。
すなわち、ヘッダ生成部12は、マスタ装置2からのリクエストコマンドに対する応答データであることが記述されるヘッダを生成する。
ヘッダ生成部12は、ヘッダ・データ送信時間決定部15及び送信タイミング制御部16とともにヘッダ処理部の例に相当する。
また、リクエストコマンド変換部11は、マスタ装置2からリクエストコマンドを受信し、受信したリクエストコマンドを第2のプロトコルに対応させて変換し、変換後のリクエストコマンドをスレーブ装置3に送信する。
リクエストコマンド変換部11は、リクエストコマンド処理部の例に相当する。
スレーブ装置3は、スレーブ装置インターフェース31からリクエストコマンドを受信すると該リクエストコマンドに対する処理を行い、その結果を応答データとしてスレーブ装置インターフェース31を介してインターフェース変換装置1に送信する。
インターフェース変換装置1は、スレーブ装置インターフェース31から応答データを受信するとデータ変換部13によって応答データをマスタ装置2に対応するフォーマットに変換するとともに、データ受信時間測定部14を介しヘッダ・データ送信時間決定部15にデータ受信時間情報を送り、ヘッダ・データ送信時間決定部15は、その情報に基づきヘッダおよび応答データをマスタ装置インターフェース21に送信する時間を決定する。
そして、送信タイミング制御部16は、ヘッダ・データ送信時間決定部15からの時間情報に従って、ヘッダ生成部12に保持しているヘッダ、およびデータ変換部13からの応答データをマスタ装置インターフェース21を介してマスタ装置2に送信する。
すなわち、データ変換部13は、スレーブ装置3から応答データを受信し、受信した応答データを第1のプロトコルに対応させて変換する。
データ変換部13は、送信タイミング制御部16とともに、応答データ処理部の例に相当する。
また、ヘッダ・データ送信時間決定部15は、ヘッダの送信が完了した直後に変換後の応答データの送信が開始されるようにヘッダの送信タイミングを制御する。
ヘッダ・データ送信時間決定部15は、データ変換部13が応答データを受信する前に応答データの受信タイミングを予測し、予測した応答データの受信タイミングと、データ変換部13が応答データの変換に要する時間と、ヘッダの送信処理に要する時間とに基づき、ヘッダの送信タイミングを決定する。
ヘッダ・データ送信時間決定部15は、ヘッダ処理部の例に相当する。
送信タイミング制御部16は、ヘッダ・データ送信時間決定部15の制御に従って、ヘッダをマスタ装置2に送信し、ヘッダの送信に後続して、変換後の応答データをマスタ装置2に送信する。
送信タイミング制御部16は、応答データ処理部とヘッダ処理部の例に相当する。
また、データ受信時間測定部14は、受信待ち時間を計測する。
受信待ち時間とは、リクエストコマンド変換部11がリクエストコマンドを送信してからデータ変換部13が応答データを受信するまでの時間である。
また、データ受信時間測定部14は、計測した受信待ち時間を記憶し、記憶している受信待ち時間と計測した受信待ち時間との比較も行う。
データ受信時間測定部14は、受信待ち時間計測部、受信待ち時間記憶部及び受信待ち時間比較部の例に相当する。
なお、以下では、受信待ち時間を受信時間又はデータ受信時間ともいう。
図2は、本実施の形態に係るインターフェース変換装置1の処理を時系列的に表した概念図である。
インターフェース変換装置1は、マスタ装置2内のリクエストコマンド発行処理120によって送信されたリクエストコマンド141を受信し、図1のヘッダ生成部12によりヘッダ生成処理111、図1のリクエストコマンド変換部11によりリクエストコマンド変換処理110、図1のヘッダ・データ送信時間決定部15によりヘッダ送信タイミング決定処理112を行う。
ヘッダ送信処理113は、ヘッダ生成処理111からヘッダの情報を取得142し、送信タイミング決定処理112から得た、マスタ装置インターフェース21にヘッダを送信するタイミング情報143に基づいてヘッダを送信145する。
リクエストコマンド変換処理110は、プロトコル変換後のリクエストコマンドをスレーブ装置3に送信146する。
スレーブ装置3は、データ生成処理130によって、受信したリクエストコマンドに応じた処理を行い、インターフェース変換装置1に応答データを送信147する。
インターフェース変換装置1は、応答データを受信147すると、図1のデータ変換部13によりデータ変換処理114、図1のデータ受信時間測定部14によってデータ受信時間測定処理116をする。
データ受信時間測定処理116は、応答データの受信時間の情報を送信タイミング決定処理112に送信150する。
図1のヘッダ・データ送信時間決定部15によって、送信タイミング決定処理112は、ヘッダと応答データをマスタ装置2に送信するタイミングを決定し、ヘッダ送信処理113、データ送信処理にそのタイミング情報を渡す。
図1の送信タイミング制御部16によって、データ送信処理115は、データ変換処理114から応答データを取得148し、送信タイミング決定処理112からのマスタ装置インターフェース21に送信するタイミング情報にもとづいて応答データを送信149する。
以上の処理手順により、応答データのプロトコル変換と並行して又はプロトコル変換に先立ってヘッダの送信が開始され、ヘッダの送信が完了した直後に応答データの送信が開始され、間隔を空けずにヘッダと応答データが送信される。
本実施の形態では、ヘッダ・データ送信時間決定部15が、スレーブ装置インターフェース31から応答データを受信する時刻を予測する。
以下では、ヘッダ・データ送信時間決定部15による応答データの受信タイミングの予測を説明する。
図3は、リクエストコマンド、ヘッダ、応答データの送受信タイミングの態様を説明する図である。
そもそもスレーブ装置3のデータ生成処理時間が一定である場合、インターフェース変換装置1からスレーブ装置3にリクエストコマンドを送信してから、その応答データを受信するまでの時間(図3内に示すスレーブ応答時間)は仕様上固定である。
しかし、スレーブ装置インターフェース31にはデバイスやケーブルによって遅延が生じる。
よって、図3内に示す実際の遅延時間41a及び41bは、実測に基づくしかないため、はじめに実測値を測定する。
インターフェース変換装置1はマスタ装置2からリクエストコマンドを受け、スレーブ装置3に送信し、実際のデータ受信時間や遅延時間を経て応答データを受信する。
しかし、はじめの送受信ではケーブル等による遅延時間41がわからないため、実際のデータ受信時間はわからないままヘッダを送信することになる。
そこで、ヘッダ・データ送信時間決定部15及び送信タイミング制御部16は、はじめのリクエストコマンドに対する応答データの受信時間を構成上取り得る最大値(図3のデータ受信最大遅延時間)と仮定してヘッダの送信を行う。
つまり、スレーブ装置3へのリクエストコマンドの送信時刻からデータ受信最大遅延時間が経過した際に応答データを受信すると予測(仮定)し、この予測(仮定)のもとにヘッダの送信タイミングを決定する。
一方で、実際に応答データを受信した際には、データ受信時間測定部14がスレーブ装置3からの実際のデータ受信時間を測定し、測定したデータ受信時間を記憶する。
なお、通常、実際の応答データの受信時間はデータ受信最大遅延時間よりも短いので、送信タイミング制御部16は、応答データの受信からヘッダの送信完了までの間応答データを保持することが必要である。
つまり、データ受信最大遅延時間の経過時に応答データを受信するとの予測のもとにヘッダの送信タイミングが決定されているので、ヘッダに後続させて応答データを送信するためには、送信タイミング制御部16は、データ受信最大遅延時間と実際のデータ受信時間との差分だけ応答データの送信を遅延させることが必要である。
次回以降は、ヘッダ・データ送信時間決定部15が、データ受信時間測定部14に記憶されているデータ受信時間(受信待ち時間)の実績値と、スレーブ装置3へのリクエストコマンドの送信時刻とを用いて、応答データの受信タイミングを予測する。
また、本実施の形態の手法では、応答データを受信する前から先行してマスタ装置インターフェース21にヘッダを送信する場合がある。
前述の通り、インターフェース変換装置1は、スレーブ装置3からはじめに応答データを受信した時間を用いて応答データ受信タイミングを予測する。
また、ヘッダのビット転送量は一定である。
このため、インターフェース変換装置1はマスタ装置2への応答データ送信前に先行してヘッダを送信するためのヘッダ送信開始タイミングを算出することができ、算出したヘッダ送信開始タイミングによっては応答データ受信前に先行してヘッダを送信する場合がある。
算出されるヘッダ送信開始タイミングは、ヘッダの送信完了と応答データの送信開始の間が開かないタイミングである。
ヘッダ・データ送信時間決定部15は、例えば、以下の式によりヘッダの送信開始タイミング及び応答データの予測受信タイミングを決定することができる。
ヘッダの送信開始タイミング=応答データの予測受信タイミング+応答データ変換時間−ヘッダ送信時間
応答データの予測受信タイミング=リクエストコマンドの送信時刻+データ受信時間
上式において、ヘッダの送信開始タイミングは、ヘッダの送信を開始する時刻である。
応答データの予測受信タイミングは、応答データの受信を開始する時刻である。
応答データ変換時間は、データ変換部13による応答データのプロトコル変換に要する時間である。
ヘッダ送信時間は、送信タイミング制御部16がヘッダの送信を開始してからヘッダの送信を完了するまでの時間である。
リクエストコマンドの送信時刻は、リクエストコマンド変換部11によるスレーブ装置3へのリクエストコマンドの送信を開始した時刻である。
データの受信時間は、データ受信時間測定部14により計測され、記憶されている応答データの受信時間(受信待ち時間)である。
図4は、実際のデータ受信時間を獲得した後にリクエストコマンド処理を行う場合の時間の経過を示す。
図3で示したように、はじめのリクエストコマンドの処理は応答データの受信時間としてデータ受信最大遅延時間を用いているが、図4で示すように、2回目以降は実際のデータ受信時間(データ受信時間測定部14で記憶されている時間)をデータ受信最大遅延時間に代えて用いて、応答データの受信タイミングを予測する。
また、図4で示した実際のデータ受信時間にばらつきがあることを考慮し、適正な実際のデータ受信時間を求めるようにしてもよい。
遅延のばらつきにより、データ受信時間測定部14が保持しているデータ受信時間よりも早期にスレーブ装置3から応答データを受信した場合(ヘッダ・データ送信時間決定部15が予測した応答データの受信タイミングよりも早期に応答データを受信した場合)は、送信タイミング制御部16が、早く受信した時間分、内部でバッファやレジスタにより応答データを保持した後にマスタ装置2に送信すればよい。
しかし、データ受信時間測定部14が保持しているデータ受信時間よりも遅くスレーブ装置3から応答データを受信した場合(ヘッダ・データ送信時間決定部15が予測した応答データの受信タイミングよりも遅く応答データを受信した場合)は、先行して送信したヘッダと送信する応答データの間に遅れた時間分の隙間ができてしまう。
これを避けるために、データ受信時間測定部14が保持するデータ受信時間は、ばらつきによる最大遅延に設定することが必要である。
図5に、ばらつきによる最大遅延値を決定するフローチャートを示す。
はじめに、データ受信時間測定部14が、初期設定(S300)により遅延値と比較数を0にする。
遅延値とは、データ受信時間を示し、比較数とは、最大のデータ受信時間を調査するためのデータ収集数を示す。
なお、この例では比較数を3としている。
インターフェース変換装置1がスレーブ装置3からリクエストコマンドに対する応答データを受信すると、新たに遅延値獲得(S301)はYESになり、データ受信時間測定部14は、現在保持している遅延値と新たな遅延値との比較(S302)に進む。
新たに遅延値を獲得しない場合は獲得を待つ。
データ受信時間測定部14は、保持している遅延値と新たな遅延値とを比較(S302)した結果、新たな遅延値が大きければYESとなり、保持している遅延値を新たな遅延値に書換えるとともに比較数を0にする(S303)。
新たな遅延値が小さければNOとなり、何もせずに比較数の加算(S304)に進む。
そして、データ受信時間測定部14は比較数を1加算する(S304)。
その後、データ受信時間測定部14は、比較数が3であるか調査し(S305)、比較数が3でない場合は、新たに遅延値の獲得(S301)に戻る。
比較数が3であれば終了し、データ受信時間測定部14は、この時点で保持している遅延値をばらつきによる最大遅延値とし、実際のデータ受信時間として決定する。
また、データ受信時間測定部14は、決定したデータ受信時間をヘッダ・データ送信時間決定部15に通知する。
また、データ受信時間測定部14は、はじめのリクエストコマンドに対する実際の受信時間の計測やばらつきを考慮した上で、実際の受信時間の決定を定期的に行い、変更するようにしてもよい。
実際の受信時間の計測は、例えば温度などのシステムの動作環境の変化によって変化する可能性がある。
図5のフローを定期的に行うことで動作環境の変化に対応させることができる。
また、リクエストコマンドの送信及び応答データの受信が発生する度、又は、所定の期間内のリクエストコマンドの送信及び応答データの受信に限定して、図5のフローを実施するようにしてもよい。
以上、本実施の形態では、
リクエストコマンドを送信し、該リクエストコマンドに対応する応答データを受信するマスタ装置と、該リクエストコマンドを受信し、該リクエストコマンドに対応する応答データを送信するスレーブ装置に対して、該マスタ装置のインターフェースと該スレーブ装置のインターフェースが異なるために、該マスタ装置のインターフェースと該スレーブ装置のインターフェースに接続し、それらのインターフェースのプロトコル変換を行う機能を持ち、マスタ装置のインターフェースから受信したリクエストコマンド情報を保持し、スレーブ装置のインターフェースから応答データを受信する時間を予測する機能を持つインターフェース変換装置を説明した。
また、本実施の形態では、
リクエストコマンド情報の一部をスレーブ装置のインターフェースから受信する応答データのヘッダとして保持する機能を備える一方で、前記予測したスレーブ装置のインターフェースから応答データを受信する時刻をもとに該マスタ装置のインターフェースに応答データの送信を開始する時刻と応答データの前方に付加するヘッダを送信する時刻を算出し、応答データを受信する前から先行して該マスタ装置のインターフェースにヘッダを送信する機能を持つインターフェース変換装置を説明した。
また、本実施の形態では、
前記スレーブ装置のインターフェースから応答データを受信する前に先行してマスタ装置のインターフェースにヘッダを送信するときに、ヘッダの送信完了と応答データの送信開始の間が開かないようにヘッダの送信開始を決定するインターフェース変換装置を説明した。
また、本実施の形態では、
前記スレーブ装置のインターフェースから応答データを受信する時刻を予測する機能において、データ受信時間にばらつきがあることを考慮し、データ受信時間を複数回計測する機能を持ち、計測した最大時間よりも長い時間が新たに測定された場合、その計測から新たに複数回の計測を開始し、最終的に計測した最大時間を、前記スレーブ装置のインターフェースから応答データを受信する時間と決定する機能を備えたインターフェース変換装置を説明した。
また、本実施の形態では、
前記スレーブ装置のインターフェースから応答データを受信する時刻を予測する機能をスレーブ装置のインターフェースから応答データを受信するごと、または定期的に行うインターフェース変換装置を説明した。
最後に、本実施の形態に示したインターフェース変換装置1のハードウェア構成例を図6を参照して説明する。
インターフェース変換装置1はコンピュータであり、インターフェース変換装置1の各要素をプログラムで実現することができる。
インターフェース変換装置1のハードウェア構成としては、バスに、演算装置901、外部記憶装置902、主記憶装置903、通信装置904、タイマ905が接続されている。
演算装置901は、プログラムを実行するCPU(Central Processing Unit)である。
外部記憶装置902は、例えばROM(Read Only Memory)やフラッシュメモリ、ハードディスク装置である。
主記憶装置903は、RAM(Random Access Memory)である。
通信装置904は、マスタ装置インターフェース21、スレーブ装置インターフェース31との間でリクエストコマンド、ヘッダ、応答データの送受信を行う。
タイマ905は、データ受信時間の計測を行う。
プログラムは、通常は外部記憶装置902に記憶されており、主記憶装置903にロードされた状態で、順次演算装置901に読み込まれ、実行される。
プログラムは、図1に示す「〜部」として説明している機能を実現するプログラムである。
更に、外部記憶装置902にはオペレーティングシステム(OS)も記憶されており、OSの少なくとも一部が主記憶装置903にロードされ、演算装置901はOSを実行しながら、図1に示す「〜部」の機能を実現するプログラムを実行する。
また、本実施の形態の説明において、「〜の判断」、「〜の判定」、「〜の予測」、「〜の計測」、「〜の制御」、「〜の決定」、「〜の設定」、「〜の選択」、「〜の比較」、「〜の生成」、「〜の入力」、「〜の出力」等として説明している処理の結果を示す情報やデータや信号値や変数値が主記憶装置903にファイルとして記憶されている。
また、暗号鍵・復号鍵や乱数値やパラメータが、主記憶装置903にファイルとして記憶されてもよい。
なお、図6の構成は、あくまでもインターフェース変換装置1のハードウェア構成の一例を示すものであり、インターフェース変換装置1のハードウェア構成は図6に記載の構成に限らず、他の構成であってもよい。
また、本実施の形態に示したマスタ装置2及びスレーブ装置3も、図6のハードウェア構成をしていてもよいし、他のハードウェア構成であってもよい。
また、本実施の形態に示す手順により、本発明に係る中継方法を実現可能である。
1 インターフェース変換装置、2 マスタ装置、3 スレーブ装置、11 リクエストコマンド変換部、12 ヘッダ生成部、13 データ変換部、14 データ受信時間測定部、15 ヘッダ・データ送信時間決定部、16 送信タイミング制御部、21 マスタ装置インターフェース、31 スレーブ装置インターフェース、110 リクエストコマンド変換処理、111 ヘッダ生成処理、112 送信タイミング決定処理、113 ヘッダ送信処理、114 データ変換処理、115 データ送信処理、116 データ受信時間測定処理、120 リクエストコマンド発行処理、121 ヘッダ受信処理、122 データ受信処理、130 データ生成処理。

Claims (7)

  1. 第1のプロトコルに準拠し、リクエストコマンドを送信する第1の装置と、
    第2のプロトコルに準拠し、リクエストコマンドに応答する応答データを送信する第2の装置との間で中継を行う中継装置であって、
    前記第1の装置から、前記第2の装置へのリクエストコマンドを受信し、受信したリクエストコマンドを前記第2のプロトコルに対応させて変換し、変換後のリクエストコマンドを前記第2の装置に送信するリクエストコマンド処理部と、
    前記第2の装置から、前記リクエストコマンドに応答する応答データを受信し、受信した応答データを前記第1のプロトコルに対応させて変換し、変換後の応答データを前記第1の装置に送信する応答データ処理部と、
    前記リクエストコマンド処理部のリクエストコマンドの送信時刻と、前記リクエストコマンド処理部がリクエストコマンドを送信してから前記応答データ処理部が応答データを受信するまでの受信待ち時間の実績値とに基づき、前記応答データ処理部が応答データを受信する前に応答データの受信タイミングを予測し、前記リクエストコマンドに対する応答データであることが記述されるヘッダを生成するとともに、ヘッダの送信が完了した直後に前記変換後の応答データの送信が開始されるように前記ヘッダの送信タイミングを制御して、前記ヘッダを前記第1の装置に送信するヘッダ処理部とを有することを特徴とする中継装置。
  2. 前記ヘッダ処理部は、
    前記応答データ処理部が応答データを受信する前に応答データの受信タイミングを予測し、
    予測した応答データの受信タイミングと、前記応答データ処理部が応答データの変換に要する時間と、ヘッダの送信処理に要する時間とに基づき、ヘッダの送信タイミングを決定することを特徴とする請求項1に記載の中継装置。
  3. 前記中継装置は、更に、
    受信待ち時間を計測する受信待ち時間計測部と、
    2つの受信待ち時間が比較された結果、時間が長いと判断された受信待ち時間を記憶する受信待ち時間記憶部と、
    前記受信待ち時間計測部が受信待ち時間を計測する度に、計測された受信待ち時間と前記受信待ち時間記憶部の受信待ち時間とを比較し、計測された受信待ち時間が長いと判断すれば、前記受信待ち時間記憶部の受信待ち時間を計測された受信待ち時間に書換え、前記受信待ち時間記憶部の受信待ち時間が書換えられた後に、所定の回数の比較が行われた後でも、前記受信待ち時間記憶部の受信待ち時間が書換えられない場合に、前記受信待ち時間記憶部の受信待ち時間を前記ヘッダ処理部に通知する受信待ち時間比較部とを有し、
    前記ヘッダ処理部は、
    受信待ち時間の実績値として、前記受信待ち時間比較部から通知された受信待ち時間を用いて、応答データの受信タイミングを予測することを特徴とする請求項に記載の中継装置。
  4. 前記受信待ち時間計測部は、
    リクエストコマンドの送信及び応答データの受信が発生する度、又は、所定の期間内のリクエストコマンドの送信及び応答データの受信に限定して、受信待ち時間を計測することを特徴とする請求項に記載の中継装置。
  5. 前記応答データ処理部は、
    前記ヘッダ処理部が予測した応答データの受信タイミングよりも早いタイミングで前記第2の装置から応答データを受信した場合に、前記ヘッダ処理部が予測した受信タイミングと実際の受信タイミングの差の時間だけ応答データの送信を遅延させることを特徴とする請求項2に記載の中継装置。
  6. 第1のプロトコルに準拠し、リクエストコマンドを送信する第1の装置と、
    第2のプロトコルに準拠し、リクエストコマンドに応答する応答データを送信する第2の装置との間で中継を行う中継装置が行う中継方法であって、
    前記中継装置が、前記第1の装置から、前記第2の装置へのリクエストコマンドを受信し、受信したリクエストコマンドを前記第2のプロトコルに対応させて変換し、変換後のリクエストコマンドを前記第2の装置に送信するリクエストコマンド処理ステップと、
    前記中継装置が、前記第2の装置から、前記リクエストコマンドに応答する応答データを受信し、受信した応答データを前記第1のプロトコルに対応させて変換し、変換後の応答データを前記第1の装置に送信する応答データ処理ステップと、
    前記中継装置が、前記リクエストコマンド処理ステップによるリクエストコマンドの送信時刻と、前記リクエストコマンド処理ステップによりリクエストコマンドが送信されてから前記応答データ処理ステップにより応答データが受信されるまでの受信待ち時間の実績値とに基づき、前記応答データ処理ステップにより応答データが受信される前に応答データの受信タイミングを予測し、前記リクエストコマンドに対する応答データであることが記述されるヘッダを生成するとともに、ヘッダの送信が完了した直後に前記変換後の応答データの送信が開始されるように前記ヘッダの送信タイミングを制御して、前記ヘッダを前記第1の装置に送信するヘッダ処理ステップとを有することを特徴とする中継方法。
  7. 第1のプロトコルに準拠し、リクエストコマンドを送信する第1の装置と、
    第2のプロトコルに準拠し、リクエストコマンドに応答する応答データを送信する第2の装置との間で中継を行うコンピュータに、
    前記第1の装置から、前記第2の装置へのリクエストコマンドを受信し、受信したリクエストコマンドを前記第2のプロトコルに対応させて変換し、変換後のリクエストコマンドを前記第2の装置に送信するリクエストコマンド処理ステップと、
    前記第2の装置から、前記リクエストコマンドに応答する応答データを受信し、受信した応答データを前記第1のプロトコルに対応させて変換し、変換後の応答データを前記第1の装置に送信する応答データ処理ステップと、
    前記リクエストコマンド処理ステップによるリクエストコマンドの送信時刻と、前記リクエストコマンド処理ステップによりリクエストコマンドが送信されてから前記応答データ処理ステップにより応答データが受信されるまでの受信待ち時間の実績値とに基づき、前記応答データ処理ステップにより応答データが受信される前に応答データの受信タイミングを予測し、前記リクエストコマンドに対する応答データであることが記述されるヘッダを生成するとともに、ヘッダの送信が完了した直後に前記変換後の応答データの送信が開始されるように前記ヘッダの送信タイミングを制御して、前記ヘッダを前記第1の装置に送信するヘッダ処理ステップとを実行させることを特徴とするプログラム。
JP2012096983A 2012-04-20 2012-04-20 中継装置及び中継方法及びプログラム Expired - Fee Related JP5866101B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012096983A JP5866101B2 (ja) 2012-04-20 2012-04-20 中継装置及び中継方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012096983A JP5866101B2 (ja) 2012-04-20 2012-04-20 中継装置及び中継方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2013225763A JP2013225763A (ja) 2013-10-31
JP5866101B2 true JP5866101B2 (ja) 2016-02-17

Family

ID=49595554

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012096983A Expired - Fee Related JP5866101B2 (ja) 2012-04-20 2012-04-20 中継装置及び中継方法及びプログラム

Country Status (1)

Country Link
JP (1) JP5866101B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106716392B (zh) * 2014-09-25 2021-06-08 高准公司 用于串行通信的栈定时调整

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2986802B2 (ja) * 1989-03-13 1999-12-06 株式会社日立製作所 プロトコル高速処理方法
JP5393528B2 (ja) * 2010-02-22 2014-01-22 三菱電機株式会社 通信装置及びプログラム
JP2012034047A (ja) * 2010-07-28 2012-02-16 Mitsubishi Electric Corp 中継装置及びコンピュータプログラム及び中継方法

Also Published As

Publication number Publication date
JP2013225763A (ja) 2013-10-31

Similar Documents

Publication Publication Date Title
US10291482B2 (en) ECU for transmitting large data in HiL test environment, system including the same and method thereof
US10491530B2 (en) Communication system and communication device
US20170324579A1 (en) Communication control device and communication system
JP5233770B2 (ja) ゲートウェイ装置、その制御方法、システム、制御方法を実行させるためのプログラム及びそれを記録した記録媒体
JP6094196B2 (ja) 情報処理装置、情報処理プログラムおよび情報処理方法
US10353370B2 (en) Programmable logic controller, control method thereof and contorl program thereof
JP5815155B2 (ja) 中継装置、中継方法および中継プログラム
JP6398329B2 (ja) 制御装置、制御方法及びプログラム
JP5866101B2 (ja) 中継装置及び中継方法及びプログラム
JP7192608B2 (ja) ネットワーク管理装置、管理方法、管理プログラムおよび記録媒体
KR101436272B1 (ko) 통신 네트워크 시스템
US7724775B2 (en) Data transmission circuit and method for controlling the data transmission circuit
JP7058232B2 (ja) 通信システムおよび通信システムのタイムスタンプ補正方法
KR20130101569A (ko) 프로그래머블 콘트롤러의 주변 장치 및 그 통신 방법
JP6586666B2 (ja) 並列処理装置、ノード情報採取方法、およびノード情報採取プログラム
JP4678046B2 (ja) 通信装置、通信システム、遅延時間の測定時間設定方法、遅延時間算出方法およびプログラム
JP6750618B2 (ja) キー制御システム、仮想化サーバ、キー制御方法、プログラム
JP6572136B2 (ja) 通信システム、通信装置、第二装置、通信方法及びコンピュータプログラム
US20180152323A1 (en) Relay device and communication system
US20230281147A1 (en) Communication apparatus, communication method, and program
JP5602693B2 (ja) 監視間隔制御装置、監視間隔制御方法およびプログラム
US9733979B2 (en) Communication device
JP5082147B2 (ja) マルチノードシステム、ノード間スイッチ及びデータ中継方法
TW201434286A (zh) 中繼裝置及中繼方法
US10749781B2 (en) Setting device, setting method, recording medium to which setting program is recorded, communication system, client device, and server device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141106

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150930

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151020

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151109

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: 20151201

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151229

R150 Certificate of patent or registration of utility model

Ref document number: 5866101

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees