(57)【要約】身体領域ネットワーク（BAN）において媒体アクセス制御（MAC）デューティー・サイクリングが実行される。デューティー・サイクリングは、BANの無線媒体が空いているときに送信者ノードから一つまたは複数のターゲット受信者ノードに覚醒（WUP）メッセージを送る段階（S510）と；少なくとも一つのターゲット受信者ノードが送信者ノードのスニッフ時間期間の間にREADYメッセージをもって応答したかどうかを判定する段階（S520）と；READYメッセージが受信されなかったとき、送信者ノードによって送信されたWUPメッセージの数が所定の閾値を超えているかどうかを判定する段階（S540）と；WUPメッセージの数が前記所定の閾値を超えている場合に、送信者ノードをTURNモードで動作するよう設定する段階（S550）とを含む。
2011530935.tif 000002
【特許請求の範囲】
【請求項１】
身体領域ネットワーク（BAN）における媒体アクセス制御（MAC）デューティー・サイクリングを実行する方法であって：
BANの無線媒体が空いているときに送信者ノードから一つまたは複数のターゲット受信者ノードに覚醒（WUP）メッセージを送る段階と；
少なくとも一つのターゲット受信者ノードが前記送信者ノードのスニッフ時間期間の間にREADYメッセージをもって応答したかどうかを判定する段階と；
READYメッセージが受信されなかったとき、前記送信者ノードによって送信されたWUPメッセージの数が所定の閾値を超えているかどうかを判定する段階と；
WUPメッセージの数が前記所定の閾値を超えている場合に、前記送信者ノードをTURNモードで動作するよう設定する段階とを含む、
方法。
【請求項２】
請求項１記載の方法であって、さらに：
ランダムに選択されたスニッフ期間にわたって媒体を傾聴する段階と；
READYメッセージをもって応答したターゲット受信者ノードの識別（ID）番号を記録する段階と；
ID番号が送信者ノードにおいて記録されている各ターゲット受信者ノードにデータ・パケットを送信する段階とを含む、
方法。
【請求項３】
請求項２記載の方法であって、さらに：
特別な制御メッセージが受信されたかどうかを判定する段階と；
前記特別な制御メッセージの受信に際して、WUPメッセージの送信を打ち切る段階とを含む、
方法。
【請求項４】
前記WUPメッセージが、送信者ノードのID、各WUP送信後にインクリメントされるWUPメッセージのシーケンス番号、送信者ノードの覚醒スケジュール、ターゲット受信者ノードのアドレス、ペンディングのデータ・パケットの優先度レベルのビットマップ、ターゲット受信者ノードに割り当てられるスロット、各ターゲット受信者ノードへのデータ送信の期待される継続時間およびTURN  SEQUENCEフィールドのうちの少なくとも一つを含む、請求項１記載の方法。
【請求項５】
前記TURN  SEQUENCEフィールドが、送信者ノードのどの近隣ノードがWUPメッセージを送信できるかと、TURNモードの間にWUPメッセージが送られるべき順序とを指定する、請求項４記載の方法。
【請求項６】
TURNモードが、単一の送信者ノードによる連続的なWUP送信を防止する、請求項１記載の方法。
【請求項７】
請求項６記載の方法であって、TURNモードの間に前記送信者ノードによって実行される動作がさらに：
前記送信者ノードの少なくとも一つの近隣ノードから送られたTURNメッセージを受信する段階であって、前記TURNメッセージは前記少なくとも一つの近隣ノードによってWUPメッセージを送信する要求である、段階と；
前記TURNメッセージを受け入れるか否かを決定する段階と；
前記TURNメッセージが受け入れられる場合、前記記された送信者のTURN  SEQUENCEフィールド内に前記少なくとも一つの近隣ノードのIDを記録し、それにより前記送信者ノードと前記近隣ノードの両方が前記TURN  SEQUENCEフィールドにおいて指定されている順序に従ってWUPメッセージを送信できるようにする段階とを含む、
方法。
【請求項８】
次に掲げる条件が満たされるときに前記TURNメッセージを生成および送信する、請求項７記載の方法。
前記近隣ノードが前記送信者ノードのターゲット受信者ノードのうちにはいっていない；前記近隣ノードがそのWUPメッセージを送る準備ができている；前記近隣ノードのWUPメッセージが、前記送信者ノードと重ならない少なくとも一つのターゲット受信者ノードをもつ；および前記近隣ノードが前記送信者ノードの現在のスニッフ期間においていかなるREADYメッセージも傍受しなかった。
【請求項９】
前記送信者ノードの現在のスニッフ期間の間にREADYメッセージが受信されなかった場合に、前記送信者ノードが前記TURNメッセージを受け入れる、請求項７記載の方法。
【請求項１０】
前記少なくとも一つの近隣ノードのWUPメッセージを前記送信者ノードによって送り、それにより前記送信者ノードが前記少なくとも一つの近隣ノードについてのプロキシとしてはたらく段階をさらに含む、請求項７記載の方法。
【請求項１１】
請求項１０記載の方法であって、さらに：
前記少なくとも一つの近隣ノードから送られたPROXYメッセージを受信する段階と；
前記少なくとも一つの近隣ノードの少なくとも一つのターゲット受信者ノードを、前記送信者ノードによって送信されるすべてのWUPメッセージ中に加える段階と；
前記WUPメッセージを、前記少なくとも一つの近隣ノードおよび前記送信者ノード両方のターゲット受信者装置に送信する段階とを含む、
方法。
【請求項１２】
請求項７記載の方法であって、前記少なくとも一つの近隣ノードおよび前記送信者ノードの両方が、スニッフ期間の、異なる時間スロットにおいて、自分のWUPメッセージを送信できるようにする段階をさらに含み、前記スニッフ期間は、二つの連続するWUPメッセージの間の時間期間である、方法。
【請求項１３】
請求項２記載の方法であって、さらに：
あるWUPメッセージをもって、複数の受信者をターゲットとするデータ・パケットを蓄積し、次の段階：
前記データ・パケットをバースト・モードで単一のターゲット受信者ノードにストリームとして送る段階および
前記データ・パケットが小さいまたは前記送信者ノードが前記受信者ノードの覚醒時間を知っている場合、前記WUPメッセージなしに前記データ・パケットを送る段階
のうちの少なくとも一方を実行することを含む、
方法。
【請求項１４】
データ・パケットが、前記送信者ノードにおいて記録されているターゲット受信者ノードにブロードキャストまたはマルチキャストされることができる、請求項２記載の方法。
【請求項１５】
コンピュータ実行可能コードが記憶されたコンピュータ可読媒体であって、前記コンピュータ実行可能コードは、実行されたときに、プロセッサに：
BANの無線媒体が空いているときに送信者ノードから一つまたは複数のターゲット受信者ノードに覚醒（WUP）メッセージを送る段階と；
少なくとも一つのターゲット受信者ノードが前記送信者ノードのスニッフ時間期間の間にREADYメッセージをもって応答したかどうかを判定する段階と；
READYメッセージが受信されなかったとき、前記送信者ノードによって送信されたWUPメッセージの数が所定の閾値を超えているかどうかを判定する段階と；
WUPメッセージの数が前記所定の閾値を超えていた場合に、前記送信者ノードをTURNモードで動作するよう設定する段階とを含む、
身体領域ネットワーク（BAN）における媒体アクセス制御（MAC）デューティー・サイクリングを実行させる、
コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、ともに2008年8月11日に出願された米国仮出願第61/087,740号および第61/087,742号の利益を主張する。
【０００２】
本発明は概括的には、無線ネットワークにおいて使用される媒体アクセス制御（MAC:  medium  access  control）プロトコルに関し、より詳細には、身体領域ネットワーク（BAN:  body  area  network）のような低電力無線センサー・ネットワークにおいて使用されるMACプロトコルに関する。
【背景技術】
【０００３】
身体領域ネットワーク（BAN）は、主として、生命徴候〔バイタルサイン〕（vital  signs）の恒久的な監視およびログ記録のために設計されている。図１に示される例示的なBANは、典型的には身につけることができる〔ウェアラブルである〕または人体中に埋め込まれることのできるセンサーである複数のノード１２０を含む。ノード１２０は、生命に関する身体パラメータおよび動きをモニタリングし、無線媒体を通じて互いに通信する。ノード１２０は、身体からのデータを一つまたは複数の装置１３０に送信できる。装置１３０から、そのデータはリアルタイムで病院、診療所または他所に、ローカル・エリア・ネットワーク（LAN）、広域ネットワーク（WAN）、セルラー・ネットワークなどを通じて転送されることができる。
【０００４】
BANの設計における重要な要因の一つは、ノード１２０および／または装置１３０のエネルギー効率である。効率的なエネルギー消費は、受信者ノード（すなわちデータを受信するノード）を傾聴状態とスリープ状態との間で最適にデューティー・サイクリング〔稼働切り換え〕することによって達成できる。あるノードのラジオ〔無線機〕は、そのノードがデータを送信も受信もしないときはオフにされ（すなわち、スリープ状態にされ）、それによりエネルギーが節約される。デューティー・サイクリング（duty  cycling）は、アイドルな傾聴（listening）、傍受（overhearing）、衝突および制御のオーバーヘッドを最小限にするねらいで、MACプロトコルによって実行され、これは最終的には電力節約につながる。
【０００５】
関連技術では、いくつかの同期的および非同期的なMACデューティー・サイクリング技法が開示されている。同期的なデューティー・サイクリングは、定期的にスリープおよび覚醒スケジュールを広告し、諸受信者ノードの覚醒時間を同期させることを含む。これは、ビーコンのような明示的な同期機構を必要とする。非同期的なデューティー・サイクリングでは、送信者ノード（すなわち、データを送るノード）および傾聴者ノード（すなわち、媒体を傾聴しているノード）が独立なスリープおよび覚醒時間をもち、この技法はいかなる同期機構も必要としない。
【０００６】
プリアンブル・サンプリング技法が、WiseMAC、B-MACおよびX-MACのような非同期デューティー・サイクリングMACプロトコルにおいて広く使われている。WiseMACは非特許文献１においてさらに記述されている。B-MACは非特許文献２において記述されている。X-MACプロトコルは非特許文献３において発表されている。
【０００７】
図２に示されるように、プリアンブル・サンプリング技法では、すべてのノードが定期的に媒体を短期間「TL」だけ傾聴し（listen）、次いで媒体がアイドルであれば時間「TCI」の期間にわたってスリープ状態に戻る。二つの相続く傾聴時間TLの間の時間TCIはチェック期間（check  interval）である。時間期間の組み合わせTCI＋TLが覚醒時間期間である。送信者ノードが送達すべきデータをもつとき、送信者ノードは、受信者ノードのチェック時間期間TCIよりも長い覚醒（WUP:  wake-up）メッセージ２１０を送信する。プリアンブル・サンプリング技法では、WUPメッセージ２１０はプリアンブルのみを担持し、他のいかなる情報も担持しない。受信者ノードが覚醒するとき、受信者ノードは媒体を感知し、WUPメッセージ２１０を検出する。これは、受信者ノードに、データが完全に受信されるおよび／または媒体が再びアイドルになるまで覚醒状態に留まることを強制する。
【先行技術文献】
【非特許文献】
【０００８】
【非特許文献１】El-Hoiydi,  at  el.、"WiseMAC:  An  Ultra  Low  Power  MAC  Protocol  for  the  Downlink  of  Infrastructure  Wireless  Sensor  Networks"、Proceedings  of  the  Ninth  IEEE  Symposium  on  Computers  and  Communication,  ISCC’04、pp.244-251,  Alexandria,  Egypt,  June  2004
【非特許文献２】Polastre,  at  el.、"Versatile  Low  Power  Media  Access  for  Wireless  Sensor  Networks"、  ACM  SenSys  Nov.  2004
【非特許文献３】Buettner  at  el.、"X-MAC:  A  Short  Preamble  MAC  Protocol  for  Duty-Cycled  Wireless  Sensor  Networks"  ACM  SenSys  2006
【発明の概要】
【発明が解決しようとする課題】
【０００９】
WUPメッセージ２１０の長さは、実際のデータが送信されるときに受信者ノードが覚醒していることを保証するために、チェック期間TCIよりも長いことが必要である。受信者ノードのチェック期間TCIが非常に長い場合、WUPメッセージ送信は非常に長い時間にわたって媒体を占有し、それにより他のノードが媒体にアクセスすることを妨げることがある。
【００１０】
現状技術のもう一つの欠点は、図３に例示されている。図３は、ノード３００−Ａ、３００−Ｂ、３００−Ｃおよび３００−ＤがBANにおける近隣者どうしてある例示的なシナリオを記述している。以下のシナリオでは、送信者ノード３００−Ａはデータを受信者ノード３００−Ｂに送ろうとし、送信者ノード３００−Ｃはデータを受信者ノード３００−Ｄに送ろうとする。ノード３００−Ａ、３００−Ｂ、３００−Ｃおよび３００−Ｄのすべては、互いの送受信レンジ内にある。
【００１１】
時刻T1において、送信者ノード３００−Ａは受信者ノード３００−Ｂにデータを送る準備ができている。受信者ノード３００−Ｂは時刻T4に覚醒するようスケジュールされている。時刻T1からT4の間、ノード３００−Ａは、受信者ノード３００−Ｂに一連の覚醒（WUP）メッセージ３２０を送ることによって媒体を占有する。時刻T2において、送信者ノード３００−Ｃは、受信者ノード３００−Ｄに送信すべきデータ・パケットの準備を完了している。しかしながら、送信者ノード３００−Ｃは媒体がアイドルになるのを待たねばならない。受信者ノード３００−Ｄは時刻T3に覚醒し、自分がターゲット受信者ノードのうちにはいっていないことを発見する。潜在的な送信者ノード３００−Ｃが、媒体がノード３００−Ａによって占有されているためにそのWUPメッセージを送信できないからである。結果として、ノード３００−Ｄはスリープ状態に戻る。こうして、送信者ノード３００−Ｃは、ノード３００−Ｄが覚醒したときに受信者ノード３００−Ｄにパケットを送信する機会を、媒体がノード３００−Ａによって占有されていたために逃したことになる。さらに、送信者ノード３００−Ａは、ノード３００−Ｂにデータを送達するために長時間待たねばならない。これは、BAN  MACプロトコルのパフォーマンスを著しく劣化させ、レイテンシの増大、スループットの低下およびエネルギー消費の増大を引き起こす。
【００１２】
したがって、MACプロトコルをデューティー・サイクリングさせるための効率的なソリューションを提供することが有利であろう。
【課題を解決するための手段】
【００１３】
本発明のある種の実施形態は、身体領域ネットワーク（BAN）における媒体アクセス制御（MAC）デューティー・サイクリングを実行するための方法およびコンピュータ実行可能なコードを含む。方法は、BANの無線媒体が空いているときに送信者ノードから一つまたは複数のターゲット受信者ノードに覚醒（WUP）メッセージを送り；少なくとも一つのターゲット受信者ノードが送信者ノードのスニッフ〔吸入〕（sniff）時間区間の間にREADY〔レディ、準備完了〕メッセージをもって応答したかどうかを判定し；READYメッセージが受信されなかったとき、送信者ノードによって送信されたWUPメッセージの数が所定の閾値を超えているかどうかを判定し；WUPメッセージの数が所定の閾値を超えていたときは、送信者ノードをTURN〔交代〕モードで動作するよう設定することを含む。
【００１４】
発明と見なされる主題は、付属の請求項において具体的に特定され、明確に記載される。本発明の以上のおよびその他の特徴および利点は、付属の図面とともに参照される以下の詳細な記述から明白となるであろう。
【図面の簡単な説明】
【００１５】
【図１】身体領域無線ネットワークの概略図である。
【図２】非同期的なデューティー・サイクリングMACプロトコルの動作を示す図である。
【図３】非同期的なデューティー・サイクリングMACプロトコルの欠点を例証する図である。
【図４】本発明のある種の実施形態に基づいて提供されるデューティー・サイクリング技法の原理を例解する図である。
【図５】本発明のある実施形態に基づいて実装されるデューティー・サイクリング方法を記述するフローチャートである。
【図６】本発明のある実施形態に基づいて実装されるデューティー・サイクリング方法において使用されるTURNモードの原理を例解する図である。
【図７】本発明のある種の例示的な実施形態に基づいて実装される、TURNモードを実現するための技法の原理を例解する図である。
【図８】本発明のある種の例示的な実施形態に基づいて実装される、TURNモードを実現するための技法の原理を例解する図である。
【発明を実施するための形態】
【００１６】
本発明によって開示される実施形態が、本稿の革新的な教示の数多くの有利な使用の例でしかないことを注意しておくことは重要である。一般に、本願の明細書においてなされる陳述は、必ずしもさまざまな特許請求される発明のいずれかを限定するものではない。さらに、いくつかの陳述は、いくつかの発明的な特徴に当てはまるが他の発明的な特徴には当てはまらないこともある。一般に、特に示されるのでない限り、一般性を失うことなく、単数形の要素は複数であってもよく、複数形の要素は単数であってもよい。図面において、いくつかの図面を通じて、同様の参照符号は同様の部分を指す。
【００１７】
提案されるプロトコルは、送信者ノードによって一つまたは複数の受信者ノードに送られる、これらのノードに送達する準備ができているデータがあることを示す覚醒（WUP）メッセージに基づく。図４に示されるように、WUPメッセージ４１０を送るのに先立ち、送信者ノード４００−Ａはスヌープ〔のぞき見〕（snoop）区間４２０の時間期間にわたって媒体を傾聴し、WUPメッセージ４１０を送ったのち、送信者ノードはスニッフ〔吸入〕区間４３０の時間期間にわたって媒体を傾聴する。スニッフ区間４３０は、固定の所定数の時間スロットを含む。複数のノードのWUPメッセージの系統的な衝突を防ぐために、スニッフ区間はランダムにされる。WUPメッセージ４１０はターゲット受信者ノード、すなわち送信者ノードがデータ・パケットを送信したい相手のノードに送られる。図４に与えられる例では、ノード４００−Ｂは送信者ノード４００−Ａの受信者ノードである。
【００１８】
受信者ノード４００−Ｂはスケジュールされた時刻T1に覚醒し、時刻T2にWUPメッセージ４１０の受信を開始し、次いで時刻T3に送信者ノード４００−ＡにREADYメッセージ４４０を送る。さらに、受信者ノード４００−Ｂは送信者ノード４００−ＡのIDおよび覚醒時間を現在のタイムスタンプとともに記憶する。READYメッセージ４４０は、送信者ノードに、受信者ノードがデータ・パケットを受信する準備ができていることを知らせる。その後、時刻T4において、受信者ノード４００−Ｂは、送信者ノード４００−Ａによって送信されたデータの受信を開始する。
【００１９】
受信者ノードの覚醒時間が互いに独立であることを注意しておくべきである。さらに、各受信者ノードの覚醒区間は独立であり、動的に変更されることができる。本発明のある実施形態によれば、ノードの覚醒区間は次のように選択される；
ノードの覚醒区間＝2k（最小覚醒区間）、ここで、0≦k≦Max覚醒区間指数。
【００２０】
図５は、本発明のある実施形態に基づいて実装されるデューティー・サイクリング方法を記述する、限定しない例示的なフローチャート５００を示している。S502において、送信者ノードは、媒体がビジーであるかアイドルであるかを判別するためにスヌープ区間にわたってチャネルを傾聴する。送信者ノードが、媒体が進行中のWUP送信でビジーであるときに誤って媒体がアイドルであると結論することを防ぐために、スヌープ区間はスニッフ区間よりも長い。S505では、送信者ノードは、媒体がアイドルであると見出される場合には、WUP送信に進み、そうでない場合には、チャネルがアイドルになるまで待つ。
【００２１】
S510では、送信者ノードが潜在的なターゲット受信者ノード（単数または複数）に、データの送信準備ができていることを知らせるWUPメッセージを送る。WUPメッセージは、次のうちの任意のものを含む：送信者ノードのID、WUPメッセージのシーケンス番号（シーケンス番号は各WUP送信後にインクリメントされる）、送信者ノードの覚醒スケジュール、ターゲット受信者ノードのビットマップまたはアドレス、ペンディングのデータ・パケットの優先度レベルのビットマップ、ターゲット受信者ノードに割り当てられるスロット（高優先度のターゲット受信者ノードはより若いスロット番号を割り当てられる）および各ターゲット受信者ノードへのデータ送信の期待される継続時間。
【００２２】
本発明の原理によれば、WUPメッセージはまた、送信者ノードのどの隣接者（neighbors）がWUPメッセージを送信できるかおよびそのようなメッセージの送信順序を指定するTURN  SEQUENCE〔順番シーケンス〕フィールドをも含む。TURN  SEQUENCEフィールドの使用は、のちにより詳細に記述する。S515では、送信者ノードがスニッフ区間にわたって媒体を傾聴する。S520では、送信者ノードが、そのスニッフ区間の間、ターゲット受信者ノードの一つまたは複数からREADYメッセージが受信されたかどうかをチェックし、もし受信されていれば、S530で、送信者ノードは、スニッフ区間の終わりにデータ・パケットを受信する準備ができている受信者ノードを記録する。
【００２３】
スニッフ区間の間READYメッセージが受信されない場合には、実行はS540に進み、最後に送信されたWUPメッセージのシーケンス番号がWUP送信の最大の許容される数（「WUP_MAX」数）より大きいかどうかを判定するためにさらなるチェックがなされ、もしそうであれば、S550で、送信者ノードは、他の送信者ノードがそのWUPメッセージを送信することを可能にするTURN〔交代〕モードに入れられる。のちに詳述するように、TURNモードは単一のノードによる連続的なWUP送信を防止できる。
【００２４】
S540の結果が「No」の答えであれば、実行はS560に進み、特別な制御メッセージが受信されたかどうかを判定するためにさらなるチェックがなされ、もしそうであれば実行は終了する。もしそうでなければ、実行はS510に戻って、前記送信者ノードによってさらなるWUPメッセージが送信される。本発明のある実施形態によれば、特別な制御メッセージはABORT〔アボート〕メッセージであってもよい。そのようなメッセージは、進行中のWUP送信によって媒体が占有されているために送達されることができないデータ・パケットを送信するために高優先度メッセージをもつ潜在的な送信者ノードによって送られてもよい。ABORTメッセージの受信に際して、現在WUPを送信している送信者ノードはWUPメッセージのいかなるさらなる送信も打ち切って、媒体の傾聴を始める。
【００２５】
上で論じたように、送信者ノードのTURNモードは、他の送信者ノードに、TURN  SEQUENCEフィールドにおいて指定される順序に従ってWUPメッセージを送信することを可能にする。このプロセスは、図６を参照して記述される。図６で、ノード６００−ＥがTURNモードにはいる現在の送信者ノードであり、ノード６００−Ｆがそのターゲット受信者ノード（単数または複数）にWUPメッセージを送ることを要請している近隣者送信者ノードである。
【００２６】
送信者ノード６００−Ｅによって送られるWUPメッセージのWUPシーケンス番号がWUP_MAX番号を超えると、送信者ノード６００−Ｅは別の潜在的な送信者ノードによって、TURNメッセージを送ることによってWUPメッセージを送信する番を変わる（take  turns）よう要請されることができる。ある実施形態では、スニッフ区間内の最後のスロットがTURNメッセージの送信のために使われる。一般に、送信者ノード６００−Ｆは、次の条件が満たされたときにTURNメッセージを送ることができる：送信者ノード６００−Ｆが送信者ノード６００−Ｅのターゲット受信者ノードのうちにはいっていない；送信者ノード６００−ＦがそのWUPメッセージを送る準備ができている；送信者ノード６００−ＦのWUPメッセージが、送信者ノード６００−Ｅと重ならない少なくとも一つのターゲット受信者ノードをもつ；および送信者ノード６００−Ｆが現在のスニッフ区間６０５においていかなるREADYメッセージも傍受しなかった。さらに、TURNメッセージの衝突を回避するために、送信者ノード６００−ＦがTURNメッセージを送るのは、それが適格であるときのみである。どの近隣者ノードがTURNメッセージを送ることができるかの判別は、次の式に基づいてもよい：
送信者（近隣者）ノードID＝（WUP中の現在のシーケンス番号−WUP_MAX）％近隣者の数
ここで、送信者（近隣者）ノードIDは0から（近隣者の数−1）までの値を取るとする。あるいはまた、TURNメッセージの各潜在的な送信者はTURNメッセージを送るその適格性を、次のようにして判別できる：
WUP中の現在のシーケンス番号＝WUP_MAX＋ランダム整数[0,MAX]。
【００２７】
図６で例証されるように、時刻T1において、ノード６００−Ｆはデータを送る準備ができている。送信者ノード６００−Ｅによって送信されたWUPメッセージ６２０の受信後、ノード６００−ＦはTURNメッセージを送るその適格性を判別し、自らが適格であることを見出す。したがって、時刻T2において、ノード６００−ＦによってTURNメッセージ６１０が生成され、送信される。送信者ノード６００−ＥはTURNメッセージ６１０を受信し、送信者装置６００−ＦによるWUPメッセージを送る要求を受け入れるか否かを決定する。具体的には、送信者ノード６００−Ｅは、その現在のスニッフ区間６０５において少なくとも一つのREADYメッセージが受信された場合にはTURNメッセージを無視する。TURNメッセージが受け入れられる場合、送信者ノード６００−Ｅは、ノード６００−ＦのIDを、TURN  SEQUENCEフィールドに登録する。このフィールドは、近傍におけるどの送信者ノードが現在WUPメッセージを送信しているかと、そのWUP送信の順序とを指定する。前記WUPメッセージの送信に応答して送信者ノード６００−Ｅが何らかのREADYメッセージを受ける場合、このノードは、そのDATAパケットを送り、他のいかなるノードによるWUPメッセージのいかなる送信も許容しない。
【００２８】
TURNメッセージの送信者、すなわち送信者ノード６００−Ｆは、送信者ノード６００−Ｅに何らかのREADYメッセージが送られたかどうかをチェックするために媒体を傾聴する。READYメッセージが傍受されなかった場合、時刻T4において、送信者ノード６００−Ｆは自分のWUPメッセージ６３０を送る。その後、送信者ノード６００−Ｅおよび６００−Ｆのそれぞれは、それぞれのターゲット受信者ノードのいずれかから少なくとも一つのREADYメッセージが受信されるまで、（TURN  SEQUENCEフィールドによって決定される）その番においてWUPメッセージを送る。たとえば、時刻T5およびT6において、送信者ノード６００−Ｅおよび６００−Ｆは、それぞれWUPメッセージ６２０および６３０を送る。
【００２９】
本発明のもう一つの実施形態では、送信者ノードは、近傍における他の送信者ノードのWUPメッセージを送ってもよく、それにより他の送信者ノードのプロキシ〔代理〕としてはたらく。この実施形態は、図７を参照してさらに記述される。図７では、ノード７００−Ａは受信者ノード７００−Ｘにデータを送ることを要求している送信者ノードである。ノード７００−Ａはまた、WUPメッセージのプロキシでもある。ノード７００−Ｂは、受信者ノード７００−Ｙにデータを送ろうとしている送信者ノードである。
【００３０】
時刻T1に始まって、送信者ノード７００−Ａは、受信者ノード７００−ＸをターゲットとするWUPメッセージ７１０を送る。時刻T2において、送信者ノード７００−Ｂは、受信者ノード７００−ＹをターゲットとするWUPメッセージを送ることを望む。したがって、時刻T3において、スニッフ区間７０５の間に、ノード７００−ＢはPROXYメッセージ７２０を送信者ノード７００−Ａに送る。PROXYメッセージを受信すると、送信者ノード７００−Ａは、ノード７００−Ｂのターゲット受信者ノードおよび他の関連する情報をそのWUPメッセージ７１０に加える。その後は、ノード７００−Ａから時刻T4に始まって送られるすべてのWUPメッセージ７１０は、ターゲット受信者ノード７００−Ｘおよび７００−Ｙの両方をターゲットとする。受信者ノード７００−ＸがREADYメッセージを送る場合、送信者ノード７００−ＡがDATAパケットを送信し、あるいは、受信者ノード７００−ＹがREADYメッセージを送る場合、ノード７００−ＢがDATAパケットを送信する。送信者ノード７００−ＡがWUPメッセージ送信を打ち切るとき（許容される最大試行数を使い果たしたために）、ノード７００−ＢはWUPメッセージの送信を続けることを注意しておくべきである。
【００３１】
本発明のもう一つの実施形態によれば、複数の送信者ノードが、同じスニッフ区間の間にWUPメッセージを送ることができる。これは、送信すべきデータをもつ各送信者ノードが、そのWUPメッセージを覚醒時毎に送り、当該ノードが覚醒しているときにWUPメッセージを送る機会をスキップしないことを許容する。衝突を避けるため、それらの送信者ノードはWUPメッセージを、スニッフ区間の、異なる時間スロットにおいて送信する。すなわち、WUP送信どうしは時間的にオフセットされる。このプロセスは、図８においてさらに例解される。図８では、二つの送信者ノード８００−Ａおよび８００−Ｂが代わりばんこにWUPメッセージを送る。送信者ノード８００−Ｂは時刻T1においてWUPメッセージ８１０を送信する。時刻T2において、送信者ノード８００−Ａはノード８００−ＢからのWUPメッセージを検出し、ノード８００−ＢのWUPメッセージを収容するスニッフ区間８０５を認識する。よって、スニッフ区間８０５の間に、送信者ノード８００−Ａおよび８００−Ｂの両方が代わりばんこにWUPメッセージを送信する。
【００３２】
図６、図７および図８に示されたプロセスが、同じ無線媒体を共有する任意の数の受信者ノードおよび送信者ノード、すなわち近隣者ノードによって実装されることができることは当業者には明白なはずである。
【００３３】
本稿に記載された、TURNモード機構と組み合わせたデューティー・サイクリング方法がレイテンシを低減させ、スループットを改善し、アイドルな傾聴、傍受および過剰放射によって無駄になるエネルギーを削減できることが理解されるはずである。
【００３４】
本発明のある実施形態によれば、一時に単一の受信者のみをターゲットとするWUPメッセージを送信する代わりに、送信者ノードはその待ち行列内にDATAパケットを収容し、あるWUPメッセージで複数の受信者をターゲットとすることができる。それら複数のターゲット受信者のうちどれであれ先に覚醒するノードが、そのデータをより早く受信することができる。単一のWUPメッセージで複数の受信者をターゲットとすることにより、待ち行列中の最初のパケットが他のパケットの送信を妨害するという、待ち行列の先頭による閉塞問題が回避できる。さらに、受信者ターゲット・ノードの頻繁な覚醒が回避でき、それによりそのようなノードのエネルギー節約が最大化される。このアプローチは、制御オーバーヘッドおよびレイテンシを低減し、サービス品質（QoS:  quality  of  service）優先度をサポートすることをも許容する。
【００３５】
本発明のもう一つの実施形態では、DATAパケットのサイズが非常に小さい場合、WUPおよび／またはREADYメッセージはそのDATAパケットによって置き換えられることができる。こうして、WUPおよびREADYメッセージの制御オーバーヘッドが回避できる。さらに、送信者および受信者ノードが緊密に同期されている場合、送信者ノードは、WUPメッセージを送信することなく、受信者ノードに直接DATAパケットを送信することができる。トラフィック負荷が大きい場合、ACKパケットにおんぶした頻繁なスケジュールされる更新により、通信するピアどうしは緊密に同期されたままとなる。
【００３６】
傍受されるいかなるメッセージも、近隣者が覚醒していることの指標を与える。この情報は、WUPメッセージを送信することなくDATAパケットを送信するために活用される。たとえば、一対の通信するノードは、DATA-ACKシーケンス後、スヌープ区間にわたって覚醒したままである。よって、いかなる近隣者ノードも、媒体がランダムな時間にわたってアイドルであることを感知したのち、それらのノードのいずれに対してもDATAパケットを送信できる。
【００３７】
もう一つの実施形態によれば、同じ宛先をターゲットとする複数のDATAパケットをもつ送信者ノードは、READYメッセージを受信すると、すべてのパケットをバースト・モードで送信できる。それにより、WUPオーバーヘッドが最小化される。バースト・モードでは、送信者ノードは複数のDATAパケットメッセージを引き続いて送信し、任意的なACKメッセージを受信する。WUPまたはREADYメッセージを傍受するノードは、送信期間全体にわたって媒体を占有されているとマークする。さらに効率を改善するため、パケット受け取り確認（acknowledgement）は、累積ACK（cumulative  ACKs）または個々のACKのいずれを使って行うこともできる。
【００３８】
本稿に記載される発明は、さらに、BANにおけるブロードキャストおよびマルチキャスト送信をサポートするために利用できる。具体的には、ブロードキャストおよび／またはマルチキャスト送信は、将来の時間にスケジュールされ、WUPメッセージを介してアナウンスされる。WUPメッセージは、ブロードキャスト／マルチキャスト・パケットが送信される時刻の、現在時刻からのオフセットを示す。WUPメッセージを受信すると、ターゲット受信者ノードはスケジュールされたブロードキャスト／マルチキャスト時刻を記録し、その時刻になるまでスリープする。送信者ノードは、事前にスケジュールされた時刻にブロードキャスト・パケットを送信し、そのパケットはターゲット受信者ノードによって受信される。
【００３９】
ブロードキャスト／マルチキャスト・パケットが小さい場合、送信者ノードは、WUPメッセージを送信することなく、ブロードキャスト／マルチキャスト・パケットを送信できる。このようにして、受信者が覚醒する際、受信者はWUP受信のオーバーヘッドなしにデータを受信できる。送信者ノードはまた、さらなるエネルギー節約につながるならば、ブロードキャスト／マルチキャスト・パケットをユニキャスト・パケットとして送信することに決めることができる。たとえば、送信者ノードが若干数の近隣者しかもたず、近隣者のスヌープ時間が時間的に幅広く拡散している場合、ユニキャスト・メッセージを送ることはエネルギー効率のよいアプローチとなる。あるいはまた、送信者ノードは信頼性のためにACKを要求してもよいが、その場合は、送信者ノードはメッセージをユニキャストとして送る必要がある。
【００４０】
以上の詳細な記述は、本発明が取ることのできる数多くの形のうちの若干を述べている。以上の詳細な記述が、本発明の定義に対する限定としてではなく、本発明が取ることのできる選ばれた形の例解として理解されることが意図されている。本発明の範囲を定義することが意図されているのは、あらゆる等価物を含む請求項のみである。
【００４１】
最も好ましくは、本発明の原理はハードウェア、ファームウェアおよびソフトウェアの任意の組み合わせとして実装される。さらに、ソフトウェアは好ましくはプログラム記憶ユニットまたはコンピュータ可読媒体上に有形的に具現されたアプリケーション・プログラムとして実装される。アプリケーション・プログラムは、任意の好適なアーキテクチャをもつ機械にアップロードされ、これによって実行されてもよい。好ましくは、該機械は、一つまたは複数の中央処理ユニット（「CPU」）、メモリおよび入出力インターフェースのようなハードウェアを有するコンピュータ・プラットフォーム上で実装される。コンピュータ・プラットフォームはオペレーティング・システムおよびマイクロ命令コードを含んでいてもよい。本稿で記載されているさまざまなプロセスおよび機能は、マイクロ命令コードの一部であっても、アプリケーション・プログラムの一部であっても、それらの任意の組み合わせであってもよく、CPUによって実行されてもよい。これは、そのようなコンピュータまたはプロセッサが明示的に示されているか否かにはよらない。さらに、追加的なデータ記憶ユニットおよび印刷ユニットといったさまざまな他の周辺ユニットがコンピュータ・プラットフォームに接続されてもよい。
【図１】
2011530935.tif 000003
【図２】
2011530935.tif 000004
【図３】
2011530935.tif 000005
【図４】
2011530935.tif 000006
【図５】
2011530935.tif 000007
【図６】
2011530935.tif 000008
【図７】
2011530935.tif 000009
【図８】
2011530935.tif 000010
【国際調査報告】
2011530935.tif 000011
2011530935.tif 000012