以下に、本発明の実施形態について、図面を参照しながら説明する。以下の実施形態における通信システムでは、各端末のメディアアクセスは、制御局によって制御される集中制御型通信システムプロトコルが採用されているものとする。
(第1の実施形態)
図1は、本発明の第1の実施形態に係る通信システム1全体の構成を模式的に示す図である。通信システム1は、制御局と、当該制御局の制御下にある被制御局とを備える。図1では、端末Aは、通信システム1に参加する端末によるメディアアクセスの機会を制御するための信号(以下、制御フレームという)を発行する制御局である。端末B,C,Dは、被制御局である。制御フレームは、ビーコンとも呼ばれる。なお、本発明において、端末の数は、図1に示したものに限られるものではない。また、各端末は、無線通信によって相互に通信可能であってもよいし、有線通信によって相互に通信可能であってもよいし、高速電灯線通信によって相互に通信可能であってもよい。端末が接続されるネットワークは、特に限定されない。
制御局Aは、制御情報を含む制御フレームを定期的に発行して、被制御端末に通知する。制御フレームに含まれる制御情報には、被制御局または被制御局の送信キュー毎に、メディアアクセスを許可する時刻と時間間隔とが記載されている。さらに、制御情報には、競合によってメディアアクセス権を獲得するための期間の開始時刻、および競合によってメディアアクセス権を獲得ための期間においてメディアアクセスを制御するための情報等が含まれる。
被制御局B、C、Dは、制御フレームを受信するたびに、制御フレームの記載内容を記憶する。なお、この制御フレームの記載内容の記憶は、制御フレーム内容に変化があった場合のみ行われてもよい。
制御局として稼動する能力を有する被制御局は、所定のTIME_BC_WAIT時間(第1の期間)の間、制御局の発行する制御フレームを受信することができなかった場合、制御フレームを受信した際に記憶した制御情報を用いて、代理フレームを作成し、代理フレームを送信するためのメディアアクセス競合を実行する。競合に勝った場合、被制御局は、代理フレームを定期的に送信し始める。代理フレームを定期的に送信する端末のことを代理制御局という。
代理フレームは、受信した制御フレームに含まれていた制御情報をそのまま含んでおり、代理フレームと制御フレームとは同一である。または、代理フレームは、受信した制御フレームに含まれていた制御情報と同等の情報を含んでおり、代理フレームと制御フレームとは同等である。ここで、代理フレームに含まれている情報が制御フレームに含まれていた制御情報を継承している場合、代理フレームと制御フレームとは同一または同等であるという。代理フレームに含まれている情報が制御フレームに含まれていた制御情報を継承している場合とは、たとえば、代理フレームと制御フレームとが全く同一である場合、代理フレームに少なくとも制御フレームに含まれていた制御情報が含まれている場合、代理フレームに含まれている情報と制御フレームに含まれていた制御情報とが互換性を有する場合などである。代理フレームに少なくとも制御フレームに含まれていた制御情報が含まれている場合、代理フレームにおいて、制御フレームに含まれていた制御情報以外の情報は、たとえば、当該フレームが代理フレームである旨を通知するフラグや代理制御局の端末識別子等である。
図2は、図1に示した通信システムにおける動作の一例を説明するためのタイミングチャートである。以下、図2を参照しながら、図1に示した通信システムにおける動作の一例について説明する。図2では、縦方向下向きが、時間軸正方向であるとする。
まず、時刻T21において、制御局Aが、制御フレーム21を送信したとする。時刻T21に送信された制御フレーム21は、被制御局B,C,Dによって受信される。被制御局B,C,Dは、受信した制御フレームに含まれる制御情報を記憶する。その後、制御局Aが、時刻T22において、通信システム1を離脱したとする。これによって、以後、制御局Aが制御フレームを発行することはない。
制御フレームを受信できない状態がTIME_BC_WAIT時間22(第1の期間)継続した場合、被制御局B,C,Dは、代理フレームを発行するために、メディアアクセスのための競合処理を実行する。なお、競合処理を行わなくても、代理フレームが正常に発行されるのであれば、競合処理は不要である。なお、各端末は、TIME_BC_WAIT時間22の間に制御フレームを検知できなかった場合、受信できている最新の制御フレームに従うように動作する保証機能を備えている。
時刻T23から時刻T24の間の競合処理によって、被制御局Cが勝ったとする。被制御局Cは、代理フレーム24を発行する。その後、被制御局B,Dは、被制御局Cが発行する代理フレーム24に従って、メディアへのアクセスを実行する。
図3は、被制御局として機能する端末100のハード的構成を示すブロック図である。端末100は、たとえば、被制御局B,C,Dである。図3において、端末100は、中央演算処理装置101と、フレーム送受信アクセス処理装置102と、補助記憶装置103と、主記憶装置104とを備える。なお、制御局は、被制御局としても機能することができるので、制御局として機能する端末のハード的構成は、図3に示すハード的構成と同様である。
フレーム送受信アクセス処理装置102は、通信媒体と端末100との間のインタフェースであって、送信すべきフレームを変調したり、受信したフレームを復調したりする。フレーム送受信アクセス処理装置102は、主に、物理層およびMAC層等の下位層における処理を実行する。
補助記憶装置103は、ROMや、RAM、ハードディスク、光ディスク等の記憶装置である。また、補助記憶装置103には、中央演算処理装置101で実行されるファームウエアやソフトウエアが格納されている。補助記憶装置103には、本発明の動作を端末100に実行させるための代理制御プログラムが格納されている。代理制御プログラムは、ファームウエアであってもよいし、ソフトウエアであってもよい。補助記憶装置103には、必要に応じて、中央演算処理装置101から与えられる情報が格納される。
主記憶装置104は、RAM等であって、中央演算処理装置101からの指示に応じて、プログラムや情報を記憶する。
中央演算処理装置101は、予め定められている処理を実行したり、補助記憶装置103に格納されているファームウエアやソフトウエアを主記憶装置104に読み込ませて実行したりして、フレーム送受信アクセス処理装置102にフレームを送受信させて、端末100全体の動作を制御する。中央演算処理装置101は、処理に必要な情報を、補助記憶装置103および/または主記憶装置104に格納する。
図4は、代理制御プログラムを実行中の端末100の機能的構成を示すブロック図である。図4において、端末100は、フレーム送受信部105と、制御フレーム検出部106と、制御フレーム記憶部107と、代理フレーム発行判断部108と、代理フレーム発行部109とを備える。
フレーム送受信部105は、通信媒体との間でフレームを送受信する。フレーム送受信部105は、受信したフレームを制御フレーム検出部106および代理フレーム発行部109に渡す。
制御フレーム検出部106は、フレーム送受信部105によって受信されたフレームが制御フレームであるか否かを判断する。フレーム送受信部105によって受信されたフレームが制御フレームである場合、制御フレーム検出部106は、制御フレーム記憶部107に、当該制御フレームそのものを記憶させるか、または、当該制御フレームに記載されている制御情報を記憶させる。
制御フレーム記憶部107は、制御フレーム検出部106から渡される制御フレームに記載されている制御情報を記憶する。
代理フレーム発行判断部108は、現在の制御局が通信システム1を離脱したか否かを判断することによって、代理フレームを発行すべきか否かを判断する。たとえば、代理フレーム発行判断部108は、所定の第1の期間(たとえば、TIME_BC_WAIT時間)、制御フレーム検出部106によって制御フレームが検出されていない場合、現在の制御局が通信システム1を離脱したと判断して、代理フレームを発行すべきであると判断する。なお、ここでは、第1の期間として、TIME_BC_WAIT時間を用いることとしたが、フレームのカウント数を用いてもよい。すなわち、代理フレーム発行判断部108は、制御フレームを受信した後に受信したフレームの数を数えておき、受信したフレームの数が所定の値を超えたにも関わらず、制御フレーム検出部106によって制御フレームが検出されていない場合、現在の制御局が通信システム1を離脱したと判断して、代理フレームを発行すべきであると判断する。ここで、受信したフレームの数が所定の値を超えるまでの期間が第1の期間である。なお、第1の期間は、上述の例に限るものではなく、制御局が通信システム1を離脱したか否かを判断することができる期間であればよい。
代理フレーム発行部109は、代理フレーム発行判断部108によって代理フレームを発行するべきであると判断された場合、制御フレーム記憶部107に記憶されている制御情報に基づいて、制御局から発行されていた制御フレームと同一または同等のフレームを代理フレームとして生成する。代理フレーム発行部109は、CSMA/CA方式等、通信システム1で決められている所定の処理方法によって、通信媒体へのアクセスのための競合処理をフレーム送受信部105を介して実行する。競合処理の結果、通信媒体へのアクセス権が得られたら、代理フレーム発行部109は、生成した代理フレームを発行し、フレーム送受信部105に通信媒体へ送信させる。
図5は、代理制御プログラムを実行したときの端末100の動作を示すフローチャートである。以下、図5を参照しながら、代理制御プログラムを実行したときの端末100の動作について説明する。以下、動作を分かりやすく説明するために、図5に示すステップの動作の主体を図4に示すブロックと対応付けることとする。しかし、実際には、代理制御プログラムを実行する端末100は、図3に示すハードウエアを用いて、図5に処理を実行することとなる。したがって、図5に示すステップの動作の主体は、ハードウエアの観点から見た場合、中央演算処理装置101、フレーム送受信アクセス処理装置102、補助記憶装置103、または主記憶装置104に適宜置き換えることができる。この置き換えは、当業者であれば自明のことであるので、省略する。
図5に示す動作は、端末100がフレームを受信したことをトリガーとして開始する。まず、制御フレーム検出部106は、受信したフレームが制御フレームであるか否かを判断する(ステップS101)。受信したフレームが制御フレームである場合、端末100は、ステップS102の動作に進む。一方、受信したフレームが制御フレームでない場合、端末100は、ステップS104の動作に進む。
ステップS102において、制御フレーム検出部106は、前回受信した制御フレームと今回受信した制御フレームとを比較して、制御フレームが変更されているか否かを判断する。なお、制御フレーム内に、変更が行われるまたは変更が行われたことを示す識別子が設けられている場合、制御フレーム検出部106は、当該識別子に基づいて、制御フレームが変更されているか否かを判断してもよい。制御フレームが変更されていない場合、端末100は、ステップS104の動作に進む。一方、制御フレームが変更されている場合、制御フレーム検出部106は、今回受信した制御フレームに記載されている制御情報を制御フレーム記憶部107に記憶させ(ステップS103)、端末100は、ステップS104の動作に進む。なお、制御フレーム検出部106は、制御フレームの変更の有無を判断せずに、新たに受信された制御フレームに含まれる制御情報を、一律、制御フレーム記憶部107に記憶させてもよい。すなわち、最新の制御情報が制御フレーム記憶部107に記憶されているのであれば、図5に示す動作に限定されない。
ステップS104において、代理フレーム発行判断部108は、直近の制御フレームを受信してから、第1の期間が経過したか否かを判断する。第1の期間が経過していない場合、端末100は、フレームの受信待機状態となる(ステップS109)。再び、フレームを受信したら、端末100は、ステップS101からの動作を開始する。一方、第1の期間が経過している場合、端末100は、ステップS105の動作に進む。なお、ステップS104の判断は、常時行われており、直近の制御フレームを受信してから、第1の期間が経過した場合、端末100は、割り込み処理を行って、フレームの受信の有無にかかわらず、ステップS105〜S108の動作を実行する。
ステップS105において、代理フレーム発行部109は、通信システム1で予め定められた手順に従って、通信媒体へのアクセスのための競合処理を実行する(ステップS105)。次に、代理フレーム発行部109は、競合の結果、通信媒体へのアクセス権を獲得したか否かを判断する(ステップS106)。アクセス権を獲得していない場合、端末100は、ステップS109の動作に進む。一方、アクセス権を獲得している場合、代理フレーム発行部109は、制御フレーム記憶部107に記憶されている制御情報に基づいて、直近の制御フレームと同一または同等となる代理フレームを生成する(ステップS107)。代理フレーム発行部109は、生成した代理フレームを、予め定められた周期毎(典型的には、制御フレームが送信される周期毎)に、フレーム送受信部105に送信させ、定期的に代理フレームを発行する(ステップS108)。なお、ここでは、競合処理の後、代理フレーム発行部109は、代理フレームを生成することとしたが、代理フレームを生成した後、競合処理を実行してもよい。
このように、第1の実施形態によれば、被制御局として機能している端末は、最新の制御フレームに含まれる制御情報を記憶し、制御局が通信システムから離脱したことを検知すると、記憶していた制御情報に基づいて、代理フレームを生成し、定期的に代理フレームを発行することとなる。したがって、制御局が離脱したとしても、通信システム上では、制御フレームの代わりとなる代理フレームが定期的に発行され続けることとなるので、いきなり新たな制御局に交代するといった処理が実行されることなく、通信システム上でのメディアアクセスが保証されることとなる。これにより、制御局が不在になることによって、通信システムのメディアアクセスが長期的に非効率な状態となることを回避することができる。また、第1の実施形態では、制御情報を記憶して代理フレームを発行するという極めて簡単な処理だけで、通信システム全体の通信品質を維持することができるので、実用上極めて有効である。
なお、ここでは、代理制御プログラムを実行することによって、本発明の第1の実施形態に係る端末100の動作が実現されることとしたが、端末100は、図4に示す機能ブロックを専用のハードウエアによって実現し、各機能ブロックが図5に示す動作を実行することによって、構成されてもよい。この場合、当該専用のハードウエアは、中央演算処理装置101またはフレーム送受信アクセス処理装置102の中に組み込まれていてもよいし、これらとは別に端末100に組み込まれていてもよい。
(第2の実施形態)
第2の実施形態における端末は、制御局としての機能および被制御局としての機能の両方を持っているとする。新たに通信システムに参加する端末は、制御局として稼働するか、それとも被制御局として稼働するかを判断した後、通信システムに参加する。
図6は、第2の実施形態に係る通信システム2の一部を示す図である。図6に示すように、第2の実施形態に係る通信システム2には、セキュリティ管理装置2aが存在する。セキュリティ管理装置2aは、通信システムに参加しようとする端末200の認証、および端末間リンクの暗号鍵または通信システム全体の暗号鍵を管理する。なお、セキュリティ管理装置2aは、制御フレームを発行する制御局内に設けられていても良い。
通信システム2には、ユーザに何らかの入力手段を与えるユーザインタフェースを持つユーザインタフェース局2cが接続されている。ユーザインタフェース局2cは、通信システム2に参加する能力を持つ端末200とは、別の装置によって実現されてもよいし、同一の装置によって実現されてもよい。
端末200とセキュリティ管理装置2aとは、通信媒体2bを介して接続されている。なお、通信システム2の全体構成は、第1の実施形態と同様であるので、図1を援用する。
図7は、通信システム2に新たに参加するときの端末200の動作を示すフローチャートである。以下、図7を参照しながら、通信システム2に新たに参加するときの端末200の動作について説明する。なお、端末200のハードウエア構成は、第1の実施形態と同様であるので、図3を援用する。また、図7に示す動作は、補助記憶装置103に格納されているプログラムを中央演算処理装置101が実行することによって実現されてもよいし、図7に示す動作を実現することができる専用のハードウエアによって実現されてもよい。
まず、端末200は、端末起動処理を実行する(ステップS201)。次に、端末200は、キャリアセンスを行う(ステップS202)。次に、端末200は、キャリアセンスによって、制御フレームを検知したか否かを判断する(ステップS203)。
ステップS203において、制御フレームを検知した場合、既に制御局が存在していることとなるので、端末200は、セキュリティ管理装置2aと通信して、通信システム2への参加認証処理を実行する(ステップS204)。通信システム2へ参加できる端末は、ユーザによって明示的に参加の許可が与えられているべきである。そのため、ユーザは、ユーザインタフェース局2cを利用して、通信システム2へ参加させたい端末を特定するための固定的な情報(シリアルコード)を入力する。当該情報は、セキュリティ管理装置2aに通知される。セキュリティ管理装置2aは、当該情報を蓄積する。ステップS204の処理において、通信システム2へ参加したい端末200は、参加した旨にシリアルコードを添えて、セキュリティ管理装置2aに通知する。それに応じて、セキュリティ管理装置2aは、シリアルコードを照合する。ユーザによって参加が許可されている端末であると確認できた場合、セキュリティ管理装置2aは、暗号鍵に関する情報を端末200に通知して、通信システム2へ参加したい端末200に認証許可を通知する。一方、蓄積されたシリアルコードの中から、通知されたシリアルコードを発見できない場合、セキュリティ管理装置2aは、通信システム2に参加したいとした端末200の参加を拒絶する。なお、新規参入端末の参加認証に関するプロセスは、ここに記載された例に限るものではない。たとえば、ユーザインタフェース局にボタン等が設けられ、当該ボタンが押された時点からある一定の有効期間中に、認証要求が受信できた場合に限り、新規参入端末が参加認証されてもよい。
ステップS203において、制御フレームを検知していない場合、端末200は、TIME_INT_WAIT時間が経過したか否かを判断する(ステップS205)。TIME_INT_WAIT時間は、予め定められた時間であって、制御フレームの送信時間間隔である。TIME_INT_WAIT時間が経過していない場合、端末200は、ステップS202の動作に戻る。一方、TIME_INT_WAIT時間が経過している場合、端末200は、ステップS206の動作に進み、自らが制御局として起動するプロセスに進む。
ステップS206において、端末200は、通信システムのID(以下、BSSIDという)を取得するために、ユーザにとって唯一BSSIDの発行を許可できる機能(BSSIDマネージャ)を有する局に対して、BSSIDの発行の許可を要求する。BSSID発行許可要求を行える有効時間は、TIME_BSSID_WAIT時間である。BSSIDマネージャ機能は、ユーザインタフェース局2cが有していてもよい。BSSIDマネージャは、ユーザの希望する論理通信システム内において、BSSIDを時間軸上で唯一有効にするための管理を行う。BSSIDマネージャは、BSSIDの発行許可要求に対して、その時点で有効なBSSIDが存在していなければ、BSSIDの発行を許可する。
ステップS206の後、端末200は、BSSIDの発行が許可されたか否かを判断する(ステップS207)。BSSIDの発行が許可された場合、端末200は、自らBSSIDを設定するか、BSSIDマネージャにBSSIDの発行を通知してもらい、当該BSSIDを用いて、制御フレームの発行を開始する(ステップS209)。
一方、ステップS207において、BSSIDの発行が許可されていないと判断した場合、端末200は、TIME_BSSID_WAIT時間が経過したか否かを判断する(ステップS208)。TIME_BSSID_WAIT時間が経過していない場合、端末200は、ステップS206の動作に戻り、再び、BSSIDの発行許可を要求する。一方、TIME_BSSID_WAIT時間が経過している場合、端末200は、動作を停止する(ステップS210)。なお、図7に示す処理は、複数回繰り返されてもよい。
上記のようにして、制御局が立ち上がることで、通信システムは起動する。
第2の実施形態における制御局は、代理フレームを送信する候補の端末を予め選択しておき、候補端末に、優先度を付与しておく。
図8は、制御局の動作を示すフローチャートである。以下、図8を参照しながら、制御局の動作について説明する。
まず、制御局は、代理フレームを発行する候補の端末を選択する(ステップS301)。候補を選択するための基準は、特に限定されない。たとえば、制御局としてふさわしい位置や性能を有している端末を候補端末として選択してもよいし、予め登録されている端末を候補端末としてもよい。制御局は、各端末の通信状況に関する情報を統計情報として収集し、収集した統計情報に基づいて、候補端末を選定してもよい。
次に、制御局は、候補端末に優先度を付与する(ステップS302)。優先度を付与する基準は、特に限定されない。たとえば、端末の処理能力に応じて優先度を付与してもよいし、処理能力を考慮せずに、ランダムに優先度を付与してもよい。制御局は、優先度を専用のフレームに格納して通知してもよいし、制御フレームに記載して通知してもよい。
次に、制御局は、候補端末に、制御必要情報および優先度を送信して、候補端末である旨を知らせる(ステップS303)。ここで、制御必要情報とは、制御局として稼働するために必要な情報のことをいう。制御フレームに含まれる制御情報は、制御必要情報の一部である。
図9は、制御局の動作の一例を示すフローチャートである。以下、図9を参照しながら、候補端末の選択の一例を説明する。図9において、制御局として現在稼働している端末をmとする。
まず、制御局である端末mは、通信システムの通信品質情報に基づいて、端末m以外で最も制御局にふさわしい端末pを選定する(ステップS401)。ここで、通信品質情報とは、通信システム上の端末の通信品質を示す情報のことをいう。
次に、制御局である端末mは、選定した端末pに対して、端末mが有している制御局として必要な情報(制御必要情報)を通知する(ステップS402)。たとえば、制御必要情報は、通信システム内の各局から要求を受けた予約帯域および要求局に関する情報、使用ポートまたは送信キューを識別するための情報、および通信システムのトラフィック状況に関する情報を含んでいる。
図10は、制御必要情報を通知する際のフレームの形式の一例を示す図である。当該フレームは、フレームヘッダ7001と、フレームボディ7002とを含む。フレームボディ7002は、フィールド7003と、フィールド7004とを含む。フィールド7003は、ある特定のストリームコンテンツを送信するために、制御局を含む通信システム内の端末から帯域保証要求がなされ、制御局によってその要求が許可され、帯域が保証されているリンクが存在する場合、その帯域に関する情報が記載されるフィールドである。フィールド7004は、通信システム全体のトラフィック(混雑度合い)に関する情報(指標)が記載されるフィールドである。フィールド7003は、フィールド7005と、フィールド7006と、フィールド7007とを含む。フィールド7005は、帯域保証がなされているリンクにおいて、帯域割り当て要求をなした要求局のMACアドレスを示すフィールドである。フィールド7006は、当該要求局の送信キューを特定するための情報(ストリームID)を示すフィールドである。フィールド7007は、要求が受け入れられた帯域に関する情報を示すフィールドである。なお、フィールド7007には、最低帯域、平均帯域、最高帯域、遅延の制限、ジッター制限などが記載されているとよい。帯域が割り当てられた端末が複数存在する場合、データボディ7002には、複数のフィールド7003が含まれる。
ステップS402の後、制御局としての端末mは、通信システム2内の全ての端末に対して、候補端末としての指定の解除を要求する(ステップS403)。なお、通信システム2内の端末は、自端末が候補端末として指定されている状況において、他の端末宛に制御必要情報が通知された場合、候補端末としての指定を解除すると取り決められていてもよい。
次に、制御局である端末mは、制御局の機能を端末pに移譲して制御局を交代すべきか否か、を判断する(ステップS404)。制御局を交代すべきか否かの判断基準は、特に限定されない。たとえば、端末pが端末mよりも他の端末からの信号を良好に受信している場合、端末mは、制御局を交代すると判断する。
制御局を交代すべきでないと判断した場合、制御局である端末mは、端末pを制御局候補端末に指定する(ステップS405)。なお、制御局である端末mは、制御必要情報を端末pに送信する際、候補端末としての指定の意図を記載してもよい。このように、自端末が候補端末として指定されている状況において、制御局によって他の端末が候補端末として指定された場合、当該端末は、候補端末としての指定を解放する。
一方、制御局を交代すべきであると判断した場合、制御局である端末mは、端末pと制御局を交代する処理を実行する(ステップS406)。制御局が交代したら、新たな制御局である端末pは、端末mから通知されている制御必要情報に基づいて、制御フレームを作成したり、他の端末からの要求に応じて、メディアアクセスを制御したりする。
ステップS406の後、端末mは、自端末が候補端末であると設定する(ステップS407)。
このように、制御局の交代機能を通信システム2が有している場合、制御局を交代すべきか否かによって、候補端末を決定してもよい。
図9に示すプロセスを経て、現在、制御局が端末pであり、候補端末が端末mであるとする。図11は、端末pが通信システム2を離脱したと想定して、端末mが代理フレームを発行する流れを示すタイミングチャートである。
第2の実施形態における被制御端末は、第1の実施形態の被制御端末と同様、制御局が発行する制御フレームに含まれる制御情報を記憶している。
制御局である端末pは、制御フレーム31を発行した後、次の制御フレームを発行せずに、通信システム2を離脱したと想定する。
候補端末である端末mは、端末pが発行した制御フレーム31を検知した時点から、TIME_NOMINATE_WAIT時間(第1の期間)32が経過すると、制御局が通信システム2を離脱したものと認識する。一方、非候補端末は、制御フレーム31を検知してから、TIME_INIT_WAIT時間(第1の期間)35だけ経過すると、制御局が通信システム2を離脱したものと認識する。TIME_INIT_WAIT時間は、TIME_NOMINATE_WAIT時間と比較して、長い時間である。すなわち、候補端末として指定を受けている端末が用いる第1の期間は、候補端末として指定を受けていない端末が用いる第1の期間よりも短い期間である。なお、第1の実施形態と同様、第1の期間は、フレームのカウント数によって定義されていてもよい。
端末mは、制御局が通信システム2からの離脱したと認識すると、記憶している制御情報を用いて、代理フレームを生成し、当該代理フレームを発行するために通信媒体への競合処理33を実行する。
競合処理33の後、アクセス権を獲得したら、端末mは、代理フレーム34を送信する。
図12は、代理制御プログラムを実行したときの第2の実施形態における端末200の機能的構成を示すブロック図である。図12において、端末200は、フレーム送受信部205と、制御フレーム検出部206と、制御フレーム記憶部207と、代理フレーム発行判断部208と、代理フレーム発行部209と、候補端末指定認識部210とを備える。
フレーム送受信部205は、通信媒体との間でフレームを送受信する。フレーム送受信部205は、受信したフレームを制御フレーム検出部106、候補端末指定認識部210および代理フレーム発行部209に渡す。
制御フレーム検出部206は、第1の実施形態の制御フレーム検出部106と同様の機能を有する。制御フレーム記憶部207は、第1の実施形態の制御フレーム記憶部107と同様の機能を有する。
候補端末指定認識部210は、制御局から候補端末であると指定されたか否かを認識し、候補端末であると指定された場合、候補端末として指定されている旨を優先度と共に、記憶しておく。
代理フレーム発行判断部208は、候補端末指定認識部210の記憶内容を参照して、候補端末として指定されているか否かを判断する。候補端末として指定されている場合、代理フレーム発行判断部208は、現在の制御局が通信システム1を離脱したか否かを判断することによって、代理フレームを発行すべきか否かを判断する。代理フレームを発行すべきか否かの判断手法は、第1の実施形態の代理フレーム発行判断部108と同様である。
代理フレーム発行部209は、代理フレーム発行判断部208によって代理フレームを発行すべきであると判断された場合、制御フレーム記憶部207に記憶されている制御情報に基づいて、制御局から発行されていた制御フレームと同一または同等のフレームを代理フレームとして生成する。なお、代理フレーム発行部209は、制御局から以前通知されている制御必要情報を用いて、代理フレームを作成してもよい。
図13は、代理制御プログラムを実行したときの端末200の動作を示すフローチャートである。以下、図13を参照しながら、代理制御プログラムを実行したときの端末200の動作について説明する。なお、図13における動作の主体については、第1の実施形態と同様である。
図13に示す動作は、端末200がフレームを受信したことをトリガーとして開始する。ステップS501〜S503の動作は、第1の実施形態のステップS101〜S103の動作と同様である。
ステップS504において、代理フレーム発行判断部208は、候補端末指定認識部210を参照して、候補端末として指定されているか否かを判断する。次に、代理フレーム発行判断部208は、候補端末としての優先度を認識する(ステップS505)。次に、代理フレーム発行判断部208は、ステップS504で認識した候補端末であるか否かおよびステップS505で認識した優先度に基づいて、制御局が通信システムから離脱したか否かを判断する(ステップS506)。なお、ステップS506の判断は、常時行われており、制御局が通信システム2を離脱したと判断した場合、端末200は、フレームの受信の有無に関わらず、割り込み処理によって、ステップS507〜510の動作を実行する。
候補端末であるか否かおよび優先度に基づいて、制御局の離脱を判断する手法は、様々である。
たとえば、先述の図11のように、候補端末は、制御フレームが受信されないとして制御局が離脱したと判断するための第1の期間(TIME_NOMINATE_WAIT時間)が経過したら、制御局が通信システムを離脱したと判断する。一方、候補端末以外の端末は、候補端末での第1の期間よりも長い第1の期間(TIME_INIT_WAIT時間)が経過したら、制御局が通信システムを離脱したと判断する。これによって、候補端末の方が、候補端末以外の端末よりも、代理フレームを送信する確率が高くなる。また、優先度に応じて、第1の期間の長さを変えてもよい。すなわち、優先度が高い候補端末における第1の期間は、優先度が低い候補端末における第1の期間よりも短くするとよい。これにより、優先度が高い候補端末によって代理フレームが送信される確率が高くなる。
ステップS506において、制御局が離脱していないと判断した場合、端末200は、受信待機状態となる(ステップS511)。新たにフレームを受信したら、ステップS501以降の動作が開始される。
ステップS506において、制御局が離脱したと判断した場合、代理フレーム発行部209は、通信媒体へのアクセスのための競合処理を実行する(ステップS507)。なお、ステップS507における競合処理では、優先度が高い候補端末ほど、アクセス権を取得する確率が高い処理が行われるとよい。
たとえば、候補端末の優先度に応じて、代理フレームを送信するスロットを予め決めておくことによって、優先度が高い候補端末ほど、アクセス権を取得する確率が高くなる。図14は、候補端末の優先度に応じた、代理フレームの送信スロットを示す図である。図14に示すように、制御局の不在を判断した時刻T31から、順番に、優先度に応じて、代理フレームを送信するためのスロットS31,S32,・・・,S3nが割り当てられている。優先度が通知されていない端末用には、最後に、代理フレームを送信するためのスロットS30が割り当てられている。候補端末は、割り当てられた優先度に応じたスロットを用いて、代理フレームを送信する。このようなスロットを用いることによって、優先度が高い候補端末ほど、アクセス権を取得する確率が高くなり、代理フレームをいち早く発行することができる。図14に示す方式によれば、代理フレームの衝突回避を確実に行うことができ、かつ優先度の通知などが不完全であった場合でもあっても、代理フレームの送信を行うことができる。なお、この方式は、優先度の一番高い端末一台のみを指定して、専用のスロットから発行させるというやり方も含む。
なお、優先度に基づいて、コンテンションウインドウの幅を定義することによって、高い優先度が割り当てられた端末が、代理フレームを送信するためのアクセス権を取得する確率を高くすることができる。たとえば、メディア上のフレーム検出に必要な時間で区切った単位をスロットとした場合、あるスロット数(コンテンションウインドウと呼ぶ)を最大としたランダム数を算出し、算出されたスロット数だけを待機して送信を行うような一般的アクセス制御において、優先度が高い端末ほどコンテンションウインドウの幅を小さくすれば、代理フレームを送信するためのアクセス権を獲得する確率を高くすることができる。
ステップS507の後、代理フレーム発行部209は、競合処理の結果、代理フレームを送信するためのアクセス権を獲得したか否かを判断する(ステップS508)。アクセス権を獲得していない場合、端末200は、ステップS511の動作に進む。一方、アクセス権を獲得している場合、代理フレーム発行部209は、制御フレーム記憶部207に記憶されている制御情報に基づいて、直近の制御フレームと同一または同等となる代理フレームを生成する(ステップS509)。代理フレーム発行部209は、生成した代理フレームを、予め定められた周期毎(典型的には、制御フレームが送信される周期毎)に、フレーム送受信部205に送信させ、定期的に代理フレームを発行する(ステップS510)。なお、ここでは、競合処理の後、代理フレーム発行部209は、代理フレームを生成することとしたが、代理フレームを生成した後、競合処理を実行してもよい。
このように、第2の実施形態によれば、被制御局として機能している端末は、最新の制御フレームに含まれる制御情報を記憶している。制御局は、代理フレームを発行する候補となる端末を予め選定しておき、優先度を付しておく。被制御局として機能している端末は、候補端末の指定の有無および優先度に基づいて、制御局が通信システムから離脱したか否かを判断する。制御局が通信システムから離脱したら、被制御局として機能している端末は、記憶していた制御情報に基づいて、代理フレームを生成し、定期的に代理フレームを発行することとなる。したがって、制御局が離脱したとしても、通信システム上では、制御フレームの代わりとなる代理フレームが定期的に発行され続けることとなるので、いきなり新たな制御局に交代するといった処理が実行されることなく、通信システム上でのメディアアクセスが保証されることとなる。候補端末および優先度を用いることによって、制御局の離脱後、現状で実現可能な範囲で通信品質を高いものとすることができる。さらに、候補端末から代理フレームが送信される確率が上がるので、代理フレームを送信するのにふさわしい端末から代理フレームが送信されることとなる。これにより、制御局が不在になることによって、通信システムのメディアアクセスが長期的に非効率な状態となることを回避することができる。
なお、候補端末には優先度が設定されず、候補端末である旨だけが指定されていてもよい。
なお、第2の実施形態では、代理フレームを発行するための機会を得るために、競合処理が行われることとした。しかし、端末は、競合処理を行わずに、制御局が通信システムを離脱したと判断した直後に、代理フレームを発行してもよい。また、端末は、本来制御フレームが送信されるタイミングで代理フレームを発行してもよい。
なお、通信システム状態を、不揮発性ロム(フラッシュロム)に記録する局(システムバックアップ機能を有する局)が、この通信システムの中に存在してよい。なお、不揮発性ロムは、電源を落とされても情報を保つことができる記憶デバイスであればよい。不揮発性ロムには、セキュリティマネージャによって認証承認され通信システムに参加できた局を識別することのできる指標、通信システムの制御局を識別することができる指標、およびセキュリティマネージャ機能を有する局を識別することのできる指標等が格納される。何かしらの原因で一つ以上の局が通信システムから離脱した場合または電源が落とされた場合、システムバックアップ機能を有する局の不揮発性ロムに書き込まれている情報が、通信システムの復旧に利用される。当該不揮発性ロムに書き込まれている情報は、再度通信システムの局が起動した際に、制御局、およびセキュリティマネージャを選定することに使用される。また、ステップS204におけるセキュリティ管理装置2aによる認証作業においても、当該不揮発性ロムに書き込まれている情報は利用される。すなわち、セキュリティ管理装置2aは、再度ユーザの確認を取ることなく、当該不揮発性メモリに書き込まれている情報に基づいて、認証する。
なお、上記不揮発性ロムを有する端末は、BSSIDマネージャ機能を有する端末であってよい。
(第3の実施形態)
第3の実施形態における通信システムの全体構成は、第1の実施形態と同様であるので、図1を援用する。第3の実施形態において、ここでは、各端末は、制御局としての起動モードと、被制御局としての起動モードとを備える。なお、通信システム上、当然、制御局としての起動モードしか備えない端末が存在してもよいし、被制御局としての起動モードしか備えない端末が存在してもよい。
第3の実施形態における端末のハードウエア的構成は、第1の実施形態と同様であるので、図3を援用することとする。
図15は、代理制御プログラムを実行したときの第3の実施形態に係る端末300の機能的構成を示すブロック図である。図15において、端末300は、フレーム送受信部310と、稼働モード管理部320と、被制御局モード部330と、制御局モード部340とを備える。
フレーム送受信部310は、通信媒体との間のインタフェースである。フレームを受信した場合、フレーム送受信部310は、当該フレームを稼働モード管理部320に渡す。
稼働モード管理部320は、端末300の稼動モードが制御局モードであるか被制御局モードであるかを管理する。端末が稼動中には、このどちらかのモードが選択されている。稼動モード管理部320には、被制御局モード部330と、制御局モード部340とが接続されている。端末300は、稼働モード管理部320が管理している稼働モードに従って、被制御局モード部330または制御局モード部340を使用する。
被制御局モード部330は、制御フレーム検出部331と、制御フレーム記憶部332と、代理フレーム発行判断部333と、代理フレーム発行部334とを含む。稼働モード管理部320は、稼働モードが被制御局モードである場合、フレーム送受信部310からのフレームを制御フレーム検出部331に渡す。
制御フレーム検出部331は、稼働モード管理部320からのフレームが制御フレームであるか否かを判断し、制御フレームである場合、制御フレームに記載されている情報(制御情報)を制御フレーム記憶部332に記憶させる。
制御フレーム記憶部332は、制御情報を記憶する。なお、第1の実施形態と同様、最新の制御フレームに含まれる制御情報のみが制御フレーム記憶部332に記憶されていればよい。
代理フレーム発行判断部333は、制御フレームを検知する毎にタイマ(図示せず)を起動し、制御局が発行する制御フレームの間隔を監視する。代理フレーム発行判断部333は、制御フレームの間隔を監視することによって、一定期間での発行が期待される制御フレームの有無を判定する。代理フレーム発行判断部333は、一定時間以上の間隔を待っても制御フレームが発行されない場合、すなわち、タイマが起動されない場合、制御局が通信システムを離脱したと判断する。なお、代理フレーム発行判断部333は、受信するフレームの数を監視するカウンタを起動し、制御フレームが検知されるごとにカウンタをリセットする仕組みを備えてもよい。この場合、当該カウンタが満了すれば、代理フレーム発行判断部333は、制御局が通信システムを離脱したと判断する。上記一定期間または上記カウンタの満了値が第1の期間となる。
代理フレーム発行部334は、代理フレーム発行判断部333によって、制御局が通信システムを離脱したと判断された場合、制御フレーム記憶部332に記憶されている制御情報を用いて代理フレームを生成し、稼働モード管理部320およびフレーム送受信部310を介して、競合処理を実行し、アクセス権を獲得したら、代理フレームを稼働モード管理部320に渡して、フレーム送受信部310を介して通信媒体に送信する。代理フレーム発行部334は、その後、代理フレームを定期的に発行する。代理フレーム発行部334は、代理フレームの発行中に、他の端末からのフレームを端末300が受信したら、当該フレームが制御局であった端末からのフレームであるか否かを判断する。制御局であった端末からのフレームであった場合、代理フレームの送信を停止する。代理フレーム発行部334は、制御局の復帰を待つための待ち時間(第2の期間)が経過した場合、自端末が制御局として動作するようにモードを切り替えるよう、稼働モード管理部320に指示する。それに応じて、稼働モード管理部320は、稼働モードを切り替える。
制御局モード部340は、制御局の基幹機能である通信ネットワーク内の端末のメディアアクセススケジューリングを行うためのアクセス制御部341と、代理局管理部342とを含む。なお、代理局管理部342は、含まれていなくてもよい。
アクセス制御部341は、通信システム内において被制御局モードで稼働する他の端末からのフレーム発行要求と、自端末内でのフレーム発行要求とを収集して、他の端末または自端末が使用する通信媒体の伝送資源を、時間的または周波数的に割り当てる。この割り当てられた伝送資源に関する情報は、スケジューリング情報として、制御フレームに格納される。アクセス制御部341は、制御フレームを定期的に発行する。こうした一元的集中メディアアクセス制御は、コリジョン(衝突)検知の難しいメディアなどにおいて、ネットワーク内のフレームのコリジョンの発生を防ぐことができ、メディアの利用効率を低下させずに、ネットワークに要求される伝送品質の保証が行えるなどの点で有効である。
代理局管理部342は、代理フレームを発行する候補端末を予め設定して管理する。候補端末の選定方法は、第2の実施形態と同様である。
記憶部350は、アクセス制御部341に接続された不揮発性の記憶装置である。記憶部350は、ネットワーク内の端末からの伝送資源獲得要求や、伝送路の状態に応じた伝送帯域の割り当て、変更、消去といったスケジューリング情報の更新に関する情報を記憶する。記憶部350は、端末自身の電源が突発的に遮断されても、記憶している情報を失わない。これにより、再度、通信システムから離脱した端末が復帰して制御局として起動する場合、当該端末は、記憶部350に格納されている情報を参照して、制御局として必要な情報を得ることができる。なお、記憶部350は、なくてもよい。
以下、図1を参照しながら、正常に通信システムが稼働している状況での各端末の動作について説明する。
現在、通信システムにおいて、端末Aが制御端末として、端末B,C,Dが被制御端末として稼働しているとする。端末Aは、定期的に、制御フレームを発行する。制御フレームには、通信媒体へのアクセスに関するアクセススケジューリング情報が記載されている。端末B,C,Dは、制御フレームに記載されているアクセススケジューリング情報にしたがって、通信媒体にアクセスする。これによって、コリジョンが防止され、ネットワーク資源の有効利用と要求品質保証が実現されている。
図16は、制御フレーム(代理フレーム)のフォーマットの一例を示す図である。図16に示すように、制御フレームは、フレームヘッダ40と、アクセススケジューリング情報用フィールド41と、フィールド43とを含む。フレームヘッダ40は、通信システム内で発行されるフレームすべてに付与される。フレームヘッダ40は、フレームの宛先や発信元端末の識別子、フレームの種別、暗号化情報などを含む。アクセススケジューリング情報用フィールド41は、アクセス制御部341でスケジューリングしたアクセススケジュールリング情報42を含む。アクセススケジュールリング情報42は、端末、データストリーム、伝送資源要求、アクセスプロトコル(時分割、周波数分割による優先割り当てやCSMA/CA方式に則った競合ベースのアクセス方式など)の指定などによって構成されている。アクセススケジューリング情報用フィールド41は、例えばデータストリーム毎のアクセススケジューリング情報42で構成される。フィールド43は、アクセススケジューリングを実行した端末の識別子を含む。ここでは、端末Aが制御局であるとしているので、フィールド43には、制御局Aの識別子が格納されている。代理フレームのフォーマットも、図16に示すようになり、代理フレームに格納されている情報は制御フレームに格納されている情報と同一となる。したがって、代理フレームのフィールド43には、端末Aの識別子がそのまま格納されていることとなる。
制御局Aが発行した制御フレームは、被制御局によって受信される。被制御局のフレーム送受信部310は、受信した制御フレームを稼働モード管理部320に渡す。被制御局の稼働モードは、被制御局モードであるので、稼働モード管理部320は、受信した制御フレームを制御フレーム検出部331に渡す。そして、制御フレーム内に含まれている制御情報(図16に示す例では、フレームヘッダ40に記載されている情報、アクセススケジューリング情報用フィールド41に記載されている情報およびフィールド43に記載されている情報)が制御フレーム記憶部332に記憶される。なお、当該記憶の際、過去の制御情報は上書きしてしまってよい。合わせて、代理フレーム発行判断部333は、制御フレームを受信する度に、タイマ(図示せず)を起動して、制御局が通信システムを離脱していないか否かを判断する。当該判断のための時間(タイマの満了値)は、制御フレーム発行周期よりは幾分長い値で設定されていると好ましい。
図17は、制御フレーム(代理フレーム)のフォーマットの他の例を示す図である。図17に示すように、制御フレーム(代理フレーム)は、フレームヘッダ40と、代理フレームフラグ52と、アクセススケジューリング情報用フィールド41とを含む。代理フレームにおけるフレームヘッダ40と、アクセススケジューリング情報用フィールド41とは、制御フレームにおけるフレームヘッダ40と、アクセススケジューリング情報用フィールド41と全く同一である。制御フレームと代理フレームとの違いは、代理フレームフラグ52に格納されている情報だけである。したがって、図17に示すフォーマットを用いる場合、代理フレームと制御フレームとは、同等であるといえる。
図17では、フレームヘッダ40に、ソースアドレス51が含まれていることとしている。ソースアドレスは、制御フレームのフレームヘッダにも含まれている。制御フレームにおけるソースアドレスは、端末Aの識別子である。代理フレームのフレームヘッダにおけるソースアドレスは、制御フレームのフレームヘッダに含まれるソースアドレスと同じである。すなわち、代理フレームを送信する端末は、端末A以外であるが、代理フレームに含まれるソースアドレスは、端末Aの識別子である。
代理フレームフラグ52は、当該フレームが制御フレームである場合、偽となり、代理フレームである場合、真となる。なお、代理フレームのみに代理フレームフラグを含ませ、制御フレームには、代理フレームフラグを含ませないようにしてもよい。
ここで、何らかの要因により、端末Aの電源が遮断され、通信システムから端末Aが離脱したと想定する。これにより、制御フレームが発行されなくなる。制御フレームが発行されなくなると、被制御局は、通信媒体へのアクセス機会を決定できなくなる。なお、端末300の制御フレーム記憶部332には、最近の制御情報が記憶されているので、端末300は、制御フレーム記憶部332に記憶されている制御情報に基づいて、数回程度、通信媒体にアクセスする機会を決定してもよい。このように、端末300は、制御フレームが受信できなくなっても、前回受信した制御フレームに含まれる制御情報にしたがって、通信媒体へのアクセスを試みる手段を備えていてもよい。当該手段は、制御フレームが正常に発行されているにもかかわらず、伝送路の変動などによって、正常に受信できなかった場合にも、メディアアクセスを保証することができる。
制御フレームの受信が検知できなくなって、第1の期間が経過すると、代理フレーム発行判断部333は、代理フレームを発行すべきであると判断する。
代理フレームの発行手順は、第1の実施形態における手順が用いられてもよいし、第2の実施形態のように、候補端末が優先して代理フレームを発行するという手順が用いられてもよい。
代理フレーム発行部334は、制御フレーム記憶部332から最近の制御情報を参照して、代理フレームを生成する。代理フレーム発行部334は、生成した代理フレームをフレーム送受信部310に転送する。フレーム送受信部310は、予め決められた手順にしたがって、競合処理を実行し、競合に勝ったら、代理フレームを送信する。
このときの競合処理は、キャリアセンスに基づく、ランダムバックオフ等によって行われる。
ただしこの場合、代理フレーム同士の衝突が検知できない場合も考えられるので、代理フレーム用の帯域を用意するとよい。図18は、フレーム送信のために割り当てられた帯域を示す図である。図18に示すように、システム周期毎に、制御フレーム用スロット61が割り当てられている。制御フレーム用スロット61は、制御フレームのみが発行される帯域である。制御フレーム用スロット61の後に、代理フレーム用スロット62が割り当てられている。代理フレーム用スロット62では、代理フレームがキャリアセンスに基づくランダムバックオフによって発行される。帯域63は、データ通信用の帯域である。全てのシステム周期において、制御フレーム用スロット61および代理フレーム用スロット62を排他的に準備しておくことで、たとえ数回代理フレームが衝突するようなことがあったとしても、何度も連続して衝突を起こし、通信システム自体の性能を著しく低下させるようなことは起こりにくくなる。
第2の実施形態と同様、端末300の被制御局モード部330には、候補端末指定認識部210が設けられていてもよい。代理フレーム発行判断部333は、第2の実施形態と同様、候補端末であるか否かおよび優先度に基づいて、制御局が通信システムを離脱したか否かを判断するとよい。また、代理フレーム発行部334は、優先度に基づいて、競合処理を実行してもよい。
フレーム送受信部310は、代理フレームの発行の成功または失敗の結果を、稼働モード管理部320を介して、代理フレーム発行部334に返す。例えば、自端末の代理フレームの発行よりも先に、他の端末によって代理フレームの発行が成功している場合、代理フレームを送信せずに、代理フレームの発行に失敗した旨を、代理フレーム発行部334に返す。失敗が返ってきた場合、代理フレーム発行部334は、代理フレームの発行を停止する。これにより、代理フレーム発行のためのシーケンスは終了する。
ここで、代理フレームの発行に成功した旨のメッセージが代理フレーム発行部334に入力されたとする。代理フレーム発行部334は、一定時間TIME_TENT、または一定回数CNT_TENTの間、代理フレームを送信フレームの周期に従って発行し続ける。当該一定時間TIME_TENT、または一定回数CNT_TENTの間が、第2の期間である。このとき発行される代理フレームのフィールド43には、制御局であった端末Aの識別子が記載されており、代理フレームを発行している端末の識別子は、フィールド43には記載されていない。なお、代理フレームのフレームヘッダ40には、代理フレームの識別子が記載されている。したがって、制御局であって端末Aが、その後復活すれば、制御フレームの周期で送信されているフレームが代理フレームであることを認識することができる。
なお、代理フレームとして、図17に示すようなフォーマットを使用する場合、代理フレームを発行した端末を代理フレームに格納されている情報から判断することはできない。しかし、代理フレームフラグ52に代理フレームであるか否かが記載されているので、代理フレームを受信した端末は、代理フレームフラグ52を参照して、代理フレームであるか制御フレームであるかを認識する。代理フレームであると認識した場合、代理フレームを受信した端末は、制御局への要求を行わないと取り決めておくとよい。
代理フレームを発行している端末は、制御フレームと同一または同等のフレームを定期的に発行しているが、制御局としての動作は行っていない。すなわち、代理フレームを発行している端末は、帯域割り当て等の処理を実行していない。したがって、代理フレームを発行している端末は、他の端末から伝送資源の割り当て要求等がなされたとしても、何ら対応することができない。よって、代理フレームを発行している端末は、他の端末からの要求を一切拒絶し、要求を拒絶する旨の拒絶応答フレームを作成して当該他の端末に返信する。なお、このとき、代理フレームを発行している端末は、一切の要求を無視して、応答を返さないようにしてもよい。このように代理フレームを発行している端末の機能は、被制御局モード部330内で実行される機能であるので、代理フレームを発行している端末は、未だ、制御局とは言えない。なお、制御局の機能としては、新規端末のネットワークへの受け入れ(認証・帰属・セキュリティ設定等)など、様々考えられる。しかし、代理フレームを発行している端末は、制御局に対する一切の要求フレームに対して、拒絶応答フレームを発行する。
また、代理フレームを発行している端末は、代理制御局として稼働している間に、元の制御局であった端末Aから送信されたフレームを検知した場合、制御局が復帰したと判断して、その時点で、代理フレームの発行を停止する。
図19は、代理フレームを定期的に発行している最中の端末の動作を示すフローチャートである。以下、図19を参照しながら、代理フレームを定期的に発行している最中の端末の動作について説明する。
ここで、代理フレーム発行部334が、定期的に代理フレームを発行中であるとする。代理フレーム発行部334は、予め設定されている制御局復帰の待ち時間(第2の期間)が経過したか否かを判断する(ステップS601)。具体的には、代理フレーム発行部334は、TIME_TENTで設定されたタイマが満了するか、またはCNT_TENTで設定されたカウンタが満了するか否かを判断する。なお、第2の期間は、第1の期間よりも長くてもよいし、短くてもよいし、第1の期間と同じであってもよい。
制御局復帰待ち時間が経過していない場合、代理フレーム発行部334は、フレームを受信したか否かを判断する(ステップS604)。フレーム受信していない場合、代理フレーム発行部334は、ステップS601の動作に戻る。一方、フレームを受信した場合、代理フレーム発行部334は、ステップS605の動作に進む。
ステップS605において、代理フレーム発行部334は、受信したフレームが離脱していると判断されている制御局からのフレームであるか否かを判断する。制御局からのフレームでない場合、代理フレーム発行部334は、受信したフレームに対して、拒絶応答フレームを送信するか、または応答せずに無視し(ステップS608)、ステップS601の動作に戻る。一方、制御局からのフレームである場合、代理フレーム発行部334は、ステップS606の動作に進む。
ステップS606において、代理フレーム発行部334は、代理フレームの発行を停止する。これは、制御局が通信システムに復帰したものと認められるからである。その後、代理フレーム発行部334は、稼働モード管理部320に被制御局モードで稼働するように要求し(ステップS607)、処理を終了する。
一方、ステップS601において、制御局復帰待ち時間が経過したと判断した場合、代理フレーム発行部334は、以後自端末が制御局として動作するために必要な情報(制御必要情報)を他の端末から収集する(ステップS602)。具体的には、ステップS602において、代理フレーム発行部334は、制御フレーム記憶部332に格納されている情報が、制御端末として稼働するのに十分でない場合、必要な情報を取得するための要求フレームを他の端末に送信し、他の端末から返信されてくるフレームに含まれている情報を収集して、制御局として動作するために必要な情報を得る。なお、代理フレーム発行部334は、ネットワークに対して、リセット信号を発行して、他の端末からの制御要求を収集して、制御局として必要な情報を収集してもよい。
ステップS602の後、代理フレーム発行部334は、稼働モード管理部320に制御局モードで稼働するように要求し(ステップS603)、処理を終了する。制御局モードで稼働する際、代理フレームを発行していた端末は、制御フレーム内のフィールド43を自端末の識別子とする。または、代理フレームを発行していた端末は、制御フレーム内のフレームヘッダ40のソースアドレス51を自端末の識別子とする。
ステップS602の処理とステップS603の処理とは前後してもよい。すなわち、制御フレームを発行した後に、必要な情報が収集されてもよい。したがって、代理フレームを発行していた端末は、制御局として必要な情報が制御フレーム記憶部332で記憶されていた制御情報からでは十分に得ることができない場合、制御フレームを発行しながら、通信システム内の端末に対して問い合わせて、必要な情報を収集するとよい。これによって、ネットワーク品質が維持される。また、代理フレームを発行していた端末は、代理フレームに記載されていた内容を手掛かりにして、通信システム内の他の端末に問い合わせて、必要な最新の情報を収集してもよい。なお、代理フレームを発行していた端末は、十分な情報が集まるまでは、引き続き制御要求を拒絶してもよい。
図20は、制御局であった端末が通信システムに再接続して復帰したときの当該端末の動作を示すフローチャートである。以下、図20を参照しながら、制御局であった端末が通信システムに再接続し、復帰したときの当該端末の動作について説明する。ここで、制御局であった端末を端末Aとする。
まず、端末Aは、被制御局モードで起動する(ステップS701)。次に、端末Aは、代理(または制御)フレームを受信する(ステップS702)。ここで注意すべきは、第2の期間が経過してしまったために、代理フレームを発行していた端末が制御局として動作している状況においては、端末Aは、代理フレームではなく、制御フレームを受信するという点である。
ステップS702の後、端末Aは、受信した代理(または制御)フレームにおいて、帯域割り当てのスケジューリングを行った端末が自端末であると設定されているか否かを判断する(ステップS703)。具体的には、制御フレームが図16のようなフォーマットである場合、端末Aは、代理フレーム内のフィールド43を参照して、スケジューリングを行った端末が自端末であると設定されているか否かを判断する。なお、制御フレームが図17のようなフォーマットである場合、端末Aは、フレームヘッダ40内のソースアドレス51を参照して、スケジューリングを行った端末が自端末であると設定されているか否かを判断する。
ステップS703において、スケジューリングを行った端末が自端末であると設定されている場合、ステップS702で受信したフレームは、代理フレームであるので、端末Aは、制御局モードで稼働する(ステップS705)。
一方、ステップS703において、スケジューリングを行った端末が自端末でないと判断した場合、ステップS702で受信したフレームは、新たな制御局によって発行された制御フレームであるので、端末Aは、被制御局モードで稼働する(ステップS704)。
なお、制御局モードで稼働する場合、端末Aは、制御フレームを送信するのではなく、代理制御局として稼働している端末に対して、通信システムへの復帰を通知する特殊なフレームを送信してもよい。
制御局モードで稼働する場合、端末Aは、制御フレーム用に割り当てられている制御フレーム用スロット等の帯域を利用して、制御フレームを発行するようにするとよい。これによって、代理フレームを発行していた端末が、ステップS604およびS605の処理において、制御局からの制御フレームを受信したと判断し易くなる。
制御局モードで稼働する場合、端末Aは、受信した代理フレームを制御フレーム記憶部332に記憶する。制御局モードとして稼働する際、端末Aは、制御フレーム記憶部332に記憶している代理フレームを用いて、制御フレームを再構築するようにするとよい。しかし、代理フレームは、以前使用されていた制御フレームに基づいて構築されているので、最新の状況に適した制御情報が格納されていない場合がある。また、代理フレームに格納されている制御情報は、制御局として稼働するのに必要な情報の一部でしかない。例えば、通常、メディアアクセスの再スケジューリングを行うために必要な伝送資源の要求に関する詳細情報や、ネットワークに参加する端末の情報(認証や性能などに関する情報)までは、制御フレームには記載されていない。そこで、端末Aは、他の端末から情報を収集し、制御局として必要な制御情報を得る。
以下、制御局として稼働する端末Aによる情報の収集の方法について説明する。なお、以下に説明する方法は、代理制御局として稼働していた端末が、制御局モードで稼働する際に情報を収集する処理(図19のステップS602)にも適用できる。
たとえば、制御局として稼働する端末は、空いている伝送帯域を使用して、必要な情報を通信システム上の端末から取得する。
たとえば、QoSを実現するための帯域予約情報を管理する端末の識別子が、制御フレームのコピーである代理フレームに記載されているはずである。そこで、制御局として稼働する端末は、当該識別子を持つ端末に対して、帯域予約情報を確認するための確認フレームを発行することによって、帯域要求に関する情報を収集する。
たとえば、制御局として稼働する端末は、認証管理を行っている端末と通信して、認証情報を取得し、通信システムに参加している端末を確認する。
制御局として稼働する端末は、このように、通信システム内の端末に問い合わせることによって、必要な情報を収集する。
なお、制御局として稼働する端末は、必要な情報が揃うまで、制御要求の受け付けを拒絶してもよい。
このように、第3の実施形態によれば、代理フレームを定期的に発行している端末は、第2の期間において、元の制御局からのフレームを受信したら、代理フレームの発行を停止し被制御局モードで稼働することとなるので、元の制御局によるメディアアクセス制御に戻すことができる。これによって、効率的なメディアアクセス制御が実現されることとなる。代理フレームを定期的に発行している端末は、第2の期間において、元の制御局以外からの要求に対して、拒絶応答フレームを送信するあるいは応答しないので、制御局の復帰まで、制御局が離脱したときの状態が維持されることとなる。したがって、制御局が復帰した場合は、スムーズに復帰後の処理が行われることとなる。第2の期間が経過しても、制御局が復帰してこなかった場合、代理フレームを送信していた端末は、以後、制御局として動作するので、制御局が不在な状態が解消されることとなる。
また、制御局が復帰してこないために制御局となった端末は、メディアアクセス制御のために必要な情報が不足していれば、情報を収集して、制御局として必要な情報を得る。これによって、通信システムのメディアアクセスが長期的に非効率な状態となることを回避することができる。
なお、制御局は、候補端末に制御必要情報を通知してもよいし、または、マルチ・ブロードキャストによって各端末に制御必要情報を通知してもよい。この場合、被制御局は、制御フレーム記憶部332に通知される制御必要情報を記憶させる。被制御局は、第1の期間が経過して、制御局が通信システムから離脱したことを検知し、さらに、第2の期間が経過して、制御局として稼働すると決定した後、図21に示す動作を開始する。たとえば、図19におけるステップS601の肯定判断の後、図21に示す動作が開始される。
図21は、制御局が通信システムから離脱したことを検知し、さらに、制御局として稼働すると決定した後の端末の動作を示すフローチャートである。図21において、まず、端末は、最新の制御必要情報の通知が完了しているか否かを判断する(ステップS801)。たとえば、制御必要情報に未更新事項がある場合、未更新事項に関する識別子を制御フレームに格納して、制御局が制御フレームを送信しているとする。この場合、端末は、記録している制御情報に基づいて、未更新事項が存在するか否かを判断し、存在しない場合、最新の制御必要情報の通知が完了していると判断する。
最新の制御必要情報の通知が完了している場合、端末は、受け取っている制御必要情報に基づいて、制御フレームを生成し、制御端末としての稼働を開始する(ステップS802)。一方、最新の制御必要情報の通知が完了していない場合、第3の実施形態におけす図19のステップS602と同様、必要な情報を収集した後、制御局としての稼働を開始する(ステップS803)。なお、ステップS803において、最新の制御必要情報が途中まで受信できている場合は、受信できている制御必要情報を用いて、制御局としての稼働と開始してもよい。
なお、本発明の端末を実現するために必要な機能ブロックは、集積回路であるLSIとして実現されてもよい。これらの機能ブロックは、1チップ化されていてもよいし、一部又は全てを含むように1チップ化されていてもよい。ここでは、LSIといったが、集積度の違いによっては、IC、システムLSI、スーパーLSI、ウルトラLSIと称呼されることもある。また、集積回路化の手法は、LSIに限られるものではなく、専用回路または汎用プロセッサで集積回路化を行ってもよい。また、LSI製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサーを用いてもよい。さらには、半導体技術の進歩または派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックを集積化してもよい。バイオ技術の適応等が可能性としてあり得る。
以下に、上記各実施形態を実際のネットワークシステムに応用した例について説明する。図22は、本発明の端末を高速電灯線通信に適用したときのシステム全体の構成を示す図である。図22に示すように、本発明の端末は、デジタルテレビ(DTV)やパーソナルコンピュータ(PC)、DVDレコーダ等のマルチメディア機器と電灯線との間のインタフェースを提供する。マルチメディア機器と本発明の端末との間は、IEEE1394のインタフェースであったり、USBインタフェースであったり、Ethernet(登録商標)インタフェースであったりする。このような構成によって、電灯線を媒体としたマルチメディアデータ等のデジタルデータを高速伝送する通信ネットワークシステムが構成されることとなる。この結果、従来の有線LANのようにネットワークケーブルを新たに敷設するこのなく、家庭、オフィス等に既に設置されている電灯線をそのままネットワーク回線として使用することができる。したがって、コスト面、設置の容易性の面から、その利便性は、極めて大きい。
図22に示した実施形態では、本発明の端末は、既存のマルチメディア機器の信号インタフェースを電灯線通信のインタフェースに変換するアダプタとしての役割を果たしているが、パーソナルコンピュータ、DVDレコーダ、デジタルテレビ、ホームサーバシステムなどのマルチメディア機器に本発明の端末が内蔵されていてもよい。これにより、マルチメディア機器の電源コードを介して、機器間のデータ伝送が可能となる。この場合、アダプタと電灯線とを接続する配線や、IEEE1394ケーブル、USBケーブル、Ethernet(登録商標)ケーブルが不要となり、配線が簡略化されることとなる。
また、電灯線を用いた通信システムは、ルータおよび/またはハブを介して、インターネットや、無線LAN、従来の有線ケーブルのLANに接続することができるので、本発明の通信ネットワークシステムを用いたLANシステムの拡張にも何らの問題も生じない。
また、電灯線伝送により電灯線を介して流される通信データは、電灯線に直接接続された装置に傍受される以外は、無線LANで問題となる傍受によるデータ漏洩の問題の対象とならない。したがって、電灯線伝送方式は、セキュリティの面からも効果を有する。もちろん、電灯線を流れるデータは、たとえば、IPプロトコルにおけるIPSecや、コンテンツ自身の暗号化、その他のDRM方式等で保護されていてもよい。
今後、高速電灯線通信において、隣間でのアクセス系の共存や、ゲートウエイ・ルータ機能の提供、電灯線の位置特性、ベンダの期待特性などを考慮すると、制御局は、半固定的であって、一般的な機能しか有さない端末とは区別される特殊な端末として提供されることが予想される。したがって、半固定的な制御局を用いる場合、無闇に制御局を交代したのでは、通信品質が保証されない場合が生じかねない。したがって、本発明のように、制御局が通信システムから離脱したような場合、一時的に、他の端末によって代理フレームが発行され、その後、制御局が復帰すれば、復帰した制御局に制御フレームの発行を継続させるシステムは、実用上極めて有用である。
上記のように、無線、電灯線、電話線、同軸ケーブル等、通信品質に信頼が持てない通信媒体を用いた集中制御方式のネットワークプロトコルを、ホームネットワーク通信システムの構築に採用した場合、通信機能を有する家電製品の通信モジュールとして、本発明の端末は、適用され得る。ホームネットワーク通信システムにおいて、通信システム全体に重要な影響を及ぼす制御局の電源が突然落とされたり、制御局と通信媒体との接続点が絶たれたりするといった事態は、容易に考えられる事態である。本発明は、こうした事態に対して、代理フレームを発行する代理制御局を設け、通信プロセスを有効にする。したがって、本発明は、通信システムの通信品質の最適化、さらには、隣接ネットワーク干渉問題や隣接チャネル干渉問題を解決する手段として使用できる可能性を有している。
以上、本発明を詳細に説明してきたが、前述の説明はあらゆる点において本発明の例示にすぎず、その範囲を限定しようとするものではない。本発明の範囲を逸脱することなく種々の改良や変形を行うことができることは言うまでもない。