(57)【要約】【課題】送信周期を調整して、中継処理と自ノードの送信処理の衝突を減らし、フレームの廃棄を少なくして、高速大容量通信が可能なリング型ネットワークシステムを得る。【解決手段】パケット送信／受信ノード１００−１は、宛先アドレスと送信元アドレスを自ノードアドレスとし、リング内累積遅延を計算できるようにリング内累積遅延領域を設けたフレームを、リング型ネットワークに送信し、各中継ノードで遅延を加算して、この遅延が加算されたフレームを受信し、この累積遅延に基き、マージンを加算して自ノードの送信周期を決定するようにした。【選択図】図１
2007306542.tif 000002
【特許請求の範囲】
【請求項１】
複数のノードが伝送路を介してリング状に接続されてリング型ネットワークを構成し、各ノードが各自の送信周期で非同期にフレームを送信するリング型ネットワークシステムにおいて、上記ノードは、宛先アドレスと送信元アドレスを自ノードとする周回フレームを低周期で送信し、上記周回フレームの送信から受信までの遅延に基き、上記フレームが上記リング型ネットワークを一周するときの周回遅延量を把握し、この把握した周回遅延量に基き、上記送信周期を決定することを特徴とするリング型ネットワークシステム。
【請求項２】
複数のノードが伝送路を介してリング状に接続されてリング型ネットワークを構成し、各ノードが各自の送信周期で非同期にフレームを送信するリング型ネットワークシステムにおいて、上記ノードは、他ノードからのフレームを中継する度に中継したフレーム数を上記送信周期の前半と後半とでカウントする中継処理カウンタを有し、上記フレームが上記リング型ネットワークを一周するときの周回遅延量に基き、上記送信周期を決定するとともに、上記中継処理カウンタの上記送信周期の前半と後半の上記カウント数に応じて自ノードの送信タイミングを調整することを特徴とするリング型ネットワークシステム。
【請求項３】
上記ノードは、上記周回フレームの送信に当たり、自ノードの優先度及び優先度毎のパケット衝突数を付加し、この優先度が付加された周回フレームを中継する他ノードは、送信するフレームと上記中継する周回フレームが競合する度に自身の優先度に対応する優先度のパケット衝突数をカウントアップして上記周回フレームを中継すると共に、各ノードは上記周回フレームを受信したとき、上記優先度毎のパケット衝突数に応じて上記送信周期を増減することを特徴とする請求項１記載のリング型ネットワークシステム。
【請求項４】
上記ノードは、上記周回フレームに他ノードの上記送信周期を増減する情報を付加し、この周回フレームを受信した上記他ノードは、上記情報に応じて上記送信周期を増減することを特徴とする請求項１または請求項３記載のリング型ネットワークシステム。
【請求項５】
複数のノードが伝送路を介してリング状に接続されたリング型ネットワークを構成し、各ノードが非同期にフレームを送信するリング型ネットワークシステムにおいて、
上記各ノードは、宛先アドレスと送信元アドレスを自ノードとする周回フレームを送信し、他ノードが送信元となる上記周回フレームが上記他ノードによって送信されてから自ノードで中継するまでの中継遅延時間を計算する中継遅延計測部を備え、
上記中継遅延計測部により計算された中継遅延時間が最も短い他ノードを認識し、この認識された他ノードが送信元となる上記周回フレームを中継した後に、自ノードが送信元となる上記周回フレームを送信するように自ノードの送信タイミングを決定することを特徴とするリング型ネットワークシステム。
【請求項６】
複数のノードが伝送路を介してリング状に接続されたリング型ネットワークを構成し、各ノードが非同期にフレームを送信するリング型ネットワークシステムにおいて、
上記各ノードは、宛先アドレスと送信元アドレスを自ノードとする周回フレームを送信し、上記周回フレームを自ノードで中継するときの中継順序を記憶する中継処理トレース部を備え、
上記中継処理トレース部により記憶された上記中継順序に基づき、自ノードが送信元の周回フレームの直前に中継した周回フレームの送信元の他ノードを認識し、この認識した他ノードが送信元の上記周回フレームを中継した後に、自ノードが送信元の上記周回フレームを送信するように自ノードの送信タイミングを決定することを特徴とするリング型ネットワークシステム。
【請求項７】
上記自ノードの送信タイミングが決定される前の自ノードの送信周期を定めた送信周期パラメータ、及びこの送信周期パラメータで定められた上記自ノードの送信周期を超える時間まで、上記認識された他ノードが送信元となる上記周回フレームを受信しないことを計測するタイムアウト計測部を備え、
上記タイムアウト計測部により、上記自ノードの送信周期を超える時間まで、上記認識された他ノードが送信元となる上記周回フレームを受信しなかったときは、自ノードが送信元となる上記周回フレームを送信することを特徴とする請求項５または請求項６記載のリング型ネットワークシステム。
【請求項８】
上記中継遅延計測部によって計算された上記中継遅延時間に基づき設定された所定時間を超えるまで、上記認識された他ノードが送信元となる上記周回フレームを受信しないことを計測するタイムアウト計測部を備え、
上記タイムアウト計測部により、上記所定時間を超えるまで、上記認識された他ノードが送信元となる上記周回フレームを受信しなかったときは、自ノードが送信元となる上記周回フレームを送信することを特徴とする請求項５記載のリング型ネットワークシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、複数の通信ノードが伝送路を介してリング状に接続されてデータ通信を行うリング型ネットワークシステムに関し、とくにフレーム送信する際の送信周期の決定に関するものである。
【背景技術】
【０００２】
従来のリング型ネットワークシステムにおいては、リング状に接続された機器が自ノードの送信周期タイミングで通信フレームを送出していた。
例えば、特許文献１に示されたものや、物理層にＩＥＥＥ８０２．３が使用可能なリング型ネットワークとしてＩＥＥＥ８０２．１７で規格化されたＲＰＲ（Ｒｅｓｉｌｉｅｎｔ  Ｐａｃｋｅｔ  Ｒｉｎｇ）がある。ＲＰＲについては非特許文献１に簡易に紹介されている。
【０００３】
【特許文献１】特開平８−７０３１２号公報（第５〜９頁、図１）
【非特許文献１】Ｏｐｔｃｏｍ、２００５年２月号／３月号
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来のリング型ネットワークシステムでは、自ノードの送信周期タイミング（送信周期は固定）で通信フレームを送出するため、全ノードの送出タイミングが非同期となり、通信フレーム衝突による通信遅延が増大し、バッファメモリがオーバした場合は、フレーム廃棄になることもあった。
産業用のネットワークでは、高速大容量通信が必要不可欠であり、且つ通信フレーム衝突時のフレーム廃棄もできる限り避けたいというニーズもあるため、送信周期が固定値（パラメータ）の場合、最大接続ノード数を考慮したマージンの大きい送信周期を選択するしかなく、例えば１Ｇｂｐｓ等の物理層をもつ通信システムでも、その通信帯域を最大限に活用することができなかった。    
【０００５】
特許文献１では、リング型多重伝送方式における送信周期を可変にする方式が記載されているが、技術分野が自動車内であることから消費電流の低減を目的とした送信周期可変方式であり、各ノードがフレーム中の情報により起動か待機かを判別して待機状態になると、フレームの送信周期を延ばすようにしている。
特許文献１は、このように各ノードが待機状態になったとき、送信周期を延ばすようにしたものに過ぎず、中継処理と自ノードの送信処理の衝突をなくして、フレームが廃棄されることを無くするように送信周期を調整するものではなかった。
【０００６】
この発明は、上記のような課題を解決するためになされたものであり、送信周期を調整して、中継処理と自ノードの送信処理の衝突を減らし、フレームの廃棄を少なくして、高速大容量通信が可能なリング型ネットワークシステムを得ることを目的としている。
【課題を解決するための手段】
【０００７】
この発明に係わるリング型ネットワークシステムにおいては、複数のノードが伝送路を
介してリング状に接続されてリング型ネットワークを構成し、各ノードが各自の送信周期で非同期にフレームを送信するリング型ネットワークシステムにおいて、ノードは、宛先アドレスと送信元アドレスを自ノードとする周回フレームを低周期で送信し、周回フレームの送信から受信までの遅延に基き、フレームがリング型ネットワークを一周するときの周回遅延量を把握し、この把握した周回遅延量に基き、送信周期を決定するものである。
【発明の効果】
【０００８】
この発明は、以上説明したように、複数のノードが伝送路を介してリング状に接続されてリング型ネットワークを構成し、各ノードが各自の送信周期で非同期にフレームを送信するリング型ネットワークシステムにおいて、ノードは、宛先アドレスと送信元アドレスを自ノードとする周回フレームを低周期で送信し、周回フレームの送信から受信までの遅延に基き、フレームがリング型ネットワークを一周するときの周回遅延量を把握し、この把握した周回遅延量に基き、送信周期を決定するので、中継処理と送信処理の衝突を減らし、フレーム廃棄を少なくすることができる。
【発明を実施するための最良の形態】
【０００９】
実施の形態１．
以下、この発明の実施の形態１を図を使用して説明する。
図１は、この発明の実施の形態１によるリング型ネットワークシステムを示す構成図である。
図１において、ノード装置１００（１００−１〜１００−ｎ）は、リング状の伝送路に接続され、リング型ネットワークを構成する。図１では、ノード＃１（１００−１）が伝送路内での周回フレームの送信／受信ノードとして動作する。
【００１０】
図２は、この発明の実施の形態１によるリング型ネットワークシステムの伝送路上の周回フレームのフォーマットを示す図である。
図２において、ＩＥＥＥ８０２．３の物理ヘッダとＲＰＲ（ＩＥＥＥ８０２．１７）のＲＰＲヘッダを使用した例を示す。本発明では、周回フレームには、ＲＰＲヘッダ内の宛先アドレスと送信元アドレスのいずれにも自ノードのアドレスを入れ、ＲＰＲヘッダ内に周回フレームを示す種別を入れる。ノード＃１（１００−１）が送信した周回フレームを、リング周回してノード＃１（１００−１）で受信し、そこでフレーム廃棄する。
【００１１】
図３は、この発明の実施の形態１によるリング型ネットワークシステムのノード装置の内部ブロックを示すブロック図である。
図３において、前ノードからのフレームが入力されるフレーム入力部１１０、入力されたフレームが一時記憶されるバッファメモリ１１１、バッファメモリ１１１のデータをデータ保存メモリ１１８に書き込むメモリ書き込み制御部１１２、自ノードからフレームを出力するフレーム出力部１１３、自ノードの送信フレームと中継フレームを選択する送信選択部１１４、自ノードの送信するフレームを生成するフレーム生成部１１５、データ保存メモリ１１８からデータを読み出すメモリ読み出し制御部１１６、フレーム入力部１１０に入力されたフレームをフレーム出力部１１３に中継するフレーム中継部１１７、送信周期を計測するタイマ部１２０、タイマ値と送信周期パラメータ１２２が合致したときフレームの送信要求を行う送信周期生成部１２１、ノード立ち上げ時の送信周期である送信周期パラメータ１２２を有している。
【００１２】
図４は、この発明の実施の形態１によるリング型ネットワークシステムのリング周回におけるフレームの遅延時間の遷移事例を示すイメージ図である。
図４において、１００は図１におけるものと同一のものである。図４では、送信、中継、受信の各ノードの括弧内にリング内を周回する場合の累積遅延時間が示されている。ノード装置の一つである送信／受信ノードから送信された周回フレームが中継ノードをリング周回して、再び送信／受信ノードに受信されるまでの遅延時間の遷移事例を示している。
【００１３】
図５は、この発明の実施の形態１によるリング型ネットワークシステムのリング周回する場合の各ノード装置の処理タイミングを示す図である。
図５においては、横軸に時間経過を示し、送信／中継／受信ノードの処理時間をそれぞれ横棒で示す。ノード装置の一つである送信／受信ノードから送信された周回フレームが、中継ノードをリング周回して、再び送信／受信ノードに受信されるまでの処理タイミングが示されている。
【００１４】
図６は、この発明の実施の形態１によるリング型ネットワークシステムのノード装置の動作を示すフローチャートである。
【００１５】
次に、動作について説明する。
以下に、各ノードがフレーム送信する際の送信周期の決定方法について説明する。ここで、図１のノード＃１（１００−１）が、伝送路内で周回フレームを低周期で送信するとともに、これを受信するパケット送信／受信ノードとして動作し、このノード＃１（１００−１）が送信周期を決定する場合について説明する。
図１において、パケット送信／受信ノードに設定されたノード＃１（１００−１）は、そのノードの送信周期タイミングに従い、図２のようなフォーマットの周回フレームを低周期で送出し、順次、接続された次ノードに中継していき、送信したノード＃１にフレームが返ってきたら、ノード＃１は、返ってきたフレームを廃棄し、次の周回フレームの送信周期タイミングが来たら、再び周回フレームを送出し、この動作を繰り返す。
【００１６】
この過程の中で、送信周期として、ノード立上げ時には送信周期パラメータ１２２を使用する。そして、自ノードが送信した周回フレームを受信する毎に、その周回フレームがリング周回する遅延時間（リング周回遅延）にマージンを足した送信周期になるように送信周期を更新し、一定時間後には最適な送信周期を決定できるようにする。
【００１７】
また、この過程の中で、リング周回遅延は、送信ノード及び中継ノードから周回フレームが送信される毎に更新される周回フレーム内のリング内累積遅延とノード内初期時間（初期遅延時間）を使って計算される。これは、中継ノードでは、周回フレームを受信した時間を周回フレーム内のノード内初期時間に付加してノード内処理を行い、フレーム出力部１１３で出力する時間からノード内初期時間を引いたノード内処理時間を算出し、周回フレーム内のリング内累積遅延（前回値）にノード内処理時間を足した遅延時間を、次のリング内累積遅延（更新値）に変えてから周回フレームを送信する。送信ノードでは、データ保存メモリ１１８から送信データを読み出し、ノード内処理時間を付加し、出力時にリング内累積遅延を付加する。
【００１８】
次に、送信／受信ノードの動作の詳細を説明する。
図３において、フレーム送信時には、送信周期パラメータ１２２に従い、タイマ部１２０でカウントするタイマ値と逐次比較して、タイマ値と送信周期パラメータ１２２が合致した時に送信周期生成部１２１が送信要求する。この送信要求がある度に、メモリ読み出し制御１１６がデータ保存メモリ１１８から自ノードの送信データを読み出し、周回フレームの場合には、フレーム生成部１１５でリング内初期時間、種別を含むヘッダ等の情報を付加し、送信選択部１１４を経由して、フレーム出力部１１３が、リング内累積遅延を周回フレームに付加して次ノードへ送信する。
【００１９】
フレーム受信時には、フレーム入力部１１０を経由してフレームが入力され、速度調整のために、これを一旦バッファメモリ１１１に溜め込み、メモリ書き込み制御部１１２によりデータ保存メモリ１１８に書き込む。この時、周回フレームは、次ノードに中継することなく廃棄する。また、メモリ書き込み制御部１１２は、周回フレームにあるリング内累積遅延とフレーム入力部１１０で受信してからデータ保存メモリ１１８に書き込むまでのノード内遅延時間を足してから、次の送信周期を決定する（決定方法は後述）。
【００２０】
次に、中継ノードの動作の詳細を説明する。
図３において、前ノードから受信されたフレームは、フレーム入力部１１０を経由し速度調整のために一旦バッファメモリ１１１に溜め込まれ、フレーム中継部１１７が送信選択部１１４に中継要求を出して許可が得られてから、バッファメモリ１１１の通信フレームを、フレーム出力部１１３を経由して次ノードに中継させる。この時、周回フレームのリング内累積遅延は、送信ノードと同様な処理で、フレーム出力部１１３が更新する。
【００２１】
次に、リング周回する周回フレームの遅延時間の遷移事例を説明する。
図４に示すように、例えば送信ノード＃１は、送信処理に２μｓかかり、以降の中継ノード＃２〜＃ｎは、一律３μｓかかるとすると、受信ノード＃１で受信される時には、２６μｓのリング内累積遅延となり、例えば受信処理で４μｓかかるとすると、リング周回遅延は、３０μｓかかることになる。
このようなリング周回遅延を元に、次の送信周期を計算する。
【００２２】
次に、リング周回遅延から送信周期を算出する方法について、図５に基き説明する。
リング周回遅延Ｔｒは、図５のように、
送信時間＋（中継時間×中継ノード数）＋受信時間
により算出されるが、中継ノードで中継処理と送信処理の衝突（送信／中継衝突）があるかないかによって、その時間は一定しない。
そのため、リング周回遅延ＴｒとマージンＴｍを足した時間を送信周期Ｔｓに決定する。このマージンＴｍは、ネットワークシステム固有の数値とするが、例えば最大接続ノード数における全ての中継ノードで送信／中継衝突が発生する最悪ケースで計算した衝突時間を設定する。
【００２３】
次に、図６のフローチャートを用いて、ノード動作について詳述する。
図６では、各ノードでは、受信フレームがあった時の処理と、タイマ値が送信周期になった時の処理がある。これらの二つの処理は、並列実行されるため、受信／中継／送信処理を別々に実行することができる。
図６で、まず、ノードを立ち上げる（ステップＳ１）。次いで、送信周期パラメータ１２２の取得により送信周期の初期設定を行う（ステップＳ２）。次いで、タイマ部１２０を起動する（ステップＳ３）。受信フレームがあれば（ステップＳ４）、バッファメモリ１１１へ書き込み（ステップＳ５）、送信選択部１１４による出力選択で、送信データがなくなるまで待ち（ステップＳ６）、なくなれば、データ保存メモリ１１８に受信データを保存し（ステップＳ７）、受信フレームの中継処理を行う（ステップＳ８）。
ステップＳ４で、受信フレームがなければ、タイマ値が送信周期になったことを確認して（ステップＳ９）現在のタイマ値を取得し（ステップＳ１０）、データ保存メモリ１１８から送信データを読み出し、これを基にしたフレーム生成を行う（ステップＳ１２）。ステップＳ９で、タイマ値が送信周期になっていなければ、タイマ値をインクリメントして（ステップＳ１１）、ステップＳ４に戻る。
【００２４】
ステップＳ８の受信フレームの中継処理に続き、受信フレームが周回フレームであれば、リング内累積遅延の前回値を取得し（ステップＳ１３）、今回のリング内累積遅延が前回のリング内累積遅延より大きい場合は（ステップＳ１４）、送信周期の拡大処理を行って（ステップＳ１５）、ステップＳ４に戻り、前回遅延より大きくない場合には（ステップＳ１４）、送信周期の短縮処理を行って（ステップＳ１６）、ステップＳ４に戻る。
ステップＳ１２の後、ステップ８の中継か、ステップＳ１２の送信かの出力選択を行い（ステップＳ１７）、周回フレームの場合には、リング内累積遅延を追加して（ステップＳ１８）、この周回フレームを出力する（ステップＳ１９）。全データを送信完了したら（ステップＳ２０）、ステップＳ４に戻り、全データを送信完了していなければ、ステップＳ１２に戻る。
【００２５】
実施の形態１によれば、周回フレームを送受信するノードで、リング内累積遅延時間を計算し、送信周期を増減させることにより、通信フレームが流れていない無駄な時間帯を無くし、ネットワーク通信帯域を最大限に活用できるようになる。
【００２６】
実施の形態２．
実施の形態１では、送信周期をリング内周回遅延から計算したが、実施の形態２は、さらに中継処理のパケット数から送信タイミングの位相をずらすことにより、送信／中継衝突回数を減らし、リング内周回遅延を短縮できるようにしたものである。
図７は、この発明の実施の形態２によるリング型ネットワークシステムの送信タイミングの取り方を説明する図である。
図７では、送信半周期Ｔｓ／２毎に中継処理パケット数をカウントし、送信周期の前半周期と後半周期で中継処理パケット数が少ない方に送信タイミングの位相をずらすイメージを示している。
【００２７】
図８は、この発明の実施の形態２によるリング型ネットワークシステムのノード装置の動作を示すフローチャートである。
【００２８】
図９は、この発明の実施の形態２によるリング型ネットワークシステムのノード装置の内部ブロックを示すブロック図である。
図９において、１１０〜１１８、１２０〜１２２は図３におけるものと同一のものである。図９では、フレーム中継部１１７の処理結果を元に中継処理パケット数をカウントする中継処理カウンタ１２３を設けている。
実施の形態２は、中継処理カウンタ１２３を設けて、前半周期と後半周期で少ない方に送信タイミングをずらす指示を送信周期生成部１２１に行う。送信周期生成部１２１は、この指示に従い送信タイミングの位相をずらすようにする。
【００２９】
次に、図８のフローチャートにより、実施の形態２の動作をより詳しく説明する。
送信周期の半周期になる毎に、中継処理カウンタ１２３で逐次計算している中継処理パケット数の累積値を保存し、中継処理カウンタ１２３をクリアすると共に、送信周期が来る毎に、前回保存した累積値（半周期の前半の累積値）と今回の累積値（半周期の後半の累積値）を比較して、半周期の前半のパケット数が多い場合は送信タイミングの位相を進めて（図７で右にずらす）、半周期の後半のパケット数が多い場合は、位相を遅らせる（図７で左にずらす）処理を示している。
【００３０】
図８で、まず、送信周期の初期設定を行う（ステップＳ２１）。このときデフォルト位相を０とする。次いで、タイマ部１２０を起動する（ステップＳ２２）。中継処理カウンタ１２３による中継処理パケット数のカウントを開始する（ステップＳ２３）。
送信周期の半周期になったかどうかにより（ステップＳ２４）、半周期になっていないときは、タイマ値をインクリメントして（ステップＳ２５）、半周期になっているかどうかを判定し（ステップＳ２４）、半周期になったら、中継処理パケット数の累計値を保存すると共に中継処理カウンタ１２３をクリアする（ステップＳ２６）。次いで、タイマ値が送信周期になったかどうかを判定し（ステップＳ２７）、送信周期になっていなければ、ステップＳ２４に戻り、送信周期になっていれば、半周期の前半のパケット数が半周期の後半のパケット数より多いかどうかにより（ステップＳ２８）、多いときは送信タイミングの位相を進め（ステップＳ２９）、多くないときは、送信タイミングの位相を遅らせて（ステップＳ３０）、ステップＳ２４に戻る。
【００３１】
実施の形態２によれば、半周期毎の中継処理パケット数を比較して、送信タイミングを進めるかまたは遅らせるかの調整を行い、中継処理の少ないときに送信し、送信衝突を避けることができる。
【００３２】
実施の形態３．
実施の形態３は、全ノードに優先度を設定し、中継ノードでのパケットの衝突を優先度毎にカウントして、各ノードの送信周期を調整するものである。
図１０は、この発明の実施の形態３によるリング型ネットワークシステムの伝送路上の周回フレームのフォーマットを示す図である。
図１０において、図２の周回フレームに、さらにＲＰＲ／ＭＡＣヘッダに自ノードの優先度を設け、ペイロードに高優先パケット衝突数と、中優先パケット衝突数と、低優先パケット衝突数と（以下、高優先／中優先／低優先パケット衝突数）を設けている。
【００３３】
図１１は、この発明の実施の形態３によるリング型ネットワークシステムのノード装置の内部ブロックを示すブロック図である。
図１１において、１１０〜１１８、１２０〜１２２は図３におけるものと同一のものである。図１１では、自ノード内でのパケットの衝突をカウントし、周回フレームに加算する中継衝突カウンタ１２４と、優先度毎の衝突パケット数の累積数を判断して送信周期を増減させる優先度判定部１２５を設けている。
【００３４】
実施の形態３は、図１０に示すように、周回フレームの中に、自ノードの優先度と、その周回フレームが中継される度に、該当する優先度のパケット数がカウントアップされる高優先／中優先／低優先パケット衝突数を付加する。これらを付加した周回フレームをリング内を周回させ、各ノードは、周回フレームを受信する度に、高優先／中優先／低優先パケット衝突数から、送信周期を増減させるようにする。
これにより、自ノードより優先度の高い通信フレームの送信／中継衝突回数を減らし、リング内周回遅延を短縮すると共に、高優先の通信フレームの廃棄を無くせるようにする（通信フレームの廃棄は、バッファメモリ１１１のデータフルで発生する）。通信フレームの優先度は、ネットワークシステム毎に固有であり、例えばノード単位で優先度を高優先／中優先／低優先に区別し、フレーム生成部１１５が通信フレームに付加する。
【００３５】
次に、図１１を用いてこれについて詳述する。
先ず、送信処理において、フレーム生成部１１５が自ノードの優先度を周回フレームに付加し、高優先／中優先／低優先パケット衝突数を、それぞれ０クリアしてから送信する。
次に、中継ノードにおいて、フレーム中継部１１７が送信選択部１１４で送信処理と競合して、中継処理が待たされる度に、中継衝突カウンタ１２４が自ノードの優先度を参照し、その優先度に該当する優先度のパケット衝突数を、＋１カウントアップして周回フレームに書き戻すようにして、中継を行う。
【００３６】
また、周回フレームの受信時及び中継時には、中継衝突カウンタ１２４は、中継された周回フレームの高優先／中優先／低優先パケット衝突数を優先度判定部１２５に伝えて、その優先度判定部１２５では、高優先／中優先／低優先パケット衝突数を累積する。そして、自ノードの優先度よりも高いパケット衝突数（例えば自ノード優先度が中優先なら高優先は高い）が一定閾値（例えば１秒間に１０，０００パケット）を超えた場合に送信周期を延ばして、自ノードの優先度よりも低いパケット衝突数（例えば低優先）が一定閾値（例えば１秒間に１００パケット）以下になった時に送信周期を短くする処理を行う。
【００３７】
実施の形態３によれば、各ノードに優先度を設け、これにより、中継時のパケット衝突回数を優先度毎にカウントし、各ノードは、これに応じた送信周期を調整することにより、優先度に応じて適切な送信周期とすることができる。
【００３８】
実施の形態４．
実施の形態１、実施の形態３では、送信周期を増減することにより、ネットワークシステムで最適な通信帯域を決定するようにしたが、実施の形態４は、受信ノードの都合により（例えばノード起動時等で他ノードが送信する通信データの更新を早くしたい時など）、あるノードの送信周期を早くしたい場合や遅くしたい場合に、受信ノード側から図１２に示す周回フレームを使って、送信周期を制御できるようにしたものである。
【００３９】
図１２は、この発明の実施の形態４によるリング型ネットワークシステムの伝送路上の周回フレームのフォーマットを示す図である。
図１２において、図１０のフォーマットに加えて、送信周期を制御したい送信ノードを示す送信周期制御ノードアドレスと、送信周期をどれだけ増減させるかを示す送信周期Ｕｐ／Ｄｏｗｎ指示（例えば１０なら＋１０μｓ送信周期を延ばす）をペイロードに設けている。
【００４０】
図１３は、この発明の実施の形態４によるリング型ネットワークシステムのノード装置の内部ブロックを示すブロック図である。
図１３において、１１０〜１１８、１２０〜１２２、１２４、１２５は図１１におけるものと同一のものである。図１３では、受信ノード側で送信ノード側の送信周期を制御する場合に用いる他ノード指示判定部１２６と、送信ノード側で、受信ノード側からの指示を翻訳する他ノード指示翻訳部１２７を設けている。
【００４１】
図１３の他ノード指示判定部１２６で、送信周期を制御したいイベント（例えばノード起動時）を判定し、フレーム生成部１１５に伝えて、そのフレーム生成部１１５で、その送信周期制御ノードアドレスと送信周期Ｕｐ／Ｄｏｗｎ指示を周回フレームに付加して送信する。
中継ノードを経由して受信ノード（送信周期制御ノード）で受信された周回フレームは、他ノード指示翻訳部１２７で、送信周期制御ノードアドレスと送信周期Ｕｐ／Ｄｏｗｎ指示から、送信周期をどのように増減させればよいか決定し、送信周期パラメータ１２２を変更すると共に、送信周期生成部１２１で送信周期を増減制御する。
【００４２】
実施の形態４によれば、受信ノード側から、送信ノード側の送信周期を制御することができる。
【００４３】
実施の形態５．
以下、この発明の実施の形態５について、図１４を基本にし、図２と図１４〜図１７を使用して説明する。
図１４は、この発明の実施の形態５によるリング型ネットワークシステムのリング周回におけるフレームの遅延を示すイメージ図である。
図１４において、ノード装置１００（１００−１〜１００−４）は、リング状の伝送路に接続され、図１のｎ＝４の構成である。ノード＃１（１００−１）が伝送路内でパケット送信／受信ノードとして動作する。
【００４４】
伝送路上を流すフレームのフォーマットは、図２と同じである。ここではイーサネット（登録商標）（ＩＥＥＥ８０２．２）の物理ヘッダとＲＰＲ（ＩＥＥＥ８０２．１７）のＲＰＲヘッダを使用している。本発明では、ＲＰＲヘッダ内の宛先アドレスと送信元アドレスのいずれにも自ノードのアドレスを入れ、あるノード＃１（１００−１）が送信したフレームを、リング周回して送信ノード＃１（１００−１）で受信し、そこでフレーム廃棄する。
【００４５】
図１５は、この発明の実施の形態５によるリング型ネットワークシステムのノード内部ブロックを示すブロック図である。
図１５において、１１０〜１１８、１２０〜１２２は図３におけるものと同一のものである。図１５では、フレームの中継時に、そのフレームが送信されてからの累積遅延時間を計測する中継遅延計測部１２８が設けられている。
【００４６】
図１６は、この発明の実施の形態５によるリング型ネットワークシステムの中継遅延計測内容を示す図である。
図１６において、図１５の中継遅延計測部１２８の内容を示したものである。各ノード＃１〜＃４が、それぞれ、フレームを中継する毎に、そのフレームが送信されてからの遅延時間（累積中継遅延時間）を計算し、保持する。
【００４７】
図１７は、この発明の実施の形態５によるリング型ネットワークシステムのリング周回する場合の各ノード装置の処理タイミングを示す図である。
図１７においては、図１４のノード＃１〜＃４がそれぞれ送信するフレームが中継ノードをリング周回して、再び送信／受信ノードに受信されるまでの処理タイミングを示している。
【００４８】
次に、動作について説明する。
図１４において、パケット送信／受信ノードに設定されたノード＃１（１００−１）は、そのノードの送信周期タイミングに従い、図２に示されたフォーマットのフレームを送出し、順次接続された次ノードに中継していき、送信元のノード＃１にフレームが返ってきたら、ノード＃１は、該フレームを廃棄し、送信周期タイミングが来たら再びフレームを送出し、最初はその動作を繰り返す。
【００４９】
この過程の中で、送信周期タイミングは、ノード立上げ時は送信周期パラメータ１２２を使用するが、各ノードが送信したフレームを中継する毎に、そのフレームが送信されてからの累積遅延時間（累積中継遅延）を計算し、累積中継遅延が最も少ないフレームが全て中継された時に自ノード送信タイミングを生成する中継遅延計測部１２８が、送信周期生成部１２１に送信タイミングを伝達し、送信周期タイミングを最適化する。
【００５０】
上記過程の中で、累積中継遅延を計算する上で元となるリング内累積遅延は実施の形態１同様に計算され、送信／中継ノードからフレームが送信される毎に更新されるフレーム内のリング内累積遅延とノード内初期遅延時間を使って計算される。
すなわち、送信ノードでデータ保存メモリ１１８から読み出すか、中継ノードでフレームを受信した時間をフレーム内のノード内初期時間に付加してノード内処理を行い、フレーム出力部１１３で出力する時間から前記ノード内初期時間を引いたノード内処理時間を算出し、フレーム内のリング内累積遅延（前回値）にノード内処理時間を足した遅延時間を次のリング内累積遅延（更新値）に変えてからフレームを送信する。リング内周回遅延は、フレーム出力部１１３で計算されるが、累積中継遅延はフレーム中継部１１７で同じアルゴリズムで計算される。
【００５１】
次に、送信／受信ノードの動作の詳細を説明する。
図１５において、最初のフレーム送信時には、送信周期パラメータ１２２に従い、タイマ部１２０でカウントするタイマ値と逐次比較して、タイマ値と送信周期パラメータ１２２が合致した時に送信周期生成部１２１が送信要求する。この送信要求がある度に、メモリ読み出し制御部１１６がデータ保存メモリ１１８から自ノードの送信データを読み出し、フレーム生成部１１５でリング内初期時間、ヘッダ等の情報を付加し、送信選択部１１４を経由して、フレーム出力部１１３がリング内累積遅延をフレームに付加して、次ノードへ送信する。
フレーム受信時には、フレーム入力部１１０を経由して入力され、速度調整のために一旦バッファメモリ１１１に溜め込み、メモリ書き込み制御部１１２により、データ保存メモリ１１８に書き込む。
この時、フレームは、次ノードに中継することなく廃棄する。また、メモリ書き込み制御部１１２は、フレームにあるリング内累積遅延とフレーム入力部１１０で受信してからデータ保存メモリ１１８に書き込むまでのノード内遅延時間を足してから、リング内周回遅延を登録するが、本発明では前記リング内周回遅延を使用しない。最初のフレーム送信タイミングは、送信周期パラメータ１２２で決定されるが、時間経過することでフレーム中継処理されると、累積中継遅延に従った送信周期タイミングでフレーム送信することになる。この動作説明は後述する。
【００５２】
次に、中継ノードの動作の詳細を説明する。
図１５において、前ノードから受信されたフレームは、入力部１１０を経由し、速度調整のために一旦バッファメモリ１１１に溜め込まれ、中継部１１７が送信選択部１１４に中継要求を出して許可が得られてから、バッファメモリ１１１のフレームをフレーム出力部１１３を経由して、次ノードに中継させる。この時、リング内累積遅延は、送信ノードと同様な処理でフレーム出力部１１３が更新する。
【００５３】
次に、リング周回するフレームの遅延時間の遷移事例を説明する。
図１４において、例えば送信ノード＃１は、送信処理に２μｓかかり、以降の中継ノード＃２〜＃４は、一律３μｓかかるとすると、受信ノード＃１で受信される時には１１μｓのリング内累積遅延となり、例えば受信処理で４μｓかかるとすると、リング周回遅延は１５μｓかかることになる。このリング内周回遅延を元に、次の累積中継遅延を計算する。
【００５４】
次に、リング周回するフレームの累積中継遅延の遷移事例を説明する。
図１４において、ノード＃２が送信したフレームは、ノード＃３⇒＃４を経由してノード＃１で中継されるため、累積中継遅延は１１μｓとなり、以下同様にノード＃３は、８μｓ、ノード＃４は５μｓになる。
これらの累積中継遅延は、中継部１１７をフレームが通過する度に、実施の形態１のリング内周回遅延と同じアルゴリズムで、中継遅延計測部１２８が計算して、図１６のようなテーブルを生成する。この作成したテーブルを元に累積中継遅延が最も少ないノード＃４から送信されるフレームが到着し、中継した直後（以下、このタイミングを中継後送信タイミングと呼ぶ）、自ノードが送信できることを認識できる。累積中継遅延を元に、次の送信タイミングを計算する。
【００５５】
次に、中継後送信タイミングから送信タイミングを算出する方法について説明する。
図１７において、横軸に時間経過を示し、ノード＃１〜＃４の処理時間をそれぞれ横棒で示す。例えばノード＃１がフレームを送信する場合、最初の送信では送信周期パラメータ１２２に従って送信し、ノード＃２→＃３→＃４を経由して自ノード＃１でフレームは受信後に廃棄される。
以下、ノード＃２〜＃４も同じ処理を行い、全てのノードでフレームの中継処置が行われ、累積中継遅延が登録される。累積中継遅延が登録されれば、中継後送信タイミングにより、自ノードがフレームを送信すべきタイミングを全てのノードが知ることができる。図１７における中継後送信タイミングは、ノード＃１が＃４、ノード＃２が＃１、ノード＃３が＃２、ノード＃４が＃３となる。この時、送信周期生成部１２１は、送信周期パラメータ１２２に設定されている周期内に１回以上の中継後送信タイミングがあった時は、送信周期パラメータ１２２に従う送信要求は無視することにする。
【００５６】
実施の形態５によれば、このようにして、フレームを送受信する各ノードで、累積中継遅延を計算し、中継後送信タイミングを生成させることにより、フレームの送信／中継の衝突を無くして、通信データのゆらぎを無くすだけでなく、送信周期の高速化が図れることにより、ネットワーク通信帯域を最大限に活用できるようにする。
【００５７】
実施の形態６．
実施の形態５では、中継後送信タイミングを累積中継遅延から計算したが、実施の形態６は、送信周期パラメータ１２２で最初に決定した順番通りに、中継後送信タイミングを生成することにより、中継遅延を計算させるという複雑な処理を介することなく、通信データのゆらぎ撲滅と送信周期の高速化を図るようにした。
【００５８】
図１８は、この発明の実施の形態６によるリング型ネットワークシステムのノード内部ブロックを示すブロック図である。
図１８において、１１０〜１１８、１２０〜１２２は図３におけるものと同一のものである。図１８では、中継部１１７の処理結果を元に、中継処理したフレームを時系列で記録する中継処理トレース部１２９を設け、実施の形態５の中継遅延計測部１２８と同じ様に、中継後送信タイミングを生成し、自ノードがフレームを送信する送信タイミングを生成する。
【００５９】
図１９は、この発明の実施の形態６によるリング型ネットワークシステムの中継処理トレース内容を示す図である。
図１９は、図１８における中継処理トレース部１２９の内容を示したものである。各ノードに到着したフレームの送信元のノードを時系列順に記憶している。
【００６０】
図２０は、この発明の実施の形態６によるリング型ネットワークシステムのリング周回する場合の各ノードの処理タイミングを示す図である。
図２０は、図１４において、ノード＃１〜＃４がそれぞれ送信するフレームが中継ノードをリング周回して、再び送信／受信ノードに受信されるまでの処理タイミングを示している。
【００６１】
次に、動作について説明する。
図１８において、最初のフレーム送信時には、送信周期パラメータ１２２に従い、タイマ部１２０でカウントするタイマ値と逐次比較して、タイマ値と送信周期パラメータ１２２が合致した時に送信周期生成部１２１が送信要求する。
ノード＃１〜＃４の送信周期は、それぞれ非同期であるため、中継処理されるフレームの到着順序はランダムである。この到着順序を中継処理トレース部１２９で記録するとともに、送信周期パラメータ１２２に従う送信周期タイミングを知ることにより、自ノードがフレームを送信する直前に中継されるフレームを認識し、このフレームを中継した直後を中継後送信タイミングとして扱う。以下の処理は、実施の形態５と同じである。
【００６２】
次に、中継処理トレース部１２９の処理動作について、図１９を用いて説明する。
中継処理トレース部１２９でトレースする最初と最後は、送信周期生成部１２１が要求する自ノードがフレームを送信するタイミングである（図１９中の時系列順＝１と５）。中継処理トレース部１２９は、ノード＃２〜＃４が送信するフレームを中継した時にその送信元ノードを時系列で記録する。図１９では、ノード＃４⇒ノード＃２⇒ノード＃３の順番で記録された例を示している。
以上のような中継処理トレース部１２９によりトレースされた、フレーム中継される順序は、ノード＃４⇒＃２⇒＃３⇒＃１（自ノード）と認識し、ノード＃１の中継後送信タイミングは、ノード＃３が送信するフレームを中継した直後とする。
【００６３】
次に、中継後送信タイミングから送信タイミングを算出する方法について説明する。
図２０において、横軸に時間経過を示し、ノード＃１〜＃４の処理時間をそれぞれ横棒で示す。
例えばノード＃１がフレームを送信する場合、最初の送信では、送信周期パラメータ１２２に従って送信し、ノード＃２→＃３→＃４を経由して自ノード＃１で、フレームは、受信後に廃棄される。
以下、ノード＃２〜＃４も同じ処理を行い、全てのノードで１回以上のフレームの中継処置が行われ、中継処理トレースが登録される。中継処理トレースが登録されれば、中継後送信タイミングにより、自ノードがフレームを送信すべきタイミングを全てのノードが知ることができる。
図２０における中継後送信タイミングは、ノード＃１が＃３、ノード＃２が＃４、ノード＃３が＃２、ノード＃４が＃１となる。この時、送信周期生成部１２１は、送信周期パラメータ１２２に設定されている周期内に１回以上の中継後送信タイミングがあった時は、送信周期パラメータ１２２に従う送信要求は無視することにする。
【００６４】
実施の形態６によれば、このようにして、フレームを送受信及び中継する各ノードで、中継処理トレースを記録し、中継後送信タイミングを生成させることにより、フレームの送信／中継の衝突を無くして、通信データのゆらぎを無くすだけでなく、送信タイミングの高速化が図れることにより、ネットワーク通信帯域を最大限に活用できるようになる。
実施の形態５と比較して、累積中継遅延を計算するという手間が省略できるため、比較的簡単な処理で実現する長所はあるが、送信順番がランダムになるため、通信帯域で無駄になる時間が発生するという欠点もある。例えば、図２０では、ノード＃４によるフレーム２の送信を、ノード＃３によるフレーム４の送信と、ノード＃１によるフレーム１の送信の間にした方が効率的である。
【００６５】
実施の形態７．
実施の形態５、実施の形態６とも、中継後送信タイミングに従い、安定的に送信している状態で、図１４におけるノード＃４が突然ネットワークから離脱した場合、実施の形態５では、ノード＃１（実施の形態６ではノード＃２）が送信できなくなることが考えられる。実施の形態７は、このような場合に対処するものである。
図２１は、この発明の実施の形態７によるリング型ネットワークシステムのノード内部ブロックを示すブロック図である。
図２１において、１１０〜１１８、１２０〜１２２、１２８は図１５におけるものと同一のものである。図２１では、送信周期パラメータ１２２で設定された送信周期以内に中継後送信タイミングが来なかった時にタイムアウト信号を送信周期生成部１２１に伝達するタイムアウト計測部１３０を設け、予め決められた送信周期以内の送信を保証できるネットワークシステムを提供するようにしたものである。
【００６６】
図２２は、この発明の実施の形態７によるリング型ネットワークシステムのリング周回する場合の各ノード装置の処理タイミングを示す図である。
図２２において、番号は図２０のフレーム番号を示している。図２２は、図１４においてノード＃４がネットワークから離脱した時でも、予め決められた送信周期以内でノード＃１〜＃３が送信停止することなく、それぞれ送信するフレームが中継ノードをリング周回して、再び送信／受信ノードに受信されるまでの処理タイミングである。
ノード＃４が送信するフレームがノード＃１に届かなくなってから、予め決められた送信周期（パラメータによる送信周期Ｔｐ：送信周期の初期値）以内にノード＃１が送信することにより、以後もノード＃１〜＃３で送受信できていることを示している。
【００６７】
実施の形態７によれば、タイムアウト計測部１３０を設け、予め決められた送信周期以内の送信を保証できるネットワークシステムを提供することができる。
【００６８】
実施の形態８．
実施の形態７では、図１４におけるノード＃４が突然ネットワークから離脱した場合でも、送信周期パラメータ１２２で設定された送信周期以内に送受信が復旧できることを述べたが、送受信の復旧時間が長いという問題があった。これに対し、実施の形態８では、送受信の復旧時間を累積中継遅延から最短の送信周期を求め、例えばその最短送信周期の２倍をタイムアウト値とすることにより、送受信の復旧時間を短縮できるようにした。
【００６９】
図２３は、この発明の実施の形態８によるリング型ネットワークシステムのノード内部ブロックを示すブロック図である。
図２３において、１１０〜１１８、１２０〜１２２、１２８、１３０は図２１におけるものと同一のものである。図２３では、実施の形態５における中継遅延計測部１２８から累積中継遅延から最短送信周期Ｔｓを算出するとともに、例えばその最短送信周期Ｔｓの２倍をタイムアウト値として、送信周期パラメータ１２２を自動更新するパラメータ更新部１３１を設け、送受信の復旧時間を短縮できるようにしたものである。
【００７０】
図２４は、この発明の実施の形態８によるリング型ネットワークシステムのリング周回する場合の各ノード装置の処理タイミングを示す図である。
図２４において、番号は図２０のフレーム番号を示している。
図２４は、図１４においてノード＃４がネットワークから離脱した時でも、パラメータ更新部１３１で決められた送信周期以内でノード＃１〜＃３が送信停止することなく、それぞれ送信するフレームが中継ノードをリング周回して、再び送信／受信ノードに受信されるまでの処理タイミングである。
ノード＃４が送信するフレームが届かなくなってから、パラメータ更新部１３１で決められた送信周期以内にノード＃１が送信することにより、以後もノード＃１〜＃３で送受信できていることを示している。
【００７１】
実施の形態８によれば、送受信の復旧時間を累積中継遅延から最短の送信周期を求め、例えばその最短送信周期の２倍をタイムアウト値とすることにより、送受信の復旧時間を短縮できるネットワークシステムを提供することができる。
【図面の簡単な説明】
【００７２】
【図１】この発明の実施の形態１によるリング型ネットワークシステムを示す構成図である。
【図２】この発明の実施の形態１によるリング型ネットワークシステムの伝送路上の周回フレームのフォーマットを示す図である。
【図３】この発明の実施の形態１によるリング型ネットワークシステムのノード装置の内部ブロックを示すブロック図である。
【図４】この発明の実施の形態１によるリング型ネットワークシステムのリング周回におけるフレームの遅延時間の遷移事例を示すイメージ図である。
【図５】この発明の実施の形態１によるリング型ネットワークシステムのリング周回する場合の各ノード装置の処理タイミングを示す図である。
【図６】この発明の実施の形態１によるリング型ネットワークシステムのノード装置の動作を示すフローチャートである。
【図７】この発明の実施の形態２によるリング型ネットワークシステムの送信タイミングの取り方を説明する図である。
【図８】この発明の実施の形態２によるリング型ネットワークシステムのノード装置の動作を示すフローチャートである。
【図９】この発明の実施の形態２によるリング型ネットワークシステムのノード装置の内部ブロックを示すブロック図である。
【図１０】この発明の実施の形態３によるリング型ネットワークシステムの伝送路上の周回フレームのフォーマットを示す図である。
【図１１】この発明の実施の形態３によるリング型ネットワークシステムのノード装置の内部ブロックを示すブロック図である。
【図１２】この発明の実施の形態４によるリング型ネットワークシステムの伝送路上の周回フレームのフォーマットを示す図である。
【図１３】この発明の実施の形態４によるリング型ネットワークシステムのノード装置の内部ブロックを示すブロック図である。
【図１４】この発明の実施の形態５によるリング型ネットワークシステムのリング周回におけるフレームの遅延を示すイメージ図である。
【図１５】この発明の実施の形態５によるリング型ネットワークシステムのノード内部ブロックを示すブロック図である。
【図１６】この発明の実施の形態５によるリング型ネットワークシステムの中継遅延計測内容を示す図である。
【図１７】この発明の実施の形態５によるリング型ネットワークシステムのリング周回する場合の各ノード装置の処理タイミングを示す図である。
【図１８】この発明の実施の形態６によるリング型ネットワークシステムのノード内部ブロックを示すブロック図である。
【図１９】この発明の実施の形態６によるリング型ネットワークシステムの中継処理トレース内容を示す図である。
【図２０】この発明の実施の形態６によるリング型ネットワークシステムのリング周回する場合の各ノードの処理タイミングを示す図である。
【図２１】この発明の実施の形態７によるリング型ネットワークシステムのノード内部ブロックを示すブロック図である。
【図２２】この発明の実施の形態７によるリング型ネットワークシステムのリング周回する場合の各ノード装置の処理タイミングを示す図である。
【図２３】この発明の実施の形態８によるリング型ネットワークシステムのノード内部ブロックを示すブロック図である。
【図２４】この発明の実施の形態８によるリング型ネットワークシステムのリング周回する場合の各ノード装置の処理タイミングを示す図である。
【符号の説明】
【００７３】
１００  ノード、１１０  フレーム入力部、１１１  バッファメモリ、
１１２  メモリ書込み制御部、１１３  フレーム出力部、１１４  送信選択部、
１１５  フレーム生成部、１１６  メモリ読み出し制御部、１１７  中継部、
１１８  データ保存メモリ、１２０  タイマ部、１２１  送信周期生成部、
１２２  送信周期パラメータ、１２３  中継処理カウンタ、
１２４  中継衝突カウンタ、１２５  優先度判定部、
１２６  他ノード指示判定部、１２７  他ノード指示翻訳部、
１２８  中継遅延計測部、１２９  中継処理トレース部、１３０  タイムアウト計測部、
１３１  パラメータ更新部。
【図１】
2007306542.tif 000003
【図２】
2007306542.tif 000004
【図３】
2007306542.tif 000005
【図４】
2007306542.tif 000006
【図５】
2007306542.tif 000007
【図６】
2007306542.tif 000008
【図７】
2007306542.tif 000009
【図８】
2007306542.tif 000010
【図９】
2007306542.tif 000011
【図１０】
2007306542.tif 000012
【図１１】
2007306542.tif 000013
【図１２】
2007306542.tif 000014
【図１３】
2007306542.tif 000015
【図１４】
2007306542.tif 000016
【図１５】
2007306542.tif 000017
【図１６】
2007306542.tif 000018
【図１７】
2007306542.tif 000019
【図１８】
2007306542.tif 000020
【図１９】
2007306542.tif 000021
【図２０】
2007306542.tif 000022
【図２１】
2007306542.tif 000023
【図２２】
2007306542.tif 000024
【図２３】
2007306542.tif 000025
【図２４】
2007306542.tif 000026