JP6479169B2 - 目的受信機を識別するパケットに依拠したマルチキャストアーキテクチャにおける分散的選択による、ツリー属性の自動化された判定及び受信機識別子の割り当て - Google Patents

目的受信機を識別するパケットに依拠したマルチキャストアーキテクチャにおける分散的選択による、ツリー属性の自動化された判定及び受信機識別子の割り当て Download PDF

Info

Publication number
JP6479169B2
JP6479169B2 JP2017515193A JP2017515193A JP6479169B2 JP 6479169 B2 JP6479169 B2 JP 6479169B2 JP 2017515193 A JP2017515193 A JP 2017515193A JP 2017515193 A JP2017515193 A JP 2017515193A JP 6479169 B2 JP6479169 B2 JP 6479169B2
Authority
JP
Japan
Prior art keywords
bfr
length
bmp
message
bfer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017515193A
Other languages
English (en)
Other versions
JP2017529009A (ja
Inventor
プルジギエンダ、アントニー
タンツラ、エヴゲニー
Original Assignee
テレフオンアクチーボラゲット エルエム エリクソン(パブル)
テレフオンアクチーボラゲット エルエム エリクソン(パブル)
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by テレフオンアクチーボラゲット エルエム エリクソン(パブル), テレフオンアクチーボラゲット エルエム エリクソン(パブル) filed Critical テレフオンアクチーボラゲット エルエム エリクソン(パブル)
Publication of JP2017529009A publication Critical patent/JP2017529009A/ja
Application granted granted Critical
Publication of JP6479169B2 publication Critical patent/JP6479169B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/16Multipoint routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/60Router architectures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/741Routing in networks with a plurality of addressing schemes, e.g. with both IPv4 and IPv6

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

[関連出願への相互参照]
本出願は、2014年9月19日に提出された米国仮出願第62/053,067号の利益を主張し、同仮出願は参照によりここに取り入れられる。
[分野]
本発明の実施形態は、パケットネットワークの分野に関し、より具体的には、ビットマスク(BM)長、BM位置及びツリータイプ情報の自動化された選択と分配とに関する。
IETF(Internet Engineering Task Force)のインターネットドラフト(I−D)draft-wijnands-bier-architecture-00(参照によりここに取り入れられる)は、全ての目的とするマルチキャスト受信機がビットマスク(BM)内のビットとして符号化されるアーキテクチャとしてBIER(Bit Index Explicit Replication)を記述しており、同アーキテクチャでは、即ち、各受信機がBM内の一意なビットにより表現される。ヘッダ内にカプセル化されるビットマスクを伴うパケットを受信するルータは、BM内のビットの各々についての予め計算されるツリーに従って、受信機へ向けてBMの設定に基づいてパケットを転送することになる。
ヘッダにより搬送可能なビット数の制限及びそれにより生じる拡張可能性の懸念に起因して、BIERは、受信機セットという概念をサポートする。各パケットは、一意なセット識別子により各々が識別されるBIERセットを搬送する。それらセットの複数の用法は、全てのBIERセット内の全ての受信機を包含する単一のBIERツリーを展開すること(単一の分配トランスポートの線形的な拡張)であるか、又は、BIERセットの複数の独立したセット(その各々が独立マルチキャスト分配トランスポートである)であるかのいずれかとして理解され得る。
一旦受信機の数が大規模になり(即ち、多くのセットが存在)又は受信機が多くの独立したBIERツリーに参加する(即ち、受信機は多くのセット内の多くの独立したビットを割り当てられることができる)と、受信機への一意なBM位置(BMP)の割り当ては些細な問題ではなくなり、自動化された解決策を要する。通常のトレードオフは、集中型(サーバ型)のアプローチであるか又は分散型のアプローチであるかであって、分散型のアプローチは、追加的なプロトコルの複雑さを犠牲にして、より高い拡張可能性を提供する。追加的に、保証を要することとして、セットを共有する全ての受信機がパケットを分配するために使用されるツリーのタイプと各セットのBM長とをサポートできなければならない。
ネットワーク内の複数の他のネットワークデバイスへ通信可能に連結される第1のネットワークデバイスにより実行される方法において、上記ネットワークデバイスの各々はビット転送ルータ(BFR)であり、上記方法は、指定BFR(D−BFR)を決定するための選択プロセスに参加すること、を含む。上記方法は、上記第1のネットワークデバイスを上記D−BFRとして選択するという決定に応じてD−BFR動作を実行すること、をさらに含み、D−BFR動作は、上記ネットワーク内の他のBFRにより広告される最大ローカルBM長に基づいて、BMの選択BM長を決定すること、上記BMの各ビットがビット転送出口ルータ(BFER)に対応することになること、及び、決定された上記選択BM長を上記他のBFRへ広告すること、を含む。
1つの実施形態によれば、D−BFR動作を実行することは、上記ネットワーク内の他のBFRにより広告されるサポートされるツリータイプに基づいて、選択ツリータイプを決定すること、及び、決定された上記選択ツリータイプを上記他のBFRへ広告すること、をさらに含む。1つの実施形態において、D−BFR動作を実行することは、1つ以上のBM位置(BMP)を割り当てること、上記1つ以上のBMPの各々が異なるBFERへ割り当てられること、及び、割り当てられた上記1つ以上のBMPを上記他のBFRへ広告すること、をさらに含む。
1つの実施形態において、上記選択BM長を決定することは、上記他のBFRのうちの1つ以上からメッセージを受信すること、各メッセージは当該メッセージを送信したBFRによりサポートされる最大BM長を含むこと、受信されるメッセージ内に含まれる全ての最大BM長のうちの最小のBM長を決定すること、及び、上記最小のBM長が前回の選択BM長よりも短くないと判定することに応じて、上記選択BM長を決定された上記最小のBM長に等しくなるように設定すること、を含む。
1つの実施形態において、上記選択BM長を決定することは、上記他のBFRのうちの1つ以上からメッセージを受信すること、各メッセージは当該メッセージを送信したBFRによりサポートされる最大BM長を含むこと、受信されるメッセージ内に含まれる全ての最大BM長のうちの最小のBM長を決定すること、及び、上記最小のBM長が前回の選択BM長よりも短いと判定することに応じて、上記選択BM長を上記前回の選択BM長に等しくなるように設定すること、を含む。
1つの実施形態によれば、上記選択ツリータイプを決定することは、上記他のBFRのうちの1つ以上からメッセージを受信すること、各メッセージは当該メッセージを送信したBFRによりサポートされる1つ以上のツリータイプの標識を含むこと、メッセージを送信した1つ以上のBFRによりサポートされるものとして示されたツリータイプを判定すること、及び、メッセージを送信した1つ以上のBFRによりサポートされるものとして示された判定された上記ツリータイプへと、上記選択ツリータイプを設定すること、を含む。
1つの実施形態において、1つ以上のBMPを割り当てることは、BFERから、BMPを当該BFERへ割り当てるための要求を示すメッセージを受信すること、BMPを上記BFERへ割り当てること、及び、上記BMPが割り当て済みであることを示すようにBMP情報を更新することにより、上記BMPが他のBFERへ割り当てられないようにすること、を含む。1つの実施形態において、上記BFERからの上記メッセージは、上記BFERが選好する特定のBMPをさらに示す。1つの実施形態において、上記BFERからの上記メッセージは、上記BFERが選好する上記特定のBMP以外のBMPを受け入れる用意が上記BFERにあることをさらに示す。
本発明は、以下の説明及び本発明の実施形態を例示するために用いられる添付図面を参照することにより最も良好に理解され得る。図面は次の通りである:
1つの実施形態に係るBIERをサポートするためのネットワークを例示するブロック図である。 1つの実施形態に係るBIERをサポートするためのネットワークデバイスを例示するブロック図である。 1つの実施形態に係るBIERプロトコル選択(BIER−PE)パケットを例示するブロック図である。 1つの実施形態に係るBIERプレフィクス情報タイプレングス値(BIER−PI TLV)を例示するブロック図である。 1つの実施形態に係るBIERプロトコル選択MB位置(BIER−PE−BMP)パケットを例示するブロック図である。 1つの実施形態に係るBM長を選択するための方法を例示するフロー図である。 1つの実施形態に係るツリータイプを選択するための方法を例示するフロー図である。 1つの実施形態に係るBMPを割り当てるための方法を例示するフロー図である。 本発明のいくつかの実施形態に従って、例示的なネットワーク内のネットワークデバイス(ND)の間の接続性と共に、NDの3つの例示的な実装例を示している。 本発明のいくつかの実施形態に係る、特殊目的のネットワークデバイス902を実装する例示的な手法を示している。
以下の説明は、BIER情報を分配するための方法及び装置を説明する。以下の説明において、ロジック実装、オプコード、オペランドを特定するための手段、リソース分割/共有/複製の実装、システムコンポーネントのタイプ及び相互関係、並びにロジック分割/統合の選択などの多くの具体的な詳細が、本発明のより充分な理解を提供する目的で呈示される。しかしながら、本発明がそうした具体的な詳細が無くとも実践され得ることが、当業者により理解されるであろう。他の例において、制御構造、ゲートレベル回路及びソフトウェア命令シーケンスの全体は、発明を曖昧にしないために詳細には示されていない。当業者は、包含される説明によって、過度な実験をせずとも適切な機能性を実装することができるであろう。
本明細書における、“1つの実施形態”、“一実施形態”、“例示的な実施形態”などへの言及は、記載される実施形態が特定の特徴、構造、又は特性を含み得るものの、あらゆる実施形態が当該特定の特徴、構造、又は特性を含むわけでは必ずしもないかもしれないことを示す。その上、そうしたフレーズは、必ずしも同じ実施形態を指しているわけではない。さらに、一実施形態との関係において特定の特徴、構造、又は特性が説明されている場合、明示的に記載されているか否かに関わらず、他の実施形態との関係においてそうした特徴、構造、又は特性を作用させることは、当業者の知識の範囲内であることが思量される。
ここでは、括弧書きのテキスト及び破線境界(例えば、ラージダッシュ、スモールダッシュ、ドットダッシュ及びドット)を伴うブロックが、本発明の実施形態に追加的な特徴を加えるオプション的な動作を例示するために使用されているかもしれない。但し、そうした表記は、それらがオプション若しくはオプション的な動作に過ぎないこと、及び/又は、実線境界を伴うブロックが本発明のある実施形態においてオプション的ではないことを意味するものとして受け取られるべきではない。
以下の説明及び特許請求の範囲では、“連結される”及び“接続される”という用語が、その派生語と共に使用され得る。これら用語は互いに対して同義語として意図されないことを理解されるべきである。“連結される”は、互いに物理的に又は電気的に直接接触してもしなくておよい2つ以上の要素が互いに協働し又はインタラクションすることを示すために使用される。“接続される”は、互いに連結される2つ以上の要素間における通信の確立を示すために使用される。
電子デバイス又はコンピューティングデバイスは、マシン読取可能な記憶媒体(例えば、磁気ディスク、光ディスク、読み出し専用メモリ(ROM)、フラッシュメモリデバイス、相変化メモリ)及びマシン読取可能な(担体ともいう)伝送媒体(例えば、電気的、光学的、無線、音響的、又は他の形式の伝播信号−例えば、搬送波、赤外線信号など)といったマシン読取可能な媒体(コンピュータ読取可能な媒体ともいう)を使用して、(ソフトウェア命令から構成され、コンピュータプログラムコード若しくはコンピュータプログラムとして言及されることもある)コード及び/又はデータを記憶し、コード及び/又はデータを(内部的に、及び/又は、他の電子デバイスとの間でネットワーク上で)伝送する。よって、電子デバイス(例えば、コンピュータ)は、1つ以上のマシン読取可能な記憶媒体へ連結される1つ以上のプロセッサのセットなどのハードウェア及びソフトウェアを含み、それらマシン読取可能な記憶媒体は、プロセッサのセット上での実行のためのコードを記憶し及び/又はデータを記憶する。例えば、電子デバイスは、不揮発性のメモリであれば電子デバイスがターンオフされた場合(電力が除去された場合)であってもコード/データを維持することができることから、コードを収容する不揮発性メモリを含んでよく、一方で、電子デバイスがターンオンされている間、電子デバイスのプロセッサにより実行されるべきコードの部分は、典型的には、より低速の不揮発性メモリから、電子デバイスの揮発性メモリ(例えば、DRAM(dynamic random access memory)、SRAM(static random access memory))へコピーされる。典型的な電子デバイスは、(伝播信号を用いてコード及び/又はデータを送信し及び/又は受信するために)他の電子デバイスとのネットワーク接続を確立するための1つ以上の物理的なネットワークインタフェースのセットをも含む。本発明の一実施形態の1つ以上の部分は、ソフトウェア、ファームウェア、及び/又はハードウェアの様々な組み合わせを使用して実装されてよい。
ネットワークデバイス(ND)は、ネットワーク上の他の電子デバイス(例えば、他のネットワークデバイス、エンドユーザデバイス)を通信可能に相互接続する電子デバイスである。いくつかのネットワークデバイスは、複数のネットワーキング機能(例えば、ルーティング、ブリッジング、スイッチング、レイヤ2統合、セッションボーダ制御、QoS(Quality of Service)、及び/若しくは加入者管理)についてのサポートを提供し、並びに/又は複数のアプリケーションサービス(例えば、データ、音声及び映像)についてのサポートを提供する、“マルチサービスネットワークエレメント”である。
図1は、あるトポロジーにおいてBIERプロトコルをサポートするためのネットワーク100を例示するブロック図である。ここで使用されるところによれば、トポロジーとは、ネットワークの多様なネットワークエレメント(例えば、リンク、ノードなど)の配置をいう。トポロジーは、1つ以上のツリーを含む。ここで使用されるところによれば、ツリーとは、ループの無い形での、即ち、同一のノードで開始し且つ終了するパスの無い形での複数のネットワークエレメントの配置をいう。ここで、パスとは、複数のネットワークデバイスを連結するリンクのセットをいう。
図示した例において、ネットワーク100は、ネットワークデバイス105〜106へ通信可能に連結されるネットワークデバイス101〜102を含む。ネットワークデバイス102は、さらに、ネットワークデバイス104へ通信可能に連結される。ネットワークデバイス103は、ネットワークデバイス104及び107へ通信可能に連結される。この例において、ネットワークデバイス102及び104〜106は、図1において実線で示されているリンクを通じて、ツリーT1により通信可能に連結される。さらに、ネットワークデバイス103〜104及び107は、図1において破線で示されているリンクを通じて、ツリーT2により通信可能に連結される。
図示したネットワークデバイスの各々は、ビット転送ルータ(BFR)である。ここで使用されるところによれば、BFRは、BIERプロトコルをサポートするネットワークデバイス(即ち、BIER対応ネットワークデバイス)である。BFRは、ビット転送入口ルータ(BFIR)であるかもしれない。ここで使用されるところによれば、BFIRは、目的受信機へ向けて次のBFRへパケットを送信する前に、当該パケットへBMを挿入/カプセル化する入口ルータである。BFRは、ビット転送出口ルータであるかもしれない。ここで使用されるところによれば、BFERは、BMPが割り当てられており、BMPセットを伴うBIERパケットを受信するように構成される出口ルータである。この例において、ネットワークデバイス104はBFIRであり、ネットワークデバイス105〜107はBFERである。
BFRは、あるセットのための指定BFR(D−BFR)として及び/又はバックアップD−BFR(BD−BFR)として選択されることができる。1つのネットワークデバイスが1つ以上のセットのためのD−BFR又はBD−BFRとして供されてもよい。図示した例では、セットS1のためのD−BFRとしてネットワークデバイス101が選択されており、セットS2のためのD−BFRとしてネットワークデバイス103が選択されている。本発明を曖昧にすることを避ける目的で、BD−BFRは図から省略されている。1つの実施形態によれば、D−BFRは、各BM(即ち、セット)についてのBM長を決定する、ように構成される。この例において、セットS1は3ビットという長さを有し、セットS2は2ビットという長さを有する。本説明を通じて、右端のビットを“第1ビット”、右から2番目のビットを“第2ビット”などというものとする。
1つの実施形態によれば、D−BFRは、BMセット内で一意なBMPを各BFERへ割り当てる、ように構成される。この例において、ネットワークデバイス105〜106は、それぞれBMセットS1のBMP001及び010を割り当てられている。さらに、ネットワークデバイス107は、BMセットS2のBMP01を割り当てられている。よって、マルチキャストパケットを受信するBFRは、BM設定に基づいて当該パケットの宛て先を判定することができる。例として、ネットワークデバイス104(即ち、BFIR)がネットワークデバイス107(即ち、BFER)へパケット150を送信する必要があることを想定されたい。そうしたケースにおいて、ネットワークデバイス104は、パケット(S2,01)150をネットワークへ投入することになる。本説明を通じて、BIERパケットを“パケット(B,C)”として記述するものとし、“B”はセットIDを、“C”はBMを表す。“B,C”は、BFR同士で交渉され合意されたカプセル化プロトコル(例えば、MPLS)を用いてパケットへカプセル化されるものと理解されるべきである。図示されていないものの、当業者は、パケットの一部として他の情報(例えば、ペイロード、チェックサムなど)を含めることができることを認識するはずである。
上の例について続けると、ネットワークデバイス103によりパケット(S2,01)150が受信される。ネットワークデバイス103は、カプセル化されたBMの第1ビットが設定されており、ネットワークデバイス107が01というBMP(即ち、1番目のビット位置)を有すると判定する。そうした判定に応じて、ネットワークデバイス103は、ツリーT2を介してネットワークデバイス107へパケット(S2,01)150を向かわせる。本説明を通じて、“1”に設定されたBMビットは、対応するBMPを伴うBFERへパケットが転送されるべきであることを示す。但し、他の用法を用いてもよいことが理解されるべきである。
さらなる例として、ネットワークデバイス104がネットワークデバイス105及び106の双方へパケット151を送信する必要があることを想定されたい。そうした例において、ネットワークデバイス104は、パケット(S1,011)151をネットワークへ投入することになる。パケット(S1,011)151は、ネットワークデバイス102により受信される。ネットワークデバイス102は、カプセル化されたBMの第1ビットが設定されており、ネットワークデバイス105が001というBMP(即ち、1番目のビット位置)を有すると判定する。そうした判定に応じて、ネットワークデバイス102は、BMを修正し、ツリーT1を介してネットワークデバイス105へ当該パケットを向かわせる。例えば、ネットワークデバイス102は、パケット(S1,011)151をパケット(S1,001)151Aとしてネットワークデバイス105へ送信する。
ネットワークデバイス102は、さらに、カプセル化されたBMの第2ビットが設定されており、ネットワークデバイス106が010というBMP(即ち、2番目のビット位置)を有すると判定する。そうした判定に応じて、ネットワークデバイス102は、パケット(S1,011)151を複製し、そのBMを修正し、ネットワークデバイス106へ向かわせる。例えば、ネットワークデバイス102は、パケット(S1,011)151をパケット(S1,010)151Bとしてネットワークデバイス106へ送信する。
1つの実施形態によれば、D−BFRは、参加する全てのBFRがBIERパケットを送信するために計算し及び使用しなければならないツリータイプを選択する、ように構成される。1つの実施形態において、D−BFRは、以下にさらに詳細に説明するように、複数のBFRによりサポートされるツリータイプに基づいて、及び/又は、管理上の構成に基づいて、ツリータイプを選択する。
図2は、1つの実施形態に係るネットワークデバイス201を例示するブロック図である。1つの実施形態によれば、ネットワークデバイス201は、D−BFR及びBD−BFRを選択するための選択アルゴリズム/プロセスを実行する責任を有する選択コントローラ210を含む。選択コントローラ210は、ソフトウェア、ファームウェア、ハードウェア、又はそれらの任意の組み合わせとして実装されてよい。1つの実施形態によれば、トポロジーT内の所与のセットS(<T,S>として表記する)は、そのトポロジー内へと広告されるセットSを含む第1BIER−PEパケット又はBIER−PI TLVパケットによりトリガされない限り、選択を目的として有効化されない。但し、理解されるべきこととして、<T,S>は、限定ではないものの、管理者による構成を含む他のいかなる仕組みを用いて有効化されてもよい。ここで使用されるところによれば、BIER−PEパケットは、BIERについてのプロトコル選択情報を搬送するプロトコルパケットユニット(PPU)である。例えば、OSPFv2(Open Shortest Path First, Version 2)のケースでは、BIER−PEパケットはOpaque LSA(Link State Advertisement)であり、これはIETF RFC(Request For Comments)5250(参照によりここに取り入れられる)に記述されている。ここで使用されるところによれば、BIER−PI TLVパケットは、BFERのBIERプレフィクス情報を搬送するPPUである。例えば、OSPFv2のケースでは、BIER−PI TLVパケットは、拡張プレフィクスOpaque LSAであり、これはIETF I−D draft-ietf-ospf-prefix-link-attr-00(参照によりここに取り入れられる)に記述されている。最初のBIER−PE又はBIER−PI TLVは、多様なイベントのうちのどれによってトリガされてもよく、それらイベントは、限定ではないものの、VPN(Virtual Private Network)によるP2MP(Point-to-Multipoint)ツリーの開始の希望、又はBFERへの管理上のBMPの割り当て及びエリア内へのBIER−PI TLVを介する広告を含む。
一旦セットSが有効化されると、選択コントローラ210は、<T,S>のためのD−BFR(ここでは、D−BFR<T,S>として表記される)を選択するための選択プロセスに参加する、ように構成される。ここで、選択アルゴリズムについて説明する。
[選択の初期化]
選択コントローラ210は、<T,S>に参加するBFRのリストを生成する。留意すべきこととして、ネットワークデバイス201自身がリストに含まれなければならない。リストは、ネットワークデバイス201によって到達可能なBFRのみを含まなければならず、D−BFRになる資格を有しないBFR(例えば、<T,S>について0というルータ優先度を有するBFR)を含んではならない。例えば、リストは、BIER−PEパケットを送信することにより、ネットワークデバイス201によって受信されるBIER選択情報を広告したBFRを含んでもよい。
図3は、1つの実施形態に係るBIER−PEパケット300を例示するブロック図である。BIER−PEパケット300の一部として示している情報/エレメントは例示のためのものであり、本発明の限定を意図したものではない。
1つの実施形態によれば、BIER−PEパケット300は、OSPFv2 opaque LSAとして実装され、これはIETF RFC5250に記述されている。BIER−PEパケット300は、BIERに参加する各BFRにより広告/分配され、図3に例示したセット情報ブロックの1つ以上を含む。セット情報ブロックは、送信元のBFRが参加する各セットについて繰り返される。BIER−PEパケット300は、限定ではないものの、次のフィールドを含む:
[フィールド] … [定義]
“タイプ(Type)” … パケットをBIER−PEとして識別する、予め定義される値
“レングス(Length)” … パケットの合計長
“MT−ID” … マルチトポロジー識別子,IETF RFC4915に記述されている(参照によりここに取り入れられる)
“セット選択数(# Of Set Elections)” … 本パケット内で繰り返されるセット情報ブロックの数
“セットID(Set ID)” … セット識別子
“D−BFR優先度(D-BFR Priority)” … 本パケットの送信元のBFRの<MT-ID, Set ID>についての優先度(D−BFR及びBD−BFR選択の目的のために使用される)
“サポートツリータイプ(Supported Tree Types)” … 本パケットの送信元のBFRによりサポートされるオプションとしてのツリータイプのマスク
“最大ローカルBM長(Maximum Local BM Length)” … 本パケットの送信元のBFRによりサポートされる最大BM長
“D−BFR ID” … D−BFRとして選択されたBFRのルータID。送信元BFRは自身をD−BFRとして選択した場合には本フィールドを自身のルータIDに設定しなければならない
“BD−BFR ID” … BD−BFRとして選択されたBFRのルータID。送信元BFRは自身をBD−BFRとして選択した場合には本フィールドを自身のルータIDに設定しなければならない
[BD−BFR選択アルゴリズム]
ここで再び図2を参照すると、選択コントローラ210は、BD−BFR<T,S>を選択するために、以下の動作を実行する。選択コントローラ210は、生成したBFRのリストから、自らをD−BFR<T,S>として広告した全てのBFRを除外する。除外後の生成されたリスト上に残るBFRから、選択コントローラ210は、1つ以上のBFRが自らをBD−BFR<T,S>として広告したかを判定する。そうである場合、選択コントローラ210は、<T,S>について最も高いルータ優先度を有するBFRをBD−BFR<T,S>として選択する。
BD−BFR<T,S>として広告した2つ以上のBFRのルータ優先度が等しい場合、S(例えば、セットID)でXOR演算したルータIDの最も高いBFRがBD−BFR<T,S>として選択される(ビッグエンディアンの順序とし、双方の値を右寄せして、短い方の値の全てのビットを長い方の値の長さになるまでゼロでパディングすることを想定)。ルータIDを分配するための仕組みは当分野においてよく知られており、簡明さのためにここでは説明されない。
<T,S>についてのBD−BFRとして自身を広告した/宣言したBFRが存在しない場合、選択コントローラ210は、<T,S>について最も高いルータ優先度を有するBFRをBD−BFR<T,S>として選択する。2つ以上のBFRのルータ優先度が等しい場合、SでXOR演算したルータIDの最も高いBFRがBD−BFR<T,S>として選択される。
[D−BFR選択アルゴリズム]
選択コントローラ210は、D−BFR<T,S>を選択するために、以下の動作を実行する。選択コントローラ210は、初期化プロセスの一部として生成したリスト上の1つ以上のBFRが自らをD−BFR<T,S>として(例えば、BIER−PEパケットを送信することにより)広告したかを判定する。そうである場合、<T,S>について最も高いルータ優先度を有する1つがD−BFR<T,S>として選択される。上記BFRのうちの2つ以上のルータ優先度が等しい場合、SでXOR演算したルータIDの最も高い1つが選択される。自身がD−BFR<T,S>であると宣言したBFRが存在しない場合、選択コントローラ210は、新たに選択されたBD−BFR<T,S>をD−BFR<T,S>として選択する。
ネットワークデバイス201が(i)新たに選択されたD−BFR<T,S>であり、(ii)新たに選択されたBD−BFR<T,S>であり、(iii)もはやD−BFR<T,S>ではなく、又は(iv)もはやBD−BFR<T,S>ではないと判定することに応じて、選択コントローラ210は、BD−BFR選択アルゴリズム及びD−BFR選択アルゴリズムを再実行する。例えば、BD−BFR選択アルゴリズムが再実行される際にネットワークデバイス201が新たに選択されたD−BFR<T,S>である場合、ネットワークデバイス201は、もはやBD−BFR<T,S>選択について資格を有しない。とりわけ、これは自身がBD−BFR<T,S>及びD−BFR<T,S>の双方であると宣言するBFRが存在しないことを補償することになる。
選択アルゴリズムの複雑さの裏にある理由は、その時点のD−BFR<T,S>に障害が起きた場合のBD−BFR<T,S>からD−BFR<T,S>への混乱の無い移行が望まれることである。この混乱の無い移行は、古いBD−BFR<T,S>が新たにD−BFR<T,S>の責任を受け入れるまで、新たなBD−BFR<T,S>を選択することが不可であるというヒステリシスの導入を通じて保証される。
上の手続は、同一のBFRをD−BFR<T,S>及びBD−BFR<T,S>の双方として選択するかもしれない。例えば、ネットワークデバイス201は、自身をD−BFR<T,S>として選択し得るが、BIER−PEが他のBFRにより受信されるタイミングに起因して、それら他のBFRがネットワークデバイス201をBD−BFR<T,S>として選択するかもしれない。さらに留意すべきこととして、選択されたD−BFR<T,S>は、<T,S>について最高のルータ優先度を有するBFRではないかもしれず、(やはりBIER−PEがBFRにより受信されるタイミングに起因して)BD−BFR<T,S>も必ずしも2番目に高いルータ優先度を有しないかもしれない。また、留意すべきこととして、ネットワークデバイス201がD−BFR<T,S>となる資格を有するただ1つのBFRである場合、ネットワークデバイス201は、自身をD−BFR<T,S>として選択し、そのネットワークについてBD−BFR<T,S>は存在しないことになる。
1つの実施形態によれば、ネットワークデバイス201が選択されたD−BFR<T,S>であるという判定に応じて、選択コントローラ210は、D−BFRコントローラ211によるD−BFR責任の遂行を有効化する。D−BFRコントローラ211は、ソフトウェア、ファームウェア、ハードウェア、又はそれらの任意の組み合わせとして実装されてよい。1つの実施形態において、D−BFRコントローラ211は、<T,S>についてのBM長(ここでは、BM長<T,S>という)を選択するためのBM長選択部220を含む。BM長<T,S>を選択するために、BM長選択部220は、BIER−PEパケットを介して全てのBFR<T,S>により広告された全ての最大BM長のうちの最小値を計算する。この計算された最小値が、決定される最小BM長である。
1つの実施形態によれば、BM長選択部220は、決定済みの最小BM長以下のBM長を<T,S>内の参加中の全てのBFR(D−BFRは例外であり得る)が広告しない限り、前回選択したBM長よりも短い新たなBM長を選択しない。この要件は、十分なBMPが無いことを理由としてBIERネットワークから排除されるBFRが存在しないことを保証する。
しかしながら、BM長選択部220は、結果としてツリーが細分化される場合であって、より短いBM長を伴うBFRが選択に含められない限り割り当て済みのBMPを伴う全てのBFRが到達可能にならない場合には、より短いBM長を選択してもよい。言い換えれば、全てのBFRを到達可能にする目的でより短いBM長を伴うBFR(即ち、決定される最小BM長を前回選択されたBM長よりも短くさせたBFR)が必要である場合、BM長選択部220は、より短いそのBM長に等しい新たなBM長を選択してよい。1つの実施形態において、新たに選択されるBM長が前回選択されたBM長よりも短いと判定することに応じて、BM長選択部220は、BMP割り当て部221にBMPを再割り当てさせる。そして、1つの実施形態において、BM長選択部220は、以下にさらに詳細に説明するように、ネットワークデバイス201に、新たに選択されたBM長をBIER−PE−BMPパケット内で広告させる。
1つの実施形態によれば、D−BFRコントローラ211は、BIERパケットを送信するためにBFRが使用することを要するツリータイプを選択するためのツリー選択部222、をさらに含む。1つの実施形態によれば、参加中の各BFRは、BIER−PEパケットを送信することにより、自身がサポートするツリータイプを広告する。1つの実施形態において、各BFRは、少なくともSPF(Shortest Path First)ツリータイプ及び/又はSST(Shortest Spanning Tree)タイプをサポートすることを要する。加えて、各BFRは、1つ以上のオプション的なツリータイプをサポートしてよい。そうした広告を受信することに応じて、ツリー選択部222は、例えばネットワークデバイス201によりアクセス可能なストレージデバイスなど、ストレージデバイス内に、サポートツリータイプに関する情報を記憶し又は記憶させる。1つの実施形態によれば、ツリー選択部222は、選択ツリータイプを、全てのBFRによりサポートされるツリータイプに設定する。1つの実施形態において、全てのBFRによりサポート可能な複数のツリータイプが存在すると判定することに応じて、ツリー選択部222は、選択ツリータイプを、全てのBFRによりサポートされる既定のツリータイプ(例えば、管理上で構成されたツリータイプ)に設定する。1つの実施形態において、ツリー選択部222は、選択ツリータイプを管理上で構成されるツリータイプに設定し、選択ツリータイプをサポートしないBFRを除外する。例えば、この実施形態では、オプションとしてのツリータイプを全てのBFRがサポートするわけではないと判定することに応じて、ツリー選択部222は、その選択の結果としていくつかのBFRがBIERネットワークから除外されることになるとしても、オプションとしての当該ツリータイプを選択してよい。ここで説明したツリータイプ選択アルゴリズムは、例示の目的のためのものである。理解されるべきこととして、ツリー選択部222は、管理上の構成及び/又はBFRによりどのツリータイプがサポートされるかに関する情報に基づいて、いかなるツリータイプを選択してもよい。1つの実施形態によれば、ツリー選択部222は、次いで、ネットワークデバイス201に、以下にさらに詳細に説明されるBIER−PE−BMPパケット内で選択ツリータイプを広告させる。
1つの実施形態において、D−BFRコントローラ211は、BFER<T,S>へBMPを割り当てるように構成されるBMP割り当て部221、をさらに含む。BMPの割り当ては、多様なイベントのうちのいかなるイベントによって開始されてもよく、それらイベントは、限定ではないものの、BIER−PI TLVパケットを送信することによるBFERからのBMPを求めるリクエストを含む。
図4は、1つの実施形態に係るBIER−PI TLVパケット400を例示するブロック図である。BIER−PI TLVパケット400の一部として示した情報/エレメントは、説明の目的のためのものであって、本発明の限定を意図していない。
1つの実施形態によれば、BIER−PI TLVパケット400は、拡張プレフィクスOpaque LSAとして実装され、これはIETF I−D draft-ietf-ospf-prefix-link-attr-00に記述されている。BIER−PI−BMPパケット400は、参加中のBFERにより広告/分配される。BIER−PI TLVパケット400は、限定ではないものの、次のフィールドを含む:
[フィールド] … [定義]
“タイプ(Type)” … パケットをBIER−PI TLVとして識別する、予め定義される値
“レングス(Length)” … パケットの合計長
“カプセル化タイプ(Encapsulation Type)” … BIERカプセル化タイプ
“MT−ID” … マルチトポロジー識別子,IETF RFC4915に記述されている(参照によりここに取り入れられる)
“セットID(Set ID)” … セット識別子
“ラベル(Label)” … 本セットについてカプセル化に関し使用されるラベル(20ビット)。BFRにより割り当てられた有効なラベルでなければならない
“管理BMP(Admin BMP)” … 無効なBMP(例えば、全て1)又は管理上要するBMPに設定される
“A” … 本ビットが設定される場合、BFERは管理BMPフィールドに示される値が管理上の構成について選好される位置であることを広告する
“R” … 本ビットが設定される場合、BFERは管理BMPフィールドに管理上で設定されたもの以外のBMPを受け入れる用意があることを示す
ここで再び図2を参照すると、1つの実施形態において、BMP割り当て部221は、割り当て済みのBMPを含むBMP情報を維持する(例えば、BMPデータベースが当該情報を収容する)。BMP割り当て部221は、受信したBIER−PI TLVが選好されるBMPを示しているかを(例えば、受信したBIER−PI TLVにおいてフィールド“A”が設定されているかをチェックすることにより)判定する。そうである場合、BMP割り当て部221は、選好される当該BMPが割り当て用に利用可能である(即ち、未だBFERに割り当てられていない)ことをBMP情報が示しているかを判定する。選好されるBMPが利用可能であると判定することに応じて、BMP割り当て部221は、選好される当該BMPを要求元のBFERへ割り当てる。選好されるBMPが利用可能ではない場合、BMP割り当て部221は、要求元のBFRが選好される当該BMPとは異なるBMPを受け入れる用意があるかを(例えば、受信したBIER−PI TLVにおいてフィールド“R”が設定されているかをチェックすることにより)判定する。そうである場合、BMP割り当て部221は、選好される当該BMPとは異なる利用可能な(即ち、未割り当ての)BMPを要求元のBFERへ割り当てる。要求元のBFERが選好されるBMPを示していて、かつ利用可能な(即ち、未割り当ての)異なるBMPを受け入れる用意が無いことを示している(例えば、フィールド“A”が設定されているがフィールド“R”が設定されていない)場合、BMP割り当て部221は、要求元のBFERに、BMPの衝突を示すエラーを返信する。
1つの実施形態によれば、BIER−PI TLVが選好されるBMPを示さないと判定することに応じて、BMP割り当て部221は、単純に、例えばBMPデータベースから取得される任意の利用可能なBMPを要求元のBFERへ割り当てる。全てのケースにおいて、利用可能なBMPが無いことをBMP情報が示している場合、BMP割り当て部221は、利用可能なBMPが無いことを示すエラーを要求元のBFERへ返信する。BMP割り当て部221は、複数のBFERへ同一のBMPを割り当てることを回避する目的で、各BMP割り当ての後にBMP情報を更新する。1つの実施形態によれば、BMP割り当て部221は、次いで、ネットワークデバイス201に、割り当てられたBMPをBIER−PE−BMPパケット内で広告させる。
新たなBM長の選択、ツリータイプの選択及び/又は1つ以上のBMPの割り当てに応じて、ネットワークデバイス201は、BIER−PE−BMPパケットを送信することによりその情報を広告する。
図5は、1つの実施形態に係るBIER−PE−BMPパケット500を例示するブロック図である。BIER−PE−BMPパケット500の一部として示した情報/エレメントは、説明の目的のためのものであって、本発明の限定を意図していない。
1つの実施形態によれば、BIER−PE−BMPパケット500は、OSPFv2 opaque LSAとして実装され、これはIETF RFC5250に記述されている。BIER−PE−BMPパケット500は、選択されたD−BFR<T,S>により広告/分配され、図5に例示したBMP割り当てブロックの1つ以上を含む。BMP割り当てブロックは、各BMP割り当てについて反復される。BIER−PE−BMPパケット500は、限定ではないものの、次のフィールドを含む:
[フィールド] … [定義]
“タイプ(Type)” … パケットをBIER−PE−BMPとして識別する、予め定義される値
“レングス(Length)” … パケットの合計長
“MT−ID” … マルチトポロジー識別子,IETF RFC4915に記述されている(参照によりここに取り入れられる)
“セットID(Set ID)” … セット識別子
“ツリーID(Tree ID)” … 選択ツリータイプ識別子
0:SPF(Shortest Path First)−全てのBFRによりサポートされる
あらゆるBFRが自身をルートとしてSPFを計算し、そのツリーを用いてビットインデックス転送テーブル(BIFT)を構築する
1:SST(Shortest Spanning Tree)−全てのBFRによりサポートされる
あらゆるBFRがセット(即ち、有効なBMP割り当てを伴うBFR)内の全てのBFERに行きわたるシュタイナーツリーを計算する
2〜6:オプションとしてのツリータイプ1〜5
7:予約済み
“選択BM長(Elected BM Length)” … BMの選択された長さ
“BMP割り当て数(# BMP Assignments)” … 本パケット内で反復されるBMP割り当てブロックの数
“経路タイプ/AF/プレフィクス長(Route Type/AF/Prefix Length)” … BMPが割り当てられた対象のプレフィクスについての一意な識別子
“ステータス(status)” … 0:BMP割り当ては有効、1:エラー:BMP衝突、2:エラー:BMP不足
“BMP割り当て(BMP Assignment)” … BFER IDにより識別されるBFERへ割り当てられたBMP。割り当てエラーがある場合、本フィールドは無効なBMP(例えば、全て1)に設定される。
“アドレスプレフィクス(Address Prefix)” … BFERに関連付けられるプレフィクス
“BFER ID” … BMPが割り当てられた対象のBFERのルータID
ここで再び図2を参照すると、1つの実施形態によれば、ネットワークデバイス201が選択されたBD−BFR<T,S>であると判定することに応じて、選択コントローラ210は、BD−BFRコントローラ212によるBD−BFR責任の遂行を有効化する。BD−BFRコントローラ212は、ソフトウェア、ファームウェア、ハードウェア、又はそれらの任意の組み合わせとして実装されてよい。1つの実施形態において、BD−BFRコントローラ212は、選択されたD−BFR<T,S>の正確な状態、及び受信される各広告上の正確な状態を自身の広告内でミラーリングし、ネットワークデバイス201がD−BFR<T,S>への接続性を喪失した場合に備えて全てのD−BFR<T,S>手続の開始点として使用すべき自身の内部状態を維持する。
BIER−PEを広告することによりセット<T,S>へ参加することを望む新たなBFRは、次の場合には、<T,S>について全てのメンバーによりツリータイプ計算において無視されなければならない:
・選択BM長よりも自身の最大サポートBM長が短い場合、
・選択ツリータイプを計算可能でない場合、又は、
・<T,S>上でのBIERトラフィックの転送をサポートするために有効なカプセル化ラベルを(少なくとも一時的に)割り当て可能でない場合。
よって、D−BFRが既に選択済みである場合、<T,S>について上の条件を満たさないルータは、自身のBIER−PEを広告すべきでない。但し、当該ルータは、全ての受信機に行きわたるツリーの細分化を防止するためにD−BFRがより短いBMを選択することを可能とするために、そうしたBIER−PEを広告してもよい。
各BFR<T,S>は、自身のBIER−PI TLVにおいて、BMPを求めるリクエストを搬送する。BFR<T,S>がBFER<T,S>でもあるケースでは、BIER−PI TLVは、BIERトラフィックを転送する際にセットSのカプセル化のために割り当てられたラベルをも含む。最適化、リソース制約又は他の基準に起因して、ルータは、そうしたラベルを<T,S>において割り当てることができないかもしれない。その場合、ルータは、<T,S>について自身のBIER−PI TLVを広告してはならなない。従って、<T,S>についてツリータイプを計算する全てのルータは、それを計算から除外する。ルータが<T,S>についてラベルを広告する場合、<T,S>についてツリータイプを計算する全てのルータは、<T,S>についてビットインデックス転送テーブル(BIFT)を再計算しなければならない。
特殊な検討の観点として、ルータは、転送されるトラフィックが無いためにラベル空間を節約できると判定した場合、意図的に<T,S>についてラベルを広告せず又は自身のBIER−PI TLVを削除(purge)してもよいということが考察されるべきである。
図6は、BM長を選択するための方法600を例示するフロー図である。例えば、方法600は、ソフトウェア、ファームウェア、ハードウェア、又はそれらの任意の組み合わせで実装されることができる。このフロー図及び他のフロー図における動作は、他の図面の例示的な実施形態を参照しながら説明されるであろう。しかしながら、理解されるべきこととして、他の図面を参照して議論したものとは別の本発明の実施形態によりフロー図の動作を実行することが可能であり、また、それら他の図面を参照して議論した本発明の実施形態がフロー図を参照して議論されるものとは異なる動作を実行することが可能である。
ここで図6を参照すると、ブロック605において、BM長選択部は、BFRにより広告される最大BM長を(例えば、BIER−PEパケット内で)受信する。ブロック610において、BM長選択部は、受信した最大BM長をストレージデバイス内に記憶する。ブロック615において、BM長選択部は、新たなBM長を選択するためのトリガを受信する。例えば、そのトリガは、BIER−PEパケットの受信、管理者により設定されるリクエストなどであってよい。ブロック620において、BM長選択部は、受信した全ての最大BM長のうち最小のBM長を判定する。
ブロック625において、BM長選択部は、判定した最小のBM長が前回選択されたBM長(即ち、その時点のBM長)よりも短いかを判定する。短くない場合、BM長選択部は、ブロック635へ遷移し、新たに選択されるBM長を、判定した最小のBM長に設定する。ブロック645において、BM長選択部は、新たに選択したBM長を(例えば、BIER−PE−BMPパケットを送信することにより)広告する。
次に、ブロック625へ戻る。判定した最小のBM長が前回選択されたBM長よりも短いと判定することに応じて、BM長選択部は、ブロック630へ遷移する。ブロック630において、BM長選択部は、受信した全ての最大BM長が判定した最小BM長以下であるかを判定する。そうである場合、BM長選択部は、ブロック635へ遷移する。一方、受信した全ての最大BM長が判定した最小BM長以下であるというわけではない場合、BM長選択部は、ブロック640へ遷移し、新たに選択されるBM長を前回選択したBM長に設定する(即ち、その時点のBM長を維持する)。留意すべきこととして、BM長選択部は、結果としてツリーが細分化される場合であって、より短いBM長を伴うBFRが選択に含められない限り割り当て済みのBMPを伴う全てのBFERが到達可能にならないと判定する場合には、前回選択したBM長よりも短いかに関わらず、新たなBM長を選択してもよい。例えば、より短い最大BM長を伴うBFRが選択に含められない場合に割り当て済みのBMPを伴う全てのBFERが到達可能にはならないと判定することに応じて、BM長選択部は、1つの実施形態において、より短い最大BM長を伴うBFRを選択に含め、(例えば、ブロック635の動作を実行することにより)新たに選択されるBM長をより短いその最大BM長に設定する。これは、新たな最小のBM長を判定するためのブロック620の動作の実行の前でも後でも行われることができる。
図7は、ツリータイプを選択するための方法700を例示するフロー図である。例えば、方法700は、ツリー選択部222により実行されることができる。方法700は、ソフトウェア、ファームウェア、ハードウェア、又はそれらの任意の組み合わせで実装されることができる。ここで図7を参照する。ブロック705において、ツリー選択部は、BFRによりどのツリータイプがサポートされるかの情報を(例えば、受信されるBIER−PEパケットの一部として)受信する。ブロック710において、ツリー選択部は、受信したサポートツリータイプの情報をストレージデバイス内に記憶する。ブロック715において、ツリー選択部は、ツリータイプを選択するためのトリガを受信する。例えば、そのトリガは、BIER−PEパケットの受信、管理者により開始されるリクエストなどであってよい。
ブロック720において、ツリー選択部は、選択ツリータイプを、全てのBFRによりサポートされるツリータイプに設定する。ブロック725において、ツリー選択部は、全てのBFRによりサポート可能な複数のツリータイプが存在すると判定することに応じて、選択ツリータイプを、全てのBFRによりサポートされる管理上で構成されるツリータイプに設定する。ブロック730において、ツリー選択部は、選択ツリータイプを、管理上で構成されるツリータイプに設定し、及び当該選択ツリータイプをサポートしないBFRを除外する。ブロック730は、例えば、あるオプションとしてのツリータイプを全てのBFRがサポートしているわけではなく、いくつかのBFRがBIERネットワークから除外される結果となるとしても、それでもツリータイプを選択する必要があるとツリー選択部が判定することに応じて、実行されてよい。ブロック735において、ツリー選択部は、選択ツリータイプを(例えば、BIER−PE−BMPパケットを送信することにより)広告する。
図8は、BMPを割り当てるための方法800を例示するフロー図である。例えば、方法800は、BMP割り当て部221により実行されることができる。方法800は、ソフトウェア、ファームウェア、ハードウェア、又はそれらの任意の組み合わせで実装されることができる。ここで図8を参照する。ブロック805において、BMP割り当て部は、BMPを割り当てるためのトリガを受信する。そのトリガは、BIER−PEパケット、BIER−PI TLVパケットの受信、管理者により開始されるリクエストなどであってよい。
ブロック810において、BMP割り当て部は、未割り当ての(即ち、利用可能な)BMPをBFERへ割り当てる。割り当てられるBMPは、要求元のBFERがそのBIER−PI TLVにおいて選好されるBMPを示したか、選好されるBMPが利用可能ではない場合に他のBMPを受け入れる用意があるか、などに依存する。例えば、要求元のBFERが選好されるBMPを示さない場合、BMP割り当て部は、任意の利用可能な/未割り当てのBMPを選択し、それをBFERへ割り当てる。要求元のBFERが選好されるBMPを示す場合であって当該BMPが利用可能である場合、BMP割り当て部は、その選好されるBMPを要求元のBFERへ割り当てる。しかしながら、選好されるBMPが利用可能ではない場合であって要求元のBFERが他のBMPを受け入れる用意があることを示す場合、BMP割り当て部は、BFERに他の利用可能を割り当てる。一方、選好されるBMPが利用可能ではない場合であって要求元のBFERが他のBMPを受け入れる用意が無いことを示す場合、BMP割り当て部は、衝突を示すエラーステータスをBFERへ返信する。全てのケースにおいて、利用可能なBMPが存在しない場合、BMP割り当て部は、利用可能なBMP無し、を示すエラーをBFERへ返信する。
ブロック815において、BMP割り当て部は、同じBMPが他のBFERへ割り当てられることのないよう、上記BMPが割り当てられたことを示すように(例えば、データベース内に記憶されている)BMP情報を更新する。ブロック820において、BMP割り当て部は、割り当てたBMPを(例えば、BIER−PE−BMPパケットを送信することにより)広告する。
図9Aは、本発明のいくつかの実施形態に従って、例示的なネットワーク内のネットワークデバイス(ND)間の接続性と共に、NDの3つの例示的な実装を示している。図9Aは、ND900A〜H、及びそれらの接続性を、A−B、B−C、C−D、D−E、E−F、F−G及びA−Gの間の線、並びに、HとA、C、D及びGの各々との間の線の手段により示している。これらNDは物理的デバイスであり、これらNDの間の接続性は、無線又は有線であり得る(しばしばリンクという)。ND900A、E及びFから伸びる追加的な線は、これらNDが本ネットワークについての入口及び出口ポイントとして動作することを示している(よって、これらNDをエッジNDということがあり、一方で他のNDはコアNDと呼ばれ得る)。
図9Aにおける例示的なND実装の2つは次の通りである:1)カスタムASIC(application-specific integrated circuits)及びプロプライエタリなOS(operating system)を使用する特殊目的のネットワークデバイス902、並びに、2)COTS(common off-the-shelf)プロセッサ及び標準のOSを使用する汎用目的のネットワークデバイス904。
特殊目的のネットワークデバイス902は、(典型的には1つ以上のプロセッサのセットを含む)計算リソース912と、(典型的には1つ以上のASIC及び/又はネットワークプロセッサを含む)転送リソース914と、(物理ポートと呼ばれることもある)物理ネットワークインタフェース(NI)916と、ネットワーキングソフトウェア920を記憶している非一時的なマシン読取可能な記憶媒体918と、を含むネットワークハードウェア910を含む。物理NIは、ND900A〜Hの間の接続性により示されているようなネットワーク接続を(例えば、ワイヤレスネットワークインタフェースコントローラ(WNIC)を通じて無線で、又は、ネットワークインタフェースコントローラ(NIC)へ接続された物理ポートへケーブルを繋げることを通じて)仲介するND内のハードウェアである。動作の期間中、ネットワーキングソフトウェア920は、1つ以上のネットワーキングソフトウェアインスタンス922のセットをインスタンス化するためにネットワーキングハードウェア910により実行され得る。ネットワーキングソフトウェアインスタンス922の各々、及びネットワーキングハードウェア910のネットワークソフトウェアインスタンスを実行する部分(当該ネットワーキングソフトウェアインスタンスに専用のハードウェア及び/又は当該ネットワーキングソフトウェアインスタンスによりネットワークソフトウェアイスタンス922のうちの他のインスタンスと時間的に共用されるハードウェアの時間スライスである)は別々の仮想ネットワークエレメント930A〜Rを形成する。仮想ネットワークエレメント(VNE)930A〜Rの各々は、(ローカル制御モジュール又は制御通信モジュールということもある)制御通信及び構成モジュール932A〜R及び転送テーブル934A〜Rを含み、そのため、所与の仮想ネットワークエレメント(例えば、930A)は、制御通信及び構成モジュール(例えば、932A)、1つ以上の転送テーブルのセット(例えば、934A)、及びネットワーキングハードウェア910の仮想ネットワークエレメント(例えば、930A)を実行する部分を含む。
ソフトウェア920は、ネットワーキングハードウェア910により実行されるコードであって、ネットワーキングハードウェア910にネットワーキングソフトウェアインスタンス922の部分として本発明の1つ以上の実施形態の動作を実行させる当該コード、を含むことができる。
特殊目的のネットワークデバイス902は、多くの場合、物理的に及び/又は論理的に、次を含むものと考えられる:1)制御通信及び構成モジュール932A〜Rを実行する計算リソース912を含む(制御プレーンということもある)ND制御プレーン924、2)転送テーブル934A〜R及び物理NI916を利用する転送リソース914を含む(転送プレーン、データプレーン又はメディアプレーンということもある)ND転送プレーン926。NDがルータである(又はルータの機能性を実装している)例として、ND制御プレーン924(制御通信及び構成モジュール923A〜Rを実行する計算リソース912)は、典型的には、データ(例えば、パケット)がどのようにルーティングされるべきか(例えば、当該データについてのネクストホップ及び当該データについてのアウトゴーイング物理NI)の制御と、転送テーブル934A〜R内のルーティング情報の記憶とに関与する責任を有し、ND転送プレーンは、転送テーブル934A〜Rに基づいて、物理NI916上でデータを受信し及び当該データを物理NI916のうちの適切なNIから外へ転送する責任を有する。
図9Bは、本発明のいくつかの実施形態に係る特殊目的のネットワークデバイス902を実装する例示的な手段を示している。図9Bは、(典型的には、ホットプラグ可能な)カード938を含む特殊目的のネットワークデバイスを示している。いくつかの実施形態では、それらカード938は2つのタイプ((ラインカードと呼ばれることもある)ND転送プレーン926として動作する1つ以上、及び、(制御カードと呼ばれることもある)ND制御プレーン924を実装するように動作する1つ以上)からなる一方、代替的な実施形態は、単一のカードへ機能性を結合してもよく、及び/又は、追加的なカードタイプ(例えば、ある追加的なカードのタイプは、サービスカード、リソースカード、又はマルチアプリケーションカードと呼ばれる)を含んでもよい。サービスカードは、特殊化された処理(例えば、レイヤ4からレイヤ7のサービス(例えば、ファイアウォール、IPsec(Internet Protocol Security)、SSL(Secure Sockets Layer)/TLS(Transport Layer Security)、IDS(Intrusion Detection System)、P2P(peer-to-peer)、VoIP(Voice over IP)、セッションボーダコントローラ、モバイルワイヤレスゲートウェイ(ゲートウェイGPRS(General Packet Radio Service)サポートノード(GGSN))、EPC(Evolved Packet Core)ゲートウェイ))を提供することができる。例として、サービスカードは、IPsecトンネルを終端させ、並びに付随する認証及び暗号化アルゴリズムを実行するために使用されてもよい。これらカードは、バックプレーン936として図示されている1つ以上の相互接続メカニズムを通じて互いに連結される(例えば、それらラインカードを連結する第1のフルメッシュ、及びカードの全てを連結する第2のフルメッシュ)。
図9Aに戻ると、汎用目的のネットワークデバイス904は、(しばしばCOTSプロセッサである)1つ以上のプロセッサ942のセット及び(ネットワークインタフェースカードとしても知られる)ネットワークインタフェースコントローラ944(NIC)、並びに、ソフトウェア950を記憶している非一時的なマシン読取可能な記憶媒体948、を備えるハードウェア940を含む。動作の期間中、プロセッサ942は、ソフトウェア950を実行して、(仮想マシンモニタ(VMM)ということもある)ハイパーバイザ954とハイパーバイザ954により動作させられる1つ以上の仮想マシン962A〜Rとをインスタンス化し、これらをまとめてソフトウェアインスタンス952という。仮想マシンは、仮想化されていない物理的なマシン上で稼働しているかのようにプログラムを実行する物理マシンのソフトウェア実装であり、アプリケーションは一般に、“そのままの(bare metal)”ホスト電子デバイス上で稼働する場合とは対照的に、それらが仮想マシン上で稼働していることを知らない。但し、いくつかのシステムは、最適化の目的のためにオペレーティングシステム又はアプリケーションが仮想化の存在を認識することを可能とする準仮想化(para-virtualization)を提供する。仮想マシン962A〜Rの各々及びハードウェア940の仮想マシンを実行する部分(当該仮想マシンに専用のハードウェア及び/又は当該仮想マシンにより他の仮想マシン962A〜Rと時間的に共用されるハードウェアの時間スライスである)は別々の仮想ネットワークエレメント960A〜Rを形成する。
仮想ネットワークエレメント960A〜Rは、仮想ネットワークエレメント930A〜Rと同等の機能性を実行する。例えば、ハイパーバイザ954は、仮想マシン962Aにとってネットワーキングハードウェア910と同様に見える仮想オペレーティングプラットフォームを呈示し、仮想マシン962Aは、制御通信及び構成モジュール932A及び転送テーブル934Aと同様の機能性を実装するために使用され得る(ハードウェア940のこの仮想化は、ネットワーク機能仮想化(NFV)ということもある)。このように、NFVは、データセンタ、ND及び顧客構内機器(CPE)内に位置することができる産業標準の大容量サーバハードウェア、物理スイッチ及び物理ストレージへと、多くのネットワーク機器タイプを集約するために使用されてよい。但し、本発明の様々な実施形態は、仮想マシン962A〜Rの1つ以上を多様に実装してよい。例えば、本発明の実施形態は、各仮想マシン962A〜Rが1つのVNE960A〜Rに対応する形で図示されているが、代替的な実施形態は、より精細なレベルの粒度でこの対応関係を実装してもよく(例えば、ラインカード仮想マシンがラインカードを仮想化し、制御カード仮想マシンが制御カードを仮想化する、など)、理解されるべきこととして、VNEに対する仮想マシンの対応関係を参照しながらここで説明した技法は、より精細なレベルのそうした粒度が使用される実施形態にも当てはまる。
ある実施形態において、ハイパーバイザ954は、物理イーサネットスイッチと同様の転送サービスを提供する仮想スイッチを含む。具体的には、仮想スイッチは、仮想マシンとNIC944との間、及びオプションとして仮想マシン962A〜Rの間でトラフィックを転送し、加えて、この仮想スイッチは、(例えば、仮想ローカルエリアネットワーク(VLAN)を履行することにより)互いに通信することをポリシー上許可されないVNE960A〜Rの間のネットワーク分離を実施してもよい。
ソフトウェア950は、プロセッサ942により実行された場合にプロセッサ942に仮想マシン962A〜Rの一部として本発明の1つ以上の実施形態の動作を実行させるコード、を含むことができる。
図9Aにおける第3の例示的なND実装は、単一のND又はND内の単一のカードに、カスタムASIC/プロプライエタリOS及びCOTSプロセッサ/標準OSの双方を含む、ハイブリッドネットワークデバイス906である。そうしたハイブリッドネットワークデバイスのある実施形態において、プラットフォームVM(即ち、特殊目的のネットワークデバイス902の機能性を実装するVM)は、ハイブリッドネットワークデバイス906内に存在するネットワーキングハードウェアへ準仮想化を提供し得る。
NDの上述した例示的な実装に関わらず、NDにより実装される複数のVNEのうちの単一のVNEが考慮される(例えば、VNEのうちの1つのみが所与の仮想ネットワークの一部である)場合、又は、NDにより単一のVNEのみがその時点で実装されている場合、VNEへ言及するために短縮された用語であるネットワークエレメント(NE)が使用されることもある。また、上述した例示的な実装の全てにおいて、VNE(例えば、VNE930A〜R、VNE960A〜R、及びハイブリッドネットワークデバイス906内のVNE)の各々は、物理NI(例えば、916、946)上でデータを受信し、当該データを物理NI(例えば、916、946)のうちの適切な1つから外へ転送する。例えば、IPルータの機能性を実装するVNEは、IPパケット内のIPヘッダ情報のいくつかに基づいてIPパケットを転送する。IPヘッダ情報は、ソースIPアドレス、宛て先IPアドレス、ソースポート、宛て先ポート(ここで、“ソースポート”及び“宛て先ポート”は、NDの物理ポートとは異なり、プロトコルポートを指す)、トランスポートプロトコル(例えば、UDP(user datagram protocol)、TCP(Transmission Control Protocol)及びDSCP(differentiated service)、を含む。
ネットワークインタフェース(NI)は、物理的であっても又は仮想的であってもよく、IPの文脈では、物理NIか仮想NIかに関わらず、インタフェースアドレスはNIへ割り当てられるIPアドレスである。仮想NIは、物理NI若しくは他の仮想インタフェースに関連付けられてもよく、又は単独で存在してもよい(例えば、ループバックインタフェース、ポイントツーポイントプロトコルインタフェース)。NI(物理又は仮想)は、番号を付与され(IPアドレス有りのNI)又は付与されない(IPアドレス無しのNI)。ループバックインタフェース(及びそのループバックアドレス)は、管理目的でしばしば使用される、NE/VNE(物理又は仮想)の特定のタイプの仮想NI(及びIPアドレス)であり、そうしたIPアドレスをノーダルループバックアドレスという。NDのNIへ割り当てられたIPアドレスをそのNDのIPアドレスといい、より粒度の高いレベルでは、ND上に実装されるNE/VNEへ割り当てられたIPアドレスを当該NE/VNEのIPアドレスということができる。
これまでの詳細な説明のいくつかの部分は、コンピュータメモリ内のデータビットに対するトランザクションのアルゴリズム的でシンボリックな表現の観点で呈示されている。それらアルゴリズム的な説明及び表現は、当業者がその作業の実体を他の当業者へ最も効率よく伝達するためにデータ処理分野において用いられている手法である。ここで、及び一般に、アルゴリズムは、所望の結果を導くトランザクションの首尾一貫したシーケンスとして想起される。トランザクションは、物理的な量の物理的な操作を要するものである。通常、必須ではないものの、それら量は、記憶し、移送し、結合し、比較し、及びさもなければ操作することの可能な電気的又は磁気的な信号の形態をとる。時には、共通的な用途を理由として、それら信号を、ビット、値、エレメント、シンボル、文字、用語又は数などとして言及することが簡便であることが分かっている。
しかしながら、念頭に置くべきこととして、それら及び同様の用語の全ては、適切な物理的な量に関連付けられるべきであり、それら量に適用される単に便宜上のラベルに過ぎない。上の議論から明白な別段の記述がなければ、本説明を通じて、“処理(processing)”、“計算(computing若しくはcalculating)”、“判定若しくは決定(determining)”又は“表示(displaying)”などの用語を利用した議論は、コンピュータシステム又は同様の電子コンピューティングデバイスのアクション及びプロセスであって、コンピュータシステムのレジスタ及びメモリ内の物理的な(電子的な)量として表現されるデータをコンピュータシステムのメモリ、レジスタ、又はそうした情報記憶、伝送若しくは表示デバイス内の物理量として同様に表現される他のデータへ操作変換する当該アクション及びプロセスへの言及である。
ここで呈示されたアルゴリズム及びディスプレイは、いかなる具体的なコンピュータ又は他の装置にも本質的には関連しない。ここでの教示に従うプログラムと共に多様な汎用目的のシステムを使用してもよく、又は、所要の方法のトランザクションを実行するための、より専門化された装置を構築することが便利であることが分かるかもしれない。多様なこれらシステムのための所要の構造は、上の説明から明白であろう。加えて、本発明の実施形態は、どういった具体的なプログラミング言語を基準として説明されてもいない。理解されるであろうこととして、多様なプログラミング言語がここで説明した通りの本発明の実施形態の教示を実装するために使用されてよい。
ここまでの明細書において、本発明の実施形態を、具体的で例示的な実施形態を参照しながら説明した。以下の特許請求の範囲に示されている通りの本発明のより広範な思想及びスコープから逸脱することなく、それらに対し多様な修正をなし得ることが明らかであろう。従って、本明細書及び図面は、限定的な意味ではなくむしろ例示的な意味で受け取られるべきである。
本説明を通し、本発明の実施形態がフロー図を通じて呈示されている。理解されるであろうこととして、それらフロー図に記述されているトランザクションの順序及びトランザクションは、単に例示の目的を意図しており、本発明の限定を意図してはいない。当業者は、以下の特許請求の範囲に示されている通りの本発明のより広範な思想及びスコープから逸脱することなく、フロー図について派生を導くことができることを認識するであろう。

Claims (27)

  1. ネットワーク内の複数の他のネットワークデバイス(102〜107)へ通信可能に連結される第1のネットワークデバイス(101)における方法であって、前記ネットワークデバイスの各々はビット転送ルータ(BFR)であり、前記方法は、
    指定BFR(D−BFR)を決定するための選択プロセスに参加することと、
    前記第1のネットワークデバイスを前記D−BFR(101)として選択するという決定に応じて、
    共通的なツリータイプをサポートするBFRの範囲内で、前記ネットワーク内の他のBFR(102〜107)により広告される当該他のBFRによりサポートされる大BM長のうちの最小のBM長に基づいて、ビットマスク(BM)の選択BM長を決定すること(635,640)、前記BMの各ビットがビット転送出口ルータ(BFER)(105〜107)に対応することになること、及び、
    決定された前記選択BM長を前記他のBFRへ広告すること(645)、
    を含むD−BFR動作を実行することと、
    を含む方法。
  2. D−BFR動作を実行することは、
    前記ネットワーク内の他のBFRにより広告される当該他のBFRによりサポートされるツリータイプに基づいて、選択ツリータイプを決定すること(720,725,730)、及び、
    決定された前記選択ツリータイプを前記他のBFRへ広告すること(735)、
    をさらに含み、
    前記共通的なツリータイプとしての前記選択ツリータイプをサポートするBFRの範囲内で前記選択BM長が決定される、
    請求項1の方法。
  3. D−BFR動作を実行することは、
    1つ以上のBM位置(BMP)を割り当てること(810)、前記1つ以上のBMPの各々が異なるBFERへ割り当てられること、及び、
    割り当てられた前記1つ以上のBMPを前記他のBFRへ広告すること(820)、
    をさらに含む、請求項1の方法。
  4. 前記選択BM長を決定することは、
    前記他のBFRのうちの1つ以上からメッセージを受信すること(605)、各メッセージは当該メッセージを送信したBFRによりサポートされる前記最大BM長を含むこと、
    受信されるメッセージ内に含まれる全ての前記最大BM長のうちの前記最小のBM長を決定すること(620)、及び、
    前記最小のBM長が前回の選択BM長よりも短くないと判定することに応じて、前記選択BM長を決定された前記最小のBM長に等しくなるように設定すること(635)、
    を含む、請求項1の方法。
  5. 前記選択BM長を決定することは、
    前記他のBFRのうちの1つ以上からメッセージを受信すること(605)、各メッセージは当該メッセージを送信したBFRによりサポートされる前記最大BM長を含むこと、
    受信されるメッセージ内に含まれる全ての前記最大BM長のうちの前記最小のBM長を決定すること(620)、及び、
    前記最小のBM長が前回の選択BM長よりも短いと判定することに応じて、前記選択BM長を前記前回の選択BM長に等しくなるように設定すること(640)、
    を含む、請求項1の方法。
  6. 前記選択ツリータイプを決定することは、
    前記他のBFRのうちの1つ以上からメッセージを受信すること(705)、各メッセージは当該メッセージを送信したBFRによりサポートされる1つ以上のツリータイプの標識を含むこと、
    メッセージを送信した1つ以上のBFRによりサポートされるものとして示されたツリータイプを判定すること、及び、
    メッセージを送信した1つ以上のBFRによりサポートされるものとして示された判定された前記ツリータイプへと、前記選択ツリータイプを設定すること(720,725,735)、
    を含む、請求項2の方法。
  7. 1つ以上のBMPを割り当てることは、
    BFERから、BMPを当該BFERへ割り当てるための要求を示すメッセージを受信すること(505)、
    BMPを前記BFERへ割り当てること(810)、及び、
    前記BMPが割り当て済みであることを示すようにBMP情報を更新すること(815)により、前記BMPが他のBFERへ割り当てられないようにすること、
    を含む、請求項3の方法。
  8. 前記BFERからの前記メッセージは、前記BFERが選好する特定のBMPをさらに示す、請求項7の方法。
  9. 前記BFERからの前記メッセージは、前記BFERが選好する前記特定のBMP以外のBMPを受け入れる用意が前記BFERにあることをさらに示す、請求項8の方法。
  10. ネットワーク内の複数の他のネットワークデバイス(102〜107)へ通信可能に連結される第1のネットワークデバイス(101)であって、前記ネットワークデバイスの各々はビット転送ルータ(BFR)であり、前記第1のネットワークデバイスは、
    1つ以上のプロセッサのセットと、
    コードを収容する非一時的なマシン読取可能な記憶媒体と、
    を備え、
    前記コードは、前記1つ以上のプロセッサのセットにより実行された場合に、前記第1のネットワークデバイスに、
    指定BFR(D−BFR)を決定するための選択プロセスに参加させ、
    前記第1のネットワークデバイスを前記D−BFRとして選択するという決定に応じて、
    共通的なツリータイプをサポートするBFRの範囲内で、前記ネットワーク内の他のBFR(102〜107)により広告される当該他のBFRによりサポートされる大BM長のうちの最小のBM長に基づいて、ビットマスク(BM)の選択BM長を決定すること(635,640)、前記BMの各ビットがビット転送出口ルータ(BFER)(105〜107)に対応することになること、及び、
    決定された前記選択BM長を前記他のBFRへ広告すること(645)、
    を含むD−BFR動作を実行させる、
    第1のネットワークデバイス。
  11. D−BFR動作を実行することは、前記第1のネットワークデバイスが、
    前記ネットワーク内の他のBFRにより広告される当該他のBFRによりサポートされるツリータイプに基づいて、選択ツリータイプを決定すること(720,725,730)、及び、
    決定された前記選択ツリータイプを前記他のBFRへ広告すること(735)、
    をさらに含み、
    前記共通的なツリータイプとしての前記選択ツリータイプをサポートするBFRの範囲内で前記選択BM長が決定される、
    請求項10の第1のネットワークデバイス。
  12. D−BFR動作を実行することは、前記第1のネットワークデバイスが、
    1つ以上のBM位置(BMP)を各々異なるBFERへ割り当てること(810)、及び、
    割り当てられた前記1つ以上のBMPを前記他のBFRへ広告すること(820)、
    をさらに含む、請求項10の第1のネットワークデバイス。
  13. 前記選択BM長を決定することは、前記第1のネットワークデバイスが、
    各メッセージを送信したBFRによりサポートされる前記最大BM長を含む当該メッセージを、前記他のBFRのうちの1つ以上から受信すること(605)、
    受信されるメッセージ内に含まれる全ての前記最大BM長のうちの前記最小のBM長を決定すること(620)、及び、
    前記最小のBM長が前回の選択BM長よりも短くないと判定することに応じて、前記選択BM長を決定された前記最小のBM長に等しくなるように設定すること(635)、
    を含む、請求項10の第1のネットワークデバイス。
  14. 前記選択BM長を決定することは、前記第1のネットワークデバイスが、
    各メッセージを送信したBFRによりサポートされる前記最大BM長を含む当該メッセージを、前記他のBFRのうちの1つ以上から受信すること(605)、
    受信されるメッセージ内に含まれる全ての前記最大BM長のうちの前記最小のBM長を決定すること(620)、及び、
    前記最小のBM長が前回の選択BM長よりも短いと判定することに応じて、前記選択BM長を前記前回の選択BM長に等しくなるように設定すること(640)、
    を含む、請求項10の第1のネットワークデバイス。
  15. 前記選択ツリータイプを決定することは、前記第1のネットワークデバイスが、
    各メッセージを送信したBFRによりサポートされる1つ以上のツリータイプの標識を含む当該メッセージを、前記他のBFRのうちの1つ以上から受信すること(705)、
    メッセージを送信した1つ以上のBFRによりサポートされるものとして示されたツリータイプを判定すること、及び、
    メッセージを送信した1つ以上のBFRによりサポートされるものとして示された判定された前記ツリータイプへと、前記選択ツリータイプを設定すること(720,725,735)、
    を含む、請求項11の第1のネットワークデバイス。
  16. 1つ以上のBMPを割り当てることは、前記第1のネットワークデバイスが、
    BFERから、BMPを当該BFERへ割り当てるための要求を示すメッセージを受信すること(505)、
    BMPを前記BFERへ割り当てること(810)、及び、
    前記BMPが割り当て済みであることを示すようにBMP情報を更新すること(815)により、前記BMPが他のBFERへ割り当てられないようにすること、
    を含む、請求項12の第1のネットワークデバイス。
  17. 前記BFERからの前記メッセージは、前記BFERが選好する特定のBMPをさらに示す、請求項16の第1のネットワークデバイス。
  18. 前記BFERからの前記メッセージは、前記BFERが選好する前記BMP以外のBMPを受け入れる用意が前記BFERにあることをさらに示す、請求項17の第1のネットワークデバイス。
  19. 非一時的なコンピュータ読取可能な記憶媒体であって、当該記憶媒体に記憶されたコンピュータコードを有し、前記コンピュータコードは、ネットワークデバイスの各々がビット転送ルータ(BFR)であるものとして、ネットワーク内の複数の他のネットワークデバイス(102〜107)へ通信可能に連結される第1のネットワークデバイスのプロセッサにより実行された場合に、前記第1のネットワークデバイスに、
    指定BFR(D−BFR)を決定するための選択プロセスに参加する動作と、
    前記第1のネットワークデバイスを前記D−BFRとして選択するという決定に応じて、
    共通的なツリータイプをサポートするBFRの範囲内で、前記ネットワーク内の他のBFR(102〜107)により広告される当該他のBFRによりサポートされる大BM長のうちの最小のBM長に基づいて、ビットマスク(BM)の選択BM長を決定すること(635,640)、前記BMの各ビットがビット転送出口ルータ(BFER)(105〜107)に対応することになること、及び、
    決定された前記選択BM長を前記他のBFRへ広告すること(645)、
    を含むD−BFR動作を実行する動作と、
    を行わせる、非一時的なコンピュータ読取可能な記憶媒体。
  20. D−BFR動作を実行することは、
    前記ネットワーク内の他のBFRにより広告される当該他のBFRによりサポートされるツリータイプに基づいて、選択ツリータイプを決定すること(720,725,730)、及び、
    決定された前記選択ツリータイプを前記他のBFRへ広告すること(735)、
    をさらに含み、
    前記共通的なツリータイプとしての前記選択ツリータイプをサポートするBFRの範囲内で前記選択BM長が決定される、
    請求項19の非一時的なコンピュータ読取可能な記憶媒体。
  21. D−BFR動作を実行することは、
    1つ以上のBM位置(BMP)を各々異なるBFERへ割り当てること(810)、及び、
    割り当てられた前記1つ以上のBMPを前記他のBFRへ広告すること(820)、
    をさらに含む、請求項19の非一時的なコンピュータ読取可能な記憶媒体。
  22. 前記選択BM長を決定することは、
    各メッセージを送信したBFRによりサポートされる前記最大BM長を含む当該メッセージを、前記他のBFRのうちの1つ以上から受信すること(605)、
    受信されるメッセージ内に含まれる全ての前記最大BM長のうちの前記最小のBM長を決定すること(620)、及び、
    前記最小のBM長が前回の選択BM長よりも短くないと判定することに応じて、前記選択BM長を決定された前記最小のBM長に等しくなるように設定すること(635)、
    を含む、請求項19の非一時的なコンピュータ読取可能な記憶媒体。
  23. 前記選択BM長を決定することは、
    各メッセージを送信したBFRによりサポートされる前記最大BM長を含む当該メッセージを、前記他のBFRのうちの1つ以上から受信すること(605)、
    受信されるメッセージ内に含まれる全ての前記最大BM長のうちの前記最小のBM長を決定すること(620)、及び、
    前記最小のBM長が前回の選択BM長よりも短いと判定することに応じて、前記選択BM長を前記前回の選択BM長に等しくなるように設定すること(640)、
    を含む、請求項19の非一時的なコンピュータ読取可能な記憶媒体。
  24. 前記選択ツリータイプを決定することは、
    各メッセージを送信したBFRによりサポートされる1つ以上のツリータイプの標識を含む当該メッセージを、前記他のBFRのうちの1つ以上から受信すること(705)、
    メッセージを送信した1つ以上のBFRによりサポートされるものとして示されたツリータイプを判定すること、及び、
    メッセージを送信した1つ以上のBFRによりサポートされるものとして示された判定された前記ツリータイプへと、前記選択ツリータイプを設定すること(720,725,735)、
    を含む、請求項20の非一時的なコンピュータ読取可能な記憶媒体。
  25. 1つ以上のBMPを割り当てることは、
    BFERから、BMPを当該BFERへ割り当てるための要求を示すメッセージを受信すること(505)、
    BMPを前記BFERへ割り当てること(810)、及び、
    前記BMPが割り当て済みであることを示すようにBMP情報を更新すること(815)により、前記BMPが他のBFERへ割り当てられないようにすること、
    を含む、請求項21の非一時的なコンピュータ読取可能な記憶媒体。
  26. 前記BFERからの前記メッセージは、前記BFERが選好する特定のBMPをさらに示す、請求項25の非一時的なコンピュータ読取可能な記憶媒体。
  27. 前記BFERからの前記メッセージは、前記BFERが選好する前記特定のBMP以外のBMPを受け入れる用意が前記BFERにあることをさらに示す、請求項26の非一時的なコンピュータ読取可能な記憶媒体。
JP2017515193A 2014-09-19 2015-09-16 目的受信機を識別するパケットに依拠したマルチキャストアーキテクチャにおける分散的選択による、ツリー属性の自動化された判定及び受信機識別子の割り当て Active JP6479169B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201462053067P 2014-09-19 2014-09-19
US62/053,067 2014-09-19
US14/579,575 2014-12-22
US14/579,575 US9749220B2 (en) 2014-09-19 2014-12-22 Automated determination of tree attributes and assignment of receiver identifiers by distributed election in multicast architectures relying on packets identifying intended receivers
PCT/IB2015/057139 WO2016042505A2 (en) 2014-09-19 2015-09-16 Automated determination of tree attributes and assignment of receiver identifiers by distributed election in multicast architectures relying on packets identifying intended receivers

Publications (2)

Publication Number Publication Date
JP2017529009A JP2017529009A (ja) 2017-09-28
JP6479169B2 true JP6479169B2 (ja) 2019-03-06

Family

ID=55526839

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017515193A Active JP6479169B2 (ja) 2014-09-19 2015-09-16 目的受信機を識別するパケットに依拠したマルチキャストアーキテクチャにおける分散的選択による、ツリー属性の自動化された判定及び受信機識別子の割り当て

Country Status (6)

Country Link
US (2) US9749220B2 (ja)
EP (1) EP3195538B1 (ja)
JP (1) JP6479169B2 (ja)
CN (1) CN107078966B (ja)
PH (1) PH12017500411A1 (ja)
WO (1) WO2016042505A2 (ja)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10003494B2 (en) * 2013-09-17 2018-06-19 Cisco Technology, Inc. Per-prefix LFA FRR with bit indexed explicit replication
US10225090B2 (en) * 2013-09-17 2019-03-05 Cisco Technology, Inc. Bit indexed explicit replication using multiprotocol label switching
US10218524B2 (en) 2013-09-17 2019-02-26 Cisco Technology, Inc. Bit indexed explicit replication for layer 2 networking
US9806897B2 (en) 2013-09-17 2017-10-31 Cisco Technology, Inc. Bit indexed explicit replication forwarding optimization
US11451474B2 (en) 2013-09-17 2022-09-20 Cisco Technology, Inc. Equal cost multi-path with bit indexed explicit replication
US10461946B2 (en) 2013-09-17 2019-10-29 Cisco Technology, Inc. Overlay signaling for bit indexed explicit replication
US9832031B2 (en) * 2014-10-24 2017-11-28 Futurewei Technologies, Inc. Bit index explicit replication forwarding using replication cache
US9742575B2 (en) * 2014-11-04 2017-08-22 Telefonaktiebolaget L M Ericsson (Publ) Explicit list encoding of sparse multicast group membership information with Bit Index Explicit Replication (BIER)
US10153967B2 (en) 2014-11-06 2018-12-11 Juniper Networks, Inc. Deterministic and optimized bit index explicit replication (BIER) forwarding
US10033641B2 (en) * 2014-11-06 2018-07-24 Juniper Networks, Inc. Deterministic and optimized bit index explicit replication (BIER) forwarding
CN105871565B (zh) * 2015-01-20 2019-11-29 华为技术有限公司 用于组播转发的方法及装置
US9906378B2 (en) 2015-01-27 2018-02-27 Cisco Technology, Inc. Capability aware routing
US10341221B2 (en) 2015-02-26 2019-07-02 Cisco Technology, Inc. Traffic engineering for bit indexed explicit replication
CN106572023B (zh) * 2015-10-12 2020-08-11 中兴通讯股份有限公司 一种实现比特位索引显示复制的方法及比特位转发路由器
US10135756B2 (en) 2016-08-30 2018-11-20 Cisco Technology, Inc. Transparent and efficient multi-destination TCP communications based on bit indexed explicit replication
US10630743B2 (en) 2016-09-23 2020-04-21 Cisco Technology, Inc. Unicast media replication fabric using bit indexed explicit replication
CN107968750B (zh) * 2016-10-20 2021-06-15 中兴通讯股份有限公司 报文传输方法、装置及节点
US10637675B2 (en) 2016-11-09 2020-04-28 Cisco Technology, Inc. Area-specific broadcasting using bit indexed explicit replication
US10447496B2 (en) * 2017-03-30 2019-10-15 Cisco Technology, Inc. Multicast traffic steering using tree identity in bit indexed explicit replication (BIER)
US10164794B2 (en) 2017-04-28 2018-12-25 Cisco Technology, Inc. Bridging of non-capable subnetworks in bit indexed explicit replication
CN108989208B (zh) * 2017-05-31 2021-08-10 中兴通讯股份有限公司 一种标识分配方法和装置
CN109802914B (zh) * 2017-11-16 2022-02-18 中兴通讯股份有限公司 一种bsl的确定方法、bier-te控制器和计算机存储介质
CN110460522B (zh) 2018-05-08 2021-11-19 华为技术有限公司 组播数据传输方法、相关装置及***
WO2019214589A1 (zh) * 2018-05-08 2019-11-14 华为技术有限公司 组播数据传输方法、相关装置及***
US11082337B2 (en) 2019-02-15 2021-08-03 Juniper Networks, Inc. Support for multiple virtual networks over an underlay network topology
US20210367883A1 (en) * 2020-05-22 2021-11-25 Juniper Networks, Inc. Bitmask route target in targeted distribution of information using a routing protocol
EP3917093A1 (en) * 2020-05-30 2021-12-01 Huawei Technologies Co., Ltd. Bierv6 packet forwarding method and device

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU615739B2 (en) * 1989-04-28 1991-10-10 Digital Equipment Corporation Communication protocol for statistical data multiplexers arranged in a wide area network
CA2011399C (en) * 1989-06-22 1998-05-19 Lawrence C. Stewart Routing apparatus and method for high-speed mesh connected local area network
EP1416679A3 (en) * 1995-09-11 2004-06-02 Kabushiki Kaisha Toshiba Method and device for data communication
US6816966B1 (en) * 1997-06-30 2004-11-09 Sun Microsystems, Inc. Techniques for securing data flow in internet multicasting
US6266706B1 (en) * 1997-09-15 2001-07-24 Effnet Group Ab Fast routing lookup system using complete prefix tree, bit vector, and pointers in a routing table for determining where to route IP datagrams
US6091724A (en) * 1997-11-20 2000-07-18 International Business Machines Corporation Routing messages within a network using the data content of the message
WO1999049618A1 (fr) * 1998-03-23 1999-09-30 Hitachi, Ltd. Repeteur reseau et procede de recherche de destination de transfert suivante dans le reseau
CN1208929C (zh) * 2002-06-23 2005-06-29 华为技术有限公司 一种利用虚拟路由器冗余协议实现路由器接口备份的方法
US7260096B2 (en) * 2002-07-09 2007-08-21 International Business Machines Corporation Method and router for forwarding internet data packets
JP2003158548A (ja) * 2002-12-05 2003-05-30 Toshiba Corp パケット送信装置及びパケット送受信システム
US7551551B2 (en) * 2004-12-10 2009-06-23 Cisco Technology, Inc. Fast reroute (FRR) protection at the edge of a RFC 2547 network
CN100426787C (zh) * 2004-12-17 2008-10-15 中兴通讯股份有限公司 以太网交换机动态发现组播路由器的方法
US20070016637A1 (en) * 2005-07-18 2007-01-18 Brawn John M Bitmap network masks
CN101145924A (zh) * 2006-09-13 2008-03-19 华为技术有限公司 实现ssm模式组播的方法、设备及***
US8320374B2 (en) * 2006-12-28 2012-11-27 Alcatel Lucent Method and apparatus for improved multicast routing
CN101035009A (zh) * 2007-03-31 2007-09-12 华为技术有限公司 一种组播流量冗余保护的方法及设备
CN100542142C (zh) * 2007-04-04 2009-09-16 华为技术有限公司 转变三层网络设备接口状态的方法和装置
CN100574249C (zh) * 2007-04-28 2009-12-23 杭州华三通信技术有限公司 虚拟路由器冗余协议报文传输方法及装置
JP2010045525A (ja) * 2008-08-11 2010-02-25 Brother Ind Ltd 無線アドホックネットワークにおける自律的なグループ構築方法及びこの方法を用いたデータ配信方法とデータ収集方法
JP5256118B2 (ja) * 2009-05-15 2013-08-07 日本電信電話株式会社 情報配信システム及び情報配信方法
US9521079B2 (en) 2012-09-24 2016-12-13 Hewlett Packard Enterprise Development Lp Packet forwarding between packet forwarding elements in a network device
CN105210336B (zh) * 2013-05-17 2018-10-26 思科技术公司 用于ldp/sr互操作性的方法、设备和计算机可读介质
US9571897B2 (en) * 2013-09-17 2017-02-14 Cisco Technology, Inc. Bit indexed explicit replication for professional media networks
US11451474B2 (en) * 2013-09-17 2022-09-20 Cisco Technology, Inc. Equal cost multi-path with bit indexed explicit replication
US10461946B2 (en) * 2013-09-17 2019-10-29 Cisco Technology, Inc. Overlay signaling for bit indexed explicit replication
US10003494B2 (en) * 2013-09-17 2018-06-19 Cisco Technology, Inc. Per-prefix LFA FRR with bit indexed explicit replication
US10225090B2 (en) * 2013-09-17 2019-03-05 Cisco Technology, Inc. Bit indexed explicit replication using multiprotocol label switching
US9438432B2 (en) * 2013-09-17 2016-09-06 Cisco Technology, Inc. Bit indexed explicit replication packet encapsulation

Also Published As

Publication number Publication date
CN107078966A (zh) 2017-08-18
US20170324650A1 (en) 2017-11-09
US9749220B2 (en) 2017-08-29
EP3195538A2 (en) 2017-07-26
WO2016042505A3 (en) 2016-05-12
CN107078966B (zh) 2020-06-26
US10439928B2 (en) 2019-10-08
WO2016042505A2 (en) 2016-03-24
PH12017500411A1 (en) 2017-07-17
JP2017529009A (ja) 2017-09-28
US20160087890A1 (en) 2016-03-24
EP3195538B1 (en) 2018-08-29

Similar Documents

Publication Publication Date Title
JP6479169B2 (ja) 目的受信機を識別するパケットに依拠したマルチキャストアーキテクチャにおける分散的選択による、ツリー属性の自動化された判定及び受信機識別子の割り当て
EP3824602B1 (en) Multi-cloud connectivity using srv6 and bgp
CN108989212B (zh) 多个下一跳的路由协议信令及其关系
CN108989213B (zh) 使用虚拟节点之间的所选择的结构路径传输lsp设置
CN108989202B (zh) 用于虚拟节点的基于结构路径上下文的转发
US10257162B2 (en) Method and system for providing “anywhere access” for fixed broadband subscribers
US10924389B2 (en) Segment routing based on maximum segment identifier depth
US11218408B2 (en) Packet processing method, device, and system
US9979629B2 (en) Distribution of segment identifiers in network functions virtualization and software defined network environments
US10158566B2 (en) Shortest path bridge with MPLS labels
US20180109450A1 (en) Creating and maintaining segment routed traffic engineering policies via border gateway protocol
US10454814B2 (en) Techniques for preferred path local switching in EVPN-VPWS
EP3195537B1 (en) Forwarding table precedence in sdn
EP3479553B1 (en) Efficient nat in sdn network
US11362954B2 (en) Tunneling inter-domain stateless internet protocol multicast packets
WO2018042230A1 (en) Configurable selective packet-in mechanism for openflow switches
AU2017304281A1 (en) Extending an MPLS network using commodity network devices
US20230239274A1 (en) Managing exchanges between edge gateways in a cloud environment to support a private network connection
US20230239273A1 (en) Managing exchanges between edge gateways and hosts in a cloud environment to support a private network connection

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170501

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180305

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180424

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180703

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20181002

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20181102

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190108

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190205

R150 Certificate of patent or registration of utility model

Ref document number: 6479169

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250