JP4024988B2 - Data transmission method - Google Patents
Data transmission method Download PDFInfo
- Publication number
- JP4024988B2 JP4024988B2 JP2000111036A JP2000111036A JP4024988B2 JP 4024988 B2 JP4024988 B2 JP 4024988B2 JP 2000111036 A JP2000111036 A JP 2000111036A JP 2000111036 A JP2000111036 A JP 2000111036A JP 4024988 B2 JP4024988 B2 JP 4024988B2
- Authority
- JP
- Japan
- Prior art keywords
- packet
- data
- subpacket
- correction
- 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
Links
Images
Landscapes
- Detection And Prevention Of Errors In Transmission (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
- Communication Control (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、発電プラント、産業プラント等で使われるネットワークを対象とした、一定時間内でのデータ伝送を高い確率で保証するデータ伝送方式に関する。
【0002】
【従来の技術】
図11は、従来のプラントにおけるスター型ネットワークの構成概念を示す図である。発電プラント、産業プラントなどにおける監視制御では、現場にて圧力、温度等のセンサーで測定したデータ、機器の状態信号等は、各現場ステーション2001に集められ、ハブ2002等からなるネットワークを経由して各監視制御ステーション2003に送信される。一方、監視制御ステーション2003からの指令信号もネットワークを経由して現場の機器に伝送される。
【0003】
プラントの監視制御において、各種の伝送データは、予め定められた一定時間以内に伝送されることが要求される。この様な分野では、一定時間内でのデータ伝送を保証するため、ネットワークの伝送方式としてトークンパッシング方式が使用されていた。トークンパッシング方式では、トークンと呼ばれる特別なデータを、データを発信するステーション間で制限時間内に次々と受け渡し、トークンを受け取ったステーションのみがデータの送信権を持つ。各ステーションはトークンを制限時間内しか保持できないため、トークンは一定時間内で全ステーションを周回する。また、トークンを保持したステーションのみがデータを送信し,他のステーションは受信するため、トークンの周回する一定時間内のデータの伝送が保証される。
【0004】
一方、オフィス用途を中心に普及したEthernetは、高性能でありながらトークンパッシング方式のネットワークに比べ安価である。現在普及しているEthernetは、10Mbpsから100Mbpsの伝送能力を持ち、プロセス制御用としても十分な伝送能力を持っている。
【0005】
【発明が解決しようとする課題】
Ethernetは元来、単一の伝送路に接続された複数のステーションにて、伝送路が空いていることを検出すれば、任意の時刻に送信を開始できる仕組みとなっている。しかしながら、伝送路で伝達される信号速度は有限であるため、極めて短い時間に複数のステーションが送信を開始する可能性がある。この問題を解決するため、Ethernetでは信号の衝突を検出する仕組みがあり、送信を開始したステーションが他のステーションの送信との衝突を検出した時、一旦送信を止め、ランダムな遅延時間を置いて再び送信を開始する方式を取っている。このようなEthernetの通信の仕組みは、Carrier Sense Multiple Access with Collision Detection(CSMA/CD)と呼ばれる。
【0006】
CSMA/CDの採用により、Ethernetは高い伝送効率を達成しているが、一方短い時間に複数の送信が集中した場合、衝突が重なることが予想される。Ethernetでは、衝突による再送信回数を最大16回と定め、16回以内に送信できない場合は当該データを破棄してしまう。これはコリジョンアウトと呼ばれる。
【0007】
システムの伝送容量に十分余裕を持って設計しても、衝突やコリジョンアウトはランダムに発生するため、完全に回避することはできない。衝突によるデータの遅延およびコリジョンアウトの存在は、Ethernetをプロセス制御に適用する場合、明かな障害となっている。
【0008】
これらの問題に対する一つの解決法は、全二重Ethernetを使用することである。全二重Ethernetでは、スター型の伝送路を用い、中心にスイッチングハブと呼ばれる装置をおく。各ステーションとスイッチングハブは送信・受信が独立した全二重回線で結ばれ、スイッチングハブには伝送データを一旦保存するためのバッファメモリーが置かれる。このような全二重Ethernetでは、適切なデータ伝送量が設定されればコリジョンを回避することができる。何故なら、各ステーションはスイッチングハブと専用線で結ばれるため衝突はなく、また、同時に複数のステーションが単一のステーションにデータを送信した場合でも、スイッチングハブ内のバッファメモリーに一方のデータを蓄えておくことができるからである。しかしながら、スイッチングハブは広く使われるリピーターハブに比べて高価である。
【0009】
衝突とコリジョンアウトに対する他の解決策として、データを多重化してデータの信頼性を高めることも考えられる。例えば、制限時間内にデータが伝送できない確率が10-4程度のネットワーク構成で、常に同じデータを2回送信する仕組みを設ければ、データを伝送できない確率は10-4×10-4=10-8と極めて低い確率になるかもしれない。しかしながら、この方式では、Ethernetを流れるデータの量を2倍にするため、一つの送信に対する衝突およびコリジョンアウトの確率も増加し、制限時間内にデータが伝送できない確率が10-4より増加することも考えられる。
【0010】
米国特許5,870,412、”Forward Error Correction System for Packet Based Real Time Media”は、ストリームとして伝送されるデータパケットの中に、本来のデータと共に過去のデータの排他的論理和を計算することで得られる訂正データ付加するものである。この方式では、連続して複数のパケットの喪失があった場合でも、訂正データから、再送信なしに喪失したデータを復元できる。しかしながら、この方式は映像や音声のようなストリームデータを対象としたもので、喪失したパケットの復元には、引き続き実時間で送信されるパケットの到着を待たなければならず、時間がかかる。また、この方式は信頼性の低いネットワークでのデータストリームの伝送を想定したもので、データの喪失に対する耐性は高いが、データ伝送量も2倍以上に増えてしまう。
【0011】
本発明の目的は、制限時間内での高い確率のデータ伝送を保証するデータ伝送方式を提供することにある。
【0012】
【課題を解決するための手段】
上記課題を解決し目的を達成するために、本発明のデータ伝送方式は以下の如く構成されている。
【0013】
(1)本発明のデータ伝送方式は、データをデータの誤り検査情報を含むデータグラムとして伝送し、検査情報でデータの誤りが検出された場合はデータグラムを破棄する上位プロトコルと、該データグラムを長さに制限のあるフレームに収まる様に分割して伝送する下位プロトコルを採用するネットワークにおいて、送信側は、複数のアプリケーションから出力されるデータを予め定められた順序で送信データパケットにまとめ、前記送信データパケットを各々が一つのフレームに収まる長さ以下で、かつ予め定められた個数のサブパケットに分割し、各サブパケットに該データパケットの識別子およびサブパケット番号を挿入するパケット分解手段と、分解された各サブパケット毎に、先頭から最後までの各データに対して訂正データを求め、該訂正データからなる訂正パケットを生成する訂正データ生成手段と、前記サブパケットと前記訂正パケットを前記上位プロトコルおよび前記下位プロトコルを通じて送信する送信手段を有し、受信側は、前記下位プロトコルおよび前記上位プロトコルを通じて前記サブパケットおよび前記訂正パケットの最初の一つを受信してから、予め定められた時間内に残りの前記サブパケットおよび前記訂正パケットを受信する受信手段と、前記サブパケットが全て受信できた場合は、その受信サブパケットから送信データパケットを再生し、前記サブパケットの一つを喪失し前記訂正パケットが受信できた場合は、受信した前記サブパケットおよび前記訂正パケットから喪失したサブパケットを再現することでデータパケットを再生するパケット再生手段を有する。
【0014】
本発明のデータ伝送方式によれば、標準的なプロトコルを採用したネットワークにおいて、予め定められた時間内でのデータ伝送の信頼性を特別なハードウェアの追加なしに大幅に向上させることができる。
【0015】
(2)本発明のデータ伝送方式は上記(1)に記載の方式であり、かつ前記送信側は、データパケットを一定周期で送信し、前記受信側は、一つ前の周期のデータパケットを受信した時から、定められた時間内に次の周期のデータパケットを受信する。
【0016】
本発明のデータ伝送方式によれば、一定周期でデータを伝送する場合においても、予め定められた時間内に、特別なハードウェアの追加なしに高い確率でデータを伝送できる。
【0017】
(3)本発明のデータ伝送方式は上記(2)に記載の方式であり、かつ前記送信側と前記受信側は時刻を合わせる手段を持ち、前記送信側は合わせた時刻に同期した周期でデータパケットを送信し、前記受信側は合わせた時刻に同期してデータパケットを受信する。
【0018】
本発明のデータ伝送方式によれば、一定周期でデータの伝送する場合において、より正確な受信タイミングを設定できる。
【0019】
(4)本発明のデータ伝送方式は上記(1)に記載の方式であり、かつ前記送信側と前記受信側を結ぶネットワークを多重化し、前記送信側は各ネットワークに、前記サブパケットおよび前記訂正パケットを送信し、前記受信側は該多重化されたネットワークから受信された該サブパケットおよび該訂正パケットから送信データを構成する。
【0020】
本発明のデータ伝送方式によれば、データ伝送の信頼性を極めて高くすることができる。
【0021】
(5)本発明のデータ伝送方式は上記(4)に記載の方式であり、かつ前記受信側は、前記パケット再生手段の内部に、前記多重化されたネットワークから送信されたデータパケットを再構成するのに必要な前記サブパケットおよび前記訂正パケットを受信したか否かを判定するパケット構成可能性判定部を有し、該パケット構成可能性判定部によって該データパケットが再構成可能と判定された時、直ちに該データパケットを構成する。
【0022】
本発明のデータ伝送方式によれば、受信側は、パケットが再生可能になった段階で冗長なパケットの到着を待たず即座に再生するため、システム全体の応答速度を高めることができる。
【0023】
(6)本発明のデータ伝送方式は上記(1)に記載の方式であり、かつ前記送信側は、前記サブパケットおよび訂正パケットの送信の際、時間間隔を置いてサブパケットを送信する。
【0024】
本発明のデータ伝送方式によれば、ネットワークのコリジョンアウトが発生する確率を下げ、システム全体の信頼性を高めることができる。
【0025】
(7)本発明のデータ伝送方式は上記(1)に記載の方式であり、かつ前記送信データパケットの長さに応じて、サブパケットの分割数を調整する。
【0026】
本発明のデータ伝送方式によれば、短いパケットの分割による伝送路の伝送効率の低下を防ぐことができる。
【0027】
(8)本発明のデータ伝送方式は上記(1)に記載の方式であり、かつ前記パケット再生手段から受信したパケット数とサブパケット喪失数を入力し、該パケット数に対するサブパケット喪失数の喪失割合を計算し、該喪失割合よりネットワークの健全性を監視するネットワーク健全性監視手段を用いる。
【0028】
本発明のデータ伝送方式によれば、ネットワークの健全性を常時監視し、例えば伝送路の劣化によってネットワークの信頼性が徐々に低下するような現象を検出することで、劣化が進行する前に補修することが可能となる。
【0029】
(9)本発明のデータ伝送方式は上記(1)に記載の方式であり、かつ第1の伝送路によって前記送信側の前記送信手段と接続されるとともに第2の伝送路によって前記受信側の前記受信手段と接続されデータを伝送するゲートウェイ手段を有し、該ゲートウェイ手段は、前記送信側から前記下位プロトコルおよび前記上位プロトコルを通じて前記サブパケットおよび前記訂正パケットの最初の一つを受信してから、予め定められた時間内に残りの前記サブパケットおよび前記訂正パケットを受信する第2の受信手段と、前記サブパケットが全て受信できた場合は、その受信サブパケットから送信データパケットを再生し、前記サブパケットの一つを喪失し前記訂正パケットが受信できた場合は、受信した前記サブパケットおよび前記訂正パケットから喪失したサブパケットを再現することでデータパケットを再生する第2のパケット再生手段を有する。
【0030】
本発明のデータ伝送方式によれば、ゲートウェイで結ばれた二つの伝送路を介して流れるデータの信頼性を高めることができる。
【0031】
(10)本発明のデータ伝送方式は上記(1)に記載の方式であり、かつ前記サブパケットの内、重要度の高いデータを含むサブパケットに対しては,第2の訂正パケットを生成する。
【0032】
本発明のデータ伝送方式によれば、重要度の高いデータに対し、さらに高い信頼性を保証することができる。
【0033】
【発明の実施の形態】
(第1の実施の形態)
図1は、本発明の第1の実施の形態に係るデータ伝送方式を示すブロック図である。図1では、伝送路107に接続されたステーションA101のアプリケーション群A102からステーションB108のアプリケーション群B113へのデータ伝送を示している。
【0034】
アプリケーション群A102は、ステーションA101上で作動する複数のアプリケーションを表し、これらのアプリケーションから出力されるデータは予め定められた順序でパケットにまとめられ、パケット分解手段103に送られる。パケットは一度に送信すべきデータの集まりで,数百オクテットから数十キロオクテットの長さがある。パケットには、ネットワークを伝送される複数のパケットを区別するため、3オクテットのパケット識別子を付加する。パケット分解手段103では、送られてきたパケットを,それぞれ大きさが等しく、Ethernetフレームに収まる8個を組としたサブパケットに分解する。
【0035】
図2は、パケット分解手段103におけるサブパケットへの分解処理を示すフローチャートである。まずステップ201で処理が開始されると、ステップ202で、パケットのデータを入れる一時的なバッファpbufの長さをplenとする。
【0036】
plenは、オクテットを単位としたpbufの長さを表す。各サブパケットには、3オクテットのパケット識別子と1オクテットのサブパケット番号を付ける。よって、サブパケットが1500オクテットのEthernetフレームに収まるためには、データの長さは、Ethernetフレームの運ぶデータの長さ1500オクテットから、UDP/IPプロトコルスタックで付加されるUDPヘッダの8オクテット、およびIPヘッダの20オクテットと、パケット識別子の3オクテット、サブパケット番号のための1オクテットの合計32オクテットを引いた1468オクテットである。そのため、一度に8個のサブパケットに分解できる最大の長さは、1468×8=11744オクテットである。
【0037】
ステップ203で、plenが0オクテットの場合、ステップ204で処理を終了する。ステップ203で、plenが0オクテットでなく、ステップ205で、plen>11744でない場合、ステップ206で、pbufのデータを取り出してサブパケットに分解する。ステップ205で、plen>11744である場合、ステップ207で、pbufの先頭の11744オクテットのデータを取り出してサブパケットに分解する。
【0038】
ステップ206,207でのサブパケットへの分解は、8個のサブパケットの長さが等しくなるようになされる。plenの長さが8で割り切れない場合は、0データを加えることでサブパケットの長さを等しくする。そして、ステップ208で、バッファpbufの長さをplenとし、再びステップ203以降の処理を行なう。
【0039】
以上の様に構成された8個のサブパケットのセットは訂正データ計算手段104に送られる。訂正データ計算手段104では、個々のサブパケット先頭のビットからパリティビットを計算しこれを訂正データとする。訂正データの長さはサブパケットと同じであるから、訂正データからなる訂正パケットを構成し、サブパケット番号を9とする。
【0040】
【数1】
【0041】
サブパケットおよび訂正パケットは一つのパケットセットを構成し、サブパケットの1番目から8番目、訂正パケットの順に、UDP/IPプロトコルスタック105に送られる。UDP/IPプロトコルスタック105は、サブパケットおよび訂正パケットにUDPヘッダおよびIPヘッダを付加したユーザーデータグラムとして、ネットワークインタフェース106に送る。UDPヘッダには、データグラム全体の検査データであるチェクサムが含まれる。ネットワークインタフェース106は、送られてきたユーザーデータグラムをEthernetフレームにカプセル化して送信するが、ユーザーデータグラムの長さは予め単一のEthernetフレームに収まる様に構成されている。
【0042】
送信されたEthernetフレームは、伝送路107を通じてステーションB108のネットワークインタフェース109に伝送される。しかしながら伝送路107では、ノイズによるエラーのほか、図1には図示していない、ステーションA,ステーションB以外のステーションから送信されるEthernetフレームとの衝突による遅延、コリジョンアウトよるフレームの破棄もある。すなわち、ネットワークインタフェース106から送信されたEthernetフレームは、ネットワークインタフェース109で受信される時、次の4つの場合がある。
【0043】
(1) 期待された時間内に完全な形で到達したフレーム
(2) データにエラーが発生したフレーム
(3) 衝突によって期待された時間を過ぎて到達したフレーム
(4) コリジョンアウトによって到達しなかったフレーム
(4)の場合を除き、ネットワークインタフェース109で受信されたフレームは、ユーザーデータグラムが抜き出されUDP/IPプロトコルスタック110に送られる。UDP/IPプロトコルスタック110では、ユーザーデータグラムのUDPヘッダからチェックサムを抜き出し、別途計算したチェックサムと比較し、一致しない場合はユーザーデータグラムを破棄する。この結果、上記(2)のデータにエラーが発生したフレームに含まれるユーザーデータグラムは破棄されることになる。
【0044】
パケット再生手段111は、UDP/IPプロトコルスタック110にユーザーデータグラムが到着した時、運ばれてきたサブパケットおよび訂正データを取り出す。タイマー112は、パケットセットの最初のパケットがパケット再生手段111に到着した時にスタートし、予め定められた時間(数msecから数十msec)が経過するとパケット再生手段111に時間切れの信号を送る。
【0045】
パケット再生手段111は、制限時間内に1番から8番までのサブパケット全てを受信していれば、これらのサブパケットから元のパケットを再生し、アプリケーション群B113が受け取れるようにする。もし、パケット再生手段111が制限時間内に1番から8番のサブパケットの内、一つのサブパケット、例えば3番のサブパケットを受信できず、訂正パケットが受信された場合、喪失した3番目のサブパケットの先頭からk番目のワードB3[k]は次式(2)のように計算される。
【0046】
【数2】
【0047】
以上のように計算された3番目のサブパケットのデータを用いて、元のパケットを再生し、アプリケーション群B113が受け取れるようにする。
【0048】
もし、パケット再生手段111が制限時間内に1番から8番のサブパケットと9番の訂正パケットの内二つ以上を受信できなかった場合は、元のパケットは再生できない。しかしながら、プラント監視制御用のネットワークは元々信頼性が高いため、9個のサブパケットの内、同時に2個が喪失する可能性は非常に低い。
【0049】
なお、本第1の実施の形態では訂正データを計算するために排他的論理和を用いたが、他の計算方法として、各サブパケットのk番目のワード合計をワードの表せる最大数で割った剰余を用いることもできる。
【0050】
第1の実施の形態によれば、標準的なEthernetと同じく標準的なUDP/IPプロトコルスタックを使用したネットワークにおいて、予め定められた時間内でのデータ伝送の信頼性を特別なハードウェアの追加なしに大幅に向上させることが以下の評価から期待される。
【0051】
パケット分解手段103からパケット再生手段111までサブパケットあるいは訂正パケットが到達しない確率(これは、Ethernetフレームの喪失率にほぼ等しい)をPとする。パケット再生手段111で元のパケットが再生できない確率は、次の式(3)で計算される。
【0052】
【数3】
【0053】
例えば、Pが1万分の1とすれば上記の式(3)の値は一千万分の3.6、Pが10万分の1とすれば上記の式(3)の値は十億分の3.6となり、予め定められた時間内に非常に高い確率でデータを伝送することができる。
【0054】
(第2の実施の形態)
図4は、本発明の第2の実施の形態に係るデータ伝送方式を示すブロック図である。図4において図1と同一な部分には同符号を付してある。
【0055】
図4において、タイマー112aは、予め定められた一定周期、例えば1秒周期でアプリケーション群A102に信号を送る。アプリケーション群A102は、タイマー112aからデータ送信タイミング信号を受け取ると、受け取った時点でのデータをパケットにまとめてパケット分解手段103に送る。プロセスの監視制御では、アプリケーション群A102は、ステーションA101に接続された図4には図示していないプロセス入出力装置から入力されるプロセスデータ、あるいは図4には図示していない他のステーションからのプロセスデータに基づいて送信データを生成するため、一般に時間の経過と共に送信データの中身は変化する。
【0056】
パケット分解手段103、訂正データ計算手段104、UDP/IPプロトコルスタック105、ネットワークインタフェース106、伝送路107、ネットワークインタフェース109、UDP/IPプロトコルスタック110は、第1の実施の形態と同様に機能する。タイマー112は、一つ前の周期のパケットセットの受信が完了した時にスタートし、データを送信する周期である1秒に、ネットワークの特性として想定される揺らぎ時間0.1秒を加えた時間、すなわち1.1秒が経過すると,パケット再生手段111に時間切れ信号を送る。すなわち、一つ前の周期のパケットセットの受信が完了した時から、1.1秒内に次の周期のパケットセットが受信される。
【0057】
パケット再生手段111は,第1の実施の形態と同様に機能し、送信されたパケットを再生する。
【0058】
第2の実施の形態によれば、一定周期でデータを伝送する場合においても、予め定められた時間内に、第1の実施の形態同様、特別なハードウェアの追加なしに高い確率でデータを伝送できる。
【0059】
(第3の実施の形態)
図5は、本発明の第3の実施の形態に係るデータ伝送方式を示すブロック図である。図5において図1,図4と同一な部分には同符号を付してある。
【0060】
図5において、クロック114はタイマー112とタイマー112aの時刻を合わせるための手段であり、クロック114からタイマー112とタイマー112aへは、信号の遅延時間の定まった専用のケーブルで結ばれる。これによって、タイマー112およびタイマー112aの時刻を合わせることができる。送信側のステーションA101は合わせた時刻に同期した周期でデータパケットを送信し、受信側のステーションB108は合わせた時刻に同期してデータパケットを受信する。タイマー112とタイマー112aの時刻を合わせる他の手段の例としては、GPS衛星からの信号を用いる方法がある。
【0061】
本第3の実施の形態では、タイマー112は、タイマー112aが上記データ送信タイミング信号を送信してから、ネットワークの伝送遅延時間として予め設定した時間、例えば0.1秒後にパケット再生手段111に時間切れ信号を送る。
【0062】
第3の実施の形態によれば、一定周期でデータの伝送する場合において、より正確な受信タイミングを設定できる。
【0063】
(第4の実施の形態)
図6は、本発明の第4の実施の形態に係るデータ伝送方式を示すブロック図である。図6において図1,図4,図5と同一な部分には同符号を付してある。
【0064】
図6は、図1の構成に、ステーションA101の第2のネットワークインタフェース106a、ステーションB108の第2のネットワークインタフェース109a、および第2の伝送路107aを追加し、ネットワークを二重化したものである。
【0065】
ステーションA101およびステーションB108のUDP/IPプロトコルスタック105および110は、二重化したネットワークを扱い、それぞれのネットワークに対応した2つのIPアドレスを持っている。
【0066】
訂正データ計算手段104は、UDP/IPプロトコルスタック110の持つ2つのIPアドレスの宛先と、それぞれがサブパケットと訂正パケットからなるパケットセットをUDP/IPプロトコルスタック105に送る。これに基づきUDP/IPプロトコルスタック105は、二つのネットワークインタフェース106および106aを通じて各パケットセットを送信する。ネットワークインタフェース106および106aは、送られてきたパケットセットを伝送路107および107aを通じてネットワークインタフェース109および109aに伝送する。
【0067】
ネットワークインタフェース109および109aは、受信したパケットセットをUDP/IPプロトコルスタック110に送り、UDP/IPプロトコルスタック110はこれらをパケット再生手段111に送る。
【0068】
パケット再生手段111には、喪失や遅延がなければ制限時間内にサブパケットおよび訂正パケットが二セット届くことになる。パケット再生手段111は、これらのパケットセットの中から必要なサブパケットあるいは訂正パケットを選んでパケット再生する。
【0069】
なお、本第4の実施の形態においてパケットが再生できないケースは、二つのパケットセットで共通のサブパケットあるいは訂正パケットが二つ以上喪失するケースである。これは極めて少ない確率でしか起こらない。
【0070】
第4の実施の形態によれば、データ伝送の信頼性を極めて高くすることができる。二重化ネットワークは、ネットワークインタフェース106、伝送路107、ネットワークインタフェース109等の障害に備えて、高い信頼性を要求される場合に採用されるが、本第4の実施の形態により、二重化ネットワークの両方が機能している場合のデータ伝送の信頼性は次のように評価される。
【0071】
一重化ネットワークにおいて、パケット分解手段103からパケット再生手段111までサブパケットあるいは訂正パケットが到達しない確率(これは、Ethernetフレームの喪失率にほぼ等しい)をPとすると、独立した二重化ネットワークにおいて、パケット分解手段103からパケット再生手段111までサブパケットあるいは訂正パケットが到達しない確率PdはP2となる。すなわち、Pが一万分の1ならばPdはその二乗で一億分の一である。
【0072】
この時、パケット再生手段111で元のパケットが再生できない確率は、第1の実施の形態と同様次の式(4)で計算される。
【0073】
【数4】
【0074】
Pが一万分の1の時(Pdが一億分の1の時)、上式(4)の値は3.89×10-15であり、データパケットを1秒当たり10回伝送したとしても、データパケットの喪失は81万年に一度の確率となる。
【0075】
(第5の実施の形態)
図7は、本発明の第5の実施の形態に係るパケット再生手段111の内部処理を示すブロック図である。
【0076】
図7において、サブパケット選別部701は、UDP/IPプロトコルスタック110からサブパケットを受信すると、サブパケット番号に従ってサブパケットバッファ702に振り分けて書き込む。サブパケットバッファ702は、サブパケット番号に対応して9個のバッファを持っている。サブパケット選別部701は、受信済みのサブパケットを受信した場合は、サブパケットバッファ702へ書きこまない。
【0077】
パケット再生可能性判定部703は、サブパケット選別部701が新たなサブパケットをサブパケットバッファ702に書き込む度にサブパケットバッファ702をスキャンし、パケット再生の可能性を判定する。すなわち、9個のバッファの内、8個にデータが入っていればパケットは再生可能である。パケット再生可能性判定部703がパケットを再生可能と判断すると、パケット再生部704は直ちにサブパケットバッファ702からサブパケットを取り出して、パケットを再生し、パケットバッファ705に書きこむ。パケットバッファ705の内容はアプリケーションから随時読み出される。
【0078】
第5の実施の形態によれば、受信側のステーションは、パケットが再生可能になった段階で冗長なパケットの到着を待たず即座に再生するため、システム全体の応答速度を高めることができる。
【0079】
(第6の実施の形態)
本第6の実施の形態では、第1の実施の形態の図1におけるパケット分解手段103と訂正データ計算手段104を一体化してパケットセット生成手段とし、図2におけるステップ207のサブパケットへの分解処理において、サブパケットへの分解と訂正データの計算を同時に行ない、UDP/IPプロトコルスタック105へサブパケットを送る時、短い時間遅延を入れる。
【0080】
図8は、パケット分解処理と訂正データ計算処理を示すフローチャートである。sbufは、アプリケーションから送られてきたパケットデータの入るバッファを表す。まずステップ801で処理が開始されると、ステップ802で、sbufを先頭から切り出して8個のサブパケットに分解するため、パケットの長さlength(sbuf)を8で割り、個々のサブパケットの長さslenを計算する。ここでceil(x)は、xより小さくない最小の整数をとる関数である。次にステップ803で、訂正データcbufの初期値として、sbufの先頭からslenオクテットをcbufに入れる。そしてステップ804で、sbufの先頭からslenオクテットをUDP/IPプロトコルスタック105に送る。
【0081】
この後ステップ805で、0.0001秒(100マイクロ秒)処理をスリープし、サブパケット番号を表すカウンタiを2として、次のサブパケットの切り出しを行なう以下のループに入る。このループは、ステップ806で、終了条件i>8を満たすまで繰り返される。
【0082】
ステップ807で、i番目のサブパケットに当たるsbufの(i-1)*slen+1番目からi*slen番目のデータとcbufとの排他的論理和を計算し、ステップ808で、このデータをUDP/IPプロトコルスタック105に送る。そしてステップ809で、0.0001秒処理をスリープし、iをカウントアップしてループの先頭であるステップ806に戻る。
【0083】
ステップ806でiが8を超えたら、ステップ810で、訂正データcbufをUDP/IPプロトコルスタック105に送り、ステップ811で処理を終了する。なお、ステップ804,808,810でデータをUDP/IPプロトコルスタック105に送る時は、パケット識別子、サブパケット番号を添付することは言うまでもない。
【0084】
以上の様に、サブパケットおよび訂正パケットをUDP/IPプロトコルスタック105に送る時に時間遅延を設けることで、ネットワークインタフェース106が伝送路107にEthernetフレームを送信する際、時間間隔ができる。このため、ネットワークに数十個の送信ステーションが接続されている場合でも、各ステーションからの送信が時間的に集中する可能性が減ることから、Ethernetフレームが衝突する可能性が減少し、結果的にサブパケットがコリジョンアウトで喪失する可能性を減少させることができる。
【0085】
なお、上記の実施の形態ではパケットセット生成手段はサブパケットをUDP/IPプロトコルスタックに送ったあと、定められた時間スリープしたが、スリープ時間をランダムにし、フレームの送出時間をずらす方法も考えられる。また、図8の処理では明示的にスリープしているが、サブパケットの切り出しと訂正データの計算に必要な時間を遅延時間とする方法も考えられる。
【0086】
第6の実施の形態によれば、Ethernetのコリジョンアウトが発生する確率を下げ、システム全体の信頼性を高めることができる。
【0087】
(第7の実施の形態)
第1の実施の形態においては、アプリケーションから送られてくるデータパケットを8個のサブパケットと訂正パケットに分解したが、データパケットの長さが短い場合に8個に分割すると伝送路に短いEthernetフレームが多数送出されることになる。Ethernetの伝送効率は多数の短いフレームが伝送されると悪化することが、D. Boggs et.al. “Measured Capacity of an Ethernet: Myths and Reality”, Proceedings of SIGCOMM’88(ACM SIGCOMM, 1988):222-234等に示されている。
【0088】
そこで本第7の実施の形態では、パケット分解手段103は、サブパケットを収めるEthernetフレームの最短長が256オクテットになるようにサブパケットの分割数を調整する。例えば、サブパケットの長さが400オクテットの場合は、0データを入れて256オクテットの長さの二つのサブパケットに分解し、訂正パケットを付加する。
【0089】
さらに、データパケットの長さが248オクテットに満たないとき、サブパケットの分割数が1となるが、この場合、訂正データ計算手段104は訂正データを計算して訂正パケットを生成するのではなく、元のデータパケットの複製を作ることでデータを二重化する。
【0090】
第7の実施の形態によれば、短いパケットの分割による伝送路の伝送効率の低下を防ぐことができる。
【0091】
(第8の実施の形態)
図9は、本発明の第8の実施の形態に係るデータ伝送方式を示すブロック図である。図9において図1,図4〜図6と同一な部分には同符号を付してある。
【0092】
図9において、ネットワーク健全性監視手段901は、パケット再生手段111から、受信したパケット数とサブパケット喪失数を入力する。そして、1時間毎にサブパケット喪失数を受信パケット数で割った喪失割合を計算し、喪失割合がそれまでの平均から増加した場合は、ネットワークの健全性に問題があると判定し、警報を発する。
【0093】
第8の実施の形態によれば、ネットワークの健全性を常時監視し、例えば伝送路の劣化によってネットワークの信頼性が徐々に低下するような現象を検出することで、劣化が進行する前に補修することが可能となる。
【0094】
(第9の実施の形態)
図10は、本発明の第9の実施の形態に係るデータ伝送方式を示すブロック図である。図10において図1,図4〜図6,図9と同一な部分には同符号を付してある。
【0095】
図10では、ステーションA101とステーションB108は、それぞれ異なる伝送路107と1002に接続され、伝送路107と1002はゲートウェイ1001によって接続されている。また、伝送路107と伝送路1002には、図10には図示していない数十個のステーションが接続されている。したがって、ステーションA101から送信されたデータは、伝送路107あるいは伝送路1002で喪失する可能性がある。
【0096】
ゲートウェイ1001は、ステーションA101からステーションB108に送られたデータを中継するが、内部にデータ受信用のネットワークインタフェース1003、UDP/IPプロトコルスタック1004、パケット再生手段1005、タイマー1006を持ち、これらはステーションB108のネットワークインタフェース109、UDP/IPプロトコルスタック110、パケット再生手段111、タイマー112と同様に働きパケットを再生する。
【0097】
また、ゲートウェイ1001は、送信用にパケット分解手段1007、訂正データ計算手段1008、UDP/IPプロトコルスタック1009、ネットワークインタフェース1010を持っており、それぞれステーションA101のパケット分解手段103、訂正データ計算手段104、UDP/IPプロトコルスタック105、ネットワークインタフェース106と同様に働く。
【0098】
ゲートウェイ1001では、伝送路107から受信したサブパケットを一旦パケットに再生し、再びサブパケットに分解して伝送路1002に送出するため、伝送路107でサブパケットまたは訂正パケットの喪失があっても、伝送路1002には喪失したサブパケットまたは訂正パケットが復元されて送出される。
【0099】
第9の実施の形態によれば、ゲートウェイで結ばれた二つの伝送路を介して流れるデータの信頼性を高めることができる。
【0100】
(第10の実施の形態)
第1の実施の形態では、アプリケーション群A102から送られてくるパケットを均等に8個に分解し、訂正パケットを付加したが、パケットの中のデータには重要性の高いものとそうでないものがある。
【0101】
そこで、予め重要性の高いデータをパケットの最初の方に配置し,これらがサブパケット番号1から4のサブパケットに入るようにする。訂正データ計算手段104では、1番目から8番目までのサブパケットに対して訂正パケットを計算する以外に、重要性の高い1番目から4番目のサブパケットに対して第2の訂正パケットを生成する。
【0102】
第10の実施の形態によれば、重要度の高いデータに対し、さらに高い信頼性を保証することができる。
【0103】
なお、本発明は上記各実施の形態のみに限定されず、要旨を変更しない範囲で適宜変形して実施できる。
【0104】
【発明の効果】
本発明のデータ伝送方式によれば、ネットワークとしてスター型のEthernet、あるいはバス型Ethernetを想定し、衝突による伝送データの遅延、あるいはコリジョンアウトによるデータの喪失の可能性がある場合でも、制限時間内での高い確率のデータ伝送を保証することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係るデータ伝送方式を示すブロック図。
【図2】本発明の第1の実施の形態に係るパケット分解手段におけるサブパケットへの分解処理を示すフローチャート。
【図3】本発明の第1の実施の形態に係る訂正データの具体的な計算方法を示す図。
【図4】本発明の第2の実施の形態に係るデータ伝送方式を示すブロック図。
【図5】本発明の第3の実施の形態に係るデータ伝送方式を示すブロック図。
【図6】本発明の第4の実施の形態に係るデータ伝送方式を示すブロック図。
【図7】本発明の第5の実施の形態に係るパケット再生手段111の内部処理を示すブロック図。
【図8】本発明の第6の実施の形態に係るパケット分解処理と訂正データ計算処理を示すフローチャート。
【図9】本発明の第8の実施の形態に係るデータ伝送方式を示すブロック図。
【図10】本発明の第9の実施の形態に係るデータ伝送方式を示すブロック図。
【図11】従来のプラントにおけるスター型ネットワークの構成概念を示す図。
【符号の説明】
101…ステーションA
102…アプリケーション群A
103…パケット分解手段
104…訂正データ計算手段
105…UDP/IPプロトコルスタック
106…ネットワークインタフェース
106a…ネットワークインタフェース
107…伝送路
107a…伝送路
108…ステーションB
109…ネットワークインタフェース
109a…ネットワークインタフェース
110…UDP/IPプロトコルスタック
111…パケット再生手段
112…タイマー
112a…タイマー
113…アプリケーション群B
114…クロック
701…サブパケット選別部
702…サブパケットバッファ
703…パケット再生可能性判定部
704…パケット再生部
705…パケットバッファ
901…ネットワーク健全性監視手段
1001…ゲートウェイ
1002…伝送路
1003…ネットワークインタフェース
1004…UDP/IPプロトコルスタック
1005…パケット再生手段
1006…タイマー
1007…パケット分解手段
1008…訂正データ計算手段
1009…UDP/IPプロトコルスタック
1010…ネットワークインタフェース[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a data transmission system for a network used in a power plant, an industrial plant, or the like that guarantees data transmission within a predetermined time with a high probability.
[0002]
[Prior art]
FIG. 11 is a diagram illustrating a configuration concept of a star network in a conventional plant. In monitoring control in power plants, industrial plants, etc., data measured by sensors such as pressure and temperature, equipment status signals, etc. are collected at each
[0003]
In plant monitoring and control, various types of transmission data are required to be transmitted within a predetermined time. In such a field, a token passing system has been used as a network transmission system in order to guarantee data transmission within a certain period of time. In the token passing method, special data called a token is successively transferred within a time limit between stations that transmit data, and only the station that receives the token has the right to transmit data. Since each station can hold a token only for a limited time, the token goes around all stations within a certain time. In addition, since only the station holding the token transmits data and the other stations receive it, data transmission within a certain time around the token is guaranteed.
[0004]
On the other hand, Ethernet, which is widely used mainly for office use, is cheaper than a token-passing network despite its high performance. The currently popular Ethernet has a transmission capacity of 10 Mbps to 100 Mbps, and has sufficient transmission capacity for process control.
[0005]
[Problems to be solved by the invention]
Ethernet originally has a mechanism in which transmission can be started at an arbitrary time by detecting that a transmission line is free at a plurality of stations connected to a single transmission line. However, since the signal speed transmitted through the transmission line is finite, a plurality of stations may start transmission in a very short time. To solve this problem, Ethernet has a mechanism to detect signal collision. When a station that started transmission detects a collision with another station's transmission, it stops transmission and puts a random delay time. The system starts transmission again. Such an Ethernet communication mechanism is called Carrier Sense Multiple Access with Collision Detection (CSMA / CD).
[0006]
By adopting CSMA / CD, Ethernet achieves high transmission efficiency, but if multiple transmissions are concentrated in a short time, collisions are expected to overlap. In Ethernet, the maximum number of retransmissions due to a collision is set to 16 times, and if data cannot be transmitted within 16 times, the data is discarded. This is called collision out.
[0007]
Even if the transmission capacity of the system is designed with a sufficient margin, collisions and collision-outs occur randomly and cannot be completely avoided. The presence of data delays and collision-outs due to collisions are obvious obstacles when Ethernet is applied to process control.
[0008]
One solution to these problems is to use full-duplex Ethernet. In full-duplex Ethernet, a star-type transmission line is used, and a device called a switching hub is placed at the center. Each station and the switching hub are connected to each other by an independent full-duplex line, and a buffer memory for temporarily storing transmission data is placed in the switching hub. In such full-duplex Ethernet, collision can be avoided if an appropriate data transmission amount is set. This is because each station is connected to the switching hub by a dedicated line, so there is no collision, and even when multiple stations transmit data to a single station at the same time, one data is stored in the buffer memory in the switching hub. It is because it can be kept. However, the switching hub is more expensive than the widely used repeater hub.
[0009]
As another solution to collision and collision-out, data reliability can be increased by multiplexing data. For example, the probability that data cannot be transmitted within the time limit is 10 -Four If a system that always transmits the same data twice with a network configuration of about 10%, the probability that data cannot be transmitted is 10 -Four × 10 -Four = 10 -8 It might be a very low probability. However, in this method, the amount of data flowing through Ethernet is doubled, so the probability of collision and collision out for one transmission also increases, and the probability that data cannot be transmitted within the time limit is 10 -Four It is also possible to increase it.
[0010]
US Patent 5,870,412, "Forward Error Correction System for Packet Based Real Time Media" is a correction data obtained by calculating an exclusive OR of past data together with original data in a data packet transmitted as a stream. It is to be added. In this method, even if there is a loss of a plurality of packets in succession, the lost data can be restored from the corrected data without retransmission. However, this method is intended for stream data such as video and audio, and restoring lost packets requires waiting for arrival of packets to be transmitted in real time, which takes time. In addition, this method assumes transmission of a data stream in a network with low reliability, and is highly resistant to data loss, but also increases the data transmission amount more than twice.
[0011]
An object of the present invention is to provide a data transmission system that guarantees high-probability data transmission within a time limit.
[0012]
[Means for Solving the Problems]
In order to solve the above problems and achieve the object, the data transmission system of the present invention is configured as follows.
[0013]
(1) According to the data transmission method of the present invention, data is transmitted as a datagram including data error check information, and when a data error is detected in the check information, an upper protocol for discarding the datagram and the datagram In a network that employs a lower protocol that divides and transmits a frame so that it fits into a frame with a limited length, Summarizing data output from a plurality of applications into transmission data packets in a predetermined order, A packet decomposing means that divides a transmission data packet into a predetermined number of sub-packets, each having a length equal to or shorter than one frame, and inserting an identifier and a sub-packet number of the data packet in each sub-packet; Correction data generating means for obtaining correction data for each data from the beginning to the end for each decomposed subpacket, and generating a correction packet composed of the correction data; and the subpacket and the correction packet as the higher order A transmission means for transmitting through the protocol and the lower protocol, and the receiving side receives the first one of the sub-packet and the correction packet through the lower protocol and the upper protocol, and within a predetermined time period. Receiving means for receiving the remaining sub-packet and the correction packet; When all of the subpackets are received, a transmission data packet is reproduced from the received subpacket, and when one of the subpackets is lost and the correction packet is received, the received subpacket and the correction are received. Packet reproducing means for reproducing the data packet by reproducing the lost sub-packet from the packet.
[0014]
According to the data transmission system of the present invention, in a network employing a standard protocol, the reliability of data transmission within a predetermined time can be significantly improved without adding special hardware.
[0015]
(2) The data transmission method of the present invention is the method described in (1) above, and the transmitting side transmits data packets at a constant period. Belief The receiving side receives the data packet of the next cycle within a predetermined time from the reception of the data packet of the previous cycle. Ru .
[0016]
According to the data transmission method of the present invention, even when data is transmitted at a constant cycle, it is possible to transmit data with a high probability without adding special hardware within a predetermined time.
[0017]
(3) The data transmission method of the present invention is the method described in (2) above, and the transmission side and the reception side have means for adjusting the time, and the transmission side performs data synchronization at a period synchronized with the combined time. The packet is transmitted, and the receiving side receives the data packet in synchronization with the combined time.
[0018]
According to the data transmission method of the present invention, more accurate reception timing can be set when data is transmitted at a constant period.
[0019]
(4) The data transmission method of the present invention is the method described in (1) above, and a network connecting the transmission side and the reception side is multiplexed, and the transmission side transmits the subpacket and the correction to each network. The packet is transmitted, and the receiving side constructs transmission data from the subpacket and the correction packet received from the multiplexed network.
[0020]
According to the data transmission system of the present invention, the reliability of data transmission can be made extremely high.
[0021]
(5) The data transmission system of the present invention is the system described in (4) above, and the receiving side reconstructs the data packet transmitted from the multiplexed network in the packet reproduction means. A packet configurability determining unit that determines whether or not the subpacket and the correction packet necessary for the reception are received, and the packet configurability determining unit determines that the data packet is reconfigurable At that time, it immediately composes the data packet.
[0022]
According to the data transmission system of the present invention, the receiving side reproduces immediately without waiting for the arrival of a redundant packet when the packet becomes reproducible, so that the response speed of the entire system can be increased.
[0023]
(6) The data transmission method of the present invention is the method described in (1) above, and the transmitting side transmits the subpacket at a time interval when transmitting the subpacket and the correction packet.
[0024]
According to the data transmission method of the present invention, it is possible to reduce the probability of network collision out and increase the reliability of the entire system.
[0025]
(7) The data transmission method of the present invention is the method described in (1) above, and the number of subpackets is adjusted according to the length of the transmission data packet.
[0026]
According to the data transmission system of the present invention, it is possible to prevent a decrease in transmission efficiency of a transmission line due to short packet division.
[0027]
(8) The data transmission method of the present invention is the method described in (1) above, and the number of packets received from the packet reproducing means and the number of subpacket losses are input, and the number of subpacket losses relative to the number of packets is lost. The network health monitoring means for calculating the rate and monitoring the health of the network from the lost rate is used.
[0028]
According to the data transmission method of the present invention, the health of the network is constantly monitored, for example, by detecting a phenomenon in which the reliability of the network gradually decreases due to the deterioration of the transmission path, repairing before the deterioration progresses It becomes possible to do.
[0029]
(9) The data transmission method of the present invention is the method described in (1) above, and The first transmission path is connected to the transmission means on the transmission side and the second transmission path is connected to the reception means on the reception side. Having gateway means for transmitting data; The gateway means receives the first one of the subpacket and the correction packet from the transmission side through the lower protocol and the upper protocol, and then remains the subpacket and the correction within a predetermined time. Second receiving means for receiving a packet, and when all of the sub-packets are received, a transmission data packet is reproduced from the received sub-packets, and one of the sub-packets is lost and the correction packet is received. A second packet reproducing means for reproducing the data packet by reproducing the lost subpacket from the received subpacket and the correction packet. .
[0030]
According to the data transmission system of the present invention, it is possible to improve the reliability of data flowing through two transmission paths connected by a gateway.
[0031]
(10) The data transmission method according to the present invention is the method described in (1) above, and a second correction packet is generated for a subpacket including highly important data among the subpackets. .
[0032]
According to the data transmission method of the present invention, it is possible to guarantee higher reliability for highly important data.
[0033]
DETAILED DESCRIPTION OF THE INVENTION
(First embodiment)
FIG. 1 is a block diagram showing a data transmission method according to the first embodiment of the present invention. FIG. 1 shows data transmission from the application group A102 of the station A101 connected to the
[0034]
The
[0035]
FIG. 2 is a flowchart showing the decomposition processing into subpackets in the packet decomposition means 103. First, when processing is started in
[0036]
plen represents the length of pbuf in units of octets. Each subpacket is assigned a packet identifier of 3 octets and a subpacket number of 1 octet. Thus, in order for a subpacket to fit in an Ethernet frame of 1500 octets, the length of the data is 8 octets in the UDP header added by the UDP / IP protocol stack from the data length 1500 octets carried by the Ethernet frame, and It is 1468 octets minus 20 octets in the IP header, 3 octets in the packet identifier, and 1 octet for the subpacket number. Therefore, the maximum length that can be decomposed into 8 subpackets at a time is 1468 × 8 = 11744 octets.
[0037]
In
[0038]
The decomposition into subpackets in
[0039]
The set of eight subpackets configured as described above is sent to the correction data calculation means 104. The correction data calculation means 104 calculates a parity bit from the head bit of each subpacket and uses it as correction data. Since the length of the correction data is the same as that of the sub-packet, a correction packet composed of the correction data is formed and the sub-packet number is 9.
[0040]
[Expression 1]
[0041]
The subpacket and the correction packet constitute one packet set, and are sent to the UDP /
[0042]
The transmitted Ethernet frame is transmitted to the
[0043]
(1) Frames arrived in perfect form within the expected time
(2) Frame in which an error occurred in data
(3) Frames arrived after the expected time due to collision
(4) Frames that did not reach due to collision out
Except for the case (4), the user datagram is extracted from the frame received by the
[0044]
When the user datagram arrives at the UDP /
[0045]
If the packet reproducing means 111 has received all of the first to eighth subpackets within the time limit, the packet reproducing means 111 reproduces the original packets from these subpackets so that the
[0046]
[Expression 2]
[0047]
Using the data of the third subpacket calculated as described above, the original packet is reproduced so that the
[0048]
If the
[0049]
In the first embodiment, exclusive OR is used to calculate correction data. However, as another calculation method, the k-th word total of each subpacket is divided by the maximum number of words that can be represented. The remainder can also be used.
[0050]
According to the first embodiment, in the network using the standard UDP / IP protocol stack as in the standard Ethernet, the reliability of data transmission within a predetermined time is added to the special hardware. It is expected from the following evaluation that it can be greatly improved without any.
[0051]
Let P be the probability that a sub-packet or correction packet will not reach from the packet decomposing means 103 to the packet reproducing means 111 (this is almost equal to the loss rate of the Ethernet frame). The probability that the original packet cannot be reproduced by the
[0052]
[Equation 3]
[0053]
For example, if P is 1 / 10,000, the value of the above equation (3) is 3.6 / 10,000, and if P is 1 / 100,000, the value of the above equation (3) is 3.6 billion. Thus, data can be transmitted with a very high probability within a predetermined time.
[0054]
(Second Embodiment)
FIG. 4 is a block diagram showing a data transmission method according to the second embodiment of the present invention. In FIG. 4, the same parts as those in FIG.
[0055]
In FIG. 4, the
[0056]
The packet decomposing means 103, the correction data calculating means 104, the UDP /
[0057]
The packet reproduction means 111 functions in the same manner as in the first embodiment, and reproduces the transmitted packet.
[0058]
According to the second embodiment, even when data is transmitted at a fixed period, data can be transmitted with a high probability within a predetermined time without adding special hardware, as in the first embodiment. Can be transmitted.
[0059]
(Third embodiment)
FIG. 5 is a block diagram showing a data transmission method according to the third embodiment of the present invention. In FIG. 5, the same parts as those in FIGS. 1 and 4 are denoted by the same reference numerals.
[0060]
In FIG. 5, a clock 114 is a means for adjusting the times of the
[0061]
In the third embodiment, the
[0062]
According to the third embodiment, more accurate reception timing can be set when data is transmitted at a constant period.
[0063]
(Fourth embodiment)
FIG. 6 is a block diagram showing a data transmission method according to the fourth embodiment of the present invention. In FIG. 6, the same parts as those in FIGS. 1, 4 and 5 are denoted by the same reference numerals.
[0064]
FIG. 6 is obtained by duplicating the network by adding the
[0065]
The UDP / IP protocol stacks 105 and 110 of the
[0066]
The correction data calculation means 104 sends to the UDP / IP protocol stack 105 a destination of two IP addresses possessed by the UDP /
[0067]
The network interfaces 109 and 109a send the received packet set to the UDP /
[0068]
If there is no loss or delay, the packet reproducing means 111 will receive two sets of subpackets and correction packets within the time limit. The packet reproducing means 111 selects a necessary subpacket or correction packet from these packet sets and reproduces the packet.
[0069]
In the fourth embodiment, a case where a packet cannot be reproduced is a case where two or more common subpackets or correction packets are lost in two packet sets. This happens with very little probability.
[0070]
According to the fourth embodiment, the reliability of data transmission can be made extremely high. The duplex network is adopted when high reliability is required in preparation for a failure of the
[0071]
In a single network, if the probability that this subpacket or correction packet does not reach from packet decomposing means 103 to packet regenerating means 111 (this is approximately equal to the loss rate of Ethernet frames) is P, packet decomposing in an independent dual network The probability Pd that no subpacket or correction packet reaches from the
[0072]
At this time, the probability that the original packet cannot be reproduced by the packet reproducing means 111 is calculated by the following equation (4) as in the first embodiment.
[0073]
[Expression 4]
[0074]
When P is 1 / 10,000 (when Pd is 1/100 million), the value of the above equation (4) is 3.89 × 10 -15 Even if the data packet is transmitted 10 times per second, the loss of the data packet has a probability of once every 810,000 years.
[0075]
(Fifth embodiment)
FIG. 7 is a block diagram showing internal processing of the packet reproducing means 111 according to the fifth embodiment of the present invention.
[0076]
In FIG. 7, when receiving a subpacket from the UDP /
[0077]
The packet reproduction
[0078]
According to the fifth embodiment, the receiving station reproduces immediately without waiting for the arrival of a redundant packet when the packet becomes reproducible, so that the response speed of the entire system can be increased.
[0079]
(Sixth embodiment)
In the sixth embodiment, the packet decomposition means 103 and the correction data calculation means 104 in FIG. 1 of the first embodiment are integrated into a packet set generation means, and the decomposition into subpackets in
[0080]
FIG. 8 is a flowchart showing packet disassembly processing and correction data calculation processing. sbuf represents a buffer into which packet data sent from the application is stored. First, when processing is started in
[0081]
Thereafter, in
[0082]
In
[0083]
If i exceeds 8 in
[0084]
As described above, by providing a time delay when sending the subpacket and the correction packet to the UDP /
[0085]
In the above embodiment, the packet set generation means sleeps for a predetermined time after sending the subpacket to the UDP / IP protocol stack. However, it is also conceivable to randomize the sleep time and shift the frame transmission time. . In addition, although the process of FIG. 8 explicitly sleeps, there is a method in which the time required for subpacket extraction and correction data calculation is set as a delay time.
[0086]
According to the sixth embodiment, the probability of occurrence of Ethernet collision out can be reduced, and the reliability of the entire system can be increased.
[0087]
(Seventh embodiment)
In the first embodiment, the data packet sent from the application is broken down into 8 subpackets and a correction packet. A large number of frames are transmitted. D. Boggs et.al. “Measured Capacity of an Ethernet: Myths and Reality”, Proceedings of SIGCOMM'88 (ACM SIGCOMM, 1988): 222-234 etc.
[0088]
Therefore, in the seventh embodiment, the packet decomposing means 103 adjusts the number of subpackets so that the shortest length of the Ethernet frame containing the subpackets is 256 octets. For example, if the length of the subpacket is 400 octets, 0 data is put into two subpackets having a length of 256 octets, and a correction packet is added.
[0089]
Furthermore, when the length of the data packet is less than 248 octets, the number of subpacket divisions is 1. In this case, the correction data calculation means 104 does not calculate correction data and generate a correction packet, Duplicate data by making a duplicate of the original data packet.
[0090]
According to the seventh embodiment, it is possible to prevent a reduction in transmission efficiency of a transmission line due to a short packet division.
[0091]
(Eighth embodiment)
FIG. 9 is a block diagram showing a data transmission system according to the eighth embodiment of the present invention. 9, the same parts as those in FIGS. 1 and 4 to 6 are denoted by the same reference numerals.
[0092]
In FIG. 9, the network
[0093]
According to the eighth embodiment, the health of the network is constantly monitored, and for example, a phenomenon in which the reliability of the network gradually decreases due to the deterioration of the transmission path is repaired before the deterioration progresses. It becomes possible to do.
[0094]
(Ninth embodiment)
FIG. 10 is a block diagram showing a data transmission method according to the ninth embodiment of the present invention. In FIG. 10, the same parts as those in FIGS. 1, 4 to 6 and 9 are denoted by the same reference numerals.
[0095]
In FIG. 10,
[0096]
The
[0097]
Further, the
[0098]
In the
[0099]
According to the ninth embodiment, the reliability of data flowing through two transmission paths connected by a gateway can be improved.
[0100]
(Tenth embodiment)
In the first embodiment, the packets sent from the application group A102 are evenly divided into eight and correction packets are added. However, there are data with high importance and data with low importance in the data in the packets. is there.
[0101]
Therefore, highly important data is arranged in advance at the beginning of the packet, and these are included in the subpackets of
[0102]
According to the tenth embodiment, higher reliability can be ensured for highly important data.
[0103]
In addition, this invention is not limited only to said each embodiment, In the range which does not change a summary, it can deform | transform suitably and can implement.
[0104]
【The invention's effect】
According to the data transmission method of the present invention, a star type Ethernet or a bus type Ethernet is assumed as a network, and even if there is a possibility of transmission data delay due to collision or data loss due to collision out, within the time limit. It is possible to guarantee high probability data transmission in
[Brief description of the drawings]
FIG. 1 is a block diagram showing a data transmission method according to a first embodiment of the present invention.
FIG. 2 is a flowchart showing a decomposition process into subpackets in a packet decomposition unit according to the first embodiment of the present invention.
FIG. 3 is a diagram showing a specific calculation method of correction data according to the first embodiment of the present invention.
FIG. 4 is a block diagram showing a data transmission method according to a second embodiment of the present invention.
FIG. 5 is a block diagram showing a data transmission method according to a third embodiment of the present invention.
FIG. 6 is a block diagram showing a data transmission method according to a fourth embodiment of the present invention.
FIG. 7 is a block diagram showing internal processing of a
FIG. 8 is a flowchart showing packet disassembly processing and correction data calculation processing according to the sixth embodiment of the present invention.
FIG. 9 is a block diagram showing a data transmission method according to an eighth embodiment of the present invention.
FIG. 10 is a block diagram showing a data transmission method according to a ninth embodiment of the present invention.
FIG. 11 is a diagram showing a configuration concept of a star network in a conventional plant.
[Explanation of symbols]
101 ... Station A
102 ... Application group A
103: Packet disassembling means
104: Correction data calculation means
105 ... UDP / IP protocol stack
106: Network interface
106a ... Network interface
107: Transmission path
107a ... Transmission path
108 ... Station B
109 ... Network interface
109a ... Network interface
110: UDP / IP protocol stack
111: Packet reproduction means
112 ... Timer
112a ... Timer
113 ... Application group B
114 ... clock
701: Sub-packet selection unit
702 ... Subpacket buffer
703 ... Packet reproducibility determination unit
704 ... Packet playback unit
705 ... Packet buffer
901: Network health monitoring means
1001 ... Gateway
1002 ... Transmission path
1003: Network interface
1004: UDP / IP protocol stack
1005 ... Packet reproduction means
1006 ... Timer
1007: Packet disassembling means
1008 ... Correction data calculation means
1009: UDP / IP protocol stack
1010: Network interface
Claims (10)
送信側は、
複数のアプリケーションから出力されるデータを予め定められた順序で送信データパケットにまとめ、前記送信データパケットを各々が一つのフレームに収まる長さ以下で、かつ予め定められた個数のサブパケットに分割し、各サブパケットに該データパケットの識別子およびサブパケット番号を挿入するパケット分解手段と、
分解された各サブパケット毎に、先頭から最後までの各データに対して訂正データを求め、該訂正データからなる訂正パケットを生成する訂正データ生成手段と、
前記サブパケットと前記訂正パケットを前記上位プロトコルおよび前記下位プロトコルを通じて送信する送信手段を有し、
受信側は、
前記下位プロトコルおよび前記上位プロトコルを通じて前記サブパケットおよび前記訂正パケットの最初の一つを受信してから、予め定められた時間内に残りの前記サブパケットおよび前記訂正パケットを受信する受信手段と、
前記サブパケットが全て受信できた場合は、その受信サブパケットから送信データパケットを再生し、前記サブパケットの一つを喪失し前記訂正パケットが受信できた場合は、受信した前記サブパケットおよび前記訂正パケットから喪失したサブパケットを再現することでデータパケットを再生するパケット再生手段を有することを特徴とするデータ伝送方式。The data is transmitted as a datagram containing data error check information, and if a data error is detected in the check information, the upper protocol that discards the datagram and the datagram fits into a frame with a limited length In a network that employs a lower protocol that divides the data into
The sender is
Data output from a plurality of applications are collected into transmission data packets in a predetermined order, and the transmission data packets are divided into a predetermined number of subpackets that are less than or equal to the length of each frame. Packet disassembling means for inserting the identifier and subpacket number of the data packet in each subpacket;
Correction data generation means for obtaining correction data for each data from the beginning to the end for each decomposed subpacket, and generating a correction packet composed of the correction data;
Transmission means for transmitting the subpacket and the correction packet through the upper protocol and the lower protocol,
The receiving side
Receiving means for receiving the first sub packet and the correction packet through the lower protocol and the upper protocol and then receiving the remaining sub packet and the correction packet within a predetermined time;
When all of the subpackets are received, a transmission data packet is reproduced from the received subpacket, and when one of the subpackets is lost and the correction packet is received, the received subpacket and the correction are received. A data transmission system comprising packet reproduction means for reproducing a data packet by reproducing a lost subpacket from a packet.
前記受信側は、一つ前の周期のデータパケットを受信した時から、定められた時間内に次の周期のデータパケットを受信することを特徴とする請求項1に記載のデータ伝送方式。The transmitting side sends the data packet at a predetermined period,
The receiving side, the data transmission method of claim 1, wherein from the time of receiving the data packet of the previous period, and Turkey to receive data packets of the next period in a defined time .
前記送信側は各ネットワークに、前記サブパケットおよび前記訂正パケットを送信し、
前記受信側は該多重化されたネットワークから受信された該サブパケットおよび該訂正パケットから送信データを構成することを特徴とする請求項1に記載のデータ伝送方式。Multiplexing the network connecting the transmitting side and the receiving side,
The transmission side transmits the subpacket and the correction packet to each network,
The data transmission system according to claim 1, wherein the receiving side configures transmission data from the subpacket and the correction packet received from the multiplexed network.
前記パケット再生手段の内部に、前記多重化されたネットワークから送信されたデータパケットを再構成するのに必要な前記サブパケットおよび前記訂正パケットを受信したか否かを判定するパケット構成可能性判定部を有し、
該パケット構成可能性判定部によって該データパケットが再構成可能と判定された時、直ちに該データパケットを構成することを特徴とする請求項4に記載のデータ伝送方式。The receiving side
A packet configuration possibility determination unit that determines whether the subpacket and the correction packet necessary for reconstructing the data packet transmitted from the multiplexed network are received in the packet reproduction means. Have
5. The data transmission system according to claim 4, wherein the data packet is configured immediately when it is determined by the packet configuration possibility determination unit that the data packet can be reconfigured.
前記サブパケットおよび訂正パケットの送信の際、時間間隔を置いてサブパケットを送信することを特徴とする請求項1に記載のデータ伝送方式。The sender side
The data transmission method according to claim 1, wherein when transmitting the subpacket and the correction packet, the subpacket is transmitted with a time interval.
該ゲートウェイ手段は、
前記送信側から前記下位プロトコルおよび前記上位プロトコルを通じて前記サブパケットおよび前記訂正パケットの最初の一つを受信してから、予め定められた時間内に残りの前記サブパケットおよび前記訂正パケットを受信する第2の受信手段と、
前記サブパケットが全て受信できた場合は、その受信サブパケットから送信データパケットを再生し、前記サブパケットの一つを喪失し前記訂正パケットが受信できた場合は、受信した前記サブパケットおよび前記訂正パケットから喪失したサブパケットを再現することでデータパケットを再生する第2のパケット再生手段を有することを特徴とする請求項1に記載のデータ伝送方式。Gateway means for transmitting data connected to the transmitting means on the transmitting side by a first transmission path and connected to the receiving means on the receiving side by a second transmission path ;
The gateway means includes
Receiving the first sub packet and the correction packet from the transmission side through the lower protocol and the upper protocol, and then receiving the remaining sub packet and the correction packet within a predetermined time. Two receiving means;
When all of the subpackets are received, a transmission data packet is reproduced from the received subpacket, and when one of the subpackets is lost and the correction packet is received, the received subpacket and the correction are received. 2. The data transmission system according to claim 1, further comprising second packet reproducing means for reproducing a data packet by reproducing a lost subpacket from the packet .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000111036A JP4024988B2 (en) | 2000-04-12 | 2000-04-12 | Data transmission method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000111036A JP4024988B2 (en) | 2000-04-12 | 2000-04-12 | Data transmission method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001298480A JP2001298480A (en) | 2001-10-26 |
JP4024988B2 true JP4024988B2 (en) | 2007-12-19 |
Family
ID=18623449
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000111036A Expired - Fee Related JP4024988B2 (en) | 2000-04-12 | 2000-04-12 | Data transmission method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4024988B2 (en) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004320087A (en) * | 2003-04-10 | 2004-11-11 | Nec Corp | Transmission system |
US8826093B2 (en) | 2005-01-19 | 2014-09-02 | Qualcomm Incorporated | Power saving method for coded transmission |
KR100917889B1 (en) | 2006-11-01 | 2009-09-16 | 삼성전자주식회사 | Apparatus and method for wireless communication |
JP2009118244A (en) * | 2007-11-07 | 2009-05-28 | Internatl Business Mach Corp <Ibm> | Technology for transmitting data whose regeneration unit is variable |
JP2009194581A (en) * | 2008-02-14 | 2009-08-27 | Nec Corp | Frame restoration method, frame restoration circuit, and frame restoration program |
JP4752898B2 (en) * | 2008-11-14 | 2011-08-17 | オンキヨー株式会社 | CONTENT DISTRIBUTION SYSTEM, RECEPTION DEVICE, AND REPRODUCTION PROGRAM |
US8265099B2 (en) * | 2008-12-22 | 2012-09-11 | Gn Resound A/S | Error correction scheme in a hearing system wireless network |
-
2000
- 2000-04-12 JP JP2000111036A patent/JP4024988B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001298480A (en) | 2001-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5631905A (en) | Communications network control method | |
Bux | Token-ring local-area networks and their performance | |
KR100378148B1 (en) | 802.3 Medium Access Control and Associated Signaling Scheme for Full-duplex Networks | |
EP1432203B1 (en) | Low latency digital audio over packet switched networks by setting buffer size at receiver | |
JP3512755B2 (en) | Communication system, communication device, and communication system using this communication device | |
US9106595B2 (en) | Frame transmission and communication network | |
GB2332128A (en) | Arrangement for transmitting packet data segments from a media access controller across multiple physical links | |
US5740373A (en) | Packet switching system having communication control unit for sending acknowledgment to the source upon receiving the receive response data associated with the last cell | |
EP2052484B1 (en) | Transient analysis of packet queuing loss in a broadcast network | |
US4566098A (en) | Control mechanism for a ring communication system | |
JP2004320785A (en) | Testing apparatus for network communication and method | |
US20070286211A1 (en) | Packet relaying apparatus with payload reconstruction function | |
US5568469A (en) | Method and apparatus for controlling latency and jitter in a local area network which uses a CSMA/CD protocol | |
US6741566B1 (en) | Remote management ethernet network and device | |
WO2003102804A1 (en) | Testing device | |
US20030179752A1 (en) | Reliable transport of TDM data streams over packet networks | |
JP3277694B2 (en) | Communication method | |
JP4024988B2 (en) | Data transmission method | |
EP0382668B1 (en) | Method for enhancing frame utilization in a CSMA/CD communication | |
CN109412968B (en) | Redundant communication receiving management system and method for time-triggered Ethernet end node | |
JPH0787099A (en) | Error control method in atm network | |
Willig | Analysis of the PROFIBUS token passing protocol over wireless links | |
RU2431234C2 (en) | Method of transmitting data units with dynamic boundary | |
JP7316978B2 (en) | Packet timing generator, packet timing reproducer and packet data transmission method | |
US7764624B2 (en) | Methods and devices for preventing protocol stalling |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050906 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070405 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070508 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070706 |
|
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: 20071002 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20071004 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101012 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111012 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111012 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121012 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131012 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |