(57)【特許請求の範囲】
【請求項１】
ネットワークに接続された複数の端末装置が、その接続位置に応じた一定順序にしたがって送信情報を中継することにより、各端末装置間における通信を行うリング型ネットワークの受信確認方法であって、
送信元の端末装置は、送信先の受信要素を指定する指定情報と、送信先の受信要素に係る端末装置によって加算可能なＡＣＫカウンタおよびＮＡＣＫカウンタとを含む送信情報を送信すると共に、ネットワークにおける該送信情報の送信先となる受信要素の数を予め把握し、
前記指定情報により指定される受信要素に係る端末装置は、該受信要素が送信情報を正常に受信した場合には、ＡＣＫカウンタを所定値加算して後続の端末装置に中継し、該受信要素が送信情報を正常に受信しなかった場合には、ＮＡＣＫカウンタを所定値加算して後続の端末装置に中継し、
前記送信元の端末装置は、ネットワークを中継されて回帰した前記送信情報のＡＣＫカウンタと、予め把握している前記送信先の受信要素の数とに基づいて、送信先である全ての受信要素において、前記送信情報が正常に受信されたか否かを確認すると共に、ネットワークを中継されて回帰した前記送信情報のＮＡＣＫカウンタに基づいて、送信先である受信要素のいずれかにおいて、前記送信情報が正常に受信されなかったことを確認することにより、前記送信先の受信要素の全てにおいて、送信情報が正常に受信されたか否かを判定可能であり、さらに、ネットワークを中継されて回帰した前記送信情報のＡＣＫカウンタおよびＮＡＣＫカウンタの合計値と、予め把握している前記送信先の受信要素の数とに基づいて、ネットワークの要素の構成の変化を検出可能であることを特徴とするリング型ネットワークの受信確認方法。
【請求項２】
前記送信元の端末装置は、ネットワークを中継されて回帰した前記送信情報のＡＣＫカウンタおよびＮＡＣＫカウンタの合計値を、ネットワークにおける前記送信情報の送信先となる受信要素の数として新たに把握することを特徴とする請求項１記載のリング型ネットワークの受信確認方法。
【請求項３】
ネットワークに接続された複数の端末装置が、その接続位置に応じた一定順序にしたがって送信情報を中継することにより、各端末装置間における通信を行うリング型ネットワークの端末装置であって、
送信先の受信要素を指定する指定情報と、送信先の受信要素に係る端末装置によって加算可能なＡＣＫカウンタおよびＮＡＣＫカウンタとを含む送信情報を送信する送信手段と、
ネットワークを中継されて回帰した前記送信情報のＡＣＫカウンタと、予め把握している前記送信先の受信要素の数とに基づいて、送信先である全ての受信要素において、前記送信情報が正常に受信されたか否かを確認すると共に、ネットワークを中継されて回帰した前記送信情報のＮＡＣＫカウンタに基づいて、送信先である受信要素のいずれかにおいて、前記送信情報が正常に受信されなかったことを確認することにより、該送信情報が前記送信先の受信要素の全てにおいて正常に受信されたか否かを判定する判定手段と、
ネットワークを中継されて回帰した前記送信情報のＡＣＫカウンタおよびＮＡＣＫカウンタの合計値と、予め把握している前記送信先の受信要素の数とに基づいて、ネットワークの要素の構成の変化を検出する検出手段と、
を備えることを特徴とする端末装置。
【請求項４】
ネットワークを中継されて回帰した前記送信情報のＡＣＫカウンタおよびＮＡＣＫカウンタの合計値を、ネットワークにおける前記送信情報の送信先となる受信要素の数として新たに把握することを特徴とする請求項３記載の端末装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数の端末装置を含むリング型ネットワークにおける通信データの受信確認方法および端末装置に関する。
【０００２】
【従来の技術】
従来、ネットワークの各端末装置（以下、ハブ等を含むノードの意として用いる）間を接続する形態（ネットワークトポロジ）として、１０ＢＡＳＥ−５等のバス型、１０ＢＡＳＥ−Ｔ等のスター型、ＩＥＥＥ（Institute of Electrical and Electronic Engineers）１３９４等のツリー型あるいはＦＤＤＩ（Fiber Distributed Data Interface）等のリング型といったトポロジが知られている。
【０００３】
このようなトポロジの中で、リング型のネットワークは、ネットワークに接続された複数の端末装置に所定の順序が設定され、特定の端末装置が送信したフレーム（データ）は、これら端末装置を所定の順序で中継されることによってネットワークを１周し、送信元の端末装置に戻るという特徴を有する。また、各端末装置は、受信したフレームに変更を加えて後続の端末装置に中継することが可能である。
【０００４】
リング型ネットワークのこのような特徴を利用した技術として、以下の技術が挙げられる。
例えば、特開平１１−２８４６４５号公報には、ネットワークに接続された各端末装置が、中継するフレームにデータの挿入あるいは削除を行い、それによって変化したフレームのデータサイズに関する情報も変更して、フレームを中継する技術が開示されている。この方式によると、送信元端末装置から送信されたフレームは、ネットワーク上を２周する間に、所定手順に従い、各端末装置がデータの挿入あるいは削除を施すことによって、全ての端末装置に変更されたフレームの情報を配信することが可能である。
【０００５】
また、特開平１１−１２７１８１号公報には、ネットワークに接続された特定の管理用端末装置が、中継するフレームの一部に所定の変更を加え、管理用端末装置が中継する各フレームについて、既に中継したフレームであるか否かを判定する技術が開示されている。この方式によると、いずれかの端末装置において、削除すべきフレームの削除に失敗した場合に、そのフレームがネットワークを巡回し続ける事態を回避することが可能となる。
【０００６】
ところで、上述の各トポロジにおいて、ネットワークのアクセス制御方法は、トークン方式あるいはＣＳＭＡ／ＣＤ等を適宜用いるものであるが、いずれのアクセス制御方法を用いる場合においても、通信の態様としては、ユニキャスト通信、ブロードキャスト通信およびマルチキャスト通信の３種類に大別される。
例えば、ＩＥＥＥ１３９４においては、これら３種類の通信のいずれをも行うことができる。ここで、ユニキャスト通信とは、特定の端末装置間で行われる１対１の通信、ブロードキャスト通信とは、特定の端末装置から全ての端末装置に対する通信、マルチキャスト通信とは、特定の端末装置から所定のグループに属する端末装置に対する通信である。
【０００７】
以下、ＩＥＥＥ１３９４において、ネットワークに接続された各端末装置に“０”〜“６２”の端末番号が付されているものとして、ユニキャスト通信、ブロードキャスト通信およびマルチキャスト通信の処理について概略を説明する。
ユニキャスト通信では、情報を送信する端末装置が、送信先端末番号と送信元端末番号を含むアシンクロナスパケット（非同期転送されるパケット）をネットワークに送信する。そして、パケットの送信先である端末装置がパケットを受信すると、送信元の端末装置にパケットの受信状況を示すアクノリッジパケットを送信し、アシンクロナスパケットを送信した端末装置は、アクノリッジパケットを受信することによって送信の成功／失敗を判定する。ここで、アクノリッジパケットには、パケットの受信の成功あるいは失敗等を示すアクノリッジコードが含まれており、具体的なアクノリッジコードとして、受信成功を示す“complete”、受信失敗を示す“busy”、受信データにエラーが発生していることを示す“data#error”等のコードがセットされる。
【０００８】
なお、アシンクロナスパケットの送信元の端末装置では、アクノリッジパケットによって送信先の端末装置において情報が正常に受信されなかったことを確認した場合、再送信等を行い、確実に情報の送信を行うことができる。
また、ブロードキャスト通信では、送信元の端末装置は、ユニキャスト通信と同様のアシンクロナスパケットを送信するが、送信先端末番号として、“６３”が付されている。この送信先端末番号“６３”は、全ての端末装置を宛先とすることを示す特別の番号である。なお、ブロードキャスト通信では、送信先の端末装置はアクノリッジパケットを送信せず、送信元の端末装置は、アシンクロナスパケットの送信を行うことによって情報の送信処理を完了し、送信の成功／失敗の確認は行わない。
【０００９】
さらに、マルチキャスト通信では、送信元の端末装置は、予め設定された“０”〜“６３”のチャネル番号によって表されるグループを送信先としてアイソクロナスパケット（規則的な間隔で転送されるパケット）を送信する。また、各端末装置には、“０”〜“６３”のチャネル番号が設定されており、送信元の端末装置によって送信されたアイソクロナスパケットのチャネル番号が自装置に設定されたチャネル番号と一致する場合、そのパケットを受信する。ここで、各端末装置には、上述のグループを表す１つ又は複数のチャネル番号が設定されている。なお、マルチキャスト通信では、ブロードキャスト通信と同様に、送信先の端末装置はアクノリッジパケットを送信せず、送信元の端末装置は、送信の成功／失敗の確認を行わない。
【００１０】
【発明が解決しようとする課題】
しかしながら、上述の通り、マルチキャスト通信においては、特定の送信先に対する通信を行うにも関わらず送信の成功／失敗を確認しないため、ユニキャスト通信と異なり、情報の確実な送信は保証されないものである。このとき、以下のような事態が生ずる。
即ち、特定の端末装置から他の複数の端末装置に対し、スイッチ操作によるネットワーク構成の変化といった所定の情報を確実に送信するためには、送信先であるそれぞれの端末装置に対してユニキャスト通信を行うか、送信の失敗が発生することを想定して予めマルチキャスト通信を複数回行うか、スイッチ操作等が行われた場合に限らず、定期的に情報をマルチキャスト通信するといった対処を行う必要がある。
【００１１】
これらいずれの場合にも、１つのデータを送信するのみの処理であるにも関わらず、同様の動作を複数回繰り返す必要があり、伝送効率あるいは通信レスポンスの低下を招くこととなる。また、スイッチ操作の頻度が増加すれば、それに伴って上述のような動作の回数が増し、伝送効率あるいは通信レスポンスがさらに低下することとなる。
また、情報の送信先の端末装置がネットワークから脱退した場合、ユニキャスト通信においては送信先端末装置からの応答時間を監視することにより、その端末装置の脱退を検出することができる。
【００１２】
しかし、この場合、応答時間を監視している間は、ネットワークにおいて他の通信が行えないため、無駄時間が発生すると共に、端末装置の脱退を検出するのに一定の時間を要するため、対処が遅れることとなる。一方、マルチキャスト通信においては、送信の成功／失敗の確認を行わないことから、端末装置の脱退を検出することはできない。
さらに、脱退した端末装置がネットワークに再度加入した場合、ユニキャスト通信においては、上述の無駄時間の発生を避けるためにその端末装置への通信を停止していることから、再加入を直ちに検出することはできず、そのため、通信を直ちに再開することもできない。
【００１３】
一方、マルチキャスト通信においては、端末装置が再加入した場合、その端末装置に通信データは送信されることとなるが、ネットワークに再加入したことは検出できないため、ネットワークへの再加入に対応する所定処理（再登録等）を行うことができない。
したがって、マルチキャスト通信の場合、定期的に加入している端末の検出を行う必要がある。しかし、ネットワークの伝送効率の都合上、この検出を高頻度に行うことはできず、そのため、再加入した端末装置の検出が遅れ、再加入に対応する所定処理が遅れることとなる。
【００１４】
このような問題は、マルチキャスト通信において、送信の成功／失敗が確認されないことに起因している。また、この問題は、上述の特開平１１−２８４６５号公報あるいは特開平１１−１２７１８１号公報に開示されたリング型のネットワークにおいても同様に発生する。
本発明の課題は、リング型のネットワークにおいて、マルチキャスト通信を行う際に送信先端末装置からの応答確認を可能とすることである。
【００１５】
【課題を解決するための手段】
以上の課題を解決するため、請求項１記載の発明は、
ネットワークに接続された複数の端末装置が、その接続位置に応じた一定順序（例えば、図１におけるネットワーク５０の時計回りの順序）にしたがって送信情報（例えば、図３に示すフレーム１０ａ〜４０ａ）を中継することにより、各端末装置間における通信を行うリング型ネットワークの受信確認方法であって、
送信元の端末装置（例えば、図１の端末装置１０）は、送信先の受信要素（例えば、図１の端末装置２０〜４０あるいは各端末装置に含まれるオブジェクト）を指定する指定情報（例えば、図２のチャネル番号）と、送信先の受信要素に係る端末装置によって加算可能なＡＣＫカウンタおよびＮＡＣＫカウンタとを含む送信情報を送信すると共に、ネットワークにおける該送信情報の送信先となる受信要素の数（例えば、発明の詳細な説明中の想定端末数）を予め把握し、
前記指定情報により指定される受信要素に係る端末装置（例えば、指定されたチャネル番号を受信するように設定されているオブジェクトを有する端末装置あるいは指定されたチャネル番号を受信するように設定されている端末装置）は、該受信要素が送信情報を正常に受信した場合には、ＡＣＫカウンタを所定値加算して後続の端末装置に中継し、該受信要素が送信情報を正常に受信しなかった場合には、ＮＡＣＫカウンタを所定値加算して後続の端末装置に中継し、
前記送信元の端末装置は、ネットワークを中継されて回帰した前記送信情報（例えば、発明の詳細な説明中の回帰フレーム）のＡＣＫカウンタと、予め把握している前記送信先の受信要素の数とに基づいて、送信先である全ての受信要素において、前記送信情報が正常に受信されたか否かを確認すると共に、ネットワークを中継されて回帰した前記送信情報のＮＡＣＫカウンタに基づいて、送信先である受信要素のいずれかにおいて、前記送信情報が正常に受信されなかったことを確認することにより、前記送信先の受信要素の全てにおいて、送信情報が正常に受信されたか否かを判定可能であり、さらに、ネットワークを中継されて回帰した前記送信情報のＡＣＫカウンタおよびＮＡＣＫカウンタの合計値（例えば、発明の詳細な説明中のカウンタ合計値）と、予め把握している前記送信先の受信要素の数とに基づいて、ネットワークの要素の構成の変化を検出可能であることを特徴としている。
【００１６】
請求項２記載の発明は、
請求項１記載のリング型ネットワークの受信確認方法であって、
前記送信元の端末装置は、ネットワークを中継されて回帰した前記送信情報のＡＣＫカウンタおよびＮＡＣＫカウンタの合計値を、ネットワークにおける前記送信情報の送信先となる受信要素の数として新たに把握することを特徴としている。
【００１７】
請求項３記載の発明は、
ネットワークに接続された複数の端末装置が、その接続位置に応じた一定順序にしたがって送信情報を中継することにより、各端末装置間における通信を行うリング型ネットワークの端末装置（例えば、図３あるいは図７の端末装置１０）であって、
送信先の受信要素を指定する指定情報と、送信先の受信要素に係る端末装置によって加算可能なＡＣＫカウンタおよびＮＡＣＫカウンタとを含む送信情報を送信する送信手段と、
ネットワークを中継されて回帰した前記送信情報のＡＣＫカウンタと、予め把握している前記送信先の受信要素の数とに基づいて、送信先である全ての受信要素において、前記送信情報が正常に受信されたか否かを確認すると共に、ネットワークを中継されて回帰した前記送信情報のＮＡＣＫカウンタに基づいて、送信先である受信要素のいずれかにおいて、前記送信情報が正常に受信されなかったことを確認することにより、該送信情報が前記送信先の受信要素の全てにおいて正常に受信されたか否かを判定する判定手段と、
ネットワークを中継されて回帰した前記送信情報のＡＣＫカウンタおよびＮＡＣＫカウンタの合計値と、予め把握している前記送信先の受信要素の数とに基づいて、ネットワークの要素の構成の変化を検出する検出手段と、
を備えることを特徴としている。
【００１８】
請求項４記載の発明は、
請求項３記載の端末装置であって、
ネットワークを中継されて回帰した前記送信情報のＡＣＫカウンタおよびＮＡＣＫカウンタの合計値を、ネットワークにおける前記送信情報の送信先となる受信要素の数として新たに把握することを特徴としている。
【００１９】
本発明によれば、送信元の端末装置において、送信情報が送信先の受信要素によって正常に受信されたか否かを確認することができる。また、そのため、送信先の受信要素によって送信情報が正常に受信されなかった場合にのみ送信情報の再送を行うこととでき、送信先の受信要素に確実に送信情報を送信するために複数回の送信を不必要に行うことを回避することができる。即ち、伝送効率あるいは通信レスポンスの低下を避けることができる。
【００２０】
また、本発明によれば、送信先の受信要素がネットワークに加入している状態で送信情報の受信に失敗した場合にのみ、送信情報の再送を行うこととできる。そのため、送信先の受信要素がネットワークから脱退しているにも関わらず、送信情報の再送信を繰り返してしまう事態を回避することができ、伝送効率あるいは通信レスポンスの低下を避けることができる。さらに、ＡＣＫカウンタおよびＮＡＣＫカウンタの合計値に基づいて、現在、ネットワークに含まれる受信要素の総数を把握することができる。
【００２８】
【発明の実施の形態】
以下、図を参照して本発明に係るリング型ネットワークの実施の形態を詳細に説明する。
（第１の実施の形態）
図１は、本発明を適用した第１の実施の形態に係るリング型ネットワーク１の構成を示す図である。
【００２９】
リング型ネットワーク１は、送信元の端末装置が、マルチキャスト通信するフレームにＡＣＫカウンタを含めて送信し、送信先の端末装置が、フレームを正常に受信した場合にＡＣＫカウンタをカウントアップして、そのフレームを中継する。したがって、送信元の端末装置において、送信対象のフレームが送信先の端末装置によって正常に受信されたか否かを検出できる。
まず、構成を説明する。
【００３０】
図１において、リング型ネットワーク１は、端末装置１０〜４０と、伝送媒体５０とを含んで構成される。
端末装置１０〜４０は、伝送媒体５０と端末装置１０〜４０との間でのデータの送受信を行う通信部、データを記憶する記憶部、データを表示する表示部、これらの各機能部を管理し、端末装置全体の制御を行う制御部等を備えている。
これら端末装置１０〜４０には、リング型ネットワーク１における接続位置に応じた所定の順序が設定されており、いずれかの端末装置が送信したフレームは、各端末装置が順次、この所定順序にしたがって後続の端末装置に中継することにより、全ての端末装置に送信可能である。なお、図１においては、ネットワークに接続された各端末装置が時計回りの順にフレームを中継する。
【００３１】
また、各端末装置には、自装置が受信する（即ち、コピーして中継する）フレームのチャネル番号および自装置が中継するフレームのチャネル番号が設定されている。例えば、図１において、端末装置２０，４０は、チャネル番号“７”のフレームを受信するように設定され、一方、端末装置１０はチャネル番号“７”のフレームを中継するように設定されている。
そして、自装置が受信するように設定されたチャネル番号のフレームを受信した端末装置は、そのフレームを正常に受信した場合、フレームのＡＣＫカウンタ（後述）を“１”カウントアップして、後続の端末装置に中継する。
【００３２】
なお、各端末装置は、各チャネル番号のフレームを受信するように設定されている端末装置の数（以下、「想定端末数」と言う。）を記憶しており、想定端末数と、自装置が送信し、ネットワークを１周して受信したフレーム（以下、「回帰フレーム」と言う。）のＡＣＫカウンタの値とに基づいて、送信対象のフレームが全ての送信先端末装置によって正常に受信されたか否かを判定する。
次に、リング型ネットワーク１において送受信されるフレームについて説明する。
【００３３】
図２は、フレームの情報構成を示す図である。
図２において、フレームは、“フレーム種別”、そのフレームの “チャネル番号”、フレームの“データサイズ”、送信対象データの内容を表す“データ”、そのフレームが受信側端末装置で正常に受信された場合にカウントアップされる“ＡＣＫカウンタ”および“ＣＲＣ（Cyclic Redundancy Check）コード”の各情報を含んで構成される。
【００３４】
また、図２に示すフレームは、フレーム種別を先頭とする順序（図２に示す送信方向）で送信される。
ここで、図２に示すように、ＡＣＫカウンタがデータより後ろに位置しているのは、送信先の端末装置において、受信バッファの溢れ等により、データが正常に受信されない場合に、その事態が発生する前にＡＣＫカウンタがカウントアップされることを防ぐためである。また、ＣＲＣコードが最後に位置している構成（即ち、ＡＣＫカウンタがＣＲＣコードより前に位置している構成）は、通常のフレームと同様の趣旨に基づくものであり、仮に、送信先の端末装置でＡＣＫカウンタがカウントアップされた後にＣＲＣコードによりフレームの異常が判明した場合、端末装置はそのフレームを破棄（正常なフレームとして処理しない）するため、ＡＣＫカウンタをカウントアップしたことによる影響は生じない。また、送信元端末装置は、ＣＲＣコードが異常なフレームを受信した場合にも、ＡＣＫカウンタの値を参照することなく破棄するため問題とならない。
【００３５】
なお、ＡＣＫカウンタをＣＲＣコードの後ろに配置する構成としてもよいが、この場合、さらにＡＣＫカウンタ用のＣＲＣコードが必要となる。
次に、リング型ネットワーク１におけるマルチキャスト通信処理について説明する。
図３は、端末装置１０が送信した送信対象フレームが送信先の端末装置によって正常に受信・中継される場合の処理を表す図である。
【００３６】
以下、端末装置１０が送信する送信対象フレームをフレーム１０ａとし、端末装置２０〜４０によって中継される際のフレームをそれぞれフレーム２０ａ〜４０ａと称する。また、図３において、端末装置２０，４０は、チャネル番号“７”のフレームを受信する設定であり、端末装置３０は、チャネル番号“７”のフレームを中継するのみの端末装置である。さらに、端末装置１０は、チャネル番号“７”のフレームを受信する端末装置の想定端末数として“２”を記憶している。
【００３７】
初めに、端末装置１０は、送信対象フレームであるフレーム１０ａを端末装置２０に送信する（時刻Ｔ＝１）。このとき、フレーム１０ａには、ＡＣＫカウンタ“０”が設定されている（ＡＣＫカウンタ＝０）。
次に、端末装置２０がフレーム１０ａを受信する。そして、端末装置２０は、フレーム１０ａを正常に受信し、ＡＣＫカウンタを“１”カウントアップする（ＡＣＫカウンタ＝１）。
【００３８】
さらに、端末装置２０は、ＡＣＫカウンタをカウントアップしたフレーム２０ａを端末装置３０に中継する（時刻Ｔ＝２）。
次に、端末装置３０がフレーム２０ａを受信する。そして、端末装置３０は、フレーム２０ａのＡＣＫカウンタを変化させず、そのままの内容のフレーム（フレーム３０ａ）を端末装置４０に中継する（ＡＣＫカウンタ＝１、時刻Ｔ＝３）。
【００３９】
次に、端末装置４０がフレーム３０ａを受信する。そして、端末装置４０は、フレーム３０ａを正常に受信し、ＡＣＫカウンタを“１”カウントアップする（ＡＣＫカウンタ＝２）。
さらに、端末装置４０は、ＡＣＫカウンタを“１”カウントアップしたフレーム４０ａを端末装置１０に中継する（時刻Ｔ＝４）。
すると、端末装置１０は、ＡＣＫカウンタの値が“２”であり、想定端末数“２”と一致するため、送信対象フレームの送信に成功したと判定し、端末装置４０から受信したフレーム４０ａを破棄する。
【００４０】
次に、図４は、端末装置１０が送信した送信対象フレームが送信先の端末装置（端末装置４０）によって正常に受信されない場合の処理を示す図である。
以下、端末装置１０が送信する送信対象フレームをフレーム１０ｂとし、端末装置２０〜４０によって中継される際のフレームをそれぞれフレーム２０ｂ〜４０ｂと称する。また、図４において、図３の場合と同様に、端末装置２０，４０は、チャネル番号“７”のフレームを受信する設定であり、端末装置３０は、チャネル番号“７”のフレームを中継するのみの端末装置である。
【００４１】
初めに、端末装置１０は、送信対象フレームであるフレーム１０ｂを端末装置２０に送信する（時刻Ｔ＝５）。このとき、フレーム１０ｂには、ＡＣＫカウンタ“０”が設定されている（ＡＣＫカウンタ＝０）。
次に、端末装置２０がフレーム１０ｂを受信する。そして、端末装置２０は、フレーム１０ｂを正常に受信し、ＡＣＫカウンタを“１”カウントアップする（ＡＣＫカウンタ＝１）。
【００４２】
さらに、端末装置２０は、ＡＣＫカウンタをカウントアップしたフレーム２０ｂを端末装置３０に中継する（時刻Ｔ＝６）。
次に、端末装置３０がフレーム２０ｂを受信する。そして、端末装置３０は、フレーム２０ｂのＡＣＫカウンタを変化させず、そのままの内容のフレーム（フレーム３０ｂ）を端末装置４０に中継する（ＡＣＫカウンタ＝１、時刻Ｔ＝７）。
【００４３】
次に、端末装置４０がフレーム３０ｂを受信する。ここで、端末装置４０は、フレームの受信に失敗し、正常に受信できなかったものとする。このとき、端末装置４０は、ＡＣＫカウンタをカウントアップしない（ＡＣＫカウンタ＝１）。
そして、端末装置４０は、このフレーム（フレーム４０ｂ）を端末装置１０に中継する（時刻Ｔ＝８）。
すると、端末装置１０は、ＡＣＫカウンタの値が“１”であり、想定端末数“２”と一致しないため、送信対象フレームの送信に失敗したと判定し、送信対象フレーム（フレーム１０ａ）の再送信を行う。なお、このとき、ＡＣＫカウンタの値と想定端末数との差に相当する端末装置の数が、送信対象フレームを正常に受信できなかった端末装置の数に相当する。
【００４４】
以上のように、本実施の形態に係るリング型ネットワーク１は、送信対象フレームの送信元の端末装置において、回帰フレームを受信した場合に、そのフレームのＡＣＫカウンタと、自装置が記憶している想定端末数とを比較し、これらが一致する場合には、送信先の全ての端末装置において、送信対象フレームが正常に受信されたと判定し、一致しない場合には、いずれかの送信先の端末装置において正常に受信されなかったと判定する。
【００４５】
したがって、送信元の端末装置において、送信対象フレームが送信先の端末装置によって正常に受信されたか否かを確認することができ、正常に受信されなかった場合にのみフレームの再送を行うこととできる。これにより、送信先の端末装置に確実にフレームを送信するために複数回の送信を不必要に行うことを回避することができ、伝送効率あるいは通信レスポンスの低下を避けることができる。
（第２の実施の形態）
次に、本発明を適用した第２の実施の形態に係るリング型ネットワーク２について説明する。
【００４６】
本実施の形態において、リング型ネットワーク２のネットワーク構成は、図１に示す第１の実施の形態における構成と共通するため、図１を参照し、端末装置等については同一の符号を用いて説明する。
本実施の形態において、リング型ネットワーク１は、送信元の端末装置が、マルチキャスト通信するフレームにＡＣＫカウンタおよびＮＡＣＫカウンタを含めて送信し、送信先の端末装置が、フレームを正常に受信した場合にＡＣＫカウンタをカウントアップし、フレームを正常に受信しなかった場合に、ＮＡＣＫカウンタをカウントアップして、そのフレームを中継する。したがって、送信元の端末装置において、送信対象のフレームが送信先の端末装置によって正常に受信されたか否かを検出できる。また、送信対象のフレームが送信先の端末装置によって正常に受信されなかった場合に、その原因が、送信先端末装置がネットワークから脱退したことによるものであるか否かを検出することができ、そのフレームを受信した端末装置の数の増減も検出できる。
【００４７】
まず、構成を説明する。
リング型ネットワーク２のネットワーク構成は、上述の通り、図１と同様である。
また、本実施の形態における端末装置１０〜４０の機能構成も第１の実施の形態における端末装置の機能構成と同様であるため、説明を省略する。
次に、リング型ネットワーク２において送受信されるフレームについて説明する。
【００４８】
図５は、フレームの情報構成を示す図である。
図５において、フレームは、図２の構成と同様に、“フレーム種別”、そのフレームの “チャネル番号”、フレームの“データサイズ”、送信対象データの内容を表す“データ”、そのフレームが受信側端末装置で正常に受信された場合にカウントアップされる“ＡＣＫカウンタ”および“ＣＲＣコード”の各情報を含み、さらに、そのフレームが受信側端末装置で正常に受信されなかった場合にカウントアップされる“ＮＡＣＫカウンタ”を含んで構成される。
【００４９】
また、図５に示すフレームは、フレーム種別を先頭とする順序（図５に示す方向）で送信される。
ここで、図５に示すように、ＣＲＣコードが最後に位置している構成（即ち、ＮＡＣＫカウンタがＣＲＣコードより前に位置している構成）は、通常のフレームと同様の趣旨に基づくものである。
次に、リング型ネットワーク２におけるマルチキャスト通信処理について説明する。
【００５０】
図６は、端末装置１０が送信した送信対象フレームが送信先の端末装置において正常に受信・中継される場合の処理を表す図である。
以下、端末装置１０が送信する送信対象フレームをフレーム１０ｃとし、端末装置２０〜４０によって中継される際のフレームをそれぞれフレーム２０ｃ〜４０ｃと称する。また、図６において、端末装置２０，４０は、チャネル番号“７”のフレームを受信する設定であり、端末装置３０は、チャネル番号“７”のフレームを中継するのみの端末装置である。さらに、端末装置１０は、チャネル番号“７”のフレームを受信する端末装置の想定端末数として“２”を記憶している。
【００５１】
初めに、端末装置１０は、送信対象フレームであるフレーム１０ｃを端末装置２０に送信する（時刻Ｔ＝９）。このとき、フレーム１０ｃには、ＡＣＫカウンタ“０”およびＮＡＣＫカウンタ“０”が設定されている（ＡＣＫカウンタ＝０、ＮＡＣＫカウンタ＝０）。
次に、端末装置２０がフレーム１０ｃを受信する。そして、端末装置２０は、フレーム１０ｃを正常に受信し、ＡＣＫカウンタを“１”カウントアップする（ＡＣＫカウンタ＝１）。また、フレーム１０ｃが正常に受信されたため、ＮＡＣＫカウンタは“０”のままである（ＮＡＣＫカウンタ＝０）。
【００５２】
さらに、端末装置２０は、ＡＣＫカウンタをカウントアップしたフレーム２０ｃを端末装置３０に中継する（時刻Ｔ＝１０）。
次に、端末装置３０がフレーム２０ｃを受信する。そして、端末装置３０は、フレーム２０ｃのＡＣＫカウンタを変化させず、そのままの内容のフレーム（フレーム３０ｃ）を端末装置４０に中継する（ＡＣＫカウンタ＝１）。また、ＮＡＣＫカウンタも“０”のままである（ＮＡＣＫカウンタ＝０、時刻Ｔ＝１１）。
【００５３】
次に、端末装置４０がフレーム３０ｃを受信する。そして、端末装置４０は、フレーム３０ｃを正常に受信し、ＡＣＫカウンタを“１”カウントアップする（ＡＣＫカウンタ＝２）。また、フレーム３０ｃが正常に受信されたため、ＮＡＣＫカウンタは“０”のままである（ＮＡＣＫカウンタ＝０）。
さらに、端末装置４０は、ＡＣＫカウンタを“１”カウントアップしたフレーム４０ａを端末装置１０に中継する（時刻Ｔ＝１２）。
【００５４】
すると、端末装置１０は、ＡＣＫカウンタの値が“２”であり、想定端末数“２”と一致するため、送信対象フレームの送信に成功したと判定し、端末装置４０から受信したフレーム４０ｃを破棄する。
次に、図７は、端末装置１０が送信した送信対象フレームが送信先の端末装置（端末装置４０）によって正常に受信されない場合の処理を示す図である。
以下、端末装置１０が送信する送信対象フレームをフレーム１０ｄとし、端末装置２０〜４０によって中継される際のフレームをそれぞれフレーム２０ｄ〜４０ｄと称する。また、図７において、図６の場合と同様に、端末装置２０，４０は、チャネル番号“７”のフレームを受信する設定であり、端末装置３０は、チャネル番号“７”のフレームを中継するのみの端末装置である。
【００５５】
初めに、端末装置１０は、送信対象フレームであるフレーム１０ｄを端末装置２０に送信する（時刻Ｔ＝１３）。このとき、フレーム１０ｄには、ＡＣＫカウンタ“０”およびＮＡＣＫカウンタ“０”が設定されている（ＡＣＫカウンタ＝０、ＮＡＣＫカウンタ＝０）。
次に、端末装置２０がフレーム１０ｄを受信する。そして、端末装置２０は、フレーム１０ｄを正常に受信し、ＡＣＫカウンタを“１”カウントアップする（ＡＣＫカウンタ＝１）。また、フレーム１０ｄが正常に受信されたため、ＮＡＣＫカウンタは“０”のままである（ＮＡＣＫカウンタ＝０）。
【００５６】
さらに、端末装置２０は、ＡＣＫカウンタをカウントアップしたフレーム２０ｄを端末装置３０に中継する（時刻Ｔ＝１４）。
次に、端末装置３０がフレーム２０ｄを受信する。そして、端末装置３０は、フレーム２０ｄのＡＣＫカウンタを変化させず、そのままの内容のフレーム（フレーム３０ｄ）を端末装置４０に中継する（ＡＣＫカウンタ＝１）。また、ＮＡＣＫカウンタも“０”のままである（ＮＡＣＫカウンタ＝０、時刻Ｔ＝１５）。
【００５７】
次に、端末装置４０がフレーム３０ｄを受信する。ここで、端末装置４０は、フレームの受信に失敗し、正常に受信できなかったものとする。このとき、端末装置４０は、ＡＣＫカウンタをカウントアップしない（ＡＣＫカウンタ＝１）。一方、端末装置４０は、フレーム３０ｄの受信に失敗したため、ＮＡＣＫカウンタを“１”カウントアップする（ＮＡＣＫカウンタ＝１）。
そして、端末装置４０は、このフレーム（フレーム４０ｄ）を端末装置１０に中継する（時刻Ｔ＝１６）。
【００５８】
すると、端末装置１０は、ＡＣＫカウンタの値が“１”であり、想定端末数“２”と一致しないため、送信対象フレームの送信に失敗したと判定する。さらに、想定端末数は“２”であり、フレーム４０ｄのＡＣＫカウンタの値“１”とＮＡＣＫカウンタの値“１”とを加えると、“２”となるため、送信失敗の原因が、いずれかの送信先端末装置がネットワークから脱退したことによるものではないと判定できる。したがって、フレーム１０ｄの再送を繰り返すことにより、確実に全ての送信先端末装置に送信対象フレームを送信することができる。
【００５９】
以上のように、本実施の形態に係るリング型ネットワーク２は、送信対象フレームの送信元の端末装置において、回帰フレームを受信した場合に、そのフレームのＡＣＫカウンタと、自装置が記憶している想定端末数とを比較し、これらが一致する場合には、送信先の全ての端末装置において、送信対象フレームが正常に受信されたと判定する。
また、ＡＣＫカウンタと、想定端末数とが一致しない場合には、ＡＣＫカウンタの値と、ＮＡＣＫカウンタの値とを合計し、合計値が想定端末数と一致する場合には、送信先端末装置がネットワークから脱退したための送信失敗ではないと判定し、送信対象フレームを再送信する。
【００６０】
したがって、送信元の端末装置において、送信したフレームが送信先の端末装置に正常に送信できたか否かを確認することができる。また、送信先の端末装置がネットワークに加入している状態でフレームの受信に失敗した場合にのみ、フレームの再送を行うこととできる。そのため、送信先の端末装置がネットワークから脱退しているにも関わらず、フレームの再送信を繰り返してしまう事態を回避することができ、伝送効率あるいは通信レスポンスの低下を避けることができる。
【００６１】
ここで、本実施の形態に係るリング型ネットワーク２は、端末装置１０において、回帰フレームのＡＣＫカウンタおよびＮＡＣＫカウンタの値を合計することによって、ネットワーク構成の変化を検出することが可能である。
以下、リング型ネットワーク２において、ネットワーク構成の変化が発生した場合について説明する。
リング型ネットワーク２では、上述の通り、端末装置４０が送信対象フレームの受信に失敗した場合、端末装置１０は、受信したフレームのＡＣＫカウンタとＮＡＣＫカウンタとの合計値（以下、「カウンタ合計値」と言う。）を算出する。そして、端末装置１０は、カウンタ合計値に基づいて、端末装置４０がネットワークから脱退していない限り、フレームの再送を繰り返す。このとき、カウンタ合計値は“２”となっている。あるいは、端末装置２０，４０のいずれも、送信対象フレームの受信に成功している場合にも、カウンタ合計値は、“２”となる。
【００６２】
端末装置１０は、送信対象フレームを再送信する場合、このカウンタ合計値を保持し、再送信した後、回帰フレームのカウンタ合計値と比較して、双方が“２”で一致している場合、ネットワーク構成の変化を検出しない。
一方、端末装置４０が、リング型ネットワーク２から脱退した場合、ＡＣＫカウンタあるいはＮＡＣＫカウンタをカウントアップする端末装置が１つ減ることから、回帰フレームのカウンタ合計値は“１”となり、端末装置１０が保持しているカウンタ合計値“２”と一致しないこととなる。即ち、端末装置１０は、カウンタ合計値の変化に基づいて、ネットワーク構成の変化を検出する。そして、これに伴い、再送信の中止あるいは想定端末数の更新等、適切な対応を行うことが可能となる。
【００６３】
なお、カウンタ合計値が“１”となった後は、端末装置１０はカウンタ合計値“１”を新たに保持し、同様の処理（再送信等）を行うこととなる。
さらに、端末装置４０がリング型ネットワーク２に再加入する等、端末装置が新たに加入した場合には、端末装置１０が送信したフレームのＡＣＫカウンタあるいはＮＡＣＫカウンタの値が“１”増加するため、回帰フレームのカウンタ合計値は“２”に変化する。
【００６４】
したがって、端末装置１０が保持しているカウンタ合計値“１”と、回帰フレームのカウンタ合計値“２”が一致しないため、端末装置１０は、ネットワーク構成の変化を検出することができる。そして、この後は、端末装置１０はカウンタ合計値“２”を新たに保持し、同様の処理を行うこととなる。
なお、端末装置１０が保持するカウンタ合計値の初期値としては、リング型ネットワーク２のシステム起動時等、初期状態において、ネットワーク構成の変化が生じている場合は少ないと考えられるため、想定端末数を用いることが適当である。ただし、カウンタ合計値の初期値として“０”等、任意の値を用いることも可能である。
【００６５】
また、上述のように、端末装置４０がリング型ネットワーク２から脱退し、あるいは再加入した場合、端末装置１０において、送信対象フレームが送信先端末装置によって正常に受信されたか否かの判定を行う処理は、以下のようになる。
なお、本実施の形態における、もう１つの送信先端末装置である端末装置２０は、送信対象フレームを正常に受信するものとして説明する。
まず、端末装置４０が送信対象フレームを正常に受信している場合、端末装置４０はＡＣＫカウンタを“１”カウントアップし、回帰フレームのＡＣＫカウンタは“２”となるため、端末装置１０は、送信対象フレームの送信に成功したと判定する。また、端末装置４０が送信対象フレームを正常に受信できなかった場合、端末装置４０はＮＡＣＫカウンタを“１”カウントアップし、ＡＣＫカウンタはカウントアップせずに “１”のままであるため、端末装置１０は、送信対象フレームの送信に失敗したと判定する。
【００６６】
次に、端末装置４０がリング型ネットワーク２から脱退した場合、端末装置４０によってＡＣＫカウンタあるいはＮＡＣＫカウンタがカウントアップされないこととなるため、端末装置１０は、回帰フレームのＡＣＫカウンタの値に基づいて送信対象フレームの送信に失敗したと判定すると共に、カウンタ合計値に基づいて端末装置４０の脱退を検出する。そして、この後、端末装置１０は、回帰フレームのカウンタ合計値を想定端末数として更新し、以後、更新された想定端末数に基づいて同様の処理を行うこととなる。
【００６７】
なお、以後の処理においては、想定端末数が“１”となるため、端末装置４０がリング型ネットワーク２から脱退したネットワーク構成において、端末装置２０が正常に送信対象フレームを受信した場合には、回帰フレームのＡＣＫカウンタは“１”となり、端末装置１０は送信対象フレームの送信に成功したと判定する。
また、端末装置４０がリング型ネットワーク２に再加入した場合、端末装置４０によってＡＣＫカウンタあるいはＮＡＣＫカウンタがカウントアップされることとなる。ここで、端末装置４０がＡＣＫカウンタをカウントアップした場合、想定端末数は“１”であるのに対し、回帰フレームのＡＣＫカウンタは“２”となるため、この時点では、端末装置１０は送信対象フレームの送信に失敗したと判定する。ただし、このとき、回帰フレームのカウンタ合計値に基づいて、想定端末数の更新が行われる。
【００６８】
そして、この後に、端末装置１０が送信対象フレームを再送信した場合、想定端末数は“２”であり、回帰フレームのＡＣＫカウンタの値も“２”となるため、端末装置１０は、送信対象フレームの送信に成功したものと判定することとなる。
このように、本実施の形態に係るリング型ネットワーク２は、ネットワーク構成の変化を検出することが可能であり、また、ネットワーク構成の変化に対して、柔軟に対応することが可能である。
【００６９】
なお、第１の実施の形態および第２の実施の形態において、リング型ネットワーク１，２を構成する端末装置を対象として、送信対象フレームの受信の成功／失敗を検出することとしたが、各端末装置に含まれるオブジェクト（フレームの受信を行う端末装置内の要素）を対象として、送信対象フレームの受信の成功／失敗を検出することとしてもよい。これにより、オブジェクト単位でのネットワーク構成の変化を検出し、それに対応することが可能となる。
【００７０】
【発明の効果】
本発明によれば、送信元の端末装置において、送信情報が送信先の受信要素によって正常に受信されたか否かを確認することができる。また、そのため、送信先の受信要素によって送信情報が正常に受信されなかった場合にのみ送信情報の再送を行うこととでき、送信先の受信要素に確実に送信情報を送信するために複数回の送信を不必要に行うことを回避することができる。即ち、伝送効率あるいは通信レスポンスの低下を避けることができる。
【００７１】
さらに、請求項３〜５、請求項８〜１０および請求項１３記載の発明によれば、送信先の受信要素がネットワークに加入している状態で送信情報の受信に失敗した場合にのみ、送信情報の再送を行うこととできる。そのため、送信先の受信要素がネットワークから脱退しているにも関わらず、送信情報の再送信を繰り返してしまう事態を回避することができ、伝送効率あるいは通信レスポンスの低下を避けることができる。さらに、ＡＣＫカウンタおよびＮＡＣＫカウンタの合計値に基づいて、現在、ネットワークに含まれる受信要素の総数を把握することができる。
【図面の簡単な説明】
【図１】本発明を適用した第１の実施の形態に係るリング型ネットワーク１の構成を示す図である。
【図２】第１の実施の形態におけるフレームの情報構成を示す図である。
【図３】端末装置１０が送信した送信対象フレームが送信先の端末装置によって正常に受信・中継される場合の処理を表す図である。
【図４】端末装置１０が送信した送信対象フレームが送信先の端末装置（端末装置４０）によって正常に受信されない場合の処理を示す図である。
【図５】第２の実施の形態におけるフレームの情報構成を示す図である。
【図６】端末装置１０が送信した送信対象フレームが送信先の端末装置において正常に受信・中継される場合の処理を表す図である。
【図７】端末装置１０が送信した送信対象フレームが送信先の端末装置（端末装置４０）によって正常に受信されない場合の処理を示す図である。
【符号の説明】
１，２  リング型ネットワーク
１０〜４０  端末装置
５０  伝送媒体
【図１】
0003780921.tif 000002
【図２】
0003780921.tif 000003
【図３】
0003780921.tif 000004
【図４】
0003780921.tif 000005
【図５】
0003780921.tif 000006
【図６】
0003780921.tif 000007
【図７】
0003780921.tif 000008