(57)【特許請求の範囲】
【請求項１】
別々の制御デバイスおよび複数の転送デバイスを有するネットワークとルーティングデータを交換する方法であって、
（ａ）転送デバイスおよび第１制御デバイスの間で第１の到達可能性情報セッションを確立し、前記転送デバイスおよび第２制御デバイスの間で第２の到達可能性情報セッションを確立することで、前記第１および第２の到達可能性情報セッションが前記ネットワークを介してどの複数のアドレスが到達可能であるかを示す複数の提供情報をそれぞれの前記第１および第２制御デバイスが送信することを可能にする、段階と、
（ｂ）前記転送デバイスおよび外部ルーティングデバイスの間で第３の到達可能性情報セッションを確立することで、第３の到達可能性情報セッションがそれぞれの前記転送デバイスおよび前記外部ルーティングデバイスを介してどの複数のアドレスが到達可能であるかを示す前記複数の提供情報を前記転送デバイスが前記外部ルーティングデバイスと交換することを可能にする、段階と、
（ｃ）前記第１の到達可能性情報セッションを介して前記第１制御デバイスからの第１の提供情報を前記転送デバイスで受信する段階であって、前記第１の提供情報は、複数の宛先アドレスを複数のネクストホップアドレスにマッピングする到達可能性情報を含む、段階と、
（ｄ）前記第１および第２制御デバイスが前記外部ルーティングデバイスにとって単一デバイスに見えるよう、前記転送デバイスにおいて前記第１および第２の到達可能性情報セッション、ならびに前記第３の到達可能性情報セッションの間で前記複数の提供情報を交換する段階と、
（ｅ）前記複数の転送デバイスのそれぞれに対し、前記第１制御デバイスおよび前記第２制御デバイスにより、前記到達可能性情報セッションを介して取得されるネットワークトポロジーの認識に応じて前記複数の転送デバイスのそれぞれの中のルーティングテーブルを設定する段階と、
（ｆ）前記複数の転送デバイスのそれぞれで、宛先アドレスに対する前記ルーティングテーブルまたはデータのラベルにより指定される前記複数の転送デバイスのそれぞれの出力ポートに前記データを転送する段階と、
（ｇ）前記第２の到達可能性情報セッションを介して前記第２制御デバイスからの第２提供情報を前記転送デバイスで受信する段階であって、前記第２提供情報は前記到達可能性情報を含む段階と、
（ｈ）前記到達可能性情報が前記外部ルーティングデバイスに既に提供されていると判断された場合に、前記第２提供情報を破棄する段階と、
を備え、
前記交換する段階（ｄ）は、
前記到達可能性情報が前記外部ルーティングデバイスに既に提供されているかを前記転送デバイスで判断する段階と、
前記到達可能性情報が前記外部ルーティングデバイスに既に提供されていると判断された場合に、（ｃ）において受信された前記到達可能性情報を前記外部ルーティングデバイスに送信して、前記外部ルーティングデバイスが前記複数の宛先アドレスにデータをどのように転送するべきかを指定する段階と
を有する、方法。
【請求項２】
（ｉ）前記第３の到達可能性情報セッションを介して前記外部ルーティングデバイスからの提供情報を前記転送デバイスで受信する段階であって、前記提供情報は、前記外部ルーティングデバイスが情報をどの複数のアドレスに転送し得るかを示す到達可能性情報を含む段階と、
（ｊ）前記到達可能性情報内で示された前記複数のアドレスに前記転送デバイスがどのようにデータを転送するべきかを前記第１および第２制御デバイスがどのように指定するか、前記第１および第２制御デバイスが更新することを可能にすべく、（ｉにおいて受信された前記到達可能性情報を、前記第１および第２の到達可能性情報セッションを介して前記第１および第２制御デバイスに送信する段階と
をさらに備える、請求項１に記載の方法。
【請求項３】
前記到達可能性情報を送信する前記段階は、前記到達可能性情報が前記外部ルーティングデバイスにまだ提供されていないと判断された場合に発生する、請求項１に記載の方法。
【請求項４】
前記第２制御デバイスが非アクティブ化された場合に前記転送デバイスが前記第１の到達可能性情報を介してデータをどのように転送するべきかを前記第１制御デバイスが指定し続けるように、前記第１および第２制御デバイスは冗長性を提供する、請求項１から３の何れか１項に記載の方法。
【請求項５】
第１、第２および第３の到達可能性情報セッションはボーダーゲートウェイプロトコル制御セッションである、請求項１から４の何れか１項に記載の方法。
【請求項６】
第１、第２および第３の到達可能性情報セッションは開放型最短経路優先セッションまたは中間システム間連携セッションである、請求項１から５の何れか１項に記載の方法。
【請求項７】
別々の制御デバイスおよび複数の転送デバイスを有するネットワークとルーティングデータを交換するシステムであって、
それぞれが、宛先アドレスに対する個別のルーティングテーブルまたはデータのラベルにより指定される転送デバイスの出力ポートに前記データを転送する複数の転送デバイスであって、前記個別のルーティングテーブルは、第１制御デバイスおよび第２制御デバイスにより、ネットワークトポロジーの認識に応じて設定される、複数の転送デバイスと、
前記転送デバイス、ならびに、前記第１および第２制御デバイスの間でそれぞれ第１および第２の到達可能性情報セッションを確立することで、前記第１および第２の到達可能性情報セッションが前記ネットワークを介してどの複数のアドレスが到達可能であるかを示す複数の提供情報をそれぞれの前記第１および第２制御デバイスが送信することを可能にする、制御セッションモジュールと、
前記転送デバイスおよび外部ルーティングデバイスの間で第３の到達可能性情報セッションを確立することで、前記第３の到達可能性情報セッションがそれぞれの前記転送デバイスおよび前記外部ルーティングデバイスを介してどの複数のアドレスが到達可能であるかを示す前記複数の提供情報を前記転送デバイスが前記外部ルーティングデバイスと交換することを可能にする、外部セッションモジュールと、
前記第１および第２制御デバイスが前記外部ルーティングデバイスにとって単一デバイスに見えるよう、前記転送デバイスにおいて前記第１および第２の到達可能性情報セッション、ならびに前記第３の到達可能性情報セッションの間で前記複数の提供情報を交換する交換モジュールと
を備え、
前記交換モジュールは、
（ｉ）前記第１制御デバイスからの第１の提供情報であって、複数の宛先アドレスを複数のネクストホップアドレスにマッピングする到達可能性情報を含む前記第１の提供情報を、前記第１の到達可能性情報セッションを介して前記転送デバイスで受信し、
（ｉｉ）前記到達可能性情報が前記外部ルーティングデバイスに既に提供されているかを前記転送デバイスで判断し、
（ｉｉｉ）前記到達可能性情報が前記外部ルーティングデバイスにまだ提供されていないと判断された場合に、（ｉ）において受信された前記到達可能性情報を前記外部ルーティングデバイスに送信して、前記外部ルーティングデバイスが前記複数の宛先アドレスにデータをどのように転送するべきかを指定し、
（ｉｖ）前記第２制御デバイスからの第２提供情報であって、前記到達可能性情報を含む前記第２提供情報を、前記第２の到達可能性情報セッションを介して前記転送デバイスで受信し、
（ｖ）前記到達可能性情報が前記外部ルーティングデバイスに既に提供されていると判断された場合に、前記第２提供情報を破棄する
ように構成される、システム。
【請求項８】
前記交換モジュールは、
（ｉ）前記第３の到達可能性情報セッションを介して前記外部ルーティングデバイスから提供情報であって、前記外部ルーティングデバイスが前記転送デバイスから受信した情報をどの複数のアドレスに転送し得るかを示す到達可能性情報を含む提供情報を受信し、
（ｉｉ）前記到達可能性情報内で示された前記複数のアドレスに前記転送デバイスがどのようにデータを転送するべきかを前記第１および第２制御デバイスがどのように指定するか、前記第１および第２制御デバイスが更新することを可能にすべく、（ｉ）において受信した前記到達可能性情報を、前記第１および第２の到達可能性情報セッションを介して前記第１および第２制御デバイスに送信する、請求項７に記載のシステム。
【請求項９】
前記第２制御デバイスが非アクティブ化された場合に前記転送デバイスが前記第１の到達可能性情報を介してデータをどのように転送するべきかを前記第１制御デバイスが指定し続けるように、前記第１および第２制御デバイスは冗長性を提供する、請求項７または８に記載のシステム。
【請求項１０】
第１、第２および第３の到達可能性情報セッションはボーダーゲートウェイプロトコル制御セッション、開放型最短経路優先セッション、または、中間システム間連携セッションである、請求項７から９の何れか１項に記載のシステム。
【請求項１１】
別々の制御デバイスおよび複数の転送デバイスを有するネットワークとルーティングデータを交換する方法を少なくとも１つの機械に実行させるプログラムであって、当該方法は、
（ａ）転送デバイスおよび第１制御デバイスの間で第１の到達可能性情報セッションを確立し、前記転送デバイスおよび第２制御デバイスの間で第２の到達可能性情報セッションを確立することで、前記第１および第２の到達可能性情報セッションが前記ネットワークを介してどの複数のアドレスが到達可能であるかを示す複数の提供情報をそれぞれの前記第１および第２制御デバイスが送信することを可能にする、段階と、
（ｂ）前記転送デバイスおよび外部ルーティングデバイスの間で第３の到達可能性情報セッションを確立することで、前記第３の到達可能性情報セッションがそれぞれの前記転送デバイスおよび前記外部ルーティングデバイスを介してどの複数のアドレスが到達可能であるかを示す前記複数の提供情報を前記転送デバイスが前記外部ルーティングデバイスと交換することを可能にする、段階と、
（ｃ）前記第１制御デバイスからの第１の提供情報を、前記第１の到達可能性情報セッションを介して前記転送デバイスで受信する段階であって、前記第１の提供情報は、複数の宛先アドレスを複数のネクストホップアドレスにマッピングする到達可能性情報を含む、段階と、
（ｄ）前記第１および第２制御デバイスが前記外部ルーティングデバイスにとって単一デバイスに見えるよう、前記転送デバイスにおいて前記第１および第２の到達可能性情報セッション、ならびに前記第３の到達可能性情報セッションの間で前記複数の提供情報を交換する段階と、
（ｅ）前記複数の転送デバイスのそれぞれに対し、前記第１制御デバイスおよび前記第２制御デバイスにより、前記到達可能性情報セッションを介して取得されるネットワークトポロジーの認識に応じて前記複数の転送デバイスのそれぞれの中のルーティングテーブルを設定する段階と、
（ｆ）宛先アドレスに対する前記ルーティングテーブルまたはデータのラベルにより指定される前記複数の転送デバイスのそれぞれの出力ポートに前記データを転送する段階と、
（ｇ）前記第２の到達可能性情報セッションを介して前記第２制御デバイスからの第２提供情報を前記転送デバイスで受信する段階であって、前記第２提供情報は前記到達可能性情報を含む段階と、
（ｈ）前記到達可能性情報が前記外部ルーティングデバイスに既に提供されていると判断された場合に、前記第２提供情報を破棄する段階と
を備え、
前記交換する段階（ｄ）は、
前記到達可能性情報が前記外部ルーティングデバイスに既に提供されているかを前記転送デバイスで判断する段階と、
前記到達可能性情報が前記外部ルーティングデバイスにまだ提供されていないと判断された場合に、段階（ｃ）において受信された前記到達可能性情報を前記外部ルーティングデバイスに送信して、前記外部ルーティングデバイスが前記複数の宛先アドレスにデータをどのように転送するべきかを指定する段階と
を有する、プログラム。
【請求項１２】
前記方法は、
（ｉ）前記第３の到達可能性情報セッションを介して前記外部ルーティングデバイスからの提供情報を前記転送デバイスで受信する段階であって、前記提供情報は、前記外部ルーティングデバイスが情報をどの複数のアドレスに転送し得るかを示す到達可能性情報を含む段階と、
（ｊ）前記到達可能性情報内で示された前記複数のアドレスに前記転送デバイスがどのようにデータを転送するべきかを前記第１および第２制御デバイスがどのように指定するか、前記第１および第２制御デバイスが更新することを可能にすべく、（ｉ）において受信された前記到達可能性情報を、前記第１および第２の到達可能性情報セッションを介して前記第１および第２制御デバイスに送信する段階と、
を備える、請求項１１に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は概してネットワークルーティングに関する。
【背景技術】
【０００２】
通信ネットワークは、例えば、２つの地理的に離れた場所の間でデータを転送することを可能にするネットワーク接続を提供し得る。ネットワーク接続は、ルータなどの通信デバイスを接続する複数のリンクに及び得る。通信デバイスを介してリンクがどのように相互接続されるかに応じて、ネットワークは異なるトポロジを有し得る。特定のネットワークトポロジにおいて、送信元と宛先との間で、複数の経路が利用可能な場合がある。現在の容量および利用状況に応じて、いくつかの経路は、他の経路より好ましいことがあり得る。
【０００３】
従来のルーティングのアルゴリズムは、各ルータが有する、その隣接するリンクおよびデバイスからのローカル情報を利用して、データをルーティングし得る。ルータはそのような情報をルーティングテーブルに保持する。ルーティングテーブルは様々な宛先アドレスまたは複数の宛先アドレス群に対するネクストホップを指定する複数のエントリを有する。受信パケットの宛先アドレスに基づいて、ルータはそのルーティングテーブルを使用してパケットを特定の隣接デバイスに転送する。ルーティングテーブルを構築するべく、各ルータは、ボーダーゲートウェイプロトコル（ＢＧＰ）と同様のプロトコルを使用してルーティングおよび到達可能性情報を複数のローカル隣接ルータと交換する。このように、各ルータは、パケットを転送し、かつ、制御機能を実行して自身のルーティングテーブルを更新する。
【０００４】
ローカル情報の使用は、いくつかの状況では望ましいかもしれないが、常に効率的にデータをルーティングできるとは限らない。より効率的にデータをルーティングするべく、ソフトウェア定義ネットワーク（ＳＤＮ）と呼ばれる他の技術は、制御機能と転送機能とを別個のデバイスに分離する。制御デバイスは、ネットワークトポロジの全体的な知識を使用して、個別のデータフローに対し転送デバイスのネットワークを通るパスを決定する。このように、ルーティング制御デバイスは、例えば、遅延を最小化するか帯域幅を最大化するパスを、ネットワークを通して確立し得る。
【発明の概要】
【０００５】
実施形態において、方法は、別々のデバイス上での制御および転送を含んでネットワーク内でルーティングデータを交換する。この方法において、第１の到達可能性情報セッションが転送デバイスおよび第１制御デバイスの間で確立され、第２の到達可能性情報セッションが転送デバイスおよび第２制御デバイスの間で確立される。第１および第２の到達可能性情報セッションは、ネットワークを介してどの複数のアドレスが到達可能であるかを示す複数の提供情報をそれぞれの第１および第２制御デバイスが送信することを可能にする。また、第３の到達可能性情報セッションが転送デバイスおよび外部ルーティングデバイスの間で確立される。第３の到達可能性情報セッションは、複数の提供情報を転送デバイスが外部ルーティングデバイスと交換することを可能にし、提供情報は、それぞれの転送および外部ルーティングデバイスを介してどの複数のアドレスが到達可能であるかを示す。最後に、第１および第２制御デバイスが外部ルーティングデバイスにとって単一デバイスに見えるように、複数の提供情報が第１および第２の到達可能性情報セッション、ならびに、第３の到達可能性情報セッションの間で交換される。
【０００６】
システムの実施形態およびコンピュータプログラム製品の実施形態がまた開示される。 
【０００７】
本発明の更なる実施形態、特徴、および利点、ならびに、各種実施形態の構造および動作が、複数の添付図面を参照して以下に詳細に説明される。
【図面の簡単な説明】
【０００８】
本明細書に組み込まれ、本明細書の一部を形成する複数の添付図面は本開示を図示し、説明と合わせて、本開示の複数の原理を説明し、当業者が本開示を作成および使用することを可能にするのに更に役立つ。
【０００９】
【図１Ａ】複数の転送デバイスとは別個の複数の冗長制御デバイスを備えるネットワークのダイアグラムである。
【００１０】
【図１Ｂ】外部ネットワークに対して複数の制御デバイスをマスクするローカル終端モジュールを備えるネットワークのダイアグラムである。
【００１１】
【図２Ａ】図１のシステムの動作例を図示するダイアグラムである。
【図２Ｂ】図１のシステムの動作例を図示するダイアグラムである。
【００１２】
【図３】一実施形態に係る冗長コントローラのマスキング方法のフローチャートである。
【００１３】
【図４】図１のシステムをより詳細に示すダイアグラムである。
【００１４】
概して、ある要素が最初に現われる図面は、対応する参照番号の左端の１または複数の桁の数字で示される。図面において、同様の参照番号は、同一の、または機能的に同様の要素を示してよい。
【発明を実施するための形態】
【００１５】
上述のように、複数の転送デバイスとは別個に制御デバイスを備えることは、ルーティング決定を、サービスプロバイダネットワーク上でよりインテリジェントなルーティング決定を可能にさせ得る。しかし、単一の制御デバイスを備えることは、１つの破損点を生成する。その制御デバイスが破損すると、複数の転送デバイス上の複数のルーティングテーブルの何れに対しても更新が行われ得ない。これに対処するべく、複数の実施形態は複数の冗長制御デバイスを備える。
【００１６】
しかし、サービスプロバイダネットワーク上に複数の制御デバイスを備えることは、ユーザにとって設定を困難にし得る。特に、顧客は、顧客のネットワーク上の顧客のルータを、複数の異なる制御デバイスから到達可能性情報を受けるよう設定しなくてはならないかもしれない。これは、それぞれ複数の顧客ルータに到達可能性情報を提供する複数のボーダーゲートウェイプロトコル（ＢＧＰ）セッションなどの多数の到達可能性情報セッションを用いて動作するよう、顧客の複数のルータを設定することを伴い得る。この設定は困難であるかもしれない。また、顧客ネットワークに対する多数の到達可能性情報セッションを持つことは、追加のトラフィックの送信を必要とし、複数の顧客ルータ上での追加処理のオーバヘッドを伴うかもしれない。例示的な目的で複数の顧客ネットワークおよび顧客の複数のルーティングデバイスに関して複数の態様が説明されるが、複数の実施形態が任意の外部ネットワーク、つまり、サービスプロバイダネットワークの外部の任意のネットワークに適合することを当業者は認識するだろう。
【００１７】
複数の制御デバイスのこれらの問題に対処するべく、複数の実施形態は、サービスプロバイダネットワークのエッジにおける転送デバイス上に追加モジュールを設ける。サービスプロバイダネットワークは顧客ネットワークとインタフェースする。このモジュールは、複数の制御デバイスの存在をマスクすることで、単一の制御デバイスのみが用いられているように顧客に見せる。
【００１８】
具体的には、モジュールは、サービスプロバイダネットワークにおける複数の顧客ルータおよび各制御デバイスと、ＢＧＰセッションなどの複数の到達可能性情報セッションを確立する。モジュールは、顧客設備の到達可能性情報セッションおよび制御デバイスの到達可能性情報セッションから取得される、ルーティング提供情報（ｒｏｕｔｅ  ａｄｖｅｒｔｉｓｅｍｅｎｔ）などのルーティングデータを交換する。モジュールは、顧客設備からルーティング提供情報を受信する場合、それを複数の制御デバイスのそれぞれに転送する。また、複数の制御デバイスが複数のルーティング提供情報をブロードキャストする場合、モジュールは、最初に受信されたもののみを顧客のルーティング設備に転送する。添付図面に関連してこれらおよび他の複数の実施形態が以下で説明される。
【００１９】
図１Ａは、複数の転送デバイスとは別個の複数の冗長制御デバイスを備えるシステム１００のダイアグラムである。
【００２０】
システム１００は、サービスプロバイダネットワーク１２０および顧客ネットワーク１３０を備える。サービスプロバイダネットワーク１２０は、少なくとも２つの地理的に離れた位置を接続するメトロポリタンエリアネットワーク（ＭＡＮ）またはワイドエリアネットワーク（ＷＡＮ）であってよい。一方、顧客ネットワーク１３０は、例えば、１つのエンティティまたはビルディング内の異なるコンピュータを接続するローカルエリアネットワークであってよい。
【００２１】
サービスプロバイダネットワーク１２０は、複数の転送デバイス：転送デバイス１０６、１０８および１１０を有する。各転送デバイスは、複数のポートを有し、１つのポートから別のポートへデータのパケットを転送し得る。データを転送すべく、各転送デバイスはルーティングテーブルを有してよく、そのルーティングテーブル内の情報に従って情報を転送し得る。具体的には、ルーティングテーブルは、特定の複数のアドレスまたは複数のサブネットを特定の複数の出力ポートにマッピングし得る。転送デバイスがデータのパケットを受信する場合、転送デバイスはパケットの宛先アドレスを検査してルーティングテーブルにおけるエントリを特定する。パケットの宛先アドレスの検査に加えて、転送デバイスは、マルチプロトコルラベルスイッチング（ＭＰＬＳ）ラベルなどの、パケットに関連付けられた任意のラベルを検査してルーティングテーブルにおけるエントリを特定する。ルーティングテーブルにおけるそのエントリは、転送デバイス上のどのポートにパケットを転送するかを指定する。
【００２２】
それら自身のルーティングテーブルを設定する代わりに、本明細書で開示されるようなソフトウェア定義ネットワークでは、転送デバイスのルーティングテーブルは制御デバイスにより設定される。図１Ａは、２つの制御デバイス：制御デバイス１０２および１０４を図示する。制御デバイス１０２および１０４のそれぞれは、それらのルーティングテーブルを設定するべく、転送デバイス１０６、１０８および１１０に情報を送信し得る。制御デバイス１０２および１０４は、特定のデータフローから特定のパスに沿ってデータをルーティングするためのルーティングテーブルを設定し得る。
【００２３】
複数の実施形態において、制御デバイス１０２および１０４は冗長であってよい。各制御デバイスは、サービスプロバイダネットワーク１２０のトポロジについての同一の、またはミラーイメージの情報を有してよく、また、互いに独立して、サービスプロバイダネットワーク１２０を通じた同一のパスを決定することができてよい。冗長であることにより、複数の制御デバイスの１つがダウンした場合に、他の制御デバイスがサービスプロバイダネットワーク１２０上の全ての転送デバイスを設定し続け得る。図１Ａでは実例のために２つの制御デバイスのみが示されているが、当業者は、追加の制御デバイスが使用され得、追加の制御デバイスを追加することがシステム１００に追加の冗長性を追加することを認識するだろう。
【００２４】
サービスプロバイダネットワーク１２０における複数の転送デバイスのルーティングテーブルを設定することに加えて、制御デバイス１０２および１０４のそれぞれは、顧客ネットワーク１３０上の少なくとも１つのデバイスとそれぞれの到達可能性情報セッション１２０および１２２を確立し得る。複数の到達可能性情報セッションは、サービスプロバイダネットワーク１２０、および、顧客ネットワーク１３０上の複数のデバイスの間でルーティングおよび到達可能性情報を交換し得る。ボーダーゲートウェイプロトコル（ＢＧＰ）は共通タイプの到達可能性情報セッションプロトコルであるが、例えば開放型最短経路優先（ＯＳＰＦ）および中間システム間連携（ＩＳＩＳ）など、他のタイプの到達可能性情報セッションプロトコルが使用されてよい。
【００２５】
制御デバイス１０２および１０４は、それぞれ到達可能性情報セッション１２０および１２２を介して顧客ネットワーク１３０から受信される情報を使用して、グローバルネットワークトポロジについてのそれらの認識を発展させてよい。例えば、顧客ネットワーク１３０は、それが特定セットの宛先アドレス（例えばＩＰアドレスサブネット）を含むか、これに到達し得ることを、到達可能性情報セッション１２０および１２２を介して制御デバイス１０２および１０４に通知してよい。この情報に基づいて、制御デバイス１０２および１０４は、それらのそれぞれの、グローバルネットワークトポロジのモデルを更新してよい。また制御デバイス１０２および１０４は、更新された情報を使用して転送デバイス１０６−１１０のためのルーティングテーブルを決定してよい。
【００２６】
顧客ネットワーク１３０上のルーティングデバイスは、それらのルーティングテーブルを設定するべく、到達可能性情報セッション１２０および１２２を介して受信した情報も使用してよい。顧客ネットワーク１３０は、サービスプロバイダネットワーク１２０と同様に、別個の制御および転送デバイスを備えてよく、または、顧客ネットワーク１３０は、ともにデータを転送し、かつ、それら自身のルーティングテーブルを制御および計算するルータおよびスイッチを備えてよい。いずれにしても、顧客ネットワーク１３０上のルーティングデバイスは、それらのルーティングテーブルを設定するべく、到達可能性情報セッション１２０および１２２から受信した到達可能性情報を使用する。それらは、サービスプロバイダネットワーク１２０を介して到達可能なアドレスに向けたデータがサービスプロバイダネットワーク１２０に転送されうるように、それらのルーティングテーブルを設定する。
【００２７】
このように複数の制御デバイスを有することは、冗長性を加え得る。しかし、多数の到達可能性情報セッション１２０および１２２を持つことは、顧客ネットワーク１３０上の複数のデバイスを設定することの顧客の負担を増加させ得る。具体的に、顧客はその複数のデバイスが到達可能性情報セッション１２０および１２２の両方を用いて動作するよう設定しなくてはならないかもしれない。サービスプロバイダネットワーク１２０に不慣れであり得る顧客ネットワーク１３０の管理者にとって、この設定は面倒であり得る。この問題に対処すべく、複数の実施形態は、図１Ｂに図示されるように、異なる制御デバイス１０２および１０４からのデータを集約して顧客ネットワーク１３０との１つの到達可能性情報セッションを促進する。
【００２８】
図１Ｂは、顧客ネットワークに対して複数の制御デバイスをマスクするローカル終端モジュール１７０を備えるシステム１５０を図示する。図１Ａのシステム１００と同様に、システム１５０は、顧客のルーティングデバイス１８０を有する顧客ネットワーク１３０と、順に２つの制御デバイス（１０２および１０４）および３つの転送デバイス（１０６、１０８、１１０）を有するサービスプロバイダネットワーク１２０とを備える。
【００２９】
いくつかの転送デバイスはサービスプロバイダネットワーク１２０のエッジに存在し、このことは、それらが直接、外部ネットワークに接続することを意味する。実施形態によれば、ローカル終端モジュールを有するのはこれらのエッジ転送デバイスである。システム１５０において、転送デバイス１０８は顧客ネットワーク１３０と接続するので、エッジ転送デバイスである。従って、転送デバイス１０８はローカル終端モジュール１７０を含む。
【００３０】
ローカル終端モジュール１７０は外部ネットワークと到達可能性情報セッションを確立し、外部ネットワークの転送デバイスはサービスプロバイダネットワーク１２０上の各制御デバイスに／と接続される。ここで、ローカル終端モジュール１７０は、顧客ネットワーク１３０と到達可能性情報セッション１６４を、制御デバイス１０２および１０４と到達可能性情報セッション１６０および１６２を、それぞれ確立する。ローカル終端モジュール１７０は、それらの間でメッセージを交換する到達可能性情報セッションのプロキシとしてふるまう。
【００３１】
特に、ローカル終端モジュール１７０は、顧客のルーティングデバイス１８０に対して複数の制御デバイス１０２および１０４が単一デバイスに見えるようにするべく、到達可能性情報セッション１６０、１６２および１６４の間でメッセージを交換する。例えば、ローカル終端モジュール１７０は到達可能性情報セッション１６４を介して顧客のルーティングデバイス１８０から提供情報を受信し得る。提供情報は到達可能性情報を含んでよく、到達可能性情報は、サービスプロバイダネットワーク１２０から受信した情報を顧客のルーティングデバイス１８０がどの複数のアドレスに転送し得るかを示してよい。ローカル終端モジュール１７０は、提供情報を受信した場合、在中の到達可能性情報を、到達可能性情報セッション１６０および１６２を介して制御デバイス１０２および１０４に送信する。到達可能性情報を使用して、制御デバイス１０２および１０４は、それらのネットワークトポロジの認識を更新してよい。また制御デバイス１０２および１０４は、更新されたネットワークトポロジを使用して、到達可能性情報におけるこれらのアドレスに関して転送デバイス１０６、１０８および１１０のためのルーティングテーブルを決定する。具体的に、制御デバイス１０２および１０４は、顧客ネットワーク１３０内のアドレスに向けられ顧客ネットワーク１３０から到達可能なデータを顧客ネットワーク１３０の方向にルーティングするべく、ルーティングテーブルにエントリを追加してよい。次に、制御デバイス１０２および１０４は、更新されたルーティングテーブルを転送デバイス１０６、１０８および１１０に送信し、転送デバイス１０６、１０８および１１０が顧客ネットワーク１３０にデータをルーティングすることを可能とする。
【００３２】
ローカル終端モジュール１７０は、制御デバイス１０２および１０４の両方と到達可能性情報セッション１６０および１６２を持つので、両方から到達可能性情報を受信する。また制御デバイス１０２および１０４は冗長であり潜在的に互いのミラーイメージであるので、制御デバイス１０２および１０４から受信される情報は重複性であろう。重複性の情報が受信される場合、ローカル終端モジュール１７０は、最初に受信された情報についての転送のみを行ってよい。到達可能性情報が以前に送信されているかを判断すべく、ローカル終端モジュール１７０は、到達可能性情報またはその識別情報、例えばハッシュを格納してよい。ローカル終端モジュール１７０は、制御デバイスから到達可能性情報を受信する場合、到達可能性情報が顧客のルーティングデバイスに以前に転送されているかを判断するべくストレージをチェックしてよい。次に、チェックに応じて、ローカル終端モジュール１７０は情報を転送してよい。
【００３３】
動作例において、ローカル終端モジュール１７０は、到達可能性情報セッション１６０を介して制御デバイス１０２から提供情報を受信し得る。提供情報は、多数のエントリを順に含んだ到達可能性情報を含んでよい。各エントリは、サービスプロバイダネットワーク１２０を介して到達可能な複数の宛先アドレスを複数のネクストホップアドレスに対してマッピングしてよい。ローカル終端モジュール１７０が提供情報を受信する場合、ローカル終端モジュール１７０はそのローカルストレージをチェックして、それが既に送信されているかを判断してよい。それが既に送信されている場合、ローカル終端モジュール１７０は何もしない。それがまだ送信されていない場合、ローカル終端モジュール１７０はデータを顧客のルーティングデバイス１８０に転送してよい。
【００３４】
図２Ａ−Ｂは、システム２００を示したダイアグラムであり、到達可能性情報が１つのネットワークから別のネットワークへどのように伝搬されるかを説明する。システム１５０の複数のコンポーネントに加えて、システム２００は、ルーティングデバイス２０４を有する顧客ネットワーク２３０を備える。ルーティングデバイス２０４は、転送デバイス１１０においてサービスプロバイダネットワークに接続される。システム２００において、エッジ転送デバイスである転送デバイス１１０は、ローカル終端モジュール２２０を有する。
【００３５】
図２Ａに図示されるように、顧客ネットワーク１３０は２０．０．０．０／２４のアドレス空間を有する。これは、その空間内の複数のＩＰアドレスを割り当てられており、そのため、最初の３バイトが２０．０．０を表すＩＰアドレスにアドレス指定された任意のパケットは顧客ネットワーク１３０ルーティングされるべきである。同様に、顧客ネットワーク２３０は３０．０.０．０／２４のアドレス空間を有する。これもそれらの複数のＩＰアドレスを割り当てられており、そのため、最初の３バイトが３０．０．０を表すＩＰアドレスにアドレス指定された任意のパケットは顧客ネットワーク２３０にルーティングされるべきである。
【００３６】
顧客ネットワーク１３０のルーティングデバイス１８０は、転送デバイス１０８に接続される場合、提供情報メッセージ２１０を送信する。提供情報メッセージ２１０は、２０．０．０．０／２４のサブネットが顧客のルーティングデバイス１８０を介してアドレス指定可能であることを示す到達可能性情報を含む。
【００３７】
転送デバイス１０８は提供情報メッセージ２１０を受信してその到達可能性情報を２つの別個のルーティングメッセージ（それぞれ制御デバイス１０２および１０４に対するルーティングメッセージ２１２および２１４）内で両方の制御デバイスに転送する。制御デバイス１０２および１０４は、メッセージ２１２および２１４内の到達可能性情報に従って、それらのグローバルネットワークトポロジのモデルを更新する。図１Ｂに関して上述されたように、それは、２０．０．０．０／２４にアドレス指定されたトラフィックを顧客のルーティングデバイス１８０にルーティングするべく、この情報を使用して転送デバイス１０６、１０８および１１０のルーティングテーブルを更新する。図２Ｂに図示されるように、サービスプロバイダネットワーク上の複数のデバイスのルーティングテーブルを更新することに加えて、制御デバイス１０２および１０４はまた、他の外部ネットワークにルーティング提供情報を送信してよい。
【００３８】
図２Ｂは、制御デバイス１０２および１０４がどのように到達可能性情報を顧客ネットワーク２３０に通知するかを図示する。上述したように、複数の制御デバイス１０４はそれぞれ、転送デバイス１０８においてサービスプロバイダネットワークに接続された顧客ネットワーク１３０を介して２０．０．０．０／２４が到達可能であるという事実を反映するべく、それらのグローバルネットワークトポロジのモデルを更新する。図２Ｂにおいて、制御デバイス１０２および１０４は、２０．０．０．０／２４がサービスプロバイダネットワークを介して到達可能であることを顧客ネットワーク２３０に通知する。
【００３９】
制御デバイス１０２および１０４は、ともにそれらのトポロジモデルを更新しており、それぞれの提供情報２６０および２６２を転送デバイス１１０と、そのローカル終端モジュール２３０とにそれぞれ送信する。提供情報２６０および２６２は、サブネット２０．０．０．０／２４内の複数の宛先アドレスがサービスプロバイダネットワーク、そして具体的には転送デバイス１１０を介して到達可能であることを示す到達可能性情報を含む。到達可能性情報は、転送デバイス１１０のＩＰアドレスとして、２０．０．０．０／２４に到達するためのネクストホップＩＰアドレスを有してよい。
【００４０】
提供情報２６０が転送デバイス１１０に始めに到達すると仮定する。ローカル終端モジュール２３０は、到達可能性情報または到達可能性情報のハッシュをローカルストレージに格納して、到達可能性情報を提供情報２６４内で顧客のルーティングデバイス２０４に送信する。提供情報２６４に基づいて、顧客のルーティングデバイス２０４は、到達可能性情報に従ってそのルーティングテーブルを設定する。例えば、顧客のルーティングデバイス２０４は、サブネット２０．０．０．０／２４にアドレス指定されたトラフィックを転送デバイス１１０にルーティングするべく、そのルーティングテーブルを設定してよい。
【００４１】
提供情報２６２が転送デバイス１１０に到達する場合、ローカル終端モジュール２３０は提供情報２６２の到達可能性情報とローカルストレージを比較する。ローカル終端モジュール２３０は、提供情報２６２の到達可能性情報がローカルストレージに格納されていると判断する。従って、ローカル終端モジュール２３０は到達可能性情報を顧客ネットワーク２３０に転送しない。
【００４２】
図３は、一実施形態に係る冗長コントローラのマスキング方法３００のフローチャートである。
【００４３】
方法３００は、顧客のルーティングデバイスがエッジ転送デバイスと到達可能性情報セッションを確立する段階３０２で開始する。段階３０２は、顧客のルーティングデバイスおよびエッジ転送デバイスが互いに物理的に接続されていることをそれらが検出した場合に発生してよい。段階３０２で引き起こされる到達可能性情報セッションは、転送デバイスが顧客のルーティングデバイスと複数の提供情報を交換することを可能にする。顧客のルーティングデバイスからの複数の提供情報は、顧客ネットワーク上の顧客のルーティングデバイスを介してどの複数のアドレスが到達可能であるかを示し得る。また転送デバイスからの複数の提供情報は、サービスプロバイダネットワーク上の転送デバイスを介してどの複数のアドレスが到達可能であるかを示し得る。
【００４４】
段階３０２で一旦、顧客のルーティングデバイスが到達可能性情報セッションを確立すると、段階３０４において、エッジ転送デバイスは、サービスプロバイダネットワーク上の各制御デバイスと到達可能性情報セッションを確立する。これらの到達可能性情報セッションは、サービスプロバイダネットワークを介してどの複数のアドレスが転送デバイスに到達可能であるかを示す複数の提供情報をそれぞれの第１および第２制御デバイスが送信することを可能にする。
【００４５】
一旦、到達可能性情報セッションが確立されると、複数のルーティングデバイスは到達可能性情報の交換を始める。決定ブロック３１２において、サービスプロバイダネットワークを介して新たなアドレスプレフィクスが利用可能であることを複数の制御デバイスが学習する場合、段階３１４において、複数の制御デバイスのそれぞれはプレフィクスをエッジ転送デバイスに通知する。次に、段階３１６において、エッジ転送デバイスは複数の提供情報の１つを顧客のルーティングデバイスに転送し、他を破棄する。段階３１４および３１６は、セッションが最初に確立されたときに全てのアクセス可能なプレフィクスを通信することを実行し得る。次に、図３に図示されるように、段階３１４および３１６は、新たなプレフィクスがアクセス可能であることを制御デバイスが学習したときに、差分更新を実行し得る。
【００４６】
同様に、決定ブロック３０６において、顧客ネットワークを介して新たなアドレスプレフィクスが利用可能であることを顧客のルーティングデバイスが学習した場合に、段階３０８において顧客のルーティングデバイスはエッジ転送デバイスにプレフィクスを通知する。次に、段階３１０においてエッジ転送デバイスは各制御デバイスに提供情報を転送する。段階３０８および３１０は、セッションが最初に確立されたときに全てのアクセス可能なプレフィクスを通信することを実行し得る。次に、図３に図示されるように、段階３０８および３１０は、新たなプレフィクスがアクセス可能であることを顧客のルーティングデバイスが学習したときに、差分更新を実行し得る。
【００４７】
図４は、システム４００を示すダイアグラムであり、ローカル終端モジュール１７０のコンポーネントをより詳細に図示する。ローカル終端モジュール１７０は、３つのサブモジュール：制御セッションモジュール４０２、外部セッションモジュール４０４および交換モジュール４０６を備える。
【００４８】
制御セッションモジュール４０２は、例えば段階３０２に関して上述したように、転送デバイス１０８、ならびに、制御デバイス１０２および１０４の間で到達可能性情報セッションを確立する。外部セッションモジュール４０４は、段階３０４に関し、転送デバイスおよび顧客のルーティングデバイスの間で到達可能性情報セッションを確立する。
【００４９】
交換モジュール４０６は第１および第２制御デバイスが顧客のルーティングデバイスにとって単一デバイスに見えるように、第１および第２の到達可能性情報セッション、ならびに、第３の到達可能性情報セッションの間で複数の提供情報を交換する。交換モジュール４０６は、図３の段階３０６−３１６に図示されたように、複数のメッセージを送信し得る。
【００５０】
本明細書で開示された複数のデバイスおよび複数のモジュールのそれぞれは、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せに実装され得る。
【００５１】
本明細書に開示された複数のデバイスおよび複数のモジュールのそれぞれは、同じまたは異なるコンピューティングデバイス上に実装され得る。そのような複数のコンピューティングデバイスは、パーソナルコンピュータ、携帯電話などのモバイルデバイス、ワークステーション、組み込みシステム、ゲームコンソール、テレビ、セットトップボックス、または任意の他のコンピューティングデバイスを含み得るが、それらに限定されない。さらに、コンピューティングデバイスは、複数の命令を実行および格納するための、非一時的メモリを含む、プロセッサおよびメモリを有するデバイスを含み得るが、それに限定されない。メモリは、データおよびプログラム命令を有形に具体化してよい。ソフトウェアは、１または複数のアプリケーションおよび１つのオペレーティングシステムを含んでよい。ハードウェアは、プロセッサ、メモリ、およびグラフィカルユーザインタフェースディスプレイを含み得るが、それらに限定されない。コンピューティングデバイスはまた、複数のプロセッサと、複数の共有または別個のメモリコンポーネントとを有してよい。例えば、コンピューティングデバイスは、クラスタ化されたまたは分散型のコンピューティング環境またはサーバファームの一部または全体であってよい。
【００５２】
「（ａ）」、「（ｂ）」、「（ｉ）」、「（ｉｉ）」等といった識別子が、異なる要素または段階のために使用されることがある。これらの識別子は、明確さのために使用されるのであって、必ずしも、要素または段階の順序を指定しているわけではない。
【００５３】
本発明は、特定の複数の機能およびそれらの関係の実装を説明する複数の機能的構成単位を用いて上述されてきた。これらの機能的構成単位の境界は、説明を簡便にすべく本明細書において任意に画定された。特定の複数の機能およびそれらの関係が適切に実行される限り、代替の境界が画定され得る。
【００５４】
具体的な実施形態についての前述の説明は、本発明の全般的性質を十分に明らかにしているので、他者は、本発明の全般的概念から逸脱することなく、過度の実験を行うことなく、当該技術分野の技術内の知識を適用して、そのような具体的な実施形態を様々な用途に向けて容易に変更および／または改作できる。したがって、そのような改作および変更は、本明細書において提示された教示および指導に基づいて、開示された実施形態の均等物の趣旨および範囲内であることが意図されている。本明細書における語句または用語は、説明のためのものであって、限定するためのものではなく、それにより、本明細書の用語または語句は、教示および指導に照らして当業者によって解釈されるべきものであることが理解されよう。
【００５５】
本発明の広さおよび範囲は、上述の例示的実施形態の何れによっても限定されるべきではなく、以下の特許請求の範囲およびその均等物のみに従って定義されるべきである。
（項目１）
別々のデバイス上での制御および転送を含んでネットワークとルーティングデータを交換する方法であって、
（ａ）転送デバイスおよび第１制御デバイスの間で第１の到達可能性情報セッションを確立し、前記転送デバイスおよび第２制御デバイスの間で第２の到達可能性情報セッションを確立することで、前記第１および第２の到達可能性情報セッションが前記ネットワークを介してどの複数のアドレスが到達可能であるかを示す複数の提供情報をそれぞれの前記第１および第２制御デバイスが送信することを可能にする、段階と、
（ｂ）前記転送デバイスおよび外部ルーティングデバイスの間で第３の到達可能性情報セッションを確立することで、第３の到達可能性情報セッションがそれぞれの前記転送デバイスおよび前記外部ルーティングデバイスを介してどの複数のアドレスが到達可能であるかを示す複数の提供情報を前記転送デバイスが前記外部ルーティングデバイスと交換することを可能にする、段階と、
（ｃ）前記第１および第２制御デバイスが前記外部ルーティングデバイスにとって単一デバイスに見えるよう、前記転送デバイスにおいて前記第１および第２の到達可能性情報セッション、ならびに前記第３の到達可能性情報セッションの間で複数の提供情報を交換する段階と、
を備える方法。
（項目２）
（ｄ）前記第３の到達可能性情報セッションを介して前記外部ルーティングデバイスからの提供情報を前記転送デバイスで受信する段階であって、前記提供情報は、前記外部ルーティングデバイスが情報をどの複数のアドレスに転送し得るかを示す到達可能性情報を含む段階を更に備え、
前記交換する段階（ｃ）は、前記到達可能性情報内で示された前記複数のアドレスに前記転送デバイスがどのようにデータを転送するべきかを前記第１および第２制御デバイスがどのように指定するか、前記第１および第２制御デバイスが更新することを可能にすべく、（ｄ）において受信された前記到達可能性情報を、前記第１および第２の到達可能性情報セッションを介して前記第１および第２制御デバイスに送信する段階を有する、項目１に記載の方法。
（項目３）
（ｄ）前記第１の到達可能性情報セッションを介して前記第１制御デバイスからの第１の提供情報を前記転送デバイスで受信する段階であって、前記第１の提供情報は、複数の宛先アドレスを複数のネクストホップアドレスにマッピングする到達可能性情報を含む段階を更に備え、
前記交換する段階（ｃ）は、（ｄ）において受信された前記到達可能性情報を前記外部ルーティングデバイスに送信して、前記外部ルーティングデバイスが前記複数の宛先アドレスにデータをどのように転送するべきかを指定する段階を有する、項目１または２に記載の方法。
（項目４）
（ｅ）前記第２の到達可能性情報セッションを介して前記第２制御デバイスからの第２提供情報を前記転送デバイスで受信する段階であって、前記第２提供情報は前記到達可能性情報を含む段階と、
（ｆ）前記到達可能性情報が前記外部ルーティングデバイスに既に提供されているかを前記転送デバイスで判断する段階と、
を更に備え、
前記到達可能性情報を送信する前記段階は、（ｆ）において前記到達可能性情報が前記外部ルーティングデバイスにまだ提供されていないと判断された場合に発生する、項目３に記載の方法。
（項目５）
（ｇ）（ｆ）において前記到達可能性情報が前記外部ルーティングデバイスに既に提供されていると判断された場合に、前記第２提供情報を破棄する段階を更に備える、項目４に記載の方法。
（項目６）
前記第２制御デバイスが非アクティブ化された場合に前記転送デバイスが前記第１の到達可能性情報を介してデータをどのように転送するべきかを前記第１制御デバイスが指定し続けるように、前記第１および第２制御デバイスは冗長性を提供する、項目１から５の何れか１項に記載の方法。
（項目７）
第１、第２および第３の到達可能性情報セッションはボーダーゲートウェイプロトコル制御セッションである、項目１から６の何れか１項に記載の方法。
（項目８）
第１、第２および第３の到達可能性情報セッションは開放型最短経路優先セッションである、項目１から７の何れか１項に記載の方法。
（項目９）
第１、第２および第３の到達可能性情報セッションは中間システム間連携セッションである、項目１から８の何れか１項に記載の方法。
（項目１０）
別々のデバイス上での制御および転送を含んでネットワークとルーティングデータを交換するシステムであって、
転送デバイス、ならびに、第１および第２制御デバイスの間でそれぞれ第１および第２の到達可能性情報セッションを確立することで、前記第１および第２の到達可能性情報セッションが前記ネットワークを介してどの複数のアドレスが到達可能であるかを示す複数の提供情報をそれぞれの前記第１および第２制御デバイスが送信することを可能にする、制御セッションモジュールと、
前記転送デバイスおよび外部ルーティングデバイスの間で第３の到達可能性情報セッションを確立することで、第３の到達可能性情報セッションがそれぞれの前記転送デバイスおよび前記外部ルーティングデバイスを介してどの複数のアドレスが到達可能であるかを示す複数の提供情報を前記転送デバイスが前記外部ルーティングデバイスと交換することを可能にする、外部セッションモジュールと、
前記第１および第２制御デバイスが前記外部ルーティングデバイスにとって単一デバイスに見えるよう、前記転送デバイスにおいて前記第１および第２の到達可能性情報セッション、ならびに前記第３の到達可能性情報セッションの間で複数の提供情報を交換する交換モジュールと、
を備えるシステム。
（項目１１）
前記交換モジュールは、
（ｉ）前記第３の到達可能性情報セッションを介して前記外部ルーティングデバイスから提供情報であって、前記外部ルーティングデバイスが前記転送デバイスから受信した情報をどの複数のアドレスに転送し得るかを示す到達可能性情報を含む提供情報を受信し、
（ｉｉ）前記到達可能性情報内で示された前記複数のアドレスに前記転送デバイスがどのようにデータを転送するべきかを前記第１および第２制御デバイスがどのように指定するか、前記第１および第２制御デバイスが更新することを可能にすべく、（ｉ）において受信した前記到達可能性情報を、前記第１および第２の到達可能性情報セッションを介して前記第１および第２制御デバイスに送信する、項目１０に記載のシステム。
（項目１２）
前記交換モジュールは、
（ｉ）前記第１制御デバイスからの第１の提供情報であって、複数の宛先アドレスを複数のネクストホップアドレスにマッピングする到達可能性情報を含む前記第１の提供情報を、前記第１の到達可能性情報セッションを介して前記転送デバイスで受信し、
（ｉｉ）（ｉ）において受信された前記到達可能性情報を前記外部ルーティングデバイスに送信して、前記外部ルーティングデバイスが前記複数の宛先アドレスにデータをどのように転送するべきかを指定する、項目１０または１１に記載のシステム。
（項目１３）
前記交換モジュールは、更に、
（ｉｉｉ）前記第２制御デバイスからの第２提供情報であって、前記到達可能性情報を含む前記第２提供情報を、前記第２の到達可能性情報セッションを介して前記転送デバイスで受信し、
（ｉｖ）前記到達可能性情報が前記外部ルーティングデバイスに既に提供されているかを前記転送デバイスで判断し、
前記到達可能性情報を送信する前記（ｉｉ）は、（ｉｖ）において前記到達可能性情報が前記外部ルーティングデバイスにまだ提供されていないと判断された場合に発生する、項目１２に記載のシステム。
（項目１４）
（ｉｖ）において前記到達可能性情報が前記外部ルーティングデバイスに既に提供されていると判断された場合に、前記交換モジュールは、前記第２提供情報を破棄する、項目１３に記載のシステム。
（項目１５）
前記第２制御デバイスが非アクティブ化された場合に前記転送デバイスが前記第１の到達可能性情報を介してデータをどのように転送するべきかを前記第１制御デバイスが指定し続けるように、前記第１および第２制御デバイスは冗長性を提供する、項目１０から１４の何れか１項に記載のシステム。
（項目１６）
第１、第２および第３の到達可能性情報セッションはボーダーゲートウェイプロトコル制御セッションである、項目１０から１５の何れか１項に記載のシステム。
（項目１７）
第１、第２および第３の到達可能性情報セッションは開放型最短経路優先セッションである、項目１０から１６の何れか１項に記載のシステム。
（項目１８）
第１、第２および第３の到達可能性情報セッションは中間システム間連携セッションである、項目１０から１７の何れか１項に記載のシステム。
（項目１９）
別々のデバイス上での制御および転送を含んでネットワークとルーティングデータを交換する方法を少なくとも１つの機械に実行させるプログラムであって、当該方法は、
（ａ）転送デバイスおよび第１制御デバイスの間で第１の到達可能性情報セッションを確立し、前記転送デバイスおよび第２制御デバイスの間で第２の到達可能性情報セッションを確立することで、前記第１および第２の到達可能性情報セッションが前記ネットワークを介してどの複数のアドレスが到達可能であるかを示す複数の提供情報をそれぞれの前記第１および第２制御デバイスが送信することを可能にする、段階と、
（ｂ）前記転送デバイスおよび外部ルーティングデバイスの間で第３の到達可能性情報セッションを確立することで、第３の到達可能性情報セッションがそれぞれの前記転送デバイスおよび前記外部ルーティングデバイスを介してどの複数のアドレスが到達可能であるかを示す複数の提供情報を前記転送デバイスが前記外部ルーティングデバイスと交換することを可能にする、段階と、
（ｃ）前記第１および第２制御デバイスが前記外部ルーティングデバイスにとって単一デバイスに見えるよう、前記転送デバイスにおいて前記第１および第２の到達可能性情報セッション、ならびに前記第３の到達可能性情報セッションの間で複数の提供情報を交換する段階と、
を備えるプログラム。
（項目２０）
前記方法は、
（ｄ）前記第３の到達可能性情報セッションを介して前記外部ルーティングデバイスからの提供情報を前記転送デバイスで受信する段階であって、前記提供情報は、前記外部ルーティングデバイスが情報をどの複数のアドレスに転送し得るかを示す到達可能性情報を含む段階を更に備え、
前記交換する段階（ｃ）は、前記到達可能性情報内で示された前記複数のアドレスに前記転送デバイスがどのようにデータを転送するべきかを前記第１および第２制御デバイスがどのように指定するか、前記第１および第２制御デバイスが更新することを可能にすべく、（ｄ）において受信された前記到達可能性情報を、前記第１および第２の到達可能性情報セッションを介して前記第１および第２制御デバイスに送信する段階を有する、項目１９に記載のプログラム。
（項目２１）
前記方法は、
（ｄ）前記第１制御デバイスからの提供情報を、前記第１の到達可能性情報セッションを介して前記転送デバイスで受信する段階であって、前記提供情報は、複数の宛先アドレスを複数のネクストホップアドレスにマッピングする到達可能性情報を含む段階を更に備え、
前記交換する段階（ｃ）は、（ｄ）において受信された前記到達可能性情報を前記外部ルーティングデバイスに送信して、前記外部ルーティングデバイスが前記複数の宛先アドレスにデータをどのように転送するべきかを指定する段階を有する、項目１９または２０に記載のプログラム。
【図１Ａ】
0006562466.tif 000002
【図１Ｂ】
0006562466.tif 000003
【図２Ａ】
0006562466.tif 000004
【図２Ｂ】
0006562466.tif 000005
【図３】
0006562466.tif 000006
【図４】
0006562466.tif 000007