(57)【特許請求の範囲】
【請求項１】
サービスインスタンスをMPLSネットワークに適用する方法であって、
MPLSネットワークにおけるネットワークエレメントにより経路選択の広告をやり取りして、前記MPLSネットワークのトポロジの同期されたビューを前記ネットワークエレメントが取得するステップと、
前記MPLSネットワーク上の第１のMPLSネットワークエレメントにより、前記経路選択の広告のうちの１つにおけるドメインワイドな固有のサービス識別子を広告するステップと、
前記MPLSネットワーク上の第２のMPLSネットワークエレメントにより、前記MPLSネットワークのトポロジの前記第２のMPLSネットワークエレメントの同期されたビューから、前記サービス識別について転送状態を設定すべきか否かを計算するステップと、
を含み、
MPLSラベルの転送状態は、前記第２のMPLSネットワークエレメントにより局所的に算出され、前記MPLSラベルの転送状態は、最終宛先に向けて最短経路のツリーを経由してトラフィックを転送するために前記第２のMPLSネットワークエレメントにより使用される第１の算出されたラベルを含み、前記MPLSラベルの転送状態は、最終宛先に向けて最短経路のツリーを経由してトラフィックを転送する際に、隣接するMPLSネットワークエレメントが使用することとなる第２の算出されたラベルをさらに含んでいることを特徴とする方法。
【請求項２】
前記ドメインワイドな固有のサービス識別子は、ドメインワイドな固有のネットワークエレメントのノード識別子である、
請求項１記載の方法。
【請求項３】
前記ノード識別子は、ドメインワイドな固有のMPLSラベルである、
請求項２記載の方法。
【請求項４】
ユニキャストトラフィックを前記MPLSネットワーク上の前記第１のネットワークエレメントに送出するため、前記ドメインワイドな固有のMPLSラベルが使用される、
請求項３記載の方法。
【請求項５】
前記第２のMPLSネットワークエレメントが前記サービス識別子について転送状態を設定する場合、前記第２のMPLSネットワークエレメントは、ドメインワイドな固有のMPLSラベルを含む前記第２のMPLSネットワークエレメントにより受信されるパケットが前記第１のMPLSネットワークエレメントに送出されるように、前記ドメインワイドな固有のMPLSラベルについて転送状態を設定する、
請求項４記載の方法。
【請求項６】
前記第１の算出されたラベルは、前記サービス・インスタンスと関連するトラフィックを転送するために使用されるドメイン・ワイドな固有のMPLSラベルを含む、
請求項１記載の方法。
【請求項７】
前記ドメインワイドな固有のMPLSラベルは、前記MPLSネットワーク上の宛先ノードに関連するユニキャストラベルである、
請求項６記載の方法。
【請求項８】
前記ドメインワイドな固有のMPLSラベルは、マルチキャストの発信元に関連するマルチキャストラベルである、
請求項６記載の方法。
【請求項９】
前記MPLSラベルは、確定的な方法で算出される、請求項１記載の方法。
【請求項１０】
前記転送状態を前記設定すべきであるか否かを前記計算するステップは、前記サービス識別について転送状態を設定すべきかを計算するステップは：
前記MPLSネットワーク上の第三のMPLSネットワークエレメントにより同じサービス識別子が広告されているかを判定するステップと；
前記MPLSネットワーク上の第三のMPLSネットワークエレメントにより同じサービス識別子が広告されている場合、前記第２のMPLSネットワークエレメントが前記第１のMPLSネットワークエレメントと前記第三のMPLSネットワークエレメントとの間の転送経路上にあるかを判定するステップを含む、
請求項１記載の方法。
【請求項１１】
前記第三のMPLSネットワークエレメントは、前記サービス識別子に関連するマルチキャストの発信元であり、
前記第１のネットワークエレメントは、前記サービス識別子に関連するマルチキャストの加入者である、
請求項１０記載の方法。
【請求項１２】
前記転送経路は、前記第１のMPLSネットワークエレメントと前記第三のMPLSネットワークエレメントとの間の最短経路である、
請求項１０記載の方法。
【請求項１３】
サービスインスタンスをMPLSネットワークに適用する方法であって、
MPLSネットワーク上のMPLSネットワークエレメントのサブセットにより、ドメインワイドな固有の値であるマルチキャストサービスインスタンスにおける関心を広告するステップと、
前記MPLSネットワーク上の他のネットワークエレメントのそれぞれにより、前記他のネットワークエレメントが同じマルチキャストサービスインスタンスにおける共通の関心を広告する２つのネットワークエレメント間の最短距離上にある場合、前記マルチキャストのサービスインスタンスについて転送情報を選択的に設定するステップと、
を含み、
MPLSラベルの転送状態を設定する前記他のネットワークエレメントの各々において、MPLSラベルの転送状態は、MPLSラベルの転送状態を設定しているネットワークエレメントにより局所的に算出され、前記MPLSラベルの転送状態は、マルチキャスト・サービス・インスタンスと関連するトラフィックを転送するために前記MPLSラベルの転送状態を設定しているネットワークエレメントにより使用される第１の算出されたラベルを含み、前記MPLSラベルの転送状態は、マルチキャスト・サービス・インスタンスと関連するトラフィックを転送する際に、隣接するMPLSネットワークエレメントが使用することとなる第２の算出されたラベルをさらに含んでいることを特徴とする方法。
【請求項１４】
前記MPLSラベルの転送情報は、前記サービスインスタンスに関連するドメインワイドの固有なラベルを含んでいる、
請求項１３記載の方法。
【請求項１５】
前記MPLSラベルの転送情報は、前記MPLSネットワーク上のノードのそれぞれにより確定的に計算される、
請求項１３記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信ネットワークに関するものであり、より詳細には、サービスインスタンスの概念をMPLS（Multi  Protocol  Label  Switching）ネットワークに適用するのを可能にする方法及び装置に関する。  
本出願は、2008年11月14日に提出された米国特許仮出願第61/114,558号、2009年3月27日に提出された米国特許出願第12/412,589号に対する優先権を主張するものであり、それぞれの内容は、引用により本明細書に盛り込まれる。
【背景技術】
【０００２】
データ通信ネットワークは、各種スイッチ、ルータ、ハブ、及び、ネットワーク上のデータを受信し、データを送信するために結合及び構成される他の装置を含む場合がある。これらの装置は、「ネットワークエレメント」と呼ばれる。ネットワークエレメントは、データの消費者ではなく、データがネットワークを通して通過するように、データを受信及び送信するために使用される。ネットワークエレメントが、フレーム、パケット、セル又はセグメントのようなプロトコルデータユニットをネットワークリンクにわたり互いの間で通過させるのを可能にすることで、データはネットワークを通して伝達される。特定のプロトコルユニットは、多数のネットワークエレメントにより処理され、ネットワークにわたりその発信元と宛先との間で進行するときに、多数の通信リンクを横断する場合がある。
【０００３】
通信ネットワーク上の各種ネットワークエレメントは、本明細書においてプロトコルと呼ばれる、予め定義されたルールのセットを使用して互いに通信する。ネットワークエレメント間の送信のためにどのように信号が形成されるべきか、様々な態様のどのようなプロトコルデータユニットが見えるべきか、どのようなプロトコルデータがネットワークエレメントにより処理又はルーティングされるべきか、ルーティング情報のようなどのような情報がネットワークエレメント間でやり取りされるべきか、といった異なる通信の態様を管理するため、異なるプロトコルが使用される。
【０００４】
Ethernetネットワークアーキテクチャでは、ネットワークに接続される装置は、所与の時間で共有される電気通信経路を使用する能力を得るために争う。ネットワークセグメントを相互接続するために複数のブリッジ又はノードが使用される場合、同じ宛先への複数の潜在的な経路が存在する。このアーキテクチャの利点は、このアーキテクチャがブリッジ間の経路の冗長度を提供し、更なるリンクの形式で能力がネットワークに付加されるのを可能にすることである。しかし、ループが形成されるのを防止するため、トラフィックがネットワーク上でブロードキャストされるやり方を制限するためにスパニングツリーが一般的に使用される。あるフレームをブロードキャストして応答を待つことでルートが学習され、また、要求及び応答の両者はスパニングツリーに従うので、トラフィックの全てとは言えないにしても殆どは、スパニングツリーの一部であるリンクに従う。これは、スパニングツリー上にあったリンクの過剰な利用及びスパニングツリーの一部でなかったリンクの未活用に繋がることがある。
【０００５】
Ethernetネットワークに固有の制限の幾つかを克服するため、（リンクステートプロトコルで制御されるEthernetネットワークの一例である）PLSB（Provider  Link  State  Bridging）ネットワークは、“Provider  Link  State  Bridging”と題された2006年10月2日に提出された出願第11/537,775号に開示されており、その内容は、引用により本明細書に盛り込まれる。PLSBは、“MULTICAST  IMPLEMENTATION  IN  A  LINK  STATE  PROTOCOL  CONTROLLED  ETHERNET  NETWORK”と題された2007年2月5日に提出された米国特許出願第11/702,263号に更に記載されており、その内容は、引用により本明細書に盛り込まれる。
【０００６】
PLSBは、ネットワークエレメントがリンクステートのルーティング情報をやり取りするのを可能にするため、ISIS（Intermediate  System  to  Intermediate  System）のようなリンクステートプロトコルを使用する。ノードは、ネットワークを通して最短経路を計算するためにリンクステートのルーティング情報を使用する。最短経路のルーティングが使用されるので、スパニングツリープロトコルの使用を回避するためにそれぞれの発信元ノードから最短経路のツリーが計算され、ネットワーク上のリンクの利用が増加する場合がある。
【０００７】
MPLSネットワークは、Ethernetネットワーク又は他の通信ネットワークで構築される場合がある。MPLSネットワークでは、ネットワークを通してラベルスイッチドパス（LSP：Label  Switched  Pass）を確立するためにシグナリングプロトコルが使用される。動作において、入口ノード（ラベルエッジルータ又は略してLER）は、パケットを受信して、どの経路を通してパケットを通過させるかを決定する。LERは、パケットにアウターラベルをパケットに付加し、それをラベルスイッチドパス（LSP）に送出する。LSP上のラベルスイッチルータ（LSR）は、パケットを受信し、アウターラベルを除き、アウターラベルを使用してパケットの次のホップを決定し、新たなアウターラベルをパケットに付加し、ネットワーク上のパケットを次のホップに送出する。このアウターラベルは、パケットがその宛先に到達するまで、パケットがネットワークを通過するときに、そのぞれのホップで置き換えられる。
【０００８】
MPLSは、MPLSネットワーク上のノードのペア間のラベルスイッチドパスを確立することで、ユニキャストの接続を何れの場所においても確立する。ラベルスイッチドパスのセットアップは、パケットがネットワークを通して経路に従うのを可能にするため、どのようなラベルが使用されるかについてノードが合意するように、ラベルが経路上のノードのそれぞれに配信されることを必要とする。MPLSネットワークを通したラベルスイッチドパスを確立するために一般に使用される１つのプロトコルは、他のシグナリングプロトコルも同様に開発されているが、LDP（Label  Distinguish  Protocol）と一般に呼ばれる。シグナリングメカニズムを使用して、ラベルスイッチルータがラベルを読み取ることができるように、ラベルスイッチドパスに沿ってラベルが確立され、ラベルに基づいてパケットの出力を決定し、新たなラベルを適用してネットワークを通した経路に沿ってパケットを送出する。シグナリングプロトコルは、ラベル、及び経路に沿ったトラフィックについて他の適切なフォワーディング状態を設定するために使用される。ラベルスイッチドパスは、前もって無差別に設定される、MLPSネットワークに関するユニキャストの接続を定義するものである。
【０００９】
また、MPLSは、一般に使用される幾つかの異なるタイプのラベルを有する。一般に、アウターレベルは、特定のパケットについて転送コンテキスト（forwarding  context）を定義するために使用される。このラベルは、パケットがネットワークにわたり横断するときにホップバイホップ（hop-by-hop）で置き換えられることがある。転送コンテキストが暗黙的である領域にパケットがひとたび到達すると、このアウターラベルは、PHP（Pentultimate  hop  popping）と一般に呼ばれるパケットから取り出される。転送コンテキストは、パケットの最終の発信先から離れて少なくとも１つのホップで一般的に暗黙的であると見なされる。しかし、アウターレベルは、ルートが暗黙的となるネットワーク経路に沿った任意のポイントで除かれる。アウターラベルは、ノードに特有ではなく、このノードに特有であるとは、ネットワーク上の特定のノードに対してラベルを有することを意味する。アウターラベルは、グローバルに固有な値ではないが、ネットワークの異なる部分で再使用される場合がある。
【００１０】
MPLSは、多数のラベルが所与のパケットにスタックされるのを可能にする。しばしば、上述されたように、パケットについて転送コンテキストを特定するためにアウターラベルが使用される。ラベルスイッチドパスからの出口でパケットをノードが分離するのを可能にするために、インナーラベル（Pseudo  Wire  Label）が頻繁に使用される。これを行うため、宛先ノードは、それぞれのサービスインスタンスについてPseudo  Wireラベルを割り当てる。宛先は、パケットがネットワークに入るとき、ネットワーク上の他のノードを指示してPseudo  Wireラベルをパケットに適用する。これにより、出口ノードがインナーラベルであるPseudo  Wireを使用してどのようにパケットを送出すべきかを決定することができる。従って、出口ノードは、Pseudo  Wireラベルをそのサービスインスタンスに割り当て、入口ノードと連携して、Pseudo  Wireラベルをネットワークに入るトラフィックに付加する。アウターラベルのように、インナーラベルであるPseudo  Wireラベルは、ネットワークに固有なものではないが、特定の出口ノードにのみ固有である。インナーラベルの使用により、多くの異なるデータフローは、MPLSネットワーク上の所与のLSPにわたる送信のために多重化することができる。
【００１１】
動作において、LERは、インナーラベルであるPseudo  Wireラベル及びアウターラベルである転送ラベルの両者をMPLSネットワークへの入口でパケットに付加する。アウターラベルは、ネットワークにわたりパケットを送出するために使用され、インナーラベルは、MPLSネットワークからのパケットを送出するために宛先ノードにより使用される場合がある。これは、１つのルックアップが入口LERにより実行されるのを可能にし、パケットをMPLSネットワークにわたり、MPLSネットワークの宛先ノードにより、たとえばクライアントネットワークに送出するため、ラベルスイッチングが使用されるのを可能にする。
【００１２】
ネットワークを通したLSPのフルセットの確立により、ひとたびユニキャストの接続が確立されると、マルチキャストの接続がMPLSネットワークのトップで構築される。残念なことに、マルチキャストの接続を構築することは、マルチキャストを設定するのを遅くし、エラーが発生しやすくする。たとえば、ノードは、IGMP（Internet  Group  Management  Protocol）のようなプロトコルを使用して、マルチキャストグループに参加及び離脱し、この参加により、マルチキャストツリーにノードが追加され、離脱により、ノードが除かれる。ノードがマルチキャストツリーに参加及び離脱するとき、マルチキャストの接続は、MPLSノードで構築される。マルチキャストに加入したい宛先ノードは、参加メッセージを送出し、中間ノードは、参加メッセージを使用して、転送状態が特定のマルチキャストについて追加されるべきかを判定する。このように１つずつマルチキャストツリーを構築することは、時間がかかり、計算的に集中するものである。従って、MPLSネットワーク上でマルチキャストを実現するために新たな方法を提供することが有利である。
【発明の概要】
【課題を解決するための手段】
【００１３】
ルーティングシステムのLSA（Link  State  Advertisement）を使用したMPLSドメインにおいて、ドメインワイドの固有のノード識別子及びドメインワイドの固有のサービス識別子が配信される。MPLSネットワーク上のノードは、互いのノードについて最短経路のツリーを計算し、ドメインワイドの固有のノードIDに基づいてそれぞれのノードについてユニキャストの転送状態を設定する。また、ノードは、サービス識別子に共通の関心を示すノード間でマルチキャストの接続を設定する。ユニキャスト及びマルチキャストの接続に関連して使用されるラベルを配信するのではなく、ノードは、ラベルを確定的に作成する。ラベルは、ユニキャスト経路毎にドメインワイドに固有又はマルチキャスト毎にドメインワイドに固有であるか、局所的に固有且つ関連される経路について転送コンテキストを提供するために確定的に計算される。１実施の形態では、マルチキャストについてサービス毎に１つ及び発信元毎に１つ、並びにマルチキャストについてサービス毎に１つ及び宛先毎に１つといった、少なくとも２つのラベルコンテキストが使用されるが、任意のラベル数が使用される場合がある。ラベルが確定的に計算される限り、より多くのラベルが使用される場合がある。
【００１４】
あるパケットがMPLSネットワークで受信されたとき、ラベルエッジルータは、MPLSネットワーク上のパケットの宛先を判定し、あるラベルをパケットに付加する。ラベルがドメインワイドに固有である場合、MPLSネットワーク上のノードは、ネットワーク上のそれぞれのホップでラベルを交換することなしに、宛先にパケットを送出する。ラベルがドメインワイドに固有ではない場合、ノードは、ネットワークに渡りパケットを送出するためにラベルの交換を行う。要件ではないが、マルチキャストの経路及びユニキャストの経路は一致する場合がある。
【図面の簡単な説明】
【００１５】
本発明の態様は、特許請求の範囲で特に示される。本発明は、同じ参照符号が同じ構成要素を示している以下の添付図面を通して例示される。以下の図面は、本発明の範囲を限定するものではなく、例示するために本発明の様々な実施の形態を開示するものである。明確さのために、各図面において全ての構成要素に参照符号がラベリングされていない。
【図１】例となるMPLSノードLによるドメインワイドの固有のノード識別子の広告を説明する例となるMPLS通信ネットワークの機能ブロック図である。
【図２】図１の例となるMPLS通信ネットワークの機能ブロック図であり、MPLSネットワーク上の全てのノードがそのMPLSノードにユニキャストトラフィックを送出するのを可能にするため、MPLSノードのうちの１つに確立される例となるユニキャストの接続を示す。
【図３】図１の例となるMPLS通信ネットワークの機能ブロック図であり、幾つかのMPLSノードによる共通のサービスインスタンスにおける関心の広告を示す。
【図４】図１の例となるMPLS通信ネットワークの機能ブロック図であり、共通のサービスインスタンスにおける関心を広告したMPLSノード間で確立された例となるマルチキャストの接続を示す。
【図５】図１〜図４に示される例となるMPLSネットワークのようなMPLSネットワーク上でユニキャストの接続を確立するために使用されるプロセスのフローチャートである。
【図６】図１〜図４に示される例となるMPLSネットワークのようなMPLSネットワーク上でマルチキャストの接続を確立するために使用されるプロセスのフローチャートである。
【図７】本発明の実施の形態を実現するために使用される例となるMPLSノードの機能ブロック図である。
【発明を実施するための形態】
【００１６】
図１は、本発明の実施の形態の実現を説明するために使用される例となるMPLS通信ネットワークを示す。図１に示される実施の形態では、MPLS通信ネットワーク１０は、リンク１４により相互接続される複数のノード１２を有する。MPLSネットワークは、典型的に、OSPF（Open  Shortest  Path  First）又はIS-IS（Intermediate  System  to  Intermediate  System）のようなリンクステートルーティングプロトコルを実行する。ルーティングシステムは、ノードが接続されるリンクの状態を他のノードに通知する広告をノードが送出するのを可能にする。これらの広告は、本実施の形態ではLSA（Link  State  Advertisement）と呼ばれる。一般に、LSAは、そのノードを識別するだけでなく、その隣接するノードをも識別する。ノードは、LSAを待ち受けし、LSAに含まれる情報を使用して、ノードのLSDB（Link  State  Data  Base）に記憶される、MPLSネットワークのトポロジの共通のビューを構築する。次いで、ノードは、必要に応じて、LSDBを使用してMPLSネットワークを通してルートを計算する。
【００１７】
１実施の形態では、ノードは、LSAを使用して、本実施の形態では「ノード識別子」又は「ノードID」と呼ばれるドメインワイドの固有のノード識別子を送信する。ノードIDは、ドメインにおいて固有であり、確定的である。発信元の識別子及び宛先の識別子のためにノードIDが使用される。１実施の形態では、ノードIDは、そのノードIDに関連するノードにユニキャストのトラフィックを送出するため、ネットワーク上の他のノードにより使用することができるMPLSラベルである。ユニキャストのトラフィックについて、ラベルは、ネットワーク上の宛先を識別し、たとえば、宛先のノードを識別する場合がある。マルチキャストについて、対照的に、ラベルは、発信元モードにより特定され、MPLSネットワーク上のMPLSサービスインスタンスを固有に識別する。１実施の形態では、マルチキャストについてサービス毎に１つ及び発信元毎に１つ、並びにマルチキャストについてサービス毎に１つ及び宛先毎に１つといった、少なくとも２つのラベルコンテキストが使用されるが、任意の数のラベルが使用される場合がある。ラベルが確定的に計算される限り、より多くのラベルが使用される場合がある。
【００１８】
ネットワーク上のノードは、転送状態を計算及び設定するために使用される固有のサービスインスタンスを配信する。ユニキャストの転送状態は、宛先ノードで終端するサービスインスタンスに基づいており、マルチキャストの転送状態は、発信元ノードで生じるサービスインスタンスに基づいている。ユニキャストの転送状態は、宛先ノードへの最短経路のツリーに沿って各ノードから意図される宛先ノードへのユニキャストのサービスインスタンスについて設定される。マルチキャストの転送状態は、発信元ノードから、サービスインスタンスにおける共通の関心を広告している任意の他のノードに設定される。ドメインワイドの固有のサービスインスタンス値に接続が基づくことで、ユニキャストの接続及びマルチキャストの接続の両者は、同じやり方でノードにより確立される場合がある。さらに、サービスインスタンスにおける関心はルーティングシステムを使用して広告される場合があるので、MPLSネットワーク上でユニキャスト又はマルチキャスト接続を確立するため、個別のシグナリングプロトコルが必要とされない。ラベル配信のためにラベル配信のプロトコルの使用を回避するため、転送状態が確定的に計算される場合がある。従って、マルチキャスト接続及びユニキャスト接続の両者は、サービスインスタンスに基づいて確立される場合があり、サービスインスタンスについて必要な転送状態は、信号で伝達されるのではなく、計算される場合がある。これにより、ルーティングプロトコルを使用することができ、MPLSネットワークで一般的に使用される幾つかの他のプロトコルの必要が回避される。
【００１９】
１実施の形態では、ノードIDは、MPLSネットワーク上の宛先ノードにトラフィックが送出されるのを可能にするため、アウターラベルとして使用される場合がある。本実施の形態では、ノードIDはドメインワイドで固有であるので、MPLSネットワーク上のノードは、ノードIDでラベル付けされた任意のパケットが宛先に向かう最短経路のツリーに沿って切替えられるように、転送状態を設定する場合がある。本実施の形態では、パケットがネットワークを進行するときにノードがラベルを切り替える理由がなく、むしろ、MPLSネットワークを通してトラフィックが送出されるのを可能にするために、経路上のノード間の調整が必要とされないように、それぞれのホップで同じラベルが使用される場合がある。
【００２０】
別の実施の形態では、宛先へのユニキャストトラフィックについてドメインワイドな固有のラベル値を使用するのではなく、ネットワーク上のノードは、ネットワーク上のそれぞれの宛先に向かってデータを送出するために使用されるようにラベルを確定的に作成する場合がある。先に述べたように、ネットワーク上のそれぞれのノードは、ネットワークトポロジーの同期されたビューを有し、ネットワーク上のそれぞれのノードについて最短経路のツリーを計算する。この計算の一部として、ノードは、最短経路のツリー上でトラフィックを送出するためにどのようなラベルが使用されるべきかを計算する場合がある。同様に、ノードは、宛先へのツリー上でトラフィックを送出するときに、その隣接するノードがどのようなラベルを使用するかを計算する場合がある。ノードは、ラベル空間がネットワーク上で使用される場合があるように、これらのラベルについて転送状態を設定する場合がある。しかし、ラベルは信号で伝達されるものではないので、ネットワーク上でLSPを確立するため、ノードはLDP又はプロトコルを指示する別のラベルを使用することが必要とされない。
【００２１】
例えば、図１において、ノードLは、MPLSネットワーク上のノードLのノードIDとしての役割を果たすMPLSラベルを含むリンク状態広告（Link  State  Advertisement）１６を送信している。図２に示されるように、MPLSネットワーク上のノードは、ルーティングシステムからのネットワークトポロジーを使用して、ネットワーク上のそれぞれのノードへの最短経路のツリー１８を決定する。最短経路のツリーは、図２において太線を使用して示される。ノードがノードIDを含むリンク状態広告を受信したとき、MPLSネットワーク上のノードは、ルーティングシステムを使用して、広告を送信したノードへの最短経路のツリーを計算する。ネットワーク上のノードは、ノードへのツリーに沿ってトラフィックを送出するために使用されるようにラベルを計算し、計算されたMPLSラベルをもつパケットをノードに送出するのを可能にするために、転送状態をその転送データベースに設定する。１実施の形態では、ノードIDは、ラベルであり、このラベルは、MPLSトラフィックをノードに送出するため、ネットワーク上の全てのノードにより使用される場合がある。本実施の形態では、ノードは、ラベルのスワッピングを行う必要がないが、ノードIDのMPLSラベルでタグ付けされたトラフィックを宛先ノードに送出する場合がある。これは、MPLSラベルがドメインワイドに固有であることが要求される。別の実施の形態では、ドメインワイドの固有のMPLSラベルが使用されない場合、ノードはトラフィックを送出するために使用されるラベルを計算し、計算されたラベルに基づいて転送状態を設定する。何れかの実施の形態において、ネットワーク上でラベルをやり取りするための信号の伝達が必要とされない。
【００２２】
図１では、ノードLは、ノードID＝Lを含むリンク状態広告を送信している。ノードIDは、MPLSラベルである。それぞれのノードは、ノードLへの最短経路のツリーにあるかを判定し、ノードLへの最短経路のツリーにあると判定した場合、ノードLへのツリー上でトラフィックを送出させるように転送状態を設定する。ラベルは、ドメインワイドに固有であって且つネットワークにわたり不変であるか、異なるラベルがノードにより計算され、次いで宛先に向けてトラフィックが送出されるときに交換される。
【００２３】
動作において、パケットがネットワークのエッジに到達したとき、ラベルエッジルータは、ルックアップを実行し、パケットがネットワーク上のノードLに送出されるべきかを判定する。ラベルエッジルータは、次いでパケットにノードLのラベル（ノードLのノードID）を付加し、パケットをMPLSネットワークに送出する。MPLSネットワーク上のそれぞれのノードは、ノードLへの最短経路のツリーでノードがパケットを送出するのを可能にする転送状態を有する。
【００２４】
たとえば、ノードAがパケット２０を受信した場合、ネットワーク上でパケットをどのように送出するかを判定するためにルックアップを実行する。この例では、ノードAは、ノードLにパケットが送出されるべきであると判定する。ノードAは、ノードLを識別するMPLSラベル２２をパケットに付加し、パケットをノードに送出する。ノードEは、パケットを受信し、ラベル２２を読み取り、パケットをノードHに送出する。なお、この例では、ノードEは、ラベルを置き換えるのではなく、同じラベルを使用する。ネットワーク上のそれぞれのMPLSノードは、ラベル２２を読み取り、次いで同じラベルを利用してネットワーク上のそれぞれのホップでパケットが同じラベルを使用するのを可能にするという同じプロセスを実行する。任意に、ラベル２２は、最後のノードHで取り出されるか、又はPHP（Pentultimate  Hop  Popping）に類似したやり方で、送出が暗黙的なネットワークの他の場所で取り出される。本実施の形態は、それぞれのノードがトラフィックを宛先に送出ために同じラベルを使用するので、ラベル計算の観点から比較的シンプルな動作を提供する。本発明はこのやり方に限定されるものではなく、MPLS経路上でトラフィックを送出するために使用されるラベルをノードが計算するのを可能にする他のラベル計算プロセスも同様に使用される場合がある。
【００２５】
MPLSラベルの形式でドメインワイドな固有のノードIDを送信し、次いでルーティングシステムを使用してそのラベル／ノードの結合について転送状態を設定することは、ネットワークで信号伝達される個別のラベルの切り替えされる経路を必要とすることなしに、MPLSネットワークでユニキャストの接続が確立されるのを可能にする。典型的に、ノードLは、ネットワーク上の他のノードのそれぞれと、個別のラベルに切替される経路を確立する必要がある。ルーティングシステムを使用してユニキャスト接続を確立することで、従来のLSPシグナリングが除かれる場合がある。
【００２６】
また、マルチキャスト接続は、MPLSネットワークにサービスインスタンスの概念を導入することで実現される場合がある。本明細書で使用されるように、用語「サービスインスタンス“service  instance”」とは、関心のあるマルチキャスト又はユニキャストのグループを示すために使用される。ネットワーク上のノードは、ルーティングシステムのリンク状態広告を使用してサービスインスタンスにおける関心を広告する場合がある。ノードIDのようなサービスインスタンスは、MPLSラベル及びドメインワイドの固有の値である。サービスインスタンス上のノードは、IS-IS  LSAを使用してサービスインスタンスにおけるそれらの関心を広告する。ノードIDが宛先ノードを識別する一方で、マルチキャスト環境では、サービス識別子は、マルチキャストの発信元を識別する。
【００２７】
MPLSネットワーク上のノードがサービスインスタンスを含むLSAを受信するとき、そのノードが、サービスIDにおける関心を広告するノードと、サービスインスタンスに関連する発信元ノードとの間の最短経路にあるかを判定する。マルチキャストの発信元と同じサービスインスタンスにおける共通の関心を広告する別のノードとの間の最短経路にある任意のノードは、それらの転送データベースにサービスインスタンスについて転送状態を設定する。サービスインスタンスはMPLSラベルであるので、サービスインスタンスについて転送状態を設定することで、MPLSネットワークを通して最短経路で、サービスインスタンスのラベルでタグ付けされた任意のパケットをノードは送出することが可能である。したがって、MPLSマルチキャスト接続は、サービスインスタンスにおける関心をノードに広告させることで、簡単に形成される場合がある。ネットワーク上のMPLSノードは、マルチキャストツリーがネットワーク上で個別に信号で伝達される必要なしに、マルチキャストツリーの経路を確定的に作成する場合がある。従って、MPLSマルチキャストは、ユニキャストとして同時に、同じメカニズムを使用して、LDP又はラベルをやり取りする他のプロトコルを使用する必要なしに、IGMPのような個別のマルチキャストグループのマネージメントプロトコルを使用する必要なしに、確立される場合がある。
【００２８】
たとえば、図３は、サービスインスタンス１００がノードLで生じるトラフィックのマルチキャストフローであることを想定している。ネットワーク上の全てのノードが、ノードLがサービスID=100をもつマルチキャストの発信元であることを知るように、ノードLは、サービスインスタンス＝100における関心を広告する。サービスインスタンスIDは、MPLSネットワークでマルチキャストトラフィックを送信するためにノードLが使用するマルチキャストラベルである。
【００２９】
図３に示される例では、ノードA及びノードDがサービスインスタンス=100に関連するマルチキャストトラフィックを受信したいとする。これらのノードのそれぞれは、参加に関心があるマルチキャストのサービスIDを含むリンク状態広告を送信する。従って、ノードA及びDは、サービスID=100を含むLSAを送信する。リンク状態広告は、MPLSネットワーク上で溢れてしまう。リンク状態広告を受信するそれぞれのノードは、マルチキャストの発信元と同じサービスインスタンスにおける共通の関心を広告しているリーフノードとの間の最短経路にあるかをチェックする。ノードEは、たとえばノードAとノードLとの間の最短経路にあると判定し、サービスインスタンスに関連するマルチキャストラベルの転送状態をその転送テーブルに設定する。同様に、ノードHは、ノードAとノードLとの間の最短経路にあると判定し、ノードDとノードLとの間の最短経路にあると判定する。従って、ノードHは、ノードLから受信されたトラフィックを複製し、一方のポートはD及び他方のポートはAといった２つのポートに渡って出力するために、転送状態を設定する。例となるマルチキャストツリーは、図４における細線を使用して示される。
【００３０】
ネットワーク上のそれぞれのノードは、マルチキャストのサービスラベルを計算し、必要に応じてマルチキャストについて転送状態を設定する。マルチキャストは、MPLSネットワーク上のマルチキャストを固有に識別するドメインワイドな固有のマルチキャストMPLSラベルを使用する。本実施の形態では、ノードは、ラベルスワッピングを実行することが必要とされないが、ドメインワイドな固有のMPLSラベルについて転送状態を設定する場合がある。代替的に、ノードは、マルチキャストについて使用されるべきラベルを計算し、計算されたラベルについて転送状態を設定する。
【００３１】
ノードLがマルチキャストと関連するパケットを受信したとき、ノードLは、サービスインスタンス１００の一部としてパケットを識別するため、ラベル２４をパケットに付加する。任意に、ノードは、（発信元ノードIDを使用して）発信元ノードを識別する第二のラベルを付加し、それをアウターラベルとして使用する。ラベルがひとたび使用されると、ノードLは、ネットワーク上でマルチキャストパケットを送出する。ノードHがパケットを受信したとき、ノードHはラベルを読み取り、どの１又は複数のポートを通してパケットを送出すべきかを判定するためにルックアップを実行する。
【００３２】
ノードHは、ノードE及びノードDに向けてパケットを送出すべきと判定し、パケットを複製して、これらのノードへのポートにパケットを出力する。グローバルの固有のラベルがサービスインスタンスのために使用される場合、ノードHは、パケットがネットワーク上のそれぞれのホップで同じラベルを使用するように、パケットが到達したとき、パケットに付加されたのと同じラベルをパケットに適用する。
【００３３】
さもなければ、ラベルが確定的に計算された場合、ノードは、ネットワークにパケットを送出する前に、オリジナルのラベルを新たなラベルと交換する。転送状態が、ノードHとノードDとの間のリンクに関するような暗黙的である場合、ラベルが取り出される場合がある。サービスラベルのみに基づいて送出が実行されるか、又は発信元ラベルが使用される場合にはサービスラベルと発信元ラベルとの組み合わせに基づいて送出が実行される場合がある。
【００３４】
本発明の実施の形態によれば、マルチキャスト及びユニキャストラベルを作成するために使用されるサービスラベルは、確定的に計算される。これにより、MPLS経路は、個別のシグナリングプロトコルを使用して経路が信号で伝達されることなしに形成され、ルーティングプロトコルは、経路を形成し、取り壊すために使用することができる。１実施の形態では、MPLSマルチキャストは、ツリーの各ルートについてラベルスペースを使用する。アップストリームで定義されたラベルを使用するとき、発信元は、２０或いはそれ以下のビットのMPLSラベルスペースに適合する固有の識別子により広告される必要がある。ラベルスペースがアウターラベルであるコンテキストにより識別される。あるノードは、プラットフォーム毎のスペース（per  platform  space）のうちから発信元ノード毎ののアウターラベルスペース（outer  label  space  per  source  node）を計算する。それぞれのノードは、ノード識別子が全ての宛先に関して作成されるようにノード識別子を計算する。
【００３５】
マルチキャスト動作：マルチキャストパケットは、全てのノードに関して同じであるプロットフォーム毎のスペースからのアウターラベル、及び発信元「ノード識別子」を提供するインナーラベルという２つのラベルを含む。インナーラベルは、ドメインワイドラベルである。インナーラベルは、発信元毎（per  source  basis）であり、このマルチキャストツリーをサポートするドメインにおけるノードで設定される。ドメインワイドの固有のインナーラベルは、「サービス識別子」に基づく。
【００３６】
全てのノードは、それぞれのソースからツリーを形成する全てのペアの最短経路の計算を行う。あるノードが特定のサービスインスタンスにおける関心を広告する２つの宛先間の最短経路にあるとき、ノードは、発信元ノード及びノードを通過するサービス識別子についてラベルスペースを設定する。
【００３７】
転送動作は、MPLSマルチキャストコンテキストを読み取り、ノード識別子に基づいて発信元毎のラベルスペース（per  source  label  space）を調べることを含む。アウターラベルは取り除かれるが、第二の（インナー）ラベルは、出口ポートのセットを決定する。アウターラベルは、戻される場合があり、パケットは、それぞれの出口ポートについて複製される。
【００３８】
ユニキャスト動作：ユニキャストパケットは、同じ２つのラベルを含む。アウターラベルは、宛先の「ノード識別子」に基づいてドメインワイドの固有のラベルである。代替的に、ユニキャスト経路のラベルは、確定的に計算される。インナーラベルは、宛先毎（per  destination  basis）であり、出口でのみ調べられる。
【００３９】
全てのインナー及びアウターラベルは及び／又はラベルコンテキストは、ISISを介して配信される。全てのノードは、それぞれのソースからツリーを作成する全てのペアの最短経路の計算を行う。あるノードが２つの宛先間の最短経路上にあるとき、ノードは、サービス識別子が共通して存在する場合に、ノードは、宛先ノードについて宛先ラベルを設定する。サービス識別子は、コントロールプレーンにおいて発信元又はシンクとして識別され、従って単向性のトラフィックを形成することができる。サービスは、多数のサービス識別子を結合する場合がある。サービス識別子は、固有のトポロジー識別子に関連する場合がある。
【００４０】
任意に、１実施の形態では、全ての計算が固有に確定的であると仮定して、ユニキャスト経路は、マルチキャストと適合する。本発明は、このやり方に限定されるものではなく、マルチキャスト用に使用されたのとは異なるネットワークを通した経路を決定するプロセスがユニキャスト用に使用される場合がある。最短経路のツリーが使用されているが、これは決定的である全てのツリーの形式について機能する。従って、最短経路のツリーの代わりに、他のタイプの決定的なツリーが使用される場合がある。更に、同等なツリーについて識別子を形成する異なる経路を識別するために、「ノード識別子」のラベルビットの幾つかが使用される場合に、マルチパスが利用可能である。
【００４１】
トラフィックについて設計された（traffic  engineered）MPLSは、ポイント・ツー・ポイント又はポイント・ツー・マルチポイントのラベルを定義するマルチキャストラベルに類似したラベルを使用する。サービスラベルスペースは、トラフィックについて設計されたサービスを可能にするために分割される必要がある。サービスラベルは、発信元及びシンクとして定義され、トラフィックについて設計されるか、又はトラフィックについて設計されないとして定義することができる。帯域及び経路に関する更なる情報は、トラフィックについて設計された経路がネットワークに渡り設定されるのを可能にするため、リンク状態広告において広告される必要がある。
【００４２】
マルチキャスト及びユニキャストの両者についてであるサービス識別子の編成、次いでエッジでのサービスをこれらのグループにマッピングすることは、後から思い付いてしたことではなく、開始からマルチキャストについて使用可能なトポロジーを提供する。
【００４３】
サービスインスタンスを作成することは、簡略化されたシグナリング（すなわちISISリンク状態広告を使用して）があれば事足りるように、マルチキャストサービスが記載されるのを可能にする。サービスグループの全ての広告をリンク状態に移すことで、モデルは、現在のシグナリングのモデルから計算のうちの１つに移ることができ、信号のデンタルなしに高速な収束を可能にする。MPLSは、ラベル配信プロトコルを使用して、ラベルスイッチドパスを作成する。サービスインスタンスを使用することで、仕立て可能なマルチキャスト及びユニキャストにより、Ethernetのようなサービスモデルを提供するするためにラベル配信の信号の伝達を除くことができ、MPLSコアによるEthernetPBBサービスの適切な接続を保証する。
【００４４】
図５は、本発明の実施の形態に係るMPLSネットワーク上でユニキャストの接続を確立するプロセスに関するフローチャートを示す。図５に示されるように、MPLSネットワーク上のノードは、リンク状態の経路選択の広告をやり取りし（１００）、それぞれのノードがネットワークトポロジーの同期されたビューを有するのを可能にする。ネットワーク上のそれぞれのノードには、そのノードにユニキャストのトラフィックを送出するために使用されるドメインワイドのノードID（MPLSラベル）が割り当てられる（１０２）。ノードは、リンク状態広告を使用してそれらのノードIDを広告し（１０４）、ネットワーク上のノードは、それぞれのノードへの最短経路のツリーを計算する（１０６）。次いで、ノードは、最短経路のツリーで転送状態を設定し、ラベルとしての宛先ノードIDを含むユニキャストのトラフィックが、宛先への最短経路のツリーで転送されるのを可能にする（１０８）。ノードIDは、転送ラベルについて使用されるか、又は、ノードは、ツリーのアップストリームにあるノードにより使用される転送ラベルを確定的に計算するか、又は宛先に向けてトラフィックを転送するために使用する転送ラベルを確定的に計算する場合がある。MPLSネットワークへの入口でパケットが受信されたとき、宛先に基づくラベルは、パケットに付加される（１１０）。このラベルは、宛先ノードIDに基づいている。次いで、入口ノードは、MPLSネットワークにパケットを送出し、最短経路ツリーのノードは、出口ノードにMPLSネットワークに渡りパケットを送出する（１１２）。
【００４５】
図６は、本発明の実施の形態に係るMPLSネットワークのマルチキャストの接続を確立するプロセスのフローチャートである。図６に示されるように、ドメインワイドのサービス識別子は、MPLSネットワークで搬送されるべきそれぞれのマルチキャストに割り当てられる（１２０）。あるマルチキャストに参加するのを望むそれぞれのノードは、リンク状態の経路選択の広告を使用して、サービス識別子を広告する（１２２）。ノードは、予め計算された最短経路ツリーを使用して、マルチキャストの発信元と、マルチキャストにおける関心を広告している１以上のノードとの間の最短経路上にあるかを判定する（１２４）。同じサービスインスタンスにおける共通の関心を広告している２つのノード間の最短経路上にある任意のノードは、サービスインスタンスについて転送状態を設定する（１２６）。トラフィックがマルチキャストツリーで搬送されるために到達したとき、入口ノードは、それぞれのパケットにマルチキャストサービスのラベルを取り付け、パケットをMPLSネットワークに送出する（１２８）。MPLSネットワーク上のノードは、マルチキャストの転送状態を使用して、発信元のノードからそのトラフィックの受信に関心のある他のノードに、MPLSネットワーク上でマルチキャストトラフィックを選択的に送出する（１３０）。
【００４６】
図７は、例となるMPLSネットワークエレメントの機能ブロック図を示す。図７に示されるように、MPLSネットワークエレメントは、他のノードからのリンク状態広告を受信し、リンク状態広告を使用して、リンク状態データベース７２を生成する経路選択機能７０を含む。リンク状態データベースは、ネットワークトポロジーに関する情報を含んでおり、ネットワークのそれぞれのノードを根（root）とする最短経路のツリーを計算するためにネットワークエレメントにより使用される。
【００４７】
本発明の実施の形態によれば、経路選択機能は、リンク状態広告からラベル情報を受信し、ラベル情報を使用して転送機能７４をプログラムする。ラベル情報は、ノード識別子を含み、このノード識別子は、ネットワーク上のノードを識別するラベル、及びネットワーク上のサービスインスタンスを識別するラベルを含む。
【００４８】
経路選択機能があるノードIDを含むリンク状態広告を受信したとき、トラフィックがネットワーク上の宛先ノードへの最短経路のツリーに従うように、転送状態を転送機能に設定して、ノードIDでラベル付けされるトラフィックが正しい出力ポートに送出されるのを可能にする。動作において、転送機能は、ラベルを読み取り、トラフィックについて次のホップを決定し、決定された次のホップに接続される適切なポートについての待機機能７６にトラフィックを送出する。サービスラベルは、パケットが送信される前に、転送機能又は待機機能により適用される場合がある。
【００４９】
経路選択機能がサービスIDを含むリンク状態広告を受信したとき、サービスIDとリンク状態広告を発したノードとの間の関連を含むため、そのリンク状態データベースを更新する。また、経路選択機能は、同じサービスIDにおける広告された関心を有する他のノードについて、そのリンク状態データベースをサーチする。ノードが同じサービスインスタンスにおける共通の関心を広告している２つのノード間で最短経路ツリー上にあるときは何時でも、ノードは、サービスインスタンスについて転送状態を転送機能に設定する。
【００５０】
ネットワークエレメント１２がラベルエッジルータである場合、経路選択機能は、トラフィックがネットワークで到達したときに、トラフィックをラベル付けするためにカプセル化機能８０により使用されるラベルデータベース７８を保持する。パケットがMPLSネットワーク外からネットワークエレメント１２に到達したとき、パケットは分類され、ラベルが取り付けられる。パケットがユニキャストパケットである場合、宛先のラベルは、ユニキャストパケットについて取得され、カプセル化機能により付加される。パケットがマルチキャストパケットである場合、マルチキャストパケットについて発信元に基づくマルチキャストラベルが取得され、カプセル化機能により付加される。任意に、カプセル化機能は、１以上のインナーラベルをパケットに付加する場合がある。カプセル化されたパケットは、MPLSネットワークの適切なポートに送出されるように、転送機能に送出される。
【００５１】
先に記載された機能は、コンピュータ読み取り可能なメモリに記憶され、コンピュータプラットフォーム上の１以上のプロセッサで実行されるプログラム命令のセットとして実現される場合がある。しかし、本明細書で記載される全てのロジックは、ディスクリートコンポーネント、集積回路を使用して実施することができ、集積回路は、特定用途向け集積回路（ASIC）、フィールドプログラマブルゲートアレイ（FPGA）又はマイクロプロセッサ、ステートマシン、或いはそれらの組み合わせを含む他の装置のようなプログラマブルロジックデバイスと共に使用されるプログラマブルロジックを含む。プログラマブルロジックは、リードオンリメモリ、コンピュータメモリ、ディスク、又は他の記憶媒体のような媒体で一時的又は永続的に保持することができる。全ての係る実施の形態は、本発明の範囲に含まれることが意図される。
【００５２】
本明細書に記載された実施形態及び図面に示された実施の形態の様々な変形及び変更は、本発明の精神及び範囲にあることを理解されたい。従って、上記記載に含まれる全ての事項及び添付図面に示される全ての事項は、例示的なものであって限定して解釈されるべきではないことが意図される。
【図１】
0005635523.tif 000002
【図２】
0005635523.tif 000003
【図３】
0005635523.tif 000004
【図４】
0005635523.tif 000005
【図５】
0005635523.tif 000006
【図６】
0005635523.tif 000007
【図７】
0005635523.tif 000008