以下に添付図面を参照して、この発明にかかる通信ノードおよびトークンリング通信方法の好適な実施の形態を詳細に説明する。なお、これらの実施の形態によりこの発明が限定されるものではない。以下では、各実施の形態に共通するこの発明の構成の概略について説明し、その後に、各実施の形態についての説明を行う。
図1は、この発明にかかるイーサネット(登録商標)ベースのリング状通信システムの概略構成を模式的に示す図である。このリング状通信システムは、イーサネット(登録商標)によって1対1で接続された複数の通信ノード(通信機器、図中、ノードと表記)10−1〜10−4がリング状に接続される構成を有する。ここで、通信ノード10−1〜10−4間を接続するイーサネット(登録商標)ケーブルは、実線で示される図中のリング状通信システム内で右回りにフレームを運ぶ正規系リング1と、点線で示される同じく左回りにフレームを運ぶ待機系リング2との、物理的に2本のリングによって二重化されている。正規系リング1は、リング状通信システムを構成する通信ノード10−1〜10−4とケーブルが正常状態のときに使用されるリングである。また、待機系リング2は、リング状通信システムを構成する通信ノード10−1〜10−4とケーブルのうちいずれかに異常が発生した場合に、後述するようにその異常箇所をループバック処理によってシステムから分離するために使用されるリングである。
図2は、図1のリング状通信システムを構成する通信ノードの構成を模式的に示すブロック図である。この通信ノード10は、隣接する通信ノードとの間でイーサネット(登録商標)ケーブルを接続するための2つのポート11,14と、ポート11,14から受信したフレームの処理や他の通信ノード間での経路確立を行うための処理を行う通信処理部17と、を備える。
ポートは、Aポート(図中、PortAと表記。)11とBポート(図中、PortBと表記。)14の2つのポートから構成される。Aポート11は、正規系リング1からのフレームを受信する正規系入力部12と、待機系リング2へフレームを送信する待機系出力部13と、を備える。また、Bポート14は、正規系リング1へフレームを送信する正規系出力部16と、待機系リング2からのフレームを受信する待機系入力部15と、を備える。
通信処理部17は、Aポート11の正規系入力部で受信した正規系リング1からのフレームを一端読み込み、必要がある場合には所定の処理を行ってからBポート14の正規系出力部から正規系リング1に送信する一方、Bポート14の待機系入力部で受信した待機系リング2からのフレームは読み込まずにそのままAポート11の待機系出力部へと送信する。より具体的には、正常時においてBポート14から出力するフレームに対してのみ、必要がある場合には所定の処理を行い、通信ノード内でBポート14からAポート11に流すれるフレームについては何の処理も行われない。
このようなイーサネット(登録商標)ベースのリング状通信システムが構築されると、システムを構成するそれぞれの通信ノード10−1〜10−4は、自身が属するネットワークがリング状の経路を構成しているかを確認するためのリング確立確認処理を行う。リング確立の確認処理が終了した後、システムを構成するそれぞれの通信ノード10−1〜10−4は、そのネットワークの構成情報を作成するために必要な自通信ノードの局情報を互いに行き渡るように送信し、それぞれの通信ノード10−1〜10−4の位置関係やネットワークを構成する通信ノード10−1〜10−4の台数を含むネットワーク構成情報の作成処理を行う。これによって、イーサネット(登録商標)ベースのリング状通信システムにおいて通常の通信を行うことができる状態となる。以下の実施の形態では、リング確立確認処理とネットワーク構成情報の作成処理が終了したネットワークでの処理を前提とするものである。また、以下の実施の形態では、イーサネット(登録商標)ベースのリング状通信システムが、トークンパッシング方式でデータ通信を行うことを前提とする。
以上が、各実施の形態に共通するイーサネット(登録商標)ベースのリング状通信システムの概要である。以下、この内容に基づいて、各実施の形態の説明を行う。なお、以下の説明では、通信ノード10−1,10−2,10−3,10−4をそれぞれ1局、2局、3局、4局と表記する。
また、この明細書では、説明の簡略化のため、リング状通信システムが4台の通信ノード10−1〜10−4によって構成される場合を例に挙げて説明するが、複数台の通信ノードがイーサネット(登録商標)でリング状に接続される構成のものであれば、この発明の以下の実施の形態を適用することができる。
実施の形態1.
この実施の形態1では、イーサネット(登録商標)ベースのリング状通信システムにおいて、リング確立確認処理とネットワーク構成情報の作成処理が終了した後に、どの通信ノードがトークンリング通信を行うためのトークンフレームを発行するかを決めるトークン発行方法について説明する。
図3は、この実施の形態1による通信ノードの機能構成を模式的に示すブロック図である。この実施の形態1の通信ノード10の通信処理部17は、トークン開始権獲得処理部21と、トークン開始処理部22と、を備える。なお、上述した説明と同一の構成要素には、同一の符号を付して、その説明を省略している。
トークン開始権獲得処理部21は、上述したリング確立確認処理とネットワーク構成情報の作成処理が終了した後に、トークンフレームを発行するためのトークン開始権を獲得するための処理を行う。この実施の形態1では、MAC(Media Access Control)アドレスなどの世界で唯一である(重複が発生しない)固有情報を用いて、ネットワークを構成する通信ノードのうち最も小さい値を有する固有情報が付与された通信ノードに、トークン開始権を与える場合を示す。
この場合には、トークン開始権獲得処理部21は、リング確立の確認処理とネットワーク構成情報の作成処理が終了した後に、自通信ノードの固有情報を埋め込んだトークン開始権獲得フレームを所定の時間間隔で送出する。また、他の通信ノードから受信したトークン開始権獲得フレーム中の固有情報と、自通信ノードの固有情報とを比較し、自通信ノードの方が小さい場合にはトークン開始権獲得フレームを送出し続けるとともに、比較した対象のトークン開始権獲得フレームを破棄する。また、自通信ノードの方が大きい場合にはトークン開始権獲得フレームの送出を停止するとともに、比較した対象のトークン開始権獲得フレームを送出する。自通信ノードのトークン開始権獲得フレームの送出を停止した時点で、その通信ノードは、トークン開始権の獲得ができなかったことを意味する。さらに、トークン開始権獲得処理部21は、自通信ノードのトークン開始権獲得フレームが戻ってきた場合には、トークン開始権を獲得したことを意味し、トークン開始権獲得フレームの送出を停止する。
トークン開始処理部22は、トークン開始権を獲得した場合に、ネットワーク(リング)上のすべての通信ノードに対してトークンフレームの送信を開始することを示すトークン開始通知フレームを所定の時間間隔で送出する。また、自身で送出したトークン開始通知フレームがリングを巡回して戻ってくると、そのトークン開始通知フレームを廃棄するとともに、トークン開始通知フレームの送出を停止して、トークンパッシング方式で通信を行うためのトークンフレームを送出する。
図4−1〜図4−15は、リング状通信システムにおけるトークン開始権獲得処理の手順の一例を模式的に示す図である。まず、リング確立確認処理とネットワーク構成情報の作成処理が終了すると、図4−1に示されるように、各局(1局〜4局)10−1〜10−4の通信処理部17−1〜17−4のトークン開始権獲得処理部21は、所定の時間間隔で各局の固有情報を埋め込んだ第1のトークン開始権獲得フレーム301−1〜304−1を送出する。しかし、このとき1局10−1から送出された第1のトークン開始権獲得フレーム301−1が1局10−1と2局10−2との間の伝送路上で何らかの原因によって消失したものとする。
つぎに、図4−2に示されるように、トークン開始権獲得フレームを送出した通信ノードが他局からのトークン開始権獲得フレームを受信すると、その通信処理部17のトークン開始権獲得処理部21は、自通信ノードの固有情報と受信したトークン開始権獲得フレーム中の送信元通信ノードの固有情報との大小比較を行う。なお、この例では、各局の固有情報には、1局<2局<3局<4局の大小関係があるものとする。
自局の固有情報よりも小さい固有情報を持った通信ノードからのトークン開始権獲得フレームを受信した3局10−3と4局10−4の通信処理部17−3,17−4のトークン開始権獲得処理部21は、受信した第1のトークン開始権獲得フレーム302−1,303−1をそれぞれ転送するとともに、自局からのトークン開始権獲得フレームの送信を停止する。つまり、3局10−3と4局10−4はともに、トークン開始権を獲得することができず負けたことになる。
また、自局の固有情報よりも大きい固有情報を持った通信ノードからのトークン開始権獲得フレームを受信した1局10−1の通信処理部17−1のトークン開始権獲得処理部21は、受信した4局10−4が発行した第1のトークン開始権獲得フレーム304−1を廃棄し、自局からのトークン開始権獲得フレームの送信処理を継続して行う。
なお、伝送路上で消失した1局10−1が発行した第1のトークン開始権獲得フレーム301−1を受信しなかった2局10−2は、固有情報の大小比較を行うことができないので、何の処理も行わない。
つぎに、図4−3に示されるように、ネットワーク上の負けなかった通信ノードは、所定の時間が経過すると、再びトークン開始権獲得フレームを送出し、負けた通信ノードは、受信した他の通信ノードのトークン開始権獲得フレームを転送する。ここでは、1局10−1と2局10−2は、負けなかった通信ノードに属するので、第2のトークン開始権獲得フレーム301−2,302−2を送出する。また、3局10−3と4局10−4は、負けた通信ノードであるので、それぞれ2局10−2と3局10−3がそれぞれ発行した第1のトークン開始権獲得フレーム302−1,303−1を転送する。
つぎに、図4−4に示されるように、各通信ノードがつぎのトークン開始権獲得フレームを受信すると、図4−2で説明したように固有情報の大小比較を行う。ここでは、2局10−2が新たに負けた状態となる。その結果、図4−5に示されるように、1局10−1は、3局10−3が発行した第1のトークン開始権獲得フレーム303−1を廃棄するとともに、第3のトークン開始権獲得フレーム301−3を送出し、2局10−2、3局10−3、4局10−4はそれぞれ1局10−1、2局10−2、2局10−2が発行した第2のトークン開始権獲得フレーム301−2、第2のトークン開始権獲得フレーム302−2、第1のトークン開始権獲得フレーム302−1を転送する。
なお、ここで、トークン開始権獲得フレームは、所定の時間間隔で連続して送出されるため、偶発的に何らかの原因でトークン開始権獲得フレームが消失したとしても、後続のトークン開始権獲得フレームがリング上を巡回する。その結果、以前に1局10−1が発行した第1のトークン開始権獲得フレーム301−1を受信できなかった2局10−2も、その後に1局10−1が発行したトークン開始権獲得フレーム301−2を受信することになり、自通信ノードの固有情報とトークン開始権獲得フレームの送信元通信ノードの固有情報との大小比較を行うことができる。
また、トークン開始権獲得フレームの送信を停止した通信ノード(3局10−3、4局10−4)は、他の通信ノードからのトークン開始権獲得フレームを受信するごとに自局の固有情報とトークン開始権獲得フレームの送信元局の固有情報との大小比較を行って、受信したトークン開始権獲得フレームを廃棄するか、転送するかの判断を行う。
同様にして、図4−6〜図4−9に示されるように、トークン開始権獲得フレームが巡回して各局で受信されるたびに、自通信ノードの固有情報と受信したトークン開始権獲得フレームの送信元局の固有情報との大小比較を行う。そして、自局の固有情報よりも小さい固有情報のトークン開始権獲得フレームを受信した2局10−2、3局10−3、4局10−4は、そのトークン開始権獲得フレームを転送し、自局の固有情報よりも大きい固有情報のトークン開始権獲得フレームを受信した1局10−1はそのトークン開始権獲得フレームを廃棄するとともに、新たなトークン開始権獲得フレームを発行する。つまり、トークン開始権獲得フレームがリング上を巡回するにしたがって、トークン開始権獲得フレームを送出する通信ノードは、固有情報が最も小さい通信ノード(1局10−1)のみに限定される。
その後、図4−10に示されるように、固有情報が最も小さい1局10−1の通信処理部17−1のトークン開始権獲得処理部21は、自局が発行した第2のトークン開始権獲得フレーム301−2を受信すると、その時点以降のトークン開始権獲得フレームの送出を停止する。また、自局が発行したトークン開始権獲得フレーム301−2を取得したことによって、1局10−1がトークン開始権を獲得した(勝った)通信ノードとなり、以後の処理では、トークン発行局となる。
ついで、図4−11に示されるように、トークン開始権を獲得した1局10−1の通信処理部17−1のトークン開始処理部22は、トークン開始通知フレーム311−1を所定の時間間隔で送出し始める。その後、図4−12〜図4−14に示されるように、トークン開始通知フレーム311−1〜311−2を受信した通信ノード(2局10−2、3局10−3)は、そのトークン開始通知フレーム311−1〜311−2を転送するとともに、トークンパッシングに備える。また、1局10−1は自身が発行したトークン開始権獲得フレーム301−4を廃棄する。
その後、図4−15に示されるように、トークン開始通知フレームを送出している1局10−1の通信処理部17−1のトークン開始処理部22は、リングを巡回して自局にトークン開始通知フレーム311−1が戻ってきたことで、リング上にはトークン開始権獲得フレームがすべてなくなった(廃棄された)ことを確認し、トークンパッシングを開始する。以上により、イーサネット(登録商標)ベースのリング状通信システムにおけるトークン発行方法が終了する。
なお、上述した説明は一例であり、たとえばネットワークを構成する通信ノード10−1〜10−4のうち最も大きい値を有する固有情報が付与された通信ノードにトークン開始権を与えるようにしてもよい。
ところで、上記の説明でトークン発行局となった1局10−1が、すぐにトークンを発行せずにトークン開始通知フレーム311を出力する理由について説明する。各通信ノード10−1〜10−4は、後述する実施の形態で示すようにネットワークのフレームを監視する図示しないフレーム監視機能を搭載している。そして、このフレーム監視機能によって、タイムアウトが発生した場合に、トークンフレームが消失したと判断し、トークン開始権獲得フレームの送信を開始する。このとき、トークン開始権獲得フレームを発行した通信ノード10以外の通信ノードは、トークン開始権獲得フレームを受信することで、通常の通信状態(トークンパッシング状態)からトークン開始権獲得処理状態へと切り替わり、上述した工程と同様に再度トークン発行局を決定する。ここで、トークン開始通知フレームを発行せずに、トークン発行局を決める工程で、通信ノード10がトークン開始権を獲得できずに負けた場合に、すぐにトークンパッシングに備える状態にしてしまうと、そのトークン発行局を決める工程が完了せずトークン発行局がまだ決まっていない状態にある場合には、他の通信ノード10が発行したトークン開始権獲得フレームを受信することになり、トークン開始権獲得処理状態へと遷移してしまう。そうすると、負けた通信ノード10は、再びトークン開始権獲得フレームを送出し始め、トークン発行局を決める工程が収束しなくなってしまうことになる。そこで、このような状況を防ぐために、ここでは、トークン発行局を決める工程の途中で、負けた通信ノード10がトークンパッシング状態へと切り替わるように設定せずに、トークン開始通知フレーム311を受信してからトークンパッシング状態に備えるようにしている。
この実施の形態1によれば、異なるベンダによって製造された通信ノード10でリングが構成されるマルチベンダ環境下においても、通信ノード10に対してユニークに付与された固有情報の大小に基づいて、トークンフレームを発行するトークン発行局が一意に決定されるという効果を有する。また、固有情報としてMACアドレスを用いることによって、ユーザが設定した固有情報とは異なり、重複が発生しないので、必ず一意に一台のトークン発行局が決定されるという効果も有する。
さらに、各通信ノード10は、トークン開始権が獲得できないと判定されるまで、トークン開始権獲得フレームを所定の時間間隔で発行するようにしているので、ネットワーク上の何らかの原因によってトークン開始権獲得フレームが消失したとしても、後に発行されるトークン開始権獲得フレームを用いてトークン開始権を獲得するための判定を行うことができるという効果も有する。また、ネットワーク上に不要なフレームがなくなり、受信したフレームの誤認識を防ぐこともできるという効果を有する。
実施の形態2.
この実施の形態2では、何らかの不確定要因によってトークンフレームが消失してしまった場合のトークン発行処理について説明する。
図5は、この実施の形態2による通信ノードの機能構成を模式的に示すブロック図である。この実施の形態2の通信ノードの通信処理部17は、フレーム監視部31をさらに備える。このフレーム監視部31は、リングが通常の通信状態にある場合に、リング上に流れるフレームを監視し、トークンフレームと他のフレームがリング上を所定の時間の間、流れない状態が継続した場合に、トークンフレームが消失したと判定する。
また、トークン開始権獲得処理部21は、フレーム監視部31によってトークンフレームが消失したと判定されると、トークン開始権獲得フレームの送出を開始する。しかし、トークンパッシング状態にある通信ノードが他の通信ノードからのトークン開始権獲得フレームを受信した場合には、そのトークン開始権獲得フレームの送信元通信ノードの固有情報が自通信ノードの固有情報よりも大きいときだけ、受信したトークン開始権獲得フレームを廃棄し、自通信ノードからのトークン開始権獲得フレームを送出する処理を開始する。なお、その他の構成は上述した説明と同一であり、上述した説明と同一の構成要素には、同一の符号を付して、その説明を省略している。
図6−1〜図6−17は、リング状通信システムにおけるトークン開始権獲得処理の手順の一例を模式的に示す図である。まず、通常のトークンリング方式の通信状態から何らかの不確定要因によってトークンフレームが消失してしまったとする。その後、図6−1に示されるように、3局10−3の通信処理部17−3のフレーム監視部31が、最初にトークンフレームの消失を検出すると、トークン開始権獲得処理部21は、トークン開始権獲得フレーム303−1を所定の時間間隔で送出し始める。
その後、図6−2に示されるように、トークンパッシング中の4局10−4が、3局10−3が発行したトークン開始権獲得フレーム303−1を受信すると、その通信処理部17−4のトークン開始権獲得処理部21は、自局の固有情報とトークン開始権獲得フレーム303−1の送信元通信ノード(3局10−3)の固有情報とを大小比較する。なお、ここでも実施の形態1と同様に各局の固有情報には、1局<2局<3局<4局の大小関係があるものとする。その結果、4局10−4は、自局の固有情報よりも小さい固有情報を持った通信ノードからのトークン開始権獲得フレームを受信したことになるので、トークン開始権を得られず、負けた状態になる。そして、図6−3に示されるように、4局10−4は、トークンパッシングを停止し、受信したトークン開始権獲得フレーム303−1をそのまま転送する。
一方、図6−4〜図6−5に示されるように、トークン開始権獲得フレーム303−1はつぎに1局10−1に到達する。1局10−1でも同様にトークン開始権獲得フレームの送信元通信ノード(3局10−3)の固有情報と自局の固有情報との大小比較が行われる。自局の固有情報よりも大きい固有情報を持った通信ノードからのトークン開始権獲得フレームを受信した1局10−1の通信処理部17−1のトークン開始権獲得処理部21は、トークンパッシングを停止するとともに、受信した3局10−3のトークン開始権獲得フレーム303−1を廃棄し、自局からトークン開始権獲得フレーム301−1を所定の時間間隔で送出し始める。図6−6〜図6−7に示されるように、トークン開始権獲得フレームが巡回して、つぎのトークン開始権獲得フレームを受信した1局10−1、2局10−2、4局10−4でも同様の処理が行われる。この過程で、自局の固有情報よりも小さい固有情報を有するトークン開始権獲得フレーム301−1を受信した2局10−2もトークン開始権を得られない負けた状態となる。
その後、図6−8〜図6−9に示されるように、最初にトークン開始権獲得フレーム303−1を送出した3局10−3が、1局10−1からのトークン開始権獲得フレーム301−1を受信すると、その通信処理部17−3のトークン開始権獲得処理部21は、自局の固有情報とトークン開始権獲得フレーム301−1中の送信元通信ノード(1局10−1)の固有情報との大小比較を行う。ここでは、3局10−3は、自局の固有情報よりも小さい固有情報を有する1局10−1からのトークン開始権獲得フレーム301−1を受信しているので、トークン開始権を得られず負けた状態となる。そして、受信した1局10−1のトークン開始権獲得フレーム301−1を転送するとともに、自局からのトークン開始権獲得フレームの送出処理を停止する。
なお、このときも、自局の固有情報よりも大きい固有情報を持った通信ノードからのトークン開始権獲得フレームを受信した通信ノード(1局10−1)は、受信したトークン開始権獲得フレームを破棄し、自通信ノードからのトークン開始権獲得フレームの送信を継続する。
ついで、図6−10〜図6−11に示されるように、トークン開始権獲得フレーム301−1,301−2がリング上を巡回するにしたがって、トークン開始権獲得フレームを送出する通信ノードが、固有情報の最も小さい通信ノード(1局10−1)のみに限定される。
その後、図6−12に示されるように、固有情報の最も小さい1局10−1の通信処理部17−1のトークン開始権獲得処理部21は、自局が発行したトークン開始権獲得フレーム303−1を最初に受信すると、その時点以降のトークン開始権獲得フレームの送出を停止する。また、自局が発行したトークン開始権獲得フレーム303−1を獲得したことによって、1局10−1はトークン開始権を獲得した(勝った)通信ノードとなり、以後の処理では、トークン発行局となる。
ついで、図6−13に示されるように、トークン開始権を獲得した1局10−1の通信処理部17−1のトークン開始処理部22は、トークン開始通知フレーム311−1を所定の時間間隔で送出し始める。その後、図6−14〜図6−17に示されるように、トークン開始通知フレーム311−1〜311−4を受信した2局10−2〜4局10−4は、そのトークン開始通知フレーム311−1〜311−4を転送するとともに、トークンパッシングに備える。また、1局10−1は自身が発行したトークン開始権獲得フレーム301−2を廃棄する。
その後、図6−17に示されるように、トークン開始通知フレーム311−1〜311−4を送出している1局10−1の通信処理部17−1のトークン開始処理部22は、自局にトークン開始通知フレーム311−1が戻ってきたことで、リング上にはトークン開始権獲得フレームがすべてなくなった(廃棄された)ことを確認し、トークンパッシングを開始する。以上により、トークン発行方法が終了する。
なお、上述した説明は一例であり、たとえばネットワークを構成する通信ノード10−1〜10−4のうち最も大きい値を有する固有情報が付与された通信ノードにトークン開始権を与えるようにしてもよい。
この実施の形態2によれば、全通信ノードがトークンフレームの消失を即座に検知し、検知した通信ノードが、トークンパッシング状態からトークン開始権獲得状態に移るようにしたので、速やかにトークンパッシングの再開を行うことが可能となる。また、ネットワーク上に不要なフレームがなくなり、受信したフレームの誤認識を防ぐこともできるという効果を有する。
実施の形態3.
この実施の形態3では、イーサネット(登録商標)ベースのリング状通信システムにおいてトークンパッシング方式で通信を行う場合について説明する。
図7は、この実施の形態3による通信ノードの機能構成を模式的に示すブロック図である。この通信ノード10の通信処理部17は、通信権獲得処理部41、論理的リング状態制御部42およびデータフレーム通信処理部43を備える。なお、上述した説明と同一の構成要素には、同一の符号を付してその説明を省略する。
通信権獲得処理部41は、自通信ノードがデータの送信を行いたい場合に、リング上を流れているトークンフレームを取得して通信権を獲得するとともに、トークンフレームを取得したことを示すトークン受信完了通知フレーム(以下、トークンAckフレームという)を、トークンフレームを解放した通信ノード宛に送信する。また、通信権獲得処理部41は、データフレーム通信処理部43によってデータフレームの送信が終了するとトークンフレームを解放する。
論理的リング状態制御部42は、通信権獲得処理部41によって通信権が獲得された場合に、自通信ノード内のリングを論理的に切断して自通信ノードで受信されるすべてのフレームを転送しないで廃棄する送信モードと、他通信ノードからトークンAckフレームを受信した場合に、論理的なリングの切断を終了して自通信ノードで受信されるすべてのフレームを転送するリピートモードと、の状態を切り分ける制御を行う。
データフレーム通信処理部43は、通信権が獲得されると、送信したいデータをデータフレームとして送信し、自通信ノードが送信する。このとき通信されるデータフレームの構造は、通常のイーサネット(登録商標)フレームと同じであり、宛先MACアドレスや送信元MACアドレスが含まれる。また、データフレーム通信処理部43は、他通信ノードから自通信ノード宛のデータフレームを受信する処理する処理を行う。なお、データフレーム通信処理部43は、自通信ノードが送信モードにある場合には、受信したすべてのフレームを転送せずに廃棄し、自通信ノードがリピートモードにある場合には、受信したすべてのフレームを転送する。
図8−1〜図8−5は、イーサネット(登録商標)ベースのリング状通信システムにおけるトークンパッシング方式での通信処理手順の一例を示す図である。なお、ここでは、通信伝文として送信されるデータフレームはブロードキャストでリング上の全通信ノードを宛先とする場合を例に挙げる。
まず、既にトークンフレーム320を獲得している1局10−1は、その通信処理部17−1の論理的リング状態制御部42によって自局内のリングが論理的に切断された送信モードの状態にあり、データフレーム通信処理部43による通信伝文(以下、データフレームという)321の送出と、自局が発行したデータフレーム321に対する終端処理(廃棄処理)を行う。また、データフレーム通信処理部43によるすべてのデータフレーム321の送出が完了すると、通信権獲得処理部41はトークンフレーム320を送信する。なお、トークンフレーム320を送信した後も、1局10−1は送信モード状態のままである(図8−1)。なお、この図8−1の2局10−2〜4局10−4に示されるように、Aポート11−2〜11−4からBポート14−2〜14−4に実線が延びている状態がリピートモードを示しており、1局10−1のように、Aポート11−1からBポート14−1に実線が延びていない状態がリングが論理的に切断された送信モードを示している。
ついで、トークンフレーム320を受信した2局10−2は、その通信処理部17−2の通信権獲得処理部41でトークンフレーム320を終端(取得)する。そして、通信権獲得処理部41は、1局10−1からトークンフレーム320を受信したので、トークAckフレーム331をトークン解放局である1局10−1宛てに送信する。また、論理的リング状態制御部42は、自局内のリングを論理的に切断して、送信モードへと遷移する。そして、データフレーム通信処理部43によるデータフレーム322の送出と、自局が発行したデータフレーム322に対する終端処理が行われる。データフレーム通信処理部43によるすべてのデータフレーム322の送出が完了すると、通信権獲得処理部41はトークンフレーム320を送信する。なお、トークンフレーム320を送信した後も、2局10−2は送信モード状態のままである(図8−2)。
その後、フレームが巡回し、1局10−1は、自身で発行したデータフレーム321を受信する。このとき、1局10−1は送信モードにあるので、そのデータフレーム通信処理部43は受信したデータフレーム321を廃棄する(図8−3)。
続いて、1局10−1は、自局宛のトークンAckフレーム331を受信する。このとき、1局10−1は、送信モードにあるので、そのデータフレーム通信処理部43は受信したトークンAckフレーム331を廃棄するとともに、論理的リング状態制御部42は、トークンAckフレーム331を受信したことによって、自局の状態を送信モードから論理的なリングの切断を終了したリピートモードへと遷移させる(図8−4)。その後は、1局10−1のAポート11−1から受信したフレームはすべて転送されるようになる(図8−5)。以上の図8−1〜図8−5に示される処理を各局が行うことによって、トークンパッシング方式の通信が行われる。
この実施の形態3によれば、各通信ノード10に対して、通信権を獲得した通信ノード10にはその通信ノード10内で論理的にリングを切断する送信モードと、通信権を獲得していない通信ノード10には受信したフレームを転送するリピートモードと、を設けるようにしたので、通信権を獲得した通信ノード10が自通信ノード10発のフレームを、断片化を発生させずに廃棄することができるという効果を有する。
また、トークンフレームを取得して通信権を獲得した通信ノード10が、トークンAckフレームをトークンフレームの送出元通信ノードに送信するようにしたので、このトークンAckフレームを用いて、送信モードからリピートモードへの切換を行うことができるという効果を有する。これにより、自通信ノード10が発行したフレームとトークンAckフレームとをリング内から除去することができ、不要なフレームをリング上に滞留させることを防ぐことができる。
実施の形態4.
実施の形態3では、トークンフレームを解放して送信モード状態にある通信ノード(以下、トークン解放通信ノードという)は、つぎにトークンフレームを獲得した通信ノード(以下、トークン獲得通信ノードという)からの自局宛のトークンAckフレームを受信することによって、送信モードからリピートモードへと状態を遷移させるようにしていた。しかし、この場合、トークン獲得通信ノードから送出されたトークンAckフレームが何らかの原因によって消失してしまう場合もある。この実施の形態4では、トークンAckフレームがトークン解放通信ノードに到達する前に消失してしまった場合のトークンパッシング方式の通信方法について説明する。
この実施の形態4における通信ノードの機能構成は実施の形態3の図7と同一である。しかし、この実施の形態4では、図7の通信処理部17の論理的リング状態制御部42は、送信モード状態にある場合に、自通信ノード宛のトークンAckフレームを受信する前に、他の通信ノード(トークン獲得通信ノード)が送信したデータフレームを受信した場合には、リピートモードに遷移する機能をさらに備えている。
図9−1〜図9−3は、イーサネット(登録商標)ベースのリング状通信システムにおけるトークンパッシング方式での通信処理手順の一例を示す図である。まず、実施の形態3の図8−1〜図8−2で説明したように、2局10−2は、データフレーム321を送出してトークンフレーム320を解放した1局10−1からトークンフレーム320を取得し、トークン解放通信ノードである1局10−1宛のトークンAckフレーム331と、データフレーム322とをリング上に送出する。
その後、フレームが巡回し、1局10−1は、自身で発行したデータフレーム321を受信する。このとき、1局10−1は送信モードにあるので、そのデータフレーム通信処理部43は受信したデータフレーム321を廃棄する。また、このとき4局10−4と1局10−1の間のリング上で不確定要因によってトークンAckフレーム331が消失したものとする(図9−1)。
その後、1局10−1は、自局宛のトークンAckフレーム331を受信することなく、他局(2局10−2)が発行したデータフレーム322を受信する(図9−2)。1局10−1の通信処理部17−1の論理的リング状態制御部42は、トークンAckフレーム331を受信しないで他局のデータフレーム322を受信したことを検知し、自局の状態を送信モードからリピートモードへと切り替え、1局10−1内の論理的なリングの切断を終了させる。これによって、1局10−1の通信処理部17−1のデータフレーム通信処理部43は、受信した2局10−2からのデータフレーム322をそのまま転送するとともに、以後受信するフレームのすべても転送する(図9−3)。
この実施の形態4によれば、トークンAckフレームの後にはデータフレームが届くことを利用して、トークンAckフレームが消失してしまった場合でも、トークン解放通信ノードを送信モードからリピートモードへと状態を遷移させることができる。その結果、トークンAckフレームが消失してしまった場合でも、その後に続くフレームが不用意に廃棄されることがないという効果を有する。
実施の形態5.
実施の形態4では、トークン解放通信ノードは、自局宛のトークンAckフレームが消失してしまった場合でも、その後に受信するデータフレームの受信によって、送信モードからリピートモードへと状態を遷移させるようにしていた。しかし、この場合、トークン獲得通信ノードから送出されたトークンAckフレームに加えて、データフレームも何らかの原因によって消失してしまう場合もある。この実施の形態5では、トークン獲得通信ノードによって発行されたトークンAckフレームとデータフレームがトークン解放通信ノードに到達する前に消失してしまった場合のトークンパッシング方式の通信方法について説明する。
この実施の形態5における通信ノードの機能構成は実施の形態3の図7と同一である。しかし、この実施の形態5では、図7の通信処理部17の論理的リング状態制御部42は、送信モードの状態で、自通信ノード宛のトークンAckフレームを受信する前に他通信ノード(トークン獲得通信ノード)が送信したデータフレームを受信した場合、または自通信ノード宛のトークンAckフレームと他通信ノード(トークン獲得通信ノード)が発行したデータフレームを受信する前に、さらに別の通信ノードが発行した他通信ノード宛のトークンAckフレームを受信した場合には、リピートモードに遷移する機能をさらに備えている。
図10−1〜図10−2は、イーサネット(登録商標)ベースのリング状通信システムにおけるトークンパッシング方式での通信処理手順の一例を示す図である。まず、実施の形態3の図8−1〜図8−2で説明したように、2局10−2は、データフレーム321を送出してトークンフレーム320を解放した1局10−1からトークンフレーム320を取得し、トークン解放通信ノードである1局10−1宛のトークンAckフレーム331と、データフレーム322とをリング上に送出し、その後トークンフレーム320を解放する。その後、実施の形態4の図9−1で説明したように、フレームが巡回し、1局10−1は、自身で発行したデータフレーム321を受信すると、そのデータフレーム321を廃棄する。また、このとき3局10−3がトークンフレーム320を取得し、4局10−4と1局10−1の間のリング上で不確定要因によってトークンAckフレーム331が消失したものとする。
さらに、フレームが巡回するが、2局10−2が発行したデータフレーム322も4局10−4と1局10−1の間の伝送路上で消失したものとする。一方、トークンフレーム320を取得した3局10−3の通信権獲得処理部41は、トークンフレーム320の送信元である2局10−2を宛先とするトークンAckフレーム332を送信する。その後、3局10−3のデータフレーム通信処理部43は、データフレーム323を送信する(図10−1)。
その後、1局10−1は、自局宛のトークンAckフレーム331と他局(2局10−2)が発行したはずのデータフレーム322を受信することなく、3局10−3が発行した2局10−2宛のトークンAckフレーム332を受信する。1局10−1の通信処理部17−1の論理的リング状態制御部42は、自局宛のトークンAckフレーム331と2局10−2が発行したデータフレーム322を受信しないで、3局10−3が発行した2局10−2宛のトークンAckフレーム332を受信したことを検知し、自局の状態を送信モードからリピートモードへと切り替え、1局10−1内の論理的なリングの切断を終了させる。これによって、1局10−1の通信処理部17−1のデータフレーム通信処理部43は、受信した3局10−3が発行した2局10−2宛のトークンAckフレーム332をそのまま転送するとともに、以後受信するフレームもすべて転送する(図10−2)。
この実施の形態5によれば、トークンAckフレームの後にはデータフレーム(データフレーム)が届き、データフレームの後には他の通信ノードが発行した他局宛のトークンAckフレームが届くことを利用して、トークンAckフレームやデータフレームが消失してしまった場合でも、トークン解放通信ノードを送信モードからリピートモードへと状態を遷移させることができる。その結果、トークンAckフレームやデータフレームが消失してしまった場合でも、その後に続くフレームが不用意に廃棄されることがないという効果を有する。
実施の形態6.
実施の形態5では、トークン解放通信ノードは、自通信ノード宛のトークンAckフレームとそれに続くデータフレームが消失してしまった場合でも、その後に受信する他局が発行したその他通信ノード宛のトークンAckフレームの受信によって、送信モードからリピートモードへと状態を遷移させるようにしていた。この実施の形態6では、さらに、他通信ノードが発行したその他の通信ノード宛のトークンAckフレームやデータフレームなども消失してしまい、自通信ノード宛のトークンAckフレームを受信するはずだった通信ノードが、トークンAckフレームやデータフレームを受け取ることなくトークンフレームを受信した場合のトークンパッシング方式の通信方法について説明する。
この実施の形態6における通信ノードの機能構成は実施の形態3の図7と同一である。しかし、この実施の形態6では、図7の通信処理部17の通信権獲得処理部41は、送信モードの状態で、自通信ノード宛のトークンAckフレームのほか、他通信ノードの発行したデータフレームや他通信ノード宛のトークンAckフレームを受信することなく、再びトークンフレームを受信した場合には、トークンフレームを取得し、トークンフレームの発行元通信ノードにトークンAckフレームを送信する機能をさらに備え、データフレーム通信処理部43は、自通信ノード宛のトークンAckフレームを受信する前に受信した自通信ノードが発行したデータフレームを再び送信する機能をさらに備えている。
図11−1〜図11−5は、イーサネット(登録商標)ベースのリング状通信システムにおけるトークンパッシング方式での通信処理手順の一例を示す図である。まず、実施の形態3の図8−1〜図8−2で説明したように、2局10−2は、データフレーム321を送出してトークンフレーム320を解放した1局10−1からトークンフレーム320を取得し、トークン解放通信ノードである1局10−1宛のトークンAckフレーム331と、データフレーム322とをリング上に送出した後トークンフレームを解放する。
その後、フレームが巡回し、1局10−1は、自身で発行したデータフレーム321を受信する。このとき、1局10−1は送信モードにあるので、そのデータフレーム通信処理部43は受信したデータフレーム321を廃棄する。また、このとき、3局10−3はトークンフレーム320を取得して通信権を獲得し、4局10−4と1局10−1の間のリング上で不確定要因によって1局10−1宛てのトークンAckフレーム331が消失したものとする(図11−1)。
さらに、フレームが巡回するが、2局10−2が発行したデータフレーム322と、3局10−3がトークンフレーム320を取得した際に2局10−2宛に発行したトークンAckフレーム332も、4局10−4と1局10−1の間のリング上で不確定要因によって消失したものとする。このとき、3局10−3は、データフレーム323を送出した後、トークンフレーム320を解放する(図11−2)。
さらにフレームが巡回し、4局10−4がトークンフレーム320を取得して通信権を獲得する。また、3局10−3が発行したデータフレーム323と、4局10−4がトークンフレーム320を発行した際に3局10−3宛に発行したトークンAckフレーム333も、4局10−4と1局10−1の間のリング上で不確定要因によって消失したものとする(図11−3)。
ついで、4局10−4がデータフレーム324を送信してトークンフレーム320を解放する。このとき、4局10−4が発行したデータフレーム324も、4局10−4と1局10−1の間のリング上で不確定要因によって消失したものとする(図11−4)。その後、1局10−1は4局10−4で解放されたトークンフレーム320を受信する。1局10−1の通信権獲得処理部41は、先に自局で発行したデータフレーム321を受信した後、自通信ノード宛のトークンAckフレーム331や他局のデータフレーム322〜324や他局宛のトークンAckフレーム332,333をまったく受信しない状態で再びトークンフレーム320を受信したので、受信したトークンフレーム320を取得し、通信権を獲得する。ついで、通信権獲得処理部41は、トークン解放通信ノードである4局10−4にトークンAckフレーム334を送信する(図11−5)。また、データフレーム通信処理部43は、図8−1で送信したデータフレーム321を再び送信した後、トークンフレーム320を解放する。なお、論理的リング状態制御部42は、1局10−1がトークンフレーム320を受信した際に既に送信モードであるので、状態の切換を行わない。
なお、この後、2局10−2以降の通信ノード(3局10−3と4局10−4)は、フレームの消失が起こらなければ、1局10−1が送信した4局10−4宛のトークンAckフレーム334を用いて、実施の形態5で説明したように送信モードからリピートモードへの状態の切換が行われる。
この実施の形態6によれば、自局宛のトークンAckフレームを受信するはずだった通信ノードが、トークンAckフレームやデータフレームを受け取ることなくトークンフレームを受信した場合には、そのトークンフレームを取得し、自局宛のトークンAckフレームを受信する前に受信したデータフレームと同じデータフレームを送信するようにしたので、データを確実に宛先通信ノードに届けることができるという効果を有する。
実施の形態7.
この実施の形態7では、トークンパッシング方式での通信中に、トークンフレームが不確定要因によって消失してしまった場合における、トークンフレームの再生成処理について説明する。
図12は、この実施の形態7による通信ノードの機能構成を模式的に示すブロック図である。この通信ノード10は、実施の形態2の図5と実施の形態3の図7を組み合わせた構成を有するものである。つまり、この通信ノード10の通信処理部17は、トークン開始権の獲得処理を行うトークン開始権獲得処理部21と、トークン開始権を獲得した通信ノードがリング上のすべての通信ノードに対してトークンパッシング方式での通信を開始する通知を行うトークン開始処理部22と、リング中を流れるトークンフレーム、トークンAckフレームおよびデータフレームを監視するフレーム監視部31と、トークンパッシング方式での通信が開始された状態で、通信権を獲得する処理を行う通信権獲得処理部41と、通信ノード内のリングを論理的に切断された状態と論理的に接続された状態との間で切換える制御を行う論理的リング状態制御部42と、データフレームの通信処理を行うデータフレーム通信処理部43と、を備える。
ここで、フレーム監視部31は、リング上に流れるトークンフレーム、トークンAckフレームおよびデータフレームを含むすべてのフレームを監視し、所定の時間以上フレームがリング上に流れない場合にトークンが消失したことを検出する。
図13−1〜図13−4は、トークンフレームの消失によるトークンフレームの再生処理の手順の一例を模式的に示す図である。なお、これらの図で各局10−1〜10−4のAポート11−1〜11−4の上に付されている黒丸は、通信処理部17−1〜17−4に設けられるフレーム監視部31−1〜31−4を示している。まず、1局10−1がトークンフレーム320を取得して、データフレーム321を送信した後、トークンフレーム320を解放する。その後、不確定要因によってトークンフレーム320が1局10−1と2局10−2との間のリング上で消失したものとする(図13−1)。このとき、データフレーム321を送出した1局10−1のみが送信モードであり、2局10−2〜4局10−4はリピートモードである。
1局10−1が発行したデータフレーム321が巡回して、再び1局10−1に戻って受信されると、1局10−1は送信モードにあるので、受信したデータフレーム321を廃棄する(図13−2)。また、2局10−2のフレーム監視部31−2は、最後にデータフレーム321を受信し、転送してから所定の時間以上フレームを受信しないこと(リング上にフレームが流れないこと)を検出する(図13−3)。つまり、フレーム監視部31−2は、トークンフレーム320が消失したことを検出する。これにより、2局10−2の通信処理部17−2のトークン開始権獲得処理部21は、実施の形態2で説明したトークン開始権の獲得処理を実施してトークンフレーム320を再生成する処理を開始する(図13−4)。ここでは、2局10−2がトークン開始権獲得フレーム302−1を所定の時間間隔で送出した状態が示されている。
なお、図13−3において、2局10−2が最初にトークンフレーム320が消失したことを検出するのは、トークンフレーム320が消失した位置の下流側に位置する通信ノードのうち、トークンフレーム320が消失した位置に最も近い通信ノードだからである。この場合には、トークンフレーム320が消失したと判定するための時間(タイマ値)はリング上のすべての通信ノード10−1〜10−4で一定であることを前提としている。
この実施の形態7によれば、トークンパッシング方式の通信を行っている最中に、トークンフレームが消失した場合でも、その消失を検出することができるので、速やかにトークンフレームを再生成することができる。その結果、トークンフレームの消失から自動的に復旧することができるという効果を有する。