(57)【要約】      （修正有）【課題】メッシュネットワーキングを使用したネットワークを構成することの複雑さを低減し、ユーザのニーズに合わせてネットワークを最適化し、ある区域（例えば、ユーザの家）のシームレスな無線カバレッジを可能にするシステム及び方法を提供する。【解決手段】ネットワーク分析を実行すること、ルータリンクパラメータを設定すること及びルーティング経路を管理することを含む拡張メッシュネットワーキング方法であって、スループットメトリック及びチャネル利用メトリックを含むルーティング経路評価のためのメトリックを利用する。また、ネットワークセグメントを決定すること及びネットワークセグメント間の通信のためのフォワーディング装置を指定することを含むセグメントテーブルアナウンスドメッシュプロトコル（Ｓｅｇｍｅｎｔ  Ｔａｂｌｅ  Ａｎｎｏｕｎｃｅｄ  Ｍｅｓｈ  Ｐｒｏｔｏｃｏｌ）を含む。【選択図】図１
2020195161.tif 000002
【特許請求の範囲】
【請求項１】
ローカルエリアネットワーク（ＬＡＮ）の第１のアクセスポイント（ＡＰ）に直接接続されたクライアント装置から受信したデータを前記第１のＡＰ装置から前記ＬＡＮのゲートウェイに送信するため、前記第１のＡＰ装置によって、前記第１のＡＰ装置から前記ＬＡＮの前記ゲートウェイまでの、且つ前記第１のＡＰ装置と前記ゲートウェイとの間の１以上の装置を介して複数の無線リンクの第１セット、及び前記第１経路内の２つの装置の間に１つの有線リンクを含む、第１経路を決定すること、
前記第１のＡＰ装置によって、前記第１のＡＰ装置から前記ＬＡＮの前記ゲートウェイまでの、且つ前記第１のＡＰ装置と前記ゲートウェイとの間の１以上の装置を介して複数の無線リンクの第２セットを含む、第２経路を決定すること、
前記第１のＡＰ装置によって、前記第１のＡＰ装置と前記第１セットの前記装置との間の第１無線リンクの第１スループットメトリックを決定すること、
前記第１のＡＰ装置によって、前記第１無線リンクの第１チャネル利用メトリックを決定すること、
前記第１のＡＰ装置によって、前記第１スループットメトリック及び前記第１チャネル利用メトリックを使って第１リンクメトリックを決定すること、
前記第１のＡＰ装置によって、前記第１リンクメトリックの合計として前記第１経路の第１経路コストを決定し、且つ前記第１セットの前記装置から受け取る、前記第１経路の１つの有線リンクと他の各無線リンクとのリンクメトリックの第１累積和を決定すること、
前記第１のＡＰ装置によって、前記第１のＡＰ装置と前記第２セットの第１装置との間の第２無線リンクの第２スループットメトリックを決定すること、
前記第１のＡＰ装置によって、前記第２無線リンクの第２チャネル利用メトリックを決定すること、
前記第１のＡＰ装置によって、前記第２スループットメトリック及び前記第２チャネル利用メトリックを使って第２リンクメトリックを決定すること、
前記第１のＡＰ装置によって、前記第２リンクメトリックの合計として前記第２経路の第２経路コストを決定し、且つ前記第２セットの前記第１装置から受け取る、前記第２経路の他の各無線リンクのリンクメトリックの第２累積和を決定すること、
前記第１のＡＰ装置によって、前記クライアント装置からデータを受信すること、
前記第１のＡＰ装置によって、前記第１経路コストが前記第２経路コストより低いことを決定すること、及び
前記第１のＡＰ装置によって、前記第１経路を介して前記データを前記ゲートウェイに送信すること、
を備える方法。
【請求項２】
前記第１経路の前記有線リンクの前記リンクメトリックはゼロに設定され、前記有線リンクはイーサネット（登録商標）リンクである、請求項１に記載の方法。
【請求項３】
前記第１スループットメトリック及び前記第１チャネル利用メトリックを使って前記第１リンクメトリックを決定することは、
前記第１のＡＰ装置によって、（ｉ）前記第１無線リンクに関連する無線チャネルが使用されていた第１時間と（ｉｉ）前記第１のＡＰ装置が前記無線チャネル上で送信する第２時間との間の第１差分を決定すること、
前記第１のＡＰ装置によって、（ｉｉｉ）前記第１無線リンクに関連する前記無線チャネル上で前記第１のＡＰ装置がアクティブになる第３時間で前記第１差分を割った分数を決定すること、
前記第１のＡＰ装置によって、１から前記分数を引いて前記第１チャネル利用メトリックを決定すること、及び
前記第１のＡＰ装置によって、前記第１スループットメトリック及び前記第１チャネル利用メトリックの積でスカラー値を除算して前記第１リンクメトリックを決定すること
を備える、請求項１に記載の方法。
【請求項４】
前記第１無線リンクの前記第１スループットメトリックは、前記第１セットの前記第１のＡＰ装置の物理層送信スループットの指数加重移動平均である、請求項１に記載の方法。
【請求項５】
前記第１無線リンクの前記第１リンクメトリックを決定することは、前記第１スループットメトリック、前記第１チャネル利用メトリック及び前記第１のＡＰ装置に関連付けられたサーマルスロットリング要因を使って、前記第１リンクメトリックを決定することを含む、請求項１に記載の方法。
【請求項６】
前記第１スループットメトリック、前記第１チャネル利用メトリック及び前記サーマルスロットリング要因を使って、前記第１リンクメトリックを決定することは、
（ｉ）前記第１無線リンクに関連する無線チャネルが使用されていた第１時間と（ｉｉ）前記第１のＡＰ装置が前記無線チャネル上で送信する第２時間との間の第１差分を決定すること、
前記第１のＡＰ装置によって、（ｉｉｉ）前記第１のＡＰ装置がアクティブになる第３時間で、前記第１差分と前記サーマルスロットリング要因との合計を割った分数を決定すること、
前記第１のＡＰ装置によって、１から前記分数を引いて前記第１チャネル利用メトリックを決定すること、及び
前記第１のＡＰ装置によって、前記第１スループットメトリック及び前記第１チャネル利用メトリックの積でスカラー値を除算して前記第１リンクメトリックを決定すること
を備える、請求項５に記載の方法。
【請求項７】
前記第１スループットメトリック、前記第１チャネル利用メトリック及び前記サーマルスロットリング要因を使って、前記第１リンクメトリックを決定することは、
（ｉ）前記第１無線リンクに関連する無線チャネルが使用されていた第１時間と（ｉｉ）前記第１のＡＰ装置が前記無線チャネル上で送信する第２時間との間の第１差分を決定すること、
前記第１のＡＰ装置によって、（ｉｉｉ）前記第１のＡＰ装置がアクティブになる第３時間で前記第１差分を割った分数を決定すること、
前記第１のＡＰ装置によって、１から前記分数を引いて前記第１チャネル利用メトリックを決定すること、及び
前記第１のＡＰ装置によって、前記第１スループットメトリック、前記第１チャネル利用メトリック及び前記サーマルスロットリング要因の積でスカラー値を除算して前記第１リンクメトリックを決定すること
を備える、請求項５に記載の方法。
【請求項８】
前記第１経路内の２つの装置間の無線リンクは、第１無線周波数の第１無線接続と前記第１無線周波数と異なる第２無線周波数の第２無線接続とを含む、請求項１に記載の方法。
【請求項９】
前記第１経路内の２つの装置の間の無線リンク、任意に前記第無線リンクは、第１無線周波数の第１無線接続を含み、
前記第１経路内の２つの装置の間のさらなる無線リンクは、前記第１無線周波数と異なる第２無線周波数の第２無線接続を含む、請求項１に記載の方法。
【請求項１０】
前記第１経路の２つの装置間の前記有線リンクはイーサネット（登録商標）リンクを含む、請求項１に記載の方法。
【請求項１１】
前記第１経路の無線リンクの前記第１セットの各々が、起点ノードと宛先ノードとを含み、
前記第１経路の無線リンクの前記第１セットの各々について、前記リンクメトリックが前記各起点ノードで決定され、
前記各起点ノードで、前記第１経路コストを決定することが、
前記それぞれの宛先ノードから累積コストを受信すること、及び
前記累積コストに前記それぞれのリンクコストを加算して前記累積コストを修正することを含む、請求項１に記載の方法。
【請求項１２】
前記第１のＡＰ装置によって、前記第１経路の有線リンクの第１有線リンクに結合されたイーサネット（登録商標）装置に向けた通信を受信すること、及び
前記第１のＡＰ装置によって、前記第１経路の有線リンクに結合されたフォワーディング装置へ通信を送信すること、
を含む、請求項１に記載の方法。
【請求項１３】
非一時的なコンピュータ読み取り可能な記録媒体であって、
プロセッサによって実行されたとき、請求項１から請求項１２のいずれか一項の方法を前記プロセッサに実行させる命令を記憶する、記録媒体。
【請求項１４】
アクセスポイント（ＡＰ）であって、
無線機と、
前記無線機と接続され、請求項１から請求項１２のいずれか一項の方法を実行させるように構成されたプロセッサと、を備える、アクセスポイント（ＡＰ）。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本願は、２０１６年１１月７日提出の出願番号第６２／４１８，５２０号米国仮出願の利益を主張するものであり、この米国仮出願に記載された全内容を本参照によって本出願に援用するものである。
【０００２】
本発明は、全体としてコンピュータネットワーキングの分野に関し、さらに詳しくは、拡張メッシュネットワーキングのための新しく有用なシステム及び方法に関する。
【背景技術】
【０００３】
今日のインターネットは、コンピューティング装置が大量のデータを途方もなく膨大な距離にわたって迅速に伝送できるようにすることによって、通信に大変革をもたらした。アプリケーション及びウェブの開発者によって打ち立てられた技術革新のスピードは驚くほど速いが、残念ながらインターネット体験のすべての局面が追随しているわけではない。具体的には、人々が、急増する所有電子機器のインターネット接続を可能にするために、ホームネットワーキングソリューションにますます大きく依存するようになっているにもかかわらず、これらのソリューションを支える技術によって、ひどく不十分なユーザ体験が提供されることが少なくない。特に、多くのユーザは、１つの無線アクセスポイントでは、自宅または小規模商店の全体に無線カバレッジを提供できないことに気付く。無線ネットワークを拡張するための技術は存在するが、多くの場合、構成が困難であるとともに、性能の点で役に立たない。したがって、コンピュータネットワーキングの分野において、拡張メッシュネットワーキングのための新規の有用なシステム及び方法の出現が望まれている。
【図面の簡単な説明】
【０００４】
【図１】発明の実施形態のシステムのダイアグラム表現である。
【図２】発明の実施形態のシステムのダイアグラム表現である。
【図３】発明の実施形態のシステムのスマートルータの概略図である。
【図４】発明の実施形態の例示的なシステムのネットワークチャート表現である。
【図５Ａ】本発明の実施形態の例示的なシステムのネットワークチャート表現である。
【図５Ｂ】それぞれ本発明の実施形態の例示的なシステムのうちで送信される経路要求及び経路応答のネットワークチャート表現である。
【図５Ｃ】それぞれ本発明の実施形態の例示的なシステムのうちで送信される経路要求及び経路応答のネットワークチャート表現である。
【図５Ｄ】本発明の実施形態の例示的なシステムにおけるルーティング経路のネットワークチャート表現である。
【図６】発明の実施形態の方法のチャート表現である。
【図７Ａ】ＳＴＡＭＰを用いた例示的なネットワークのネットワークチャート表現である。
【図７Ｂ】図７Ａのネットワークチャート表現であって、無線セグメントを示す図である。
【図７Ｃ】図７Ａのネットワークチャート表現であって、イーサネット（登録商標）セグメントを示す図である。
【図７Ｄ】図７Ａのネットワークチャート表現であって、潜在的フォワーディング装置を示す図である。
【発明を実施するための形態】
【０００５】
本発明の実施形態について以下の記述は、本発明をこれらの発明の実施形態に限定することを意図するものではなく、むしろ当業者が本発明を製作し、使用できるようにすることを意図している。
【０００６】
１．拡張メッシュネットワーキングシステム
拡張メッシュネットワーキングシステム１００は、図１に示すように、複数のメッシュネットワーク対応ルータ１１０を含む。本システム１００は、追加的または代替的に、ルータ管理プラットフォーム１２０及び／または管理アプリケーション１３０を含んでもよい。
【０００７】
システム１００は、メッシュネットワーキングを使用して、そのようなネットワークを構成することの複雑さを低減する一方で、ある区域（例えば、ユーザの家）のシームレスな無線カバレッジを可能にするように機能する。通常、インターネット接続の無線メッシュネットワークを構成するために、ユーザは、（例えば、ルータをケーブルモデムに接続することによって）インターネットへのゲートウェイとして機能するように第１のルータを構成する必要がある。さらに、一部のネットワーク構成装置（一般に前述の第１のルータ）は、ネットワークアドレス変換（ＮＡＴ）サーバ、動的ホスト構成プロトコル（ＤＨＣＰ）サーバ、及び無線アクセスポイントとして機能するように構成する必要もある。そして、図２に示すように無線カバレッジを拡張するために、更なる装置（例えば、無線ルータ、アクセスポイント、リピータ）を加える必要がある。無線アクセスポイントが２つか３つかの単純な場合でも、構成オプションは事実上無限にある。例えば、アクセスポイントは、単一のブリッジネットワーク上に存在してもよいし、または異なるネットワークに分離してもよい（例えば、異なるＶＬＡＮ、すなわちバーチャルローカルエリアネットワークに割り当ててもよい）。アクセスポイントは、イーサネット（登録商標）ケーブルによって互いに接続してもよいし、または単に無線リピータとして機能させてもよい。アクセスポイントは、利用可能なＷｉ−Ｆｉ（登録商標）チャネル空間を様々な方法で共有してもよい。
【０００８】
利用可能な数々のネットワーク構成は、経験豊富なユーザでさえも、大いに圧倒されるほどであり得る。システム１００は、この構成の大部分を自動的かつ動的に実行することが好ましい。つまり、コンピュータネットワーキングに関する広範な知識または煩わしい手続きを必要とせずに、ユーザのニーズに合わせてネットワークを最適化する。
【０００９】
メッシュネットワーク対応ルータ１１０は、米国特許出願第１５／００８，２５１号に記載されているものと実質的にほぼ同等のマルチバンド（例えば、デュアルバンド、トライバンドなど）ルータであることが好ましい。この米国特許出願の全記載内容は本参照によって援用される。追加的または代替的に、ルータ１１０は、任意の好適なネットワーク構成装置（例えば、スマートアクセスポイント）であってもよい。
【００１０】
ルータ１１０は、Ｗｉ−Ｆｉ無線機及びプロセッサを含むことが好ましい。ルータ１１０は、追加的または代替的に、ブルートゥース（登録商標）無線機、イーサネット（登録商標）インタフェース、及び／または他の何らかの好適なハードウェアもしくはソフトウェアを含むことができる。一例の実施態様では、図３に示すように、スマートルータは、２つのＷｉ−Ｆｉ（登録商標）無線機（５ＧＨｚ無線機を１つと２．４ＧＨｚ無線機を１つ）、ブルートゥース（登録商標）スマート通信が可能なブルートゥース（登録商標）無線機、自動検知ギガビットイーサネット（登録商標）インタフェース、ＡＲＭプロセッサ、ＤＤＲ  ＲＡＭ、（ルータファームウェア用の）ＥＭＭＣストレージ、及び（例えば、ネットワークアクセス可能なストレージを追加するための）ＵＳＢインタフェースを含む。第２の例の実施態様では、スマートルータは、３つのＷｉ−Ｆｉ（登録商標）無線機（５ＧＨｚ無線機を２つと２．４ＧＨｚ無線機を１つ）、ブルートゥース（登録商標）スマート通信が可能なブルートゥース（登録商標）無線機、（例えば、Ｔｈｒｅａｄ、ＺｉｇＢｅｅ（登録商標）などの１つまたは複数の８０２．１５．４プロトコルを使用して通信するように構成された）８０２．１５．４無線機、自動検知ギガビットイーサネット（登録商標）インタフェース、ＡＲＭプロセッサ、ＤＤＲ  ＲＡＭ、及び（ルータファームウェア用の）ＥＭＭＣストレージを含む。第３の例の実施態様では、スマートルータは、２つのＷｉ−Ｆｉ（登録商標）無線機（５ＧＨｚ無線機を１つと２．４ＧＨｚ無線機を１つ）、ブルートゥース（登録商標）スマート通信が可能なブルートゥース（登録商標）無線機、（例えば、Ｔｈｒｅａｄ、ＺｉｇＢｅｅ（登録商標）などの１つまたは複数の８０２．１５．４プロトコルを使用して通信するように構成された）８０２．１５．４無線機、ＡＲＭプロセッサ、ＤＤＲ  ＲＡＭ、及び（ルータファームウェア用の）ＥＭＭＣストレージを含む。あるいは、スマートルータは、任意の好適なルータ、無線アクセスポイント、及び／または他のネットワーク構成装置であってもよい。また一方、スマートルータは、任意の好適な無線機（例えば、ＮＦＣ、ＲＦなどの短距離無線機）、処理システム、センサセット、または他のコンポーネントの任意の好適な組合せを含むことができる。
【００１１】
Ｗｉ−Ｆｉ（登録商標）無線機（複数可）は、好ましくは、ルータ１１０への無線アクセスを提供するように機能する。Ｗｉ−Ｆｉ（登録商標）無線機は、好ましくは、電子機器（例えば、スマートフォン、ノート型パソコン、ゲーム機）が、ＬＡＮを介して、ルータ１１０と、かつ互いに、無線で通信することを可能にするとともに、ルータ１１０がメッシュにわたって互いに通信することを可能にする働きをする。
【００１２】
各Ｗｉ−Ｆｉ（登録商標）無線機は、少なくとも１つのアンテナを含むことが好ましい。そして追加的または代替的に、Ｗｉ−Ｆｉ（登録商標）無線機は、外部アンテナに接続するためのインタフェースを含んでもよい。アンテナは、様々な種類のアンテナであってよい。例えば、パッチアンテナ（方形パッチアンテナ及び板状逆Ｆアンテナを含む）、反射鏡アンテナ、線状アンテナ（ダイポールアンテナを含む）、ボウタイアンテナ、開口アンテナ、ループ状インダクタアンテナ、セラミックチップアンテナ、アンテナアレイ、及びフラクタルアンテナが挙げられる。Ｗｉ−Ｆｉ（登録商標）無線機は、好ましくは、ＩＥＥＥ８０２．１１ａ／ｂ／ｇ／ｎ／ａｃ規格（及び後述する修正された８０２．１１ｓ規格）のすべてについての通信に対応しているが、追加的または代替的に、任意の規格（または全くの無規格）による通信に対応していてもよい。
【００１３】
ルータ１１０は、任意の好適な周波数範囲で動作する任意の数のＷｉ−Ｆｉ無線機を含むことができる。一実施態様では、ルータは、２つ以上のＷｉ−Ｆｉ無線機を含む。すなわち、２．４ＧＨｚ帯域で動作可能な１つまたは複数の無線機と、１つまたは複数の５ＧＨｚ帯域（例えば、５．２ＧＨｚ帯域、５．８ＧＨｚ帯域、ＤＦＳの使用を必要とする５ＧＨｚ帯域など）で動作可能な別の１つまたは複数の無線機とである。ルータ１１０には切替可能な無線機をさらに含めて、ルータ１１０が、接続品質を最大にするために、２つの異なる通信モード（２．４ＧＨｚ＋５ＧＨｚまたは５ＧＨｚ＋５ＧＨｚ）から選べるようにしてもよい。
【００１４】
Ｗｉ−Ｆｉ（登録商標）無線機は、単一入力／単一出力（ＳＩＳＯ）通信技術を使用して動作させることが好ましいが、追加的または代替的に、複数入力及び／または複数出力通信技術（例えば、ＳＩＭＯ、ＭＩＳＯ、ＭＩＭＯ）を使用して動作させてもよい。Ｗｉ−Ｆｉ（登録商標）無線機がＭＩＭＯ技術を使用して動作する場合、Ｗｉ−Ｆｉ（登録商標）無線機は、あらゆる種類のＭＩＭＯ技術（例えば、プリコーディング、空間多重化、空間分割多元接続、及び／またはダイバーシティコーディング）を使用することができる。さらに、Ｗｉ−Ｆｉ（登録商標）無線機は、単独で（例えば、無線機は、その無線機に結合された複数のアンテナでＭＩＭＯ通信を実行する）、または協同して（例えば、２つの別々の無線機が調和してＭＩＭＯ通信を実行する）、ＭＩＭＯ通信を実行してもよい。
【００１５】
ブルートゥース（登録商標）無線機は、Ｗｉ−Ｆｉ（登録商標）に代わる接続機構によって装置がルータ１１０と通信することを可能にするように機能する。ブルートゥース（登録商標）無線機は、好ましくは、ルータ１１０が最初にスマートフォン（または他のブルートゥース（登録商標）対応コンピューティング装置）によって構成されることを可能にするために使用される。ブルートゥース（登録商標）無線機は、追加的または代替的に他の何らかの目的に使用されてもよい。つまり、例えば、別の時期にルータ１１０を構成するため、ルータ１１０間で通信するため、または家の中のスマートデバイス（例えば、スマートロック、スマート電球）と通信するためである。ブルートゥース（登録商標）無線機は、クラシックブルートゥース（登録商標）及びブルートゥース（登録商標）低エネルギ（ＢＴＬＥ）向けの通信機能を含み、ブルートゥース４．０規格に対応していることが好ましい。ブルートゥース無線機は、好ましくは、クラシックブルートゥース（登録商標）とブルートゥース（登録商標）低エネルギとの間で切り替わるが、追加的または代替的に、両方によって同時に通信できてもよい。
【００１６】
ブルートゥース（登録商標）無線機は、少なくとも１つのアンテナを含むことが好ましい。そして追加的または代替的に、ブルートゥース（登録商標）無線機は、外部アンテナに接続するためのインタフェースを含んでもよい。アンテナは、様々な種類のアンテナであってよい。例えば、パッチアンテナ（方形パッチアンテナ及び板状逆Ｆアンテナを含む）、反射鏡アンテナ、線状アンテナ（ダイポールアンテナを含む）、ボウタイアンテナ、開口アンテナ、ループ状インダクタアンテナ、セラミックチップアンテナ、アンテナアレイ、及びフラクタルアンテナが挙げられる。
【００１７】
イーサネット（登録商標）（登録商標）インタフェースは、ルータ１１０に有線の接続能力を提供するよう機能する。イーサネット（登録商標）（登録商標）インタフェースにより、好ましくは、有線の装置（他のルータ１１０を含む）をルータ１１０に接続できるようになる。イーサネット（登録商標）（登録商標）インタフェースは、複数のイーサネット（登録商標）ポートを含むことが好ましい。イーサネット（登録商標）（登録商標）インタフェースのポートは、１０００ＢＡＳＥ−Ｔ（すなわち、ギガビット）通信が可能であることが好ましいが、追加的または代替的に任意の速度での通信が可能であってもよい。イーサネット（登録商標）（登録商標）インタフェースは、好ましくは、接続された装置の性能に基づいて通信速度を自動で設定するものであるが、追加的または代替的に手動で通信速度を設定してもよい。イーサネット（登録商標）（登録商標）インタフェースに加えて、ルータ１１０は、追加的または代替的に任意の有線インタフェースによって有線通信を行うことができる。例えば、ルータ１１０は、電力線インタフェース（例えば、イーサネット（登録商標）（登録商標）オーバーパワー）を介して通信を行ってもよい。
【００１８】
ルータ１１０は、好ましくはマイクロプロセッサを含み、追加的または代替的に他の何らかのハードウェアを含むことができる。例えば、ルータ１１０は、（ネットワーク接続ストレージ、ＤＬＮＡサーバなどの接続のために、または構成目的で）ＵＳＢインタフェースを含むことができる。一実施形態では、ルータ１１０は、ハードウェア暗号モジュール（ＨＥＭ）を含む。ＨＥＭは、好ましくは、暗号キーを安全に格納し、そのキーに基づいてデータ暗号化を実行するチップ（例えば、Ａｔｍｅｌ  ＳＨＡ２０４）であるが、追加的または代替的に、ルータ１１０からの伝送を暗号化し、及び／またはルータ１１０への伝送を復号化することができる任意のハードウェアモジュールであってもよい。
【００１９】
ルータ１１０は、ファームウェア及び／またはソフトウェアを組込み型マルチメディアカード（ｅＭＭＣ）上に格納することが好ましいが、追加的または代替的に、ファームウェア及び／またはソフトウェアを任意の好適なストレージソリューションに格納してもよい。
【００２０】
ルータ１１０は、Ｐｙｔｈｏｎプログラムを実行するＬｉｎｕｘサーバとして動作することが好ましいが、追加的または代替的に、任意のソフトウェア及び／またはファームウェアを使用して動作してもよい。
【００２１】
ルータ１１０は、好ましくは遠隔の電子機器（例えば、ユーザのスマートフォン）上で動作する管理アプリケーション１３０を使用して構成されるが、追加的または代替的に、任意の好適な方法で（例えば、ウェブインタフェースによって）構成してもよい。
【００２２】
ルータ１１０は、８０２．１１ｓプロトコル（後に記載する修正版）の１つまたは複数のバージョンを使って互いに通信を行って、同等性同時認証（ＳＡＥ）ベースの暗号化及びハイブリッド無線メッシュプロトコル（ＨＷＭＰ）経路選択が利用されるようになることが好ましいが、追加的または代替的に、互いの通信をいかなる方法で行うこともできる。
【００２３】
当業者であれば、ルータ１１０の全部または一部がルーティング機能を実行してもよい（及び／またはルーティング機能を実行できる）が、ルータ１１０は追加的または代替的に、アクセスポイント（例えば、無線メッシュアクセスポイントなどの無線アクセスポイント）、リピータ、メッシュノード、スイッチ、及び／または他の何らかの好適なネットワーク装置を含むことができることを認識するであろう。
【００２４】
ルータ１１０は、ルータ管理プラットフォーム１２０（または任意の好適なリモート管理プラットフォーム）によって構成され、及び／または管理されることが好ましい。一例では、リモートサーバ（ルータ管理プラットフォーム１２０の一部）内に格納された構成プロファイルを変更し、その後、格納された構成プロファイルをルータ１１０に送ることによって、ルータ１１０を構成する。この手法は、メッシュネットワーキングアプリケーションにおいて特に役立つ。そして、３つのスマートルータが単一ネットワークでの使用を対象にしたものであることをルータ管理プラットフォーム１２０が認識している場合、ルータ管理プラットフォーム１２０は、３つのルータのネットワークを、物理的な位置または既設のネットワークトポロジにかかわらず、ブリッジ接続するように試みることができる。
【００２５】
さらに、ルータ管理プラットフォーム１２０が、種々のネットワークに対応付けられた接続及び／または権限を管理するように機能してもよい。例えば、あるネットワークと対応付けられたルータ管理プラットフォーム１２０のユーザに、別のネットワークに対してゲスト権限を持たせることができる（例えば、ＬＡＮ１のユーザに、プラットフォームを介してＬＡＮ２に関しての権限が与えられてもよい）。別の例として、ルータ管理プラットフォーム１２０は、図１に示すように、ＶＰＮトンネルを介して２つのネットワークをブリッジ接続する（例えば、２つの物理ネットワークＬＡＮ１ａ及びＬＡＮ１ｂを単一の論理ネットワークにする）ために使用されてもよい（または別の方法でブリッジ接続することを容易にしてもよい）。
【００２６】
ルータ管理プラットフォーム１２０は、追加的または代替的に、ルータ１１０から接続データを収集し、及び／または、このデータ（またはこのデータの分析）を、ルータ１１０経由で、もしくは別の方法で（例えば、ウェブポータルによって）、ユーザに提供する。
【００２７】
さらに、システム１００は、ネットワークの一部であるルータ１１０を管理するように機能する管理アプリケーション１３０を含むことができる。管理アプリケーション１３０は、スマートフォン上で動作するネイティブアプリケーション（例えば、ｉＯＳアプリケーションまたはＡｎｄｒｏｉｄアプリケーション）であることが好ましいが、追加的または代替的に、任意の好適なアプリケーション（例えば、ウェブアプリ、デスクトップアプリなど）であってもよい。管理アプリケーション１３０は、ルータ１１０の構成を実行し、または支援するために使用され得るが、方法２００によって使われるデータを収集するのに使用することもできる。例えば、位置データが要求される装置上で動作可能な管理アプリケーションは、装置の位置測定を実行するために使用され得るデータを収集すること（ならびに場合によっては分析し、及び／または伝送すること）ができる。
【００２８】
同じＬＡＮのルータ１１０は、メッシュネットワークとして互いに結合されていることが好ましい。つまり、例えば、図４に示す例示的なネットワークとしである。ルータ１１０は、例えば、２．４ＧＨｚのＷｉ−Ｆｉ、５ＧＨｚのＷｉ−Ｆｉ、ブルートゥース（登録商標）、有線イーサネット（登録商標）といった、いかなる方法によっても、相互に、及び／またはクライアント装置（丸で囲む「Ｄ」記号で表される）と、通信することができる。
【００２９】
このようなメッシュネットワーク上を移動する情報は、しばしば多くの経路をたどり得る。システム１００は、従来のメッシュネットワーキングアーキテクチャと比較して性能を向上させるような方法で、メッシュに従って経路を作るように試みることが好ましい。
【００３０】
システム１００は、ネットワークノード（例えば、スマートルータ１１０）間、及びこれらのノードと通信する装置（例えば、ノート型パソコン、スマートフォン、ＴＶなど）間の通信をインテリジェントに管理することによって、メッシュネットワーキング性能を向上させるように試みることが好ましい。このような管理には、ルータからルータへのリンク、及びルータから装置へのリンクの特性（例えば、チャネル、無線機、ブロードキャスト時間など）を管理すること、ならびにそれらのリンクにわたって能動的に情報を転送すること（例えば、ネットワーク全体にわたってパケットの最適経路を特定しようとすること）が含まれる。
【００３１】
ルータ１１０は、ネットワーク内のルータ１１０に対して、あらゆるリンクを可能なものとするように試みることが好ましい。例えば、（２．４ＧＨｚ及び５ＧＨｚの両方で）ルータ１１０の無線の範囲内に他の４つのルータ１１０が見えるルータ１１０は、（範囲内の無線機ごとに１つずつ）８つのリンクを作ることができる。リンクを維持するためのコストはリンク上で通信するためのコストに比べて相対的に低いので、ルータ１１０が、このアプローチを採用することが好ましい。あるいは、ルータ１１０は、有り得るすべてのリンクを作るようには試みない場合がある。例えば、ルータ１１０が別のルータ１１０へのイーサネット（登録商標）接続を有する場合、これら２つのルータ１１０は互いに無線でリンクしない可能性がある。別の例として、高密度メッシュでは、ルータ１１０が、近くにある閾値数個のルータ１１０（例えば、範囲内にある計３０個のルータのうちの１５個のルータ）にのみ接続するように選んでもよい。
【００３２】
ルータ１１０の無線機によって使用されるチャネルは、ネットワーク全体にわたって干渉を低減させるように設定されることが好ましい。例えば、互いに近接する２つのルータ１１０は、５ＧＨｚ帯域で同じチャネルを使用するが（これら２つのルータが、相互に通信すること、及び装置と通信することを可能にするが、場合によっては、両方のルータ１１０の近くのクライアント装置が原因で、通信のコリジョンを引き起こす）、２．４ＧＨｚ帯域では異なったチャネルを使用し得る（両方のルータ１１０の近くのクライアント装置が、他のクライアント装置の他のルータ１１０への通信を妨害することなく、一方のルータ１１０と通信することを可能にする）。ルータ１１０のチャネルは、直交するか、それとも部分的に重なるようにしてもよい。例えば、互いに近接したルータ１１０は、異なるが部分的に重なる２．４ＧＨｚ帯域を選ぶことができ、これらのルータが引き続き互いに通信することを可能にしつつ、クライアント装置の干渉をも低減させる。
【００３３】
ルータチャネルは、いかなる方法で設定してもよい。一例の実施態様では、第１のルータ１１０が、無線探査に基づいて、２．４ＧＨｚチャネル（２．４Ａと呼ばれる）及び５ＧＨｚチャネル（５Ａ）を選択する。次いで、別の各ルータ１１０が、同じ５ＧＨｚチャネル（５Ａ）を選択するが、２．４ＧＨｚチャネルは無線探査に基づいて選択する（例えば、ルータ１１０間の２．４ＧＨｚの干渉を最小限に抑えようとする）。ルータのチャネルは、ルータ１１０によって個別に、一揃いのルータ１１０によって協調して、管理プラットフォーム１２０によって、または他の何らかのエージェントによって設定することができる。
【００３４】
ルータのチャネルはまた、随時、変更してもよい。例えば、前段落に記載される手法によってチャネルを選択したルータ１１０が、クライアント装置によるその５ＧＨｚチャネル上の大量のトラフィックに呼応して、そのチャネルを切り替えてもよい。ここで留意すべきは、この場合、（ルータ１１０は、他のノードがその新しい５ＧＨｚチャネル中で動作していない場合など、５ＧＨｚ帯域の代わりに２．４ＧＨｚ帯域中で他のノードと直ちに通信しなければならない場合があるため）ルータ１１０は、さらにその２．４ＧＨｚチャネルもまた変更する必要があり得ることである。
【００３５】
ルータ１１０が、追加的または代替的に、ルータ間リンクに関連している他の何らかのパラメータを修正するように試みてもよい。例えば、ルータ１１０により、ネットワーク干渉を低減させるようにアンテナパターン及び／または利得が調整されてもよい。追加的または代替的に、ルータ１１０は、同目的のために（場合によっては動的利得を伴って）ビームフォーミングまたはビームステアリングを実行してもよい。チャネルと同様に、他のルータのパラメータは、ルータ１１０によって個別に、一揃いのルータ１１０によって協調して、管理プラットフォーム１２０によって、または他の何らかのエージェントによって設定することができる。
【００３６】
ルータ１１０に接続された装置がネットワーク上の（またはネットワークのゲートウェイを介して）別の装置と通信しようと試みるとき、ルータ１１０は、通信が生じるための最適経路を決定することが好ましい。ルータ１１０は、ＩＥＥＥ８０２．１１ｓハイブリッド無線メッシュプロトコル（ＨＷＭＰ）及び／または（例えば、以下に記載されるような）その修正版を利用することが好ましいが、追加的または代替的に、経路割当てを決定するために任意の手法を使用してもよい。
【００３７】
本システム１００の経路割当て手法の例示的な実施態様を以下に説明する。先ず、ルータ１１０がパケットをある宛先に送信する必要がある場合、ルータ１１０は、最初にそのルーティングテーブルを照査して、その宛先への現在の経路がルーティングテーブルに有るかどうかを確かめる。有る場合は、ルータ１１０はパケットを次ホップノードに転送する。無い場合は、ルータは、経路要求（ＰＲＥＱ）パケットを作成することによって、経路検出プロセスを開始する。このパケットには、送信元ＭＡＣアドレス、発信側のＨＷＭＰシーケンス番号、経路検出ＩＤ、有効期間（ＴＴＬ）フィールド及び存続期間フィールド、ホップ数、宛先ＭＡＣアドレス、ならびにリンクメトリックが含まれる。８０２．１１ｓなどの場合、このＰＲＥＱパケットは宛先に到着するまでネットワークを渡って転送される。宛先ルータ（複数可）１１０は、受信したＰＲＥＱパケットに基づいて、ＰＲＥＱパケットと同様の経路応答（ＰＲＥＰ）パケットを返信する。注目すべきことに、リンクメトリック及びホップ数は、パケットがネットワークを伝わって移動するときに（実質的にそれらの値の経路積分を取得して）更新される。リンクメトリック及びホップ数の一方または両方は、送信元ルータ１１０において、利用可能な経路の質を判断するのに使われる。
【００３８】
デフォルトの８０２．１１ｓの実装では、（時間単位での）総データ伝送時間を１からフレームエラー率を引いたもので割った（T／１−E）として定義される「伝送時間リンクメトリック」と呼ばれるメトリックが利用される。システム１００はこのメトリック（または任意のメトリック）を使用してもよいが、システム１００は新規のメトリック（本明細書ではビフロストメトリックと呼ぶ）を使用することが好ましい。８０２．１１ｓの伝送時間リンクメトリックとは対照的に、ビフロストメトリックは、データスループット（例えば、チャネル伝送速度）及び／またはチャネル利用などの要因で構成される（例えば、入力として取り入れられる）ことが好ましい。ビフロストメトリックは、追加的または代替的に、他の何らかの好適な要因（例えば、後述のように、サーマルスロットリング及び／または強制停止伝送時間）を含むことができる。
【００３９】
一実施形態では、ビフロストメトリックは、（例えば、無線チャネルに対応付けられた）１つまたは複数のスループットメトリック及び／またはチャネル利用メトリックに基づいて決定される。ビフロストメトリック（及び／または、スループットメトリック及び／またはチャネル利用メトリックなど、ビフロストメトリックと関連する基礎メトリック）は、ネットワーク内の経路のリンクごとに個別に決定されるなど、ネットワークのリンク（例えば、無線リンク；有線リンク；共通の終点を共有するリンクなどのリンク集合グループ；など）に対応付けられる（例えば、リンクの特性に基づいて決定される）ことが好ましい。また一方、メトリックを、追加的または代替的に、ノード、経路、物理的領域、及び／またはネットワークと関連する他の何らかの好適な要素に対応付けることができる。メトリックは、方向に特定的であっても（例えば、リンクメトリックまたは経路メトリックでは、リンクまたは経路に沿っての方向ごとに個別に決定される）、方向に非特定的であっても（例えば、順方向経路及び逆方向経路について同一である、第１の装置から第２の装置へのリンク及び第２の装置から第１の装置へのリンクについて同一であるなど）、どちらでもよい。
【００４０】
スループットメトリックは、送信速度及び／または受信速度（例えば、データ転送速度、フレームレート、パケットレートなど）、及び／または他の何らかの好適なスループットを含むことができる。スループットメトリックは、物理層に関連する（例えば、物理層で測定される）メトリックであることが好ましいが、追加的または代替的に、データリンク層、ネットワーク層、トランスポート層、及び／または他の任意の好適な層（例えば、ＯＳＩ階層モデルの層）に対応付けることができる。スループットメトリックは、収集されたスループットデータのフィルタリングされたバージョン、及び／または別の方法（例えば、ローパスフィルタリング、カルマンフィルタリング、ハミングウィンドウ処理など）で処理されたバージョンに基づいて決定されることが好ましい。例えば、スループットメトリックは、移動平均など（例えば、指数加重移動平均、三角数加重移動平均、ハル移動平均、無加重移動平均など）、経時的な平均（及び／または中央値などの他の統計関数）を表すことができる。しかしながら、メトリックは、追加的または代替的に、（例えば、最後に収集されるデータに対応付けられた）実質的に瞬間的なメトリックであってもよく、最大値（例えば、特定の時間ウィンドウで達成される最大値）を表してもよく、及び／または他の何らかの好適な方法で処理されてもよい。スループット測定値は、データ送信が試みられている時間中（例えば、データが送信のためにキューに入れられている間や、送信中など）のみか、もしくは（例えば、ノードがデータを送信しようとしているかどうかに関わりなく）常にサンプリングすることができ、及び／または他の何らかの好適な時にサンプリングすることができる。具体例では、スループットメトリックは、物理層で測定された（例えば、ノードからのリンクに沿った）送信スループット（ＴＸ  ＰＨＹレート）の指数加重移動平均Ｔｘａｖｇ、物理層で測定された（例えば、ノードへのリンクの逆方向に沿った）受信スループット（ＲＸ  ＰＨＹレート）の指数加重移動平均Ｒｘａｖｇ、及び／またはこれらの組合せ（例えば、この２つの、和、逆数和、算術平均及び／または幾何平均、最小値または最大値など）に等しい。
【００４１】
チャネル利用メトリックは、メトリックがそのために計算されるエンティティ（例えば、ノード、リンク、経路など）に帰することができない利用を表すように調整されることが好ましい。このように調整されたチャネル利用メトリックのための１つの式は、次の式で与えられる。
【数１】
2020195161.tif 000003
上式で、Ｔａｃｔｉｖｅは、無線リンクに伴う無線チャネル上で、ノードがその間にアクティブとなるアクティブ時間（例えば、ノードの少なくとも１つの無線機が、その間にチャネルに同調される期間）である。Ｔｂｕｓｙは、無線チャネルがその間に使用中となる、アクティブ時間内の合計利用時間である。Ｔｓｅｌｆは、ノードがその間に無線チャネル上で送信中となる、アクティブ時間内の自己利用時間である。あるいは、ノードが何らかの目的で送信するのに費やした全時間ではなく、ノードがその間に特定の無線リンク（例えば、メトリックがそのために計算されている無線リンク）に従って、及び／または特定の終点に向けて、送信している時間；（ノードからの送信に費やされる時間の代わりに、またはその時間に加えて）チャネルがその間にノードへの送信に使用される時間；及び／またはノード、無線リンク、及び／または他のエンティティと関連する他の何らかの好適な自己利用時間を表すことができる。また一方、チャネル利用メトリックは、追加的または代替的に、（例えば、Ｔｓｅｌｆ項の代わりに、またはこれに加えて）他の何らかの好適な調整を含むことができ、及び／または未調整とすることができる（例えば、Ｔｓｅｌｆ項を除外することができる）。
【００４２】
本実施形態の一実施態様では、ビフロストメトリックは以下のように計算される。先ず、各ノードにおいて、基本メトリックが、スループットメトリックＤの逆数として計算される。次に、基本メトリックは、チャネル利用メトリックＵ、好ましくはそのノードに起因しないチャネル利用を表す調整されたチャネル利用メトリック（例えば、ノードに起因しないチャネル上のトラフィックの量、ノードが送信するためのチャネルを利用できない時間の割合など）を含む項によって修正される。このようなメトリックＭの２つの式が、次式で与えられる。
【数２】
2020195161.tif 000004
ここで、Ｃは何らかの定数（例えば、すべてのノード及び／またはリンクに対するメトリックＭのすべての計算に対して一定に保たれる定数、所与のノード及び／またはリンクに対しては一定であるが、別のノード及び／またはリンクの間では異なる定数など）であり、Ｔｂｕｓｙはチャネルが使用されていた時間であり、Ｔｓｅｌｆはノード自体からの通信に起因してチャネルが使用されていた時間であり、Ｔａｃｔｉｖｅはチャネルで費やされた合計無線時間である。メトリックの具体例には、次のものを含めることができる。
【数３】
2020195161.tif 000005
以上のように、本メトリックは、スループットの増加に伴って減少し（すなわち、接続が速くなるとメトリック値が低くなる）、チャネルトラフィックと併せて増加する（すなわち、トラフィックが少なくなるとメトリック値が低くなる）。本メトリックはまた、メトリックを測定するノードがトラフィックに与える感度の影響が減少していることを示す（例えば、感度がトラフィックに対して不変であり、感度が、未調整のチャネル利用メトリックを使用するメトリックよりも小さい値で変化するなど）。
【００４３】
ビフロストメトリックには、例えば一時的なパフォーマンス制限などのハードウェア状態を表す１つまたは複数のパラメータをオプションで含めることができる。例えば、メトリックには、無線送信がスロットリングによってその間に抑えられる、アクティブ時間内のスロットリング時間を表すＴｔｈｒｏｔｔｌｅ、及び／またはその無線スロットリング量の割合を表すｆｔｈｒｏｔｔｌｅ（例えば、無線スロットリングがその間に発生した時間の割合であり、
【数４】
2020195161.tif 000006
である）などの無線スロットリングパラメータを含めることができる。例えば、無線スロットリングは、（例えば、無線送信時間を短縮し、それによって無線によって発生する熱エネルギを低減させることによって）無線過熱を防止及び／または軽減するために使うことができる。第１の変形例では、ハードウェア状態パラメータ（例えば、スロットリングパラメータ）は、
【数５】
2020195161.tif 000007
など、チャネル利用メトリックに含まれる。第２の変形例では、ハードウェア状態パラメータは、
【数６】
2020195161.tif 000008
など、全ビフロストメトリックに含まれる。ただし、ビフロストメトリックは、他の何らかの好適な方法で、他の何らかの好適なハードウェア状態パラメータを含むことができる。
【００４４】
所与のリンクについて（例えば、リンクコストを定義する）ビフロストメトリックが計算された後に、このビフロストメトリックが経路に沿った以前のメトリックの和に追加され、その結果、最終的なメトリックは、（例えば、経路コストを定義する）経路に沿ったビフロストメトリック値の経路積分となる。上記の通り、ビフロストメトリック値が最小の経路が「最良」の経路である。一変形例では、経路中のノード（例えば、すべてのノード、始発のノード及び／または終端のノードを除いたすべてのノードなど）はそれぞれ、そのノード（そのノードから始まるそのノード、またはそのノードで終点となるそのノード）に対応付けられているリンクのリンクメトリックを計算し、隣接ノード（例えば、経路に沿った次のノードまたは前のノード）から部分経路メトリック（例えば、最初のノードまたは終端ノードから部分経路メトリックを送信しているノードまでなど、経路の一部に沿ったリンクメトリックの累積和）を受信し、計算したリンクメトリックを部分経路メトリックに追加し、新しい部分経路メトリックを対向する隣接ノードに送信する（例えば、経路または逆経路に沿って続ける）。
【００４５】
一例では、経路の終端ノード（ノードＡ）は、（例えば、経路要求を受信したことに応答して）好ましくは（例えば、ゼロに設定された）メトリックフィールドを含む経路応答フレームを、経路に沿って前のノード（ノードＢ）に送信する。経路応答フレームを受信することに応答して、ノードＢは、ノードＢ自体からノードＡへのリンク（Ｂ−Ａリンク）に伴うビフロストリンクメトリックを決定し、このリンクメトリックをメトリックフィールドの値に追加することによって部分経路メトリックを更新し、（例えば、更新した部分経路メトリックを含む）更新した経路応答フレームを経路に沿って前のノード（ノードＣ）に送信する。類似の方法で、ノードＣは、Ｃ−Ｂリンクメトリックを計算し、部分経路メトリックを更新し、（Ｂを経由するＣからＡへのコストを表す）更新したメトリックを含む経路応答を経路に沿って前のノードに送信する。本例では、経路応答は経路中の始発のノードに後進伝搬される。ただし、任意のノードは、経路応答の受信時に（例えば、そのメトリックに基づいて）随意に無視するか、または別の方法で動作し得る。例えば、第１のノードが、第１のノードから第２のノードへの経路セグメントに対する２つの経路応答を、それぞれ異なる経路（例えば、異なる中間ノードの列）を介して受信する場合、（例えば、図５Ｃに示すように）第１のノードは、随意に、良好な（例えば、低い）メトリックの経路応答を伝搬させ、劣ったメトリックの経路応答を無視することができる。
【００４６】
図５Ａに示すように、クライアント装置（Ｄ）は、図のようにリンクメトリック値（例えば、経路コストを決定するために追加することができるコストなどのリンクコスト）を有するメッシュネットワーク上のケーブルモデムに情報を送信しようと試みる。クライアント装置に直接接続されているノード（例えば、クライアント装置のＡＰ）は、（例えば、ケーブルモデムへの経路や、ケーブルモデムに接続されたゲートウェイノードへの経路などについての）経路要求（ＰＲＥＱ）メッセージを送信し、このメッセージは、メッシュネットワークを通って伝搬し、（例えば、図５Ｂに示すように）場合によっては複数の隣接ノードからゲートウェイノードに到達する。各隣接ノードから経路要求を受信することに応答して、ゲートウェイノードは、ＰＲＥＱがそこから受信される隣接ノードへ、経路メトリック（例えば、経路はゲートウェイノードで始まるため、すべての場合でゼロになる）を含む経路応答（ＰＲＥＰ）メッセージを送信する。ＰＲＥＰを受信する各ノードは、ＰＲＥＰがそこから受信されるノードに対応付けられたリンクメトリック（例えば、ノード自体から、ＰＲＥＰがそこから受信されるノードへ、送信するためのリンクコスト）を計算し、そのリンクメトリックを、受信したＰＲＥＰの経路メトリックに追加し、（例えば、図５Ｃに示すように）逆経路に沿って（更新された経路メトリックを持つ）ＰＲＥＰを伝搬させる。クライアント装置に直接接続されているノードは、１つまたは複数のＰＲＥＰを受信し、最終リンクメトリックを計算して追加し、（例えば、図５Ｄに示すように）合計メトリックが最も低い経路を選択する。クライアント装置からケーブルモデムへの通信は、この経路に沿ってルーティングされ得る。
【００４７】
ビフロストメトリックは、特定のピアリンク上の所与のデータ単位をキューに入れるための伝送時間コストと共に増加する（例えば、正比例する）ことが好ましく、リンク周波数（例えば、２．４ＧＨｚ及び５ＧＨｚ）全体にわたって同等であることが好ましい。ビフロストメトリックは、イーサネット（登録商標）リンクの品質を説明するために随意に使用（または修正）することができ、単にリンク周波数にわたってばかりでなく、同様に有線リンクと無線リンクとの間でも比較することが可能になる。ビフロストメトリックは、追加的または代替的に、イーサネット（登録商標）リンクについて、（例えば、コストがかからないリンクを表す）ゼロか、または小さな定数に等しく設定することができ、及び／またはイーサネット（登録商標）リンクを他の何らかの好適な方法で扱う（またはイーサネット（登録商標）リンクに適用しない）ことができる。
【００４８】
いくつかの実施形態では、メッシュネットワークは、複数のリンクインタフェース（例えば、独立した、同時通信が可能な複数の無線機、複数のイーサネット（登録商標）ポート、無線機及びイーサネット（登録商標）ポートの両方など）を有するノードの場合などに、同じノード間に複数のリンクを含む。例えば、２つのノードを、複数の（例えば、２．４ＧＨｚ、５．２ＧＨｚ、及び／または５．８ＧＨｚなどの異なる帯域の）無線リンク及び／またはイーサネット（登録商標）リンクによって同時に接続することができる。一変形例では、これら物理リンクのそれぞれを独立して扱うことができる（例えば、リンクメトリックを、それらのいずれかまたはすべてに対して独立して決定できる；ネットワークを通る経路は、単にリンクの終点だけでなく、物理リンクを個々に指定できる；など）。
【００４９】
第２の変形例では、終点を共有する複数の物理リンク（例えば、そのようなすべてのリンク、そのようなすべてのワイヤレスリンク、そのようなリンクの部分セットなど）を（例えば、リンク評価及び／または経路選択の観点から）単一の有効リンクと見なす（例えば、リンクアグリゲーショングループとして扱う）ことができ、有効リンクに対応付けられる単一リンクメトリックが決定され、経路には、その中の特定の基礎物理リンクのいずれかの代わりに有効リンクが指定される。この変形例は、個々のメッシュノード（及び／または接続されたノード対）が、より高いレベルの経路選択を妨げることなく、所与の近隣との通信に最適な物理リンク（複数可）を選択できるようにする（例えば、近隣との多重通信を可能にすることを含む）。本変形例の一例では、有効リンクの各ノードは、ＭＡＣアドレス（例えば、最高または最低のＭＡＣアドレス；最初に接続された物理リンクのＭＡＣアドレス；有効リンクが所定のインタフェースに関連する物理リンクを含まなくとも任意選択的に、ノードの第１のイーサネット（登録商標）ポートまたは第１の無線通信機などの、所定のインタフェースに対応付けられたＭＡＣアドレス；など）などの単一の識別子によって指定される。
【００５０】
この第２の変形例では、有効リンクに対応付けられた有効リンクメトリック（例えば、リンクコスト）が、基礎物理リンクの全部または一部の物理リンクメトリックに基づいて決定されるのが好ましい。例えば、有効リンクメトリックは、最良の物理リンクメトリック、物理リンクメトリックの和、物理リンクメトリックの逆数和（例えば、逆数の和の逆数）、物理リンクメトリックの算術平均及び／または幾何平均、及び／または物理リンクメトリック（または最良の２つもしくは３つのそのようなリンクなど、その部分セット）の他の何らかの好適な機能に等しくすることができる。有効リンクメトリックは、追加的または代替的に、基礎物理リンクの個々の性能の代わりに、有効リンクの性能（例えば、有効リンクの複数の物理リンクの同時使用）に基づいて決定することができる。また一方、有効リンクメトリックは、追加的または代替的に、他の何らかの好適な方法で決定することができる。
【００５１】
発明の実施形態の一実施態様では、ルータ１１０は、ビフロストメトリック値によってトリガされる自動探査システムを含む。アイドル状態のリンクまたは「劣った」メトリックを持つリンクは、大量のトラフィックを認識しない可能性があるため、これらのリンクを介して接続されたノードは定期的なメトリック更新を受信しないことがある（したがって、ノードは、メトリック値を改善するために構成設定を繰り返し修正する機能を必ずしも持っているとは限らない）。自動探査システムは、アイドル状態（例えば、ある活動しきい値未満）のリンク上及び／または「劣った」（例えば、あるしきい値未満のビフロストメトリック）リンク上にトラフィックを生成するように機能する。
【００５２】
ビフロストメトリックの代わりに、システム１００は、総じて、ネットワーク全体で特定の目標を推進する、学習された（または別の方法で調整された）リンクメトリックを利用することができる。例えば、学習されたリンクメトリックは、ネットワーク全体の平均レイテンシに基づいて設定されてもよい。
【００５３】
学習されたリンクメトリックを調整することには、教師付き学習（例えば、ロジスティック回帰を使用すること、バックプロパゲーションニューラルネットワークを使用すること、ランダムフォレスト、決定木などを使用することなど）、教師なし学習（例えば、アプリオリアルゴリズムを使用すること、Ｋ平均法を使用すること）、半教師付き学習、強化学習（例えば、Ｑ学習アルゴリズムを使用すること、時間的差分学習を使用すること）、及び他の何らかの好適な学習スタイルのうちの１つまたは複数を利用することが含まれ得る。複数のモジュールのそれぞれは、回帰アルゴリズム（例えば、最小二乗推定法、ロジスティック回帰、段階的回帰、多変量適応型回帰スプライン、局所推定散布図平滑化法など）、例題に基づく方法（例えば、ｋ近傍法、学習ベクトル量子化、自己組織化マップなど）、正則化法（例えば、リッジ回帰、最小絶対収縮及び選択演算子、エラスティックネットなど）、決定木の学習方法（例えば、クラス分類木及び回帰木、第３世代反復二分法、Ｃ４．５、カイ二乗自動交互作用検出、決定株、ランダムフォレスト、多変量適応型回帰スプライン、勾配ブースティングマシンなど）、ベイズ法（例えば、単純ベイズ、ＡＯＤＥ（Ａｖｅｒａｇｅｄ  Ｏｎｅ−Ｄｅｐｅｎｄｅｎｃｅ  Ｅｓｔｉｍａｔｏｒｓ）、ベイジアンビリーフネットワークなど）、カーネル法（例えば、サポートベクターマシン、放射基底関数、線形判別分析など）、クラスタリング法（例えば、ｋ平均法、期待値最大化など）、相関ルール学習方法（例えば、アプリオリアルゴリズム、Ｅｃｌａｔアルゴリズムなど）、人工ニューラルネットワークモデル（例えば、パーセプトロン法、バックプロパゲーション法、ホップフィールドネットワーク法、自己組織化マップ法、学習ベクトル量子化法など）、ディープラーニングアルゴリズム（例えば、制限付きボルツマンマシン、ディープビリーフネットワーク法、コンボリューションネットワーク法、積層自己符号化器法など）、次元削減方法（例えば、主成分分析、部分的最小二乗回帰、サモンのマップ化、多次元尺度構成法、射影追跡など）、アンサンブル方法（例えば、ブースティング、ブートストラップアグリゲーション、アダブースト、積重ね一般化、勾配ブースティングマシン法、ランダムフォレスト法など）、及び任意の好適な方式の機械学習アルゴリズムのうちの任意の１つまたは複数を実装することができる。方法２００の各処理部分は、追加的または代替的に、確率論的モジュール、発見的問題解決モジュール、決定論的モジュール、または他の何らかの好適な計算方法、機械学習方法もしくはそれらの組合せを利用する他の何らかの好適なモジュールを利用することができる。また一方、任意の好適な機械学習アプローチをリンクメトリック学習に別の方法で組み込むことができる。
【００５４】
８０２．１１ｓ規格からの別の逸脱では、ルータ１１０によって送信されるマルチキャストフレーム及びブロードキャストフレームは、ルータ１１０がそこで経路通知（例えば、経路要求すなわちＰＲＥＱ、経路応答すなわちＰＲＥＰ、など）を確認した帯域及び／またはチャネル（及び／または例えば特定の帯域に対応付けられた無線機などの無線機）を指定する追加フィールドを含むことが好ましい。従来の８０２．１１ｓの実装では、ある無線機、帯域、及び／またはチャネルから同じノード上の別のチャネルに通知が渡されると、シーケンス番号が変更される。その結果、メッセージはネットワークによって異なる方法で処理されるようになり、ループが発生する可能性がある。無線のフィールドを追跡することによって、システム１００は、８０２．１１ｓの実装において出現するループの問題に悩まされることなく、複数の帯域のリンクを含む経路を可能にすることができる。あるいは、一部または全部のフレーム（例えば、マルチキャストフレーム及び／またはブロードキャストフレーム）が、この追加フィールドを含まない場合もある。
【００５５】
これまでに明示的に論じられていないが、８０２．１１ｓシステムのノードは、ＰＲＥＱを、以前に受信したかどうかに基づいて追跡する（受信した場合はＰＲＥＱを破棄する）。システム１００は、フレーム情報を格納し、従来の８０２．１１ｓの実装から逸脱するマルチキャストフレームを転送するかどうかを決定する新しい方法を実装することが好ましい。受信された各マルチキャストフレームについては、ルータ１００が、フレームの一部（例えば、固有部分）（例えば、フレームの送信元アドレス及び／またはパケットヘッダ、フレーム全体及び／またはパケットヘッダ、フレーム及び／またはパケット内容、フレーム全体及び／またはパケットなど）のハッシュ値を計算し、このハッシュ値を有効期限タイマーと共に格納することが好ましい。ルータ１００は、ＴＴＬ値及び有効期限と共に、各送信元（例えば、１６）から受信したいくつかの最新のマルチキャストフレームのリストを維持することが好ましい。ルータ１００が、そのルータ１００に格納されているレコードの有効期限内に送信元からマルチキャストフレームを受信した場合、ルータ１００は、格納されているＴＴＬをデクリメントしてフレームを転送する。格納されているＴＴＬがゼロに達すると、フレームは転送されずに破棄される。各ノードは、これらのリストのＲＣＵ保護されたハッシュテーブルを持つので、ルックアップは容易に並列化可能であり、標準の８０２．１１ｓ実装よりも効率的になる。このマルチキャストキャッシュは、無線インタフェースと有線インタフェースとの間で共有されて、ループを防ぎ、有線接続及び無線接続の両方をネットワークで使用できるようにする。
【００５６】
発明の実施形態の変形例では、システム１００は上述のリンクメトリックシステムに加えて追加の層を含む。この変形例では、ルータ１１０は分散型サービス品質（ＱｏＳ）ベースのシステムを維持し、このシステムでは所与のルータ１１０が、これらの無線コリジョンドメイン内の他のノードに対しトラフィッククレジットを発行する。これらのトラフィッククレジットは、隣接ノードがいつルータ１１０にデータを送信できるかに制限を課すことができて、システム１００が協調してコリジョンを減らすことができるようになる。リンクメトリックと同様に、システム１００は、機械学習を利用して、このようなシステムにおいてトラフィッククレジットを分配及び／または調整することができる。
【００５７】
上述のように、システム１００は、ルーティングのためにリンクメトリックを使用することが好ましいが、システム１００は、追加的または代替的に、計算したリンクメトリック値を、ネットワークの健全性の評価としての生存スループット値の代用として、使用してもよい。例えば、Ｌ個のリンクを持つネットワークのネットワーク健全性メトリックは、次のようになる。
【数７】
2020195161.tif 000009
上式で、Ｕｌは利用率である（これは、実質的にリンク使用率によって重み付けされた平均リンクメトリックである）。システム１００は、追加的または代替的に、リンクメトリック値を使用して、任意の方法でネットワークの健全性を推定することができる。
【００５８】
ネットワーク性能を向上させる前述の手法に加えて、システム１００は、追加的または代替的に、クライアント装置にアクセスポイントを移すように要求するための手法を実行してもよい。この手法は、例えば、無線アクセスポイント（ＡＰ）間でクライアント装置をより適切に分散させるのに役立つ。多くのモバイル電子機器（例えば、大部分のスマートフォン）では、機器ユーザ（及び、この点に関してはＡＰも）は、機器が無線ネットワークを選択する方法をほとんど制御できない。ほとんどの場合、無線クライアントは、ネットワークに接続し、信号品質（または通信品質の別のメトリック）が静的しきい値未満に落ちるまでネットワークに接続したままであり、静的しきい値未満になるとその時点でクライアントは接続を切断し、最も強い信号を探す。無線範囲が部分的に重なり合うＡＰを有したネットワーク（特に高密度メッシュネットワーク）では、このことは、ＡＰ１に最初に接続したクライアントが、頻繁にＡＰ１よりもＡＰ２の近くに移動することがあるが、（ＡＰ１信号がしきい値未満に落ちていないために）引き続きＡＰ１に接続されたままでいることを意味する。
【００５９】
クライアントを強制的に切断させることで、このような装置に、どのＡＰが最も強いかを調べ直させて、それに接続させることが好ましい。ここで留意すべきは、ＡＰの信号強度はＡＰからの距離と相関しているが、干渉及びノイズにより、最も強いＡＰが必ずしも最も近いとは限らなくなり得ることである。例えば、スマートフォンがリビングルームの壁の近くにあり、リビングルームのＡＰは１０フィート離れている。寝室は、寝室用ＡＰが備えられ、リビングルームの壁の反対側にある。このような状況では（壁による減衰に部分的に基づき）、スマートフォンはリビングルームのＡＰを「より近い」と見なし得る（すなわち、スマートフォンは、より高い信号強度を認識する）。クライアント接続変更を強制することで、メッシュネットワーキングパラメータの最適化、ネットワーク負荷分散、及び／または無線干渉管理を含む、局在化以上に多数の変化が得られる可能性がある。例えば、ネットワーク性能を向上させるために、クライアントと第２のＡＰとのリンクが、クライアントと第１のＡＰとのリンクよりも劣る（例えば、スループットの低下が伴う）としても、クライアントに、第１のＡＰから切断して、第２のＡＰに代わりに接続するように強要できる。本例の第１の具体例では、第１のＡＰからインターネットへの経路コストは、第２のＡＰからインターネットへのコストよりも遥かに高いため、クライアントが第２のＡＰに接続されている場合には、クライアントとインターネットとの間の全経路コストが低くなる。第２の具体例では、第１のクライアントを第１のＡＰから切断することによって、第１のＡＰと第２のクライアント（例えば、第２のＡＰに接続できないクライアント）との間のリンクを改善することができる（例えば、それによって、第２のクライアントと第１のＡＰとのリンクの品質を向上させるための強力なビームフォーミングを可能にする）。また一方、クライアント接続の変更は、追加的または代替的に、他の何らかの好適な理由により、他の何らかの好適な方法で制御することができる。
【００６０】
ルータ１１０は、何らかの方法でクライアント接続が変更するよう要求することができる。第１の例では、ルータ１１０は、アクセスポイントでクライアントのＭＡＣアドレス（または別の識別子）をブロックし、アクセスポイントからクライアントを能動的に切り離すことによって、アクセスポイントからクライアントを排除することができる。これにより、クライアントは、ＭＡＣアドレスのブロックが解除されるまで再接続できなくなる。あるいは、ルータ１１０は、クライアントがＡＰに再参加することを妨げることなく、クライアントをそのＡＰから切断することができる。
【００６１】
第２の例では、ルータ１１０が、特定の装置に対する認証情報を破棄してもよい。第２の例では、ルータ１１０は、何らかの方法で認証情報を破棄することができる。つまり、例えば、装置または装置ユーザに対応付けられている認証情報一式を使用して、ＡＰへのアクセス権を取り去ることによってである。場合によっては、これらの認証情報は、装置またはユーザに固有のものであるが（例えば、スマートフォンに保存されている証明書、ユーザ名／パスワード）、追加的または代替的に、認証情報が装置固有ではない場合がある（例えば、ＷＰＡ−２パーソナルで保護されたＡＰのＡＰパスワード）。
【００６２】
ルータ１１０は、追加的または代替的に、他の何らかの方法で（例えば、クライアントのローミングを強要するためにＡＰの送信電力を下げることによって）クライアントをＡＰから切断することができる。ここで留意すべきは、システム１００は、クライアントが接続することができるアクセスポイントを制御することによって、クライアントに特定のＡＰ（または一組のＡＰのうちの１つ）に接続するように強要できることである。例えば、メッシュネットワークは、装置の範囲内に４つのＡＰを含み得る。すなわちＡＰ１、ＡＰ２、ＡＰ３、及びＡＰ４である。装置がＡＰ１及びＡＰ２に接続できないようにブロックすることによって、ネットワークは、装置をＡＰ３またはＡＰ４のいずれかに接続するように強制することができる。同様に、ＡＰ３をブロックして装置をＡＰ４に接続させることもできる。
【００６３】
前述の例は、ＡＰのクライアントローミングに対する制御が制限されている時でさえも動作可能である。ただし、場合によっては、ネットワークがクライアントローミングを更に多く制御することもある（または、装置が明示的にどのネットワークに接続するかを指定することさえも可能であり得る）。これらの場合、システム１００は、追加的または代替的に、クライアントローミングパラメータを修正し、及び／または特定のＡＰまたは一組のＡＰに接続するように装置に指示することができる。
【００６４】
システム１００は、任意の方法でＡＰ修正を指示することができる。例えば、ルータ１１０は、ＡＰとクライアント装置との間のリンクについてのリンク品質メトリックを格納することができ、これらがしきい値未満に下がる場合にクライアント装置を切断してもよい。別の例として、ルータ１１０は、クライアントに対するレイテンシによって、クライアントリンクを評価してもよい（このレイテンシは、クライアント装置の種類に基づいて拡大縮小してもよい）。
【００６５】
システム１００は、装置の種別（例えば、スマートフォン、ノート型パソコンなど）、装置の機種（例えば、Ｇａｌａｘｙ（登録商標）、ｉＰｈｏｎｅ（登録商標））、装置の帯域幅の利用方（例えば、高帯域幅、低帯域幅）、（例えば、ＲＳＳＩ変化によって、またはＡＰ変更によって決定される）装置の可動性、通信頻度などを含む幾つもの要因に基づいて、ルータ１１０（及びこれらルータ１１０の無線機）の間でクライアントを分配しようと試みてもよい。
【００６６】
システム１００は、実際のクライアントリンク品質メトリックに加えて、追加的または代替的に、コンテキストデータまたは履歴データに基づいてクライアント装置を配布してもよい。例えば、日中には大きなダウンロードのために、夜間にはゲームのために使用されるコンピュータは、（日中の）高スループット及び／または高レイテンシを有する接続（例えば、ＡＰへの無線リンク、ネットワークを介したインターネットへの経路など）と、（夜間の）低スループット及び／または低レイテンシを有する接続との間で切り替えられてもよい。
【００６７】
システム１００を、トラフィックが一般に既知の宛先を有する状況について説明したが、トラフィックが複数の潜在的な宛先を有し得る状況が存在する（例えば、メッシュネットワークがインターネットへのいくつかのゲートウェイを有する場合）。発明の実施形態の変形例では、システム１００は複数のインターネット接続間でトラフィックを共有することを実行してもよい。例えば、システム１００は、特定のネットワーク上のすべての装置によって使用される、一次及び二次（及び三次など）インターネット接続を指定することができる。システム１００は、追加的または代替的に、装置によるインターネット接続（例えば、１９２．１６８．１．ｘｘｘサブネット内のすべての装置が特定の接続を使用し、すべてのスマートフォンが特定の接続を使用するなど）か、またはＴＣＰストリームによる（または他の何らかのサブ装置の解決レベルでの）インターネット接続かを指定することができる。そして例えば、高帯域幅で、レイテンシに敏感でないアプリケーション（例えば、ストリーミングビデオ）は第１の接続を使用することができ、一方、低帯域幅で、レイテンシに敏感なアプリケーション（例えば、リアルタイムオンラインゲーム）は第２の接続を使用することができる。
【００６８】
トラフィック共有は、任意の好適な入力データに基づいて実行され得る。例えば、トラフィック共有には、使用可能な帯域幅（例えば、特定の接続は帯域幅の上限に達するまでしか使用されない）、価格（例えば、コストの多大な接続は特定のアプリケーションに必要な場合にのみ使用される）、または他の何らかの基準に基づいてＮＡＴ設定を変更することが含まれ得る。トラフィック共有の取り決めは、ルータ管理プラットフォーム１２０によって決定されることが好ましいが、追加的または代替的に、任意の好適なエンティティによって決定されてもよい。
【００６９】
トラフィック共有は、ネットワーク負荷分散アルゴリズムによって実現することもでき、これによってＩＰトラフィックが、１つまたは複数のネットワーク目標を達成するために、複数のインターネット接続にわたって分散される。ネットワーク目標の例には、ネットワーク上の１つまたは複数の装置の応答時間を短縮すること、ネットワーク上の１つまたは複数の装置で利用可能な帯域幅を増やすこと、ネットワーク上の特定のサービスまたはトラフィックの種類に対して性能を向上させること、ネットワーク上の装置へのインターネットアクセスの信頼性を高めることなどが含まれ得る。トラフィック共有向けのネットワーク負荷分散アルゴリズムの第１の例は、ラウンドロビンアルゴリズムである。ラウンドロビンアルゴリズムは、ランダムに選択された第１のインターネット接続に第１のＩＰトラフィック要求を割り当て、アルゴリズムが第１のインターネット接続を除外することを別にすればランダムに選択される第２のインターネット接続に第２のトラフィック要求を割り当てるなど、すべてのインターネット接続が少なくとも一度割り当てられるまで、その時点でのサイクルを繰り返す。ラウンドロビンは、ほとんどのトラフィック要求が帯域幅要求及び期間においてほぼ等しい場合にうまく機能する。ネットワーク負荷分散アルゴリズムの第２の例は、動的ラウンドロビンである。動的ラウンドロビンは、割当てステップがリアルタイムインターネット接続性能から区別される重み付け方式に従って分散されることを除き、基礎ラウンドロビンアルゴリズムと同様に機能する。動的ラウンドロビンは、同一のインターネット接続を介して複数の高トラフィック要求が転送される問題を避けることができる。ネットワーク負荷分散アルゴリズムの第３の例は、予測アルゴリズムである。予測アルゴリズムは、（性能メトリックで定量化される）経時的にどのインターネット接続が性能を改善させるのか低下させるのかということを判断するために、リアルタイムインターネット接続の特性（例えば、どのインターネット接続がそれらに対する最も少ないＩＰトラフィック要求を受け取るのか、どのインターネット接続がそれらに対する最大のデータストリーム割当てを受け取るのかなど）及びインターネット接続履歴の特性（例えば、最近の期間にわたって監視されたダウンロード速度及びアップロード速度の時系列）を監視することができ、これらの性能メトリックを動的重み付け方式に入力することができ、動的重み付け方式に従って新しいＩＰトラフィック要求を割り当てることができる。あるいは、任意の好適なネットワーク負荷分散アルゴリズムをシステム１００によって実施させてもよい。
【００７０】
システム１００が負荷分散を実行する方法は、事前に決定されるか（例えば、トラフィックがインターネット接続全体に比例して分散し得る）、動的に決定されるか（例えば、ユーザ要求時に、特定の要求に優先順位を割り当てることができ、その後ルータがすべてのネットワークトラフィックの優先順位階層に従って負荷性能を処理することができる）、または他の何らかの好適な方法で決定され得る。
【００７１】
以下に記載されている本方法２００の実施形態では、システム１００に関して上に記載したネットワーク評価及び／または管理手法のうちの一部または全部を随意に実施することができる。このような手法は、システム１００を使用して実行されることが好ましいが、追加的または代替的に、他の何らかの好適なネットワークまたは他のシステムを使用して実行することができる。
【００７２】
２．拡張メッシュネットワーキング方法
図６に示すように、拡張メッシュネットワーキング方法２００は、ネットワーク分析を実行すること（Ｓ２１０）、ルータリンクパラメータを設定すること（Ｓ２２０）、及びルーティング経路を管理すること（Ｓ２３０）を含むことが好ましい。本方法２００は、追加的または代替的に、クライアントリンクを管理すること（Ｓ２４０）及び／または他の何らかの好適な要素を管理することを含んでもよい。
【００７３】
本方法２００は、好ましくは、ルータ通信パラメータを効率的に割り当て、見い出されたリンクメトリックに基づいてルーティング経路を決定することによって、メッシュネットワーク（例えば、複数の周波数帯域で動作し、場合によってはイーサネット（登録商標）リンクによってブリッジ接続されるネットワーク）を効果的に構成し、管理するように機能する。
【００７４】
本方法２００は、システム１００によって実行されることが好ましいが、追加的または代替的に、任意のメッシュネットワーク（例えば、任意のマルチバンドメッシュネットワーク）によって実行されてもよい。
【００７５】
Ｓ２１０は、ネットワーク分析を実行することを含む。Ｓ２１０は、ネットワーク状態情報を決定するように機能する。例えば、Ｓ２１０は、ネットワーク内のメッシュノード（例えば、ルータ）の数、各ノードの個別の設定詳細（例えば、無線通信チャネル、チャネル幅、イーサネット（登録商標）特性、無線モード、暗号化種別、ＱｏＳ設定、ＤＨＣＰ設定、ＮＡＴ設定）、ノードの互いの近さ、ノード間の接続方式及び品質、ネットワーク内のクライアント装置の数、各クライアント装置の個別の設定詳細（例えば、クライアントタイプ、クライアントＡＰ、クライアント無線通信チャネル、クライアントイーサネット（登録商標）特性）、クライアントとノードとの間の接続方式及び品質、ネットワーク全体のスループット、ＷＡＮゲートウェイの詳細などを決定するように機能してもよい。
【００７６】
Ｓ２１０は、何らかの方法でネットワーク分析を実行することを含んでもよい。例えば、Ｓ２１０は、ネットワーク上の装置に問い合わせを行うこと、ネットワーク上の装置からネットワーク調査を実行すること、ユーザ入力を要求すること、または他の何らかの手法を含んでもよい。Ｓ２１０は、追加的または代替的に、ネットワークデータをログ記録すること、このデータを使用してネットワーク分析を実行することを含んでもよい。例えば、Ｓ２１０は、リンク（ルータ間リンクまたはクライアント−ルータ間リンクのいずれか）のスループット及びエラー率をログ記録して、リンク品質を決定することを含んでもよい。
【００７７】
Ｓ２１０は、メッシュネットワークの１つまたは複数のルータによって実行されることが好ましいが、さらに、ネットワーク監視アプリを実行しているモバイルクライアント装置（例えば、スマートフォン）によって実行されるか、またはこのモバイルクライアント装置によって性能の点で補助されてもよい。例えば、Ｓ２１０は、ユーザがメッシュネットワーク内を動き回るときに、スマートフォンからネットワークデータを収集することを含んでもよい。
【００７８】
Ｓ２１０は、追加的または代替的に、ネットワークユーザにネットワーク分析データを要求することを含んでもよい。例えば、Ｓ２１０は、ネットワークが過去において理想的に機能していない場合に、クライアント装置上の管理アプリに通知するようにユーザに求めること（ネットワークをトリガして、クライアント装置に特有のデータ及び／または時間をログ記録すること）を含んでもよい。
【００７９】
Ｓ２１０は、初期のネットワーク構成中に実行されることが好ましいが、追加的または代替的に、ネットワーク構成をさらに良く知らせるためにいつでも実行されてよい。
【００８０】
Ｓ２２０は、ルータリンクパラメータを設定することを含む。Ｓ２２０は、ルータ間の通信リンクを構成するように機能する。
【００８１】
各メッシュノードについて、Ｓ２２０は、通信範囲内の他のすべてのメッシュノードへのリンクを初期化することを含むのが好ましい。次にこれらのリンクは、ルーティングのニーズに応じて使用する（または使用しない）ことがある。追加的または代替的に、Ｓ２２０は、通信範囲内のメッシュノードの部分セットのみへのリンクを初期化することを含んでもよい。例えば、Ｓ２２０は、特定のタイプのノード、あるしきい値を超える信号対雑音（ＳＮＲ）を有したノード、あるしきい値を超えるＲｘ／Ｔｘスループットを有したノード、イーサネット（登録商標）によって接続されていないノード等のみへのリンクを初期化することを含んでもよい。第２の例として、ノードの範囲内にｍ個のノードがある場合、Ｓ２２０は、いくつかの基準（例えば、レイテンシが最も少ない５つのノード）に基づいて、ｍ個のノードのうちのｎ個へのリンクを初期化することを含んでもよい。
【００８２】
Ｓ２２０は、追加的または代替的に、メッシュノードの無線通信チャネルを修正することを含んでもよい。Ｓ２２０は、干渉を低減しネットワークのスループットを増大させるように無線チャネルを設定することを含むことが好ましいが、追加的または代替的に、任意の目標を達成するように無線チャネルを設定することができる。
【００８３】
Ｓ２２０は、例えば、最初にノードを同じ５ＧＨｚチャネルに設定するが、ノードを多様な２．４ＧＨｚチャネルに設定することを含んでもよい。このような構成は、２．４ＧＨｚ帯域をクライアント装置と通信するために最適化しながら、ノードが５ＧＨｚ帯域によって互いに通信する（及び場合によってはクライアント装置と通信する）ことを可能にし得る。
【００８４】
別の例では、Ｓ２２０は、Ｐ２．４及びＰ５（例えば、ビーコンＳＮＲによって測定される、信号の近さ）と同様に、ネットワークの各ノードについてＤｃ２．４（２．４ＧＨｚ帯域でのルータとクライアントとの通信から発生する伝送時間の割合）、Ｄｃ５（５ＧＨｚ帯域でのルータとクライアントとの通信から発生する伝送時間の割合）、Ｄｍ２．４（２．４ＧＨｚ帯域でのルータ間通信から発生する伝送時間の割合）、及びＤｍ５（５ＧＨｚ帯域でのルータ間通信から発生する伝送時間の割合）を決定することを含む。この例では、Ｓ２２０は、次式を最小にしようと試みることによって、各ノードＣ２．４及びＣ５の２．４ＧＨｚチャネル及び５ＧＨｚチャネルを設定することが好ましい。
【数８】
2020195161.tif 000010
上式で、Ｋ１．．．Ｋ８は定数であり、Ｂはチャネル上の２項演算子である（例えば、Ｃｌ≠Ｃｋの場合、Ｂはゼロ、Ｃｌ＝Ｃｋの場合、Ｂは１である）。このメトリックは、所与の帯域で大量のルータ−クライアント間通信を伴う隣接するノードが異なるチャネル上にある場合、及び所与の帯域で大量のルータ−ルータ間通信を伴う隣接するノードが同じチャネル上にある場合に最小化される。無論、ルータ−ルータ間通信はチャネル設定に大きく依存し得るので、このメトリックは任意の最小化アルゴリズムに従って繰り返し評価されてもよい。
【００８５】
第３の例として、Ｓ２２０は、無作為にチャネル設定を変える（または別の方法でチャネル設定を変える）ことによって、ネットワークチャネルを設定すること、及び機械学習アルゴリズムを用いて、ネットワーク性能を監視することを含み得、最終的に最適ネットワークチャネル状態を学習する。
【００８６】
Ｓ２２０は、追加的または代替的に、特別な目的のために特定の帯域上のトラフィックを制限することを含んでもよい。例えば、Ｓ２２０は、所与のノード上で、５ＧＨｚトラフィックをバックホールトラフィックに制限するとともに、２．４ＧＨｚトラフィックをルータから装置へのトラフィックに制限することを含んでもよい。
【００８７】
Ｓ２２０は、追加的または代替的に、ルータ間リンクに関連する他の何らかのパラメータを修正しようと試みることを含んでもよい。例えば、Ｓ２２０では、ネットワーク干渉を低減させるために、アンテナパターン及び／または利得を調整してもよい。追加的または代替的に、Ｓ２２０は、同じ目的のために（場合によっては動的利得を用いて）ビームフォーミングまたはビームステアリングを実行するようにノードを構成することを含んでもよい。
【００８８】
Ｓ２３０はルーティング経路を管理することを含む。Ｓ２３０は、所与の送信元及び宛先についてネットワーク全体にわたって（例えば、メッシュ及び／またはイーサネット（登録商標）リンク全体にわたって）経路を決定するように機能する。Ｓ２３０は、好ましくは、ＩＥＥＥ８０２．１１ｓハイブリッド無線メッシュプロトコル（ＨＷＭＰ）に従って（例えば、システム１００に関して上に記載した修正版など、プロトコルの修正版に従って）ルーティング経路を管理することを含むが、追加的または代替的に、経路割当てを決定するための任意の手法を使用してもよい。Ｓ２３０は、例えば、ＩＥＥＥ８０２．１１ｓ規格に記載される受動型及び／または能動型のルーティング手法を使用して、経路割当てに関するシステム１００のセクションに記載されるのと同じこの規格からの規格外れを伴うルーティング経路を作成すること、及び／または更新することを含んでもよい。
【００８９】
Ｓ２３０は、好ましくは、各ノードでマルチキャストフレームデータセットを維持することを含み、このデータセットが各送信元の履歴マルチキャスト情報を含む。例えば、データセットには、ノードから見える各送信元の最新の１６個のマルチキャストフレームへの参照が含まれている場合がある。各参照はタイムスタンプにリンクされていることが好ましい。そして、同じ送信元からのフレーム間の時間差がしきい値未満である場合、２番目のフレームはノードによって転送されない可能性がある。あるいは、データセットは各入力に対してＴＴＬを維持してもよい（そのため、例えば、後続のフレーム（第２のフレーム、第３のフレーム、第４のフレームなど）が第１のフレームの後のしきい値時間未満に受信された場合、各フォワードがＴＴＬをデクリメントし、すべてのフレームが転送されるとは限らない）。このマルチキャストキャッシュは、好ましくは、ＲＣＵ保護されたハッシュテーブルとして格納されて、容易に並列化可能なルックアップを生じさせるとともに、標準の８０２．１１ｓ実装を越えた効率向上がもたらされるようになる。同様に、このキャッシュは通信モダリティ間で共有されるのが好ましい。
【００９０】
Ｓ２３０は、好ましくは、システム１００の節に記載されたビフロストメトリックを使用してルーティング経路を決定することを含むが、追加的または代替的に任意の好適なリンクメトリック（複数可）を利用してもよい。Ｓ２３０は、後述するＳＴＡＭＰ手法を実装することを随意に含むことができるが、追加的または代替的に、メッシュネットワークへのイーサネット（登録商標）セグメント（例えば、一般的なメッシュネットワークと互換性がないレガシーイーサネット（登録商標）装置を含む）の組込みを可能にするために他の何らかの好適な技術を使用することができる。
【００９１】
発明の実施形態の変形例では、Ｓ２３０は、分散型サービス品質システムに従ってトラフィックをルーティングすることを含み、このシステムでは、ノードが、それらの無線コリジョンドメイン内の他のノードにトラフィッククレジットを発行する。これらのトラフィッククレジットは、隣接ノードがいつノードにデータを送信できるかに制限を課すことができて、ネットワークが協調してコリジョンを減らすことができるようになる。
【００９２】
ネットワークのリンクに関するリンクメトリックを計算することに加えて、本方法２００は、追加的または代替的に、ネットワークの全リンクメトリックに基づいて、ネットワークの健全性及び／またはスループットを推定することを含んでもよい。例えば、本方法２００は、ネットワークの総スループット、またはノードあたりのスループットの加重平均（ノードの重要度及び／またはトラフィックによって加重される）を測定することを含んでもよい。
【００９３】
Ｓ２４０は、クライアントリンクを管理することを含む。Ｓ２４０は、ノードからクライアント装置への通信の任意の態様、例えば、ＱｏＳパラメータ、接続方式（例えば、８０２．１１のｇ対ｎ対ａｃ）、接続モダリティ（例えば、イーサネット（登録商標）対Ｗｉ−Ｆｉ対ブルートゥース（登録商標））、接続速度などを修正することを含んでもよい。
【００９４】
Ｓ２４０は、追加的または代替的に、クライアント装置をあるノードから他のノードに移動させることによって、クライアントリンクを最適化することを含んでもよい。これは、帯域幅の利用度及び干渉の可能性に従って、クライアント装置をより均等に分配するために使用することができる。
【００９５】
ここで留意すべきは、チャネルを決定するために使用されるのと同じアルゴリズムがまた、様々なクライアントＡＰ接続で使用できることである。例えば、前の式は
【数９】
2020195161.tif 000011
であり、ＡＰチャネルだけでなく、クライアントを特定のＡＰに参加させることで、影響を受けるＡＰのＤｃを修正することができる。
【００９６】
Ｓ２４０は、クライアントを強制的に切断させることで、好ましくはそのような装置に、どのＡＰが最も強いかを調べ直させて、それに接続させることを含んでもよい。前述のように、クライアント接続変更を強制することで、メッシュネットワーキングパラメータの最適化、ネットワーク負荷分散、及び／または無線干渉管理を含む、局在化以上に多数の変化が得られる可能性がある。
【００９７】
Ｓ２４０は、システム１００の説明で同じ手法を取り上げるセクションで論じられるように、何らかの方法でクライアント接続が変更するよう要求することを含んでもよい。Ｓ２４０は、好ましくは、ネットワーク全体のスループット及び信頼性、ならびにネットワーク上の個々の装置の性能の両方を最大にするように、クライアントをノード間に分散させることを含む。Ｓ２４０は、装置の種別（例えば、スマートフォン、ノート型パソコンなど）、装置の機種（例えば、Ｇａｌａｘｙ（登録商標）、ｉＰｈｏｎｅ（登録商標））、装置の帯域幅の利用方（例えば、高帯域幅、低帯域幅）、（例えば、ＲＳＳＩ変化によって、またはＡＰ変更によって決定される）装置の可動性、通信頻度、接続品質履歴のデータ、帯域幅の使用履歴などを含む幾つもの要因に基づいて、ノード間にクライアントを分散させることを含んでもよい。
【００９８】
Ｓ２４０は、追加的または代替的に、ユーザの手動操作を要求することを含んでもよい。例えば、Ｓ２４０は、ネットワーク効率を高めるために、ネットワークの１つまたは複数のノードを回転させるように、及び／または再配置するように、ユーザに指示することを含んでもよい。
【００９９】
Ｓ２４０は、追加的または代替的に、ユーザの手動操作によるあらゆるタイプのネットワーク構成（ソフトウェアでネットワーク装置構成を変更するための指示を提供すること、イーサネット（登録商標）ケーブルを再配線すること、無線アクセスポイントを移動させることなどを含む）を要求することを含んでもよい。Ｓ２４０は、好ましくは（最も好ましくは、リモート管理プラットフォームと連携して動作するソフトウェアを用いることであるが、あるいは別の方法で）ユーザが所望の構成変更を容易に実施することを可能にする。第２の例では、ユーザは、前のステップによって実行されたネットワーク構成が適切であることを確認することができる。この第２の例では、ユーザは外部電子機器上のソフトウェアから指示を与えられる。つまり、再構成がネットワーク機能に対する物理的修正（例えば、それまでイーサネット（登録商標）ケーブルによって物理的につながれていたルータを切断すること）を含むとき、その場合ユーザは、ネットワーク構成設定のその再構成を、ソフトウェアからの指示に従って行うことができる。
【０１００】
本方法２００（及び／またはその任意の好適な要素）は、１回、繰り返し（例えば、定期的に、散発的に、トリガ発生に応答して、など）、及び／または他の何らかの好適なタイミングで実行することができる。例えば、本方法２００は、リンクメトリックを継続的に評価すること、及びメトリックに基づいてルーティング経路を繰り返し（例えば、定期的に、ＰＲＥＱ受信に応答して、など）再決定することを含むことができる。
【０１０１】
３．セグメントテーブルアナウンスドメッシュプロトコル（ＳＴＡＭＰ）
レガシーイーサネット（登録商標）セグメントを含む従来のメッシュネットワークにおける共通の問題は、スイッチ、ルータ、ブリッジ、及びクライアント装置を含む、複数のイーサネット（登録商標）ポートを持つイーサネット（登録商標）装置の多くが、一般にアドレス解決リスト（ＡＲＬ）またはフォワーディングデータベース（ＦＤＢ）と呼ばれる構造を含むことである。これらの装置は、ある特定のＭＡＣに接続されている装置の複数のポートを素早く特定するために、このＡＲＬまたはＦＤＢを使用する。イーサネット（登録商標）フレームには宛先及び送信元の２つのアドレスしか含まれず、イーサネット（登録商標）プロトコルはコネクションレス型であるとすれば、イーサネット（登録商標）ネットワーク上で特定のＭＡＣがどこにあるかを判断する唯一の方法は、そのポートから送信されるフレームの送信元アドレスをスヌーピングすることである。
【０１０２】
従来のイーサネット（登録商標）スイッチは、フレームを受信すると、それをスイッチのＡＲＬにある既存のアドレスと比較し、スイッチがアドレスを見つけた場合は、そのフレームをＡＲＬに記載されているポートに送信する。スイッチがフレームを判断できない場合、スイッチはフレームが入って来たポート以外のすべてのポートにそのフレームをフラッディングさせる。これが行われると、フレームが入ってきたどのポートにもフレーム上の送信元アドレスが存在することを記しておく。
【０１０３】
メッシュネットワークでは、接続されたイーサネット（登録商標）セグメントに確定的な方法でフレームを配信することが保証できない可能性があるため、このことはメッシュネットワークでは問題となる。このことは、そのようなセグメント内のイーサネット（登録商標）スイッチが、ランダムな場所から発信されたように見えるトラフィックによって混乱する可能性があることを意味する。さらに、イーサネット（登録商標）セグメントに隣接するすべてのメッシュノードは、トラフィックがセグメントに到着したときにメッシュから送信されるそのトラフィックを認識するので、メッシュノードは、フレームを取得して、それをメッシュに戻し入れるように決定することがある。その後、このトラフィックは、メッシュを通過して、イーサネット（登録商標）セグメントに繰り返し再挿入され、最終的にループするフレームによってネットワークが詰まることになる。
【０１０４】
ループの問題は、周知のスパニングツリープロトコル（ＳＴＰ）を使用した有線イーサネット（登録商標）ネットワークで解決される。残念ながら、これはブリッジポート単位で機能するため、単一のブリッジポートが数十のピアリンクとなり得るメッシュには適していない。さらに、メッシュは、本質的に循環のトポロジを持ち、そのような循環的構造によって許容される複数の経路から、それらの信頼性の利点の多くを引き出すことができる。ネットワークを非循環にするように設計されたスパニングツリープロトコルは、たとえそれがピアリンク単位でメッシュリンクを処理するように拡張されていたとしても、そのようなネットワークには適していない可能性がある。
【０１０５】
無線メッシュネットワークにおけるループフレームの問題は、ルーティングアルゴリズムがユニキャストフレームのループを許可せず、各フレームがメッシュ有効期間を含むメッシュヘッダを有し、マルチキャストフレームが、少し前のマルチキャストフレームのハッシュテーブルと照合されて、各ノードを一度だけループすることが許可されるので、解決することが可能である。しかし、イーサネット（登録商標）の小さなヘッダではこの手法を使用できない可能性がある。
【０１０６】
セグメントテーブルアナウンスドメッシュプロトコル（ＳＴＡＭＰ）（例えば、スパニングツリーアナウンスドメッシュプロトコル）は、メッシュネットワークからレガシーＩＥＥＥ８０２．３イーサネット（登録商標）クライアントへフレームを確定的に配信することを可能にするために、ＩＥＥＥ８０２．１１ｓメッシュネットワーキング規格によって提供される機能に基づいて構築された補助プロトコルである。
【０１０７】
ＳＴＡＭＰは、好ましくは、ネットワーク（例えば、ＬＡＮ）の１つまたは複数のセグメントを決定することを含む。各セグメントは、好ましくは、図７Ｂ〜図７Ｃに示すように、同種の接続方式（例えば、無線セグメントのすべての装置は無線リンクによって接続され、イーサネット（登録商標）セグメントのすべての装置はイーサネット（登録商標）によって接続される、など）によって相互に接続されているネットワーク接続装置の一部である。しかしながら、セグメントは、異種の接続方式、複数の接続方式（例えば、有線及び無線）、または他の何らかの好適な接続セットによって接続することができる。セグメントは、必ずしもブロードキャストドメインまたはコリジョンドメインに対応するわけではない。例えば、（例えば、イーサネット（登録商標）セグメントによってブリッジ接続された２つの無線メッシュセグメントなどの複数のセグメントを含む）ネットワーク全体が単一のブロードキャストドメインを定義し（または代替的に、ネットワーク全体に、セグメントとは無関係に定義されるＶＬＡＮなど、複数のブロードキャストドメインを含めることができ）、単一のセグメントに複数のコリジョンドメインを含めることができる（及び／またはコリジョンドメインを複数のセグメントに拡張することができる）。
【０１０８】
各セグメントには、好ましくは、類似タイプのリンクによって到達可能な（例えば、無線リンクのみまたはイーサネット（登録商標）リンクのみを使用して到達可能な）すべての装置が含まれる。しかしながら、セグメントは代替的にそのような装置のいくつかを除外することができる。一例では、セグメント定義はリンク品質しきい値（例えば、ビフロストメトリック値などのしきい値リンクメトリック値）を含むことができ、しきい値品質未満のリンクは無視されない（例えば、そのようなリンクによってのみ接続されている装置は、同じセグメントにあるとは見なされない）。第２の例では、無線セグメントは、イーサネット（登録商標）によっても接続されているノード間の無線リンクを除外することができる（例えば、無線セグメントは、互いに無線で通信することができるすべての装置を含むのではなく、互いに無線で通信しなければならない装置に限定される）。この例の変形例において、本方法は、そのようなノード間のイーサネット（登録商標）リンクを評価すること（例えば、イーサネット（登録商標）リンクのリンクメトリックを決定すること）を含み、関連する無線リンクは、イーサネット（登録商標）リンクメトリックがしきい値よりも大きい（例えば、無線リンクメトリックよりも大きい、既定のしきい値よりも大きい、など）場合にのみ除外される。第３の例では、各セグメントは任意にサブセグメントに分割することができる。例えば、セグメントは、そのセグメント内の潜在的フォワーディング装置の数に等しいいくつかのサブセグメントに分割することができ、各潜在的フォワーディング装置は、異なるサブセグメントのためのフォワーディング装置として指定される。また一方、セグメントは、追加的または代替的に、他の何らかの好適な方法で定義することができる。
【０１０９】
セグメントを決定することは、好ましくは、各イーサネット（登録商標）セグメント及び各無線セグメントを識別することを含む。しかしながら、セグメントを決定することは、追加的または代替的に、イーサネット（登録商標）セグメントのみを識別すること、無線セグメントのみを識別すること、このようなセグメントのサブセットのみを識別すること、及び／または他の何らかの好適なセグメントを決定することを含んでもよい。セグメントを決定することは、オプションで、識別されたセグメントのうちの一部または全部の要素（例えば、接続された装置）を決定することを含んでもよい。セグメントは、メッシュセグメント及びイーサネット（登録商標）セグメントの両方にあるＳＴＡＭＰ対応ノード（例えば、メッシュセグメントをイーサネット（登録商標）セグメントに接続するノード）などのメッシュノードによって決定されることが好ましい。好ましくは、ネットワークは、イーサネット（登録商標）接続も有するがＳＴＡＭＰ対応ではないメッシュノードを全く含まないが、代替的にネットワークは任意の好適なノードを含んでもよい。
【０１１０】
ＳＴＡＭＰの一実施形態は、ＩＥＥＥ８０２．１ｄスパニングツリープロトコル（ＳＴＰ）を用いて各ノードに接続されたイーサネット（登録商標）セグメント（例えば、有線イーサネット（登録商標）セグメント）をマッピングして、それらのトポロジを通常の方法（例えば、ＳＴＰによって規定される方法）で非循環的にする。ＳＴＰは、隣接するイーサネット（登録商標）セグメントごとに固有の「ルートブリッジアドレス」を決定する。ＳＴＡＭＰの別の実施形態は、イーサネット（登録商標）セグメント及び／またはそれらの要素を識別するために、（例えば、ＳＴＰメッセージに加えて、またはその代わりに）他のメッセージを伝搬させる。ＳＴＡＭＰ対応ノードは、ＳＴＰメッセージ及び／または他の何らかのイーサネット（登録商標）セグメントマッピングメッセージをメッシュセグメントに送信しないように構成されることが好ましい。したがって、そのようなメッセージは単一のイーサネット（登録商標）セグメント内でのみ伝搬して（例えば、無線メッシュを介して伝搬しない）、本手法が２つの隣接しないイーサネット（登録商標）セグメントを区別できるようにする。
【０１１１】
ただし、メッシュネットワークは、それらを識別するために使用できるルートノードアドレスに相当するものを持たない。代わりに、メッシュネットワークの近接性は、各ＳＴＡＭＰ対応ノード（または、イーサネット（登録商標）セグメント及び無線セグメントの両方に接続されている各ノードなど、ＳＴＡＭＰ対応ノードの部分セット）に、これが接続されている無線セグメントにブロードキャストメッセージ（「ＳＴＡＭＰ通知」）を送信させることによって決定されてもよい。ＳＴＡＭＰ通知は、好ましくは、送信ノードが接続されている有線イーサネット（登録商標）セグメントの（例えば上に述べたような）識別子、及び送信ノードに関連する識別子（例えば送信ノードのＭＡＣアドレス）を含むことが好ましい。このようなブロードキャストメッセージは、好ましくは特別なイーサタイプでタグ付けされ、ＳＴＡＭＰ対応ノードは、メッシュ境界で特別なイーサタイプを有するメッセージをドロップするように構成される（例えば、メッセージをイーサネット（登録商標）セグメントに送らないように構成される）ことが好ましい。つまり換言すれば、メッセージは無線メッシュの外側に伝搬しない。
【０１１２】
ＳＴＡＭＰ対応ノードは、このようなＳＴＡＭＰ通知メッセージを受信し、それらのメッシュから見えるすべてのイーサネット（登録商標）セグメントのリストを構築する。各イーサネット（登録商標）セグメントは、識別子（例えば、ルートブリッジアドレス、セグメント内のイーサネット（登録商標）装置の最高ＭＡＣアドレスまたは最低ＭＡＣアドレスなど）に関連付けられ、どのメッシュノードが同じイーサネット（登録商標）セグメントの要素であるかを識別子（例えば、通知されたルートブリッジアドレス）から決定する。
【０１１３】
ＳＴＡＭＰ通知は、送信ノードに関連するメトリックなどの１つまたは複数のＳＴＡＭＰメトリックをオプションで含めることができる。これらのメトリックは、好ましくは、（例えば、ノードの残りのメッシュセグメントへの接続がどれほど良好であるかを表す）ネットワークセグメントの中心性及び／または接続性のメトリックを含む。一変形例では、ノードのＳＴＡＭＰメトリックは、ピアリンクのビットレートの合計に等しいか、またピアリンクの数に等しいかなど、ノードのピアリンク（例えば、メッシュセグメント内のすべての無線ピアリンク、すべてのイーサネット（登録商標）ピアリンク、あらゆるタイプの全ピアリンクなど）に基づいて決定される。第２の変形例では、ＳＴＡＭＰメトリックは、システム１００に関して上に述べたメトリック（例えば、ビフロストメトリック、学習されたメトリック及び／または調整されたメトリックなど）など、ノードに関連する１つまたは複数のＨＷＭＰメトリックに基づいて決定される。例えば、ノードのＳＴＡＭＰメトリックは、そのノードと無線セグメントの他の各要素との間の経路メトリックの平均（例えば、単純平均、負荷加重平均など）に等しくなり得る。また一方、ＳＴＡＭＰ通知は、追加的または代替的に、他の何らかの好適なＳＴＡＭＰメトリックを含むことができる。
【０１１４】
無線セグメントＡとイーサネット（登録商標）セグメントＢのセグメント対について図７Ｄに示すように、それぞれ隣接する無線セグメント−イーサネット（登録商標）セグメント対（例えば、特定のメッシュが特定のイーサネット（登録商標）セグメントに接触するそれぞれの場所）ごとに、フォワーディング装置（例えば、「指定転送器」）を決定する（例えば、選ぶ）ために、ＳＴＡＭＰメトリック（複数可）を使用することが好ましい。また一方、フォワーディング装置は、別の方法で（例えば、所定の頻度で）任意の好適な時機に決定することができる。例えば、そのような各セグメント対について、本方法２００は、所与の無線セグメントと所与のイーサネット（登録商標）セグメント（例えば、潜在的フォワーディング装置のセット）との両方に属する（例えば、接続されている）各メッシュノードを決定すること、及び、次に、各潜在的フォワーディング装置に対応付けられたＳＴＡＭＰメトリックに基づいて、その対のフォワーディング装置として１つ（例えば、最良のＳＴＡＭＰメトリックを有するメッシュノード）を指定することを含むことができる。指定は、無線セグメントの各メッシュノードにおいて（例えば、同一情報に基づく同一アルゴリズムを使用して）個別に決定されることが好ましいが、代わりに単一のノードまたは他の装置によって決定されてもよい（例えば、その後、決定は、後のＳＴＡＭＰ通知に含まれるように、無線セグメントの装置に送信される）。本方法は、１つまたは複数の（例えば、ランク付けされた順序にある、プールされている、など）バックアップフォワーディング装置を指定することをオプションで含むことができ、好ましくは、指定フォワーディング装置が（例えば、機器の故障、ネットワークの分割などが原因で）応答しなくなった場合に、バックアップフォワーディング装置がフォワーディング装置の役割を担うことができる。
【０１１５】
指定フォワーディング装置は、好ましくは、無線セグメントとイーサネット（登録商標）セグメントとの間でフレームを移動させること（例えば、無線セグメントからフレームを受信してそれらをイーサネット（登録商標）セグメントに送信すること、イーサネット（登録商標）セグメントからフレームを受信してそれらを無線セグメントに送信すること、など）を担当する。一例では、指定フォワーディング装置は、メッシュ上のフレーム、マルチキャストフレーム、及び／またはブロードキャストフレームをイーサネット（登録商標）セグメント上に移動すること、及びユニキャストフレームをイーサネット（登録商標）セグメント上にまだ存在しないメッシュからイーサネット（登録商標）セグメント上に移動することを担当する。この方法でフレームをコピーする必要があるかどうかを判断するには、そのコピー元がすでに指定転送器と同じイーサネット（登録商標）セグメントの要素であるかどうかを確認するためのルックアップを実行する必要があり得る。そして、もし要素であるならば、指定転送器は既にそのフレームをイーサネット（登録商標）セグメントに挿入したものと見なすことができ、指定転送器はそのフレームをそのままにしておくことができる。別の例では、指定フォワーディング装置は、それが接続されているセグメント間のすべてのセグメント間送信を単独で担当する。また一方、指定フォワーディング装置は、追加的または代替的に他の何らかの好適な役割を果たすことができる。
【０１１６】
フラッディングされたユニキャストフレームは、それらをそのようにマーキングするための用意がイーサネット（登録商標）ヘッダにないので特別である。ただし、ユニキャストフレームをフラッディングさせるブリッジは、そのブリッジがそのユニキャストフレームをフラッディングさせていることを認識しているので、これらのフレームがフラッディングされていると局所的にマーキングすることはできる。この局所的なマーキングは、メッシュドライバがメッシュヘッダ内のフレームをマーキングするために使用する。メッシュから発生するフラッディングされたユニキャストフレームは、マルチキャストフレームと同様に扱われるため、複数のメッシュノードによってイーサネット（登録商標）に挿入されることはなく、そのため同じアドレスから送信される場合には、常に同じ方向からイーサネット（登録商標）セグメント上のスイッチに接近することになる。
【０１１７】
フレームが同じイーサネット（登録商標）セグメントの要素であるノードから送信されていることを知るためには、ノードのブリッジはＳＴＡＭＰリストをメッシュヘッダと照らし合わせなければならないが、ブリッジがフレームを取得するまでには、メッシュヘッダは削除され、破棄されてしまう。この照合が行われるようにするために、第２の局所的マーキング方式が使用され、リストを照合するためにメッシュドライバからブリッジへの呼び出しが使用される。
【０１１８】
このようにして、フラッディングされたユニキャストフレームがマルチキャストフレームであるかのように照合することができ、ループの可能性が排除され、メッシュからのユニキャストフレームとマルチキャストフレームの両方が、予測可能かつ確定的な方法ですべての有線イーサネット（登録商標）セグメントに配信され、これらのセグメントでスイッチが混同される可能性が回避される。これにより、有線イーサネット（登録商標）をメッシュセグメント間でメッシュに接続できるようになり、さらに有線イーサネット（登録商標）ブリッジを非隣接メッシュ間で問題なく使用できるようになる。
【０１１９】
セグメント対に関連する他の潜在的フォワーディング装置（例えば、フォワーディング装置として指定されていないもの）は、指定フォワーディング装置が担当するセグメント間転送を実行しないことが好ましい。しかしながら、潜在的フォワーディング装置は、任意の好適な方法で動作させることができる。一例では、このような各ノードは、それらがあたかも２つの別個の装置であるかのように振る舞うことができ、一方は無線セグメントに接続され、他方はイーサネット（登録商標）セグメントに接続され、これらの間に直接のデータリンクは無い。この例では、イーサネット（登録商標）セグメントから受信される伝送は、イーサネット（登録商標）セグメント内のノードによってのみ（例えば、イーサネット（登録商標）でノードに接続されているイーサネット（登録商標）装置へ）転送され、無線セグメントから受信される伝送は、無線セグメント内のノードによってのみ（例えば、無線リンクによってノードに接続されている無線装置へ）転送される。第２の例では、ノードは、ノードによってのみセグメントの残りの部分に接続され、かつ指定フォワーディング装置を含まない装置（または、より厳密なバージョンでは、ノードによってのみネットワークの他の部分に接続されている装置のみ、またはノードに直接接続され、他の装置には接続されていないクライアント装置のみが含まれる）のプライベートサブセグメントを決定することができ、このノードは、サブセグメントとネットワークのその他の部分との間の「チョークポイント」であり、プライベートサブセグメントに対してのみセグメント間転送を実行できる。例えば、この第２の例では、イーサネット（登録商標）セグメントからのブロードキャストフレームを受信したことに応答して、ノードは、ブロードキャストフレームを無線セグメントのそのプライベートサブセグメントに転送することができる（好ましくは、ブロードキャストフレームを受信し、これをプライベートサブセグメントのみに転送したことを記録する）。引き続き（例えば、指定フォワーディング装置によって無線セグメントに転送された後に）ノードが無線セグメントから同じブロードキャストフレームを受信するとき、ノードはそれをプライベートサブセグメントに転送せず、それによってプライベートサブセグメントの装置がフレームを複数回受信することを防ぐ。
【０１２０】
異なるセグメント内の終点間の（例えば、Ｓ２３０などの方法２００に関して上に述べたように）経路選択は、フォワーディング装置の指定に基づいて決定されることが好ましい。一変形例では、本方法２００は、ＳＴＡＭＰ準拠経路（例えば、第１のセグメントと第２のセグメントとの間の関連するフォワーディング装置でのみ交差する経路など、フォワーディング装置の指定を順守する経路）を検討すること（例えば、ＳＴＡＭＰ準拠経路の経路メトリックを決定すること）のみを含む。第２の変形例では、他の経路を検討することもあるが、ＳＴＡＭＰ準拠経路のみが選択されることになる。この変形例の特定の例では、非準拠経路メトリックが（例えば、任意の量によって、しきい値を超える量によって、など）ＳＴＡＭＰ準拠経路よりも優れている場合、本方法は、ＳＴＡＭＰメトリック計算のための更新情報を提供すること、（例えば、経路メトリックのコントラストに基づくハンディキャップなど）ＳＴＡＭＰメトリック調整を提案すること、及び／またはフォワーディング装置の再決定を要求することなど、ＳＴＡＭＰ指定を変更することができる行動を起こすことをオプションで含み得る。第３の変形例では、経路メトリック（例えば、ビフロストメトリック）は、ＳＴＡＭＰ関連情報を含むが（例えば、ＳＴＡＭＰ指定に準拠していないと、リンクメトリック及び／または経路メトリックにペナルティが科される可能性がある）、非準拠パスが選択されてもよい。しかしながら、ＳＴＡＭＰ指定は、追加的または代替的に、他の何らかの好適な方法で経路選択プロセスと統合することができ、あるいは代替的に統合することができない。
【０１２１】
図７Ａに示すように、イーサネット（登録商標）及びメッシュが混合した非隣接ネットワークはＳＴＡＭＰを用いて実現可能である。図７Ａにおいて、雲状のものはメッシュネットワークを表し、円筒はクライアント装置を表す。ＳＴＡＭＰノードは丸みを帯びた長方形で表され、レガシーイーサネット（登録商標）スイッチは長方形として示されている。点線は８０２．１１無線リンクを表し、実線は有線イーサネット（登録商標）接続を表す。
【０１２２】
ノードＡは、インターネット及びローカルネットワークの両方に接続されているゲートウェイノードである。そして、ノードＡは、ノードＢ及びノードＣとメッシュを構成する。ノードＢ、Ｃ、及びＤで構成されるネットワーク内のすべてのイーサネット（登録商標）リンクは、同じスパニングツリードメインの一部である。追加のイーサネット（登録商標）リンクがノードＣとノードＤとの間に追加される場合、ＳＴＰプロセスはループを防ぐためにポートの１つを無効にする。
【０１２３】
ノードＤは、ノードＡ、Ｂ、またはＣと無線接続していないため、独自のメッシュネットワークを作成する。ノードＤは、この小さいメッシュ上のＢ、Ｃ及びＤによって構成されるイーサネット（登録商標）ネットワークの要素であることを通知し、ノードＤがこのメッシュの唯一の要素であるため、ノードＤはこのメッシュからそのイーサネット（登録商標）セグメントへのトラフィックのための指定転送器になる。
【０１２４】
その一方で、ノードＡ、Ｂ及びＣが要素であるメッシュで、ノードＡは、ノードＡがこれ自体のイーサネット（登録商標）セグメントを有することを通知する。ノードＡはそのイーサネット（登録商標）セグメントに接続できるそのメッシュの唯一の要素であるため、ノードＡはそのメッシュ−イーサネット（登録商標）境界の指定転送器に選定される。ノードＢ及びノードＣは、どちらもイーサネット（登録商標）セグメントに接続され、どちらも同じメッシュの要素であるため、この事実を通知する。メッシュへの最良のピアリンクを持っているどのノードも、指定転送器に選ばれる。この例のために、ノードＢがより良好なリンクを持ち、その結果選出されると想定する。
【０１２５】
トポロジ変更のＳＴＡＭＰ通知を受信すると、ノードは通常のスケジュールで新しい情報を通知する。各ノードは、新しい情報が見つかるとすぐに通知を開始し、メッシュの各要素によって構築されたＳＴＡＭＰテーブルは一意の識別子（例えば、ブリッジのＭＡＣアドレスなどのＳＴＡＭＰ識別子）によってインデックスが付けられるため、新しい情報は数秒以内に古い情報を置き換える。古い情報は、数回の更新期間の後に期限切れにするという単純な方法で処理される。ノードが他のノードに代わって情報を通知することはないため、古いデータが伝搬されるという問題はない。
【０１２６】
クライアント２がブロードキャストフレームを送信すると、ノードＤはそれを受信して、それをノードＤのメッシュ、ノードＤのアクセスポイントのもう一方のクライアント（３）、及びイーサネット（登録商標）セグメントに転送する。クライアント１と同様に、ノードＢ及びノードＣの両方がそれを受信する。ノードＣはそのブロードキャストフレームを受信し、もしあれば、それをクライアントのいずれかに送信するが、メッシュの転送器として指定されていないので転送しない。そしてノードＢがフレームを受信し、ノードＡがメッシュからフレームを受信する。ノードＡは、そのフレームをノードＡ自体のイーサネット（登録商標）セグメントに転送する。このイーサネット（登録商標）セグメントには、どのような場合でもクライアントが存在しない。
【０１２７】
このようにして、ノードＢとノードＣとの間のスイッチは、常に同じ送信元から同じベクトルに沿ってトラフィックを受信するため、送信元の位置を誤って学習してしまうことはない。
【０１２８】
ノードＣのクライアントがブロードキャストフレームを送信した場合、状況は少し複雑になる。この場合、ノードＣは指定転送器ではないが、イーサネット（登録商標）セグメントとメッシュの両方にフレームを挿入する。そしてメッシュを介してこのフレームを受信すると、ノードＢは、このフレームの送信側（ノードＣ）が同じイーサネット（登録商標）セグメントの要素であることを認識する。これは、メッシュ上のフレームはすでにそのようにマークされているためであり、そのためこのフレームをイーサネット（登録商標）に再挿入する必要はない。ノードＤは、イーサネット（登録商標）を介してのみフレームを認識し、ノードＤは、ノードＣがそのメッシュの要素ではないことを知っており、ノードＤは、このメッシュ−イーサネット（登録商標）インタフェースの指定転送器であるために、必要に応じて転送を行う。
【０１２９】
このプロトコルは、ノードが、それらが要素であるイーサネット（登録商標）セグメント、及びそれらが要素であるメッシュセグメントについて知ることのみを要求することが理解でき、このプロトコルは、無制限に拡大縮小することができ、非常に大規模なネットワークに対して問題を提示しないはずである。このプロトコルでは、フレームが毎回同じベクトルに従って有線イーサネット（登録商標）に配信されることが保証されているため、メッシュネットワークに接続して正しく動作するためにレガシーイーサネット（登録商標）システムを変更する必要はない。これは、集中的な構成決定を強制することによって確定的であることを保証するプロトコルとは大きく異なる。これらのシステムでは、何らかの中心点がネットワーク全体に影響を与える決定を下さなければならず、その情報をネットワーク内のすべてのノードに伝達するための方式がなくてはならない。
【０１３０】
メッシュネットワークの本質的に分散化され、無限にスケーラブルな性質に合わせて、ＳＴＡＭＰは、中央の権限や事実の情報源を必要とせずに、同様のレベルのパフォーマンスを実現する。その結果、特定のノードがプロトコルを正しく適用できなかったために引き起こされる中断の範囲は限られる。つまり、不正に注入されたフレームでも、単一のイーサネット（登録商標）セグメントにしか影響を与えない。領域の端にあるノードが正しくＳＴＡＭＰマーキングを適用している限り、ループまたは確率的配信は、非準拠ノードによって機能が果たされる領域に局在化される。これにより、ネットワークには、ＳＴＡＭＰノード間の通信障害に対する復元性がもたらされる。
【０１３１】
ＳＴＡＭＰプロトコル（及び／またはその任意の好適な要素）は、１回、繰り返し（例えば、定期的に、散発的に、トリガ発生に応答して、など）、及び／または他の何らかの好適なタイミングで実行することができる。例えば、ＳＴＡＭＰ通知をブロードキャストすることができ（例えば、１５秒ごとなど定期的に、ＳＴＡＭＰメトリック及び／またはセグメント更新の決定に応じてなど）、その通知に基づいて新しいフォワーディング装置を決定することができる（例えば、一定の周期的なレートで決定されるなど、定期的に；ＳＴＡＭＰ通知の受信に応答して；など）。
【０１３２】
本明細書に記載されるＳＴＡＭＰプロトコルまたは修正版は、ＬＡＮ全体；ＶＬＡＮ（例えば、ネットワークの各ＶＬＡＮに単独で適用される）、１組のＶＬＡＮ、及び／または他の何らかの好適なブロードキャストドメイン（複数可）；より大きなネットワーク（例えば、ＷＡＮ、ＭＡＮ、複数のＬＡＮを含むネットワークなど）；及び／または他の何らかの好適なネットワークシステムに適用されてもよい。
【０１３３】
当業者であれば、本明細書に記載されているＳＴＡＭＰプロトコルまたは修正版が、システム１００または方法２００のいずれにも適用され得ることを認識するであろう。
【０１３４】
好ましい実施形態の方法及びその変形例では、コンピュータ可読命令を記憶するコンピュータ可読媒体を受け入れるように構成された機械として、少なくとも部分的に実施し、及び／または実装することができる。命令は、好ましくはメッシュネットワークと統合されたコンピュータ実行可能コンポーネントによって実行されることが好ましい。コンピュータ可読媒体は、ＲＡＭ、ＲＯＭ、フラッシュメモリ、ＥＥＰＲＯＭ、光学装置（ＣＤまたはＤＶＤ）、ハードドライブ、フロッピードライブ、または任意の好適な装置などの任意の好適なコンピュータ可読媒体に格納することができる。コンピュータ実行可能コンポーネントは、一般的または特定用途向けプロセッサであることが好ましいが、任意の好適な専用ハードウェアまたはハードウェア／ファームウェアの組合せ装置が、代替的または追加的に命令を実行することができる。
【０１３５】
図は、好ましい実施形態、例示的な構成、及びそれらの変形例による、システム、方法、及びコンピュータプログラム製品の可能な実装のアーキテクチャ、機能、及び動作を示す。この点で、フローチャートまたはブロック図の各ブロックは、特定の論理機能（複数可）を実施するための１つまたは複数の実行可能命令を含むモジュール、セグメント、ステップ、またはコードの一部を表すことができる。また、いくつかの代替の実施態様では、ブロックに示されている機能は、図に示されている順序とは異なる順序で起こり得ることに留意されたい。例えば、連続して示されている２つのブロックは、実際には、実質的に同時に実行されてもよく、または含まれる機能に応じて時には逆の順序で実行されてもよい。ブロック図及び／またはフローチャート図の各ブロックと、ブロック図及び／またはフローチャート図のブロックの組合せとは、指定された機能もしくは動作を実行する専用ハードウェアベースのシステムによって実装されるか、または専用ハードウェアとコンピュータ命令の組合せによって実施されることができることにも留意されたい。
【０１３６】
当業者であれば、前述の詳細な説明ならびに図面及び特許請求の範囲から理解されるように、以下の特許請求の範囲で定義される本発明の範囲から逸脱することなく、本発明の好ましい実施形態に対して修正及び変更を加えることができる。
【図１】
2020195161.tif 000012
【図２】
2020195161.tif 000013
【図３】
2020195161.tif 000014
【図４】
2020195161.tif 000015
【図５Ａ】
2020195161.tif 000016
【図５Ｂ】
2020195161.tif 000017
【図５Ｃ】
2020195161.tif 000018
【図５Ｄ】
2020195161.tif 000019
【図６】
2020195161.tif 000020
【図７Ａ】
2020195161.tif 000021
【図７Ｂ】
2020195161.tif 000022
【図７Ｃ】
2020195161.tif 000023
【図７Ｄ】
2020195161.tif 000024