(57)【要約】    【課題】  メッセージを送信する処理部の構成を簡単にし、またメッセージを送信する処理部の状態制御部のとる状態数を削減する。    【解決手段】  メッセージを送信する処理部Ｐ'００がロック・メッセージと複数の通常のメッセージとを送信し、各処理部が自己が宛先のロック・メッセージを受信したとき、自己の通信ノードをロック状態とし、各処理部が自己が宛先の通常のメッセージを受信したとき、アンロック・メッセージを送信し、各処理部が自己が宛先のアンロック・メッセージを受信したとき、自己の上記通信ノードのロック状態を解除し、各処理部が自己が宛先でない通常のメッセージを受信したとき、自己の通信ノードの次の経路の通信ノードがロック状態であれば、次の経路の通信ノードのロック状態が解除されるまで自己の通信ノードに通常のメッセージを待機させる。【選択図】        図１
2006246101.tif 000002
【特許請求の範囲】
【請求項１】
複数の処理部を有し、各処理部にそれぞれ通信ノードが接続され、上記通信ノードが通信ネットワークを構成する送信順序保証メッセージ送信装置において、
メッセージを送信する上記処理部は、宛先情報を有するロック・メッセージと宛先情報およびアンロック情報を有する複数の通常のメッセージとを送信し、
上記各処理部は、自己が宛先の上記ロック・メッセージを受信したとき、自己の上記通信ノードをロック状態とし、
上記各処理部は、自己が宛先の上記通常のメッセージを受信したとき、上記アンロック情報からアンロック・メッセージを生成し、上記アンロック・メッセージを送信し、
上記各処理部は、自己が宛先の上記アンロック・メッセージを受信したとき、自己の上記通信ノードのロック状態を解除し、
上記各処理部は、自己が宛先でない上記通常のメッセージを受信したとき、自己の通信ノードの次の経路の通信ノードがロック状態であれば、次の経路の通信ノードのロック状態が解除されるまで自己の上記通信ノードに上記通常のメッセージを待機させる
ことを特徴とする送信順序保証メッセージ送信装置。
【請求項２】
複数の処理部を有し、各処理部にそれぞれ通信ノードが接続され、上記通信ノードが通信ネットワークを構成する送信順序保証メッセージ送信装置を使用した送信順序保証メッセージ送信方法において、
宛先情報を有するロック・メッセージと宛先情報およびアンロック情報を有する複数の通常のメッセージとを上記処理部から送信し、
自己が宛先の上記ロック・メッセージを上記処理部が受信したとき、上記ロック・メッセージを受信した上記処理部は自己の上記通信ノードをロック状態とし、
自己が宛先の上記通常のメッセージを上記処理部が受信したとき、上記通常のメッセージを受信した上記処理部は上記アンロック情報からアンロック・メッセージを生成し、上記アンロック・メッセージを送信し、
自己が宛先の上記アンロック・メッセージを上記処理部が受信したとき、上記アンロック・メッセージを受信した上記処理部は自己の通信ノードのロック状態を解除し、
自己が宛先でない上記通常のメッセージを上記処理部が受信したとき、上記通常のメッセージを受信した上記処理部に自己の通信ノードの次の経路の通信ノードがロック状態であれば、次の経路の通信ノードのロック状態が解除されるまで自己の上記通信ノードに上記通常のメッセージを待機させる
ことを特徴とする送信順序保証メッセージ送信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は宛先への到着所要時間が不定である複数のメッセージをあらかじめ決めておいた順序を保証して送信する送信順序保証メッセージ送信装置および送信順序保証メッセージ送信方法に関するものである。
【背景技術】
【０００２】
一般に、ある装置中に複数の処理部があり、それら処理部の間で通信を行なう必要がある場合には、処理部間を通信ネットワークで接続する。通信ネットワークは複数の通信ノードからなり、通常は１つの通信ノードに１つの処理部が対応付けられる。通信ノード同士は相互にネットワークケーブル等で連結され、直接連結されている通信ノード同士は直接データの送受信が可能であり、直接連結されていない通信ノード同士は、直接連結されている別の通信ノードを中継することでデータの送受信を行なう。以下、ある通信ノードに直接連結されている通信ノードを隣接通信ノードと呼ぶ。
【０００３】
各処理部が通信ネットワークを介して送受信するデータをメッセージと呼ぶ。ある処理部がメッセージを送信する際には、その処理部はメッセージに加えて、送信相手を特定する宛先情報をその機能に対応づけられた通信ノードに与えなければならない。各通信ノードはメッセージに付加された宛先情報によりいずれかの隣接通信ノードを選択し、選択した隣接通信ノードにメッセージを転送する。この転送には大きく分けて２つある。すなわち、ａ）宛先情報により一意に中継に利用する通信ノードが決定するもの、ｂ）宛先情報だけでは中継に利用する通信ノードが決定しないものである。本発明はａ）の方式をとる通信ネットワークを前提とした従来技術に対するものである。
【０００４】
上記方式ａ）にあたる宛先情報の付与方式、および隣接通信ノードの選択方式のうち最も簡単なものの一つとして、宛先情報としてメッセージを中継する通信ノードの経路を通信ノードの順序として与え、中継を行なう各通信ノードではその順列に従い隣接通信ノードを選択する方法がある。
【０００５】
この例を図９に示す。図９では通信ノードＮ００〜Ｎ７７が存在し、通信ノードＮ００〜Ｎ７７がメッシュのトポロジを持つ通信ネットワークを構成している。また、例えば通信ノードＮ００には処理部Ｐ００、通信ノードＮ０１には処理部Ｐ０１というように、各通信ノードＮ００〜Ｎ７７にそれぞれ対応づけられた処理部Ｐ００〜Ｐ７７が存在する。この例では、処理部Ｐ００から処理部Ｐ２２にメッセージを送信する場合は、処理部Ｐ００は宛先情報としてたとえば「Ｎ１０，Ｎ２０，Ｎ２１，Ｎ２２」という順列を与える。この宛先情報を受信した通信ノードＮ００は、順列の先頭（Ｎ１０）を参照し、通信ノードＮ１０にメッセージを転送する。次に、通信ノードＮ１０は順列の２番目（Ｎ２０）を参照し、通信ノードＮ２０にメッセージを転送する。以下、通信ノードＮ２０，Ｎ２１においてもこれを繰り返し、通信ノードＮ２２はメッセージが処理部Ｐ２２宛てであることを判断し、処理部Ｐ００から処理部Ｐ２２にメッセージが転送され、メッセージの送信が完了する。
【０００６】
このような通信ネットワーク中では、ある時刻において複数のメッセージの中継が複数の通信ノードにおいて行なわれている。このとき、ある２つのメッセージの送信において、それらのメッセージを中継する通信ノードが競合している場合、大別して以下のｃ）、ｄ）２つの方式のうち一方が行なわれる。１つはｃ）競合する通信ノードを後から利用しようとするメッセージをその前の通信ノードに待機させ、その通信ノードの競合状態が解消されるのを待った後、改めてその通信ノードにメッセージを送信する方式であり、もう１つはｄ）競合する通信ノードを後から利用しようとするメッセージを単純に破棄する方式である。本発明はｃ）の方式をとる通信ネットワークを前提とした従来技術に対するものである。このような構成をとる通信ネットワークを内部で利用しているＬＳＩの構成例として、特開平１１−１６７５５６号公報に記載のものがある。
【０００７】
これを説明するための例を図１０に示す。図１０は、ある時刻ｔ０に通信ノードＮ３１から通信ノードＮ４１に向けてメッセージＭ００を宛先情報「Ｎ４１」とともに送信し、時刻ｔ０よりも後の時刻ｔ１に通信ノードＮ２１から通信ノードＮ５１に向けてメッセージＭ０１を宛先情報「Ｎ３１，Ｎ４１，Ｎ５１」とともに送信する場合を示している。このとき、メッセージＭ０１が通信ノードＮ３１に到達した際に、メッセージＭ００によって通信ノードＮ３１がすでに利用されているとすると、上記ｃ）、ｄ）の方式ではそれぞれメッセージＭ０１は次のように扱われる。すなわち、ｃ）の方式では、メッセージＭ０１は通信ノードＮ２１で待機し、メッセージＭ００が通信ノードＮ３１を解放した後、通信ノードＮ３１を利用してメッセージＭ０１の送信が行なわれる。これに対して、ｄ）の方式では、メッセージＭ０１は通信ノードＮ２１において破棄される。そして、ｃ）の方式の通信ネットワークでは、ネットワーク上の通信ノードＮ００〜Ｎ７７が複数のメッセージの転送に使用される可能性があるため、ある処理部から送信されたメッセージがその宛先情報により宛先に到着するまでの時間は一般に不定となる。
【０００８】
このような通信ノードは図１１のような状態遷移により構成できる。すなわち、新しいメッセージを待っている状態の時にメッセージを受信したときには、受信したメッセージの宛先情報に従ってメッセージを転送する隣接通信ノードを決定する。そして、転送する隣接通信ノードが新しいメッセージを待っている状態になるまで待ち、転送する隣接通信ノードが新しいメッセージを待っている状態になったときには、メッセージを隣接通信ノードに転送し、新しいメッセージを待っている状態となる。
【０００９】
さて、ｃ）の方式の通信ネットワークにおいて、ある処理部Ｐｘｘから複数の他の処理部Ｐａａ，Ｐａｂ，Ｐａｃ，……に対し、次のイベント順序を保証しつつメッセージを送信する場合を考える。
１．処理郵ＰｘｘからメッセージＭ１０を処理部Ｐａａに送信する。
２．処理部ＰａａがメッセージＭ１０を受信する。
３．処理部ＰｘｘからメッセージＭ１１を処理部Ｐａｂに送信する。
４．処理部ＰａｂがメッセージＭ１１を受信する。
５．処理部ＰｘｘからメッセージＭ１２を処理部Ｐａｃに送信する。
６．処理部ＰａｃがメッセージＭ１２を受信する。
７．（以下同様に続く）
このような状況では、上記のイベント１の発生からイベント２の発生するまでの時間、イベント３の発生からイベント４の発生するまでの時間、イベント５の発生からイベント６の発生するまでの各時間が不定となるため、各処理部Ｐｘｘ，Ｐａａ，Ｐａｂ，Ｐａｃ，……は次のような動作をするように設計する必要がある。
１．処理部ＰｘｘからメッセージＭ１０を処理部Ｐａａに送信する。
２．処理部ＰａａがメッセージＭ１０を受信する。
３．処理部Ｐａａが確認メッセージＡ１０を処理部Ｐｘｘに送信する。
４．処理部Ｐｘｘが確認メッセージＡ１０を受信する。
５．処理部ＰｘｘからメッセージＭ１１を処理部Ｐａｂに送信する。
６．処理部ＰａｂがメッセージＭ１１を受信する。
７．処理部Ｐａｂが確認メッセージＡ１１を処理部Ｐｘｘに送信する。
８．処理部Ｐｘｘが確認メッセージＡ１１を受信する。
９．処理部ＰｘｘからメッセージＭ１２を処理部Ｐａｃに送信する。
１０．処理部ＰａｃがメッセージＭ１２を受信する。
１１．処理部Ｐａｃが確認メッセージＡ１２を処理部Ｐｘｘに送信する。
１２．処理部Ｐｘｘが確認メッセージＡ１２を受信する。
１３．（以下同様に続く）
この状況をより具体的に説明するための例として、処理部Ｐ００が他の処理部Ｐ１１，Ｐ２２，Ｐ３３に対し、次の順序でメッセージＭ２０，Ｍ２１，Ｍ２２を送信する場合を考える。
１．処理部Ｐ００からメッセージＭ２０を処理部Ｐ１１に送信する。
２．処理部Ｐ１１がメッセージＭ２０を受信する。
３．処理部Ｐ００からメッセージＭ２１を処理部Ｐ２２に送信する。
４．処理部Ｐ２２がメッセージＭ２１を受信する。
５．処理部Ｐ００からメッセージＭ２２を処理部Ｐ３３に送信する。
６．処理部Ｐ３３がメッセージＭ２２を受信する。
【００１０】
この場合、処理部Ｐ００，Ｐ１１，Ｐ２２，Ｐ３３は次のような動作をするように設計しなければならない。
１．処理部Ｐ００からメッセージＭ２０を処理部Ｐ１１に送信する。
２．処理部Ｐ１１がメッセージＭ２０を受信する。
３．処理部Ｐ１１が確認メッセージＡ２０を処理部Ｐ００に送信する。
４．処理部Ｐ００が確認メッセージＡ２０を受信する。
５．処理部Ｐ００からメッセージＭ２１を処理郵Ｐ２２に送信する。
６、処理部Ｐ２２がメッセージＭ２１を受信する．
７．処理部Ｐ２２が確認メッセージＡ２１を処理部Ｐ００に送信する。
８．処理部Ｐ００が確認メッセージＡ２１を受信する。
９．処理部Ｐ００からメッセージＭ２２を処理部Ｐ３３に送信する。
１０．処理部Ｐ３３がメッセージＭ２２を受信する。
１１．処理部Ｐ３３が確認メッセージＡ２２を処理部Ｐ００に送信する。
１２．処理部Ｐ００が確認メッセージＡ２２を受信する。
【００１１】
従来技術では、上のような処理を行なう処理部Ｐ００を実現する場合、図１２のような構成とする。図１２に示す処理部Ｐ００はメッセージ格納用メモリＰ００−Ｍ、状態制御部Ｐ００−Ｃ、メッセージ送信ポートＰ００−Ｓ、メッセージ受信ポートＰ００−Ｒから構成される。なお、メッセージ格納メモリＰ００−Ｍには図１２に示した内容を格納する。図１２中にＥＮＤとあるのは、メッセージの境界を示すためのデータである。また、宛先ＭＤ２０，ＭＤ２１，ＭＤ２２はそれぞれメッセージＭ２０，Ｍ２１，Ｍ２２の宛先情報であり、宛先ＭＤ２０は「Ｎ１０，Ｎ１１」という経路を格納しており、宛先ＭＤ２１は「Ｎ１０，Ｎ２０，Ｎ２１，Ｎ２２」という経路を格納しており、宛先ＭＤ２２は「Ｎ１０，Ｎ２０，Ｎ３０，Ｎ３１，Ｎ３２，Ｎ３３」という経路を格納している。
【００１２】
このような構成のもとでは、状態制御部Ｐ００−Ｃは図１３のような状態遷移となる。すなわち、メッセージ格納メモリＰ００−Ｍに格納された内容を読み、メッセージがある間はメッセージ送信ポートＰ００−Ｓから読んだデータを送信し、すべてのメッセージを読み終えたときには、メッセージ受信ポートＰ００−Ｒでメッセージが受信されるのを待つ。
【００１３】
なお、確認メッセージＡ２０，Ａ２１，Ａ２２を送信する処理部Ｐ１１，Ｐ２２，Ｐ３３は送信する確認メッセージを除いては同じ構成となる。例として処理部Ｐ１１の構成を図１４に示す。処理部Ｐ１１はメッセージ送信ポートＰ１１−Ｓ、メッセージ受信ポートＰ１１−Ｒ、制御部Ｐ１１−Ｃから構成され、制御部Ｐ１１−Ｃは図１５のような状態遷移をとる。すなわち、メッセージ受信ポートＰ１１−Ｒがメッセージを受信するのを待ち、メッセージ受信ポートＰ１１−Ｒがメッセージを受信したときには、処理部Ｐ１１−Ｃは受信したメッセージに応じた処理を行ない、確認メッセージＡ２０をメッセージ送信ポートＰ１１−Ｓから送信する。
【００１４】
【特許文献１】特開平１１−１６７５５６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１５】
このように、従来技術では、処理部Ｐ００の構成として状態制御部Ｐ００−Ｃ、メッセージ送信ポートＰ００−Ｓ、メッセージ受信ポートＰ００−Ｒの３つが必要となり、処理部Ｐ００の構成が複雑となる問題があり、また状態制御部Ｐ００−Ｃが３状態をとることが必要である。
【００１６】
本発明は上述の課題を解決するためになされたもので、メッセージを送信する処理部の構成が簡単であり、またメッセージを送信する処理部の状態制御部のとる状態数を削減することできる送信順序保証メッセージ送信装置、送信順序保証メッセージ送信方法を提供することを目的とする。
【課題を解決するための手段】
【００１７】
この目的を達成するため、本発明においては、複数の処理部を有し、各処理部にそれぞれ通信ノードが接続され、上記通信ノードが通信ネットワークを構成する送信順序保証メッセージ送信装置において、メッセージを送信する上記処理部は、宛先情報を有するロック・メッセージと宛先情報およびアンロック情報を有する複数の通常のメッセージとを送信し、上記各処理部は、自己が宛先の上記ロック・メッセージを受信したとき、自己の上記通信ノードをロック状態とし、上記各処理部は、自己が宛先の上記通常のメッセージを受信したとき、上記アンロック情報からアンロック・メッセージを生成し、上記アンロック・メッセージを送信し、上記各処理部は、自己が宛先の上記アンロック・メッセージを受信したとき、自己の上記通信ノードのロック状態を解除し、上記各処理部は、自己が宛先でない上記通常のメッセージを受信したとき、自己の通信ノードの次の経路の通信ノードがロック状態であれば、次の経路の通信ノードのロック状態が解除されるまで自己の上記通信ノードに上記通常のメッセージを待機させる。
【００１８】
また、複数の処理部を有し、各処理部にそれぞれ通信ノードが接続され、上記通信ノードが通信ネットワークを構成する送信順序保証メッセージ送信装置を使用した送信順序保証メッセージ送信方法において、宛先情報を有するロック・メッセージと宛先情報およびアンロック情報を有する複数の通常のメッセージとを上記処理部から送信し、自己が宛先の上記ロック・メッセージを上記処理部が受信したとき、上記ロック・メッセージを受信した上記処理部は自己の上記通信ノードをロック状態とし、自己が宛先の上記通常のメッセージを上記処理部が受信したとき、上記通常のメッセージを受信した上記処理部は上記アンロック情報からアンロック・メッセージを生成し、上記アンロック・メッセージを送信し、自己が宛先の上記アンロック・メッセージを上記処理部が受信したとき、上記アンロック・メッセージを受信した上記処理部は自己の通信ノードのロック状態を解除し、自己が宛先でない上記通常のメッセージを上記処理部が受信したとき、上記通常のメッセージを受信した上記処理部に自己の通信ノードの次の経路の通信ノードがロック状態であれば、次の経路の通信ノードのロック状態が解除されるまで自己の上記通信ノードに上記通常のメッセージを待機させる。
【発明の効果】
【００１９】
本発明に係る送信順序保証メッセージ送信装置、送信順序保証メッセージ送信方法においては、メッセージを送信する処理部はメッセージ受信ポートが不要であるから、メッセージを送信する処理部の構成が簡単であり、またメッセージを送信する処理部の動作はメッセージ格納メモリの内容を読み出し、読み出したメッセージをメッセージ送信ポートに送出するだけであるので、メッセージを送信する処理部の状態制御部のとる状態数を削減することできる。
【発明を実施するための最良の形態】
【００２０】
本発明の実施の形態を図１により説明する。図１では通信ノードＮ'００〜Ｎ'７７が存在し、通信ノードＮ'００〜Ｎ'７７がメッシュのトポロジを持つ通信ネットワークを構成している。また、例えば通信ノードＮ'００には処理部Ｐ'００、通信ノードＮ'０１には処理部Ｐ'０１というように、各通信ノードＮ'００〜Ｎ'７７にはそれぞれ対応づけられた処理部Ｐ'００〜Ｐ'７７が存在する。
【００２１】
このとき、処理部Ｐ'００が他の処理部Ｐ'１１，Ｐ'２２，Ｐ'３４に対し、次の順序でメッセージＭ３０，Ｍ３１，Ｍ３２を送信する場合を考える。
１．処理部Ｐ'００からメッセージＭ３０〜Ｍ３２を処理部Ｐ'１１，Ｐ'２２，Ｐ'３４に送信する。
２．処理部Ｐ'１１がメッセージＭ３０を受信する。
３．処理部Ｐ'２２がメッセージＭ３１を受信する。
４．処理部Ｐ'３４がメッセージＭ３２を受信する。
【００２２】
これを実現するため、本発明では、通信ネットワークを介して送受信されるメッセージとして、通常のメッセージに加えてロック・メッセージ、アンロック・メッセージを導入する。通常のメッセージ、ロック・メッセージ、アンロック・メッセージのそれぞれについて、宛先情報を含めた形式を図２に示す。通常のメッセージはアンロック情報を有している。また、メッセージの部分に格納されるものとして１ｏｃｋ、ｕｎｌｏｃｋという特殊な情報を表すものを格納したものがロック・メッセージ、アンロック・メッセージである。
【００２３】
ロック・メッセージは宛先情報で指定された通信ノードを一時的に停止させるもので、ロック・メッセージを受信した通信ノードはメッセージの転送を行なわなくなる。この状態をロック状態と呼ぶ。このため、ロック状態の通信ノードを利用するメッセージの転送は経路の直前の通信ノードにおいて待機させられる。このロック状態を解除するものがアンロック・メッセージであり、ロック状態にある通信ノードにアンロック・メッセージを送信すると、その通信ノードはロック状態を解除され、通常のメッセージの転送を再開する。通常のメッセージのアンロック情報は、ロック・メッセージの宛先情報で指定された通信ノードの情報を有している。すなわち、メッセージを送信する処理部は、送信すべきメッセージの送信経路情報である宛先情報に基づいて、ロック・メッセージを生成するとともに、アンロック情報を生成して、通常のメッセージにアンロック情報を追加する。
【００２４】
このような機能は、各通信ノードの状態遷移を図３のようにすることで実現できる。すなわち、新しいメッセージを待っている状態の時にメッセージを受信したときには、受信したメッセージがロック・メッセージであり、かつロックの対象が自分か否かを判断する。そして、受信したメッセージがロック・メッセージであり、かつロックの対象が自分であるときには、アンロック・メッセージを待つ。一方、受信したメッセージがロック・メッセージでないとき、あるいはメッセージがロック・メッセージであっても、ロックの対象が自分でないときには、宛先情報に従ってメッセージを転送する隣接通信ノードを決定する。そして、転送する隣接通信ノードが新しいメッセージを待っている状態になるまで待ち、転送する隣接通信ノードが新しいメッセージを待っている状態になったときには、メッセージを隣接通信ノードに転送し、新しいメッセージを待っている状態となる。
【００２５】
つぎに、本発明における処理部Ｐ'００の構成を図４に示す。処理部Ｐ'００はメッセージ送信ポートＰ'００−Ｓ、状態制御部Ｐ'００−Ｃ、メッセージ格納メモリＰ'００−Ｍから構成される。メッセージ格納メモリＰ'００−Ｍには宛先ＭＤ４０（Ｎ'０１，Ｎ'１１，Ｎ'２１）のロック・メッセージＬ４０、宛先ＭＤ４１（Ｎ'０１，Ｎ'０２，Ｎ'０３，Ｎ'１３，Ｎ'２３，Ｎ'３３）のロック・メッセージＬ４１、宛先ＭＤ３０（Ｎ'１０，Ｎ'１１）の通常のメッセージＭ３０、宛先ＭＤ３１（Ｎ'０１，Ｎ'１１，Ｎ'２１，Ｎ'２２）の通常のメッセージＭ３１、宛先ＭＤ３２（Ｎ'０１，Ｎ'０２，Ｎ'０３，Ｎ'１３，Ｎ'２３，Ｎ'３３，Ｎ'３４）の通常のメッセージＭ３２が順に格納されている。そして、メッセージＭ３０には宛先が通信ノードＮ'２１であるアンロック・メッセージＵ００の生成を指示するアンロック情報が含まれており、メッセージＭ３１には宛先を通信ノードＮ'３３とするアンロック・メッセージＵ０１の生成を指示するアンロック情報が含まれている。なお、メッセージＭ３２にはアンロック情報は含まれていない。また、状態制御部Ｐ'００−Ｃはメッセージ格納メモリＰ'００−Ｍの内容を先頭から読み出し、読み出したメッセージをメッセージ送信ポートＰ'００−Ｓから送信する。
【００２６】
すなわち、メッセージを送信する処理部は、宛先情報を有するロック・メッセージと宛先情報およびアンロック情報を有する複数の通常のメッセージとを送信する。なお、最後の通常のメッセージはアンロック情報を有しない。
【００２７】
ここで、ロック・メッセージＬ４０、Ｌ４１、アンロック情報の生成について説明する。まず、メッセージＭ３１の経路通信ノード「Ｎ'０１，Ｎ'１１，Ｎ'２１」のうちから１つの経路通信ノードＮ'２１を選択し、選択した経路通信ノードＮ'２１を最終宛先通信ノードとする宛先ＭＤ４０のロック・メッセージＬ４０を生成する。また、メッセージＭ３２の経路通信ノード「Ｎ'０１，Ｎ'０２，Ｎ'０３，Ｎ'１３，Ｎ'２３，Ｎ'３３」のうちから１つの経路通信ノードＮ'３３を選択し、選択した経路通信ノードＮ'３３を最終宛先通信ノードとする宛先ＭＤ４１のロック・メッセージＬ４１を生成する。また、ロック・メッセージＬ４０の最終宛先通信ノードＮ'２１を宛先とするアンロック・メッセージＵ００の生成を指示するアンロック情報を生成する。また、ロック・メッセージＬ４１の最終宛先通信ノードＮ'３３を宛先とするアンロック・メッセージＵ０１の生成を指示するアンロック情報を生成する。
【００２８】
また、本発明における処理部Ｐ'１１の構成を図５に示す。処理部Ｐ'１１における制御部Ｐ'１１−Ｃでは図６の状態遷移図で示す動作を行なう。すなわち、メッセージ受信ポートＰ'１１−ＲからメッセージＭ３０を受信したとき、メッセージＭ３０に応じた処理を行なったのち、メッセージＭ３０のアンロック情報に基づいて最終宛先通信ノードを通信ノードＮ'２１としたアンロック・メッセージＵ００を生成し、アンロック・メッセージＵ００をメッセージ送信ポートＰ'１１−Ｓから送信する。また、処理部Ｐ'１１では、メッセージ受信ポートＰ'１１−ＲからメッセージＭ３１を受信したとき、通信ノードＮ'２１のロック状態が解除されるまで受信したメッセージＭ３１を通信ノードＮ'１１に待機させる。
【００２９】
なお、処理部Ｐ'２２、Ｐ'３４、Ｐ'２１、Ｐ'３３、Ｐ'２３も処理部Ｐ'１１の構成と同様の構成である。そして、処理部Ｐ'２２では、メッセージ受信ポートＰ'２２−ＲからメッセージＭ３１を受信したとき、メッセージＭ３１に応じた処理を行なったのち、メッセージＭ３１のアンロック情報に基づいて最終宛先通信ノードを通信ノードＮ'３３としたアンロック・メッセージＵ０１を生成し、アンロック・メッセージＵ０１を送信する。また、処理部Ｐ'３４では、メッセージ受信ポートＰ'３４−ＲからメッセージＭ３２を受信したとき、メッセージＭ３２に応じた処理を行なって、動作を完了する。また、処理部Ｐ'２１では、メッセージ受信ポートＰ'２１−Ｒからロック・メッセージＬ４０を受信したとき、通信ノードＮ'２１をロック状態とし、メッセージ受信ポートＰ'２１−Ｒからアンロック・メッセージＵ００を受信したとき、通信ノードＮ'２１のロック状態を解除する。また、処理部Ｐ'３３では、メッセージ受信ポートＰ'３３−Ｒからロック・メッセージＬ４１を受信したとき、通信ノードＮ'３３をロック状態とし、メッセージ受信ポートＰ'３３−Ｒからアンロック・メッセージＵ０１を受信したとき、通信ノードＮ'３３のロック状態を解除する。また、処理部Ｐ'２３では、メッセージ受信ポートＰ'２３−Ｒから通常のメッセージＭ３２を受信したとき、通信ノードＮ'３３のロック状態が解除されるまで受信したメッセージＭ３２を通信ノードＮ'２３に待機させる。
【００３０】
すなわち、各処理部は、自己が宛先のロック・メッセージを受信したとき、自己の通信ノードをロック状態とする。また、各処理部は、自己が宛先の通常のメッセージを受信したとき、アンロック情報からアンロック・メッセージを生成し、アンロック・メッセージを送信する。また、各処理部は、自己が宛先のアンロック・メッセージを受信したとき、自己の通信ノードのロック状態を解除する。また、各処理部は、自己が宛先でない通常のメッセージを受信したとき、自己の通信ノードの次の経路の通信ノードがロック状態であれば、次の経路の通信ノードのロック状態が解除されるまで自己の通信ノードに通常のメッセージを待機させる。
【００３１】
つぎに、図１等に示した送信順序保証メッセージ送信装置の動作、すなわち本発明に係る送信順序保証メッセージ送信方法について説明する。まず、処理部Ｐ'００の状態制御部Ｐ'００−Ｃはメッセージ格納メモリＰ'００−Ｍに格納された内容を読み、ロック・メッセージＬ４０、Ｌ４１をメッセージ送信ポートＰ'００−Ｓから送信する。この場合、ロック・メッセージＬ４０は通信ノードＮ'０１，Ｎ'１１を介して通信ノードＮ'２１に送信され、またロック・メッセージＬ４１は通信ノードＮ'０１，Ｎ'０２，Ｎ'０３，Ｎ'１３，Ｎ'２３を介して通信ノードＮ'３３に送信される。したがって、図７に示すように、通信ノードＮ'２１，Ｎ'３３がロック状態となる。
【００３２】
つぎに、処理部Ｐ'００中の状態制御部Ｐ'００−Ｃはメッセージ格納メモリＰ'００−Ｍに格納された内容を読み、３つのメッセージＭ３０〜Ｍ３２を順に送信する。これら３つのメッセージＭ３０〜Ｍ３２のうち、メッセージＭ３０は通信ノードＮ'１０を介して通信ノードＮ'１１に到達する。しかし、通信ノードＮ'２１がロック状態となっているため、メッセージＭ３１は通信ノードＮ'０１を介してＮ'１１に到達して、通信ノードＮ'１１で待機させられる。また、通信ノードＮ'３３がロック状態となっているため、メッセージＭ３２は通信ノードＮ'０１，Ｎ'０２，Ｎ'０３，Ｎ'１３を介してＮ'２３に到達して、通信ノードＮ'２３で待機させられる。この状態を、図８に示す。
【００３３】
なお、この際、ロック対象の通信ノードに対し、待機させたい通常のメッセージより先にロック・メッセージが到達することを保証するため、待機させた通常のメッセージの伝達経路にロック・メッセージの伝達経路が包含されていなければならない。実際、この例では、ロック・メッセージＬ４０の伝達経路（Ｎ'０１，Ｎ'１１，Ｎ'２１）はメッセージＭ３１の伝達経路（Ｎ'０１，Ｎ'１１，Ｎ'２１，Ｎ'２２）に包含されている。ロック・メッセージＬ４１とメッセージＭ３２も同様の関係となっている。
【００３４】
そして、メッセージＭ３０を受信した処理部Ｐ'１１はメッセージＭ３０に応じた処理を行なったのち、処理部Ｐ'１１はアンロック・メッセージＵ００を送信する。これにより、通信ノードＮ'２１におけるロック状態が解除される。このため、通信ノードＮ'１１で待機させられていたメッセージＭ３１が通信ノードＮ'２１を介して通信ノードＮ'２２に送信され、処理部Ｐ'２２はメッセージＭ３１に応じた処理を行なったのち、処理部Ｐ'２２はアンロック・メッセージＵ０１を送信する。これにより、通信ノードＮ'３３におけるロック状態が解除される。このため、通信ノードＮ'２３で待機させられていたメッセージＭ３２が通信ノードＮ'３３を介して通信ノードＮ'３４に送信され、処理部Ｐ'３４はメッセージＭ３２に応じた処理を行なう。このようにして、つぎのような動作の順序を保証することが可能である。
１．処理部Ｐ'００からメッセージＭ３０〜Ｍ３２を処理部Ｐ'１１、Ｐ'２２、Ｐ'３４に送信する。
２．処理部Ｐ'１１がメッセージＭ３０を受信する。
３．処理部Ｐ'２２がメッセージＭ３１を受信する。
４．処理部Ｐ'３４がメッセージＭ３２を受信する。
【００３５】
このような送信順序保証メッセージ送信装置、送信順序保証メッセージ送信方法においては、メッセージを送信する処理部Ｐ'００はメッセージ送信ポートＰ'００−Ｓ、状態制御部Ｐ'００−Ｃ、メッセージ格納メモリＰ'００−Ｍから構成され、メッセージ受信ポートが不要であるから、処理部Ｐ'００の構成は簡単である。また、メッセージを送信する処理部Ｐ'００の状態制御部Ｐ'００−Ｃの動作はメッセージ格納メモリＰ'００−Ｍの内容を読み出し、読み出したメッセージをメッセージ送信ポートＰ'００−Ｓに送出するだけであるので、状態制御部Ｐ'００−Ｃがとる状態数は１であり、状態制御部Ｐ'００−Ｃのとる状態数を削減することできる。
【図面の簡単な説明】
【００３６】
【図１】本発明に係る送信順序保証メッセージ送信装置を示す図である。
【図２】図１に示した送信順序保証メッセージ送信装置の処理部から送信されるメッセージの内容を示す図である。
【図３】図１に示した送信順序保証メッセージ送信装置の通信ノードの状態遷移を示す図である。
【図４】図１に示した送信順序保証メッセージ送信装置の処理部の構成を示す図である。
【図５】図１に示した送信順序保証メッセージ送信装置の他の処理部の構成を示す図である。
【図６】図５に示した処理部の状態遷移を示す図である。
【図７】図１に示した送信順序保証メッセージ送信装置の動作説明図である。
【図８】図１に示した送信順序保証メッセージ送信装置の動作説明図である。
【図９】従来の送信順序保証メッセージ送信装置を示す図である。
【図１０】図９に示した送信順序保証メッセージ送信装置の動作説明図である。
【図１１】図９に示した送信順序保証メッセージ送信装置の通信ノードの状態遷移を示す図である。
【図１２】図９に示した送信順序保証メッセージ送信装置の処理部の構成を示す図である。
【図１３】図１２に示した処理部の状態遷移を示す図である。
【図１４】図９に示した送信順序保証メッセージ送信装置の他の処理部の構成を示す図である。
【図１５】図１４に示した処理部の状態遷移を示す図である。
【符号の説明】
【００３７】
Ｐ'００〜Ｐ'７７…処理部
Ｎ'００〜Ｎ'７７…通信ノード
【図１】
2006246101.tif 000003
【図２】
2006246101.tif 000004
【図３】
2006246101.tif 000005
【図４】
2006246101.tif 000006
【図５】
2006246101.tif 000007
【図６】
2006246101.tif 000008
【図７】
2006246101.tif 000009
【図８】
2006246101.tif 000010
【図９】
2006246101.tif 000011
【図１０】
2006246101.tif 000012
【図１１】
2006246101.tif 000013
【図１２】
2006246101.tif 000014
【図１３】
2006246101.tif 000015
【図１４】
2006246101.tif 000016
【図１５】
2006246101.tif 000017