【文献】
保田 裕一朗 他,アドホックネットワークテストベッドにおける端末情報収集機能の開発,電子情報通信学会技術研究報告,2008年 2月28日,第107巻,第525号,p.175〜180
(58)【調査した分野】(Int.Cl.,DB名)
前記1つまたは複数の発見メッセージが前記第1の発見プロトコルについての前記第1の発見メッセージ、および前記第2の発見プロトコルについての前記第2の発見メッセージを含むことを決定することは、前記1つまたは複数の発見メッセージが、前記近隣ノードから受信されるレガシープロトコルについての発見メッセージ、および前記近隣ノードから受信されるハイブリッド通信ネットワークプロトコルについての発見メッセージを含むことを決定することを含む、請求項1に記載の方法。
前記ブリッジの第1のタイプが前記第1のノードと前記近隣ノードの間にあることを決定するステップが、前記ブリッジの第1のタイプがハイブリッド通信ネットワーク準拠ブリッジであることを決定するステップを含む、請求項2に記載の方法。
前記1つまたは複数の発見メッセージが前記第1の発見プロトコルについての前記第1の発見メッセージを含み、前記第2の発見プロトコルについての前記第2の発見メッセージを含まないことは、前記1つまたは複数の発見メッセージが、前記近隣ノードから受信されるハイブリッド通信ネットワークプロトコルについての発見メッセージを含み、前記近隣ノードから受信されるレガシープロトコルについての発見メッセージを含まないことを決定することを含む、請求項1に記載の方法。
前記ブリッジの第2のタイプが前記第1のノードと前記近隣ノードの間にあることを決定するステップが、前記ブリッジの第2のタイプがレガシーブリッジであることを決定することを含む、請求項4に記載の方法。
前記1つまたは複数の発見メッセージを受信するステップが、レガシープロトコル発見メッセージ、およびハイブリッド通信ネットワークプロトコル準拠発見メッセージを、前記近隣ノードから受信するステップを含む、請求項1に記載の方法。
前記レガシープロトコル発見メッセージを受信するステップが、リンク層発見プロトコル(LLDP)準拠発見メッセージを受信するステップを含む、請求項6に記載の方法。
前記第1のノードの電源投入、前記第1のノードにおけるタイマー切れ、および前記第1のノードによるトポロジ変更の検出からなる組のうち少なくとも1つに応答して、前記第1の発見メッセージおよび前記第2の発見メッセージが送信される、請求項8に記載の方法。
前記第1のノードの電源投入後に、前記第1のノードが、あらかじめ定められた時間または設定可能な期間の間、前記第1の発見メッセージおよび前記第2の発見メッセージの送信を遅らせる、請求項8に記載の方法。
前記第1の発見プロトコルが、レガシー発見プロトコルを含み、前記第2の発見プロトコルが、ハイブリッド通信ネットワークプロトコルを含む、請求項11に記載のネットワークデバイス。
前記1つまたは複数の発見メッセージが前記第1の発見プロトコルについての前記第1の発見メッセージ、および前記第2の発見プロトコルについての前記第2の発見メッセージを含むことを決定することは、前記1つまたは複数の発見メッセージが、前記近隣ノードから受信されるレガシープロトコルについての発見メッセージ、および前記近隣ノードから受信されるハイブリッド通信ネットワークプロトコルについての発見メッセージを含むことを決定することを含む、請求項15に記載の機械可読記録媒体。
前記ブリッジの第1のタイプが前記第1のノードと前記近隣ノードの間にあることを決定するステップが、前記ブリッジの第1のタイプがハイブリッド通信ネットワーク準拠ブリッジであることを決定するステップを含む、請求項16に記載の機械可読記録媒体。
前記1つまたは複数の発見メッセージが、前記第1の発見プロトコルについての前記第1の発見メッセージを含み、前記第2の発見プロトコルについての前記第2の発見メッセージを含まないことを決定することは、前記1つまたは複数の発見メッセージが、前記近隣ノードから受信されるハイブリッド通信ネットワークプロトコルについての発見メッセージを含み、前記近隣ノードから受信されるレガシープロトコルについての発見メッセージを含まないことを決定するステップを含む、請求項15に記載の機械可読記録媒体。
前記ブリッジの第2のタイプが前記第1のノードと前記近隣ノードの間にあることを決定するステップが、前記ブリッジの第2のタイプがレガシーブリッジであることを決定するステップを含む、請求項18に記載の機械可読記録媒体。
前記1つまたは複数の発見メッセージを受信するステップが、レガシープロトコル発見メッセージ、およびハイブリッド通信ネットワークプロトコル準拠発見メッセージを、前記近隣ノードから受信するステップを含む、請求項15に記載の機械可読記録媒体。
【発明の概要】
【発明が解決しようとする課題】
【0004】
様々な実施形態は、ネットワークトポロジを知ることに関心があるノードが、ネットワーク内の他のノードを発見できるようにする発見プロトコルを提供する。発見プロトコルは、トポロジ発見メッセージおよびトポロジ問合せメッセージを含むことができる。ノードは、電源投入時に、定期的な間隔で、またはネットワークトポロジ内の変更を検出すると、トポロジ発見メッセージを発行することができる。トポロジ発見メッセージは、ネットワーク上のすべてのノード、またはノードのサブセットにブロードキャストすることができ、ネットワークへの発行ノードを特定することができる。いくつかの実施形態では、たとえば、P1905.1準拠デバイスについて第1のタイプのトポロジ発見メッセージ、およびIEEE 802.1D準拠デバイスについて第2のタイプのレガシー発見メッセージなどの、複数のタイプのトポロジ発見メッセージを実質的に同時に発行することができる。
【0005】
ネットワークトポロジのさらなる詳細を入手することに関心があるネットワーク上のノードは、トポロジ問合せメッセージを発行することができる。トポロジ問合せメッセージを特定のノード(トポロジ発見メッセージを通じて知られる)に送信して、受信側ノードの近隣ノードに関する応答を受信側ノードに要求することができる。ある実施形態では、トポロジ問合せは1回限りの要求であってもよく、受信側ノードは単一の応答を提供することができる。代替の実施形態では、トポロジ問合せはサブスクリプション要求でもよく、受信側ノードがネットワークトポロジ内の変更を検出すると、受信側ノードは応答を提供することができる。どちらの場合でも、問合せ側ノードは、問合せ側ノードが所望の深さレベルにネットワークトポロジを決定付けることができるように、他のノードを発見し、発見されたノードにトポロジ問合せメッセージを送信するために応答データを使用することができる。
【課題を解決するための手段】
【0006】
いくつかの実施形態では、方法は、複数のノードを含むネットワーク内の第1のノードで、1つまたは複数の発見メッセージを受信するステップであって、1つまたは複数の発見メッセージが第1のノードに少なくとも1つの近隣ノードを特定する、受信するステップと、第1のノードによって、トポロジ問合せメッセージを発行するステップと、第1のノードによって、少なくとも1つの応答ノードから、トポロジ問合せメッセージへの少なくとも1つの応答メッセージを受信するステップであって、少なくとも1つの応答メッセージが、少なくとも1つの応答ノードにゼロ以上の近隣ノードを特定するデータを含む、受信するステップと、第1のノードによって、少なくとも1つの応答メッセージ内で特定された1つまたは複数の近隣ノードに1つまたは複数のトポロジ問合せメッセージを発行するステップとを含む。
【0007】
いくつかの実施形態では、トポロジ問合せメッセージがトポロジサブスクリプションメッセージを含み、トポロジサブスクリプションメッセージに応答して、ネットワークトポロジの変更を検出すると、受信ノードがトポロジ通知メッセージを発行する。
【0008】
いくつかの実施形態では、トポロジサブスクリプションメッセージは、要求されたサブスクリプション期間を含む。
【0009】
いくつかの実施形態では、方法は、要求された期間を修正するステップと、トポロジサブスクリプションメッセージへの応答を送信するステップであって、応答が、修正済みの要求された期間を含む、送信するステップとをさらに含む。
【0010】
いくつかの実施形態では、方法は、修正済みの要求された期間を、サブスクリプション終了を示す値に設定することに基づいて、サブスクリプションを終了するステップをさらに含む。
【0011】
いくつかの実施形態では、1つまたは複数の発見メッセージは、第1のネットワーク発見プロトコルについての第1の発見メッセージと、第2のネットワーク発見プロトコルについての第2の発見メッセージとを含み、第1の発見メッセージおよび第2の発見メッセージは実質的に同時に発行される。
【0012】
いくつかの実施形態では、方法は、第1のノードによって、第1の発見メッセージの受信と第2の発見メッセージの受信がないこととに基づいて、少なくとも1つの近隣ノードと第1のノードとの間のブリッジのタイプを推測するステップをさらに含む。
【0013】
いくつかの実施形態では、第1のノードによって発行または受信されたメッセージがTLV(タイプ、長さ、および値)部分を含み、方法は、メッセージが最大サイズを超えることを決定するステップと、メッセージが最大送信単位サイズを超えることを決定するステップに応答して、メッセージを複数の送信単位に断片化するステップであって、TLV部分の境界で行われる、断片化するステップとをさらに含む。
【0014】
いくつかの実施形態では、方法は、トポロジ発見メッセージまたはトポロジ応答メッセージを、あらかじめ定められた、または設定可能なレートに調節する(throttle)ステップをさらに含む。
【0015】
いくつかの実施形態では、方法は、トポロジ発見メッセージまたはトポロジ応答メッセージを、あらかじめ定められた、または設定可能なメッセージ量にまとめるステップをさらに含む。
【0016】
いくつかの実施形態では、方法は、複数のノードを含むネットワーク内の第1のノードによって、1つまたは複数の発見メッセージを発行するステップであって、1つまたは複数の発見メッセージが、複数のノード内の1つまたは複数の近隣ノードに第1のノードを特定する、発行するステップと、第1のノードによって、トポロジ問合せメッセージを受信するステップと、第1のノードによって、トポロジ問合せメッセージへの応答メッセージを発行するステップであって、応答メッセージが、第1のノードにゼロ以上の近隣ノードを特定するデータを含む、発行するステップとを含む。
【0017】
いくつかの実施形態では、第1のノードの電源投入、第1のノード上のタイマーの期限切れ、または第1のノードによるトポロジ変更の検出に応答して、1つまたは複数の発見メッセージが第1のノードによって発行される。
【0018】
いくつかの実施形態では、第1のノードは、第1のノードの電源投入後、あらかじめ定められた、または設定可能な期間の間、1つまたは複数の発見メッセージの送信を遅延させる。
【0019】
いくつかの実施形態では、ネットワークデバイスは、複数のネットワークインターフェースと、複数のネットワークインターフェースに結合されたトポロジ発見ユニットとを備え、トポロジ発見ユニットが、1つまたは複数の発見メッセージを受信することであって、1つまたは複数の発見メッセージがネットワークデバイスに少なくとも1つの近隣ノードを特定する、受信することと、トポロジ問合せメッセージを発行することと、少なくとも1つの応答ノードから、トポロジ問合せメッセージへの少なくとも1つの応答メッセージを受信することであって、少なくとも1つの応答メッセージが少なくとも1つの応答ノードに対してゼロ以上の近隣ノードを特定するデータを含む、受信することと、少なくとも1つの応答メッセージ内で特定された1つまたは複数の近隣ノードに1つまたは複数のトポロジ問合せメッセージを発行することとを行うように構成されている。
【0020】
いくつかの実施形態では、トポロジ問合せメッセージがトポロジサブスクリプションメッセージを含み、トポロジサブスクリプションメッセージに応答して、ネットワークトポロジの変更を検出すると、受信側ノードがトポロジ通知メッセージを発行する。
【0021】
いくつかの実施形態では、トポロジサブスクリプションメッセージは、要求されたサブスクリプション期間を含む。
【0022】
いくつかの実施形態では、少なくとも1つの応答メッセージが、修正済みの要求された期間を含む。
【0023】
いくつかの実施形態では、トポロジ発見ユニットは、要求された期間を、サブスクリプション終了を示す値に設定することに基づいて、サブスクリプションを終了するようにさらに構成されている。
【0024】
いくつかの実施形態では、1つまたは複数の発見メッセージは、第1のネットワーク発見プロトコルについての第1の発見メッセージと、第2のネットワーク発見プロトコルについての第2の発見メッセージとを含み、第1の発見メッセージおよび第2の発見メッセージは実質的に同時に発行される。
【0025】
いくつかの実施形態では、トポロジ発見ユニットは、第1の発見メッセージの受信と第2の発見メッセージの受信がないこととに基づいて、少なくとも1つの近隣ノードとネットワークデバイスとの間のブリッジのタイプを推測するようにさらに構成されている。
【0026】
いくつかの実施形態では、トポロジ発見ユニットによって発行または受信されたメッセージがTLV(タイプ、長さ、および値)部分を含み、トポロジ発見ユニットは、メッセージが最大サイズを超えることを決定することと、メッセージが最大送信単位サイズを超えるという決定に応答してメッセージを複数の送信単位に断片化することであって、TLV部分の境界で行われる、断片化することとを行うように構成されている。
【0027】
いくつかの実施形態では、トポロジ発見ユニットは、トポロジ発見メッセージまたはトポロジ応答メッセージを、あらかじめ定められた、または設定可能なレートに調節するようにさらに構成されている。
【0028】
いくつかの実施形態では、トポロジ発見ユニットは、トポロジ発見メッセージまたはトポロジ応答メッセージを、あらかじめ定められた、または設定可能なメッセージ量にまとめるようにさらに構成されている。
【0029】
いくつかの実施形態では、命令を格納した1つまたは複数の機械可読記憶媒体であって、1つまたは複数のプロセッサによって実行されると、1つまたは複数のプロセッサに、複数のノードを含むネットワーク内の第1のノードによって、1つまたは複数の発見メッセージを受信するステップであって、1つまたは複数の発見メッセージが第1のノードに少なくとも1つの近隣ノードを特定する、受信するステップと、第1のノードによって、トポロジ問合せメッセージを発行するステップと、第1のノードによって、少なくとも1つの応答ノードから、トポロジ問合せメッセージへの少なくとも1つの応答メッセージを受信するステップであって、少なくとも1つの応答メッセージが少なくとも1つの応答ノードにゼロ以上の近隣ノードを特定するデータを含む、受信するステップと、第1のノードによって、少なくとも1つの応答メッセージ内で特定された1つまたは複数の近隣ノードに1つまたは複数のトポロジ問合せメッセージを発行するステップとを含む動作を実行させる。
【0030】
いくつかの実施形態では、トポロジ問合せメッセージがトポロジサブスクリプションメッセージを含み、トポロジサブスクリプションメッセージに応答して、ネットワークトポロジの変更を検出すると、受信側ノードがトポロジ通知メッセージを発行する。
【0031】
いくつかの実施形態では、トポロジサブスクリプションメッセージは、要求されたサブスクリプション期間を含む。
【0032】
いくつかの実施形態では、動作は、要求された期間を修正するステップと、トポロジサブスクリプションメッセージへの応答を送信するステップであって、応答が、修正済みの要求された期間を含む、送信するステップとをさらに含む。
【0033】
いくつかの実施形態では、動作は、修正済みの要求された期間を、サブスクリプション終了を示す値に設定することに基づいて、サブスクリプションを終了するステップさらに含む。
【0034】
いくつかの実施形態では、1つまたは複数の発見メッセージは、第1のネットワーク発見プロトコルについての第1の発見メッセージと、第2のネットワーク発見プロトコルについての第2の発見メッセージとを含み、第1の発見メッセージおよび第2の発見メッセージは実質的に同時に発行される。
【0035】
いくつかの実施形態では、動作は、第1のノードによって、第1の発見メッセージの受信と第2の発見メッセージの受信がないこととに基づいて、少なくとも1つの近隣ノードと第1のノードとの間のブリッジのタイプを推測するステップをさらに含む。
【0036】
いくつかの実施形態では、第1のノードによって発行または受信されたメッセージがTLV(タイプ、長さ、および値)部分を含み、動作は、メッセージが最大サイズを超えることを決定するステップと、メッセージが最大送信単位サイズを超えることを決定するステップに応答して、メッセージを複数の送信単位に断片化するステップであって、TLV部分の境界で行われる、断片化するステップとをさらに含む。
【0037】
いくつかの実施形態では、動作は、トポロジ発見メッセージまたはトポロジ応答メッセージを、あらかじめ定められた、または設定可能なレートに調節するステップをさらに含む。
【0038】
いくつかの実施形態では、動作は、トポロジ発見メッセージまたはトポロジ応答メッセージを、あらかじめ定められた、または設定可能なメッセージ量にまとめるステップをさらに含む。
【0039】
添付の図面を参照することによって、本実施形態がより良く理解され、多数の目的、特徴、および利点が当業者にとって明らかになるであろう。
【発明を実施するための形態】
【0041】
本明細書は、「一実施形態(one embodiment)」または「ある実施形態(an embodiment)」への参照を含む。「一実施形態では(in one embodiment)」または「ある実施形態では(an embodiment)」という語句の出現は、必ずしも同じ実施形態を指すものではない。特定の機能、構造、または特徴は、本開示と一致する任意の適切な方法で組み合わせることができる。
【0042】
様々なユニット、回路、または他のコンポーネントは、1つのまたは複数のタスクを実行する「ように構成されている(configured to)」ものとして説明または特許請求され得る。そのような文脈では、「ように構成されている」は、ユニット/回路/コンポーネントが、動作の間にそれらのタスクを実行する構造(たとえば、回路)を含むことを表すことによって、構造を表現するために使用される。したがって、ユニット/回路/コンポーネントは、たとえ特定のユニット/回路/コンポーネントが現在動作していない(たとえば、電源が入っていない)場合でも、タスクを実行するように構成されていると言うことができる。「ように構成されている」という言語とともに使用されるユニット/回路/コンポーネントは、たとえば、回路、動作を実装するために実行可能なプログラム命令を格納するメモリなどのハードウェアを含む。さらに、「ように構成されている」は、問題のタスク(複数)を実行することができる方法で動作するために、ソフトウェアおよび/またはファームウェア(たとえば、FPGAまたはソフトウェアを実行する汎用プロセッサ)によって操作される、包括的な構造(たとえば、包括的な回路)を含むことができる。
【0043】
「第1の(first)」、「第2の(second)」などの用語は、それらが先行する名詞のラベルとして使用され、任意のタイプの順序(たとえば、空間的、時間的、論理的など)を含意するものではない。たとえば、P1905.1準拠ネットワークでは、「第1の」および「第2の」メッセージという用語は、任意の2つのメッセージを指すために使用することができる。言い換えれば、「第1の」および「第2の」メッセージは、0および1の論理的な出現に限定されない。
【0044】
「に基づく(based on)」という用語は、決定に影響を及ぼす1つまたは複数の要因について説明するために使用される。この用語は決定に影響を及ぼし得る追加の要因を排除するものではない。すなわち、決定はそれらの要因のみに基づくか、それらの要因に少なくとも部分的に基づく。「Bに基づいてAを決定する(determine A based on B)」という語句を考える。BはAの決定に影響を及ぼす要因であってもよいが、そのような語句は、Aの決定がCにも基づいていることを排除しない。他の例では、AはBのみに基づいて決定されてもよい。
【0045】
以下の記述は、例示的なシステム、方法、技法、命令シーケンス、および本発明の主題の技法を具現化するコンピュータプログラム製品を含む。しかしながら、説明される実施形態は、これらの特定の詳細なしに実施することができることが理解されよう。たとえば、ある実施形態では、トポロジ発見機構は、ワイヤレスローカルエリアネットワーク(WLAN)デバイス(たとえば、IEEE 802.11nデバイス)、電力線ネットワークデバイス(たとえば、ホームプラグAVデバイス)、およびイーサネット(登録商標)デバイスを備えるハイブリッド通信ネットワークに実装することができるが、他の実施形態では、トポロジ発見機構は、他の標準/プロトコル(たとえば、WiMAXなど)を実装する他の適切なタイプのネットワークデバイスを備えることができるハイブリッド通信ネットワークに実装することができる。他の例では、説明を曖昧にしないために、よく知られている命令インスタンス、プロトコル、構造、および技法は詳細に示されていない。
【0046】
ハイブリッド通信ネットワークは、典型的には、異なるネットワーク技術および通信媒体にわたって、通信ネットワーク(異なる通信プロトコルをサポートする)を相互接続することによって形成される。収束デジタルホームネットワーク(CDHN)は、そのようなハイブリッドネットワークの一例であるが、他の多くのタイプのハイブリッドネットワークが存在する。ハイブリッド通信ネットワークは、複数のネットワーキング技術にわたって動作するように構成されたマルチインターフェース通信デバイス(「ハイブリッドデバイス」)、ならびに従来型の、単一のインターフェース通信デバイス(「レガシーデバイス」)を備えることができる。ハイブリッドデバイスおよびレガシーデバイスが、ハイブリッド通信ネットワーク内の他のデバイスにその存在を公表するために、トポロジ発見および他の情報交換プロトコルを実装することが望ましい。適切なパケットルーティングのために、ならびに省電力化およびその他の最適化を可能にするために、ネットワーク上のデバイスは、ハイブリッド通信ネットワークのトポロジを認識する必要がある。既存のトポロジ発見技法は、ネットワークパラメータの手動構成、またはユーザにとって複雑すぎる場合があるトポロジ情報の明示的な規定に依存し得る。
【0047】
ハイブリッド通信ネットワーク(たとえば、CDHN)内のトポロジ発見およびメッセージ構造についての様々な実施形態が開示されている。以下の開示は、理解を容易にするために、P1905.1準拠ネットワークおよびデバイスに関して説明されるが、開示された実施形態は、他のタイプのネットワークおよび技術に適用することができる。ハイブリッド通信ネットワークは、異種ネットワーキング技術の利用およびインターフェースを可能にすることができる。例示的な異種ネットワーキング技術には、特に、電力線ネットワーク(IEEE P1901)、WiFi(IEEE 802.11)、イーサネット(登録商標)(IEEE 802.3)、およびMoCA 1.1がある。ハイブリッドデバイスは、任意のインターフェース(たとえば、上側のプロトコル層または基盤となるネットワーク技術)から到着するパケットの送信のための、動的なインターフェース選択が可能でよい。また、エンドツーエンドサービス品質(QOS)をサポートすることができる。いくつかの実施形態では、ハイブリッド通信ネットワークは別のネットワーク(たとえば、サービスプロバイダによって提供されるLAN)とインターフェースすることができる。本明細書に記載のトポロジ発見機構は、デバイスが、ネットワーク全体(またはネットワークのサブセット)の接続のためのトポロジを決定することを可能にすることができる。さらに、本明細書に記載のメッセージ構造は、断片化の取扱いを可能にして、メッセージの概括的な情報(たとえば、送信元インターフェースアドレス、宛先インターフェースのアドレスなど)を提供することを可能にすることができる。そのようなメッセージ構造は、他のタイプのプロトコルのうち、トポロジ発見、セキュリティ、およびネットワーク構成で使用することができる。
【0048】
特定の実施形態では、開示されたトポロジ発見プロトコルは、デバイス(たとえば、P1905.1準拠のデバイス)が、CDHNなどのハイブリッドネットワーク内の他のデバイス(たとえば、P1905.1準拠デバイス、レガシーデバイスなど)を発見することを可能にすることができる。トポロジ発見プロトコルは、デバイスがトポロジデータベースをポピュレートすることを可能にすることができる。たとえば、トポロジデータベースは、P1905.1トポロジデータベースでよい。また、トポロジ発見プロトコルは、ネットワークトポロジ内の変更があった場合にトポロジデータベースの更新を可能にすることができる。
【0049】
様々な実施形態では、トポロジ発見プロトコルは、デバイスが、デバイスによって到達可能なデバイスはどのデバイスかを決定することを可能にすることができ、ひいては、デバイス(たとえば、デバイスのマッパー)が、より完全なネットワークトポロジを推測することができる。また、プロトコルは、デバイスが、他のデバイスによって、ネットワークトポロジ内のあらゆる変更を通知されるようにすることができる。
【0050】
図1は、ハイブリッド通信ネットワーク100内のネットワークトポロジを決定するための例示的なシステムを示すブロック図である。上述のように、ハイブリッド通信ネットワーク100は、様々なネットワーキング標準、およびワイヤレスまたは様々なワイヤード媒体(電力線、同軸ケーブル、シールドなしツイストペア電話ケーブル、CAT5シールドありツイストペアケーブルなど)を介する動作に基づいて、1つまたは複数の通信プロトコル(たとえば、WLAN、ホームプラグAV、イーサネット(登録商標)など)を実装する通信デバイス(たとえば、ハイブリッドデバイス、ブリッジ、レガシーデバイスなど)を備えることができる。いくつかの実装形態では、ハイブリッドデバイスは、複数のタイプのネットワークインターフェースを介する通信機能に加えて、複数のタイプのネットワークインターフェースにわたるブリッジング機能を備える電子デバイスでよい。そのようなハイブリッドデバイスは、「ハイブリッドブリッジ」と呼ばれることもある。ハイブリッドデバイスはまた、複数のタイプのネットワークインターフェースを介する通信機能を備えるが、ブリッジング機能を備えていない電子デバイスでよい。そのようなハイブリッドデバイスは、「ハイブリッド通信デバイス」と呼ばれることもある。いくつかの実装形態では、レガシーデバイスは、通信機能に加えてブリッジング機能を備える電子デバイスでよく、本明細書では「レガシーブリッジ」と呼ばれる場合もある。また、レガシーデバイスは、通信機能を備えるが、ブリッジング機能を備えていない電子デバイスでよい。そのようなレガシーデバイスは、「レガシー通信デバイス」と呼ばれることもある。
図1では、例示的なハイブリッド通信ネットワーク100は、2つのネットワークセグメント120および122を備える。ネットワークセグメント120は、ハイブリッドデバイス102および116、ならびにレガシーデバイス106を備える。ネットワークセグメント122は、ハイブリッドデバイス104およびレガシーデバイス108を備える。ブリッジ110は、ネットワークセグメント120とネットワークセグメント122とを結合する。ブリッジ110は、ハイブリッドブリッジまたはレガシーブリッジのいずれでもよい。ハイブリッドデバイス102は、トポロジ発見ユニット112およびマッパーユ
ニット114を含む。同様に、
図1には示されていないが、ハイブリッドデバイス104および116は、それら自体のそれぞれのデバイストポロジ発見ユニットおよびマッパーユニットも任意で含むことができる。いくつかの実施形態では、ハイブリッドデバイス102、104、および/または116は、ハイブリッドブリッジでもよく、ハイブリッド通信デバイスでもよい。同様に、レガシーデバイス106および108は、レガシーブリッジでもよく、レガシー通信デバイスでもよい。
【0051】
いくつかの実装形態では、ハイブリッドデバイス102、104、および116は複数の通信インターフェースを含むことができ、複数の通信インターフェースの各々がハイブリッドデバイスを異なるタイプの通信ネットワークに結合する。たとえば、ハイブリッドデバイス102は、ハイブリッドデバイス102が電力線通信ネットワーク、イーサネット(登録商標)、およびWLANにそれぞれ接続することを可能にする、3つの通信インターフェース(たとえば、電力線インターフェース、イーサネット(登録商標)インターフェース、およびワイヤレスローカルエリアネットワーク(WLAN)インターフェース)を含むことができる。
図1は、ハイブリッドデバイス102、104および116のための複数の通信インターフェースを明示的に示していないが、ハイブリッドデバイス102、104、および116は、ハイブリッドデバイスを複数の通信ネットワークに結合する複数の通信インターフェースを備えることができる点に留意されたい。レガシーデバイスは、典型的には、対応する通信ネットワークを介して通信するための通信インターフェースを1つだけ備える。たとえば、レガシーデバイス106および108は、イーサネット(登録商標)を介して通信するためのイーサネット(登録商標)インターフェースを備えることができる。
【0052】
本明細書に記載のいくつかの実装形態では、2段階のトポロジ発見プロトコル(two stage topology discovery protocol)を使用することができる。2段階のトポロジ発見プロトコルは、デバイスが、ハイブリッド通信ネットワーク100内の他のノードにトポロジ発見メッセージを発行することによって、それらの存在を発表する第1の段階と、ネットワークトポロジを決定することに関心のあるデバイスが、ハイブリッド通信ネットワーク100内の選択されたノードにトポロジ問合せメッセージを発行する第2の段階とを含むことができる。マッパーユニット114は、トポロジデータベース内にトポロジマップを構築するために、トポロジ問合せメッセージに応答して取得された情報を使用することができる。このようにして、第1の段階の間に、いくつかまたはすべてのハイブリッドデバイス102、104、および116は、ハイブリッド通信ネットワーク100内のそれらの存在を公表するために、トポロジ発見メッセージをブロードキャストすることができる。たとえば、ハイブリッドデバイス116は、ハイブリッド通信ネットワーク100内のその存在をハイブリッドデバイス102および104に発表するために、ハイブリッドデバイス116の識別子を含むトポロジ発見メッセージをブロードキャストすることができる。
【0053】
いくつかの実施形態では、ハイブリッド通信ネットワーク100は、P1905.1準拠デバイスを含む。そのような実施形態では、2段階のトポロジ発見プロトコルは、第1の段階の間に使用されるマルチキャスト発見機構、および第2の段階の間に使用されるユニキャストトポロジ発見機構を含むことができる。ユニキャストトポロジ発見機構は、本明細書に記載されているように、トポロジ質問/応答プロシージャ、および/またはトポロジサブスクリプション/通知プロシージャを含むことができる。トポロジ発見プロトコルの第2の段階の間、ユニキャストトポロジ発見機構は、P1905.1マッパー(たとえば、ハイブリッドデバイス102のマッパーユニット114)が、別のP1905.1準拠デバイスの近隣情報を取得することを可能にすることができる。たとえば、P1905.1マッパーは、近隣デバイスの近隣に関するトポロジ情報を取得するために、近隣P1905.1準拠デバイスの各々にトポロジ問合せまたはトポロジサブスクリプション要求メッセージを送信することによって(トポロジ応答またはトポロジ通知メッセージを介して)、より完全なネットワークマップを構築することができる。トポロジ質問/応答プロシージャは、デバイスが、別のデバイスについての情報、ならびに別のデバイスの近隣を取得することを可能にすることができる。また、いくつかの実装形態では、デバイスは、デバイスが、別のデバイスでトポロジ内のあらゆる変更の通知を受信するためにサブスクライブすることを可能にすることができる、トポロジサブスクリプション/通知プロシージャを実装することができる。トポロジ内の変更を検出すると、サブスクライバデバイスにメッセージ(たとえば、トポロジ通知メッセージ)が送信され得る。
【0054】
一実施形態では、トポロジ発見プロトコルの第1の段階の間、デバイスは、そのインターフェースの各々の上で複数のタイプのマルチキャストメッセージを送信することができる。たとえば、P1905.1準拠デバイスは、そのインターフェースの各々の上でレガシー発見メッセージおよびトポロジ発見メッセージを送信することができる。いくつかの実施形態では、レガシー発見メッセージは、ハイブリッドネットワーク内で到達可能であり、P1905.1プロトコルを実装していない場合がある、レガシーデバイスについての情報を追加するために使用することができる。また、以下でさらに説明するように、レガシー発見メッセージは、トポロジ発見メッセージと組み合わせて、ブリッジが、レガシー発見メッセージかトポロジ発見メッセージのどちらかを転送するかどうかに少なくとも部分的に基づいて、P1905.1デバイスとハイブリッド通信ネットワーク上の他のデバイスとの間のブリッジのタイプを決定するために使用することができる。いくつかの実施形態では、レガシー発見メッセージは、最寄りのLLDP(リンク層発見プロトコル)ブリッジマルチキャストアドレスに送信され得るLLDP準拠の発見メッセージである。トポロジ発見メッセージは、P1905.1マルチキャストアドレスなどの、あらかじめ定められたマルチキャストアドレスに送信することができる。レガシー発見メッセージおよびトポロジ発見メッセージは、異なるタイプのデバイスによって異なる方法で転送することができる。たとえば、レガシー発見メッセージは、P1905.1準拠ブリッジおよびIEEE 802.1-D準拠レガシーブリッジによって転送することができる。トポロジ発見メッセージは、P1905.1準拠ブリッジではなく、場合によってはIEEE 802.1-D準拠レガシーブリッジによって転送することができる。
【0055】
P1905.1準拠デバイス(たとえば、ハイブリッドデバイス102のマッパーユニット114)は、近隣デバイスの近隣に関するトポロジ情報を取得するために、トポロジ問合せメッセージまたはトポロジサブスクリプション要求メッセージを近隣のP1905.1準拠デバイスに送信することによって(たとえば、トポロジ問合せメッセージまたはトポロジサブスクリプション要求メッセージに応答して近隣デバイスによって送信されたトポロジ応答メッセージまたはトポロジ通知メッセージを介して)、より完全なネットワークマップを構築することができる。P1905.1準拠デバイスは、ネットワークトポロジ情報を所望の深さまで取得するために、トポロジ問合せメッセージまたはトポロジサブスクリプション要求メッセージを、近隣デバイスのP1905.1準拠の近隣のうちのいくつかまたはすべて、およびその他に送信することができる。いくつかの実装形態では、第1のデバイスは、「近隣」デバイスであると考えられるために、第2のデバイスに物理的に隣接している必要はない点に留意されたい。代わりに、第1のデバイスは、第1のデバイスと第2のデバイスが近隣であるために、第2のデバイスの少なくとも1つのインターフェースに「通信できるように隣接して配置されて」いればよい。特定の実施形態では、デバイスが別のP1905.1準拠デバイスによってブリッジを掛けられなくても到達可能であれば、そのデバイスは「近隣」である。別のP1905.1準拠デバイスによってブリッジされた、P1905.1準拠デバイスまたはレガシーデバイスなどのいくつかのデバイスは、到達可能であるが近隣ではない場合がある。
【0056】
いくつかの実施形態では、マルチキャスト発見プロシージャ、トポロジ問合せ/応答プロシージャ、およびトポロジサブスクリプション/通知プロシージャは、P1905.1準拠デバイスがネットワークトポロジ情報を発見、構築、および/または維持することを可能にすることができる。様々な機構またはプロシージャは、トポロジ発見メッセージ(マルチキャスト)、レガシー発見メッセージ(マルチキャスト)、トポロジ問合せメッセージ(ユニキャスト)、トポロジ応答メッセージ(ユニキャスト)、トポロジサブスクリプション要求メッセージ(ユニキャスト)、およびトポロジ通知メッセージ(ユニキャスト)のうちの1つまたは複数を利用することができる。上記に挙げたメッセージについてのさらなる詳細、ならびに、ハイブリッド通信ネットワーク100におけるハイブリッドデバイス内のデバイスおよびトポロジ発見ユニット112によるメッセージの使用は、以下で
図2〜
図4を参照して提供される。
【0057】
図2は、ハイブリッド通信ネットワーク内のトポロジを決定するための方法200における例示的な動作を示す流れ図である。方法200は、ハイブリッド通信ネットワーク(たとえば、CDHN)内のデバイスが1つまたは複数のトポロジ発見メッセージを発行するブロック202で開始する。メッセージは、1つまたは複数のメッセージTLV(タイプ、長さ、値)部分を含むことができる。一実施形態では、P1905.1準拠デバイスは、そのすべてのインターフェース上で、P1905.1マルチキャストアドレス宛てにトポロジ発見メッセージを送信することができる。送信は、様々な理由で発生し得る。たとえば、トポロジ発見メッセージは、P1905.1準拠デバイスに電力が適用されると送信され得る。さらに、トポロジ発見メッセージは定期的に送信され得る。たとえば、トポロジ発見メッセージは、最後のトポロジ発見メッセージが送信されて一定の時間(たとえば、60秒)後に送信され得る。別の例を挙げると、トポロジ発見メッセージは、送信デバイスがトポロジ内の変更を検出すると送信され得る。トポロジ変更は、トポロジ問合せ応答メッセージにおいて受信された情報のうちのいずれかにおける変更によって表示することができる。トポロジ変更は、送信デバイスの近隣デバイスがもはや送信デバイスと通信することができないことを検出することに応答して、送信デバイスによって決定することもできる。第4の例として、トポロジ発見メッセージは、新しいデバイスのトポロジ発見メッセージがP1905.1準拠デバイスによって受信されると、P1905.1準拠デバイスによって送信され得る。いくつかの実施形態では、新しいデバイスからさらなるトポロジ発見メッセージを受信するP1905.1準拠デバイスは、それ自身のさらなるトポロジ発見メッセージの送信を、最後のトポロジ発見メッセージがP1905.1準拠デバイスによって送信されてから、一定時間(たとえば、60秒)が経過するまで延期する場合がある。本開示の便益を有する当業者は、他の実装形態に依存する機会も、トポロジ発見メッセージの送信をトリガし得ることを理解できるであろう。トポロジ発見メッセージは、いくつかの実施形態では、デバイスが初期化される(たとえば、電源投入またはリセット)と生成されて、一定期間にわたって一意であってもよい、セッションIDを
含むことができる。セッション識別子タイプTLVは、トポロジ発見メッセージに含むことができる。例示的なセッション識別子タイプTLVはTable 1(表1)に示されている。
【0059】
一実施形態では、P1905.1準拠デバイスは、トポロジ発見メッセージが送信される時はいつでも、そのすべてのインターフェース上で、レガシー発見メッセージを送信することができる。言い換えれば、P1905.1準拠デバイスは、すべてのP1905.1準拠デバイスのインターフェース上で、トポロジ発見メッセージとレガシー発見メッセージの両方を送信することができる。レガシー発見メッセージは、LLDPマルチキャストアドレスに送信された(LLDPイーサタイプを使用して)LLDPパケットを含むことができる。レガシー発見メッセージは、送信デバイスのP1905.1準拠デバイスIDを含むことができる。レガシー発見メッセージを伝達することができる例示的なイーサネット(登録商標)フレームヘッダ情報は、Table 2(表2)記載されている。
【0061】
一実施形態では、LLDPDU(リンク層発見プロトコルデータユニット)を形成するために、シャーシID TLV、ポートID TLV、有効期間TLV、およびLLDPDU TLVの終わりの、LLDP TLVを使用することができる。シャーシID TLVは、シャーシIDサブタイプを含むことができ、4-MACアドレスに設定することができる。シャーシIDは、P1905.1 MACアドレスに設定することができる。ポートID TLVは、ポートIDサブタイプを含むことができ、3(MACアドレス(IEEE 802))に設定することができる。ポートIDは、メッセージが送信されるインターフェースのMAC IDに設定することができる。有効期間TLVは、有効期間(TTL)値(たとえば、180秒)を含むことができる。
【0062】
一実施形態では、送信デバイスから1つまたは複数の受信デバイスにTLVを伝達するために、P1905.1メッセージコンテナを使用することができる。たとえば、宛先アドレスがユニキャストアドレスである場合、1つの受信デバイスにTLVを送信することができ、宛先アドレスがマルチキャストアドレスである場合、複数の受信デバイスにTLVを送信することができる。メッセージが大きすぎてイーサネット(登録商標)フレーム内に収まらない場合、複数のメッセージを形成するためにTLVの境界で複数の断片を作成することができる。Table 3(表3)は、メッセージが伝達されるイーサネット(登録商標)フレームヘッダの例を含む。
【0064】
Table 4(表4)は、例示的なP1905.1メッセージコンテナフォーマットを含む。
【0066】
Table 5(表5)は、次のように例示的なメッセージTLVの終了を含む。
【0068】
ブロック204で、第1のノードが、ブロック202で発行された1つまたは複数の発見メッセージを受信して、そのメッセージ内の情報を、第1のノード内に維持されているネットワークトポロジを更新するために使用することができる。いくつかの実施形態では、上述のマルチキャスト発見機構およびメッセージフォーマットは、P1905.1準拠デバイスが、可能な範囲で、トポロジ発見メッセージおよびレガシー発見メッセージの使用を通じて他のP1905.1準拠デバイスおよびレガシーデバイスの存在を発見することを可能にすることができる。レガシー発見メッセージは、トポロジ発見メッセージと組み合わせて、メッセージの送信機と受信機との間の1つまたは複数のレガシーブリッジのハイブリッドネットワークトポロジ内の存在の検出を助けるために使用することができる。P1905.1準拠デバイスは、そのインターフェースのうちの1つが、そのインターフェース上で、同じP1905.1準拠デバイスによって送信されるトポロジ発見メッセージとレガシー発見メッセージの両方を受信する場合、整合レガシーブリッジの仲介の存在なしに、別のP1905.1準拠デバイスを近隣として有することを推測することができる。P1905.1準拠デバイスは、そのインターフェース上で、他のP1905.1準拠デバイスによって送信されたトポロジ発見メッセージだけを受信して、そのデバイスからレガシー発見メッセージを受信しない場合、P1905.1準拠デバイスと別のP1905.1準拠デバイスとの間の1つまたは複数のレガシーブリッジの存在を推測することができる。レガシー発見メッセージが削除または破損された場合、P1905.1準拠デバイスは、実際にはレガシーブリッジが存在していないときに、P1905.1準拠デバイスと別のP1905.1準拠デバイスとの間にレガシーブリッジが存在するという不正な推測をする場合がある。それにもかかわらず、受信デバイスが続いて別のレガシー発見メッセージを受信して、不正確に推測されたレガシーブリッジを削除することによって、そのトポロジ情報を訂正するためにその情報を更新することができるので、定期的な間隔で両方のタイプのメッセージを送信することによって、P1905.1準拠デバイスが、レガシーブリッジが存在するという誤った推測を訂正することを可能にすることができ
る。
【0069】
ブロック206〜ブロック210は、P1905.1準拠デバイスがトポロジ情報を問い合わせて、トポロジ問合せメッセージおよびトポロジ応答メッセージの使用を通じて別のデバイスから取り出すことを可能にすることができる、トポロジ問合せ/応答プロシージャについて説明している。
【0070】
様々な実施形態では、ブロック206で、第1のノードがトポロジ問合せメッセージを発行する。トポロジ問合せメッセージは、あるP1905.1準拠デバイスから別のP1905.1準拠デバイスにいつでも送信することができる。本明細書に記載されるように、トポロジ問合せメッセージはユニキャストでよい。いくつかの実施形態では、トポロジ問合せメッセージ内にTLVが含まれる必要はない。トポロジ問合せメッセージは、送信デバイスのP1905.1準拠デバイスID、および問合せについての一意のトランザクションIDを含むことができる。問合せ側デバイスが、トポロジ問合せメッセージ内に含まれていたものと同じトランザクションIDを含むトポロジ応答メッセージを受信しない場合、トポロジ問合せメッセージを再送信することができる。
【0071】
ブロック208で、第1のノードが、トポロジ問合せメッセージへの1つまたは複数の応答を受信する。いくつかの実施形態では、トポロジ問合せメッセージを受信すると、P1905.1準拠デバイスは、トポロジ応答メッセージで応答することができる。いくつかの実施形態では、P1905.1準拠デバイスは、受信したトポロジ問合せメッセージにトポロジ応答メッセージで応答する。トポロジ問合せメッセージごとに、1つのトポロジ応答メッセージを送信することができる。トポロジ応答メッセージは、それが受信されたポートにかかわらず、任意のポート上で送信することができる。トポロジ応答メッセージは、トポロジ問合せメッセージ内で受信されたものと同じトランザクションID、送信デバイスのP1905.1準拠デバイスID、ならびに受信デバイスのポートごとにMACアドレスおよび媒体タイプ/ポートのサブタイプ、ならびにポートを介して到達可能な近隣レガシーデバイスおよび近隣P1905.1準拠デバイスのリストを含むことができる。近隣レガシーデバイスのリストは、近隣レガシーデバイスごとに、近隣デバイスのポートのMACアドレス、および近隣レガシーデバイスからの任意の種類のトラフィックが見られてからの秒数を含むことができる。近隣のP1905.1準拠デバイスのリストは、P1905.1準拠近隣デバイスごとに、近隣デバイスのP1905.1デバイスID、および近隣P1905.1デバイスからの任意の種類のトラフィックが見られてからの秒数を含むことができる。本明細書に記載されるように、トポロジ応答メッセージはユニキャストでよい。デバイス情報タイプTLV、ゼロまたは1つのレガシー近隣リストTLV、およびゼロまたは1つのP1905.1近隣リストTLVが、トポロジ応答メッセージ内に含まれ得る。Table 6(表6)は例示的なP1905.1準拠デバイス情報タイプTLVを含み、Table 7(表6)は例示的な媒体タイプを含み、Table 8(表6)は例示的なレガシー近隣リストTLVを含み、Table 9(表6)は例示的な近隣TLVを含む。
【0075】
いくつかの実施形態では、それぞれブロック206で発行されてブロック208で受信されたトポロジ問合せメッセージおよびトポロジ応答メッセージは、トポロジサブスクリプションメッセージおよびトポロジ通知メッセージでよい。トポロジサブスクリプションメッセージおよびトポロジ通知メッセージは、それに加えて、またはその代わりに、上述のトポロジ問合せメッセージおよびトポロジ応答メッセージでよい。トポロジサブスクリプション/通知プロシージャは、デバイスが、別のP1905.1準拠デバイスでトポロジ変更をサブスクライブすることを可能にすることができる。これは、ユニキャストメッセージを通じて達成することができ、トポロジサブスクリプション要求メッセージ、トポロジ通知メッセージ、およびトポロジ通知確認メッセージを含むことができる。P1905.1準拠デバイスは、最小数および最大数の同時サブスクリプションをサポートするように構成することができる。
【0076】
一実施形態では、トポロジサブスクリプション要求メッセージは、あるP1905.1準拠デバイスから別のP1905.1準拠デバイスにいつでも送信することができる。トポロジサブスクリプション要求メッセージは、要求されたサブスクリプション期間を含むことができる。サブスクリプション期間は修正することができる。たとえば、受信デバイスが、要求された期間よりも短い、または長い期間を割り当てて、修正されたサブスクリプション期間を含めることによって、トポロジ通知メッセージ内で修正を表示することができる。サブスクライバデバイスが、トポロジサブスクリプション要求メッセージに応答してトポロジ通知メッセージを受信しない場合、トポロジサブスクリプション要求メッセージを再送信することができる。サブスクリプションは、サブスクリプションID、送信デバイスのP1905.1デバイスID、および要求されたサブスクリプション期間(たとえば、数秒間)を含むことができる。新しいサブスクリプションIDは新しいサブスクリプションを作成することができ、一方既存のサブスクリプションIDの仕様は既存のサブスクリプションを修正することができる。さらに、サブスクリプションは、要求しているデバイスがターゲットデバイスでトポロジ変更をサブスクライブされるように確立することができる。サブスクライバデバイスは、修正またはキャンセルが所望されるサブスクリプションのサブスクリプションIDおよび修正されたサブスクリプション期間(たとえば、ゼロは、サブスクリプションをキャンセルするための0秒を表す)とともに、トポロジサブスクリプション要求メッセージを送信することによって、期間を修正することもでき、サブスクリプションをキャンセルすることもできる。通知サブスクリプション要求TLVは、メッセージに含まれ得る。例示的な通知サブスクリプション要求TLVは、Table 10(表7)に示されている。
【0078】
一実施形態では、トポロジサブスクリプション要求メッセージを受信するP1905.1準拠デバイスは、サブスクリプションが確立またはキャンセルされると、およびサブスクリプションの期間にわたって、トポロジ内の変更について、トポロジ通知メッセージを要求しているデバイスに送信することによって応答することができる。応答しているデバイスは、トポロジサブスクリプション要求メッセージ内で受信された、要求されたサブスクリプション期間を修正して、修正されたサブスクリプション期間をトポロジ通知メッセージに含めることができる。場合によっては、サブスクリプション要求は受け入れられないことがある。サブスクリプション要求の非受入れは、要求しているデバイスに送信された値(たとえば、ゼロ)によって表示することができる。デバイスは、サブスクライブしているデバイスに、サブスクリプションIDおよび適切に設定されたサブスクリプション期間とともに、トポロジ通知メッセージを送信することによって、既存のサブスクリプションをキャンセルまたは修正することができる。サブスクリプションのキャンセルは、トポロジ通知メッセージ内の値(たとえば、ゼロの期間を表すゼロ)によって表示することができる。いくつかの実施形態では、デバイスは、トポロジ内の変更が検出されるとトポロジ通知メッセージをサブスクライブしているデバイスに送信することができ、トポロジ応答メッセージ内で送信される任意の情報における変更によって表示することができる。デバイスが、トポロジ通知メッセージに応答してトポロジ通知確認メッセージ受信しない場合、一定回数までメッセージを再送信することができる。キャンセルを受信後、再サブスクライブする前に一定期間待つ必要はない。サブスクリプションの再開は、同じサブスクリプションIDでサブスクリプション要求を送信することによって実行することができる。期限切れまたはキャンセルの後、要求しているデバイスは、新しいサブスクリプションIDで新しいサブスクリプションを再要求することができる。
【0079】
トポロジ通知メッセージは、サブスクリプションの期間およびデバイスの現在のトポロジ状態を含むことができる。また、トポロジ通知メッセージは、送信デバイスのP1905.1デバイスID、サブスクリプションのサブスクリプションID、残りの期間、ならびにデバイスのポートごとにMACアドレスおよび媒体タイプ/ポートのサブタイプ、ならびにポートを介して到達可能な近隣レガシーデバイスおよび近隣P1905.1準拠デバイスのリストを含むことができる。近隣レガシーデバイスのリストは、近隣レガシーデバイスごとに、近隣レガシーデバイスのポートのMACアドレス、および近隣レガシーデバイスからの任意の種類のトラフィックが見られてからの秒数を含むことができる。近隣のP1905.1準拠デバイスのリストは、近隣デバイスのP1905.1デバイスID、および近隣P1905.1準拠デバイスからの任意の種類のトラフィックが見られてからの秒数を含むことができる。トポロジ通知メッセージは、情報の現在の状態を含むことができる。様々な実施形態では、1つのデバイス情報タイプTLV、ゼロまたは1つのレガシー近隣リストTLV、およびゼロまたは1つのP1905.1近隣TLVが、メッセージに含まれ得る。
【0080】
いくつかの実施形態ではP1905.1準拠デバイスは、受信したトポロジ通知メッセージにトポロジ通知確認メッセージで応答することができる。通知を受信すると、期限切れの前にサブスクリプションを再開することができるように、要求しているデバイスは期間を格納することができる。トポロジ通知確認メッセージは、トポロジ通知メッセージ内で受信したものと同じトランザクションIDを含むことができる。一実施形態では、トポロジ通知確認メッセージ内にTLVが含まれる必要はない。
【0081】
ブロック210で、第1のノードは、トポロジ問合せメッセージまたはトポロジサブスクリプション要求メッセージを、ブロック208で受信された応答メッセージ内で特定された近隣ノードに発行することができる。第1のノードは、ネットワーク内の所望の深さまで、または新しいデバイスが発見されなくなるまでトポロジ問合せ処理を繰り返すことができる。
【0082】
上記のメッセージのうちのいくつかまたはすべては、ハイブリッドネットワークがトポロジ発見プロトコルメッセージで望まないフラッディングが起こることを回避するために、調節することもでき、まとめることもできる。たとえば、いくつかの実施形態では、メッセージをあらかじめ定められた、または設定可能なメッセージレートに調節することができる。一例を挙げると、ネットワークデバイスは、5秒ごとにたった1つのメッセージしか送信しないように構成することができる。さらに、ネットワークデバイスは、電源投入後のあらかじめ定められた、または設定可能な量の時間まで、トポロジ発見メッセージの発行を遅延させるように構成することができる。遅延は、同時に、またはほぼ同時に電源投入時に、すべてのデバイスが発見要求を同時に送信しないように、異なるデバイスで異なるように決定することができる。
【0083】
さらに、ネットワークデバイスは、必ずしもすべてのトポロジ変更がすぐに報告されないように、通知メッセージをまとめるように構成することができる。たとえば、ネットワークデバイスは、通知メッセージ内の20個のトポロジ変更をまとめるように構成することができる。言い換えれば、20個の変更が検出されるまで、検出されたトポロジ変更を報告しないようにノードを構成することができる。いくつかの実施形態では、まとめることは、タイマーと組み合わせることができる。たとえば、ノードは、20個の変更が検出されるか、報告された最後の変更後10秒が経過するかのいずれか早い方まで、検出されたトポロジ変更を報告しないように構成することができる。
【0084】
図3は、トポロジ発見プロシージャの一部の間に、ハイブリッド通信ネットワーク内のデバイスのサブセット間で交換され得る、例示的なメッセージのシーケンスを示すシーケンス図である。例示の目的で、ハイブリッド通信ネットワークは、ハイブリッドデバイス320、ハイブリッドデバイス324、ハイブリッドデバイス320とハイブリッドデバイス324との間のレガシーブリッジ322、ハイブリッドデバイス326、およびレガシーデバイス328を含むと仮定する。さらに、ハイブリッドデバイス324とハイブリッドデバイス326は近隣デバイスであり、レガシーデバイス328はハイブリッドデバイス326の近隣にあると仮定する。
【0085】
ある時点で、ハイブリッドデバイス324が、トポロジ発見メッセージが送信されるべきであると決定する。上述のように、決定は、電源投入イベント、トポロジ変更イベント、またはタイマー切れイベントに起因してもよい。シーケンスステップ302で、ハイブリッドデバイス324は、トポロジ発見メッセージをP1905.1マルチキャストアドレスに送信することができる。いくつかの実施形態では、ハイブリッドデバイス324は、トポロジ発見メッセージとほぼ同時に、レガシー発見メッセージを送信することもできる(シーケンスステップ304)。トポロジ発見メッセージおよびレガシー発見メッセージは、ハイブリッドデバイス324を特定するデータを含み、ハイブリッドネットワーク上のハイブリッドデバイス324の存在を発表する。いくつかの実施形態では、レガシー発見メッセージおよびトポロジ発見メッセージのどちらかまたは両方が、送信側ノード(この例では、ハイブリッドデバイス324)以外の任意のノード(たとえば、近隣ノード)を特定しない。
【0086】
レガシーブリッジ322が、トポロジ発見メッセージおよびレガシー発見メッセージを受信する。メッセージはマルチキャストメッセージでよいので、ハイブリッドネットワーク内の他のデバイスもメッセージを受信することができる。しかしながら、例を曖昧にすることを回避するために、レガシーブリッジ322とハイブリッドデバイス324との間の相互作用だけが、ハイブリッドデバイス324によって発行されるマルチキャスト発見メッセージに関して
図3に示されている。
【0087】
レガシーブリッジ322は、レガシー通信プロトコルに準拠して、レガシー発見メッセージの転送を拒否するように構成することができる。その結果、シーケンスステップ306で、トポロジ発見メッセージがハイブリッドデバイス320に転送されるが、レガシー発見メッセージは転送されない。
【0088】
トポロジ発見メッセージを受信して処理すると、ハイブリッドデバイス320は、ハイブリッドデバイス324がネットワークトポロジの一部であることを知ることができる。さらに、ハイブリッドデバイス320はトポロジ発見メッセージを受信してレガシー発見メッセージを受信しないので、ハイブリッドデバイス320は、ハイブリッドデバイス320とハイブリッドデバイス324との間にレガシーブリッジ(たとえば、レガシーブリッジ322)が存在すると推測することができ、その情報をネットワークトポロジのビューに追加することができる。レガシーブリッジ322がハイブリッドブリッジであれば、いくつかの実施形態では、トポロジ発見メッセージとレガシー発見メッセージの両方がハイブリッドブリッジによって転送される点に留意されたい。この場合、ハイブリッドデバイス320は、ハイブリッドデバイス320とハイブリッドデバイス324との間に、レガシーブリッジではなくハイブリッドブリッジの存在を推測することができる。
【0089】
この例の目的で、ハイブリッドデバイス320は、トポロジ発見メッセージまたはレガシー発見メッセージから得られるよりも、ネットワークトポロジについてのより多くの情報を維持するように構成されていると仮定する。シーケンスステップ308で、ハイブリッドデバイス320が、トポロジ問合せメッセージをハイブリッドデバイス324に送信する。トポロジ問合せメッセージの受信に応答して、シーケンスステップ310で、ハイブリッドデバイス324がトポロジ応答メッセージをハイブリッドデバイス320に送信する。トポロジ応答メッセージは、ハイブリッドデバイス324の近隣であるリストネットワークノード、および近隣のネットワークノードについての情報(たとえば、近隣のノードおよび近隣ノードのタイプを特定する情報)を含む。この例では、ハイブリッドデバイス326は近隣ノードのリストに含まれる。
【0090】
ハイブリッドデバイス320が応答を受信して、この例では、ハイブリッドデバイス326がネットワークトポロジの一部であることを決定する。シーケンスステップ312で、ハイブリッドデバイス320が、トポロジ問合せメッセージをハイブリッドデバイス326に送信する。それに応答して、シーケンスステップ314で、ハイブリッドデバイス326がトポロジ応答メッセージをハイブリッドデバイス320に送信する。トポロジ応答メッセージは、ハイブリッドデバイス326の近隣であるリストネットワークノード、および近隣ノードについての情報を含むことができる。この例では、リストはハイブリッドデバイス324とレガシーデバイス328とを含むことができる。ハイブリッドデバイス320が応答を受信して、それに応答して、ネットワークトポロジのビューに追加するために情報を使用することができる。この例では、ハイブリッドデバイス320はハイブリッドデバイス324についてすでに知っており、レガシーデバイス328についての情報をハイブリッドネットワークトポロジのビューに追加することができる。
【0091】
本開示の便益を有する当業者は、
図3に示された例示的なメッセージシーケンスは、ハイブリッドネットワーク内に発生し得るメッセージシーケンスの一例にすぎず、上記で説明したメッセージおよび方法を使用する他のシーケンスも可能であり、本発明の主題の範囲内であることを理解できるであろう。
【0092】
いくつかの実施形態では、上述の2段階のトポロジ発見プロトコルは、ステートレスプロトコルでよい。マルチキャストトポロジ発見メッセージおよびレガシー発見メッセージは、ハイブリッドネットワークトポロジ内の変更を詳述することなく、ハイブリッドネットワークトポロジ内で潜在的な変更が発生したことを発表するので、参加しているノードが通信状態を維持する必要はない。ハイブリッドネットワークトポロジについてのさらなる情報を取得することに関心があるノードだけが、ハイブリッドネットワークの現在のトポロジを取得するために、上述のようにトポロジ問合せメッセージを使用する必要がある。
【0093】
図4は、最大ペイロードサイズを超えるメッセージを断片化するための方法400における例示的な動作を示している。方法は、メッセージ(たとえば、上述のメッセージのうちの1つ)を受信することによって、ブロック402から開始する。ブロック404で、デバイスは、メッセージのサイズが最大ペイロードサイズを超えるかどうかを決定する。メッセージのサイズが最大ペイロードサイズを超えない場合、ブロック406でメッセージが送信される。メッセージのサイズが最大ペイロードサイズを超える場合、様々な実施形態では、P1905.1準拠デバイスがイーサネット(登録商標)フレームのペイロードを超えるメッセージを形成することを試みて、次いでブロック408でデバイスがメッセージを断片化する。断片化は、TLV境界でメッセージを複数の断片に分解することを含むことができる。送信デバイスは断片のシーケンスを連続して生成することができ、各断片はいくつかのTLVを含むことができるので、メッセージはイーサネット(登録商標)フレームのペイロードに適合することができる。送信デバイスは、同じシーケンス番号で生成されたメッセージごとに0から始まる一意の断片番号(たとえば、0、1、2、3)を割り当てることができる。送信デバイスは、最後の断片で、最後の断片インジケータフィールドを「1」に設定することができる。TLVは単一のメッセージに適合するには大きすぎる場合がある。たとえば、近隣リストTLVは、近隣リストTLVが最大メッセージサイズを超えるような、十分な数の個々の近隣TLVを有する場合がある。いくつかの実施形態では、単一のメッセージに適合するには大きすぎるTLVを同じタイプの複数のTLVに分割することができる。たとえば、50個の近隣TLVを有する近隣リストが、単一のメッセージとして送信するには大きすぎると仮定する。単一の近隣リストTLVを、それぞれが近隣TLVのオリジナルリストのサブセットを含む複数の近隣リストTLVに分割することができる。次いで、複数のより小さい近隣リストTLVを別々のメッセージ内で送信することができる。
【0094】
いくつかの実施形態では、受信デバイスがメッセージ断片を受信すると、受信デバイスはメッセージの再構築を試みることができる。受信デバイスは、すべての断片が受信された場合、さらなる処理のために、再構築されたメッセージを配信することができる。すべての断片が受信されたという表示は、最後の断片インジケータを有する断片を受信することを含むことができる。一実施形態では、受信デバイスは、失われた断片を無期限に待つことを回避するために、完全に再構築することができない受信した断片を廃棄する前に、タイムアウトを待つことができる。
【0095】
実施形態は、完全なハードウェア実施形態、完全なソフトウェア実施形態(ファームウェア、常駐ソフトウェア、マイクロコードなどを含む)、あるいは、本明細書ですべて概括的に「回路」、「モジュール」、または「システム」と呼ばれ得る、ソフトウェアとの態様とハードウェアの態様とを組み合わせた実施形態の形式をとることができる。さらに、本発明の主題の実施形態は、コンピュータ使用可能プログラムコードを媒体内に組み入れた、表現の任意の有形媒体で具現化されるコンピュータプログラム製品の形式をとることができる。説明された実施形態は、考えられるすべての変形形態が本明細書に列挙されているわけではないため、現在説明されているかどうかにかかわらず、実施形態に従って処理を実行するために、コンピュータシステム(または他の電子デバイス)をプログラミングするために使用され得る命令を格納した機械可読媒体を含み得る、コンピュータプログラム製品、またはソフトウェアとして提供され得る。機械可読媒体は、情報を機械(たとえば、コンピュータ)によって読み取ることができる形式(たとえば、ソフトウェア、処理アプリケーション)で格納または送信するための任意の機構を含む。機械可読媒体は、機械可読記憶媒体でもよく、機械可読信号媒体でもよい。機械可読記憶媒体は、これに限定されないが、たとえば、ディスク(固定式またはリムーバブル)、テープ、CD-ROM、DVD-ROM、CD-R、CD-RW、DVD-R、DVD-RW、あるいはブルーレイなどの磁気媒体または光媒体を含むことができる。記憶媒体は、RAM(たとえば、同期型ダイナミックRAM(SDRAM)、ダブルデータレート(DDR、DDR2、DDR3など)SDRAM、低電力DDR(LPDDR2など)SDRAM、ラムバスDRAM(RDRAM)、静的RAM (SRAM)など)、ROM、消去可能プログラム可能メモリ(たとえば、EPROMおよびEEPROM)、フラッシュメモリ、ユニバーサルシリアルバス(USB)インターフェースなどの周辺インターフェースを介してアクセスできる不揮発性メモリ(たとえば、フラッシュメモリ)などの、揮発性または不揮発性メモリ媒体をさらに含むことができる。記憶媒体は、微小電気機械システム(MEMS)、または電子命令の格納に適した他のタイプの有形媒体を含むことができる。機械可読信号媒体は、たとえば電子、光、音響、または他の形式の伝搬信号(たとえば、搬送波、赤外線信号、デジタル信号など)などの、コンピュータ可読プログラムコードを具現化した、伝搬されたデータ信号を含むことができる。機械可読信号媒体に組み入れられたプログラムコードは、これに限定されないが、ワイヤライン、ワイヤレス、光ファイバケーブル、RF、または他の通信媒体を含む、任意の適切な媒体を使用して送信され得る。
【0096】
本実施形態の動作を実行するためのコンピュータプログラムコードは、Java(登録商標)、Smalltalk、C++、または同等物などのオブジェクト指向プログラミング言語、および「C」プログラミング言語または類似のプログラミング言語などの従来の手続き型プログラミング言語を含む、1つまたは複数のプログラミング言語の任意の組合せで書くことができる。プログラミング言語は、完全にユーザのコンピュータ上で、部分的にユーザのコンピュータ上で、スタンドアロンソフトウェアパッケージとして、部分的にユーザのコンピュータ上かつ部分的にリモートコンピュータ上で、あるいは完全にリモートコンピュータまたはサーバ上で実行することができる。後者の場合、リモートコンピュータは、ローカルエリアネットワーク(LAN)、パーソナルエリアネットワーク(PAN)、またはワイドエリアネットワーク(WAN)を含む任意のタイプのネットワークを通じてユーザのコンピュータに接続されてもよく、外部コンピュータ(たとえば、インターネットサービスプロバイダを使用してインターネットを通じて)に接続されてもよい。
【0097】
図5は、ハイブリッド通信ネットワーク内のネットワークトポロジを決定するための機構を含む電子デバイス500の一実施形態のブロック図である。いくつかの実装形態では、電子デバイス500は、ラップトップコンピュータ、ネットブック、モバイル電話、電力線通信デバイス、携帯情報端末(PDA)、または、複数の通信ネットワークにわたって通信を交換するように構成されたハイブリッド通信ユニット(ハイブリッド通信ネットワークを形成する)を備える他の電子システムのうちの1つでよい。電子デバイス500は、プロセッサユニット502(複数のプロセッサ、複数のコア、複数のノードを含む、および/またはマルチスレッドなどを実装する可能性がある)を含む。電子デバイス500は、メモリユニット506を含む。メモリユニット506は、システムメモリ(たとえば、キャッシュ、SRAM、DRAM、ゼロコンデンサのRAM、ツイントランジスタRAM、eDRAM、EDO RAM、DDR RAM(登録商標)、EEPROM、NRAM、RRAM(登録商標)、SONOS、PRAMなどのうちの1つまたは複数)でもよく、上記ですでに説明された、機械可読媒体の可能な実現のうちの1つまたは複数でもよい。また、電子デバイス500は、バス510(たとえば、PCI、ISA、PCI-Express、HyperTransport(登録商標)、InfiniBand(登録商標)、NuBus、AHB、AXIなど)、ならびにワイヤレスネットワークインターフェース(たとえば、WLANインターフェース、ブルートゥース(登録商標)インターフェース、WiMAXインターフェース、ZigBee(登録商標)インターフェース、ワイヤレスUSBインターフェースなど)、およびワイヤードネットワークインターフェース(たとえば、イーサネット(登録商標)インターフェース、電力線通信インターフェースなど)のうちの少なくとも1つを含むネットワークインターフェース504を含む。いくつかの実装形態では、電子デバイス500は複数のネットワークインターフェースをサポートすることができ、ネットワークインターフェースの各々は、電子デバイス500を異なる通信ネットワークに結合するように構成されている。
【0098】
また、電子デバイス500は通信ユニット508を含む。通信ユニット508は、トポロジ発見ユニット512およびマッパーユニット514を備える。
図1〜
図3において上述したように、通信ユニット508は、ハイブリッド通信ネットワーク(たとえば、CDHN)のためのトポロジを決定するための機能を実装する。これらの機能のうちの任意の1つが部分的に(または全体的に)ハードウェアおよび/またはプロセッサユニット502に実装される。たとえば、機能は、特定用途向け集積回路、プロセッサユニット502に実装されたロジック、周辺デバイスまたはカード上のコプロセッサに実装することができる。さらに、具現化には、
図5に示されていない、より少数の、または追加の構成要素(たとえば、ビデオカード、オーディオカード、追加のネットワークインターフェース、周辺デバイスなど)が含まれることもある。プロセッサユニット502、メモリユニット506、およびネットワークインターフェース504は、バス510に結合されている。バス510に結合されているものとして図示されているが、メモリユニット506はプロセッサユニット502に結合されてもよい。
【0099】
実施形態は様々な実装形態および実施を参照して説明されているが、これらの実施形態は例示的なものであり、本発明の主題の範囲はそれらに限定されないことが理解されよう。概して、本明細書に記載のハイブリッド通信ネットワーク内のネットワークトポロジを決定するための機構は、任意のハードウェアシステムと一致する設備で実装することができる。多くの変形形態、修正形態、追加形態、および改良形態が可能である。
【0100】
本明細書に記載の構成要素、動作、または構造のために、複数のインスタンスが単一のインスタンスとして提供されてもよい。最後に、様々な構成要素、動作、およびデータストアの間の境界はいくぶん恣意的なものであり、特定の動作は、特定の例示的な構成の文脈に示されている。機能性の他の割当てが想定され、本発明の主題の範囲内に入ることができる。概して、例示的な構成において別個の構成要素として提示された構造および機能は、組み合わされた構造または構成要素として実装されてもよい。同様に、単一の構成要素として提示された構造および機能は、別個の構成要素として実装されてもよい。これらおよび他の変形形態、修正形態、追加形態、および改良形態は、本発明の主題の範囲内に入ることができる。
【0101】
上述の実施形態をかなり詳細に説明してきたが、上記の開示を完全に理解すれば、数多くの変形形態および修正形態が当業者には明らかになるであろう。以下の特許請求の範囲はすべてのそのような変形形態および変更形態を包含するように解釈されることが意図される。