(57)【要約】      （修正有）【課題】メッシュネットワークのためにネットワーク構成情報を管理する方法を提供する。【解決手段】ボーダールータ２０２は、形成されたプロビジョニングドメインをメッシュネットワーク１００においてリーダー２１０に転送し、それはプロビジョニングドメインを記憶し、ルータ１０２にプロビジョニングドメインを伝搬して、パケットをメッシュネットワークにおいてアドレッシングおよびルーティングすることを可能にする。【選択図】図２
2020074551.tif 000002
【特許請求の範囲】
【請求項１】
メッシュネットワークのためにネットワーク構成情報を管理する方法であって、
外部ネットワークから、割当てられたアドレスプレフィックスおよび関連付けられる構成情報を、ボーダールータで受信することと、
前記割当てられたアドレスプレフィックスと関連付けられるプロビジョニングドメインを形成することとを含み、前記プロビジョニングドメインは、前記割当てられたアドレスプレフィックス、前記関連付けられる構成情報、および一意の識別子を含み、前記方法はさらに、
前記形成されたプロビジョニングドメインを前記メッシュネットワークのリーダーデバイスに転送することを含み、前記リーダーデバイスが前記プロビジョニングドメインを前記メッシュネットワークに伝搬することを可能にするよう効力がある、メッシュネットワークのためにネットワーク構成情報を管理する方法。
【請求項２】
前記プロビジョニングドメインはさらに、
前記ボーダールータのためのルーティングロケータ（ＲＬＯＣ）、および
前記ボーダールータが、ソースアドレスにおける前記割当てられたアドレスプレフィックスを用いて、メッセージのためのデフォルトルートを提供する、という指示を含む、請求項１に記載の方法。
【請求項３】
前記プロビジョニングドメインは、さらに、前記ボーダールータのためのプリファレンス値を含む、請求項２に記載の方法。
【請求項４】
前記割当てられたアドレスプレフィックスはＩＰｖ６アドレスプレフィックスである、請求項１に記載の方法。
【請求項５】
前記ボーダールータは、前記プロビジョニングドメインにおいて、前記関連付けられる構成情報のサブセットを与える、請求項１に記載の方法。
【請求項６】
第２のボーダールータが、前記プロビジョニングドメインにおいて前記関連付けられる構成情報の第２のサブセットを与える、請求項５に記載の方法。
【請求項７】
複数個のプロビジョニングドメインが、前記リーダーデバイスによって伝搬され、前記複数個のプロビジョニングドメインは、宛先アドレスへの経路を選択するよう、前記メッシュネットワークにおいて、ルータによって使用可能である、請求項１に記載の方法。
【請求項８】
ボーダールータとして実現されるメッシュネットワークデバイスであって、
メッシュネットワークにおける通信のために構成されたメッシュネットワークインターフェイスと、
外部ネットワークとの通信のために構成されたネットワークインターフェイスと、
アドレッシングアプリケーションを実現するためのメモリおよびプロセッサシステムとを含み、前記アドレッシングアプリケーションは、
前記外部ネットワークから、前記ネットワークインターフェイスを介して、割当てられたアドレスプレフィックスおよび関連付けられる構成情報を受信し、
前記割当てられたアドレスプレフィックスと関連付けられるプロビジョニングドメインを形成するように構成され、前記プロビジョニングドメインは、前記割当てられたアドレスプレフィックス、前記関連付けられる構成情報、および一意の識別子を含み、前記アドレッシングアプリケーションはさらに、
前記メッシュネットワークインターフェイスを介して、前記形成されたプロビジョニングドメインを前記メッシュネットワークのリーダーデバイスに転送するように構成され、
前記リーダーデバイスが前記プロビジョニングドメインを前記メッシュネットワークに伝搬することを可能にするよう効力がある、ボーダールータとして実現されるメッシュネットワークデバイス。
【請求項９】
前記プロビジョニングドメインはさらに、
前記ボーダールータのためのルーティングロケータ（ＲＬＯＣ）、および
前記ボーダールータが、ソースアドレスにおける前記割当てられたアドレスプレフィックスを用いて、メッセージのためのデフォルトルートを提供する、という指示を含む、請求項８に記載のメッシュネットワークデバイス。
【請求項１０】
前記プロビジョニングドメインは、さらに、前記ボーダールータのためのプリファレンス値を含む、請求項８に記載のメッシュネットワークデバイス。
【請求項１１】
前記割当てられたアドレスプレフィックスはＩＰｖ６アドレスプレフィックスである、請求項８に記載のメッシュネットワークデバイス。
【請求項１２】
前記ボーダールータは、前記プロビジョニングドメインにおいて、前記関連付けられる構成情報のサブセットを与える、請求項８に記載のメッシュネットワークデバイス。
【請求項１３】
前記ボーダールータは、前記割当てられたアドレスプレフィックスのためのデフォルトルートを提供する、請求項８に記載のメッシュネットワークデバイス。
【請求項１４】
メッシュネットワークシステムであって、
メッシュネットワークと外部ネットワークとの間でパケットデータをルーティングするように構成されたボーダールータを含み、
前記ボーダールータは、
前記外部ネットワークから、割当てられたアドレスプレフィックスおよび関連付けられる構成情報を受信し、
前記割当てられたアドレスプレフィックスと関連付けられるプロビジョニングドメインを形成するように構成され、前記プロビジョニングドメインは、前記割当てられたアドレスプレフィックス、前記関連付けられる構成情報、および一意の識別子を含み、前記ボーダールータはさらに、
前記形成されたプロビジョニングドメインを前記メッシュネットワークのリーダーデバイスに転送するように構成され、
前記リーダーデバイスは、
前記ボーダールータから前記プロビジョニングドメインを受信し、
前記プロビジョニングドメインを記憶し、
前記プロビジョニングドメインを前記メッシュネットワークに伝搬するように構成される、メッシュネットワークシステム。
【請求項１５】
前記システムはさらに、
ルータデバイスを含み、前記ルータデバイスは、
伝搬されたプロビジョニングドメインを受信し、
受信されたプロビジョニングドメインに基いて宛先アドレスに対してデータパケットを転送するように構成される、請求項１４に記載のメッシュネットワークシステム。
【請求項１６】
前記プロビジョニングドメインはさらに、
前記ボーダールータのためのルーティングロケータ（ＲＬＯＣ）、および
前記ボーダールータが、ソースアドレスにおける前記割当てられたアドレスプレフィックスを用いて、メッセージのためのデフォルトルートを提供する、という指示を含む、請
求項１５に記載のメッシュネットワークシステム。
【請求項１７】
前記ルータは、さらに、前記ボーダールータの前記ＲＬＯＣを用いて、前記宛先アドレスに前記データパケットを転送するように構成される、請求項１６に記載のメッシュネットワークシステム。
【請求項１８】
前記割当てられたアドレスプレフィックスはＩＰｖ６アドレスプレフィックスである、請求項１４に記載のメッシュネットワークシステム。
【請求項１９】
前記プロビジョニングドメインは、さらに、前記ボーダールータのためのプリファレンス値を含む、請求項１４に記載のメッシュネットワークシステム。
【請求項２０】
前記ボーダールータは、前記割当てられたアドレスプレフィックスのためのデフォルトルートを提供する、請求項１４に記載のメッシュネットワークシステム。
【請求項２１】
メッシュネットワークにおいてデータパケットをアドレッシングする方法であって、
ネットワーク宛先に伝送するべきパケットを、ルータデバイスで受信することと、
前記ネットワーク宛先が前記メッシュネットワーク上の宛先であるかどうかを判断することと、
前記ネットワーク宛先と関連付けられるルーティングロケータ（ＲＬＯＣ）を発見することと、
前記パケットに対する宛先アドレスのためのルーティング可能なネットワークアドレスを与えるよう前記ＲＬＯＣを用いて、前記パケットを転送することとを含む、メッシュネットワークにおいてデータパケットをアドレッシングする方法。
【請求項２２】
前記ＲＬＯＣを発見することは、前記ＲＬＯＣを見出すよう前記ルータにおいてキャッシュを検索することを含む、請求項２１に記載の方法。
【請求項２３】
前記ＲＬＯＣを発見することは、前記メッシュネットワークを介してアドレスクエリを実行することを含む、請求項２２に記載の方法。
【請求項２４】
前記ＲＬＯＣが前記キャッシュにおいて見出されない場合に、前記ルータデバイスは前記アドレスクエリを実行する、請求項２３に記載の方法。
【請求項２５】
前記宛先アドレスはＩＰｖ６アドレスである、請求項２１に記載の方法。
【請求項２６】
前記ネットワーク宛先は前記メッシュネットワークデバイスと関連付けられるエンドポイント識別子であり、前記ＲＬＯＣは、前記ＥＩＤの前記ルーティング可能なネットワークアドレスへのマッピングを与える、請求項２１に記載の方法。
【請求項２７】
ルータデバイスとして実現されるメッシュネットワークデバイスであって、
メッシュネットワークにおける通信のために構成されたメッシュネットワークインターフェイスと、
アドレッシングアプリケーションを実現するためのメモリおよびプロセッサシステムとを含み、前記アドレッシングアプリケーションは、
ネットワーク宛先に伝送するべきパケットを受信し、
前記ネットワーク宛先が前記メッシュネットワーク上の宛先であるかどうかを判断し、
前記ネットワーク宛先と関連付けられるルーティングロケータ（ＲＬＯＣ）を発見し、
前記パケットに対する宛先アドレスのためのルーティング可能なネットワークアドレスを与えるよう前記ＲＬＯＣを用いて、前記パケットを転送するように構成される、メッシ
ュネットワークデバイス。
【請求項２８】
前記アドレッシングアプリケーションは、前記ＲＬＯＣを見出すよう、前記ルータにおいて記憶されたＲＬＯＣのキャッシュを検索するように構成される、請求項２７に記載のメッシュネットワークデバイス。
【請求項２９】
前記アドレッシングアプリケーションは、前記ＲＬＯＣを見出すよう、前記メッシュネットワークを介してアドレスクエリを送信するように構成される、請求項２７に記載のメッシュネットワークデバイス。
【請求項３０】
前記アドレッシングアプリケーションは、前記ＲＬＯＣが前記キャッシュにおいて見いだされない場合に、前記アドレスクエリを送信するように構成される、請求項２９に記載のメッシュネットワークデバイス。
【請求項３１】
前記アドレッシングアプリケーションは、マルチキャストアドレッシングを用いて、前記アドレスクエリを送信するように構成される、請求項２９に記載のメッシュネットワークデバイス。
【請求項３２】
前記アドレッシングアプリケーションは、マルチキャストアドレスクエリのためのホップの数を制限するように構成される、請求項３１に記載のメッシュネットワークデバイス。
【請求項３３】
前記宛先アドレスはＩＰｖ６アドレスである、請求項２７に記載のメッシュネットワークデバイス。
【請求項３４】
メッシュネットワークシステムであって、
メッシュネットワークにおいてパケットを転送するように構成されたエンドデバイスを含み、前記パケットはネットワーク宛先を含み、前記メッシュネットワークシステムはさらに、
ルータデバイスを含み、前記ルータデバイスは、
前記エンドデバイスから、ネットワーク宛先に伝送するべき前記パケットを受信し、
前記ネットワーク宛先が前記メッシュネットワーク上の宛先であるかどうかを判断し、
前記ネットワーク宛先と関連付けられるルーティングロケータ（ＲＬＯＣ）を発見し、
前記パケットに対する宛先アドレスのためのルーティング可能なネットワークアドレスを与えるよう前記ＲＬＯＣを用いて、前記パケットを転送するように構成される、メッシュネットワークシステム。
【請求項３５】
前記ルータデバイスは、前記ＲＬＯＣを見出すよう、前記ルータデバイスにおいて記憶されたＲＬＯＣのキャッシュを検索するように構成される、請求項３４に記載のメッシュネットワークシステム。
【請求項３６】
前記ルータデバイスは、前記ＲＬＯＣを見出すよう、前記メッシュネットワークを介してアドレスクエリを送信するように構成される、請求項３４に記載のメッシュネットワークシステム。
【請求項３７】
前記ルータデバイスは、前記ＲＬＯＣが前記キャッシュにおいて見いだされない場合に、前記アドレスクエリを送信するように構成される、請求項３６に記載のメッシュネットワークシステム。
【請求項３８】
前記ルータデバイスは、マルチキャストアドレッシングを用いて、前記アドレスクエリ
を送信するように構成される、請求項３６に記載のメッシュネットワークシステム。
【請求項３９】
前記ルータデバイスは、前記マルチキャストアドレスクエリのためのホップの数を制限するように構成される、請求項３８に記載のメッシュネットワークシステム。
【請求項４０】
前記宛先アドレスはＩＰｖ６アドレスである、請求項３４に記載のメッシュネットワークシステム。
【請求項４１】
メッシュネットワークにおいてエンドデバイスを管理する方法であって、
エンドデバイスの子識別子およびルータデバイスのルータ識別子からのエンドポイント識別子（ＥＩＤ）を前記エンドデバイスのためのルーティングロケータ（ＲＬＯＣ）にエンコードすることと、
前記ルータデバイスで前記エンドデバイスに対するアドレスクエリを受信することと、
前記エンドデバイスに代って、前記エンドデバイスと関連付けられる前記ＲＬＯＣで、前記アドレスクエリに応答することとを含む、メッシュネットワークにおいてエンドデバイスを管理する方法。
【請求項４２】
前記ルータデバイスに前記エンドデバイスに対するアドレスを登録することと、
前記登録に応答して、前記エンドデバイスに前記子識別子を割当てることとをさらに含む、請求項４１に記載の方法。
【請求項４３】
前記ルータデバイスは複数個の前記エンドデバイスに対してアドレスを登録でき、前記ルータは、前記複数個のエンドデバイスの各々に対して対応するＲＬＯＣを維持する、請求項４２に記載の方法。
【請求項４４】
受信されるアドレスクエリは前記ＥＩＤを含む、請求項４１に記載の方法。
【請求項４５】
前記ルータデバイスで前記エンドデバイスに対するデータパケットを受信することと、
受信されたデータパケットを前記ルータデバイスにおいて保存することと、
保存されたデータパケットを前記エンドデバイスに転送することとをさらに含む、請求項４１に記載の方法。
【請求項４６】
前記転送することは、前記エンドデバイスが前記ルータデバイスとの通信を再確立することに応答して生ずる、請求項４５に記載の方法。
【請求項４７】
前記エンドデバイスは、前記ルータデバイスにすべてのデータパケットを転送し、前記ルータデバイスは、前記エンドデバイスに代って前記データパケットのためのルートを判断する、請求項４１に記載の方法。
【請求項４８】
ルータデバイスとして実現されるメッシュネットワークデバイスであって、
メッシュネットワークにおける通信のために構成されたメッシュネットワークインターフェイスと、
アドレッシングアプリケーションを実現するためのメモリおよびプロセッサシステムとを含み、前記アドレッシングアプリケーションは、
エンドデバイスの子識別子および前記ルータデバイスのルータ識別子からのエンドポイント識別子（ＥＩＤ）を前記エンドデバイスのためのルーティングロケータ（ＲＬＯＣ）にエンコードし、
前記メッシュネットワークインターフェイスを介して、前記エンドデバイスに対するアドレスクエリを受信し、
前記エンドデバイスに代って、前記エンドデバイスと関連付けられる前記ＲＬＯＣで、
前記アドレスクエリに応答するように構成される、メッシュネットワークデバイス。
【請求項４９】
前記アドレッシングアプリケーションは、
前記エンドデバイスに対するアドレスを登録し、
前記登録に応答して、前記エンドデバイスに前記子識別子を割当てるように構成される、請求項４８に記載のメッシュネットワークデバイス。
【請求項５０】
前記アドレッシングアプリケーションは、複数個の前記エンドデバイスに対してアドレスを登録するように構成され、前記ルータデバイスは、前記複数個のエンドデバイスの各々に対して対応するＲＬＯＣを維持する、請求項４８に記載のメッシュネットワークデバイス。
【請求項５１】
受信されるアドレスクエリは前記ＥＩＤを含む、請求項４８に記載のメッシュネットワークデバイス。
【請求項５２】
前記アドレッシングアプリケーションは、
前記メッシュネットワークインターフェイスを介して、前記エンドデバイスに対するデータパケットを受信し、
受信されたデータパケットを前記ルータデバイスにおいて保存し、
保存されたデータパケットを前記エンドデバイスに転送するように構成される、請求項４８に記載のメッシュネットワークデバイス。
【請求項５３】
前記エンドデバイスが前記ルータデバイスとの通信を再確立することに応答して、前記データパケットは前記エンドデバイスに転送される、請求項５２に記載のメッシュネットワークデバイス。
【請求項５４】
前記エンドデバイスは、前記ルータデバイスにすべてのデータパケットを転送し、前記ルータデバイスは、前記エンドデバイスに代って前記データパケットのためのルートを判断する、請求項４８に記載のメッシュネットワークデバイス。
【請求項５５】
メッシュネットワークシステムであって、
メッシュネットワークにおいてルータデバイスを通してデータパケットを転送するように構成されたエンドデバイスを含み、
前記ルータデバイスは、
前記エンドデバイスの子識別子および前記ルータデバイスのルータ識別子からのエンドポイント識別子（ＥＩＤ）を前記エンドデバイスのためのルーティングロケータ（ＲＬＯＣ）にエンコードし、
前記ルータデバイスで前記エンドデバイスに対するアドレスクエリを受信し、
前記エンドデバイスに代って、前記エンドデバイスと関連付けられる前記ＲＬＯＣで、前記アドレスクエリに応答するように構成される、メッシュネットワークシステム。
【請求項５６】
前記エンドデバイスは前記ルータデバイスにアドレスを登録するように構成され、前記ルータデバイスは前記エンドデバイスに前記子識別子を割当てるように構成される、請求項５５に記載のメッシュネットワークシステム。
【請求項５７】
前記ルータデバイスは、
前記エンドデバイスに対するデータパケットを受信し、
受信されたデータパケットを保存し、
保存されたデータパケットを前記エンドデバイスに転送するように構成される、請求項５５に記載のメッシュネットワークシステム。
【請求項５８】
前記エンドデバイスが前記ルータデバイスとの通信を再確立することに応答して、前記データパケットは前記エンドデバイスに転送される、請求項５７に記載のメッシュネットワークシステム。
【請求項５９】
前記エンドデバイスは、前記ルータデバイスにすべてのデータパケットを転送するように構成され、前記ルータデバイスは、前記エンドデバイスに代って、転送されるデータパケットのためのルートを判断するように構成される、請求項５５に記載のメッシュネットワークシステム。
【請求項６０】
受信されるアドレスクエリは前記ＥＩＤを含む、請求項５５に記載のメッシュネットワークシステム。
【請求項６１】
メッシュネットワークにおいてルーティングを優先順位付けする方法であって、
第１のアドレスプレフィックスに第１のプリファレンス値を割当てることと、
第２のアドレスプレフィックスに第２のプリファレンス値を割当てることと、
前記メッシュネットワークにおいてネットワークデータを伝搬することとを含み、前記ネットワークデータは前記アドレスプレフィックスおよび前記割当てられたプリファレンスを含み、前記ネットワークデータを伝搬することは、宛先アドレスにデータパケットをルーティングするために用いるアドレスプレフィックスを、ルータデバイスで判断することを可能にするよう効力がある、メッシュネットワークにおいてルーティングを優先順位付けする方法。
【請求項６２】
前記第１のプリファレンス値および前記第１のアドレスプレフィックスは第１のプロビジョニングドメインにおいて伝搬され、前記第２のプリファレンス値および前記第２のアドレスプレフィックスは第２のプロビジョニングドメインにおいて伝搬され、ボーダールータが、伝搬されたプロビジョニングドメインの各々と関連付けられる、請求項６１に記載の方法。
【請求項６３】
１つより多いボーダールータが所与のアドレスプレフィックスに対してデフォルトルートを提供する場合には、判断されるルーティングは前記デフォルトルートに対して最も高いプリファレンス値を伴うアドレスプレフィックスを用いる、請求項６２に記載の方法。
【請求項６４】
前記プリファレンス値は、コスト、信頼性、レイテンシ、帯域幅またはサービスの質（ＱｏＳ）を含む１つ以上のファクタに基づく、請求項６１に記載の方法。
【請求項６５】
前記第１のプリファレンス値および前記第２のプリファレンス値が等しい場合には、判断されるルーティングは、最低のルーティングコストを伴うアドレスプレフィックスを用いる、請求項６１に記載の方法。
【請求項６６】
前記プリファレンス値の各々は、高、中、または低の１つである、請求項６１に記載の方法。
【請求項６７】
メッシュネットワークのルータデバイスとして実現されるメッシュネットワークデバイスであって、
前記メッシュネットワークにおける通信のために構成されたメッシュネットワークインターフェイスと、
アドレッシングアプリケーションを実現するためのメモリおよびプロセッサシステムとを含み、前記アドレッシングアプリケーションは、
前記メッシュネットワークインターフェイスを介して、２つのプロビジョニングドメイ
ンを受信するように構成され、前記２つのプロビジョニングドメインの各々はアドレスプレフィックスおよびプリファレンス値を含み、前記アドレッシングアプリケーションはさらに、
受信されるプロビジョニングドメインに基いて、宛先アドレスにデータパケットをルーティングするために用いるアドレスプレフィックスを判断し、
判断されたアドレスプレフィックスを用いて、前記データパケットを転送するように構成される、メッシュネットワークデバイス。
【請求項６８】
前記プロビジョニングドメインの各々は、前記アドレスプレフィックスと関連付けられるボーダールータをさらに含む、請求項６７に記載のメッシュネットワークデバイス。
【請求項６９】
前記プロビジョニングドメインにおいて所与のアドレスプレフィックスと関連付けられる１つより多いボーダールータが、デフォルトルートを提供する場合には、判断されるルートは、より高いプリファレンス値を伴うデフォルトルートである、請求項６７に記載のメッシュネットワークデバイス。
【請求項７０】
前記プリファレンス値は、コスト、信頼性、レイテンシ、帯域幅またはサービスの質（ＱｏＳ）を含む１つ以上のファクタに基づく、請求項６７に記載のメッシュネットワークデバイス。
【請求項７１】
前記第１のプロビジョニングドメインにおけるプリファレンス値および前記第２のプロビジョニングドメインにおけるプリファレンス値が等しい場合には、判断されるルーティングは、前記プロビジョニングドメインからの、より低いルーティングコストを伴う、アドレスプレフィックスである、請求項６７に記載のメッシュネットワークデバイス。
【請求項７２】
前記プリファレンス値は、高、中、または低の１つである、請求項６７に記載のメッシュネットワークデバイス。
【請求項７３】
メッシュネットワークシステムであって、
２つ以上のプロビジョニングドメインを伝搬するように構成されたリーダーデバイスを含み、前記２つのプロビジョニングドメインの各々はアドレスプレフィックスおよびプリファレンス値を含み、前記メッシュネットワークシステムはさらに、
前記メッシュネットワークのルータデバイスを含み、前記ルータデバイスは、
リーダーデバイスによって伝搬される、前記２つ以上のプロビジョニングドメインを受信し、
受信されるプロビジョニングドメインに基いて、宛先アドレスにデータパケットをルーティングするために用いるアドレスプレフィックスを判断し、
判断されたアドレスプレフィックスを用いて、前記データパケットを転送するように構成される、メッシュネットワークシステム。
【請求項７４】
１つ以上の外部ネットワークと前記メッシュネットワークとの間でデータパケットを転送するように構成された１つ以上のボーダールータデバイスをさらに含む、請求項７３に記載のメッシュネットワークシステム。
【請求項７５】
所与のアドレスプレフィックスと関連付けられる１つより多い前記ボーダールータが、デフォルトルートを提供する場合には、判断されるルートは、最も高いプリファレンス値を伴うデフォルトルートである、請求項７４に記載のメッシュネットワークシステム。
【請求項７６】
１つより多い前記ボーダールータが前記デフォルトルートを提供し、前記ボーダールータと関連付けられるプリファレンス値が等しい場合には、判断されるルーティングは、最
も低いルーティングコストを伴うデフォルトルートである、請求項７５に記載のメッシュネットワークシステム。
【請求項７７】
前記プリファレンス値は、コスト、信頼性、レイテンシ、帯域幅またはサービスの質（ＱｏＳ）を含む１つ以上のファクタに基づく、請求項７３に記載のメッシュネットワークシステム。
【請求項７８】
２つのプロビジョニングドメインが同じアドレスプレフィックスを含み、前記２つのプロビジョニングドメインにおけるプリファレンス値が等しい場合には、判断されるルーティングは、より低いルーティングコストを伴うアドレスプレフィックスを用いる、請求項７３に記載のメッシュネットワークシステム。
【請求項７９】
前記プリファレンス値は、高、中、または低の１つである、請求項７３に記載のメッシュネットワークシステム。
【請求項８０】
どのような値もプリファレンス値に対して設定されない場合には、デフォルト値が用いられる、請求項７３に記載のメッシュネットワークシステム。
【請求項８１】
メッシュネットワークにおいて重複アドレスを検出する方法であって、
前記メッシュネットワークにおいて通信のためにルータデバイスに配属されるエンドデバイスと関連付けられる、アドレスと時間ベースの情報とを含むアドレス識別子を、エンドデバイスによって生成することを含み、前記アドレス識別子は前記エンドデバイスのタプル状態として前記ルータデバイスによって維持され、前記方法はさらに、
アドレスクエリを開始して、指定されるアドレスを有する前記メッシュネットワークにおけるメッシュネットワークデバイスが前記指定されるアドレスに対応する前記タプル状態で応答することを要求することと、
前記アドレスクエリに応答して、前記指定されるアドレスを有するメッシュネットワークデバイスの前記タプル状態を受信することと、
前記メッシュネットワークデバイスの前記タプル状態の一部として維持される前記時間ベースの情報に基いて、前記メッシュネットワークデバイスの重複アドレスを検出することとを含む、メッシュネットワークにおいて重複アドレスを検出する方法。
【請求項８２】
前記メッシュネットワークデバイスの前記タプル状態における前記時間ベースの情報を前記エンドデバイスの前記タプル状態における前記時間ベースの情報と比較して、前記メッシュネットワークデバイスの前記重複アドレスを検出することをさらに含む、請求項８１に記載の方法。
【請求項８３】
前記重複アドレスを有する前記メッシュネットワークデバイスの１つ以上に新たなアドレスを生成するよう命じることをさらに含む、請求項８１に記載の方法。
【請求項８４】
前記エンドデバイスは、前記アドレスクエリを開始し、前記指定されるアドレスを有する前記メッシュネットワークデバイスの前記タプル状態を受信し、前記時間ベースの情報に基いて前記メッシュネットワークデバイスの前記重複アドレスを検出する、請求項８１に記載の方法。
【請求項８５】
前記ルータデバイスは、前記アドレスクエリを開始し、前記指定されるアドレスを有する前記メッシュネットワークデバイスの前記タプル状態を受信し、前記時間ベースの情報に基いて前記メッシュネットワークデバイスの前記重複アドレスを検出する、請求項８１に記載の方法。
【請求項８６】
前記アドレス識別子は、前記エンドデバイスによって生成されるランダム値をさらに含み、
前記メッシュネットワークデバイスの前記重複アドレスを検出することは、前記メッシュネットワークデバイスの前記タプル状態の一部として維持される前記ランダム値に基く、請求項８１に記載の方法。
【請求項８７】
メッシュネットワークのエンドデバイスとして実現されるメッシュネットワークデバイスであって、
前記メッシュネットワークにおけるルータデバイスを介した通信のために構成されたメッシュネットワークインターフェイスと、
アドレッシングアプリケーションを実現するためのメモリおよびプロセッサシステムとを含み、前記アドレッシングアプリケーションは、
前記ルータデバイスに配属されているエンドデバイスと関連付けられるアドレス情報を含むアドレス識別子を生成するように構成され、前記アドレス識別子は前記エンドデバイスのタプル状態として前記ルータデバイスによって維持され、前記アドレッシングアプリケーションはさらに、
アドレスクエリを開始して、指定されるアドレスを有する前記メッシュネットワークにおけるメッシュネットワークデバイスが前記指定されるアドレスに対応する前記タプル状態で応答することを要求し、
前記アドレスクエリに応答して、前記指定されるアドレスを有するメッシュネットワークデバイスの前記タプル状態を、前記メッシュネットワークインターフェイスを介して受信し、
前記メッシュネットワークデバイスの前記タプル状態の一部として維持されるアドレス情報に基いて、前記メッシュネットワークデバイスの重複アドレスを検出するように構成される、メッシュネットワークのエンドデバイスとして実現されるメッシュネットワークデバイス。
【請求項８８】
前記アドレス識別子は、前記ルータデバイスに配属されている前記エンドデバイスと関連付けられる時間ベースの情報をさらに含む、請求項８７に記載のメッシュネットワークデバイス。
【請求項８９】
前記アドレッシングアプリケーションは、前記メッシュネットワークデバイスの前記タプル状態における前記時間ベースの情報を前記エンドデバイスの前記タプル状態における前記時間ベースの情報と比較して、前記メッシュネットワークデバイスの前記重複アドレスを検出するように構成される、請求項８８に記載のメッシュネットワークデバイス。
【請求項９０】
前記アドレッシングアプリケーションは、前記重複アドレスを有する前記メッシュネットワークデバイスの１つ以上に新たなアドレスを生成するよう命じるように構成される、請求項８７に記載のメッシュネットワークデバイス。
【請求項９１】
前記アドレッシングアプリケーションは前記アドレス情報の一部としてランダム値を生成するように構成され、前記アドレス識別子は、前記エンドデバイスのアドレスと、前記ランダム値と、前記ルータデバイスがどれくらいの間前記エンドデバイスの前記タプル状態を維持するかを示す寿命持続期間とを含む、請求項８７に記載のメッシュネットワークデバイス。
【請求項９２】
前記アドレス識別子は、さらに、前記アドレッシングアプリケーションによって生成される１つ以上の以前のランダム値を含み、前記１つ以上の以前のランダム値は、前記エンドデバイスが以前に１つ以上のそれぞれのルータデバイスに配属されていたことに対応する、請求項９１に記載のメッシュネットワークデバイス。
【請求項９３】
前記アドレッシングアプリケーションは、前記メッシュネットワークデバイスの前記タプル状態における前記ランダム値を前記エンドデバイスの前記タプル状態における前記ランダム値と比較して、前記メッシュネットワークデバイスの前記重複アドレスを検出するように構成される、請求項９１に記載のメッシュネットワークデバイス。
【請求項９４】
前記メッシュネットワークデバイスの前記タプル状態における前記ランダム値が、前記エンドデバイスの前記タプル状態における前記ランダム値と一致する場合には、前記アドレッシングアプリケーションは、前記メッシュネットワークデバイスのアドレスは前記重複アドレスではない、と判断するように構成される、請求項９１に記載のメッシュネットワークデバイス。
【請求項９５】
前記アドレッシングアプリケーションは前記寿命持続期間を用いて前記ランダム値をエンコードするように構成される、請求項９１に記載のメッシュネットワークデバイス。
【請求項９６】
メッシュネットワークシステムであって、
メッシュネットワークのルータデバイスを含み、前記ルータデバイスは、前記メッシュネットワークにおける通信のために構成され、前記メッシュネットワークシステムはさらに、
前記メッシュネットワークのエンドデバイスとして実現されるメッシュネットワークデバイスを含み、前記エンドデバイスは前記メッシュネットワークにおける通信のために前記ルータデバイスに配属され、前記エンドデバイスは、
前記ルータデバイスに配属されている前記エンドデバイスと関連付けられるアドレスおよび時間ベースの情報を含むアドレス識別子を生成するように構成され、前記アドレス識別子は前記エンドデバイスのタプル状態として前記ルータデバイスによって維持され、前記エンドデバイスはさらに、
アドレスクエリを開始して、指定されるアドレスを有する前記メッシュネットワークにおけるメッシュネットワークデバイスが前記指定されるアドレスに対応する前記タプル状態で応答することを要求し、前記アドレスクエリに応答して、前記指定されるアドレスを有するメッシュネットワークデバイスの前記タプル状態を受信し、
前記メッシュネットワークデバイスの前記タプル状態の一部として維持される前記時間ベースの情報に基いて、前記メッシュネットワークデバイスの重複アドレスを検出するように構成される、メッシュネットワークシステム。
【請求項９７】
前記エンドデバイスは、前記メッシュネットワークデバイスの前記タプル状態における前記時間ベースの情報を前記エンドデバイスの前記タプル状態における前記時間ベースの情報と比較して、前記メッシュネットワークデバイスの前記重複アドレスを検出するように構成される、請求項９６に記載のメッシュネットワークシステム。
【請求項９８】
前記エンドデバイスは、前記重複アドレスを有する前記メッシュネットワークデバイスの１つ以上に新たなアドレスを生成するよう命じるように構成される、請求項９６に記載のメッシュネットワークシステム。
【請求項９９】
前記アドレス識別子は、前記エンドデバイスによって生成されるランダム値をさらに含み、
前記エンドデバイスは、前記メッシュネットワークデバイスの重複アドレスは前記メッシュネットワークデバイスの前記タプル状態の一部として維持されるランダム値に基づくことを検出するように構成される、請求項９６に記載のメッシュネットワークシステム。
【請求項１００】
前記エンドデバイスは前記アドレス情報の一部としてランダム値を生成するように構成
され、前記アドレス識別子は、前記エンドデバイスのアドレスと、前記ランダム値と、前記ルータデバイスがどれくらいの間前記エンドデバイスの前記タプル状態を維持するかを示す寿命持続期間とを含む、請求項９６に記載のメッシュネットワークシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願への相互参照
この出願は、２０１５年７月１３日に提出された米国特許出願連続番号１４／７９８，４４８に対する優先権を主張する。この出願は、さらに２０１５年７月１３日に提出された米国特許出願連続番号１４／７９８，４５１に対する優先権を主張する。この出願は、さらに２０１５年７月１３日に提出された米国特許出願連続番号１４／７９８，４５２に対する優先権を主張する。この出願は、さらに２０１５年７月１３日に提出された米国特許出願連続番号１４／７９８，４５５に対する優先権を主張する。この出願は、さらに２０１５年７月１３日に提出された米国特許出願連続番号１４／７９８，４５６に対する優先権を主張する。この出願は、さらに２０１５年２月３日に提出された米国仮特許出願連続番号６２／１１１，５１０に対する３５Ｕ．Ｓ．Ｃ．§１１９（ｅ）の下での優先権を主張し、その開示全体を、ここに引用により援用する。この出願は、さらに２０１５年３月１０日に提出された米国仮特許出願連続番号６２／１３１，１８８に対する３５Ｕ．Ｓ．Ｃ．§１１９（ｅ）の下での優先権を主張し、その開示全体を、ここに引用により援用する。
【背景技術】
【０００２】
背景
デバイスを互いに、およびクラウドベースのサービスに接続するために無線メッシュネットワーキングを使用することは、環境条件を感知し、機器を制御し、情報および警告をユーザに提供するためにますます普及している。しかしながら、メッシュネットワーク上の多くのデバイスは、バッテリー電源で長時間動作するように設計されており、それは、デバイスにおける利用可能な計算、ユーザインターフェイス、および無線リソースを制限する。加えて、いくつかのメッシュネットワークデバイスは電力消費を低減するために周期的にスリープするかもしれず、データパケットを受信するようにメッシュネットワークと常時無線連絡状態にはない。しかしながら、メッシュネットワークの遍在および相互接続性の増大で、ネットワークアドレッシング技術は、メッシュネットワーク内において、およびメッシュネットワークデバイスと外部ネットワークデバイスとサービスとの間において、データパケットをルーティングする効率、柔軟性および冗長性を制限する。
【発明の概要】
【課題を解決するための手段】
【０００３】
概要
この概要は、一般的にアドレッシングおよびルーティングに関係づけられるメッシュネットワークアドレッシングの簡略化された概念を紹介するために提供される。簡略化された概念は、以下の詳細な説明でさらに説明される。この概要は、請求される主題の本質的な特徴を識別するよう意図されておらず、また、請求される主題の範囲を定める際に使用されるよう意図されてもいない。
【０００４】
一般に、メッシュネットワークにおいてパケットをアドレッシングおよびルーティングすることに関するメッシュネットワークアドレッシングが記載される。実施の形態では、ボーダールータは、外部ネットワークからアドレスプレフィックスおよび関連付けられる構成情報を受信する。受信されるアドレスプレフィックスおよび構成情報により、ボーダールータは、受信されるアドレスプレフィックスおよび構成情報を含むプロビジョニングドメインを、一意の識別子とともに形成することができる。ボーダールータは、形成されたプロビジョニングドメインをメッシュネットワークにおいてリーダーデバイスに転送し、それはプロビジョニングドメインを記憶し、プロビジョニングドメインを任意の他のプ
ロビジョニングドメインと並んでメッシュネットワークのためのネットワークデータの一部として伝搬する。プロビジョニングドメインは、メッシュネットワークにおけるルータ、エンドデバイスまたはホストがパケットを宛先アドレスにアドレッシングするためのルートを選択することを可能にする。実現例では、プロビジョニングドメインは、ボーダールータのためのルーティングロケータ（ＲＬＯＣ）を含み、ルータがボーダールータを用いてパケットを外部ネットワークに転送することを可能にする。
【０００５】
一般的にメッシュネットワークにおいてパケットをアドレッシングおよびルーティングすることに関するメッシュネットワークアドレッシングが記載される。実施の形態では、ルータは、ネットワーク宛先に伝送すべきパケットを受取り、そのネットワーク宛先がメッシュネットワーク内にあるかどうかを判断し得る。ネットワーク宛先は、ルータが、ネットワーク宛先に関連付けられネットワーク宛先のためのルーティング可能なネットワークアドレスを提供するルーティングロケータ（ＲＬＯＣ）を発見することを可能にする。ルータは、発見されたルーティングロケータから、ルーティング可能なネットワークアドレスを用いて、受信されたパケットを転送する。実現例では、ルータは、ルータに記憶されるＲＬＯＣのキャッシュを検索すること、またはアドレスクエリをメッシュネットワークを介して送信することなどによることを含むさまざまな態様でＲＬＯＣを発見することができる。
【０００６】
一般的にメッシュネットワークにおいてパケットをアドレッシングおよびルーティングすることに関するメッシュネットワークアドレッシングが記載される。実施の形態では、ルータは、エンドデバイスのためのアドレスを登録し、子識別子をそのエンドデバイスに割当てる。ルータは、エンドデバイスのエンドポイント識別子（ＥＩＤ）およびルータのルータ識別子をエンドポイント識別子にエンコードすることができ、ルータはそれをエンドデバイスのためのルーティングロケータ（ＲＬＯＣ）に組入れる。ルータはエンドデバイスに対するアドレスクエリをメッシュネットワークを介して受信し、そのアドレスクエリに対して、エンドデバイスの代わりに、エンドデバイスに対するＲＬＯＣを含む応答で応答する。ルータは、データパケットをエンドデバイスの代わりに受信し、ルータがそのデータパケットをエンドデバイスに転送し得るまで、そのデータパケットをエンドデバイスのための保存することができる。
【０００７】
一般に、パケットをアドレッシングおよびルーティングすることに関するメッシュネットワークアドレッシングが記載される。実施の形態では、ルータデバイスはプロビジョニングドメインを受信し、それらは、各々、アドレスプレフィックスと、アドレスプレフィックスのための関連付けられるプリファレンス値とを含む。ルータは、アドレスプレフィックスのうちの１つに基づいて、宛先にデータパケットを転送するよう用いるべきルートを判断することができる。ルータは、プリファレンス値を用いて、データパケットのルーティングを優先順位付けすることができる。他の局面では、プリファレンス値は１つ以上のファクタに基づいて設定することができ、ルータはプリファレンス値をメッシュネットワークルーティングコストに加えて用いることにより、データパケットのためのルートを判断することができる。
【０００８】
一般に、メッシュネットワークにおける重複アドレス検出に関するメッシュネットワークアドレッシングが記載される。実施の形態では、メッシュネットワークのエンドデバイスは、メッシュネットワークにおいて通信のためにルータデバイスに配属されるエンドデバイスと関連付けられるアドレスおよび時間ベースの情報を含むアドレス識別子を生成することができる。アドレス識別子は、さらに、エンドデバイスによって生成されるランダム値を含んでもよい。アドレス識別子は、ルータデバイスによって、エンドデバイスのタプル状態として維持される。エンドデバイスまたはルータデバイスは、アドレスクエリを開始して、指定されるアドレスを有するメッシュネットワークにおけるメッシュネットワ
ークデバイスが指定されるアドレスに対応するタプル状態で応答することを要求することができる。エンドデバイスまたはルータデバイスは、アドレスクエリに応答して、指定されるアドレスを有するメッシュネットワークデバイスのタプル状態を受信する。エンドデバイスまたはルータデバイスは、次いで、メッシュネットワークデバイスのタプル状態における時間ベースの情報をエンドデバイスのタプル状態における時間ベースの情報と比較し、時間ベースの情報に基づいてメッシュネットワークデバイスの重複アドレスを検出することができる。エンドデバイスまたはルータデバイスは、次いで、重複アドレスを有するメッシュネットワークデバイスのうちの１つ以上に対して、新たなアドレスを生成するよう命じることができる。
【０００９】
メッシュネットワークアドレッシングの実施形態を、以下の図面を参照して説明する。同様の特徴およびコンポーネントに言及するために、図面全体を通して同じ数字が使用される。
【図面の簡単な説明】
【００１０】
【図１】メッシュネットワークアドレッシングのさまざまな実施形態が実現され得る例示的なメッシュネットワークシステムを示す図である。
【図２】メッシュネットワークアドレッシングのさまざまな実施形態が実現され得る例示的な環境を示す図である。
【図３】メッシュネットワークアドレッシング技術のさまざまな実施形態が実現され得る例示的な環境を示す図である。
【図４】メッシュネットワークアドレッシング技術のさまざまな実施形態が実現され得る例示的な環境４００をさらに示す図である。
【図５】概して重複アドレス検出に関するようなメッシュネットワークアドレッシングのさまざまな実施形態が実現され得る例示的なメッシュネットワークシステムを示す図である。
【図６】メッシュネットワークアドレッシングのさまざまな実施の形態に従う、例示的メッシュネットワークシステムにおける重複アドレス検出の例をさらに示す図である。。
【図７】メッシュネットワークアドレッシングのさまざまな実施の形態に従う、例示的メッシュネットワークシステムにおける重複アドレス検出の例をさらに示す図である。。
【図８】メッシュネットワークアドレッシングのさまざまな実施の形態に従う、例示的メッシュネットワークシステムにおける重複アドレス検出の例をさらに示す図である。。
【図９】メッシュネットワークアドレッシングのさまざまな実施の形態に従う、例示的メッシュネットワークシステムにおける重複アドレス検出の例をさらに示す図である。。
【図１０】ここに説明される技術の実施形態に従った、概してメッシュネットワークにおけるプロビジョニングドメインに関するようなメッシュネットワークアドレッシングの例示的な方法を示す図である。
【図１１】ここに説明される技術の実施形態に従った、概してメッシュネットワークにおけるアドレッシングアーキテクチャに関するようなメッシュネットワークアドレッシングの別の例示的な方法を示す図である。
【図１２】ここに説明される技術の実施形態に従った、概してメッシュネットワークにおけるエンドデバイスに関するようなメッシュネットワークアドレッシングの例示的な方法を示す図である。
【図１３】ここに説明される技術の実施形態に従った、概してメッシュネットワークにおける優先されるルーティングに関するようなメッシュネットワークアドレッシングの別の例示的な方法を示す図である。
【図１４】ここに説明される技術の実施形態に従った、概してメッシュネットワークにおける重複アドレス検出に関するようなメッシュネットワークアドレッシングの例示的な方法を示す図である。
【図１５】ここに説明される技術の実施形態に従った、メッシュネットワークが実現され得る例示的な環境を示す図である。
【図１６】ここに説明される技術の１つ以上の実施形態に従った、メッシュネットワーク環境において実現され得る例示的なメッシュネットワークデバイスを示す図である。
【図１７】メッシュネットワークアドレッシングの実施形態を実現可能な例示的なデバイスを有する例示的なシステムを示す図である。
【発明を実施するための形態】
【００１１】
詳細な説明
無線メッシュネットワークは、メッシュネットワーク内のトラフィック用の信頼できる冗長な通信経路を提供するメッシュトポロジーで接続された無線ノードを有する通信ネットワークである。無線メッシュネットワークは、メッシュネットワーク内のデバイス間でトラフィックを転送するために、複数の無線リンク、すなわちホップを使用する。これは、単一の無線リンクによってカバーされるエリアよりも大きいエリアに対するカバレージを提供する。
【００１２】
無線メッシュネットワークは、独自技術、または規格ベースの技術に基づくことができる。たとえば、無線メッシュネットワークはＩＥＥＥ８０２．１５．４規格に基づいていてもよく、それは、メッシュネットワーキングスタックの上位層でのアプリケーションによる使用のために、物理（ＰＨＹ）層およびメディアアクセス制御（ＭＡＣ）層の特徴およびサービスを規定する。上位層アプリケーションは、メッシュネットワーク全域およびメッシュネットワークと外部ネットワークとの間においてプリケーションレベルの通信をサポートをするよう、パケットデータのアドレッシングおよびルーティングをサポートするよう、これらの規格によって規定されたサービスに依存する。
【００１３】
多くの規格に基づく技術がインターネット（登録商標）プロトコル（ＩＰ）ネットワークなどのネットワークにおけるデータパケットのアドレッシングおよびルーティングのために開発されてきたが、これらの技術はメッシュネットワークに対してパケットをアドレッシングおよびルーティングするための完全な解決策を提供しはしない。たとえば、メッシュネットワークは複数の外部ネットワークに接続されるかも知れず、外部ネットワークは、各々、メッシュネットワークデバイスによってデータパケットをアドレッシングおよびルーティングするよう用いられ得る異なる組のネットワーク構成データを提供する。しかしながら、メッシュネットワークデバイスは、どの組のネットワーク構成データを用いるか、または異なる組のネットワーク構成データからの異なる、おそらくは競合する構成情報のアイテムをどのように合併してデータパケットをアドレッシングするかを判断することを任される。
【００１４】
プロビジョニングドメインを確立してメッシュネットワークのためのネットワーク構成データを識別、記憶および伝搬することは、異なる外部ネットワークに対するネットワーク構成データの一貫した管理を与える。メッシュネットワークデバイスが所与のプロビジョニングドメインからのネットワーク構成データを用いる場合、（たとえばネットワーク構成データを混合することからの）一貫性のない、または競合する使用が防がれる。さまざまな実施の形態は、ネットワーク構成データの管理および使用を改善するメッシュネットワークアドレッシング技術を提供する。
【００１５】
メッシュネットワークのためのアドレッシングおよびルーティング技術はルーティング非効率性を生じさせ、メッシュネットワークに対して単一障害点を形成するかも知れない
。たとえば、メッシュネットワークをインターネットサービスプロバイダ（ＩＳＰ）の外部ネットワークに接続するボーダールータはＩＳＰからアドレスプレフィックスおよび関連付けられるネットワーク構成データを受信し得る。ボーダールータにおけるダイナミックホストコンフィギュレーションプロトコル（ＤＨＣＰ）サーバは、ＩＳＰによって供給されるアドレスプレフィックスを用いて、メッシュネットワークデバイスアドレスをルーティングのためのネットワークアドレスにマッピングする。
【００１６】
メッシュネットワークにおけるネットワークアドレスルックアップがＤＨＣＰサーバを経ると、ルーティング非効率性を生じさせ、ＤＨＣＰサーバはメッシュネットワークに対して可能性のある単一障害点となる。さらに、ＤＨＣＰサーバにＩＰｖ６アドレスを構成するよう要求することは、メッシュネットワークに対して可能性のある単一障害点を形成する。ＤＨＣＰサーバが障害を生じさせると、メッシュネットワークデバイスはＩＰｖ６アドレスを得ることはできない。集中型サービスがメッシュネットワーク内外でデータパケットのための宛先アドレスを判断する必要性を伴わずに、データパケットに対するメッシュ上グローバルアドレッシングを提供するメッシュネットワークアドレッシング技術が記載される。
【００１７】
センサのようなメッシュネットワークのための多くのデバイスが、何ヶ月または何年ものような長い時間期間にわたる低電力バッテリ動作のために設計される。長い稼働寿命を達成するために、バッテリにより電力を供給されるメッシュデバイスは、さまざまな時間期間の間、無線およびネットワークインターフェイスなどのような多くの機能をオフにするかまたはスリープさせ得る。スリープ期間中、メッシュデバイスは、メッシュネットワーク上において、それに対してアドレッシングされるパケットを受信するよう利用可能ではない。
【００１８】
多くのネットワークアドレッシングおよびルーティング技術はデータパケットをそのようなスリープ中のデバイスに伝送することはできず、パケットの送り手に対して、スリープ中のデバイスに対する伝送は失敗した旨を示すかも知れない。スリープ中の子エンドデバイスのために、ルーティング宛先を提供しエンドデバイスに代わってアドレスクエリに応答する親ルータデバイスにアドレス登録を行なうメッシュネットワークアドレッシング技術が記載される。親ルータデバイスは、スリープ中のエンドデバイスのために、エンドデバイスがデータパケットを受取るよう覚醒するまで、受信されたデータパケットを保存する。
【００１９】
メッシュネットワークにおけるパケットはルーティングコストに基づいてルーティングされてもよい。たとえば、ルーティングコストは、ルーティング経路におけるリンクの数などのようなルートの特性またはリンク品質の測定値の１つまたはそれらの組合せに基づいてもよい。ルーティングコストは、データパケットをルーティングすることを１つのルートに対してよりも他のルートに対して優先順位付けするよう必要とされる情報を完全に記載しなくてもよい。プリファレンスをアドレスプレフィックスと関連付けて、プリファレンスに基づいてデータパケットのルーティングを優先順位付けするメッシュネットワークアドレッシング技術が記載される。
【００２０】
メッシュネットワークにおけるデバイスは、メッシュネットワークにおいて使用中の他のアドレスの組の知識なしに、アドレスを非集中化された態様でランダムに生成する処理を用いてもよい。メッシュネットワークのトポロジーは経時的に変動するので、デバイスは異なるルータに所属し、さらなるアドレスを作成し得る。アドレスがメッシュネットワーク内を伝搬されるにつれ、重複アドレスが異なるメッシュデバイスによって形成され、アドレスがメッシュデバイス間において一意でない場合には、ルーティング問題を生じさせるかも知れない。メッシュネットワークにおいて重複アドレスを検出するメッシュネッ
トワークアドレッシング技術が記載される。
【００２１】
メッシュネットワークアドレッシングのための説明されたシステムおよび方法の特徴および概念は、任意の数の異なる環境、システム、デバイス、および／またはさまざまな構成において実現され得るが、メッシュネットワークアドレッシングの実施形態は、以下の例示的なデバイス、システム、および構成の文脈で説明される。
【００２２】
図１は、メッシュネットワークアドレッシングのさまざまな実施形態が実現され得る例示的なメッシュネットワークシステム１００を示す。メッシュネットワーク１００は、ルータ１０２と、ルータ適格エンドデバイス１０４と、エンドデバイス１０６とを含む無線メッシュネットワークである。ルータ１０２、ルータ適格エンドデバイス１０４、およびエンドデバイス１０６は各々、メッシュネットワークを通した通信のためのメッシュネットワークインターフェイスを含む。ルータ１０２は、メッシュネットワークインターフェイスを通してパケットデータを送受信する。ルータ１０２はまた、メッシュネットワーク１００全域でトラフィックをルーティングする。
【００２３】
ルータ適格エンドデバイス１０４はメッシュネットワークトポロジーのリーフノードに位置しており、メッシュネットワーク１００における他のノードにトラフィックをアクティブにルーティングしていない。ルータ適格デバイス１０４が追加のメッシュネットワークデバイスに接続されると、ルータ適格デバイス１０４はルータ１０２になることができる。エンドデバイス１０６は、メッシュネットワーク１００を使用して通信できるものの、メッシュネットワーク１００においてその親ルータ１０２に単にパケットを転送することを超えてトラフィックをルーティングする能力はない、デバイスである。
【００２４】
いくつかのエンドデバイス１０６は、エンドデバイス１０６が動作可能な時間の一部の間、何らかの動作またはハードウェアの出力を下げる（つまりスリープにする）かも知れない。たとえば、エンドデバイス１０６は、無線またはネットワークインターフェイスの出力を下げて、メッシュネットワーク１００に対する接続を必要とする動作間において電力を節約するかも知れない。たとえば、バッテリにより電力を供給される温度センサは周期的にのみ覚醒状態にあって温度の報告を送信するかも知れず、温度センサは温度センサが報告を行なう次のときまでスリープする。エンドデバイス１０６は、スリープすると、アドレスクエリに応答するよう、またはメッシュネットワーク１００を介してデータパケットを受信するよう、メッシュネットワーク１００に対して能動的には接続されない。
【００２５】
図２は、メッシュネットワーキングアドレッシング技術のさまざまな実施形態が実現され得る例示的な環境２００を示す。環境２００はメッシュネットワーク１００を含み、そこでは、いくつかのルータ１０２がメッシュネットワーク１００において特定の役割を行なっている。
【００２６】
（ゲートウェイおよび／またはエッジルータとしても知られる）ボーダールータ２０２は、ルータ１０２のうちの１つである。ボーダールータ２０２は、メッシュネットワーク１００の外部の外部ネットワークとの通信のための第２のインターフェイスを含む。ボーダールータ２０２は、外部ネットワークを通してアクセスポイント２０４に接続する。たとえば、アクセスポイント２０４は、イーサネット（登録商標）ルータ、Ｗｉ−Ｆｉ（登録商標）アクセスポイント、セルラー基地局または異なるタイプのネットワークをブリッジするための任意の他の好適なデバイスであってもよい。明瞭性のため、単一のボーダールータ２０２が図２に示されるが、メッシュネットワーク１００は任意の数のボーダールータ２０２を有してもよく、それらは任意の数の外部ネットワークに接続してもよい。他の実現例では、エンドデバイス１０６はボーダールータ２０２として動作してもよい。この場合、ボーダールータ２０２として動作するエンドデバイスは、メッシュネットワーク
１００と外部ネットワークとの間におけるトラフィックをルーティングしているが、他のメッシュネットワーク間のトラフィックはルーティングしていない。
【００２７】
アクセスポイント２０４は、インターネットなどの通信ネットワーク２０６に接続する。通信ネットワーク２０６を介して接続されるクラウドサービス２０８は、メッシュネットワーク１００内のデバイスに関するサービス、および／またはそれらのデバイスを使用するサービスを提供する。限定ではなく例として、クラウドサービス２０８は、スマートフォン、タブレットなどのエンドユーザデバイスをメッシュネットワーク１００におけるデバイスに接続すること、メッシュネットワーク１００で得られたデータを処理してエンドユーザに提示すること、１つ以上のメッシュネットワーク１００におけるデバイスをクラウドサービス２０８のユーザアカウントにリンクすること、メッシュネットワーク１００におけるデバイスをプロビジョニングして更新すること、などを含むアプリケーションを提供する。
【００２８】
ルータ１０２のうちの１つは、メッシュネットワーク１００用のリーダー２１０の役割を行なう。リーダー２１０はルータ識別子割当てを管理し、ネットワーク構成情報の中央アービターであり、ネットワーク構成情報を含むネットワークデータをメッシュネットワーク１００のために伝搬する。
【００２９】
図３は、メッシュネットワークアドレッシング技術のさまざまな実施の形態が実現され得る例示的な環境３００を示す。環境３００は、２つの外部ネットワーク３０２および３０４に接続されるメッシュネットワーク１００を示す。この例では、２つの外部ネットワークが示されるが、任意の数の物理的または仮想ネットワークが、任意の好適なネットワーク接続技術を用いて、メッシュネットワーク１００に接続されてもよい。図３は、さらに、外部ネットワーク３０２および３０４の各々が、３０６および３０８において示されるように、１つ以上のボーダールータ２０２によってメッシュネットワーク１００に接続されることを示す。任意のボーダールータ２０２が任意の数の外部ネットワークに接続してよい。任意の外部ネットワークが、さらに、任意の数のボーダールータ２０２を介して、メッシュネットワーク１００に接続してもよい。
【００３０】
プロビジョニングドメイン
図４は、メッシュネットワークアドレッシング技術のさまざまな実施の形態が実現され得る例示的環境４００を示す。環境４００は、外部ネットワーク３０２および３０４からネットワーク構成データを受信するよう示されるメッシュネットワーク１００を含む。外部ネットワーク３０２は構成データ４０２をボーダールータ４０６に与える。構成データ４０２は、外部ネットワーク３０２によってメッシュネットワーク１００に割当てられるアドレスプレフィックスに関連付けられ、アドレスプレフィックスは、メッシュネットワーク１００上において、データパケットをアドレッシングおよびルーティングすることに対して利用可能である。外部ネットワーク３０４は構成データ４０４をボーダールータ４０６およびボーダールータ４０８に与える。構成データ４０４は、外部ネットワーク３０４によってメッシュネットワーク１００に割当てられるアドレスプレフィックスに関連付けられ、アドレスプレフィックスは、メッシュネットワーク１００上において、データパケットをアドレッシングおよびルーティングすることに対して利用可能である。
【００３１】
任意のメッシュネットワークデバイスが構成データ４０４または構成データ４０４を用いてデータパケットをアドレッシングおよびルーティングしてもよい。プロビジョニングドメインを用いて、構成データ４０２および構成データ４０４から引出される構成情報の任意のおそらくは競合する組合せがデータパケットをある宛先に対してアドレッシングすることに対して用いられないことを保証する。プロビジョニングドメインは、ボーダールータ２０２のうちの１つ以上によって与えられるメッシュネットワーク１００に対する構
成情報の整合性のある組である。例として、および限定ではなく、プロビジョニングドメインにおける構成情報は、メッシュ上プレフィックス、ネットワークアドレス構成情報、外部ルート、および／または他のネットワーク構成情報を含んでもよい。
【００３２】
プロビジョニングドメインは、ともに用いられるネットワーク構成情報のアイテムを関連付ける。複数のプロビジョニングドメインに記憶されるネットワーク構成情報の使用は相互に排他的である（つまりメッシュネットワークデバイスは一度に１つのプロビジョニングドメインのみからのネットワーク構成情報を用いる）。
【００３３】
ある実施の形態では、ある特定のプロビジョニングドメインにおけるネットワーク構成情報は単一のボーダールータ２０２によって供給されてもよい。代替的に、複数のボーダールータ２０２は、各々、任意の特定のプロビジョニングドメインに含まれる情報のサブセットを供給してもよく、その場合、プロビジョニングドメインは、複数のボーダールータ２０２によって供給されるネットワーク構成情報のサブセットの収集物である。
【００３４】
メッシュネットワーク１００のためのプロビジョニングドメインはリーダー２１０によってタプルとして維持される。プロビジョニングドメインの各々は、タプルに含まれる一意の識別子によって識別される。リーダー２１０は、プロビジョニングドメインを、メッシュネットワーク１００においてルータ１０２およびルータ適格エンドデバイス１０４に伝搬する。たとえば、リーダー２１０は、プロビジョニングドメインを、メッシュネットワーク１００のネットワークデータにおいて、低電力で損失の多いネットワーク用マルチキャストプロトコル（Multicast Protocol for Low Power and Lossy Networks：ＭＰＬ
）などの任意の好適なプロトコルを使用して、またはＭＬＥ−ＵＰＤＡＴＥメッセージをマルチキャストして、伝搬してもよい。
【００３５】
例として、および限定ではなく、プロビジョニングドメインのタプルは、ネットワークアドレスプレフィックス（たとえばＩＰｖ６アドレスプレフィックス）、タプルが関連付けられる一意のプロビジョニングドメイン識別子、ネットワークアドレスプレフィックスをメッシュネットワーク１００に対して利用可能にするボーダールータ２０２のためのルーティングロケータ（ＲＬＯＣ）、プロビジョニングドメインに対するある数の構成フラグ、および／またはルータプリファレンス値を含む。
【００３６】
タプルにおける構成フラグは１つ以上のフラグを含んでもよく、それは、プロビジョニングドメインにおけるルートが最小の時間期間に対して安定すること、メッシュネットワークデバイスがネットワークアドレスプレフィックスを用いてアドレスを自動構成するよう許されること、メッシュネットワークデバイスが、ネットワークアドレスプレフィックスを用いて、以前に構成されたアドレスを用いるよう許されること、プロビジョニングドメインに関連付けられるボーダールータ２０２がネットワークアドレスプレフィックスのためにアドレス構成を管理すること、プロビジョニングドメインに関連付けられるボーダールータ２０２が他のネットワーク構成データ（たとえばドメイン名サービス（ＤＮＳ）サーバ）を供給すること、および／またはプロビジョニングドメインに関連付けられるボーダールータ２０２がネットワークアドレスプレフィックスを用いてデータパケットのためのデフォルトルートにソースを与えること、を示す。
【００３７】
メッシュネットワークアドレスアーキテクチャ
メッシュネットワーク１００においては、単一の無線送信で到達可能なメッシュネットワークインターフェイス（メッシュネットワークデバイス）の組によって、リンクローカル範囲が規定されてもよい。換言すれば、リンクローカル範囲は、メッシュネットワーク１００内において互いに直接接続するメッシュネットワークデバイスを含む。
【００３８】
メッシュネットワークデバイスは、リンクローカルアドレスを用いて、単一の無線送信の範囲内におけるメッシュネットワークデバイスに到達する。メッシュネットワークデバイスは、リンクローカルアドレスを用いて、近隣のメッシュネットワークデバイスを発見し、リンクを構成し、および／またはルーティング情報を交換する。ある実施の形態では、メッシュネットワークデバイスは、リンクローカルアドレスを、ＩＥＥＥ８０２．１５．４ネットワークスタックのメディアアクセスコントロール（ＭＡＣ）層のＩＥＥＥ８０２．１５．４拡張アドレスから導き出されるインターフェイス識別子とともに割当てられてもよい。たとえば、メッシュネットワークデバイスは、リンクローカルＩＰｖ６アドレスをインターフェイス識別子（ＩＩＤ）とともに割当て、ＩＩＤは、ＩＥＥＥ８０２．１５．４拡張アドレスのＳＨＡ−２５６ハッシュを計算し、そのＳＨＡ−２５６ハッシュの最初の８バイトをＩＩＤとして取ることにより得られる。メッシュネットワーク１００に配属されると、メッシュネットワークデバイスは、リンクローカルＩＰｖ６アドレスに、メッシュネットワークデバイスに割当てられるＲＬＯＣと同じＩＩＤを割当てる。
【００３９】
メッシュネットワーク１００においては、メッシュネットワークローカル（つまりメッシュローカルまたは領域ローカル）範囲が、任意の数の無線送信を介して同じメッシュネットワーク１００内において参加するメッシュインターフェイス（メッシュネットワークデバイス）の組によって規定される。さらに、同じメッシュローカル範囲内におけるすべてのメッシュインターフェイスは、同じメッシュコミッショニングパラメータ（つまりマスターキー、拡張パーソナルエリアネットワーク識別子（ＰＡＮＩＤ）、およびメッシュローカルプレフィックス）を共有し、同じメッシュネットワーク１００に能動的に参加している。メッシュネットワークデバイスはメッシュローカルプレフィックスからメッシュローカルアドレスを形成する。
【００４０】
メッシュネットワークデバイスは、メッシュローカルアドレスを用いて、同じメッシュネットワーク１００内における他のメッシュネットワークデバイスに到達する。メッシュネットワークデバイスがメッシュネットワーク１００に配属されると、２つのメッシュローカルアドレスがそのメッシュネットワークデバイスに割当てられる。第１のものは、ルーティングロケータ（ＲＬＯＣ）であり、それは、メッシュローカル一意ローカルアドレス（ＵＬＡ）プレフィックスであるプレフィックスと、これもメッシュローカルＵＬＡプレフィックスであるプレフィックスを含むエンドポイント識別子（ＥＩＤ）とを含む。ＲＬＯＣは、親ルータ１０２のルータ識別子（ルータＩＤ）、および親ルータ１０２の子であるエンドデバイス１０６の子識別子（子ＩＤ）をエンコーディングしたものである。第２の割当てられるメッシュローカルアドレスはメッシュローカルエンドポイント識別子（ＭＬ−ＥＩＤ）であり、それは、プレフィックスがメッシュローカルＵＬＡプレフィックスでありインターフェイス識別子（ＩＩＤ）がランダムに選択されるＥＩＤである。
【００４１】
ユニキャストメッシュローカルアドレスおよびメッシュローカルマルチキャストアドレスに加えて、メッシュネットワーク１００はエニーキャストアドレッシングをサポートする。メッシュネットワーク１００はＩＰｖ６エニーキャストアドレスを用いてメッシュネットワークＤＨＣＰｖ６エージェントと通信する。エンドデバイス１０６によってＤＨＣＰｖ６エージェントに到達するよう用いられる、メッシュローカルプレフィックスベースのＤＨＣＰｖ６エージェントエニーキャストアドレスが規定される。プレフィックスベースのＤＨＣＰｖ６エージェントエニーキャストアドレスは、メッシュローカルＵＬＡプレフィックスおよびインターフェイス識別子を用いて形成されるＲＬＯＣであり、フォーム0000:00FF:FE00:FC0nを有し、そこにおいて、「ｎ」は、ボーダールータ２０２が働くメ
ッシュ上プレフィックスに割当てられる低電力無線パーソナルエリアネットワーク（６ＬｏＷＰＡＮ）コンテキストＩＤを介するＩＰｖ６である。
【００４２】
メッシュネットワーク１００は、さらに、ＩＰｖ６エニーキャストアドレスを用いてメ
ッシュネットワークサーバと通信する。メッシュネットワークサーバは、ネットワークデータをリーダー２１０、たとえばボーダールータ２０２、ＤＨＣＰサーバなどに寄与する任意のメッシュデバイスである。メッシュローカルサービスエニーキャストアドレスが規定され、エンドデバイス１０６はそれを用いて所与のタイプのメッシュネットワークサーバに到達してもよい。メッシュローカルサービスエニーキャストアドレスはメッシュローカルプレフィックスを用いて形成されるＲＬＯＣであり、インターフェイス識別子はフォーム0000:00FF:FE00:FCmnを有し、そこにおいて、「ｍｎ」はサービスタイプＩＤに１６
を足したものである。
【００４３】
メッシュネットワークデバイスは、さらに、メッシュローカル範囲よりも大きな範囲を有するユニキャストアドレスを割当てる。メッシュネットワーク１００内においては、グローバルユニキャストアドレス（ＧＵＡ）を用いて、メッシュネットワーク１００外のデバイスとの通信を（たとえばＷｉ−Ｆｉのような論理的に接続されたネットワークを介して、またはインターネットを介して）可能にする。グローバルユニキャストアドレスは、メッシュローカル範囲よりも大きな範囲を有する任意のＩＰｖ６ユニキャストアドレスを含んでもよい。ネットワークデータにおけるプロビジョニングドメインは、グローバルアドレスを構成する際に用いられてもよいグローバルプレフィックスを示す。たとえば、外部ネットワークに接続されるモバイルデバイスは、メッシュネットワーク１００上のデバイスに、外部ネットワーク接続を通して、ボーダールータ２０２を介して、グローバルアドレスを用いて接続してもよい。
【００４４】
プロビジョニングドメインは、メッシュネットワーク１００に割当てられる１つ以上のメッシュ上プレフィックスを示す。ある実施の形態では、メッシュネットワークデバイスはメッシュ上プレフィックスからグローバルアドレスを割当ててもよい。代替的に、メッシュネットワーク１００のネットワークデータがメッシュネットワーク１００上における１つ以上のＤＨＣＰｖ６サーバの存在を示す場合には、メッシュネットワークデバイスはＤＨＣＰｖ６を用いてグローバルアドレスを割当ててもよい。
【００４５】
ある実施の形態では、メッシュネットワーク１００におけるすべてのメッシュネットワークデバイスは、通信のために、ある数の異なるユニキャストアドレス（たとえばＩＰｖ６ユニキャストアドレス）を用いる。リンクローカル範囲よりも大きな範囲を有するアドレスに対しては、メッシュネットワーク１００は、２つの異なるタイプのアドレス：ルーティングロケータ（ＲＬＯＣ）およびエンドポイント識別子（ＥＩＤ）を規定してもよい。
【００４６】
ＲＬＯＣは、メッシュネットワーク１００内においてある特定のメッシュネットワークデバイスの位置を識別するネットワークアドレス（たとえばＩＰｖ６アドレス）である。ある実施の形態では、ＲＬＯＣは、メッシュネットワークデバイスによって、制御トラフィックを通信しデータグラム（たとえばＩＰｖ６データグラム、ＵＤＰ送信など）をそれらの意図される宛先に伝送することに対してしか用いられない。そのような実施の形態では、アプリケーションは、一般的には、ＲＬＯＣに対する可視性を有さず、またはＲＬＯＣを用いない。
【００４７】
ユニキャストＲＬＯＣはメッシュローカル範囲を有し、インターフェイス識別子においてルータＩＤおよび子ＩＤをエンコードする。一例として、限定ではなく、ユニキャストＲＬＯＣのためのプレフィックスは、メッシュローカルプレフィックスおよびインターフェイス識別子であり、フォーム0000:00FF:FE00:xxxxを有し、そこにおいて、「ｘｘｘｘ
」は、ルータＩＤおよび子ＩＤを埋込む１６ビット値である。
【００４８】
メッシュネットワークエンドポイント識別子（ＥＩＤ）は、メッシュネットワーク１０
０内において所与のメッシュネットワークデバイスを一意に識別し、メッシュネットワーク１００におけるトポロジー変更からは独立したネットワークアドレス（たとえばＩＰｖ６アドレス）である。ＲＬＯＣの他に、メッシュネットワーク１００は、メッシュローカル範囲と同じであるかまたはそれより大きい範囲を有するすべての他のユニキャストアドレス（ＩＰｖ６ユニキャストアドレスなど）をエンドポイント識別子として考慮する。エンドポイント識別子は、メッシュネットワーク１００内におけるメッシュネットワークデバイスの位置からは独立しており、メッシュネットワーク１００におけるトポロジー変更に応答して変化しない。
【００４９】
ＥＩＤは、メッシュネットワーク１００内におけるメッシュネットワークに対して安定した識別子を与える。しかしながら、ＥＩＤは直接ルーティング可能ではなく、なぜならば、メッシュルーティングプロトコルはＲＬＯＣのためのルート情報を交換するのみであるからである。ＥＩＤがＩＰｖ６宛先アドレスである状態でＩＰｖ６データグラムなどのようなデータグラムを伝送するために、メッシュネットワークデバイスはＥＩＤ対ＲＬＯＣマッピングルックアップを実行する。
【００５０】
たとえば、メッシュネットワークデバイスはデータパケットをある宛先アドレスとともに受信し、それは、そのアドレスが関連付けられるメッシュ上ＲＬＯＣを有する旨を示すＩＰｖ６アドレスプレフィックスを含む。メッシュネットワークデバイスは、上記のように、受取られたＩＰｖ６アドレスプレフィックスをメッシュネットワーク１００内において伝搬されるプロビジョニングドメインにおけるアドレスプレフィックスと比較することによって、関連付けられるメッシュ上ＲＬＯＣがある、と判断することができる。
【００５１】
メッシュネットワークデバイスが、宛先アドレスがメッシュ上アドレスプレフィックスに関連付けられる、と判断する場合には、メッシュネットワークデバイスは、その受信されたアドレスに対してＥＩＤ対ＲＬＯＣマッピングを発見する。ＥＩＤ対ＲＬＯＣマッピングは、メッシュネットワークデバイスによって記憶されるＥＩＤ対ＲＬＯＣマッピングのキャッシュにおいて検索を行なうこと、またはアドレスクエリをメッシュネットワーク１００内におけるすべてのルータ１０２および／もしくはルータ適格エンドデバイスにマルチキャストすることなど、任意の好適な態様によって見出される。
【００５２】
ある実施の形態では、メッシュネットワークデバイスは、ＥＩＤ対ＲＬＯＣマッピングをキャッシュするアドレスクエリセットを含む。ＥＩＤ対ＲＬＯＣマッピングのアドレスクエリセットは、メッシュネットワークデバイスによって開始されるアドレスクエリから得られるＥＩＤ対ＲＬＯＣマッピングを含む。アドレスクエリセットは、さらに、メッシュネットワークデバイスを通してルーティングされるメッシュネットワークトラフィックを観察し、当該観察されたトラフィックからＥＩＤ対ＲＬＯＣマッピングをアドレスクエリセットに保存することによって、好機をねらって得られる、当該ＥＩＤ対ＲＬＯＣマッピングを含んでもよい。
【００５３】
ある実施の形態では、メッシュネットワークデバイスは、ＥＩＤ対ＲＬＯＣマッピングが探されるＥＩＤを含むアドレスクエリメッセージをメッシュネットワーク１００を介してマルチキャストする。アドレスクエリメッセージはすべてのルータ１０２およびルータ適格エンドデバイス１０４に対してマルチキャストされる。アドレスクエリメッセージは、アドレスクエリメッセージがメッシュネットワーク１００においてすべてのルータ１０２およびルータ適格エンドデバイス１０４にアドレッシングされることを指定するマルチキャストアドレスを用いてマルチキャストされる。アドレスクエリメッセージにおけるＥＩＤに対して、ＥＩＤ対ＲＬＯＣマッピングを有する任意のルータ１０２および／またはルータ適格エンドデバイス１０４は、関連付けられるＥＩＤ対ＲＬＯＣマッピングを、アドレスクエリを開始したメッシュネットワークデバイスに送信することによって、アドレ
スクエリメッセージに応答する。
【００５４】
アドレスクエリ性能を改善し、ネットワークトラフィックを低減するために、メッシュネットワークデバイスは、アドレスクエリメッセージのマルチキャストに対してホップの数を制限してもよい。たとえば、エンドデバイス１０６は、所望のＥＩＤ対ＲＬＯＣマッピングを得るよう親ルータ１０２に到達するのに単一のホップを介してアドレスクエリメッセージを送信することしか必要とされなくてもよい。所望のＥＩＤ対ＲＬＯＣマッピングが、限定された数のホップを介してマルチキャストされるアドレスクエリから返されない場合には、メッシュネットワークデバイスは、アドレスクエリメッセージを、全メッシュネットワーク１００にマルチキャストすることなどのように、より多くの数のホップを介してマルチキャストする。
【００５５】
加えて、ＥＩＤ対ＲＬＯＣマッピングルックアップの速度を改善し、ネットワークトラフィックを低減するために、メッシュネットワークデバイスは、アドレスクエリセットを検索し、次いで、アドレスクエリセットの検索が所与のＥＩＤに対してＥＩＤ対ＲＬＯＣマッピングを返すのに失敗した場合にはアドレスクエリをマルチキャストすることなど、任意の好適な態様で上記の実施の形態を組合せてもよい。
【００５６】
ＥＩＤはメッシュネットワーク１００におけるトポロジー変更に面して安定したままであるので、アプリケーションプログラムついて、メッシュネットワークデバイスと通信する際にはＥＩＤを用いることが好ましい。しかしながら、ある実施の形態では、アプリケーションプログラムは、メッシュネットワーク１００内における単純な要求応答通信パターンに対しては、ＲＬＯＣを直接用いてもよい。
【００５７】
メッシュネットワーク１００においては、マルチキャストアドレッシングはさまざまなマルチキャストグループを含む。マルチキャスト伝送は、メッシュネットワークにおけるデバイスおよびマルチキャストアドレスの登録のタイプに依存する。たとえば、電力供給されるメッシュネットワークデバイス、およびバッテリにより電力供給されるセンサなどのような、さまざまな時間期間の間スリープするメッシュネットワークデバイスの両方を含む全ノードマルチキャストグループ、または全ルータマルチキャストグループは、ルータ１０２およびルータ適格エンドデバイス１０４の両方を含む。マルチキャストグループは、リンクローカルおよび領域ローカル範囲など、さまざまな範囲で規定される。たとえば、メッシュネットワークデバイスの各々は、リンクローカル全ノードマルチキャストアドレス（たとえばff02::1）に加入する。ルータ１０２、ルータ適格デバイス１０４、ま
たはボーダールータ２０２として動作するメッシュネットワークデバイスはリンクローカル全ルータマルチキャストアドレス（たとえばff02::2）に加入する。他の例では、メッ
シュネットワークデバイスの各々は領域ローカル全ノードマルチキャストアドレス（たとえばff03::1）に加入する。ルータ１０２、ルータ適格デバイス１０４またはボーダール
ータ２０２として動作するメッシュネットワークデバイスは領域ローカル全ルータマルチキャストアドレス（たとえばff03::2）に加入する。
【００５８】
グローバル範囲を伴うマルチキャストアドレスに関して、ボーダールータ２０２はマルチキャストパケットの外部ネットワークからメッシュネットワーク１００への転送を限定または制限してもよい。たとえば、ボーダールータ２０２は、より広帯域の外部ネットワークからマルチキャストパケットを転送することを制限して、メッシュネットワーク１００の容量を圧倒することを回避してもよい。しかしながら、ボーダールータ２０２は、メッシュネットワーク１００を用いるアプリケーションに関連付けられるクラウドサービス２０８からのマルチキャストパケットなどのように、外部ネットワークからのマルチキャストがメッシュネットワーク１００に対して適切である場合には、そのようなマルチキャストパケットをメッシュネットワーク１００において選択的に転送してもよい。
【００５９】
エンドデバイスアドレッシング
センサなどのような多くのタイプのエンドデバイス１０６は、何ヶ月または何年といった長期間の間における低電力のバッテリ動作に対して設計される。長い稼働寿命を達成するために、バッテリにより電力を供給されるメッシュデバイスは、さまざまな期間の間、無線およびネットワークインターフェイスなどのような多くの動作をオフにするかまたはスリープにする。エンドデバイス１０６はメッシュネットワーク１００を用いて通信することができるが、親ルータ１０２に対する単なる転送を超えて、メッシュネットワーク１００においてトラフィックをルーティングする能力を欠く。したがって、このタイプのデバイスは、機能低減デバイス（ＲＦＤ）またはスリープ状態の子デバイスと称されてもよい。スリープ期間中、エンドデバイス１０６は、メッシュネットワーク１００上において、エンドデバイス１０６にアドレッシングされたデータパケットを受取るよう利用可能ではない。
【００６０】
エンドデバイス１０６が親ルータ１０２に所属すると、エンドデバイス１０６に対するアドレス登録が子ＩＤをエンドデバイス１０６に割当てる。割当てられた子ＩＤおよび親ルータ１０２のルータＩＤを用いて、親ルータ１０２は、子エンドデバイス１０６に代わって、子エンドデバイス１０６にアドレッシングされたメッシュネットワークトラフィックに応答する。
【００６１】
エンドデバイス１０６が親ルータ１０２に登録すると、エンドデバイス１０６はマルチキャストアドレスを親ルータ１０２に登録する。たとえば、デフォルトで、親ルータ１０２は子エンドデバイス１０６に対してマルチキャストメッセージを待ち行列に入れない。マルチキャストアドレスを登録することによって、親ルータは、どのマルチキャストメッセージが子デバイス１０６にとって関心のあるものかを判断することができ、親ルータ１０２はそれらのマルチキャストメッセージを子エンドデバイス１０６に代わって待ち行列に入れる。ある実施の形態では、いくつかのマルチキャストアドレスはメッシュネットワークデバイスにとって強制的であり、各メッシュネットワークデバイスに対して暗黙に登録される。子エンドデバイス１０６に対しては、強制的なマルチキャストアドレスは親ルータ１０２に暗黙に登録される。これらの強制的なマルチキャストアドレスに対するマルチキャストメッセージは、親ルータ１０２によって子エンドデバイス１０６のために待ち行列に入れられる。
【００６２】
メッシュネットワーク１００におけるパケットデータのルーティングは、ＥＩＤにマッピングされるＲＬＯＣに基づく。親ルータ１０２に配属される子エンドデバイス１０６に対して、親ルータ１０２のルータＩＤおよび子エンドデバイス１０６の子ＩＤはインターフェイス識別子（ＩＩＤ）にエンコードされる。たとえば、ルータＩＤは、ＩＩＤの第１のサブセットのビットフィールドにエンコードされ、子ＩＤは、ＩＩＤの第２のサブセットのビットフィールドにエンコードされる。例として、および限定ではなく、ルータＩＤは、１６ビットＩＩＤのビット０〜５にエンコードされ、子ＩＤは、ＩＩＤのビット７〜１５にエンコードされる。任意の所与のルータ１０２は、任意の所与の時間に登録される複数の子エンドデバイス１０６を有してもよい。
【００６３】
各エンドデバイス１０６に対するＲＬＯＣは、ＩＩＤにおけるエンコードされたルータＩＤおよび子ＩＤからのメッシュローカル範囲でエンコードされる。エンドデバイス１０６に対するＲＬＯＣは、メッシュネットワークデバイスによって用いられて、データパケットをアドレッシングしエンドデバイス１０６にルーティングする。データパケットがそのようなＲＬＯＣを用いてアドレッシングされると、データパケットはメッシュネットワーク１００において子エンドデバイス１０６の親ルータ１０２にルーティングされ、それは、エンドデバイス１０６が時間期間の間スリープしている場合には重要である。エンド
デバイス１０６がスリープしていない場合においては、親ルータ１０２は子エンドデバイス１０６に対するＲＬＯＣで応答してもよく、それはパケットが子エンドデバイス１０６に直接送られることを可能にすることになる。
【００６４】
親ルータ１０２は、子エンドデバイス１０６にアドレッシングされる任意のメッセージに応答する。たとえば、親ルータ１０２は、子エンドデバイス１０６のＥＩＤを含む任意のアドレスクエリに対して、子エンドデバイス１０６に対するＲＬＯＣで応答する。
【００６５】
子エンドデバイス１０６は、ホストオンリーのデバイスとして動作し、メッシュネットワーク１００および／または外部ネットワークにわたる通信のためにすべてのパケットを親ルータ１０２に転送する。たとえば、子エンドデバイス１０６はＥＩＤをＲＬＯＣに分解しない。子エンドデバイス１０６は親ルータ１０２に依存して分解を実行する。子エンドデバイス１０６は、親ルータ１０２に依存して、メッシュネットワーク１００外の宛先を伴うパケットについて、ボーダールータ２０２を選択する。
【００６６】
子エンドデバイス１０６は、さらに、親ルータ１０２に依存して、子デバイス１０６にアドレッシングされたすべてのデータパケット、および子エンドデバイス１０６が親ルータ１０２に登録したマルチキャストアドレスからのマルチキャストメッセージを受信および記憶し、それらは、子エンドデバイスがスリープ中である間に受信されてもよい。子エンドデバイス１０６が覚醒すると、保存されたデータパケットは子エンドデバイス１０６に転送される。親ルータ１０２がスリープ中の子エンドデバイス１０６に代わって応答することによって、子エンドデバイス１０６に対するトラフィックはメッシュネットワーク１００上において効率よくかつ信頼性高く処理されることが確実にされ、なぜならば、親ルータ１０２は子エンドデバイス１０６に送信されるメッセージに応答し、それは、子エンドデバイスが延長された時間期間の間低電力モードで動作して電力を節約することを可能にするからである。
【００６７】
優先順位付けされたルーティングについてのプリファレンス
メッシュネットワークにおいてデータパケットのためにルートを判断するための判断は、データパケットが転送され得る考えられ得るルートの各々に関連付けられるルーティングコストに基づいてもよい。たとえば、ルーティングコストは、ルートの特性およびそのルートにおける構成ホップのうちの１つまたはそれらの組合せに基づいてもよい。たとえば、ルーティングコストは、ルーティング経路におけるホップの数、またはそのルートにおけるホップに対するリンク品質の測定値に基づいてもよい。
【００６８】
データパケットがインターネットなどのような外部ネットワークにおける宛先にルーティングされる場合においては、考えられ得るルート間における判断をなす際に考慮すべき他のファクタがあるかも知れない。異なる外部ネットワークは異なる財務コスト、信頼性、レイテンシ、帯域幅、セキュリティなどを有するかも知れず、それらは１つのルートを他のルートよりも好ましいものにするかも知れない。しかしながら、ルーティングコストは、パケットデータのルーティングを１つの外部ネットワークに対してよりも他の外部ネットワークに対して優先順位付けすることにおいて有用な他のファクタを十分には記載しないかも知れない。
【００６９】
たとえば、パケットは、Ｗｉ−Ｆｉネットワーク接続を用いるルート、またはセルラーネットワーク接続を用いるルートのいずれかを介して転送され得る。Ｗｉ−Ｆｉネットワークを用いるコストの方がより低い場合には、Ｗｉ−Ｆｉネットワークをセルラーネットワークに対して優先させることが好ましいかも知れない。他の例では、有線ネットワーク（たとえばイーサネット（登録商標））ルートがある場合、その有線ネットワークが無線ネットワークよりもよいサービスの品質（ＱｏＳ）保証を提供する場合には、それは無線
ネットワークルートに対して優先されてもよい。
【００７０】
ネットワークデータにおける各プロビジョニングドメインは外部ネットワークに割当てられるアドレスプレフィックスに関連付けられる。各プロビジョニングドメインは、さらに、アドレスプレフィックスおよび関連付けられるボーダールータ２０２に関連付けられるルータプリファレンス値を含む。ルータプリファレンス値は、候補ルートを優先順位付けするために、プリファレンスを比較するよう用いられる。
【００７１】
例として、限定ではなく、プリファレンスは、高いプリファレンス、中間プリファレンス、または低いプリファレンスに対応する値に設定されてもよい。任意のプリファレンスの値が、ユーザによって、ユーザがルーティングプリファレンスのために選択する任意の好適な基準に基づいて設定されてもよい。どのような値もプリファレンスに対して設定されない場合には、プロビジョニングドメインを事前設定する際に、デフォルト値が設定されてもよい。たとえば、プリファレンスに対する値は中間プリファレンスを表わす値に設定されてもよい。
【００７２】
ある実施の形態では、ルータ１０２は、転送判断をなす際に、プロビジョニングドメインにおけるルート情報を、メッシュルーティングコストおよび次のホップ情報とともに用いてもよい。ＩＰｖ６宛先アドレスがメッシュ上アドレスでない場合には、ルータ１０２は、ＩＰｖ６ソースアドレスを用いて、ＩＰｖ６ソースアドレスのプレフィックスと同じプロビジョニングドメインに関連付けられるルートを提供するボーダールータ２０２の組を判断する。
【００７３】
ボーダールータ２０２の組内において、ルータ１０２は最も長い外部ルートプレフィックス一致を以下のように見出す：
１）  ２つのアドレスプレフィックスが一致する場合には、より高いプリファレンスを伴うアドレスプレフィックスを選択する。
【００７４】
２）  どの外部ルートも一致しない場合には、デフォルトルートを提供するボーダールータ２０２を選択する。
【００７５】
３）  ２つ以上のボーダールータ２０２がデフォルトルートを提供する場合には、より高いプリファレンスを伴うボーダールータ２０２を選択する。
【００７６】
４）  最後に、２つ以上のボーダールータ２０２が残る場合には、最も低いメッシュ経路コストを伴うボーダールータ２０２を選択する。
【００７７】
ＩＰｖ６宛先アドレスがプレフィックスベースのＤＨＣＰｖ６エージェントエニーキャストＲＬＯＣである場合には、ルータ１０２は、エニーキャストアドレスにおいてエンコードされるコンテキストＩＤを用いて、コンテキストＩＤに関連付けられるプレフィックスと同じプロビジョニングドメインを伴うＤＨＣＰｖ６エージェントの組を判断する。その組内で、ルータ１０２は最も近いＤＨＣＰｖ６エージェントを以下のように見出す：
１）  ２つ以上のＤＨＣＰｖ６エージェントがデフォルトルートを提供する場合には、より高いプリファレンス値を伴うＤＨＣＰｖ６エージェントを選択する。
【００７８】
２）  ２つ以上のＤＨＣＰｖ６エージェントが残る場合には、最も低いメッシュ経路コストを伴うＤＨＣＰｖ６エージェントを選択する。
【００７９】
重複アドレス検出
図５は、重複アドレス検出に一般的に関するメッシュネットワークアドレッシングのさ
まざまな実施の形態が実現され得る例示のメッシュネットワークシステム５００を示す。例示のメッシュネットワークシステム５００は、図１および図２を参照して記載されるメッシュネットワーク１００を含み、ルータデバイス１０２およびエンドデバイス１０６を含む。ルータデバイスのうちのいくつかは、それらのデバイスを例示のメッシュネットワークシステム５００の以下の議論において単に区別するために、１０２以外の番号識別子を付与されるが、ルータのうちの任意のルータがここに記載されるルータ１０２として実現されてもよい。同様に、エンドデバイスは、それらのデバイスを以下の議論において単に区別するために、１０６以外の番号識別子を付与されるが、エンドデバイスのうちの任意のものがここに記載されるエンドデバイス１０６として実現されてもよい。
【００８０】
エンドデバイス１０６は、パケットデータをメッシュネットワークインターフェイスを介して送受信し、メッシュネットワーク１００にわたってトラフィックをルーティングすることができるルータデバイス１０２を介してなど、メッシュネットワークを介する通信のためのメッシュネットワークインターフェイスを含む。さらに、エンドデバイス（メッシュネットワークのリーフノードまたはエッジデバイスとも称される）は、メッシュネットワーク１００を介して、データをその関連付けられるルータデバイス１０２に転送することによって通信することができ、それは、次いで、データをメッシュネットワークにわたってルーティングする。一般的に、メッシュネットワークデバイス、および特にエンドデバイスは、プライバシーの理由のためになど、ＩＰアドレスをメッシュネットワーク上においてランダムに選択または生成する。しかしながら、メッシュネットワークデバイスの１つ以上は同じアドレスを選択または生成するかも知れず、それは、メッシュネットワークデバイスの２つ以上によって生成される重複アドレスに対するチェックの必要を促す。
【００８１】
エンドデバイス１０６がメッシュネットワーク１００においてルータデバイス１０２に所属すると（たとえば、エンドデバイスが、メッシュネットワークにおける無線通信のためにルータデバイスに通信可能に結合されると）、エンドデバイスは、メッシュネットワークにおいてエンドデバイスを所属させるルータにデバイス状態を記憶することになる。たとえば、記憶されたデバイス状態は、アドレスとランダム値と寿命とを含むタプル状態である（たとえば、タプルは、順序づけられた要素のリストである）。アドレスはエンドデバイスによって選択または生成され、ランダム値はエンドデバイスによって生成され、寿命は、ルータが、配属されるエンドデバイスに対する状態をどれくらいの間維持するかを示す。たとえば、エンドデバイス５０２はメッシュネットワーク１００においてルータ５０４に配属され、エンドデバイスは、アドレス１１１１およびランダム値２６５３を６０分（６０ｍ）の寿命とともに生成する。ルータ５０４は、指定される６０分（６０ｍ）の寿命の間、エンドデバイス５０２のタプル状態５０６を維持する。エンドデバイス５０２はそれ自体の状態をエンドデバイスのアドレス識別子５０８として維持することが注目される。より詳細に以下に記載されるように、ランダム値は、メッシュネットワークデバイス（たとえばエンドデバイスまたはルータデバイス）によって、メッシュネットワークにおいてデバイスアドレスの一意性をテストするよう用いることができる。
【００８２】
エンドデバイス５０２と同様に、エンドデバイス５１０はメッシュネットワーク１００においてルータ５１２に配属されており、エンドデバイス５１０は、アドレス２２２２およびランダム値５８２９を４５分（４５ｍ）の寿命とともに生成する。ルータ５１２は指定される寿命（または残存寿命）の間エンドデバイス５１０のタプル状態５１４を維持し、エンドデバイス５１０はそれ自体の状態をエンドデバイスのアドレス識別子５１６として維持する。同様に、エンドデバイス５１８はメッシュネットワーク１００においてルータ５２０に配属され、エンドデバイス５１８は、アドレス１１１１およびランダム値４８２９を３０分（３０ｍ）の寿命とともに生成する。ルータ５２０は指定される寿命（または残存寿命）の間エンドデバイス５１８のタプル状態５２２を維持し、エンドデバイス５
１８はそれ自体の状態をエンドデバイスのアドレス識別子５２４として維持する。この例では、それぞれのエンドデバイスの寿命は分単位で表されるが、秒単位、時単位、日単位などのような任意の他の時間持続期間として指定されてもよい。他の筋書では、エンドデバイス５１８は、６０分（６０ｍ）（つまり３０分におけるメッシュネットワークの現在の状態に先立って３０分）の寿命とともにルータ５２０に配属されていてもよい。同様に、エンドデバイス５１０は、６０分（６０ｍ）（つまり４５分におけるメッシュネットワークの現在の状態に先立って１５分）の寿命とともにルータ５１２に配属されていてもよい。
【００８３】
メッシュネットワーク１００の実現例では、ルータデバイス１０２は制限されたメモリを有するかもしれず、エンドデバイス１０６はさまざまな時間にルータデバイスの異なる１つに所属するかもしれない。たとえば、図６は、エンドデバイス５１８がルータデバイス５２０から移動し、ルータデバイス５２６に所属するときの重複アドレス検出の例を続ける。エンドデバイスのアドレス識別子を維持するよう寿命を与えられて、ルータデバイスは、異なるルータデバイスに所属しているエンドデバイスのアドレス識別子をそうでなければ記憶するであろうメモリを取り戻すことができる。エンドデバイスは、ルータデバイスの異なる１つに移動し所属すると、それは、対応する指定される寿命の間、アドレス識別子を、記憶されたタプル状態として、以前のルータに残す。
【００８４】
図６は、メッシュネットワークアドレッシングのさまざまな実施の形態に従う、例示的メッシュネットワークシステム５００における重複アドレス検出の例をさらに示す。この例６００では、エンドデバイス５１８は、（たとえば図５において示されるように）ルータデバイス５２０から移動しており、メッシュネットワーク１００においてルータデバイス５２６に所属している。エンドデバイス５１８は依然としてアドレス１１１１を有しており、新たなランダム値９４８２を６０分（６０ｍ）の寿命とともに生成する。ルータ５２６は、指定される６０分（６０ｍ）の寿命の間、エンドデバイス５１８の新たなタプル状態６０２を維持する。エンドデバイス５１８はそれ自体の状態をアドレス識別子５１８として維持するが、それは、ルータ５２０によって維持される、以前のタプル状態５２２と、ルータ５２６によって維持される新たなタプル状態６０２との両方を含むよう更新されていることに注目されたい。さらに、エンドデバイスのすべてに対する寿命指定はすべて１０分だけ減分されて、エンドデバイス５１８は、エンドデバイス５１８がルータ５２０に配属されたときのメッシュネットワークの以前の状態の１０分後に、異なるルータ５２６に移動し、それに所属したことを示すことに注目されたい。
【００８５】
エンドデバイス５１８は、メッシュネットワーク１００において他のメッシュネットワークデバイスのすべてに対してマルチキャストアドレスクエリを開始し、同じアドレスを伴う他のメッシュネットワークデバイスのいずれかが、その同じアドレスに対して記憶される対応するタプル状態で応答し返すことを要求することができる。たとえば、エンドデバイス５１８は、メッシュネットワーク１００においてマルチキャストアドレスクエリを開始し、同じアドレス１１１１を伴う他のメッシュネットワークデバイスのいずれかが、関連付けられるルータデバイスでの対応する記憶されるタプル状態で応答し返すことを要求することができる。同じ１１１１のアドレスだけでは、メッシュネットワークにおいて重複アドレスを検出するために十分な情報を与えない。しかしながら、アドレスと乱数との組合せは、メッシュネットワークにおいてメッシュネットワークデバイスの重複アドレスを検出する根拠を与える。
【００８６】
たとえば、エンドデバイス５１８によって開始されるマルチキャストアドレスクエリに応答して、エンドデバイスは、（たとえば、エンドデバイス５１８が以前に配属されていた）ルータ５２０から（１１１１、４８２９、２０ｍ）タプル状態５２２；（たとえば、エンドデバイス５１８が現在所属させられている）ルータ５２６から（１１１１、９４８
２、６０ｍ）タプル状態６０２；およびルータ５０４から（１１１１、２６５３、５０ｍ）タプル状態５０６が戻るのを受信することになる。（１１１１、４８２９、２０ｍ）タプル状態５２２はエンドデバイス５１８が現在所属させられている１つ以外のルータデバイスにおける重複アドレス１１１１を示すが、エンドデバイス５１８は、重複は、エンドデバイスがそれ自体の状態をアドレス識別子５２４として維持することに基づいて、以前にエンドデバイス５１８それ自体によって生成された、と判断することができる。同様に、ルータ５０４からの（１１１１、２６５３、５０ｍ）タプル状態５０６は、エンドデバイス５０２と重複アドレス１１１１を示すが、それはエンドデバイス５１８によって重複アドレスとして検出され、なぜならば、ランダム値２６５３はエンドデバイスによって生成され記憶されたランダム値（たとえば４８２９および９４８２）のいずれとも一致しないからである。
【００８７】
これはファーストパーティ重複アドレス検出（first-party duplicate address detection）の例であり、なぜならば、エンドデバイス５１８は、他のメッシュネットワークデ
バイスのいずれかがエンドデバイスアドレスの重複であるアドレスを有するかどうかを判断するべくアドレスクエリを開始しているからである。同様の技術において、サードパーティ重複アドレス検出（third-party duplicate address detection）は、メッシュネッ
トワークデバイスの１つ以上の重複アドレスがあるかどうかを判断することを望む、メッシュネットワーク１００における他のメッシュネットワークデバイスによって開始することができる。サードパーティ重複アドレス検出は図５および図７を参照して記載される。
【００８８】
エンドデバイス５１８または他のメッシュネットワークデバイスがメッシュネットワーク１００において重複アドレスを検出すると、エンドデバイスは、重複アドレスを有するメッシュネットワークデバイスに新たなアドレスを生成するよう命じることができる。実現例では、エンドデバイスまたはルータデバイスは重複アドレスの可能性を検出し、アドレスエラー通知をマルチキャストして、検出された重複アドレスを他のメッシュネットワークデバイスに通知することができる。さらに、マルチキャストアドレスエラー通知を受信する（たとえばエンドデバイスの）親デバイスは、それのネットワークデバイス子供のいずれかがアドレスエラー通知の目標であるかどうかを判断するようチェックし、スリープ状態の子供が同様に通知を得ることができるように、ユニキャストメッセージを送信することができる。
【００８９】
重複アドレス検出の実施の形態では、メッシュネットワーク１００は、楽観的な重複アドレス検出の形式とともに実現することができ、そこでは、重複を検出し解決する任意の試みが生ずる前に、ＩＰｖ６アドレスが割当てられ用いられてもよい。ＭＬ−ＥＩＤを用いて、メッシュネットワークデバイスを高い確率で一意に識別し、なぜならばそれらは所与のデバイスによって無作為に選択されるからである。デバイスのＩＥＥＥ８０２．１５．４拡張アドレスが用いられてもよいが、ＭＬ−ＥＩＤが利用され、なぜならば、それらは、無線で送信されるとき、常に暗号化されるからである。ＩＥＥＥ８０２．１５．４拡張アドレスは平文で８０２．１５．４ヘッダの一部として送信され、したがって、デバイスは、プライバシーを保存するためにその拡張アドレスを変更してもよい。アドレス通知メッセージを用いて重複ＥＩＤを検出することができる。メッシュネットワークデバイスは、アドレスクエリに応答して、または事前対応のアドレス通知の場合には非同期で、アドレス通知メッセージを受信することができる。メッシュネットワークデバイスは両方の筋書において重複検出を実行する。
【００９０】
同じＥＩＤが同じメッシュネットワークパーティションにおいて２つ以上のメッシュネットワークデバイスに対して割当てられると、アドレスクエリは複数のアドレス通知メッセージを生成する。アドレス通知メッセージの受信側は受信されるアドレス通知メッセージのＭＬ−ＥＩＤ  ＴＬＶを比較して、複数返答が、複数のインターフェイスが同じＩＰ
ｖ６アドレスを用いているためか、または単一のインターフェイスがルータデバイスからルータデバイスに移動しているためかどうかを判断する。２つ以上の受信されるアドレス通知メッセージが、同じＥＩＤだが、異なるＭＬＥＩＤを有する場合には、次いで、受信側デバイスは、ＥＩＤが２つ以上のデバイスによって使用されていると判断することができ、領域ローカルの全ルータマルチキャストアドレス（ＦＦ０３：：２）に対してアドレスエラー通知メッセージをマルチキャストする。
【００９１】
事前対応のアドレス通知メッセージを受信するメッシュネットワークデバイスは、アドレス通知メッセージのＲＬＯＣ１６を、それのＥＩＤ対ＲＬＯＣマップキャッシュに含まれるＲＬＯＣ１６と比較する。ＥＩＤ対ＲＬＯＣマップキャッシュエントリがＥＩＤに対して存在し、ＲＬＯＣ１６が異なる場合には、次いで、メッシュネットワークデバイスは、ＥＩＤが２つ以上のデバイスによって使用されているかもしれないと判断でき、ＥＩＤ対ＲＬＯＣマップキャッシュエントリに含まれるＲＬＯＣ１６に対してアドレスエラー通知をユニキャストし、および、次いで、新たに受信されるＲＬＯＣ１６でＥＩＤ対ＲＬＯＣマップキャッシュエントリを更新する。このユニキャストメッセージは、古いＲＬＯＣが本当にＥＩＤの重複ユーザであるかまたは単純に古くなったデータであるかかどうかチェックするよう働く。
【００９２】
ユニキャストアドレスエラー通知メッセージの受信側は、目標ＥＩＤがそれ自体に属するか、またはルータデバイスの場合には、その子供たちの１つに属するかどうか判断することができ、それのローカル状態における目標ＥＩＤと関連付けられるＭＬ−ＥＩＤとアドレスエラー通知メッセージにおけるＭＬ−ＥＩＤを比較する。ＭＬ−ＥＩＤが異なる場合には、メッシュネットワークデバイスは、目標ＥＩＤが１つより多いデバイスによって使用されている、と判断することができ、領域ローカルの全ルータマルチキャストグループ（ＦＦ０３：：２）に対してアドレスエラー通知メッセージをマルチキャストする。
【００９３】
メッシュネットワークデバイスはアドレスエラー通知メッセージを送信して、他のメッシュネットワークデバイスに、重複ＥＩＤが使用されているかもしれないことを通知することができる。実現例では、アドレスエラー通知メッセージは、検出された重複ＩＰｖ６アドレスおよび、重複アドレス検出をトリガしたアドレス通知に含まれるＭＬ−ＥＩＤを含むＣｏＡＰ  ＰＯＳＴメッセージ：URIパス；NON POST coap://[<peer address>]:MM/a/ae; CoAP Payload; 目標ＥＩＤ  ＴＬＶ；およびＭＬＥＩＤ  ＴＬＶである。ＩＰｖ６
ソースアドレスは発信元デバイスのＲＬＯＣであり、ＩＰｖ６宛先アドレスはマルチキャストを介して送信されたときの領域ローカルの全ルータマルチキャストアドレス（FF03::2）であるか、またはユニキャストを介して送信されたときの宛先デバイスのＲＬＯＣで
ある。目標ＥＩＤ  ＴＬＶおよびＭＬ−ＥＩＤ  ＴＬＶは、メッセージをトリガしたアドレス通知またはアドレスエラー通知メッセージからコピーされる。
【００９４】
メッシュネットワークデバイスがアドレスエラー通知メッセージを受信すると、メッシュネットワークデバイスは目標ＥＩＤがそれのメッシュネットワークインターフェイスに割当てられるかどうかチェックすることができる。目標ＥＩＤがそのメッシュネットワークインターフェイスに割当てられ、ＭＬ−ＥＩＤが異なる場合には、重複が検出され、デバイスは目標ＥＩＤを用いることを停止する。アドレスエラー通知の受信側デバイスがルータデバイスである場合には、デバイスは、目標ＥＩＤがそれのＲＦＤ子メッシュネットワークインターフェイスの１つに割当てられるかどうかチェックする。目標ＥＩＤがＲＦＤ子メッシュネットワークインターフェイスに割当てられ、ＭＬ−ＥＩＤが異なる場合には、重複が検出され、ルータデバイスは対応するＲＦＤ子（たとえばエンドデバイス）にアドレスエラー通知をユニキャストし、ルータデバイスはＲＦＤ子アドレスセットから目標ＥＩＤを除去する。ユニキャストアドレスエラー通知の受信側デバイスがＲＦＤでない場合には、メッシュネットワークデバイスは領域ローカルの全ルータマルチキャストアド
レス（ＦＦ０３：：２）にアドレスエラー通知をマルチキャストする。
【００９５】
図７はメッシュネットワークアドレッシングのさまざまな実施の形態に従う、例示的メッシュネットワークシステム５００における重複アドレス検出の例をさらに示す。この例７００では、エンドデバイス５１８は、（たとえば図５において示されるように）ルータデバイス５２０から移動しており、メッシュネットワーク１００においてルータデバイス５２６に所属している。エンドデバイス５１８は依然としてアドレス１１１１を有しており、新たなランダム値９４８２を指定された６０分（６０ｍ）の寿命とともに生成する。ルータ５２６は、指定される６０分（６０ｍ）の寿命の間、エンドデバイス５１８の新たなタプル状態７０２を維持する。
【００９６】
この例７００では、タプル状態７０２はアドレスと１つ以上の以前のランダム値と現在のランダム値と寿命とを含む。タプル状態７０２のこの形式は、エンドデバイス５１８がどこにいたかの痕跡（たとえばどのルータにエンドデバイスが配属されていたかの痕跡）を与える。たとえば、ルータ５２０から移動し、メッシュネットワーク１００においてルータ５２６に配属されるエンドデバイス５１８は、アドレス１１１１を有しており、新たなランダム値９４８２を６０分（６０ｍ）の寿命とともに生成する。ルータ５２６は指定される寿命の間（１１１１、９４８２、４８２９、６０ｍ）をエンドデバイス５１８のタプル状態７０２として維持する。１つ以上の以前のランダム値を含むタプル状態７０２のフォーマットは、エンドデバイスは、２つのルータデバイスに配属されているエンドデバイスに対して、エンドデバイスが、移動してさまざまなルータデバイスに所属するにつれて、検出されることができることを規定する。エンドデバイス５１８は、さらに、それ自体の状態をアドレス識別子５２４として維持し、エンドデバイス５１８に対するアドレス識別子は以前のタプル状態５２２と新たなタプル状態７０２との両方を含む。
【００９７】
メッシュネットワーク１００におけるルータデバイス１０２のどちらかなどのような、メッシュネットワークデバイスの別のものは、マルチキャストアドレスクエリを他のメッシュネットワークデバイスのすべてに対して開始し、指定されるアドレスを伴う他のメッシュネットワークデバイスのいずれかが、その同じアドレスに対して記憶される対応するタプル状態で応答し返すことを要求することができる。たとえば、ルータデバイス１０２は、メッシュネットワーク１００においてマルチキャストアドレスクエリを開始し、アドレス１１１１を伴う他のメッシュネットワークデバイスのいずれかが、対応する記憶されるタプル状態で応答し返すことを要求することができる。マルチキャストアドレスクエリに応答して、ルータデバイスは、（たとえば、エンドデバイス５１８が以前に配属されていた）ルータ５２０から（１１１１、４８２９、２０ｍ）タプル状態５２２；（たとえば、エンドデバイスが現在所属させられている）ルータ５２６から（１１１１、９４８２、４８２９、６０ｍ）タプル状態７０２；およびルータ５０４から（１１１１、２６５３、５０ｍ）タプル状態５０６が戻るのを受信することになる。
【００９８】
（１１１１、４８２９、２０ｍ）タプル状態５２２における４８２９のランダム値は、（１１１１、９４８２、４８２９、６０ｍ）タプル状態７０２に含まれているが、ルータ１０２は、（１１１１、４８２９、２０ｍ）タプル状態５２２および（１１１１、９４８２、４８２９、６０ｍ）タプル状態７０２は同じメッシュネットワークデバイス（たとえばこの例ではエンドデバイス５１８）によって生成される、と判断することができる。しかしながら、（１１１１、２６５３、５０ｍ）タプル状態５０６における２６５３のランダム値は、（１１１１、４８２９、２０ｍ）タプル状態５２２または（１１１１、９４８２、４８２９、６０ｍ）タプル状態７０２のどちらにおいても生じず、ルータデバイスは重複アドレスを検出する。
【００９９】
サードパーティ重複アドレス検出の恩恵は、常時オン状態のルータ（たとえばルータデ
バイス１０２）が、電池式のエンドデバイスを含まずに、アドレスの一意性をテストしてもよいということであり、それは、エンドデバイス５１８は、マルチキャストアドレスクエリを開始し、応答を受信し、応答を処理するよう電力を供給される、図５および図６を参照して記載されたファーストパーティ重複アドレス検出筋書における場合とは異なる。重複アドレス検出のための技術の最適化は、タプル状態の寿命値を用いて、ランダム値をエンコードし、（たとえばルータデバイスにおける限られた利用可能なメモリのために、）関連付けられるルータデバイスによってランダム値を維持する必要性を低減することを含む。加えて、ｋ個の最も最近のランダム値は、ネットワークパーティションおよび／またはメッセージ落下を処理するよう維持されることができる。
【０１００】
図８はメッシュネットワークアドレッシングのさまざまな実施の形態に従う、例示的メッシュネットワークシステム５００における重複アドレス検出の例８００を示す。この例８００では、エンドデバイス１０６がメッシュネットワーク１００においてルータデバイス１０２に所属すると（たとえば、エンドデバイスが、メッシュネットワークにおける無線通信のためにルータデバイスに通信可能に結合されると）、エンドデバイスは、メッシュネットワークにおいてエンドデバイスを所属させるルータにおいてデバイス状態を記憶することになる。たとえば、記憶されたデバイス状態は、エンドデバイス１０６がルータデバイス１０２に所属するときの所属時間（「Ｔａ」）、およびエンドデバイス１０６が、配属されるルータデバイス１０２と最後に通信した最後のトランザクション時間（「Ｔｔ」）を含む、時間ベースの情報である。
【０１０１】
たとえば、エンドデバイス５０２はメッシュネットワーク１００においてルータ５０４に配属され、エンドデバイスは、アドレス１１１１を６０分（６０ｍ）の寿命とともに生成する。エンドデバイス５０２はそれ自体の状態をエンドデバイスのアドレス識別子８０２として維持する。ルータ５０４は時間ベースの情報８０４を維持し、それは、エンドデバイス５０２が時間Ｔａ：４においてルータ５０４に所属したこと、およびエンドデバイス５０２は時間Ｔｔ：６において最後にルータ５０４とトランザクションを通信したことを示す。この例では、所属時間Ｔａ：４およびトランザクション時間Ｔｔ：６のような、示される所属時間およびトランザクション時間は、単純に秒、分、時、日、および／または他の時間持続期間の任意の１つまたは組合せを表してもよい整数として示される。
【０１０２】
エンドデバイス５０２と同様に、エンドデバイス５１０はメッシュネットワーク１００においてルータ５１２に配属されており、エンドデバイスは、アドレス２２２２を４５分（４５ｍ）の寿命とともに生成する。エンドデバイス５１０はそれ自体の状態をエンドデバイスのアドレス識別子８０６として維持する。ルータ５１２は時間ベースの情報８０８を維持し、それは、エンドデバイス５１０が時間Ｔａ：３においてルータ５１２に所属したこと、およびエンドデバイス５１０は時間Ｔｔ：７において最後にルータ５１２とトランザクションを通信したことを示す。同様に、エンドデバイス５１８はメッシュネットワーク１００においてルータ５２０に配属され、エンドデバイスは、アドレス１１１１を３０分（３０ｍ）の寿命とともに生成する。エンドデバイス５１８はそれ自体の状態をエンドデバイスのアドレス識別子８１０として維持する。ルータ５２０は時間ベースの情報８１２を維持し、それは、エンドデバイス５１８が時間Ｔａ：２においてルータ５２０に所属したこと、およびエンドデバイス５１８は時間Ｔｔ：５において最後にルータ５２０とトランザクションを通信したことを示す。図９は、エンドデバイス５１８がルータデバイス５２０から移動し、ルータデバイス５２６に所属するときの重複アドレス検出の例を続ける。
【０１０３】
図９は、図８を参照して記載されるように、メッシュネットワークアドレッシングのさまざまな実施の形態に従う、例示的メッシュネットワークシステム５００における重複アドレス検出の例をさらに示す。この例９００では、エンドデバイス５１８は、（たとえば
図８において示されるように）ルータデバイス５２０から移動しており、メッシュネットワーク１００においてルータデバイス５２６に所属している。エンドデバイス５１８は依然としてアドレス１１１１を３０分（３０ｍ）の寿命とともに有する。ルータ５２６は新たな時間ベースの情報９０２を維持し、それは、エンドデバイス５１８が時間Ｔａ：１０においてルータ５２６に所属したこと、およびエンドデバイス５１８は時間Ｔｔ：１３において最後にルータ５２６とトランザクションを通信したことを示す。エンドデバイスのすべてに対する示されたトランザクション時間は、すべて、それぞれのルータデバイスとの最後の通信されたトランザクションに基いて更新されていることが注目される。
【０１０４】
エンドデバイス５１８は、メッシュネットワーク１００において他のメッシュネットワークデバイスのすべてに対してマルチキャストアドレスクエリを開始し、同じアドレスを伴う他のメッシュネットワークデバイスのいずれかが、その同じアドレスに対して記憶される対応する時間ベースの情報で応答し返すことを要求することができる。たとえば、エンドデバイス５１８は、メッシュネットワーク１００においてマルチキャストアドレスクエリを開始し、同じアドレス１１１１を伴う他のメッシュネットワークデバイスのいずれかが、関連付けられるルータデバイスでの対応する記憶される時間ベースの情報で応答し返すことを要求することができる。同じ１１１１のアドレスだけでは、メッシュネットワークにおいて重複アドレスを検出するために十分な情報を与えない。しかしながら、時間ベースの情報、またはアドレスと時間ベースの情報との組合せは、メッシュネットワークにおいてメッシュネットワークデバイスの重複アドレスを検出する根拠を与える。
【０１０５】
たとえば、エンドデバイス５１８によって開始されるマルチキャストアドレスクエリに応答して、エンドデバイスは、（たとえば、エンドデバイス５１８が以前に配属されていた）ルータ５２０から（Ｔａ：２、Ｔｔ：５）時間ベースの情報８１２；（たとえば、エンドデバイス５１８が現在所属させられている）ルータ５２６から（Ｔａ：１０、Ｔｔ：１３）時間ベースの情報９０２；およびルータ５０４から（Ｔａ：４、Ｔｔ：１２）時間ベースの情報８０４が戻るのを受信することになる。メッシュネットワークデバイスの重複アドレスは、エンドデバイスの所属時間Ｔａと、エンドデバイスが配属されるルータデバイスとトランザクションを通信した最後のトランザクション時間Ｔｔとの間の重なり時間持続期間に基いて、検出することができる。たとえば（１１１１のアドレスを有する）エンドデバイス５０２に対応する（Ｔａ：４、Ｔｔ：１２）時間ベースの情報８０４は、（Ｔａ：２、Ｔｔ：５）時間ベースの情報８１２、および（同様に１１１１のアドレスを有する）エンドデバイス５１８に対応する（Ｔａ：１０、Ｔｔ：１３）時間ベースの情報９０２の両方と重なる。したがって、エンドデバイス５１８は、時間ベースの情報重なりを、あるメッシュネットワークデバイスが重複アドレスを有することとして検出することができる。
【０１０６】
これはファーストパーティ重複アドレス検出の例であり、なぜならば、エンドデバイス５１８は、他のメッシュネットワークデバイスのいずれかがエンドデバイスアドレスの重複であるアドレスを有するかどうかを判断するべくアドレスクエリを開始しているからである。上記の同様の技術において、サードパーティ重複アドレス検出は、メッシュネットワークデバイスの１つ以上の重複アドレスがあるかどうかを判断することを望む、ルータデバイス１０２の内の任意のもののような、メッシュネットワーク１００における他のメッシュネットワークデバイスによって開始することができる。
【０１０７】
例示的方法１０００から１４００は、メッシュネットワークアドレッシングの１つ以上の実施の形態に従って、それぞれ図１０〜図１４を参照して記載される。一般に、ここに説明されるコンポーネント、モジュール、方法、および動作のうちのいずれも、ソフトウェア、ファームウェア、ハードウェア（たとえば、固定論理回路）、手動処理、またはそれらの任意の組合せを使用して実現され得る。例示的な方法のいくつかの動作は、コンピ
ュータ処理システムにとってローカルの、および／またはリモートのコンピュータ読取可能ストレージメモリ上に格納された実行可能な命令の一般的状況において説明されてもよく、実現化例は、ソフトウェアアプリケーション、プログラム、関数などを含み得る。これに代えて、またはこれに加えて、ここに説明される機能性のうちのいずれも、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、特定用途向け集積回路（ＡＳＩＣ）、特定用途向け標準化製品（ＡＳＳＰ）、システム・オン・チップ・システム（ＳｏＣ）、複合プログラマブル論理デバイス（ＣＰＬＤ）などを含むもののそれらに限定されない１つ以上のハードウェア論理コンポーネントによって、少なくとも部分的に行なわれ得る。
【０１０８】
図１０は、概してメッシュネットワークにおいてパケットをアドレッシングおよびルーティングすることに関するようなメッシュネットワークアドレッシングの例示的な方法１０００を示す。方法ブロックが説明される順序は限定として解釈されるよう意図されてはおらず、また、方法または代替的な方法を実現するために、任意の数の説明される方法ブロックを任意の順序で組合わせることができる。
【０１０９】
ブロック１００２において、アドレスプレフィックスおよび関連付けられる構成情報が外部ネットワークから受信され、ブロック１００４において、プロビジョニングドメインが形成され、受信されるアドレスプレフィックスと関連付けられる。たとえば、ボーダールータ２０２は、それぞれ、外部ネットワーク３０２または３０４などのような外部ネットワークから、アドレスプレフィックス、および構成データ４０２または４０４などのような関連付けられるネットワーク構成情報を受信する。ボーダールータ２０２は、受信されるアドレスプレフィックスおよび関連付けられる構成情報を含むプロビジョニングドメインを、プロビジョニングドメインに対する一意の識別子とともに形成する。
【０１１０】
ブロック１００６において、形成されたプロビジョニングドメインは、メッシュネットワーク１００のリーダーデバイスに転送される。ブロック１００８において、プロビジョニングドメインはリーダーからメッシュネットワーク１００に伝搬される。たとえば、ボーダールータ２０２は、形成されたプロビジョニングドメインを、メッシュネットワーク１００を介してリーダーデバイス２１０に転送し、それは、リーダーデバイス２１０がプロビジョニングドメインを記憶するよう効力がある。リーダーデバイス２１０は、受信されるプロビジョニングドメインをメッシュネットワーク１００においてルータ１０２およびルータ適格エンドデバイス１０４に伝搬する。代替的に、ボーダールータ２０２は構成データ４０２または４０４をリーダーデバイス２１０に転送し、それは、プロビジョニングドメインを形成し、プロビジョニングドメインに一意の識別子を割当てた後、メッシュネットワーク１００にプロビジョニングドメインを伝搬する。
【０１１１】
ブロック１０１０において、パケットが、伝搬されたプロビジョニングドメインにおける情報を用いて、アドレッシングされる。ブロック１０１２において、アドレッシングされたパケットは、メッシュネットワークを介して転送される。たとえば、ルータ１０２は、（たとえばＲＬＯＣルックアップからの）データパケットの宛先ついて、プロビジョニングドメインにおけるアドレスプレフィックスを用いてデータパケットに対する宛先アドレスを形成するよう判断する。ルータ１０２は、宛先アドレスを用いて、あるルート上でデータパケットを転送する。
【０１１２】
図１１は、概してメッシュネットワークにおいてパケットをアドレッシングおよびルーティングすることに関するようなメッシュネットワークアドレッシングの例示的な方法１１００を示す。方法ブロックが説明される順序は限定として解釈されるよう意図されてはおらず、また、方法または代替的な方法を実現するために、任意の数の説明される方法ブロックを任意の順序で組合わせることができる。
【０１１３】
ブロック１１０２において、パケットがネットワーク宛先への伝送のために受信される。ブロック１１０４において、ネットワーク宛先がメッシュネットワーク上にあるかどうかが判断される。たとえば、ルータ１０２は、ネットワーク宛先に伝送するためにパケットを（たとえばルータ１０２上で実行するアプリケーションから、またはルータ１０２の子エンドデバイス１０６から）受信する。ルータ１０２は、ネットワーク宛先がメッシュネットワーク上にはあるがルーティング可能なアドレスではないことを示すエンドポイント識別子（ＥＩＤ）であるネットワーク宛先などのように、ネットワーク宛先がメッシュネットワーク上にあると判断する。
【０１１４】
ブロック１１０６において、ネットワーク宛先と関連付けられるルーティングロケータ（ＲＬＯＣ）が発見される。１１０８において、パケットは、ＲＬＯＣから、ルーティング可能なネットワークアドレスを宛先アドレスとして用いて、転送される。たとえば、ルータ１０２は、ルータ１０２においてキャッシュに入れられたＲＬＯＣのＲＬＯＣルックアップによって、またはアドレスクエリの実行によってなどのように、ＥＩＤに対するＲＬＯＣを発見する。ルータ１０２は、ＲＬＯＣにおいてＥＩＤからマッピングされるルーティング可能なネットワークアドレスを用いて、パケットのために（ＩＰｖ６宛先アドレスなどのような）宛先アドレスを形成する。ルータ１０２はパケットを宛先アドレスに基いてメッシュネットワーク１００上で転送する。
【０１１５】
図１２は、概してメッシュネットワークにけるエンドデバイスのためのアドレッシングおよびルーティングに関するようなメッシュネットワークアドレッシングの例示的な方法１２００を示す。方法ブロックが説明される順序は限定として解釈されるよう意図されてはおらず、また、方法または代替的な方法を実現するために、任意の数の説明される方法ブロックを任意の順序で組合わせることができる。
【０１１６】
ブロック１２０２において、エンドデバイスのアドレスが登録される。１２０４において、子識別子がエンドデバイスに割当てられる。ブロック１２０６において、エンドポイント識別子（ＥＩＤ）が子識別子およびルータ識別子からルーティングロケータ（ＲＬＯＣ）にエンコードされる。たとえば、子エンドデバイス１０６に対するアドレスが親ルータ１０２において登録される。親ルータ１０２は、子エンドデバイス１０６に子識別子を割当てる。親ルータ１０２は子識別子および親ルータ１０２のルータ識別子を子エンドデバイスに対するルーティングロケータにエンコードする。
【０１１７】
ブロック１２０８において、エンドデバイスに対するアドレスクエリが受信される。１２１０において、アドレスクエリに対する応答がエンドデバイスに代ってなされる。たとえば、親ルータ１０２は、子エンドデバイス１０６に対するエンコードされたＥＩＤを含むアドレスクエリをメッシュネットワーク１００を介して受信する。親ルータ１０２は、子エンドデバイスに代って、子エンドデバイスに対するＲＬＯＣで、アドレスクエリに対して応答する。
【０１１８】
ブロック１２１２において、エンドデバイスに対するデータパケットが受信され、１２１４において、エンドデバイスに対する受信されたデータパケットは保存され、１２１６において、保存されたデータパケットは、エンドデバイスに転送される。たとえば、親ルータ１０２は、子エンドデバイス１０６に代って、子エンドデバイス１０６に対してアドレッシングされるデータパケットを受信する。子エンドデバイス１０６に代ってデータパケットを受信することは、受信されるデータパケットを承認すること、受信されるデータパケットをメッセージに組立てること、欠落しているパケットの再送信を要求することなどのような、任意のネットワーキングプロトコルを実行することを含んでもよい。親ルータ１０２は子エンドデバイス１０６がスリープしている時間期間中などにおいて、受信されるデータパケットを保存する。親ルータ１０２は、子エンドデバイス１０６がスリープ
の期間を終了し、親ルータ１０２とのメッシュネットワーク通信を再確立するなどのようなときに、保存されたデータパケットを子エンドデバイス１０６に転送する。
【０１１９】
図１３は、概してメッシュネットワークにおけるルーティングのアドレスベースの優先順位付けに関するようなメッシュネットワークアドレッシングの例示的な方法１３００を示す。方法ブロックが説明される順序は限定として解釈されるよう意図されてはおらず、また、方法または代替的な方法を実現するために、任意の数の説明される方法ブロックを任意の順序で組合わせることができる。
【０１２０】
ブロック１３０２において、第１のプリファレンス値が第１のアドレスプレフィックスに割当てられる。ブロック１３０４において、第２のプリファレンス値が第２のアドレスプレフィックスに割当てられる。たとえば、第１のプリファレンス値は第１のプロビジョニングドメインにおいて第１のアドレスプレフィックスに対して割当てられる。第２のプリファレンス値は第２のプロビジョニングドメインにおいて第２のアドレスプレフィックスに対して割当てられる。プリファレンス値はデフォルト値などを用いて、ネットワーク管理者によってなどのように、任意の好適な態様において設定されてもよい。
【０１２１】
ブロック１３０６において、アドレスプレフィックスおよび関連付けられるプリファレンス値はメッシュネットワークに伝搬される。たとえば、メッシュネットワーク１００のリーダーデバイス２１０は、第１のプロビジョニングドメインおよび第２のプロビジョニングドメインを、ネットワークデータの一部として、メッシュネットワーク１００におけるルータ１０２およびルータ適格デバイス１０４に伝搬する。
【０１２２】
１３０８において、プリファレンス値に基いて、宛先アドレスにパケットをアドレッシングするために使用するアドレスプレフィックスを判断する。たとえば、ルータ１０２は、伝搬されたプロビジョニングドメインにおける第１および第２のプリファレンス値を用いて、メッシュネットワーク１００上でパケットをアドレッシングおよび転送するために第１のアドレスプレフィックスまたは第２のアドレスプレフィックスを宛先アドレス（たとえばＩＰｖ６宛先アドレス）のために用いるべきかどうかを判断する。
【０１２３】
図１４は、概してメッシュネットワークにおける重複アドレス検出に関するようなメッシュネットワークアドレッシングの例示的な方法１４００を示す。方法ブロックが説明される順序は限定として解釈されるよう意図されてはおらず、また、方法または代替的な方法を実現するために、任意の数の説明される方法ブロックを任意の順序で組合わせることができる。
【０１２４】
ブロック１４０２において、アドレス識別子が生成され、アドレス識別子は、メッシュネットワークにおける通信のためにルータデバイスに配属されるエンドデバイスに関連付けられ、アドレス識別子はエンドデバイスのタプル状態としてルータデバイスによって維持される。たとえば、エンドデバイス１０６がメッシュネットワーク１００においてルータデバイス１０２に所属すると（たとえば、エンドデバイスが、メッシュネットワークにおいて無線通信のためにルータデバイスに通信可能に結合されると）、エンドデバイス５１８はアドレス識別子を生成する。エンドデバイスは、メッシュネットワークにおいてエンドデバイスを所属させるルータにおいてデバイス状態を記憶する。実現例では、記憶されたデバイス状態は、アドレスとランダム値と寿命とを含むタプル状態（たとえば要素のリスト）である。アドレスはエンドデバイスによって選択または生成され、ランダム値はエンドデバイスによって生成され、寿命は、ルータが、配属されるエンドデバイスに対する状態をどれくらいの間維持するかを示す。他の実現例では、アドレス識別子はエンドデバイスと関連付けられるアドレスおよび時間ベースの情報を含む。時間ベースの情報は、エンドデバイス１０６がルータデバイス１０２に所属する所属時間（「Ｔａ」）を含み、
エンドデバイス１０６が、配属されるルータデバイス１０２と最後に通信した最後のトランザクション時間（「Ｔｔ」）を含む。
【０１２５】
ブロック１４０４において、アドレスクエリを開始して、指定されるアドレスを有するメッシュネットワークにおけるメッシュネットワークデバイスが指定されるアドレスに対応するタプル状態で応答することを要求する。たとえば、エンドデバイスまたはルータデバイスは、メッシュネットワーク１００において他のメッシュネットワークデバイスのすべてに対してマルチキャストアドレスクエリを開始し、同じアドレスを伴う他のメッシュネットワークデバイスのいずれかが、その同じアドレスに対して記憶される対応するタプル状態で応答し返すことを要求する。他の実現例では、エンドデバイスまたはルータデバイスは、メッシュネットワーク１００において他のメッシュネットワークデバイスのすべてに対してマルチキャストアドレスクエリを開始し、同じアドレスを伴う他のメッシュネットワークデバイスのいずれかが、その同じアドレスに対して記憶される対応する時間ベースの情報で応答し返すことを要求する。
【０１２６】
ブロック１４０６において、アドレスクエリに応答して、指定されるアドレスを有するメッシュネットワークデバイスのタプル状態が受信される。たとえば、エンドデバイスまたはルータデバイスは、同じ指定されるアドレスを有する他のメッシュネットワークデバイス（たとえば他のエンドデバイス）に対応するタプル状態が戻るのを受信する。他の実現例では、たとえば、エンドデバイスまたはルータデバイスは、同じ指定されるアドレスを有する他のメッシュネットワークデバイス（たとえば他のエンドデバイス）に対応する時間ベースの情報が戻るのを受信する。
【０１２７】
ブロック１４０８において、メッシュネットワークデバイスのタプル状態におけるアドレス識別子の情報をエンドデバイスのタプル状態における情報と比較する。たとえば、エンドデバイスまたはルータデバイスは、エンドデバイスに対するアドレス識別子情報を、同じアドレスを有する他のメッシュネットワークデバイスのアドレス識別子情報と比較して、重複デバイスアドレスを判断する。代替的に、エンドデバイスまたはルータデバイスは、他のメッシュネットワークデバイスのタプル状態における時間ベースの情報を、エンドデバイスのタプル状態における時間ベースの情報と比較して、メッシュネットワークデバイスの重複アドレスを検出する。
【０１２８】
ブロック１４１０において、メッシュネットワークデバイスの重複アドレスが、メッシュネットワークデバイスのタプル状態の一部として維持されるアドレス識別子の情報の比較に基づいて検出される。たとえば、マルチキャストアドレスクエリを開始するエンドデバイスまたはルータデバイスは、メッシュネットワークデバイスの重複アドレスを、メッシュネットワークデバイスのタプル状態の一部として維持されるランダム値に基いて、または他の実現例では、メッシュネットワークデバイスに対応する時間ベースの情報に基いて、検出する。
【０１２９】
ブロック１４１２において、重複アドレスを有するメッシュネットワークデバイスの１つ以上は、新たなアドレスを生成するよう命じられる。たとえば重複アドレスを検出するエンドデバイスまたはルータデバイスは、重複アドレスを有するメッシュネットワークデバイスの１つ以上に、新たなアドレスを生成するよう命じる。
【０１３０】
図１５は、（図１を参照して説明されたような）メッシュネットワーク１００、およびメッシュネットワークアドレッシングの実施形態が実現され得る例示的な環境１５００を示す。一般に、環境１５００は、メッシュネットワークにおける通信のために構成された任意の数およびタイプのメッシュネットワークデバイスを有するスマートホームまたは他のタイプの構造物の一部として実現されるメッシュネットワーク１００を含む。たとえば
、メッシュネットワークデバイスは、サーモスタット１５０２と、（たとえば煙および／または一酸化炭素用の）ハザード検出器１５０４と、（たとえば屋内および屋外の）カメラ１５０６と、（たとえば屋内および屋外の）照明ユニット１５０８と、構造物１５１２の内部および／または外部で（たとえばスマートホーム環境において）実現される任意の他のタイプのメッシュネットワークデバイス１５１０とを含み得る。この例では、メッシュネットワークデバイスはまた、ボーダールータ２０２、ルータ１０２、ルータ適格エンドデバイス１０４、および／またはエンドデバイス１０６などの前述のデバイスのうちのいずれかを含み得る。
【０１３１】
環境１５００では、任意の数のメッシュネットワークデバイスが、互いに無線で通信してやりとりするために、無線相互接続用に実現され得る。メッシュネットワークデバイスは、さまざまな有用なスマートホーム目的および実現化例のうちのいずれかを提供するために、互いにおよび／または中央サーバあるいはクラウドコンピューティングシステムとシームレスに統合できる、モジュール式でインテリジェントなマルチセンシングのネットワーク接続型デバイスである。ここに説明されるデバイスのうちのいずれかとして実現され得るメッシュネットワークデバイスの例が、図１６を参照して示され、説明される。
【０１３２】
実現化例では、サーモスタット１５０２は、スマートホーム環境において周囲の気候特性（たとえば温度および／または湿度）を検出し、ＨＶＡＣシステムを制御するネスト（Nest：登録商標）学習サーモスタットを含んでいてもよい。学習サーモスタット１５０２および他のスマートデバイスは、デバイスへの居住者設定を取込むことによって「学習する」。たとえば、サーモスタットは、朝および夜用の好ましい温度設定点、構造物の居住者が眠っている、または起きている時間、および、居住者が通常外出している、または家にいる時間を学習する。
【０１３３】
ハザード検出器１５０４は、有害物質または有害物質を示す物質（たとえば煙、火または一酸化炭素）の存在を検出するために実現され得る。無線相互接続の例では、ハザード検出器１５０４は、構造物における火を示す煙の存在を検出するかもしれず、その場合、最初に煙を検出したハザード検出器は、接続されたメッシュネットワークデバイスのすべてに低電力のウェークアップ信号を一斉送信できる。他のハザード検出器１５０４は次に、一斉送信されたウェークアップ信号を受信し、ハザード検出のための高電力状態を起動して、警告メッセージの無線通信を受信することができる。また、照明ユニット１５０８は、一斉送信されたウェークアップ信号を受信し、検出されたハザードの領域で開始して、問題エリアを照明して識別することができる。別の例では、照明ユニット１５０８は、検出された火または侵入などについての、構造物における問題エリアまたは領域を示すために、１つの照明色で起動し、安全な領域および／または構造物からの避難経路を示すために、別の照明色で起動してもよい。別の例では、ドアベルまたは扉監視システムは、存在が検出されると黄色（または他の色）を点滅させ、警報が起動される場合には赤色を点滅させるＬＥＤを含んでもよい。
【０１３４】
さまざまな構成では、メッシュネットワークデバイス１５１０は、ネットワーク接続型ドアロックシステムと協調して機能し、構造物１５１２の外側ドアなどの場所への人の接近またはそこからの出発を検出して反応する玄関インターフェイスデバイスを含み得る。玄関インターフェイスデバイスは、誰かがスマートホーム環境に接近したかまたは入ったかどうかに基づいて、他のメッシュネットワークデバイスとやりとりできる。玄関インターフェイスデバイスは、ドアベル機能性を制御し、音声手段または視覚手段を介して人の接近または出発を知らせることができ、また、居住者が出入りする際にセキュリティシステムを起動または停止するなどのために、セキュリティシステムに対する設定を制御することができる。メッシュネットワークデバイス１５１０はまた、周囲の照明条件を検出し、（たとえば居住センサで）部屋居住状態を検出し、１つ以上の照明の出力状態および／
または薄暗い状態を制御するなどのために、他のセンサおよび検出器を含み得る。場合によっては、センサおよび／または検出器はまた、天井ファンなどのファンの出力状態または速度を制御してもよい。また、センサおよび／または検出器は、部屋または包囲空間における居住を検出し、部屋または構造物が居住されていない場合などにコンセントまたはデバイスへの電力の供給を制御してもよい。
【０１３５】
メッシュネットワークデバイス１５１０はまた、冷蔵庫、ストーブおよびオーブン、洗濯機、乾燥機、エアコン、プールヒータ、潅漑システム、セキュリティシステムなどの接続された機器および／または制御されるシステム、ならびに、テレビ、娯楽システム、コンピュータ、インターホンシステム、ガレージドアオープナ、天井ファン、制御パネルなどの他の電子デバイスおよびコンピューティングデバイスを含んでいてもよい。プラグが差込まれると、機器、デバイスまたはシステムは、上述のようにそれ自体をメッシュネットワークに知らせることができ、スマートホームなどにおけるメッシュネットワークの制御装置およびデバイスと自動的に統合され得る。なお、メッシュネットワークデバイス１５１０は、スイミングプールヒータまたは潅漑システムを制御するデバイスといった、構造物の外側ではあるものの無線通信範囲内に物理的に位置するデバイスを含んでいてもよい。
【０１３６】
上述のように、メッシュネットワーク１００は、メッシュネットワーク１００の外部の外部ネットワークとの通信のためにインターフェイス接続するボーダールータ２０２を含む。ボーダールータ２０２はアクセスポイント２０４に接続し、それは、インターネットなどの通信ネットワーク２０６に接続する。通信ネットワーク２０６を介して接続されるクラウドサービス２０８は、メッシュネットワーク１００内のデバイスに関連する、および／またはデバイスを使用するサービスを提供する。例として、クラウドサービス２０８は、スマートフォン、タブレットなどのエンドユーザデバイスをメッシュネットワークにおけるデバイスに接続し、メッシュネットワーク１００で得られたデータを処理してエンドユーザに提示し、１つ以上のメッシュネットワーク１００におけるデバイスをクラウドサービス２０８のユーザアカウントにリンクし、メッシュネットワーク１００においてデバイスをプロビジョニングして更新するなどのためのアプリケーションを含み得る。たとえば、ユーザは、スマートホーム環境において、サーモスタット１５０２および他のメッシュネットワークデバイスを、携帯電話またはタブレットデバイスなどのネットワーク接続型コンピュータまたはポータブルデバイスを使用して制御することができる。また、メッシュネットワークデバイスは、ボーダールータ２０２およびアクセスポイント２０４を介して、任意の中央サーバまたはクラウドコンピューティングシステムに情報を通信できる。データ通信は、さまざまな特注または標準無線プロトコル（たとえば、Ｗｉ−Ｆｉ、低電力用のジグビー（ZigBee：登録商標）、６ＬｏＷＰＡＮなど）のうちのいずれかを使用して、および／または、さまざまな特注または標準有線プロトコル（ＣＡＴ６イーサネット（登録商標）、ホームプラグ（HomePlug：登録商標）など）のうちのいずれかを使用することにより、実行され得る。
【０１３７】
メッシュネットワーク１００におけるメッシュネットワークデバイスのうちのいずれも、スマートホーム環境においてメッシュネットワーク１００を作り出すための低電力および通信ノードとして機能できる。ネットワークの個々の低電力ノードは、それらが何を感知しているかに関するメッセージを定期的に送り出すことができ、環境における他の低電力ノードは、それら自体のメッセージを送り出すことに加えて、メッセージを繰り返すことができ、それにより、メッシュネットワーク全体にわたってメッセージをノードからノードへ（すなわち、デバイスからデバイスへ）通信する。メッシュネットワークデバイスは、低電力の通信プロトコルを利用してメッセージを受信し、メッセージを他の通信プロトコルに変換し、変換されたメッセージを他のノードおよび／または中央サーバあるいはクラウドコンピューティングシステムに送信して、特に電池式の場合に電力を節約するよ
うに実現され得る。たとえば、居住および／または周囲光センサは、周囲光を測定するだけでなく、部屋にいる居住者を検出して、部屋が暗いと周囲光センサが検出する場合、および誰かが部屋にいると居住センサが検出する場合に、光源を起動することができる。また、センサは、居住センサが部屋にいる人の存在を検出したことと同時に起こる瞬間的メッセージを含む、部屋の居住および部屋における光の量に関するメッセージを、定期的に送り出す低電力無線通信チップ（たとえばジグビーチップ）を含み得る。上述のように、これらのメッセージは、メッシュネットワークを使用して、スマートホーム環境内でノードからノードへ（すなわち、デバイスからデバイスへ）、およびインターネットを通して中央サーバまたはクラウドコンピューティングシステムに、無線で送信されてもよい。
【０１３８】
他の構成では、メッシュネットワークデバイスのうちのさまざまなデバイスは、スマートホーム環境におけるアラームシステム用の「仕掛け線」として機能できる。たとえば、犯人が、窓、ドア、および構造物または環境の他の入口点に位置するアラームセンサによる検出を回避した場合、アラームは依然として、メッシュネットワークにおける低電力メッシュノードのうちの１つ以上から、居住、動き、熱、音などのメッセージを受信することによってトリガされ得る。他の実現化例では、メッシュネットワークは、人が構造物内の部屋から部屋へ移行するにつれて、照明ユニット１５０８を自動的に点灯したり消灯したりするために使用され得る。たとえば、メッシュネットワークデバイスは、構造物を通る人の動きを検出し、メッシュネットワークのノードを介して対応するメッセージを通信することができる。メッセージを受信する他のメッシュネットワークデバイスは、どの部屋が居住されているかを示すメッセージを使用して、それに応じて起動し、および／または停止することができる。上に言及されるように、メッシュネットワークはまた、緊急時に、安全な出口に通じる適切な照明ユニット１５０８を点灯することなどによって、出口照明を提供するために利用され得る。照明ユニット１５０８はまた、人が構造物から安全に出るために移動すべき出口経路に沿った方向を示すために点灯されてもよい。
【０１３９】
さまざまなメッシュネットワークデバイスはまた、構造物の居住者を識別して居場所を突き止めるために使用され得るようなウェアラブルコンピューティングデバイスと統合して通信し、それに応じて温度、照明、音響システムなどを調節するように実現されてもよい。他の実現化例では、ＲＦＩＤ感知（たとえば、人がＲＦＩＤブレスレット、ネックレスまたはキーホブを身に着けること）、合成ビジョン手法（たとえば、ビデオカメラおよび顔認識プロセッサ）、音声手法（たとえば音声、音響パターン、振動パターン認識）、超音波感知／撮像手法、および赤外線または近距離無線通信（near-field communication：ＮＦＣ）手法（たとえば、人が赤外線またはＮＦＣ対応のスマートフォンを身に着けること）は、規則ベースの推論エンジンまたは人工知能手法とともに、構造物または環境における居住者の位置に関して感知された情報から有用な結論を引き出す。
【０１４０】
他の実現化例では、サービスロボットの個人快適エリアネットワーク、個人健康エリアネットワーク、個人安全エリアネットワーク、および／または他のそのような人と向き合う機能性は、これらの機能性のよりよい性能を達成するための規則ベースの推論手法または人工知能手法に従った、環境における他のメッシュネットワークデバイスおよびセンサとの論理的統合によって強化され得る。個人健康エリアに関連する例では、システムは、規則ベースの推論手法および人工知能手法とともに、（たとえば、メッシュネットワークデバイスおよびセンサのうちのいずれかを使用して）家で飼っているペットが居住者の現在の位置に向かって移動しているかどうかを検出することができる。同様に、ハザード検出器サービスロボットは、キッチンで温度レベルおよび湿度レベルが上昇していることを通知され、周囲の煙レベルのいかなる小さな増加もおそらく調理作業によるものであり、本当に危険な条件によるものではないであろうという推論の下で、煙検出しきい値などのハザード検出しきい値を一時的に上昇させることができる。任意のタイプのモニタリング、検出、および／またはサービシングのために構成されたどのサービスロボットも、メッ
シュネットワーク上で通信するための無線相互接続プロトコルに従った、メッシュネットワーク上のメッシュノードデバイスとして実現可能である。
【０１４１】
メッシュネットワークデバイス１５１０はまた、スマートホーム環境における構造物の個々の各居住者のためのスマートアラームクロックを含んでいてもよい。たとえば、居住者は、翌日または翌週などの起床時間について、アラームデバイスをカスタマイズし、設定することができる。アラームが鳴る際の居住者のアラームに対する反応を検討し、好ましい睡眠パターンについて経時的に推論するために、人工知能が使用できる。個々の居住者は次に、その人の一意シグネチャに基づいて、メッシュネットワークにおいて追跡され得る。一意シグネチャは、超音波センサ、受動ＩＲセンサなどを含むセンサといった、メッシュネットワークデバイスに位置するセンサから得られたデータに基づいて求められる。居住者の一意シグネチャは、動き、声、身長、サイズなどのパターンの組合せに基づくことができ、顔認識手法を使用することもできる。
【０１４２】
無線相互接続の例では、所望の睡眠および起床温度設定まで構造物を予め温め、または冷やすようにＨＶＡＣシステムを効率的な態様で制御するために、個人の起床時間をサーモスタット１５０２に関連付けることができる。好ましい設定は、人が就寝する前および起床時にサーモスタットに設定された温度を取込むことなどによって経時的に学習可能である。収集されたデータはまた、呼吸パターン、心拍数、動きといった、人の生体認証表示を含んでいてもよく、それらから、推論が、このデータと人が実際にいつ起床したかを示すデータとの組合せに基づいて行なわれる。他のメッシュネットワークデバイスは、所望の設定まで環境を予め温め、または冷やすようにサーモスタット１５０２を調節すること、および照明１５０８を点灯または消灯すること、といった他のスマートホーム目的を提供するために、このデータを使用することができる。
【０１４３】
実現化例では、メッシュネットワークデバイスはまた、スマートホーム環境において流水を検出し、水の使用および消費のアルゴリズムおよびマッピングに基づいて水の使用についての推論を定めるなどのために、音響、振動、および／または動きの感知のために利用され得る。これは、ホームにおける各水源のシグネチャまたはフィンガープリントを求めるために使用可能であり、「音声フィンガープリンティング水使用」とも呼ばれる。同様に、メッシュネットワークデバイスは、ねずみおよび他のげっ歯動物といった望ましくない有害生物の、ならびにシロアリ、ゴキブリおよび他の昆虫による、かすかな音、振動、および／または動きを検出するために利用可能である。システムは次に、早期検出および予防を容易にするのを助けるために、環境における疑わしい有害生物を警告メッセージなどで居住者に通知できる。
【０１４４】
さらなる筋書きにおいて、メッシュネットワークおよびメッシュネットワークデバイスに対してここに記載される技術は、メッシュネットワークおよび例示的な環境１５００において加わり動作するよう構成可能および／またはアドレッシング可能であるサードパーティプロダクトおよびデバイスに対して実現されることができる。互いと無線で通信し対話するよう無線相互接続に対して例示の環境において実現され得るサードパーティプロダクトおよびデバイスのさまざまな例が以下に記載される。上記のように、サードパーティプロダクトおよびデバイスは、さまざまな有用な目的および実現例のうちの任意のものを提供するよう互いとおよび／または中央サーバもしくはクラウドコンピューティングシステムと途切れ目なく統合するよう設計および実現され得る。
【０１４５】
（たとえば洗濯機、乾燥機、オーブンレンジ、食洗機、冷蔵庫など）主要な家庭用機器などのような機器デバイスは、家がＨＯＭＥ状態にあるときに洗濯物を洗うためなど、メッシュネットワークにおいて動作することができ、またはある機器は、家がＡＷＡＹ状態にある（たとえばすべての人が構造物から去った）ときに経済モードに入ることができる
。火事もしくは自然災害などのような非常事態において、または非常事態に至り得る検出された天候状態に基づいて、天然ガスを用いる機器（たとえばストーブおよび湯沸かし器など）は不能化されてもよい。家のＡＷＡＹ状態においては、オーブンがオン状態であるという通知、または洗濯機のステータスなどのような任意の他の機器の状態、冷蔵庫が動作を停止したこと、暖炉が期待以上に動作していることなどを報告する通知が、ユーザのモバイルデバイスに通信されてもよい。さらに、暖炉が期待される以上に動作しているという通知は、さらに、ドアまたは窓が冷たい外部の環境に対して開かれたままであることまたは破られて開いている旨の指示であってもよい。ユーザが、オーブンがオン状態である通知などのような機器通知に対して応答しない場合には、システムはオーブンを自動的にオフにしてもよい。
【０１４６】
機器（たとえば洗濯機および乾燥機など）は、家のＨＯＭＥ状態において消音モードに入ってもよい。家がＡＷＡＹ状態にあり、蛇口がお湯に対してオン状態にされている場合には、システムは家ＨＯＭＥ状態を起動することができる。さらなる機器の使用は、在宅および在宅者のおおよその数の指示を与えることができる。構造物の在宅者が指定された時間数または日数の間いない場合には、システムはエコモードに入るよう要求を通信することができ、ユーザは次いでそれを遠隔でモバイルデバイス上において承認してもよい。加えて、システムは、機器が（ピーク使用時間中にエネルギを節約する）ＲＨＲ中に活性化される場合には警告を発し、ＲＨＲ中における湯の流れを低減し、セントラルヒーティングおよび冷却システムを起動して、空気を、非常事態中において、または警報が活性化される場合に、押出すかまたは引入れ、オーブン温度またはオーブンがオン状態であることに基づいて、サーモスタットを調整するかまたは何らかの他のメッシュネットワークデバイス設定点を設定し、水および／または電気使用の報告をユーザのモバイルデバイスに通信してもよい。
【０１４７】
ブラインド、日除けもしくは他のタイプの覆いを有するか、または通電変色性であってもよい、ドアまたは窓は、夜の時間中において、または家ＡＷＡＹ状態において、日除けを下げるようになど、自動的に活性化されることができる。日除けは、さらに、ＨＶＡＣをオンにするのではなく、温度を下げるよう、または直射日光が検出される場合に、閉じられてもよい。代替的に、日除けは、警報が発せられる場合に開かれ、またはＲＨＲの場合に閉じることができる。同様に、電気ファンを、ＲＨＲの場合にオンにすることができ、または構造物もしくは環境を加熱する場合にファンを反転させることができる。ファン状態、速度または他の特性を、別のメッシュネットワークデバイス設定点を変更する基礎として用いることができる。さらに、エネルギ使用データをユーザのモバイルデバイスに通信することができる。ＨＶＡＣユニットが加熱または冷却している場合には、ファンを脱階層化（反転）モードにおいて動作させることができる。家がＡＷＡＹモードにセットされる場合には、ファンを定期的にオンにする、および／または同じ制限された継続期間の間ＨＶＡＣファンとして起動してもよい。警報中、任意の外部の排気ファンが活性化されてもよい。ＨＶＡＣは、複数のセンサ入力を有することにより、カスタマイズされた温度制御に対してホーム環境の在宅を判断してもよい。
【０１４８】
電気自動車充電はＤＲベースであり得、危険が検出された場合には停止されるか、またはユーザはＲＨＲ中に充電を遅延させるオプションを与えられる。加えて、電気車両充電に対するエネルギ使用データがアップロードされ得、システムはスケジュールを学習して、ユーザが典型的にはいつ車両から去り、車両を利用するかに基づいて、車両を使用に対して予め調整するようになどすることができる。
【０１４９】
家庭照明を、家ＨＯＭＥモードまたはＡＷＡＹモードに基づいてオンまたはオフになるように設定することができ、動き検知を用いて家ＨＯＭＥモードを判断またはセットすることができる。家がＡＷＡＹモードにある場合には、システムは照明をランダムにオンお
よびオフにすることができる。より効率的でない照明はより頻繁に用いられないようにすることができる。夕食の状況、映画を見ている状況、ロマンチックな状況など、家の「状況」を雰囲気および照明で形成することができる。上に注記されるように、照明は赤い色を照射して危険または非常事態を示してもよく、次いで、明るい白色に変更して構造物からの出口経路を照明してもよい。照明は、さらに、ＲＨＲに対してオフにされるか暗くされ、温度に基づいてオンまたはオフにされ、および／または異なる開始色、中間色または終了色を有し得る。
【０１５０】
動き検知は照明を切換えＨＯＭＥモードを起動するよう統合されることができる。照明活性化は在宅を検出するよう監視されることができ、検出される在宅者がいない場合には、メッセージを通信して、ＨＶＡＣを非活性化するよう要求することができる。カメラ統合および撮像に関しては、動きが検出された場合には、照明の輝度をカメラ撮像のために増大させてもよい。照明が突発する場合には、カメラは照明にズームし得る。照明は、検出されたユーザ、ユーザプロファイルに基づいて、および／または照明もしくは温度を調整するよう、調整され得る。照明スケジュールを、家ＨＯＭＥモードまたはＡＷＡＹモードに対して学習することができ、照明起動はＨＯＭＥモードを示すかまたは活性化させる。警報が活性化される場合には、屋外照明のすべてが活性化され、および／または、スイミングプール照明、投光照明および他の屋外照明などのような異なる色を照射することができる。照明は、さらに、警告または警報を示す、安定した、点滅する、ランダムな、または何らかのパターンでオンにされてもよい。警報が活性化される場合には、照明は、注意として黄色、または警告として赤色など、注意喚起ステータス色を照射することができる。照明の一部は、侵入者の位置および存在を示すよう照射することができる。照明は、さらに、ホーム環境センサ判断に基づくなどして、構造物からの安全な出口経路を照射するようオンにもされ得る。
【０１５１】
ドアロックがロック解除されない場合には、家ＨＯＭＥモードが起動され得、同様に、在宅者が退去してドアをロックする場合には、家ＡＷＡＹモードがセットされ得る。ロックのステータスは、在宅者がいる場合および家ＨＯＭＥモードにある場合には、システムによって頻度がより低くポーリングされることができ、家ＡＷＡＹモードにある場合にはより頻繁にポーリングされることができる。さらに、低バッテリ状態に遭遇し、家がＡＷＡＹモードにある場合には、フィーチャはロックベースのメッシュネットワークデバイスのバッテリ電力を節約するよう休眠し得る。ロックベースのデバイスは、ピンコード＋ＢＬＥ認証に基づいて動作するよう設計されることができ、ロックまたはロック解除状態を、在宅判断のために用い、および／または在宅判断のために他のセンサ情報と組合せることができる。ユーザが休暇中である場合などには、予期せぬドアロック解除は警報を起動することができ、ロック解除メッセージがユーザのモバイルデバイスに通信されることができる。さらに、ユーザが出発または退去すると、モバイルデバイスのスクリーン上の表示のために通知が起動され得る。
【０１５２】
すべてのタイプの無線センサデバイスを、メッシュネットワークにおいて動作し、温度および他の読取値をユーザおよび他のメッシュネットワークデバイスの任意のものに与えるよう実現することができる。サービスの観点からは、家ＡＷＡＹモードおよびＨＶＡＣ設定は、ユーザが他の場所にチェックインしたときに起動されてもよく、それは、さらに、位置サービス入力および／または暦イベントに基づいてもよい。システムは、さらに、予約、警報対話、および／またはサーモスタットの音声制御もしくは他のメッシュネットワークデバイスの任意のものに対して実現されてもよい。家の客が、システムのうちのいくつかのフィーチャおよび局面を近接度に基づいて制御することを許されてもよい。センサは、さらに、客に対して一時的なカメラアクセスおよび一時的なキーアクセスを容易にしてもよい。さらに、客自身の家が制御され、ＡＷＡＹモードがメッシュネットワーク環境を含む他の構造物において検出される在宅に基づいて起動されてもよい。客の到着前お
よび客の退去後に部屋を自動的に撮影してもよく、非常に多くの客が検出もされ得る。
【０１５３】
ソーラーパワー装置は、メッシュネットワークにおいて、天気予報および蓄電された電荷に基づいて、サーモスタットを制御し、電気車両を充電し、および／または機器を起動することができる。スイッチおよびプラグを、在宅センサとともに、ここに記載されるフィーチャの多くに対して実現して、ユーザ検出などのために、警報装置を起動し、装置をＲＨＲ（混雑時報酬）中に非活性化し、エネルギ消費通知を通信するようになどすることができる。ＶＯＩＰシステムを統合して、家ＡＷＡＹモードにおいて、ユーザに対する呼出を転送するか、または警報が活性化された場合には９１１非常事態を呼出すことができる。ＶＯＩＰシステムは、さらに、予定されるＨＯＭＥモード時間を監視し、家ＨＯＭＥ状態に入らない場合にはユーザに対する呼出を起動することができる。
【０１５４】
音声および映像フィーチャを実現して、テレビおよび音声設備を非常事態、危険および警報状態中において下げ、家ＨＯＭＥ状態および家ＡＷＡＹ状態においてデバイスをオンまたはオフにすることができる。警報を、さらに、メッシュネットワークデバイスを介して、メッセージとして、ある特定のデシベルレベルで伝搬（たとえば再同報通信）することもできる。音声は、さらに、家の状態に基づいて切換えることができ、ＩＲセンサおよびアプリケーションの使用は家ＨＯＭＥ状態を示すことができる。音声システムを用いて音声警報をシステムのスピーカを介して伝搬することができ、および／またはカメラが侵入者を検出する場合には音声を再生することができる。音声システムは、メッシュネットワークデバイスの任意のものと同様に、家に到着する人のＥＴＡに基づいてオンまたはオフにすることができる。
【０１５５】
自動車を一般にメッシュネットワークデバイスとして例示の環境に統合し、家に到着する人のＥＴＡを通信することができる。家ＨＯＭＥ状態および家ＡＷＡＹ状態は、逆行して構造物を退去する際、またはＥＴＡが構造物を暖めるかまたは冷却するよう熱的遷移時間の使用を含むしきい値に基づく場合に、与えられるＥＴＡに基づいて起動されることができる。ジオフェンスのフィーチャもメッシュネットワークにおける使用のために組込むことができる。ユーザのモバイルデバイスと同様に、自動車は、メッシュネットワークデバイスのうちの任意のものおよび／またはメッシュネットワーク全体の車内ステータスを表示して、カメラ画像または動画配信を含むようにすることができる。自動車（車両）は、使用のために、家におけるサーモスタット設定に基づいて予め調整されることができ、ユーザ環境温度は、ユーザが家から車両へ、またはその逆に移動する中、維持される。例示の環境における構造物の微細な位置制御を用いて、到着時にガレージの扉を開くが、構造物の任意の他の入口ドア（またはそれらの任意の他の組合せ）をロック解除しないようになど、入口点を起動することができる。ガレージ扉の開閉を用いて、家ＨＯＭＥ状態または家ＡＷＡＹ状態のいずれかを起動することもできる。ガレージ扉は、さらに、温度が高過ぎるかまたは低過ぎることが検出されることに基づいて開閉されることができる。ガレージ扉は、煙またはＣＯなどに対して、警報に基づいて開閉されることができ、強制的に開けられる場合には、システムはカメラを起動することができる。
【０１５６】
個人的健康および監視デバイスをメッシュネットワークおよび例示の環境１５００に組込むことができる。さらに、ウェアラブルデバイスを、さらに、ここに記載されるさまざまなフィーチャの多くを実現するよう動作可能である任意のタイプのメッシュネットワークデバイスとして統合することができる。たとえば、ベッドカバーまたはウェアラブルデバイスはユーザが眠っているのを検出してもよく、部屋に対するサーモスタット状態を調整してユーザの好みおよび／またはプロファイルに対応する。起床温度が、さらに、ベッドカバーの動きまたはウェアラブル装置に基づいてもよく、家ＨＯＭＥ状態は照明、音楽、テレビなどを含むよう起動されてもよい。乳幼児のステータスおよび／または体温をユーザのモバイルデバイスに通信することができ、カメラを乳幼児のステータスに基づいて
オンにすることができ、乳幼児モニタはシステムにおいて警報活性化を振動させ、および／または上昇させ、乳幼児モニタがジオフェンスを出る場合などには、警報が活性化され得る。乳幼児のためのメッシュネットワークデバイスはより厳格であってもよく、乳幼児設定に対して、より少ない温度ドリフトに対応するようにしてもよい。ユーザの体温を、ウェアラブルデバイスによって判断し、ＨＶＡＣをそれに従って調整することができる。ペット検出のためのペットウェアラブルデバイスを用いてカメラの誤った起動を低減することができる。
【０１５７】
上記の多くのカメラフィーチャに代えて、またはそれに加えて、カメラの１つ以上を用いて、家ＡＷＡＹ状態がセットされる場合には、通知を起動することができる。カメラの活性化および非活性化は、家ＨＯＭＥ状態と家ＡＷＡＹ状態との間の手動または自動切換に基づいて行なうことができる。警報が活性化される場合には、画像クリップがユーザのモバイル装置などに通知として送信され、映像履歴も含まれてもよい。ドアベルまたはドアノックが（たとえばマイクロフォン、センサコンタクトなどによって）検出される場合には、カメラをオンにし、画像または映像を捕捉し、画像または映像を、閲覧のために、家における表示装置またはユーザのモバイルデバイス上に通信する。ユーザが構造物から退去する場合には、ウェアラブルデバイスはカメラをオンにすることを起動することができ、構造物に戻ってくると、カメラをオフにすることを開始することができる。同様に、ユーザが眠りに落ちた場合には、ウェアラブルデバイスはその睡眠を検出し、カメラをオンにすることを開始することができ、ユーザが目覚めると、カメラをオフにすることを開始することができる。動きがあるゾーンで検出され、かつ構造物に在宅者がいない場合には（たとえば家ＡＷＡＹ状態）、システムは、音楽、照明などをオンにすることによって、あたかも誰かが構造物内にいるかのようにシミュレーションするよう起動することができる。同様に、ある延長された時間の間どのような動きも検出されない場合には、システムは、あたかも誰かが家にいるかのようにシミュレーションを起動することができる。顔認識を実現してユーザの好みおよび／またはプロファイルをサポートすることができる。一般に、映像クリップ、音声記録または画像を、メッシュネットワークの例示的環境において検出される任意のイベントに対して捕捉および／または生成することができる。さらに、メッシュネットワーク内へのサードパーティアクセスポイントは、通知および関連のカメラへのその後のリンクを与える。
【０１５８】
シャワーおよび蛇口を例示の環境においてメッシュネットワークデバイスとして制御することができる。たとえば、警報中において、使用中のシャワーまたは蛇口を、冷水を流すように変更することができ、またはシャワーヘッド周りのＬＥＤリングを起動して警報を示すことができる。同様に、扉のところにいる人に対して、シャワーを冷たくしてもよく、および／またはＬＥＤライトを、ユーザに通知するように起動してもよい。一般にホーム自動化に対しては、メッシュネットワークデバイスは、サーモスタット、警報、動き、検出される音声、危険、ならびに他の属性およびフィーチャに基づいて制御することができる。ＲＨＲに対しては、ファンをオンにし、窓の日除けを閉じ、照明をオフにすることができる。温度、窓の日除け、音楽などを設定することを含むよう、ある場面を設定することができる。目覚まし時計は、検出されたカメラの動きイベントを知らせるかまたは警報で伝え、音声供給を開くことができる。目覚まし時計を用いて、フィーチャの数多くを容易にして、警報を知らせること、睡眠および起床温度、照明、警報をプログラミングすること、およびＲＨＲを知らせることなどができる。
【０１５９】
リモコンデバイスを、さらに、メッシュネットワークデバイスとして実現して、ここに記載されるメッシュネットワークデバイスおよびフィーチャのうちの任意のものを制御および起動して、危険状態が検出されたとき、または警報が活性化されたときに、音声および映像を下げるようにすることができる。リモコンデバイスを、さらに、音声記録のために用いて、システムの質問に答え、ＲＨＲを知らせてもよい。保険予防のフィーチャおよ
び局面をさらに組込んで、特に煙およびＣＯ検出器において低バッテリ状態が検出されたときにメッシュネットワークデバイスのためにバッテリを自動的に送達するようになどしてもよい。保険会社は、さらに、警報状態が活性化されたときに通知を受けてもよく、それによって、サポートが火事または侵入の後などに提供され得る。
【０１６０】
メッシュネットワークおよび／または例示的環境１５００において動作するよう設計され得る他のサードパーティプロダクトおよびデバイスは、乳幼児およびペット監視装置、他のモノのインターネット（ＩｏＴ）デバイス、ソフトウェアスタックプロバイダ、ＲＦモジュールおよび開発キット、アクセスポイントおよびハブ装置、負荷制御スイッチ、セキュリティベースの装置、ＲＦＩＤタグおよびビーコンデバイス、ドローンおよびボットデバイス、エネルギ貯蔵設備および装置、ホビー装置、測定ユニットおよび装置、ＰＥＲＳ、測候所装置、設備、ならびに／または任意の他のタイプのプロダクトおよびメッシュネットワークデバイスを含むことができる。たとえば、スイミングプールヒータおよびポンプは、家がＡＷＡＹモードにあるかまたはＲＨＲ中にあるときに、エネルギを節約するよう、必須でないプール要素としてオフにされ得る。メッシュネットワークに関連付けられるクラウドベースのフィーチャに対しては、ＩＳＰ／ＭＳＯフィーチャを実現して、ユーザがサーモスタット状態（または任意のメッシュネットワークデバイスの状態）をひと目で閲覧することができることを規定するようになどできる。侵入者警報または火災警報が活性化される場合には、スプリンクラーシステムを活性化およびオンにしてもよい。水の使用のメッセージをさらにユーザのモバイルデバイスに通信することができる。掃除機システムを家ＡＷＡＹ状態が起動されたときに掃除を行なうよう設定することができる。
【０１６１】
図１６は、ここに説明されるようなメッシュネットワークアドレッシングの１つ以上の実施形態に従った、メッシュネットワークにおけるメッシュネットワークデバイスのうちのいずれかとして実現され得る例示的なメッシュネットワークデバイス１６００を示す。デバイス１６００は、電子回路、マイクロプロセッサ、メモリ、入出力（Ｉ／Ｏ）論理制御、通信インターフェイスおよびコンポーネント、ならびに、メッシュネットワークにおいてデバイスを実現するための他のハードウェア、ファームウェア、および／またはソフトウェアと統合され得る。また、メッシュネットワークデバイス１６００は、図１７に示す例示的なデバイスを参照してさらに説明されるような任意の数の異なるコンポーネントおよびそれらの任意の組合せといったさまざまなコンポーネントを用いて実現され得る。
【０１６２】
この例では、メッシュネットワークデバイス１６００は、実行可能な命令を処理する低電力マイクロプロセッサ１６０２および高電力マイクロプロセッサ１６０４（たとえば、マイクロコントローラまたはデジタル信号プロセッサ）を含む。デバイスはまた、（たとえば、電子回路を含めるための）入出力（Ｉ／Ｏ）論理制御１６０６を含む。マイクロプロセッサは、１つ以上の半導体を使用して形成された集積回路、プログラマブル論理デバイス、論理デバイスのコンポーネントと、システム・オン・チップ（ＳｏＣ）として実現されたプロセッサおよびメモリシステムといったシリコンおよび／またはハードウェアにおける他の実現化例とを含み得る。これに代えて、またはこれに加えて、デバイスは、処理回路および制御回路を用いて実現され得るソフトウェア、ハードウェア、ファームウェア、または固定論理回路のうちのいずれか１つまたはそれらの組合せを用いて実現され得る。低電力マイクロプロセッサ１６０２および高電力マイクロプロセッサ１６０４はまた、デバイスの１つ以上の異なるデバイス機能性をサポートできる。たとえば、高電力マイクロプロセッサ１６０４は計算集約的動作を実行し、一方、低電力マイクロプロセッサ１６０２は、１つ以上のセンサ１６０８からハザードまたは温度を検出するといった、それほど複雑でないプロセスを管理してもよい。低電力マイクロプロセッサ１６０２はまた、計算集約的プロセスのために高電力マイクロプロセッサ１６０４を起動するかまたは初期化してもよい。
【０１６３】
１つ以上のセンサ１６０８は、加速、温度、湿度、水、供給電力、近接、外部運動、デバイス運動、音声信号、超音波信号、光信号、火、煙、一酸化炭素、全地球測位衛星（global-positioning-satellite：ＧＰＳ）信号、無線周波数（radio-frequency：ＲＦ）、
他の電磁信号または電磁場といったさまざまな特性を検出するために実現され得る。そのため、センサ１６０８は、温度センサ、湿度センサ、ハザード関連センサ、他の環境センサ、加速度計、マイクロホン、カメラを含むそれ以下の光学センサ（たとえば、電荷結合素子またはビデオカメラ）、能動または受動放射センサ、ＧＰＳレシーバ、および無線周波数識別検出器のうちのいずれか１つまたはそれらの組合せを含んでいてもよい。実現化例では、メッシュネットワークデバイス１６００は、１つ以上の一次センサと１つ以上の二次センサとを含んでいてもよく、一次センサは、デバイスのコア動作（たとえば、サーモスタットでは温度を感知すること、または、煙検出器では煙を感知すること）の中心となるデータを感知し、一方、二次センサは、他のタイプのデータ（たとえば、動き、光、または音）を感知し、それらはエネルギー効率目的またはスマート動作目的のために使用され得る。
【０１６４】
メッシュネットワークデバイス１６００は、メモリデバイスコントローラ１６１０、および任意のタイプの不揮発性メモリおよび／または他の好適な電子データ記憶デバイスといった、メモリデバイス１６１２を含む。メッシュネットワークデバイス１６００はまた、メモリによってコンピュータ実行可能命令として維持され、マイクロプロセッサによって実行されるオペレーティングシステム１６１４といった、さまざまなファームウェアおよび／またはソフトウェアを含み得る。デバイスソフトウェアはまた、メッシュネットワークアドレッシングの実施形態を実現するアドレッシングアプリケーション１６１６を含んでいてもよい。メッシュネットワークデバイス１６００はまた、別のデバイスまたは周辺コンポーネントとインターフェイス接続するためのデバイスインターフェイス１６１８を含み、メッシュネットワークデバイスのさまざまなコンポーネントをコンポーネント間のデータ通信のために結合する統合データバス１６２０を含む。メッシュネットワークデバイスにおけるデータバスはまた、異なるバス構造および／またはバスアーキテクチャのうちのいずれか１つまたはそれらの組合せとして実現されてもよい。
【０１６５】
デバイスインターフェイス１６１８は、（たとえばユーザインターフェイスとして）ユーザから入力を受信し、および／またはユーザに情報を提供してもよく、受信された入力は、設定を定めるために使用可能である。デバイスインターフェイス１６１８はまた、ユーザ入力に応答する機械的コンポーネントまたは仮想コンポーネントを含んでいてもよい。たとえば、ユーザは、摺動コンポーネントまたは回転可能コンポーネントを機械的に動かすことができ、または、タッチパッドに沿った動きが検出されてもよく、そのような動きはデバイスの設定調節に対応していてもよい。物理的なおよび仮想の可動ユーザインターフェイスコンポーネントは、ユーザが、明らかな連続体の一部に沿って設定を設定することを可能にする。デバイスインターフェイス１６１８はまた、ボタン、キーパッド、スイッチ、マイクロホン、および撮像装置（たとえばカメラデバイス）といった任意の数の周辺装置から入力を受信してもよい。
【０１６６】
メッシュネットワークデバイス１６００は、メッシュネットワークにおける他のメッシュネットワークデバイスとの通信用のメッシュネットワークインターフェイス、およびインターネットなどを介したネットワーク通信用の外部ネットワークインターフェイスといった、ネットワークインターフェイス１６２２を含み得る。メッシュネットワークデバイス１６００はまた、メッシュネットワークインターフェイスを介した他のメッシュネットワークデバイスとの無線通信用の、および複数の異なる無線通信システム用の無線システム１６２４を含む。無線システム１６２４は、Ｗｉ−Ｆｉ、Bluetooth（登録商標）、モ
バイルブロードバンド、および／またはポイント・ツー・ポイントＩＥＥＥ  ８０２．１５．４を含んでいてもよい。異なる無線システムの各々は、特定の無線通信技術のために
実現された無線デバイス、アンテナ、およびチップセットを含み得る。メッシュネットワークデバイス１６００はまた、バッテリなどの、および／またはデバイスを線間電圧に接続するための電源１６２６を含む。デバイスのバッテリを充電するために、交流電源も使用されてもよい。
【０１６７】
図１７は、前述の図１〜１６を参照して説明されたようなメッシュネットワークアドレッシングの実施形態を実現するメッシュネットワークデバイスのうちのいずれかとして実現され得る例示的なデバイス１７０２を含む例示的なシステム１７００を示す。例示的なデバイス１７０２は、任意のタイプのコンピューティングデバイス、クライアントデバイス、携帯電話、タブレット、通信デバイス、娯楽デバイス、ゲーミングデバイス、メディア再生デバイス、および／または他のタイプのデバイスであってもよい。また、例示的なデバイス１７０２は、サーモスタット、ハザード検出器、カメラ、照明ユニット、ルータ、ボーダールータ、ジョイナールータ、参加デバイス、エンドデバイス、リーダー、アクセスポイント、および／または他のメッシュネットワークデバイスといった、メッシュネットワーク上での通信のために構成された任意の他のタイプのメッシュネットワークデバイスとして実現されてもよい。
【０１６８】
デバイス１７０２は、メッシュネットワークにおけるデバイス間で通信されるデータ、受信中のデータ、一斉送信用に予定されているデータ、データのデータパケット、デバイス間で同期されるデータといったデバイスデータ１７０６の有線および／または無線通信を可能にする通信デバイス１７０４を含む。デバイスデータは、任意のタイプの通信データと、デバイス上で実行されるアプリケーションによって生成される音声データ、映像データおよび／または画像データとを含み得る。通信デバイス１７０４はまた、携帯電話通信用の、および／またはネットワークデータ通信用のトランシーバを含み得る。
【０１６９】
デバイス１７０２はまた、デバイス、データネットワーク（たとえば、メッシュネットワーク、外部ネットワークなど）、ならびに他のデバイス間の接続リンクおよび／または通信リンクを提供するデータネットワークインターフェイスといった、入力／出力（Ｉ／Ｏ）インターフェイス１７０８を含む。Ｉ／Ｏインターフェイスは、任意のタイプのコンポーネント、周辺装置、および／または付属装置にデバイスを結合するために使用可能である。Ｉ／Ｏインターフェイスはまた、データ入力ポートを含み、それを介して、任意のタイプのデータ、メディアコンテンツ、および／またはデバイスへのユーザ入力などの入力が受信可能であり、また、任意のタイプの通信データ、ならびに音声データ、映像データおよび／または画像データが、任意のコンテンツおよび／またはデータソースから受信可能である。
【０１７０】
デバイス１７０２は、実行可能な命令を処理する任意のタイプのマイクロプロセッサ、コントローラなどを有するようなハードウェアで少なくとも部分的に実現され得る処理システム１７１０を含む。処理システムは、１つ以上の半導体を使用して形成された集積回路、プログラマブル論理デバイス、論理デバイスのコンポーネントと、システム・オン・チップ（ＳｏＣ）として実現されたプロセッサおよびメモリシステムといったシリコンおよび／またはハードウェアにおける他の実現化例とを含み得る。これに代えて、またはこれに加えて、デバイスは、処理回路および制御回路を用いて実現され得るソフトウェア、ハードウェア、ファームウェア、または固定論理回路のうちのいずれか１つまたはそれらの組合せを用いて実現され得る。デバイス１７０２はさらに、デバイス内のさまざまなコンポーネントを結合する任意のタイプのシステムバスまたは他のデータおよびコマンド転送システムを含んでいてもよい。システムバスは、異なるバス構造およびアーキテクチャのうちのいずれか１つまたはそれらの組合せと、制御線およびデータ線とを含み得る。
【０１７１】
デバイス１７０２はまた、コンピューティングデバイスによってアクセス可能であり、
データおよび実行可能な命令（たとえば、ソフトウェアアプリケーション、モジュール、プログラム、関数など）の永続的格納を提供するデータ記憶装置といったコンピュータ読取可能ストレージメモリ１７１２を含む。ここに説明されるコンピュータ読取可能ストレージメモリは、伝搬信号を除外する。コンピュータ読取可能ストレージメモリの例は、揮発性メモリおよび不揮発性メモリ、固定されたおよびリムーバブルなメディアデバイス、ならびに、コンピューティングデバイスのアクセスのためにデータを維持する任意の好適なメモリデバイスまたは電子データストレージを含む。コンピュータ読取可能ストレージメモリは、さまざまなメモリデバイス構成におけるランダムアクセスメモリ（random access memory：ＲＡＭ）、読出専用メモリ（read-only memory：ＲＯＭ）、フラッシュメモリ、および他のタイプのストレージメモリのさまざまな実現化例を含み得る。
【０１７２】
コンピュータ読取可能ストレージメモリ１７１２は、コンピュータ読取可能ストレージメモリでソフトウェアアプリケーションとして維持され、処理システム１７１０によって実行されるオペレーティングシステムといった、デバイスデータ１７０６およびさまざまなデバイスアプリケーション１７１４の格納を提供する。デバイスアプリケーションはまた、任意の形態の制御アプリケーション、ソフトウェアアプリケーション、信号処理および制御モジュール、特定のデバイスに固有のコード、特定のデバイス用のハードウエア抽象化層などといった、デバイスマネージャを含んでいてもよい。この例では、デバイスアプリケーションはまた、例示的なデバイス１７０２がここに説明されたメッシュネットワークデバイスのうちのいずれかとして実現される場合などに、メッシュネットワークアドレッシングの実施形態を実現する、アドレッシングアプリケーション１７１６を含む。
【０１７３】
デバイス１７０２はまた、音声デバイス１７２０用の音声データを生成し、および／または表示デバイス１７２２用の表示データを生成する、音声および／または映像システム１７１８を含む。音声デバイスおよび／または表示デバイスは、音声データ、映像データ、表示データおよび／または画像データ、たとえばデジタル写真の画像コンテンツなどを処理し、表示し、および／または他の態様で表わす任意のデバイスを含む。実現化例では、音声デバイスおよび／または表示デバイスは、例示的なデバイス１７０２の統合されたコンポーネントである。これに代えて、音声デバイスおよび／または表示デバイスは、例示的なデバイスの外部の周辺コンポーネントである。実施形態では、メッシュネットワークアドレッシングについて説明された技術のうちのの少なくとも一部は、分散型システムで、たとえば「クラウド」１７２４を通してプラットフォーム１７２６で実現されてもよい。クラウド１７２４は、サービス１７２８および／またはリソース１７３０のためのプラットフォーム１７２６を含み、および／またはプラットフォーム１７２６を代表する。
【０１７４】
プラットフォーム１７２６は、（たとえば、サービス１７２８に含まれる）サーバデバイスおよび／または（たとえば、リソース１７３０として含まれる）ソフトウェアリソースといった、ハードウェアの基本的機能性を抽象化し、例示的なデバイス１７０２を他のデバイス、サーバなどに接続する。リソース１７３０はまた、例示的なデバイス１７０２からリモートのサーバに対してコンピュータ処理が実行される間に利用可能なアプリケーションおよび／またはデータを含んでいてもよい。加えて、サービス１７２８および／またはリソース１７３０は、インターネット、セルラーネットワーク、またはＷｉ−Ｆｉネットワークなどを通して加入者ネットワークサービスを容易にしてもよい。プラットフォーム１７２６はまた、機能性がシステム１７００全体に分散された相互接続されたデバイス実施形態などにおいて、プラットフォームを介して実現されるリソース１７３０に対する要望をサービスするために、リソースを抽象化してスケール変更するよう機能してもよい。たとえば、機能性は、例示的なデバイス１７０２で、および、クラウド１７２４の機能性を抽象化するプラットフォーム１７２６を介して、部分的に実現されてもよい。
【０１７５】
メッシュネットワークアドレッシングの実施形態が、特徴および／または方法に特有の
文言で説明されてきたが、添付された請求項の対象は、説明された特定の特徴または方法に必ずしも限定されない。むしろ、特定の特徴および方法は、メッシュネットワークアドレッシングの例示的な実現化例として開示されており、他の同等の特徴および方法が、添付された請求項の範囲内に該当するよう意図されている。また、さまざまな異なる実施形態が説明されており、説明された各実施形態は独立して、または１つ以上の他の説明された実施形態に関連して実現可能であるということが理解されるべきである。
【図１】
2020074551.tif 000003
【図２】
2020074551.tif 000004
【図３】
2020074551.tif 000005
【図４】
2020074551.tif 000006
【図５】
2020074551.tif 000007
【図６】
2020074551.tif 000008
【図７】
2020074551.tif 000009
【図８】
2020074551.tif 000010
【図９】
2020074551.tif 000011
【図１０】
2020074551.tif 000012
【図１１】
2020074551.tif 000013
【図１２】
2020074551.tif 000014
【図１３】
2020074551.tif 000015
【図１４】
2020074551.tif 000016
【図１５】
2020074551.tif 000017
【図１６】
2020074551.tif 000018
【図１７】
2020074551.tif 000019
【手続補正書】
【提出日】令和2年2月3日(2020.2.3)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
メッシュネットワークにおいて重複アドレスを検出する方法であって、
メッシュネットワークデバイスは、アドレスクエリを開始して、指定されるアドレスについてタプル状態を有する前記メッシュネットワークにおけるメッシュネットワークデバイスが前記指定されるアドレスに対応する前記タプル状態で応答することを要求することを含み、前記タプル状態は、アドレスと、時間ベースの情報と、ルータデバイスがどれくらいの間前記タプル状態を維持するかを示す寿命持続期間とを含み、前記方法はさらに、
前記アドレスクエリに応答して、前記指定されるアドレスに対応する複数のタプル状態を受信することと、
前記受信されたタプル状態の各々に含まれる前記時間ベースの情報に基いて、前記メッシュネットワークデバイスのうちの複数のメッシュネットワークデバイスにより使用中の重複アドレスを検出することとを含む、メッシュネットワークにおいて重複アドレスを検出する方法。
【請求項２】
前記受信されたタプル状態における前記時間ベースの情報を比較して、前記重複アドレスを検出することをさらに含む、請求項１に記載の方法。
【請求項３】
前記重複アドレスを有する前記メッシュネットワークデバイスの１つ以上に新たなアドレスを生成するよう命じることをさらに含む、請求項１または２に記載の方法。
【請求項４】
前記アドレスクエリを開始する前記メッシュネットワークデバイスは、前記メッシュネットワーク内のルータデバイス、ルータ適格エンドデバイス、またはエンドデバイスのうちの１つである、請求項１から３のいずれか１項に記載の方法。
【請求項５】
前記メッシュネットワークデバイスは、ルータデバイスおよびエンドデバイスを含み、前記複数のタプル状態は、前記ルータデバイスのうちの対応するルータデバイスに通信可能にリンクされる前記エンドデバイスの各々について前記タプル状態を維持する前記ルータデバイスから受信される、請求項１から４のいずれか１項に記載の方法。
【請求項６】
前記タプル状態は、ランダム値をさらに含み、
前記メッシュネットワークデバイスのうちの前記複数のメッシュネットワークデバイスにより使用中の前記重複アドレスを検出することは、前記メッシュネットワークデバイスの前記タプル状態の各々の一部として維持される各ランダム値に基く、請求項１から５のいずれか１項に記載の方法。
【請求項７】
前記重複アドレスを検出することは、前記受信されたタプル状態の各々におけるランダム値が同じ値である場合、前記アドレスは前記重複アドレスではないと判断することを含む、請求項６に記載の方法。
【請求項８】
メッシュネットワークデバイスであって、
メッシュネットワークにおける通信のために構成されたメッシュネットワークインターフェイスと、
アドレッシングアプリケーションを実現するためのメモリおよびプロセッサシステムとを含み、前記アドレッシングアプリケーションは、
アドレスクエリを開始して、指定されるアドレスについてタプル状態を有する前記メッシュネットワークにおけるメッシュネットワークデバイスが前記指定されるアドレスに対応する前記タプル状態で応答することを要求するよう構成され、前記タプル状態は、アドレスと、時間ベースの情報と、ルータデバイスがどれくらいの間前記タプル状態を維持するかを示す寿命持続期間とを含み、前記アドレッシングアプリケーションはさらに、
前記アドレスクエリに応答して、前記指定されるアドレスに対応する複数のタプル状態を、前記メッシュネットワークインターフェイスを介して受信し、
前記受信されたタプル状態の各々に含まれる前記時間ベースの情報に基いて、前記メッシュネットワークデバイスのうちの複数のメッシュネットワークデバイスにより使用中の重複アドレスを検出するように構成される、メッシュネットワークデバイス。
【請求項９】
前記アドレッシングアプリケーションは、前記受信されたタプル状態における前記時間ベースの情報を比較して、前記重複アドレスを検出するように構成される、請求項８に記載のメッシュネットワークデバイス。
【請求項１０】
前記受信されたタプル状態の各々におけるランダム値が同じ値である場合には、前記アドレッシングアプリケーションは、前記指定されるアドレスは前記重複アドレスではない、と判断するように構成される、請求項９に記載のメッシュネットワークデバイス。
【請求項１１】
前記アドレッシングアプリケーションは、前記重複アドレスを有する前記メッシュネットワークデバイスの１つ以上に新たなアドレスを生成するよう命じるように構成される、請求項８から１０のいずれか１項に記載のメッシュネットワークデバイス。
【請求項１２】
前記タプル状態はランダム値を含み、前記アドレッシングアプリケーションは、前記複数のタプル状態の各々における各ランダム値を比較して、前記メッシュネットワークデバイスのうちの前記複数のメッシュネットワークデバイスにより使用中の前記重複アドレスを検出するように構成される、請求項８から１１のいずれか１項に記載のメッシュネットワークデバイス。
【請求項１３】
前記メッシュネットワークデバイスは、ルータデバイスおよびエンドデバイスを含み、前記タプル状態は、前記ルータデバイスのうちの対応するルータデバイスに通信可能にリンクされる前記エンドデバイスの各々について前記タプル状態を維持する、前記メッシュネットワークにおける前記ルータデバイスから受信される、請求項８から１２のいずれか１項に記載のメッシュネットワークデバイス。
【請求項１４】
前記メッシュネットワークデバイスは、前記メッシュネットワーク内のルータデバイス、ルータ適格エンドデバイス、またはエンドデバイスのうちの１つである、請求項８から１３のいずれか１項に記載のメッシュネットワークデバイス。
【請求項１５】
メッシュネットワークであって、
ルータデバイスと、
メッシュネットワークデバイスとを含み、前記メッシュネットワークデバイスは、
アドレスクエリを開始して、指定されるアドレスについてタプル状態を有する前記ルータデバイスが前記指定されるアドレスに対応する前記タプル状態で応答することを要求するよう構成され、前記タプル状態は、アドレスと、時間ベースの情報と、前記ルータデバイスがどれくらいの間前記タプル状態を維持するかを示す寿命持続期間とを含み、前記メッシュネットワークデバイスはさらに、
前記アドレスクエリに応答して、前記指定されるアドレスに対応する複数のタプル状態を受信し、
前記ルータデバイスにより前記タプル状態の一部として維持される前記時間ベースの情報に基いて、複数のメッシュネットワークデバイスにより使用中の重複アドレスを検出するように構成される、メッシュネットワーク。
【請求項１６】
前記メッシュネットワークデバイスは、前記受信されたタプル状態における前記時間ベースの情報を比較して、前記複数のメッシュネットワークデバイスにより使用中の前記重複アドレスを検出するように構成される、請求項１５に記載のメッシュネットワーク。
【請求項１７】
前記メッシュネットワークデバイスは、前記重複アドレスを有する前記メッシュネットワークデバイスの１つ以上に新たなアドレスを生成するよう命じるように構成される、請求項１５または１６に記載のメッシュネットワーク。
【請求項１８】
前記タプル状態は、ランダム値をさらに含み、
前記メッシュネットワークデバイスは、前記複数のメッシュネットワークデバイスにより使用中の前記重複アドレスを、前記タプル状態の各々の一部として維持されるランダム値に基づいて検出するように構成される、請求項１５から１７のいずれか１項に記載のメッシュネットワーク。
【請求項１９】
前記メッシュネットワークデバイスは、前記メッシュネットワーク内のルータデバイス、ルータ適格エンドデバイス、またはエンドデバイスのうちの１つである、請求項１５から１８のいずれか１項に記載のメッシュネットワーク。
【請求項２０】
前記メッシュネットワークはエンドデバイスを含み、前記複数のタプル状態は、前記ルータデバイスのうちの対応するルータデバイスに通信可能にリンクされる前記エンドデバイスの各々について前記タプル状態を維持する前記ルータデバイスから受信される、請求項１５から１９のいずれか１項に記載のメッシュネットワーク。
【請求項２１】
請求項１から７のいずれか１項に記載の方法をコンピュータに実行させるためのプログラム。
【外国語明細書】
2020074551000001.pdf