(57)【要約】  少なくとも３つのレベルまたは層を含む、ネットワーク構成要素間でデータパケットを受信、処理および転送する階層分散ルーティングアーキテクチャが提供される。コアレベルルータ構成要素は、着信パケットをネットワーク構成要素から受信し、受信されたパケットに関連付けられた宛先アドレスのサブセットの処理に基づき、分散レベルルータ構成要素を識別する。転送されたパケットを受信し、かつ通過レベルルータ構成要素を識別する分散レベルルータ構成要素は、受信されたパケットに関連付けられた宛先アドレスの少なくともサブセットの第２の処理に基づく。通過レベルルータ構成要素は、転送されたパケットを受信し、パケットをそれぞれのネットワークへ転送する。分散ルーティング環境と関連付けられたＦＩＢの部分のマッピングまたは他の割り当ては、ルータ管理構成要素により管理される。
2013514743.tif 000002
【特許請求の範囲】
【請求項１】
パケットをルーティングするためのシステムであって、
計算装置上で実行される、宛先アドレス情報をルータ階層に関連付けるためのルータ管理構成要素と、
ルーティング用の着信パケットを受信するための前記ルータ階層の第１のレベルに対応する１つまたは複数のルータ構成要素と、
ルータ階層の前記第１のレベルに対応する前記１つまたは複数のルータ構成要素のうち少なくとも１つから受信されたルーティングのため着信パケットを処理するための、前記ルータ階層の第２のレベルに対応する１つまたは複数のルータ構成要素と、
ルータ階層の前記第２のレベルに対応する前記１つまたは複数のルータ構成要素のうち少なくとも１つから受信されたルーティングのため着信パケットを処理する、ルータ階層の第３のレベルに対応する１つまたは複数のルータ構成要素と、を備え、
ルータ階層の前記第１のレベルに対応する前記１つまたは複数のルータ構成要素は、前記着信パケットに関連付けられた宛先アドレスの第１のサブセットに基づき、ルータ階層の前記第２のレベルに対応する前記１つまたは複数のルータ構成要素から１つまたは複数のルータ構成要素を識別し、前記第１のサブセットは前記ルータ管理構成要素により割り当てられ、
ルータ階層の前記第２のレベルに対応する前記１つまたは複数のルータ構成要素のそれぞれは、前記着信パケットに関連付けられた前記宛先アドレスの前記第１のサブセットの部分に対応し、かつ、
ルータ階層の前記第２のレベルに対応する前記１つまたは複数のルータ構成要素は、前記着信パケットに関連付けられた宛先アドレスの第２のサブセットに基づき、ルータ階層の第３のレベルに対応する前記１つまたは複数のルータ構成要素から１つまたは複数のルータ構成要素を識別し、前記第２のサブセットは前記ルータ管理構成要素により割り当てられ、前記宛先アドレスの前記第２のサブセットは前記宛先アドレスの前記第１のサブセットより大きい、
システム。
【請求項２】
ルータ階層の前記第２のレベルに対応する前記１つまたは複数のルータ構成要素が、前記着信パケットに関連付けられた前記宛先アドレスの前記第１のサブセットにほぼ等しい部分に対応するよう割り振られる、請求項１に記載のシステム。
【請求項３】
ルータ階層の前記第２のレベルに対応する前記１つまたは複数のルータ構成要素が、前記宛先アドレスに起因するトラフィック量に基づき、前記着信パケットに関連付けられた前記宛先アドレスの前記第１のサブセットの部分に対応するよう割り振られる、請求項１に記載のシステム。
【請求項４】
ルータ階層の第１のレベルに対応する前記１つまたは複数のルータ構成要素が、無作為抽出、ラウンドロビン選択、ハッシング、および負荷分散のうち１つに従い選択される、請求項１に記載のシステム。
【請求項５】
前記宛先アドレスがＩＰアドレスに対応する、請求項１に記載のシステム。
【請求項６】
前記ＩＰアドレスの第１のサブセットが、前記ＩＰアドレスの最上位８ビットに対応する、請求項５に記載のシステム。
【請求項７】
前記ＩＰアドレスの第１のサブセットが、前記ＩＰアドレスの最上位１６ビットまたは最上位２４ビットのうち少なくとも１つに対応する、請求項５に記載のシステム。
【請求項８】
前記ルータ階層の第１のレベルに対応する前記１つまたは複数のルータ構成要素のうち少なくとも２つが、共用の物理ルータ構成要素内に実装される、請求項１に記載のシステム。
【請求項９】
前記ルータ階層の第２のレベルに対応する前記１つまたは複数のルータ構成要素のうち少なくとも２つが、共用の物理ルータ構成要素内に実装される、請求項１に記載のシステム。
【請求項１０】
前記ルータ階層の第１のレベルに対応する前記１つまたは複数のルータ構成要素のうち少なくとも２つが、共用の物理ルータ構成要素内に実装される、請求項１に記載のシステム。
【請求項１１】
少なくとも１つの物理ルータ構成要素が、第１のレベルのルータ、第２のレベルのルータおよび第３のレベルのルータのうち少なくとも２つを実装する、請求項１に記載のシステム。
【請求項１２】
パケットをルーティングするためのシステムであって、
ルーティング用の着信パケットを受信するための論理ルータ構成要素の第１の組と、
前記論理ルータ構成要素の第１の組から受信されたパケットのルーティングのための論理ルータ構成要素の第２の組と、
前記論理ルータ構成要素の第２の組から受信されたパケットのルーティングのための論理ルータ構成要素の第３の組と、を備え、
前記論理ルータ構成要素の第１の組は、選択されたルータへの前記着信パケットに関連付けられた宛先アドレスのサブセットのルータ管理構成要素による相互関係に基づき、前記論理ルータ構成要素の第２の組からルータを識別し、
前記論理ルータ構成要素の第２の組に対応する前記１つまたは複数のルータ構成要素のそれぞれは、前記ルータ管理構成要素により、前記着信パケットに関連付けられた前記宛先アドレスの第１のサブセットの部分に対応するように割り振られ、
前記論理ルータ構成要素の第２の組は、前記第２の選択されたルータへの前記着信パケットに関連付けられた宛先アドレスの第２のサブセットの前記ルータ管理構成要素による相互関係に基づき、前記論理ルータ構成要素の第３の組からルータを識別する、
パケットルーティングシステム。
【請求項１３】
前記ルータ構成要素の第２の組からのルータの前記相互関係が、可能な宛先アドレスの実質的に均等な割り振りに基づく、請求項１２に記載のシステム。
【請求項１４】
前記論理ルータ構成要素の第２の組からのルータの前記相互関係が、宛先アドレスのトラフィック量の関連付けに基づく、請求項１２に記載のシステム。
【請求項１５】
前記論理ルータ構成要素の第２の組からのルータの前記相互関係が、宛先アドレスに対するトラフィック量の関連付けと残りの宛先アドレスの均等な割り振りの組み合わせに基づく、請求項１２に記載のシステム。
【請求項１６】
前記論理ルータ構成要素の第２の組からの前記ルータのそれぞれが、閾値の数の宛先アドレスに関連付けられ、前記論理ルータ構成要素の第２の組からのルータの前記相互関係が、前記論理ルータ構成要素の第２の組に関連付けられた宛先アドレスの前記閾値の数より大きい数の割り振りに基づく、請求項１２に記載のシステム。
【請求項１７】
前記論理ルータ構成要素の第２の組からのルータの前記相互関係が、宛先アドレスの低トラフィック量の関連付けに基づく、請求項１２に記載のシステム。
【請求項１８】
前記論理ルータ構成要素の第２の組からのルータの前記相互関係が、宛先アドレスの同一のサブセットの複数のルータの割り振りを含む、請求項１２に記載のシステム。
【請求項１９】
ルータ構成要素の第１の組が、無作為抽出、ラウンドロビン選択、ハッシュ選択、負荷分散のうち１つに従い選択される、請求項１２に記載のシステム。
【請求項２０】
前記宛先アドレスがＩＰアドレスに対応する、請求項１２に記載のシステム。
【請求項２１】
前記ＩＰアドレスの第１のサブセットが、前記ＩＰアドレスの最上位８ビットに対応する、請求項２０に記載のシステム。
【請求項２２】
前記ＩＰアドレスの第２１のサブセットが、前記ＩＰアドレスの最上位１６ビットまたは最上位２４ビットのうち少なくとも１つに対応する、請求項２１に記載のシステム。
【請求項２３】
前記論理ルータ構成要素の第１の組のそれぞれが、物理ルータ構成要素に対応する、請求項１２に記載のシステム。
【請求項２４】
前記論理ルータ構成要素の第１の組の２つ以上が、単一の物理ルータ構成要素に対応する、請求項１２に記載のシステム。
【請求項２５】
前記論理ルータ構成要素の第２の組のそれぞれが、物理ルータ構成要素に対応する、請求項１２に記載のシステム。
【請求項２６】
前記論理ルータ構成要素の第２の組の２つ以上が、単一の物理ルータ構成要素に対応する、請求項１２に記載のシステム。
【請求項２７】
前記論理ルータ構成要素の第３の組のそれぞれが、物理ルータ構成要素に対応する、請求項１２に記載のシステム。
【請求項２８】
前記論理ルータ構成要素の第３の組の２つ以上が、単一の物理ルータ構成要素に対応する、請求項１２に記載のシステム。
【請求項２９】
前記第１の論理構成要素の組のうち少なくとも１つ、前記論理構成要素の第２の組のうち少なくとも１つ、および前記論理構成要素の第３の組のうち少なくとも１つが、単一の物理ルータ構成要素に対応する、請求項１２に記載のシステム。
【請求項３０】
パケットをルーティングするための方法であって、
第１の通信ネットワークから受信されたデータパケットに対応するルーティング要求を取得するステップと、
１つまたは複数のルータ構成要素に対応する、ルータ階層の第１のレベルに対応する第１のルータを識別するステップと、
前記受信されたデータパケットを前記識別された第１のルータへ転送するステップと、
１つまたは複数のルータ構成要素に対応する、前記ルータ階層の第２のレベルに対応する第２のルータを識別するステップと、
前記受信されたデータパケットを前記識別された第２のルータへ転送するステップと、
１つまたは複数のルータ構成要素に対応する、前記ルータ階層の第３のレベルに対応する第３のルータを識別するステップと、を含み
前記ルータ階層の第２のレベルに対応する前記第２のルータを識別するステップが、前記選択されたルータへの前記受信されたデータパケットに関連付けられた宛先アドレスのサブセットの相互関係に基づき、
前記ルータ階層の第３のレベルに対応する第３のルータを識別するステップが、前記第２の選択されたルータへの前記受信されたパケットに関連付けられた宛先アドレスの第２のサブセットの相互関係に基づく、方法。
【請求項３１】
前記ルータ階層の前記第２のレベルに対応する前記１つまたは複数のルータ構成要素のそれぞれが、前記着信パケットに関連付けられた前記宛先アドレスの前記第１のサブセットの部分に対応するよう割り振られる、請求項３０に記載の方法。
【請求項３２】
前記ルータ階層の前記第２のレベルからのルータの前記相互関係が、可能な宛先アドレスの少なくとも実質的に均等な割り振りに基づく、請求項３１に記載の方法。
【請求項３３】
前記ルータ階層の前記第２のレベルからのルータの前記相互関係が、宛先アドレスのトラフィック量の関連付けに基づく、請求項３１に記載の方法。
【請求項３４】
前記ルータ階層の前記第２のレベルからのルータの前記相互関係が、宛先アドレスのトラフィック量の関連付けと残りの宛先アドレスの均等な割り振りの組み合わせに基づく、請求項３１に記載の方法。
【請求項３５】
前記ルータ階層の前記第２のレベルからのルータのそれぞれが、閾値の数の宛先アドレスに関連付けられ、前記ルータ階層の前記第２のレベルからのルータの前記相互関係が、前記ルータ階層の前記第２のレベルに関連付けられた宛先アドレスの前記閾値の数より大きい数の割り振りに基づく、請求項３１に記載の方法。
【請求項３６】
前記ルータ階層の前記第２のレベルからのルータの前記相互関係が、宛先アドレスの低トラフィック量の関連付けに基づく、請求項３１に記載の方法。
【請求項３７】
前記ルータ構成要素の第２の組からのルータの前記相互関係が、宛先アドレスの同一のサブセットに対する複数のルータの割り振りを含む、請求項３１に記載の方法。
【請求項３８】
ルータ構成要素の第１の組が、無作為抽出、ラウンドロビン選択、ハッシュ選択、負荷分散のうち１つに従い選択される、請求項３０に記載の方法。
【請求項３９】
前記宛先アドレスがＩＰアドレスに対応する、請求項３０に記載の方法。
【発明の詳細な説明】
【背景技術】
【０００１】
一般的に記述すると、計算装置は、データを交換するために、通信ネットワーク、または一連の通信ネットワークを使用する。一般的な実施形態では、交換されるデータは、送信する計算装置と受信者の計算装置との間で伝送可能な一連のパケットに分割される。一般に、それぞれのパケットは、２つの主な構成要素、すなわち、制御情報およびペイロードデータを含むと考えることができる。制御情報は、ペイロードデータを送達するために１つまたは複数の通信ネットワークが使用する情報に対応する。例えば、制御情報は、送信元および宛先ネットワークアドレス、エラー検出コードならびにパケットシーケンス識別などのようなものを含むことができる。一般的に、制御情報は、パケット内に含まれ、かつペイロードデータに近接したパケットヘッダおよびパケットトレーラ内に見出される。
【０００２】
実際には、パケット交換通信ネットワークでは、パケットは複数の物理ネットワーク間またはサブネットワーク間で伝送される。通常、物理ネットワークは、送信元ネットワーク構成要素からパケットを受信し、パケットを受信者のネットワーク構成要素へ転送する多数のハードウェア装置を含む。パケットルーティングハードウェア装置は、一般的にルータと呼ばれる。一般的に記述すると、ルータは２つの主な機能、すなわちプレーンにより作動可能である。第１の機能は制御プレーンに対応し、ルータは受信されたパケットを特定の宛先へ転送するのに最も適切な送出インタフェースの組を記憶する。第２の機能は転送プレーンであり、ルータは受信されたパケットを外向きインタフェースへ送信する。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
制御プレーンの機能性を実行するため、ルータは、他のパケット属性情報の中でも、インターネットプロトコル（"ＩＰ"）アドレスのような可能なネットワークアドレスの少なくともサブセットの宛先情報を識別する、転送情報ベース（ＦＩＢ）を維持することができる。一般的な実施形態では、ＦＩＢはルータの情報を転送するネットワークを特定する値のテーブルに対応する。１つの態様では、市販のレベルルーティングハードウェア構成要素は、単一のルータがＦＩＢの何百万ものエントリに対応することを可能にする、カスタマイズされたチップセット、メモリ構成要素、およびソフトウェアを含むことができる。しかし、そのような市販のレベルルーティングハードウェア構成要素は、一般的に非常に高価であり、しばしば広範囲のカスタマイズを必要とする。別の態様では、商品ベースのルーティングハードウェア構成要素が、より一般的な構成要素で製造され、市販のレベルルーティングハードウェア構成要素よりかなり大幅なレベルで安価にすることができる。しかし、そのような商品ベースのルーティングハードウェア構成要素は、一般的に数千程度のエントリでＦＩＢに対応するのみである。
【課題を解決するための手段】
【０００４】
前述の態様および本発明の多くの付随した利点は、それが添付の図と合わせ下記の後述の詳細な記載を参照してよく理解されるにつれ、より容易に理解されるであろう。
【図面の簡単な説明】
【０００５】
【図１Ａ】ルータ管理構成要素および階層分散ルーティング構成要素アーキテクチャを含む、分散ルーティング環境の１つの実施形態の例示のブロック図である。
【図１Ｂ】図１Ａの分散ルーティング環境により使用されるルータ構成要素の構成要素の例示のブロック図である。
【図２Ａ】階層分散ルーティング構成要素アーキテクチャ内で受信されたパケットのルーティングを示す、図１Ａの分散ルーティング環境の例示のブロック図である。
【図２Ｂ】階層分散ルーティング構成要素アーキテクチャ内で受信されたパケットのルーティングを示す、図１Ａの分散ルーティング環境の例示のブロック図である。
【図２Ｃ】階層分散ルーティング構成要素アーキテクチャ内で受信されたパケットのルーティングを示す、図１Ａの分散ルーティング環境の例示のブロック図である。
【図３】分散ルーティング環境内で実行される分散ルータアーキテクチャルーティングルーチンの例示のフロー図である。
【図４】分散ルーティング環境内で実行される分散ルータアーキテクチャルーティングルーチンの例示のフロー図である
【発明を実施するための形態】
【０００６】
一般的に記述すると、本開示は分散ルーティングアーキテクチャに対応する。具体的には、本開示は、ネットワーク構成要素間のデータパケットの受信、処理および転送のための少なくとも３つの論理レベルまたは層を含む、階層分散ルーティングアーキテクチャに対応する。一実施形態では、３つの論理レベルは、コアレベル、分散レベルおよび通過レベルに対応することができる。実例として、コアレベルは、ネットワーク構成要素から着信パケットを受信し、受信されたパケットに関連付けられた宛先アドレス情報を処理する、１つまたは複数のルータ構成要素に対応する。コアレベルルータ構成要素は、それから、受信されたパケットに関連付けられた宛先アドレスのサブセットに基づき、分散レベルルータ構成要素を識別する。分散レベルは、コアレベルルータ構成要素から転送されたパケットを受信し、さらに受信されたパケットに関連付けられた宛先アドレス情報を処理する１つまたは複数のルータ構成要素に対応する。分散レベルルータ構成要素は、受信されたパケットに関連付けられた宛先アドレスの少なくともサブセットに基づき、通過レベルルータ構成要素を識別する。それぞれの分散レベルルータ構成要素は、分散ルーティングアーキテクチャに関連付けられたＦＩＢのサブセットに関連付けられ、またはそうでなければ対応する。最後に、通過レベルルータ構成要素は、分散レベルルータ構成要素から転送されたパケットを受信し、パケットをそれぞれのネットワーク、またはネットワークノードに「アップストリーム」転送する、１つまたは複数のルータ構成要素に対応する。分散ルーティング環境に関連付けられたＦＩＢの部分のマッピング、または他の割り当ては、ルータ管理構成要素が管理する。
【０００７】
１つの実施形態では、コアレベル、分散レベル、および通過レベルに関連付けられたルータ構成要素のそれぞれは、商品ベースのルータ構成要素／ハードウェアにより詳しく対応することが可能である。別の実施形態では、コアレベル、分散レベル、および通過レベルルータ構成要素は、必ずしも対応するハードウェアルータ構成要素を持たない論理ルータ構成要素に対応する。例えば、それぞれのレベル内の１つまたは複数の論理ルータ構成要素は、同一のハードウェアルータ構成要素内に実装されてもよい。同様に、分散ルーティングアーキテクチャの異なるレベルに関連付けられた論理ルータ構成要素は、同一のハードウェアルータ構成要素内に実装されてもよい。しかし、両方の実施形態では、分散ルーティング環境に関連付けられたＦＩＢを維持する負荷がいくつかのルータ構成要素の間で分割されるので、商品ベースのルータ構成要素／ハードウェアに関連付けられた処理およびメモリ制限を軽減することができる。分散ルーティング環境に関連付けられたＦＩＢの分割に対する種々の実行、組み合わせおよび適用が、分散ルーティング環境により記載される。しかし、当業者はそのような実施形態および例が例示的な性格のものであり、限定として解釈されるべきでないことを理解するであろう。
【０００８】
ここで図１Ａを参照すると、階層分散ルーティングアーキテクチャを実装する分散ルーティング環境１００が示される。分散ルーティング環境１００は、分散ルーティング環境１００により使用されるルーティング情報を制御するルータ管理構成要素１０２を含む。具体的には、ルータ管理構成要素１０２は、分散ルーティング環境１００が使用する全てのアップストリームルーティング情報を受信し、記載するように分散ルーティング環境１００の構成要素間でアップストリームルーティング情報の割り当てを割り振ることができる。１つの実施形態では、ルータ管理構成要素１０２は、分散ルーティング環境１００の１つまたは複数の構成要素と通信する計算装置に対応することができる。例示の計算装置は、サーバ計算装置、パーソナル計算装置、またはルータ管理構成要素１０２の機能に関連付けられた指示を実行するためのプロセッサ、メモリおよび他の構成要素を含む他の計算装置を含むことができる。別の実施形態では、ルータ管理構成要素１０２を、後述するルータ構成要素のうちの１つまたは複数で実行されるソフトウェア構成要素として実装してもよい。実例として、ルータ管理構成要素１０２は、分散ルーティング環境１００に関連付けられたＦＩＢを維持およびアップデートする。また、ルータ管理構成要素１０２は、後述するように、ＦＩＢエントリの部分の負担を、分散ルーティング環境１００の種々の層へ割り振ることができる。一実施形態では、ルータ管理構成要素１０２は、分散ルーティング環境１００の種々のルータ構成要素への分散によりＦＩＢを分割し、種々のルータ構成要素に関連付けられたメモリ内に維持されるＦＩＢのそれぞれの部分を分散することが可能である。
【０００９】
図１Ａを引き続き参照すると、分散ルーティング環境１００は、データパケットを分散ルーティング環境１００へ伝送する第１の通信ネットワーク１０４を含む。第１の通信ネットワーク１０４は、分散ルーティング環境１００へパケットベースの通信を確立するのに必要なネットワークハードウェアおよびプロトコルの任意の適切な組み合わせを含んでもよい。例えば、通信ネットワーク１０４は、ローカルエリアネットワーク（ＬＡＮ）のようなプライベートネットワーク、広域ネットワーク（ＷＡＮ）、公衆またはプライベート無線ネットワークを含んでもよい。そのような実施形態では、通信ネットワーク１０４は、分散ルーティング環境１００とネットワークリンクを確立するのに必要なハードウェア（例えばモデム、ルータ、スイッチ、ロードバランサ、プロキシサーバ、など）およびソフトウェア（例えばプロトコルスタック、アカウンティングソフトウェア、ファイアウォール／セキュリティソフトウェア、など）を含んでもよい。また、通信ネットワーク１０４は、計算装置間でデータを伝達するための種々の通信プロトコルのうちの１つを実装してもよい。より詳細に後述するように、通信プロトコルは、インターネットプロトコルバージョン４（ＩＰｖ４）およびインターネットプロトコルバージョン６（ＩＰｖ６）のインターネット層通信ネットワークプロトコルに対応するネットワークアドレス情報のような、パケットフロー情報を定義するプロトコルを含むことができる。しかし当業者は、本開示が付加的なまたは代替的なプロトコルでも適用可能である場合があり、示された例は限定すると解釈されるべきでないことを理解するであろう。
【００１０】
第１の通信ネットワーク１０４と通信しているのは分散ルーティング環境１００の第１のレベルであり、通常コア層またはコアレベルと呼ばれる。１つの実施形態では、コアレベルは、通常コアレベルルータ１０６Ａ、１０６Ｂ、および１０６Ｃと呼ばれる１つまたは複数の論理ルータ構成要素に対応する。前述したように、分散ルーティング環境１００内では、コアレベルルータ１０６Ａ、１０６Ｂ、１０６Ｃはネットワーク１０４からの構成要素から着信パケットを受信し、受信されたパケットに関連付けられた宛先アドレスのサブセットに基づき分散レベルルータ構成要素を識別することにより宛先アドレスを処理する。実例として、宛先アドレスのサブセットは、ＩＰアドレスの最上位ビットの値のように、宛先ＩＰアドレス全体より少なく対応することができる。前述したように、コアレベルルータ１０６Ａ、１０６Ｂ、１０６Ｃは、１つまたは複数のハードウェア構成要素に実行される論理ルータ構成要素に対応することができる。１つの実施形態では、それぞれの論理ルータ構成要素は、専用の物理ルータ構成要素に対応することができる。別の実施形態では、それぞれの論理ルータ構成要素は、分散ルータ環境１００内で少なくとも１つの他の論理ルータ構成要素に共用される物理ルータ構成要素に対応することができる。代替的な実施形態で、コア層の少なくともいくつかの部分を、分散ルータ環境１００の外側の構成要素により実行されてもよい。そのような実施形態では、そのような外部の構成要素は分散ルータ環境１００の分散レベルルータ構成要素（後述）を直接アドレス指定することになる。
【００１１】
分散ルーティング環境１００は、概して分散層または分散レベルと呼ばれる論理ルータ構成要素の第２のレベルをさらに含むことができる。一実施形態では、分散レベルは、概して分散レベルルータ１０８Ａ、１０８Ｂ、および１０８Ｃと呼ばれる１つまたは複数のルータ構成要素に対応する。前述したように、分散ルーティング環境１００内で、分散レベルルータ１０８Ａ、１０８Ｂおよび１０８Ｃはコアルーティング構成要素１０２から着信パケットを受信し、かつ受信されたパケットに関連付けられた宛先アドレスの少なくともサブセットに基づき通過レベルルータ構成要素を識別することにより、宛先アドレスを処理する。実例として、宛先アドレスのサブセットは、コアレベルルータ１０６Ａ、１０６Ｂ、１０６Ｃにより使用される宛先ＩＰアドレスのより大きなサブセットに対応することができる。この実施形態で、分散レベルにより実行されるルーティングは、コアレベルルーティングに関連する受信されたパケットのより改良されたルーティングに対応することができる。コアレベルルータ１０６Ａ、１０６Ｂ、１０６Ｃについて前述したように、分散レベルルータ１０８Ａ、１０８Ｂ、および１０８Ｃは、１つまたは複数のハードウェア構成要素に実行される論理ルータ構成要素に対応することができる。１つの実施形態では、それぞれの論理ルータ構成要素は、専用の物理ルータ構成要素に対応することができる。他の実施形態では、それぞれの論理ルータ構成要素は、分散ルータ環境１００内の少なくとも１つの他の論理ルータ構成要素に共用される物理ルータ構成要素に対応することができる。
【００１２】
分散レベルルータ構成要素と通信しているのは、ルータ構成要素の第３のレベルであり、概して伝達層または通過レベルと呼ばれる。一実施形態では、通過レベルは、概して通過レベルルータ１１０Ａ、１１０Ｂ、および１１０Ｃと呼ばれる１つまたは複数のルータ構成要素に対応する。前述したように、通過レベルルータ１１０Ａ、１１０Ｂ、１１０Ｃは、分散レベルルータ構成要素１０８Ａ、１０８Ｂ、１０８Ｃから転送されたパケットを受信し、別の通信ネットワーク１１２ノードへ、パケットを「アップストリーム」転送する。実例として、それぞれの通過レベルルータ１１０Ａ、１１０Ｂ、１１０Ｃは、関連付けられたピアネットワーク構成要素を目的地とした全てのパケットが割り当てられた通過レベルルータ１１０Ａ、１１０Ｂ、１１０Ｃ（または冗長ルータ）を通って伝達されるように、１つまたは複数のアップストリームピアと通信するよう構成することができる。コアレベルルータ１０６Ａ、１０６Ｂ、１０６Ｃおよび分散レベルルータ１０８Ａ、１０８Ｂおよび１０８Ｃについて前述したように、通過レベルルータ１１０Ａ、１１０Ｂ、１１０Ｃは、１つまたは複数のハードウェア構成要素に実行される論理ルータ構成要素に対応することができる。１つの実施形態では、それぞれの論理ルータ構成要素は、専用の物理ルータ構成要素に対応することができる。別の実施形態で、それぞれの論理ルータ構成要素は、分散ルータ環境１００内の少なくとも１つの他の論理ルータ構成要素に共用される物理ルータ構成要素に対応することができる
【００１３】
通信ネットワーク１０４と同様に、通信ネットワーク１１２は、分散ルーティング環境１００へパケットベースの通信を確立するのに必要なネットワークハードウェアおよびプロトコルの任意の適切な組み合わせを含んでもよい。例えば、通信ネットワーク１１２は、ローカルエリアネットワーク（ＬＡＮ）のようなプライベートネットワーク、広域ネットワーク（ＷＡＮ）、公衆またはプライベート無線ネットワークを含んでもよい。そのような実施形態では、通信ネットワーク１１２は、分散ルーティング環境１００とネットワークリンクを確立するのに必要なハードウェア（例えばモデム、ルータ、スイッチ、ロードバランサ、プロキシサーバなど）およびソフトウェア（例えばプロトコルスタック、アカウンティングソフトウェア、ファイアウォール／セキュリティソフトウェアなど）を含んでもよい。通信ネットワーク１０４に関して前述したように、通信ネットワーク１１２は、計算装置間のデータを伝達するための種々の通信プロトコルのうちの１つを実行してもよい。しかし、当業者は、本開示が付加的なまたは代替的なプロトコルでも適用可能である場合があり、示された例は限定すると解釈されるべきでないことを理解するであろう。
【００１４】
例示の実施形態では、図１Ａの論理ルータ構成要素（１０６、１０８、１１０）は、処理リソース、メモリリソース、ネットワークインタフェース、および論理ルータ構成要素のそれぞれの記載された機能性を保有するための他のハードウェア／ソフトウェアを有する計算装置に対応してもよい。ここで図１Ｂを参照すると、図１Ａの分散ルーティング環境１００によって使用されるルータ構成要素１５０の構成要素の一例のブロック図が示される。図１Ｂに示されるルータ構成要素１５０の一般的なアーキテクチャは、１つまたは複数の論理ルータ構成要素１０６、１０８、１１０を実行するのに使用してもよいコンピュータハードウェアおよびソフトウェア構成要素の配置を含む。当業者は、ルータ構成要素１５０が図１Ｂに示されるよりずっと多い（または少ない）構成要素を有してもよいことを理解するであろう。しかし、これらの一般的な従来の構成要素を、可能な開示を提供するために示す必要はない。
【００１５】
図１Ｂに示されるように、ルータ構成要素１５０は、処理ユニット１５２、少なくとも１つのネットワークインタフェース１５６、および少なくとも１つのコンピュータ可読な媒体ドライブ１５８を含み、これらの全ては通信バスの手段により互いに通信してもよい。処理ユニット１５２は、よって、ネットワークを介して他のコンピューティングシステムまたはサービスから情報および指示を受信してもよい。処理ユニット１５２は、分散ルーティング環境１００に関連付けられたＦＩＢの少なくとも一部などのような、宛先アドレス情報の処理に使用される情報を得るため、第１のメモリ構成要素１５４に関連付けられてもよい。メモリ１５４は、通常ＲＡＭ、ＲＯＭおよび／または他の持続性メモリを有する。処理ユニット１５２はまた、メモリ１６０へ、またメモリ１６０から通信してもよい。ネットワークインタフェース１５６は、１つまたは複数のネットワークまたはコンピューティングシステムへの接続性を提供してもよい。少なくとも１つのコンピュータ可読な媒体ドライブ１５８はまた、ＲＡＭ、ＲＯＭ、光学メモリ、および／または分散ルーティング環境１００に関連付けられたＦＩＢの少なくとも一部を持続することができる他の持続性メモリに対応することが可能である。例示の実施形態では、メモリ構成要素１５４に関連付けられたアクセスタイムは、コンピュータ可読な媒体ドライバ１５８に関連付けられたアクセスタイムより速い場合がある。さらになお、コンピュータ可読な媒体ドライブ１５８は、複数のルータ構成要素１５０がコンピュータ可読な媒体ドライブ１５８に持続された情報へのアクセスを共用するネットワーク環境において実装されてもよい。
【００１６】
メモリ１６０は、動的分類子の操作のために処理ユニット１５２が実行するコンピュータプログラム命令を含む。メモリ１６０は、概してＲＡＭ、ＲＯＭおよび／または他の持続性メモリを含む。メモリ１６０は、ルータ構成要素１５０の全般の管理および作動において処理ユニット１５２が使用するコンピュータプログラム命令を提供するオペレーティングシステム１６２を格納してもよい。メモリ１６０はさらに、分散ルーティング環境１００内の１つまたは複数の論理ルータ構成要素を実行するコンピュータプログラム命令および他の情報を含んでもよい。例えば、一実施形態では、メモリ１６０はルータ１０６、１０８、１１０に関連付けられた機能性を実行するルータモジュール１６４を有する。複数の論理ルータが同一のルータ構成要素１５０により実行される場合、メモリ１６０はルータモジュール１６４のそれぞれのインスタンスを有してもよい。
【００１７】
例示の実施形態では、それぞれのルータ構成要素１５０は、１つまたは複数の論理ルータ１０６、１０８、１１０を実行する個々のハードウェア構成要素として実現されてもよい。代わりに、複数のルータ構成要素１５０をグループ化し、ともに実行してもよい。例えば、それぞれのルータ構成要素１５０は、処理ユニット１５２、メモリ１５４およびメモリ１６０を有する特定用途集積回路（ＡＳＩＣ）（または類似の機能がある他の構成要素）に対応してもよい。ルータ構成要素１５０は、共用通信バスを介してネットワークインタフェース１５６およびコンピュータ可読な媒体１５８のような１つまたは複数の構成要素を共用してもよい。
【００１８】
ここで図２Ａ〜図２Ｃを参照すると、分散ルーティング環境１００による受信するパケットの処理が示される。まず図２Ａを参照すると、着信パケットが通信ネットワーク１０４からコアレベルルータ１０６へ受信される。着信パケットを受信するコアレベルルータ１０６は、負荷分散、無作為抽出、ラウンドロビン、ハッシング、および他のパケット分散技術を含むさまざまな技術により選択してもよいが、技術はそれらに限定されない。受信すると、コアレベルルータ１０６は宛先ＩＰアドレスを処理し、宛先ＩＰアドレスのサブセットを使用してルーティングの第２のレベルを実行する第２のレベル宛先ルータ構成要素を識別する。例示の実施形態では、コアレベルルータ１０６は、宛先アドレスの最上位８ビットのような、ＩＰアドレスの最上位ビットを使用する。最上位ビットの選択に対応するＩＰアドレスのサブセットの選択は、概してプレフィクスと呼ばれる。例えば、最上位８ビットの選択は、プレフィクス長"８"に対応する。最上位１６ビットの選択は、プレフィクス長"１６"に対応する。当業者は、コアレベルルータ１０６が使用するビットの数が変わってもよいことを理解するであろう。また、代わりの実施形態では、コアレベルルータ１０６は異なる方法論を使用して、分散ルーティング環境１００がサービスするアドレススペースを割り振り、またはそうでなければ細分してもよい。
【００１９】
宛先アドレスの第１のサブセットの処理に基づき、コアレベルルータ１０６はパケットを分散レベルルータ、この場合は例示として１０８Ａへ転送する。前述したように、受信する分散レベルルータ１０８Ａは受信されたパケットの宛先アドレスを処理し、また宛先ＩＰアドレスのサブセットを使用して、パケットを次のネットワーク宛先（分散ルーティング環境１００の外側）へ転送する第３のレベルルータ構成要素を識別する。コアレベルルータ１０６と同様に、受信する分散レベルルータをＩＰアドレスの最上位ビット（例えばプレフィクス）の選択を使用しパケットをルーティングするように構成することができる。例示の実施形態では、分散レベルルータ１０８Ａが使用するプレフィクスは、コアレベルルータ１０６が使用するプレフィクスより大きい。分散レベルルータ１０６Ａによる処理に基づき、通過レベルルータ１１０Ｂは転送されたパケットを受信し、パケットを通信ネットワーク１１２に関連付けられた指定された指定へ転送する。
【００２０】
ここで図２Ｂおよび図２Ｃを参照すると、分散ルーティング環境１００内のＩＰアドレスまたはＩＰアドレスのサブセットの割り振りが示される。図２Ｂを参照すると、コアレベルルータ１０６は宛先ＩＰアドレスのサブセットのいくつかの部分を、分散レベルルータ１０８Ａへ分配する（２０２で示される）。分散レベルルータ１０８Ａは、今度は、さらにＩＰアドレスの部分を通過レベルルータ１１０Ａ、１１０Ｂ、および１１ＯＣへ分配する（２０４、２０６、および２０８で示される）。図２Ｃを参照すると、コアレベルルータ１０６は、宛先ＩＰアドレスのサブセットの異なる部分を分散レベルルータ１０８Ｂへ分配する（２１０で示される）。分散レベルルータ１０８Ｂは、今度は、さらにＩＰアドレスの部分を通過レベルルータ１１０Ａおよび１１０Ｂへ分配する（２１２および２１４で示される）。
【００２１】
例示の実施形態では、ルータ管理構成要素１０２（図１）は、ＩＰアドレスのサブセットの負担をさまざまな方法で分散レベルルータに割り振ることができる。一実施形態では、ルータ管理構成要素１０２は、ＩＰアドレス全体の組に対する負担を、ＩＰアドレスの割り当てにより均等に、または可能なルータ間で実質的に均等に割り振ることができる。この実施形態では、それぞれの分散レベルルータ１０８は、ＩＰアドレスの等しいサブセットに対して、またはＩＰアドレスが均等に分割できない場合、実質的に等しいサブセットに対して、負担を持つようになる。別の実施形態では、ルータ管理構成要素１０２は、特定の分散レベルルータ１０８を指定して、高トラフィックのＩＰアドレスまたはプレフィクスをあつかうことが可能である。この例では、ＩＰアドレスの全サブセットをルータ管理構成要素１０２がカスタム選択してもよい。代わりに、トラフィック閾値を満たすＩＰアドレスのサブセットのみを、自動的に分散されたＩＰアドレスの残りの部分とともにカスタム選択してもよい。
【００２２】
なおさらなる実施形態では、複数の分散レベルルータ１０８を、ＩＰアドレスのサブセットに選択してもよい。この実施形態では、それぞれのコアレベルルータ１０６は、等コストマルチパスルーティング（ＥＣＭＰ）技術に基づき複数の分散レベルルータ１０８から選択することができ、特定の分散レベルルータ１０８が標準負荷分担技術に基づき選択される。複数の割り当てられた分散レベルルータ１０８から選択するのに使用可能な他の因子は、通信媒体の選好性、インターネットウェザー、リソース使用率／正常性レポート、割り振られた、または決定したルーティングコスト、サービスレベルアグリーメント（ＳＬＡ）、または他の基準を含む。
【００２３】
１つの実施形態では、それぞれの分散ルータ１０８は、それぞれの分散レベルルータ１０８に割り当てられたＩＰアドレスのサブセットに関連付けられたＦＩＢの部分を維持することができる。他の実施形態で、それぞれの分散レベルルータ１０８は、コンピュータ可読な媒体１５８（図１Ｂ）のようなメモリ構成要素内の分散ルーティング環境１００に関連付けられたＦＩＢ全体を維持することができる。ＩＰアドレスのサブセットがそれぞれの分散レベルルータ１０８に割り当てられる（またはそうでなければ、アップデートされる）と、ＦＩＢの適用可能な部分がルータに使用されるメモリ構成要素１５４（図１Ｂ）（例えばルーティングチップレベルコンテンツアドレス可能メモリまたはプロセッサレベルキャッシュメモリ）のような異なるメモリ構成要素内にロードされる。メモリ構成要素内のＦＩＢの適用可能部分のメンテナンスは、ＦＩＢの適用可能部分のメモリアクセス時間がより速くなることによりルータパフォーマンスの改善を促進する。しかし、この実施形態では、それぞれの分散レベルルータ１０８へのＦＩＢの割り振りを、ＦＩＢ全体を格納する第１のメモリ構成要素（例えばコンピュータ可読な媒体１５８）から分散レベルルータ１０８に割り振られたＦＩＢの部分を維持するメモリ構成要素（例えばメモリ構成要素１５４）へ、格納されたＦＩＢの異なる部分のロードにより変更することができる。従って、この実施形態は、分散レベルルータ１０８の動的割り振り、冗長分散レベルルータの生成、および分散レベルルータに対する付加的なフェイルオーバを容易にする。また、１つまたは複数のコアレベルルータ１０６は、分散ルーティング環境１００のコアレベルに関連付けられた機能の実行に類似の技術を使用することができる。
【００２４】
なおさらなる実施形態では、前述の実施形態の変形として、それぞれの分散レベルルータは、メモリ構成要素１５４（例えばプロセッサレベルキャッシュメモリ）のようなルータの第１のメモリ構成要素内に維持が可能なものより、分散ルーティング環境１００に関連付けられたＦＩＢのより大きい部分を割り振ることが可能である。コアレベルルータ１０６が分散レベルルータ１０８へルーティングし、宛先ＩＰアドレスの対応するプレフィクスが分散レベルルータの第１のメモリ構成要素内に保持されるＦＩＢに対応しない場合、分散レベルルータは、必要な情報を、異なるメモリ構成要素（例えばコンピュータ可読な媒体１５８（図１Ｂ））内に維持されたＦＩＢのより大きなサブセットから呼び出すことが可能である。第１のメモリ構成要素（例えばメモリ構成要素１５２）内に維持されるＦＩＢは、アップデートされ、プライマリメモリ構成要素内のプレフィクスに格納してもよい。代わりに、第１のメモリ構成要素内のＦＩＢは、単一の要求に基いては自動的にアップデートされない場合があるが、所与のプレフィクスのトラフィックの増加に基いて自動的にアップデートされる場合がある。
【００２５】
さらに別の実施形態では、より低いトラフィックのプレフィクスを複数の分散レベルルータ１０８に割り当ててもよい。１つの例では、それぞれの割り当てられた分散レベルルータ１０８は、プライマリメモリ構成要素内の割り当てられたＦＩＢのより低いトラフィックルーティングの部分を維持しない。むしろ、より低いトラフィックプレフィクスのルーティング要求を、ＥＣＭＰのような選択技術に基づき特定の分散レベルルータへ向けることが可能であり、選択された分散レベルルータ内の異なるメモリ構成要素内に維持されるより大きなＦＩＢに基づき選択された分散レベルルータ１０８により処理することができる。
【００２６】
ここで図３を参照して、パケットをルーティングするための、分散ルーティング環境１００内で実行されるルーチン３００が記載される。ブロック３０２で、分散ルーティング環境１００はルーティング要求を取得する。前述したように、ルーティング要求は第１のネットワーク１０２（図１）から受信され、宛先ＩＰアドレスを識別する情報を含む。ブロック３０４で、分散ルーティング環境１００の第１のレベルに対応するコアレベルルータ１０６が選択され、ルーティング要求を受信する。例示の実施形態では、それぞれのコアレベルルータ１０６は同一の機能を実行することができ、無作為抽出、ラウンドロビン選択、負荷分散選択などを含む標準的な選択技術により選択が可能であるが、技術はそれらに限定されない。
【００２７】
ブロック３０６では、選択されたコアレベルルータ１０６は、分散ルーティング環境１００の第２のレベルに対応する分散レベルルータ１０８を識別する。コアレベルルータ１０８は、適切な分散レベルルータ１０８の判断のための宛先ＩＰアドレスの処理および宛先ＩＰアドレスのサブセット（例えば、プレフィクス）の使用に基づき、分散レベルルータ１０８を選択する。例示として、ＩＰｖ４通信プロトコルに対応する実施形態により、コアレベルルータ１０６処理は、最上位８ビットのプレフィクスの検討に基づくことが可能である。ブロック３０８において、選択された分散レベルルータ１０８は、適切な通過レベルルータ１１０の判断のための宛先ＩＰアドレスの処理および宛先ＩＰアドレスのサブセットの使用に基づき、通過レベルルータ１１０を識別する。例示として、ＩＰｖ４通信プロトコルに対応する実施形態により、分散レベルルータ１０８処理は、ＩＰアドレスのより大きなサブセット（例えば適切な通過レベルルータ１１０の選択に必要とされる１６または２４ビットのようなより長いプレフィクス）に基づくことが可能である。しかし、当業者は、ブロック３０６および３０８を、受信されたパケットを転送するための次のルータ構成要素の識別において、コアレベルルータ１０６および分散レベルルータ１０８が受信されたパケットの付加的なまたは代替的な属性（宛先ＩＰアドレスの異なる部分を含む）を利用してもよい方法で実行してもよいことを理解するであろう。
【００２８】
ブロック３１０において、選択された通過レベルルータ１１０は、受信パケットを、通過レベルルータ１１０に関連付けられた、またはそうでなければ通過レベルルータ１１０と共に構成された宛先受信者へ伝送する。ブロック３１２において、ルーチン３００は終了する。
【００２９】
ここで図４を参照すると、パケットをルーティングするための、分散ルーティング環境１００内で実行される別のルーチン４００が示される。例示の実施形態では、ルーチン４００は、特定の分散ルータ１０８に関連付けられた全てより少ないＦＩＢがプライマリメモリ構成要素内で維持される実施形態で実行してもよい。ブロック４０２において、ルーティング要求が分散レベルルータ１０８において受信される。選択および分散レベルルータ１０８へのルーティングは前述した。ルーチン４００を分散レベルルータ１０８による実行に関して記載するが、当業者は、ルーチン４００の少なくとも一部は、コアレベルルータ１０６または通過レベルルータ１１０のような分散ルーティング環境１００の他の構成要素により実行されてもよいことを理解するであろう。判断ブロック４０４でテストが行われ、ルーティング要求に関連付けられた宛先ＩＰアドレスのサブセットが、選択された分散レベルルータ１０８の一次メモリ内に維持されるＦＩＢテーブルの部分にあるかどうか判断される。この部分にある場合、ブロック４０６において、分散レベルルータ１０８は、通過層ルーティング情報を第１のメモリ構成要素（例えば、メモリ構成要素１５２（図１Ｂ））内に維持されるＦＩＢから取得する。ブロック４０８において、分散レベルルータ１０８は、パケットを選択された通過レベルルータ１１０へ転送する。
【００３０】
一方、判断ブロック４０４において、ルーティング要求に関連付けられた宛先ＩＰアドレスのサブセットが、選択された分散レベルルータ１０８の一次メモリ内に維持されるＦＩＢテーブルの部分に維持されていない場合、ブロック４１０において、分散レベルルータ１０８は、分散レベルルータに関連付けられた分離したメモリ構成要素から付加的な通過ルーティング情報の取得を試みる。ブロック４１０において、分散レベルルータ１０８は、一次メモリ構成要素内に維持される転送テーブル情報を他のメモリ構成要素から取得された情報とともにアップデートすることができる。代わりに、ブロック４１０は省略が可能で、またはそうでなければ所望により選択される。ブロック４１２において、ルーチンは終了する。
【００３１】
例示の実施形態を開示し述べてきたが、当業者は、付加的なまたは代替的な実施形態が本開示の趣旨および範囲内で実行されてもよいことを理解するであろう。また、多くの実施形態を例示として示してきたが、当業者は例示の実施形態が組み合わされ、またはともに実行される必要がないことを理解するであろう。そのようなものとして、いくつかの例示の実施形態は、本開示の変形の範囲にしたがって利用、または実行される必要はない。
【００３２】
他の語の中でも、「することができる（ｃａｎ）」、「できる可能性がある（ｃｏｕｌｄ）」、「かもしれない（ｍｉｇｈｔ）」、または「してもよい（ｍａｙ）」、のような条件の語は、そうでないと特に述べている、またはそうでなければ文脈内で使用されたように理解される場合を除いて、ある実施形態が特定の機能、要素またはステップを含み、一方他の実施形態は特定の機能、要素またはステップを含まないことを伝えることが概して意図される。よって、そのような条件の語は、機能、要素またはステップが１つまたは複数の実施形態にどうしても必要とされると意味することを概して意図せず、または１つまたは複数の実施形態が、ユーザ入力またはプロンプティングのあるなしにかかわらず、これらの機能、要素またはステップが任意の特定の実施形態に含まれるまたは実行されるかどうかの決定のロジックを必ず含むことを概して意図しない。さらに、特にそうでないと述べている、またはそうでなければ文脈内で使用されたように理解される場合を除いて、要素のリストの列挙において接続詞「または」の利用を伝えることは、単一の要素のみの選択に限定せず、２つ以上の要素の組み合わせを含むことができることが概して意図される。
【００３３】
本明細書に記載され、かつ／または添付の図に示されたフロー図内のあらゆるプロセス記載、要素、またはブロックは、潜在的に、プロセス内の特定の論理的機能またはステップを実行する１つまたは複数の実行可能な命令を含むモジュール、セグメント、またはコードの部分を示すものとして理解すべきである。代替の実行は、本明細書に記載された実施形態の範囲内に含まれ、そこでは当業者が理解するであろうように、含まれる機能により、要素または機能は削除され、示されまたは述べられた順序から外れて、実質的に同時にまたは逆の順序で実行されてもよい。ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、またはネットワークインタフェースなどのようなコンピュータ実行可能な構成要素を格納するコンピュータ可読な媒体に関連付けられたドライブ機構を用いて、前述のデータおよび／または構成要素はコンピュータ可読な媒体に格納されてもよく、計算装置のメモリへロードされてもよいことがさらに理解されるであろう。さらに、構成要素および／またはデータは、単一の装置に含まれる可能性があり、または任意の方法で分散される可能性がある。従って、汎用計算装置は、前述の種々のデータおよび／または構成要素の処理および／または実行とともに、本開示のプロセス、アルゴリズム、および方法論を実行するよう構成されてもよい。代わりに、本明細書に記載されたいくつかまたは全ての方法が、特殊化したコンピュータハードウェアで代わりに実施されてもよい。また、本明細書で述べた構成要素は、ハードウェア、ソフトウェア、ファームウェアまたはそれらの組み合わせで実行されてもよい。
【００３４】
前述の実施形態に多数の変形および改良が加えられてもよいことができることが強調されるべきであり、その要素は他の許容範囲内の例の中にあるものとして理解されるべきである。全てのそのような改良および変形は、本明細書で本開示の範囲内に含まれ、後述の特許請求の範囲により保護されることが意図される。
【図１Ａ】
2013514743.tif 000003
【図１Ｂ】
2013514743.tif 000004
【図２Ａ】
2013514743.tif 000005
【図２Ｂ】
2013514743.tif 000006
【図２Ｃ】
2013514743.tif 000007
【図３】
2013514743.tif 000008
【図４】
2013514743.tif 000009
【国際調査報告】
2013514743.tif 000010
2013514743.tif 000011
2013514743.tif 000012