JP2023549797A - Bierパケット転送方法、デバイス、及びシステム - Google Patents
Bierパケット転送方法、デバイス、及びシステム Download PDFInfo
- Publication number
- JP2023549797A JP2023549797A JP2023528300A JP2023528300A JP2023549797A JP 2023549797 A JP2023549797 A JP 2023549797A JP 2023528300 A JP2023528300 A JP 2023528300A JP 2023528300 A JP2023528300 A JP 2023528300A JP 2023549797 A JP2023549797 A JP 2023549797A
- Authority
- JP
- Japan
- Prior art keywords
- bier
- network device
- packet
- service identifier
- header
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 122
- 230000015654 memory Effects 0.000 claims description 69
- 238000012545 processing Methods 0.000 claims description 56
- 238000004590 computer program Methods 0.000 claims description 24
- 230000005540 biological transmission Effects 0.000 claims description 20
- 230000010076 replication Effects 0.000 claims description 13
- HRULVFRXEOZUMJ-UHFFFAOYSA-K potassium;disodium;2-(4-chloro-2-methylphenoxy)propanoate;methyl-dioxido-oxo-$l^{5}-arsane Chemical compound [Na+].[Na+].[K+].C[As]([O-])([O-])=O.[O-]C(=O)C(C)OC1=CC=C(Cl)C=C1C HRULVFRXEOZUMJ-UHFFFAOYSA-K 0.000 claims 4
- 230000006870 function Effects 0.000 description 23
- 238000012546 transfer Methods 0.000 description 23
- 238000010586 diagram Methods 0.000 description 22
- 238000013507 mapping Methods 0.000 description 22
- 230000008569 process Effects 0.000 description 21
- 238000005538 encapsulation Methods 0.000 description 20
- 238000005516 engineering process Methods 0.000 description 15
- 238000013461 design Methods 0.000 description 9
- 238000012423 maintenance Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- COCAUCFPFHUGAA-MGNBDDOMSA-N n-[3-[(1s,7s)-5-amino-4-thia-6-azabicyclo[5.1.0]oct-5-en-7-yl]-4-fluorophenyl]-5-chloropyridine-2-carboxamide Chemical compound C=1C=C(F)C([C@@]23N=C(SCC[C@@H]2C3)N)=CC=1NC(=O)C1=CC=C(Cl)C=N1 COCAUCFPFHUGAA-MGNBDDOMSA-N 0.000 description 3
- 238000011144 upstream manufacturing Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/741—Routing in networks with a plurality of addressing schemes, e.g. with both IPv4 and IPv6
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/12—Arrangements for remote connection or disconnection of substations or of equipment thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
- H04L12/4645—Details on frame tagging
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/04—Interdomain routing, e.g. hierarchical routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/16—Multipoint routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/20—Support for services
- H04L49/201—Multicast operation; Broadcast operation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本願は、BIERパケット転送方法、デバイス、及びシステムを提供する。方法は、第1ネットワークデバイスが第2ネットワークデバイスによって送信されたBIERパケットを受信することを含み、このとき、BIERパケットはIPv6ヘッダ、BIERヘッダ、及びマルチキャストを含み、IPv6ヘッダのあて先アドレス又はBIERヘッダの第1フィールドはサービス識別子を運び、サービス識別子は仮想プライベートネットワークVPNインスタンスを識別する。第1ネットワークデバイスは、サービス識別子及び第1対応に基づいてVRFテーブルを決定し、このとき、第1対応は、サービス識別子とVRFテーブルとの間の対応を含む。第1ネットワークデバイスは、VRFテーブルに基づいて、VRFテーブル内の第1カスタマエッジCEデバイスへマルチキャストパケットを送信する。本願で提供される技術的解決法に従って、実施は、出口エッジデバイスがVPNインスタンスを識別する場合に比較的に簡単であることができる。
Description
本願は、ネットワーク通信分野に、より具体的には、パケット転送方法、デバイス、及びシステムに関係がある。
インターネットプロトコル(internet protocol,IP)マルチキャスト技術は、ネットワーク帯域幅が効率的に削減され得かつネットワーク負荷が軽減され得るように、IPネットワーク内で効率的なポイント・ツー・マルチポイントデータ伝送を実装する。従って、マルチキャストパケット転送パスを構成するための新しい技術が業界内で提案されており、ビットインデックス明示的レプリケーション(bit index explicit replication,BIER)技術と呼ばれている。この技術は、マルチキャスト分配ツリーを構成する必要がない新しいマルチキャスト技術アーキテクチャを提案している。
BIERパケットを受信した後、BIERドメイン内の出口デバイスは、マルチキャストパケットが属する仮想プライベートネットワーク(virtual private network,VPN)インスタンスを決定する必要があり、VPNインスタンスに基づいて、VPNインスタンスに対応する仮想ルート転送(virtual route forwarding,VRF)テーブルを決定し、元のマルチキャストパケット内の情報(例えば、元のマルチキャストパケット内のあて先アドレス)及びVRFテーブルに基づいて、VRFテーブル内の次ホップへマルチキャストパケットを転送する。
関連する技術的解決法では、サービス識別子(VPNインスタンスを識別する)がMPLSラベルで運ばれる。BIERパケットは1つのMPLSラベルレイヤを含むので、ネットワークワイドのMPLS削除は実施不可能であり、これはデバイスにとってより複雑である。
他の関連する技術的解決法では、異なるVPNインスタンスは、外部インターネットプロトコルバージョン6(internet protocol version 6,IPv6)ヘッダにおいて異なるソースアドレス(source address,SA)を使用することによって識別される。VPNインスタンスがソースIPv6アドレスを使用することによって識別される場合に、VPNインスタンスを識別するために必要なソースIPv6アドレスは管理され割り当てられる必要がある。
本願は、出口エッジデバイスがVPNインスタンスを識別する場合に実施が比較的に簡単であることができるように、BIERパケット転送方法、デバイス、及びシステムを提供する。
第1の態様に従って、パケット転送方法が提供される。方法は、第1ネットワークデバイスが第2ネットワークデバイスによって送信されたBIERパケットを受信することを含み、このとき、BIERパケットはインターネットプロトコルバージョン6IPv6ヘッダ、ビットインデックス明示的レプリケーションBIERヘッダ、及びマルチキャストパケットを含み、IPv6ヘッダのあて先アドレス又はBIERヘッダの第1フィールドはサービス識別子を運び、サービス識別子は仮想プライベートネットワークVPNインスタンスを識別する。第1ネットワークデバイスは、サービス識別子及び第1対応に基づいて仮想ルート転送VRFテーブルを決定し、このとき、第1対応は、サービス識別子とVRFテーブルとの間の対応を含む。第1ネットワークデバイスは、VRFテーブルに基づいて、VRFテーブル内の第1カスタマエッジCEデバイスへマルチキャストパケットを送信する。
上記の技術的解決法では、BIERパケットのIPv6ヘッダのあて先アドレス又はBIERヘッダの第1フィールドはサービス識別子を運び、それにより、VPNインスタンスを識別するために必要なソースIPv6アドレスは、管理され割り当てられる必要がなくなり、追加のMPLSラベルレイヤが加えられる必要もない。従って、実施は相対的に簡単であり、デバイス実施の複雑さは軽減される。
可能な実施において、サービス識別子は、IPv6ヘッダのあて先アドレスのビットの一部で運ばれ、あて先アドレスは、BIERパケットに対してBIER転送を実行することを指示する。
他の可能な実施においては、あて先アドレスのビットの一部は、あて先アドレスの引数部である。
他の可能な実施においては、BIERヘッダの第1フィールドは、次の、差別化されたサービスコードポイントDSCPフィールド、ビット転送入口ルータ識別子BFIR-idフィールド、及びプロトコルprotoフィールド、のうちのいずれか1つのフィールド又はそれらの組み合わせである。
他の可能な実施においては、方法は、第1ネットワークデバイスが制御パケットを受信することを更に含み、制御パケットは、サービス識別子とVRFテーブルとの間の対応を含む。第1ネットワークデバイスは、サービス識別子とVRFテーブルとの間の対応を記憶する。
他の可能な実施においては、第1ネットワークデバイスは、IPv6ヘッダのソースアドレス、サービス識別子、及び第1対応に基づいて、VRFテーブルを決定する。
第2の態様に従って、BIER転送方法が提供される。方法は、第2ネットワークデバイスがマルチキャストパケットを取得することを含む。第2ネットワークデバイスは、BIERパケットを取得するよう、マルチキャストパケットが属する仮想プライベートネットワークVPNインスタンスに基づいてマルチキャストパケットをカプセル化し、このとき、BIERパケットは、インターネットプロトコルバージョン6IPv6ヘッダ、ビットインデックス明示的レプリケーションBIERヘッダ、及びマルチキャストパケットを含み、IPv6ヘッダのあて先アドレス又はBIERヘッダの第1フィールドはサービス識別子を運び、サービス識別子はVPNインスタンスを識別する。第2ネットワークデバイスは、BIERパケットを第1ネットワークデバイスへ送信する。
他の可能な実施においては、サービス識別子は、IPv6ヘッダのあて先アドレスのビットの一部で運ばれ、あて先アドレスは、BIERパケットに対してBIER転送を実行することを第1ネットワークデバイスに指示する。
他の可能な実施においては、あて先アドレスのビットの一部は、あて先アドレスの引数部である。
他の可能な実施においては、BIERヘッダの第1フィールドは、次の、差別化されたサービスコードポイントDSCPフィールド、ビット転送入口ルータ識別子BFIR-idフィールド、及びプロトコルprotoフィールド、のうちのいずれか1つのフィールド又はそれらの組み合わせである。
他の可能な実施においては、方法は、第2ネットワークデバイスがサービス識別子をVPNインスタンスに割り当てることを更に含む。第2ネットワークデバイスは第1対応を確立し、このとき、第1対応は、サービス識別子とVPNに対応するVRFテーブルとの間の対応を含む。
他の可能な実施においては、方法は、第2ネットワークデバイスが制御パケットを第1ネットワークデバイスへ送信することを更に含み、このとき、制御パケットは、サービス識別子とVRFテーブルとの間の対応を含む。
他の可能な実施においては、制御パケットは、ボーダーゲートウェイプロトコルBGPパケットである。
第2の態様及び第2の態様の可能な実施のうちのいずれか1つの有利な効果は、第1の態様及び第1の態様の可能な実施のうちのいずれか1つの有利な効果に対応する。詳細は、ここで再び記載されない。
第3の態様に従って、受信モジュール、処理モジュール、及び送信モジュールを含む第1ネットワークデバイスが提供される。
受信モジュールは、第2ネットワークデバイスによって送信されたBIERパケットを受信するよう構成され、このとき、BIERパケットは、インターネットプロトコルバージョン6IPv6ヘッダ、ビットインデックス明示的レプリケーションBIERヘッダ、及びマルチキャストパケットを含み、IPv6ヘッダのあて先アドレス又はBIERヘッダの第1フィールドは、サービス識別子を運び、サービス識別子は、仮想プライベートネットワークVPNインスタンスを識別する。
処理モジュールは、サービス識別子及び第1対応に基づいて仮想ルート転送VRFテーブルを決定するよう構成され、このとき、第1対応は、サービス識別子とVRFテーブルとの間の対応を含む。
送信モジュールは、VRFテーブルに基づいて、VRFテーブル内の第1カスタマエッジCEデバイスへマルチキャストパケットを送信するよう構成される。
可能な実施において、サービス識別子は、IPv6ヘッダのあて先アドレスのビットの一部で運ばれ、あて先アドレスは、BIERパケットに対してBIER転送を実行することを指示する。
他の可能な実施においては、あて先アドレスのビットの一部は、あて先アドレスの引数部である。
他の可能な実施においては、BIERヘッダの第1フィールドは、次の、差別化されたサービスコードポイントDSCPフィールド、ビット転送入口ルータ識別子BFIR-idフィールド、及びプロトコルprotoフィールド、のうちのいずれか1つのフィールド又はそれらの組み合わせである。
他の可能な実施においては、受信モジュールは、制御パケットを受信するよう更に構成され、このとき、制御パケットは、サービス識別子とVRFテーブルとの間の対応を含み、処理モジュールは、サービス識別子とVRFテーブルとの間の対応を記憶するよう更に構成される。
他の可能な実施においては、第1対応は、ソースアドレスを更に含み、処理モジュールは、IPv6ヘッダのソースアドレス、サービス識別子、及び第1対応に基づいて、VRFテーブルを決定するよう特に構成される。
第4の態様に従って、受信モジュール、処理モジュール、及び送信モジュールを含む第2ネットワークデバイスが提供される。
受信モジュールは、マルチキャストパケットを取得するよう構成される。
処理モジュールは、BIERパケットを取得するように、マルチキャストパケットが属する仮想プライベートネットワークVPNインスタンスに基づいてマルチキャストパケットをカプセル化するよう構成され、このとき、BIERパケットは、インターネットプロトコルバージョン6IPv6ヘッダ、ビットインデックス明示的レプリケーションBIERヘッダ、及びマルチキャストパケットを含み、IPv6ヘッダのあて先アドレス又はBIERヘッダの第1フィールドは、サービス識別子を運び、サービス識別子は、VPNインスタンスを識別する。
送信モジュールは、BIERパケットを第1ネットワークデバイスへ送信するよう構成される。
可能な実施において、サービス識別子は、IPv6ヘッダのあて先アドレスのビットの一部で運ばれ、あて先アドレスは、BIERパケットに対してBIER転送を実行することを第1ネットワークデバイスに指示する。
他の可能な実施においては、あて先アドレスのビットの一部は、あて先アドレスの引数部である。
他の可能な実施においては、BIERヘッダの第1フィールドは、次の、差別化されたサービスコードポイントDSCPフィールド、ビット転送入口ルータ識別子BFIR-idフィールド、及びプロトコルprotoフィールド、のうちのいずれか1つのフィールド又はそれらの組み合わせである。
他の可能な実施においては、処理モジュールは、サービス識別子をVPNインスタンスに割り当て、かつ、第1対応を確立するよう更に構成され、このとき、第1対応は、サービス識別子とVPNに対応するVRFテーブルとの間の対応を含む。
他の可能な実施においては、送信モジュールは、制御パケットを第1ネットワークデバイスへ送信するよう更に構成され、このとき、制御パケットは、サービス識別子とVRFテーブルとの間の対応を含む。
他の可能な実施においては、制御パケットはボーダーゲートウェイプロトコルBGPパケットである。
第5の態様に従って、第1ネットワークデバイスが提供される。第1ネットワークデバイスは、上記の方法における第1ネットワークデバイスの動作を実装する機能を備えている。機能は、ハードウェアに基づいて実施されてよく、あるいは、ハードウェアが対応するソフトウェアを実行することに基づいて実施されてもよい。ハードウェア又はソフトウェアは、上記の機能に対応する1つ以上のモジュールを含む。
可能な設計では、第1ネットワークデバイスの構造は、プロセッサ及びインターフェースを含む。プロセッサは、第1ネットワークデバイスが上記の方法における対応する機能を実行するのを助けるよう構成される。インターフェースは、第1ネットワークデバイスが第2ネットワークデバイスによって送信されたBIERパケットを受信することを助けるよう構成されるか、あるいは、第1ネットワークデバイスがVRFテーブルに基づいてVRFテーブル内の第1カスタマエッジCEデバイスへマルチキャストパケットを送信するのを助けるよう構成される。
第1ネットワークデバイスは、メモリを更に含んでもよい。メモリはプロセッサへ結合され、第1ネットワークデバイスにとって必要であるプログラム命令及びデータを記憶してよい。
他の可能な設計では、第1ネットワークデバイスは、プロセッサ、送信器、受信器、ランダムアクセスメモリ、リードオンリーメモリ、及びバスを含む。プロセッサは、送信器、受信器、ランダムアクセスメモリ、及びリードオンリーメモリへバスを通じて別々に結合されている。第1ネットワークデバイスが稼働する必要があるとき、基本入力/出力システム又はリードオンリーメモリ内に形成された埋め込みシステムにおけるブートローダが、第1ネットワークデバイスを通常動作状態に入らせるように、システムを起動させるために使用される。通常動作状態に入った後、第1ネットワークデバイスは、ランダムアクセスメモリ内のアプリケーション及びオペレーティングシステムを実行し、それにより、プロセッサは、第1の態様又は第1の態様の可能な実施のうちのいずれか1つに従う方法を実行する。
第6の態様に従って、第1ネットワークデバイスが提供される。第1ネットワークデバイスは、メイン制御ボード及びインターフェースボードを含み、スイッチングボードを更に含んでもよい。第1ネットワークデバイスは、第1の態様又は第1の態様の可能な実施のうちのいずれか1つに従う方法を実行するよう構成される。具体的に、第1ネットワークデバイスは、第1の態様又は第1の態様の可能な実施のうちのいずれか1つに従う方法を実行するよう構成されたモジュールを含む。
第7の態様に従って、第1ネットワークデバイスが提供される。第1ネットワークデバイスは、制御モジュール及び第1転送サブデバイスを含む。第1転送サブデバイスはインターフェースボードを含み、スイッチングボードを更に含んでもよい。第1転送サブデバイスは、第6の態様におけるインターフェースボードの機能を実行するよう構成され、第6の態様におけるスイッチングボードの機能を更に実行してもよい。制御モジュールは、受信器、プロセッサ、送信器、ランダムアクセスメモリ、リードオンリーメモリ、及びバスを含む。プロセッサは、受信器、送信器、ランダムアクセスメモリ、及びリードオンリーメモリへバスを通じて別々に結合されている。制御モジュールが稼働する必要があるとき、基本入力/出力システム又はリードオンリーメモリ内に形成された埋め込みシステムにおけるブートローダが、制御モジュールを通常動作状態に入らせるように、システムを起動させるために使用される。通常動作状態に入った後、制御モジュールは、ランダムアクセスメモリ内のアプリケーション及びオペレーティングシステムを実行し、それにより、プロセッサは、第6の態様におけるメイン制御ボードの機能を実行する。
第1ネットワークデバイスは、実際の応用中にインターフェース、プロセッサ、又はメモリをいくつでも含んでよい、ことが理解され得る。
第8の態様に従って、第2ネットワークデバイスが提供される。コントローラは、上記の方法における第2ネットワークデバイスの動作を実装する機能を備えている。機能は、ハードウェアに基づいて実施されてよく、あるいは、ハードウェアが対応するソフトウェアを実行することに基づいて実施されてもよい。ハードウェア又はソフトウェアは、上記の機能に対応する1つ以上のモジュールを含む。
可能な設計では、第2ネットワークデバイスの構造は、プロセッサ及びインターフェースを含む。プロセッサは、第2ネットワークデバイスが上記の方法における対応する機能を実行するのを助けるよう構成される。インターフェースは、第3ネットワークデバイスがマルチキャストパケットを取得することを助けるよう構成されるか、あるいは、第2ネットワークデバイスがBIERパケットを第1ネットワークデバイスへ送信するのを助けるよう構成される。
第2ネットワークデバイスは、メモリを更に含んでもよい。メモリはプロセッサへ結合され、コントローラにとって必要であるプログラム命令及びデータを記憶してよい。
他の可能な設計では、第2ネットワークデバイスは、プロセッサ、送信器、受信器、ランダムアクセスメモリ、リードオンリーメモリ、及びバスを含む。プロセッサは、送信器、受信器、ランダムアクセスメモリ、及びリードオンリーメモリへバスを通じて別々に結合されている。第2ネットワークデバイスが稼働する必要があるとき、基本入力/出力システム又はリードオンリーメモリ内に形成された埋め込みシステムにおけるブートローダが、第2ネットワークデバイスを通常動作状態に入らせるように、システムを起動させるために使用される。通常動作状態に入った後、第2ネットワークデバイスは、ランダムアクセスメモリ内のアプリケーション及びオペレーティングシステムを実行し、それにより、プロセッサは、第2の態様又は第2の態様の可能な実施のうちのいずれか1つに従う方法を実行する。
第9の態様に従って、第2ネットワークデバイスが提供される。第2ネットワークデバイスは、メイン制御ボード及びインターフェースボードを含み、スイッチングボードを更に含んでもよい。第2ネットワークデバイスは、第2の態様又は第2の態様の可能な実施のうちのいずれか1つに従う方法を実行するよう構成される。具体的に、第2ネットワークデバイスは、第2の態様又は第2の態様の可能な実施のうちのいずれか1つに従う方法を実行するよう構成されたモジュールを含む。
第10の態様に従って、第2ネットワークデバイスが提供される。第2ネットワークデバイスは、制御モジュール及び第1転送サブデバイスを含む。第1転送サブデバイスはインターフェースボードを含み、スイッチングボードを更に含んでもよい。第1転送サブデバイスは、第9の態様におけるインターフェースボードの機能を実行するよう構成され、第9の態様におけるスイッチングボードの機能を更に実行してもよい。制御モジュールは、受信器、プロセッサ、送信器、ランダムアクセスメモリ、リードオンリーメモリ、及びバスを含む。プロセッサは、受信器、送信器、ランダムアクセスメモリ、及びリードオンリーメモリへバスを通じて別々に結合されている。制御モジュールが稼働する必要があるとき、基本入力/出力システム又はリードオンリーメモリ内に形成された埋め込みシステムにおけるブートローダが、制御モジュールを通常動作状態に入らせるように、システムを起動させるために使用される。通常動作状態に入った後、制御モジュールは、ランダムアクセスメモリ内のアプリケーション及びオペレーティングシステムを実行し、それにより、プロセッサは、第9の態様におけるメイン制御ボードの機能を実行する。
第2ネットワークデバイスは、実際の応用中にインターフェース、プロセッサ、又はメモリをいくつでも含んでよい、ことが理解され得る。
第11の態様に従って、コンピュータプログラム製品が提供される。コンピュータプログラム製品はコンピュータプログラムコードを含む。コンピュータプログラムコードがコンピュータで実行されるとき、コンピュータは、第1の態様又は第1の態様の可能な実施のうちのいずれか1つに従う方法を実行することができる。
第12の態様に従って、コンピュータプログラム製品が提供される。コンピュータプログラム製品はコンピュータプログラムコードを含む。コンピュータプログラムコードがコンピュータで実行されるとき、コンピュータは、第2の態様又は第2の態様の可能な実施のうちのいずれか1つに従う方法を実行することができる。
第13の態様に従って、コンピュータ可読媒体が提供される。コンピュータ可読媒体はプログラムコードを記憶している。コンピュータプログラムコードがコンピュータで実行されると、コンピュータは、第1の態様又は第1の態様の可能な実施のうちのいずれか1つに従う方法を実行することができる。コンピュータ可読ストレージは、次の、リードオンリーメモリ(read-only memory,ROM)、プログラム可能ROM(programmable ROM,PROM)、消去可能なPROM(erasable PROM,EPROM)、フラッシュメモリ、電気的EPROM(electrically EPROM,EEPROM)、及びハードドライブ(hard drive)、のうちの1つ以上を含むが、それらに限られない。
第14の態様に従って、コンピュータ可読媒体が提供される。コンピュータ可読媒体はプログラムコードを記憶している。コンピュータプログラムコードがコンピュータで実行されると、コンピュータは、第2の態様又は第2の態様の可能な実施のうちのいずれか1つに従う方法を実行することができる。コンピュータ可読ストレージは、次の、リードオンリーメモリ(read-only memory,ROM)、プログラム可能ROM(programmable ROM,PROM)、消去可能なPROM(erasable PROM,EPROM)、フラッシュメモリ、電気的EPROM(electrically EPROM,EEPROM)、及びハードドライブ(hard drive)、のうちの1つ以上を含むが、それらに限られない。
第15の態様に従って、チップが提供される。チップはプロセッサ及びデータインターフェースを含み、プロセッサは、データインターフェースを通じて、メモリに記憶されている命令を読み出して、第1の態様又は第1の態様の可能な実施のうちのいずれか1つに従う方法を実行する。具体的な実施プロセスで、チップは、中央演算処理装置(central processing unit,CPU)、マイクロコントローラユニット(micro controller unit,MCU)、マイクロプロセッシングユニット(micro processing unit,MIPU)、デジタルシグナルプロセッサ(digital signal processor,DSP)、システム・オン・チップ(system-on-a-chip,SoC)、特定用途向け集積回路(application-specific integrated circuit,ASIC)、フィールドプログラマブルゲートアレイ(field programmable gate array,FPGA)、又はプログラム可能なロジックデバイス(programmable logic device,PLD)の形で実装されてよい。
第16の態様に従って、チップが提供される。チップはプロセッサ及びデータインターフェースを含み、プロセッサは、データインターフェースを通じて、メモリに記憶されている命令を読み出して、第2の態様又は第2の態様の可能な実施のうちのいずれか1つに従う方法を実行する。具体的な実施プロセスで、チップは、中央演算処理装置(central processing unit,CPU)、マイクロコントローラユニット(micro controller unit,MCU)、マイクロプロセッシングユニット(micro processing unit,MIPU)、デジタルシグナルプロセッサ(digital signal processor,DSP)、システム・オン・チップ(system-on-a-chip,SoC)、特定用途向け集積回路(application-specific integrated circuit,ASIC)、フィールドプログラマブルゲートアレイ(field programmable gate array,FPGA)、又はプログラム可能なロジックデバイス(programmable logic device,PLD)の形で実装されてよい。
第17の態様に従って、システムが提供される。システムは、第1ネットワークデバイス及び第2ネットワークデバイスを含む。
以下は、添付の図面を参照して本願の技術的解決法について記載する。
全ての態様、実施形態、又は特徴は、複数のデバイス、コンポーネント、モジュールなどを含むシステムに基づいて本願で提示される。各システムは他のデバイス、コンポーネント、モジュールなどを含んでもよく、かつ/あるいは、添付の図面を参照して議論されている全てのデバイス、コンポーネント、モジュールなどを含まなくてもよいことが認識され理解されるべきである。更には、それらの解決法の組み合わせが更に使用されてもよい。
更に、本願の実施形態において、「例えば」及び「のような」といった用語は、例、実例、又は記載を与えることを表す。本願で“例”として記載されている如何なる実施形態又は設計スキームも、他の実施形態又は設計スキームよりも好ましいか又はより多くの利点を有するものとして説明されるべきではない。具体的に、「例」という用語は、具体的な様態で概念を提示する。
本願の実施形態で、「対応する(corresponding、relevant)」及び「対応する(corresponding)」は時々置き換えられることがある。用語によって表現される手段は、違いが強調されない場合に一貫している、ことに留意されたい。
本願の実施形態で記載されているネットワークアーキテクチャ及びサービスシナリオは、本願の実施形態における技術的解決法をより明りょうに記載するよう意図されるが、本願の実施形態で提供される技術的解決法に対する制限を構成するものではない。当業者は、ネットワークアーキテクチャが進化し、新しいサービスシナリオが出現するにつれて、本願の実施形態で提供される技術的解決法が同様の技術的課題にも適用できることを知るであろう。
本明細書中で記載される「実施形態」、「いくつかの実施形態」などへの言及は、本願の1つ以上の実施形態が、実施形態を参照して記載される具体的な特徴、構造、または特性を含むことを示している。従って、本明細書中の様々な箇所に現れる「実施形態において」、「いくつかの実施形態において」、「いくつかの他の実施形態において」、及び「他の実施形態において」などの記述は、必ずしも同じ実施形態に言及しているわけではない。代わりに、記述は、別なふうに他の様態で特に強調されない限りは、「実施形態の1つ以上であるが全てではない」の意である。「含む」、「有する」という用語、及びそれらの変形は全て、別なふうに他の様態で特に強調されない限りは、「含むが限られない」の意である。
本願において、「少なくとも1つ」は1つ以上を意味し、「複数の」は2つ以上を意味する。更に、「及び/又は」は、関連するオブジェクト間の関連付け関係を示し、3つの関係が存在する可能性があることを表す。例えば、A及び/又はBIERパケット転送方法の略フローチャートは、次の3つの場合:Aのみ存在、AとBの両方が存在、及びBのみ存在、を表すことができ、このとき、A及びBは単数であっても複数であってもよい。文字「/」は、一般に、関連するオブジェクト間の“論理和”関係を示し。更に、「次のアイテム(片)の少なくとも1つ」又はその類似の表現は、単数のアイテム(片)又は複数のアイテム(片)の任意の組み合わせを含む、これらのアイテムの任意の組み合わせを意味する。例えば、a、b、又はcのうちの少なくとも1つは、a、b、c、aとb、aとc、bとc、又はaとbとcを示すことができ、a、b及びcは単数であっても複数であってもよい。
マルチキャスト(multicast)は、1つのマルチキャストアドレスを使用することによってデータが伝送制御プロトコル(transmission control protocol,TCP)/インターネットプロトコル(internet protocol,IP)ネットワーク内の複数の受信器へ同時に効率よく送信されるデータ伝送モードである。マルチキャストソースは、ネットワーク内のリンクを通じてマルチキャストグループ内のマルチキャストグループメンバーへマルチキャストトラフィックを送信し、マルチキャストグループ内の各マルチキャストグループメンバーはマルチキャストトラフィックを受信することができる。マルチキャスト伝送モードは、マルチキャストソースとマルチキャストグループメンバーとの間のポイント・ツー・マルチポイントのデータ接続を実装する。マルチキャストトラフィックは、各ネットワークリンク上で一度だけ送信される必要があり、マルチキャスト受信は、リンク上にブランチが存在する場合にのみ実行される。従って、マルチキャスト伝送モードは、データ伝送効率を向上させ、バックボーンネットワークでの輻輳の可能性を低減する。
インターネットプロトコル(internet protocol,IP)マルチキャスト技術は、IPネットワークでの効率的なポイント・ツー・マルチポイントデータ伝送を実装し、それにより、ネットワーク帯域幅は有効に低減され得、ネットワーク負荷は削減され得る。従って、IPマルチキャスト技術は、実時間データ伝送、マルチメディア会議、データコピー、インターネットプロトコルテレビジョン(internet protocol television,IPTV)、ゲーム、及びシミュレーションなどの様々な側面で広く使用される。マルチキャスト技術では、マルチキャストプロトコルを使用することによって制御プレーン上にマルチキャストツリーが構成され、次いで、ネットワークプレーン上のロジックが、マルチキャストポイント・ツー・マルチポイントデータ転送を実施するように、マルチキャストツリーを使用することによってツリー上であるよう構成される。コアとして分配ツリーの構成を使用する各中間デバイスは、複雑なマルチキャスト転送情報ステータスを保つ必要がある。ネットワーク規模が広がり、マルチキャストパケットのトラフィックが増大するにつれて、このマルチキャスト技術は、ますます高いコスト並びに運用及び保守の課題に直面している。
従って、マルチキャストパケット転送パスを構成するための新しい技術が業界で提案されており、ビットインデックス明示的レプリケーション(bit index explicit replication,BIER)技術と呼ばれている。この技術は、マルチキャスト分配ツリーを構成する必要がないマルチキャスト技術アーキテクチャを提案している。図1に示されるように、BIER技術をサポートするルータは、ビット転送ルータ(Bit forwarding router,BFR)と呼ばれる。ユーザマルチキャストパケットに対してBIERカプセル化を実行するBFRは、ビット転送入口ルータ(bit forwarding ingress router,BFIR)と呼ばれる。脱カプセル化によりBIERパケットからユーザマルチキャストパケットを取得するBFRは、ビット転送出口ルータ(bit forwarding egress router,BFER)と呼ばれる。1つ以上のBFIR、1つ以上のBFR、及び1つ以上のBFERによって形成されたマルチキャスト転送ドメインは、BIERドメイン(BIER domain)と呼ばれる。BFIRは、BIERドメインの入口に位置し、BIERパケットを転送する入口ノードとしてBIERパケットをカプセル化することに関与する。BFRは、BIERドメインの中間に位置し、BIERパケットを転送する中間ノードとしてBIERパケットを転送することに関与する。BFERは、BIERドメインの出口に位置し、BIERパケットを転送する出口ノードとしてBIERパケットを脱カプセル化することに関与する。
BIERドメイン内のBFIR及びBFERは、BIERドメイン内のエッジBFRとも呼ばれ得ることが理解されるべきである。
理解を容易にするために、以下は、図2から図5を参照して、関連するBIER技術について詳細に記載する。
BIERドメインでは、BIERサブドメイン(sub-domain,SD)内の大域的に一意のビットポジション(bit position)識別子がエッジBFRのために設定され得る。一例において、値は、エッジBFRごとに、BFR識別子(BFR identifier,BFR ID)として設定される。例えば、BFR IDは、1から256までの範囲の値であってよい。BIERドメイン内の全てのBFR IDはビット列(bit string)を形成する。
本願のこの実施形態で、元のマルチキャストパケットがBIERドメイン内で伝送される場合に、特定のBIERヘッダが更にカプセル化される必要がある。BIERヘッダでは、元のマルチキャストパケットの全てのあて先デバイスが、ビット列を使用することによってマークされる。BIERドメイン内のBFRは、元のマルチキャストパケットが全てのあて先アドレスへ送信され得ることを確かにするために、ビットインデックス転送テーブル(bit index forwarding table,BIFT)及びBIERヘッダで運ばれたビット列に基づいて転送を行うことができる。
BIERヘッダに続く元のマルチキャストパケットは、インターネットプロトコルバージョン6(internet protocol version 6,IPv6)マルチキャストパケットであってよく、あるいは、インターネットプロトコルバージョン4(internet protocol version 4,IPv4)マルチキャストパケットであってよいことが理解されるべきである。これは、本願で特に制限されない。
様々なタイプのBIERカプセル化が存在してよい。これは、本願で特に制限されない。一例において、BIERパケットは、マルチプロコトルラベルスイッチング(multiprotocol label switching,MPLS)によるカプセル化されてよく、このようなカプセル化は、BIER-MPLSカプセル化と呼ばれ得る。他の例においては、BIERパケットは、インターネットプロトコルバージョン6(internet protocol version 6,IPv6)に基づいてカプセル化されてよく、このようなカプセル化は、BIERv6カプセル化と呼ばれ得る。
以下は、図2を参照して、関連するBIERv6カプセル化技術について詳細に記載する。
例えば、BIERv6カプセル化におけるパケットフォーマットは、IPv6ヘッダ+BIERヘッダ+元のマルチキャストパケットである。BIERヘッダは、IPv6拡張ヘッダに含まれてよく、元のマルチキャストパケットは、外部IPv6ヘッダのペイロード(payload)として使用される。
このカプセル化では、IPv6ヘッダと、BIERヘッダを含むIPv6拡張ヘッダとが、内部の元のマルチキャストパケットの外部パケットヘッダを一緒に形成し、外部パケットヘッダは、本願の実施形態でBIERv6ヘッダとも呼ばれ得る。
BIERヘッダを含むIPv6拡張ヘッダは、本願の実施形態で特に制限されない。例えば、IPv6拡張ヘッダは、あて先オプションヘッダ(destination options header,DOH)であってよい。他の例として、IPv6拡張ヘッダは、ルーティングヘッダ(routing header,RH)であってもよい。
図2は、可能なBIERv6カプセル化の略ブロック図である。図5に示されるように、BIERヘッダは、IPv6拡張ヘッダに位置してよく、例えば、DOHに位置してよい。
DOH内のオプションは、タイプ-長さ-値(type-length-value,TLV)フォーマットであることが理解されるべきである。BIERヘッダは、DOH内のオプションTLVにおいてオプションデータとして使用される。オプションTLVにおけるオプションタイプは、オプションTLVのフォーマットを識別する。オプションTLVにおけるオプション長さは、オプションTLVの長さを識別する。
BIERv6カプセル化において、DOH内のBIERヘッダのフォーマットは、BIERヘッダがビット列(bit string)フィールドを含むという条件で、本願のこの実施形態で特に制限されない。以下は、夫々図3及び図4を参照して、2つの可能なBIERヘッダフォーマットについて詳細に記載する。
図3は、可能なBIERヘッダフォーマットの略ブロック図である。図3に示されるように、BIERヘッダは、20ビットの長さを持ったビットインデックス転送テーブル識別子(bit index forwarding table identifier,BIFT ID)、ビット列長さ(bit string length,BSL)、及び64ビット(8バイト)の長さを持った他のフィールド、例えば、BIERヘッダに続く元のマルチキャストパケットのトラフィッククラス(traffic class,TC)、スタック(stack,S)、タイム・ツー・ライブ(time to live,TTL)フィールド、エントロピ(entropy)フィールド、バージョン(version,Ver)フィールド、ニブル(nibble)フィールド、プロトコル(protocol,proto)フィールド、運用管理及び保守(operation administration and maintenance,OAM)フィールド、予約済み(reserved,Rsv)フィールド、並びに差別化されたサービスコードポイント(differentiated services code point,DSCP)フィールドを含んでよいが、これらに限られない。
BIERヘッダ内のフィールドについて、以下で詳細に個別的に記載する。
(1)BIFT IDフィールド
BIFT IDフィールドは、20ビットの長さを有し、BIER-MPLSカプセル化におけるマルチプロコトルラベルスイッチング(multiprotocol label switching,MPLS)ラベル(label,L)である。MPLSラベルは、BIERラベルと呼ばれることがある。BIERラベルに続くTC/S/TTLフィールドなどのフィールドは、標準のラベルコーディングフォーマットを有する。TC/S/TTLフィールドなどのフィールドについては、以下で個別にて記載するので、詳細はここでは記載されない。
BIFT IDは、BIFT-idであってよく、サブドメイン(dub-domain,SD)/ビット列長さ(bit string length,BSL)/セット識別子(set identifier,SI)の組み合わせを含んでよい。異なるBIFT IDは、SD/BSL/SIの異なる組み合わせに対応してもよい。
異なるBIFT IDは、SD/BSL/SIの異なる組み合わせにマッピングされてもよいことが理解されるべきである。図2に示されるBIERヘッダフォーマットは、SD/BSL/SIフィールドを直接には含まない。SDフィールド、BSLフィールド、及びSIフィールドは、3つの暗黙的なフィールドであり、SD/BSL/SI値は、BIFT IDフィールドに基づいてマッピングにより取得される必要がある。
1.サブドメイン(sub-domain,SD)
1つのBIERドメインは、異なるサブドメインSDに分割されてよく、サブドメインSDは、内部ゲートウェイプロトコル(interior gateway protocol,IGP)のマルチトポロジ特徴などをサポートするように、実際のサービスシナリオの要件に従って設定される。各BIERドメインは、少なくとも1つのサブドメイン、つまり、デフォルトのサブドメイン0を含む必要がある。BIERドメインが複数のサブドメインに分割される場合に、全てのサブドメインは、BIERドメイン内のBFRルータごとに設定される必要がある。例えば、BIERドメイン内の各BFRルータについて、サブドメイン0が設定されてよく、システム内のデフォルトのトポロジが使用され、次いで、サブドメイン1が設定されてよく、マルチキャストトポロジが使用される。
各サブドメインSDは、サブドメイン識別子(sub-domain identifier,SD-ID)によって表される。例えば、SD-IDの値は[0-255]であり、SD-IDの長さは8ビットである。一例において、BIERドメインは、異なる仮想プライベートネットワーク(veritual private network,VPN)に基づいて異なるSD内に構成されてよく、異なるVPNは、異なるSDを使用するよう構成される。例えば、VPN 1はSD 0を使用し、VPN 2はSD 1を使用する。
複数のVPNは代替的に同じSDを使用してもよいことが留意されるべきである。BIERドメインにおけることなるSDは、1つの内部ゲートウェイプロトコル(interior gateway protocol,IGP)プロセス又はトポロジにあってよく、あるいは、1つのIGPプロセス又はトポロジになくてもよい。これは、本願の実施形態で特に制限されない。
2.ビット列長さ(bit string length,BSL)
BSLは、BIERヘッダに含まれているビット列の長さである。様々なタイプのBSLが存在してよい。これは、本願の実施形態で特に制限されない。最も小さいBSLは64ビットである。BSLは代替的に128ビット、256ビット、512ビット、1024ビット、又は2048ビットであってよい。最も大きいBSLは4096ビットである。具体的に、BSLは、4ビットによってパケット内で識別される。例えば、BSLが64ビットであるとき、BSLは0001によってパケット内で識別され、BSLが128ビットであるとき、BSLは0010によってパケット内で識別され、BSLが512ビットであるとき、BSLは0100によってパケット内で識別され、BSLが1024ビットであるとき、BSLは0101によってパケット内で識別され、以降同様である。
3.セット識別子(set identifier,SI)
ネットワーク内のBFERデバイスの数が256よりも多い場合に、この場合に適応するように、BIERカプセル化はビット列だけでなく、セット識別子(set identifier,SI)も含める。SIは、多数のBIERデバイスを複数の異なるインターバルに分けて、大規模ネットワークアドレッシングをサポートするために使用される。
SIは、ネットワーク内の複数のエッジBFRを含むか又は設定されたBFR IDを含む組として理解され得る。一例において、BSLは256ビットであるが、ネットワークには256よりも多いBFRが存在し、あるいは、256よりも多い設定されたBFR IDが存在する。この場合に、これらのエッジBFR又はBFR IDは、異なる組に分類される必要がある。例えば、BFR IDが1から256までの範囲をとる256個のエッジBFRは、組0(セットインデックスが0であるか又はSIが0である)であり、BFR IDが257から512までの範囲をとる256個のエッジBFRは組1(セットインデックスが1であるか又はSIが1である)である。
BIERパケットを受信した後、BIERドメイン内のBFRは、BIERヘッダ内のBIFT IDに基づいて、BIERパケットが属する特定のSD、使用されているBSL、及びある組を構成する、パケットが属するBSLの特定のSIを決定してよい。
いくつかの可能なBIFT IDによって表されるSD/BSL/SIの対応する組み合わせは、以下で挙げられる:
BIFT ID=1:SD 0,BSL 256,SI 0に対応//SD 0/BSL 256/SI 0と同等;
BIFT ID=2:SD 0,BSL 256,SI 1に対応//SD 0/BSL 256/SI 1と同等;
BIFT ID=3:SD 0,BSL 256,SI 2に対応//SD 0/BSL 256/SI 2と同等;
BIFT ID=4:SD 0,BSL 256,SI 3に対応//SD 0/BSL 256/SI 3と同等;
BIFT ID=5:SD 0,BSL 512,SI 0に対応//SD 0/BSL 512/SI 0と同等;
BIFT ID=6:SD 0,BSL 512,SI 1に対応//SD 0/BSL 512/SI 1と同等;
BIFT ID=7:SD 1,BSL 256,SI 0に対応//SD 1/BSL 256/SI 0と同等;
BIFT ID=8:SD 1,BSL 256,SI 1に対応//SD 1/BSL 256/SI 1と同等;
BIFT ID=9:SD 1,BSL 256,SI 2に対応//SD 1/BSL 256/SI 2と同等;
BIFT ID=10:SD 1,BSL 256,SI 3に対応//SD 1/BSL 256/SI 3と同等;
BIFT ID=11:SD 1,BSL 512,SI 0に対応//SD 1/BSL 512/SI 0と同等;及び
BIFT ID=12:SD 1,BSL 512,SI 1に対応//SD 1/BSL 512/SI 1と同等。
BIFT ID=1:SD 0,BSL 256,SI 0に対応//SD 0/BSL 256/SI 0と同等;
BIFT ID=2:SD 0,BSL 256,SI 1に対応//SD 0/BSL 256/SI 1と同等;
BIFT ID=3:SD 0,BSL 256,SI 2に対応//SD 0/BSL 256/SI 2と同等;
BIFT ID=4:SD 0,BSL 256,SI 3に対応//SD 0/BSL 256/SI 3と同等;
BIFT ID=5:SD 0,BSL 512,SI 0に対応//SD 0/BSL 512/SI 0と同等;
BIFT ID=6:SD 0,BSL 512,SI 1に対応//SD 0/BSL 512/SI 1と同等;
BIFT ID=7:SD 1,BSL 256,SI 0に対応//SD 1/BSL 256/SI 0と同等;
BIFT ID=8:SD 1,BSL 256,SI 1に対応//SD 1/BSL 256/SI 1と同等;
BIFT ID=9:SD 1,BSL 256,SI 2に対応//SD 1/BSL 256/SI 2と同等;
BIFT ID=10:SD 1,BSL 256,SI 3に対応//SD 1/BSL 256/SI 3と同等;
BIFT ID=11:SD 1,BSL 512,SI 0に対応//SD 1/BSL 512/SI 0と同等;及び
BIFT ID=12:SD 1,BSL 512,SI 1に対応//SD 1/BSL 512/SI 1と同等。
BIFT IDフィールドの値はトリプレット<SD,BSL,SI>に対応することが留意されるべきである。一意の<SD,BSL,SI>情報は、BIFT-idフィールドに基づいて取得され得る。<SD,BSL,SI>情報は次の機能を備えている:BIERパケットヘッダ内のビット列の長さは、BIERパケットヘッダ全体の長さを知るために、BSLに基づいて取得される。ビット列が、1から256までの範囲をとるBFR-ID、又は257から512までの範囲とるBFR-IDを表すかどうかは、BSL及びSI情報に基づいて知ることができる。対応する転送テーブルは、SDに関する情報に基づいて見つけられ得る。
(2)ビット列(bit string)フィールド
ビット列の各ビットはエッジBFRを識別する。例えば、ビット列の下位ビットのビット(最右)は、BFR-IDが1であるBFERを識別する。ビット列の右から左に2番目のビットは、BFR-IDが2であるBFERを識別する。転送プレーンによって実行される転送が基づく転送エントリの場合に、パケットが送信されるべきいくつかの特定BFERは、パケット内のビット列に基づいて決定される。BIERパケットヘッダを含むBIERパケットを受信すると、BIERドメイン内のBFRは、BIERヘッダで運ばれるビット列及びBIFT IDに基づいて、BIERパケットを転送する。
ビットの値1は、パケットが、BFR-IDによって表されるBFERデバイスへ送信される必要があることを示し、ビットの値0は、パケットが、BFR-IDによって表されるBFERデバイスへ送信される必要がないことを示す、ことが留意されるべきである。
例えば、BIFT ID=2。BIERパケットを受信した後、BFRは、BIERヘッダ内のBIFT IDに基づいて、BIERパケットがSD 0に属し、BIERヘッダで使用されているBSLが256ビットであり、BFR IDが組1(BFR IDが257から512までの範囲をとる256個のエッジBFRを含む組)に属することを知ることができる。
(3)伝送クラス(traffic class,TC)フィールド
トラフィッククラスフィールドは、パケットの優先度を特定する。
(4)スタック(stack,S)
Sはスタックボトムフラグである。フラグの値は、BIERパケットヘッダ内で1である。換言すれば、MPLSラベルが、全体のラベルスタックのスタックボトムラベルである。
(5)バージョン(version,Ver)フィールド
バージョンフィールドは4ビットの長さを有し、IPバージョン番号である。値4はIPv4を表し、値6はIPv6を表す。
(6)エントロピ(entropy)フィールド
エントロピフィールドは、負荷共有のために使用される。均等な負荷の共有は、BIER転送中に行われ得る。この場合に、負荷共有中に、同じパスが、同じエントロピ及び同じビット列を有する2つのBIERパケットに対して選択される必要がある。換言すれば、同じトラフィックの複数のパケットは同じエントロピを有し、異なるトラフィックの複数のパケットは異なるエントロピを有する。パケットが転送されるとき、異なるトラフィックは、エントロピに基づいて異なるリンク上で共有され得、同じトラフィックの複数のパケットは、同じリンクを通る。
異なるエントロピが異なるトラフィックを識別することを保証するために、エントロピを割り当てるときに、BFIRデバイスは、異なるトラフィックに基づいて異なるエントロピラベルを割り当てる必要があり、エントロピは繰り返され得ない。
(7)プロトコル(protocol,proto)フィールド
プロトコルフィールドは、BIERパケットヘッダに続くペイロード(payload)フォーマットを識別する。例えば、値4及び値6は夫々、IPv4パケット及びIPv6パケットを表す。値2は、上流で割り当てられたラベルを有するMPLSパケットを表し、BIER上のマルチキャスト仮想プライベートネットワーク(multicast virtual private network,MVPN)で使用されるproto値である。上流ラベルを使用する理由は次の通りである:マルチキャストはポイント・ツー・マルチポイント送信である。送信端のプロバイダエッジ(provider edge,PE)は、一意のラベルを割り当て、制御プレーン上で受信端のPEデバイスへ一意のラベルを送信してよい。送信端のPEデバイスによって割り当てられたラベルは、データパケットで使用され、受信端のPEデバイスによって識別される。ラベルは、受信端のPEデバイスによっては割り当てられず、送信端のPEデバイスによって割り当てられるので、上流ラベルと呼ばれる。
(8)ニブル(nibble)
ニブルフィールドは固定4ビット値0101を有する。このフィールドは、MPLSを通じて運ばれるサービスを区別し、かつ、BIER,IPv4、及びIPv6を区別するために使用される。これは、ラベルスタックに続くIPv4又はIPv6ヘッダが、MPLSカプセル化及び転送の間にECMPをサポートすることを時々チェックされるからである。
(9)BFIR-id
BFIR-idフィールドは、BFIRのBFR IDを示す。BFIRデバイスがサブドメインでBIERパケットをカプセル化及び送信する場合に、BFIR-idフィールドは、サブドメイン内のデバイスのBFR-IDで満たされる必要がある。BFIR-idは、マルチキャストフローを一意に決定するために、マルチキャストフローが送信される特定のBFRIを識別してもよい。
(10)ビット列
ビット列フィールドは、BIERパケットのあて先デバイスセットの文字列を示す。
図3は、他の可能なBIERヘッダフォーマットの略ブロック図である。図2に示されるBIERヘッダフォーマットと比較して、図3に示されるBIERヘッダフォーマットは、BIFT-IDフィールドを含まず、3つのフィールド:SDフィールド、BSLフィールド、及びSIフィールドを含む。換言すれば、図3に示されるBIERヘッダフォーマットは、3つのフィールド:SDフィールド、BSLフィールド、及びSIフィールドを直接含み、SD/BSL/SI値は、BIFT IDフィールドからマッピングにより取得される必要がない。
図3に示されるBIERヘッダフォーマットに含まれているフィールドは、図2に示されるBIERヘッダフォーマットに含まれているフィールドに似ていることが留意されるべきである。図3に示されるBIERヘッダフォーマット内のフィールドに関する具体的な記載については、図2の記載を参照されたい。詳細はここで再び記載されない。
外部IPv6ヘッダに含まれているフィールドについて、以下で詳細に記載する。
バージョン(version,Ver)フィールド:バージョンフィールドはIPバージョン番号であり、バージョンフィールドの値6はIPv6を表す。
トラフィッククラス(traffic class,TC)フィールド:トラフィッククラスフィールドは、パケットの優先度を特定する。
フローラベル(flow label,FL)フィールド:同じフローラベルは、同じトラフィックの複数のパケットにラベルを付すために使用されてよく、他のフローラベル値は、異なるトラフィックの複数のパケットにラベルを付すために使用される。パケットが転送されるときに、異なるトラフィックは、フローラベルに基づいて異なるリンク上で共有され得、同じトラフィックの複数のパケットは同じリンクを通る。換言すれば、フローラベルは、実時間トラフィックを区別するために使用され、異なるフローラベルは、異なるデータフローを決定し得る。このようにして、BIERドメイン内のネットワークデバイスは、フローラベルフィールドに基づいて異なるデータフローをより効率的に区別することができる。
ペイロード長さ(payload length,PL)フィールド:ペイロード長さフィールドはパケットの長さを示す。
次ヘッダ(Next Header,NH)フィールド:次ヘッダフィールドは、パケットの次のヘッダのタイプを示し、例えば、IPv6拡張ヘッダを表し得る。
ホップ制限(Hop Limit,HL)フィールド:ホップ制限フィールドは、パケットの数量に対する制限を示す。
ソースアドレス(source address,SA)フィールド:ソースアドレスフィールドはパケットのソースアドレスを識別する。
あて先アドレス(destination address,DA)フィールド:あて先アドレスフィールドはパケットのあて先アドレスを識別する。
以下は、BIER転送テーブルを確立し、BIER技術に基づいてBIERパケットを転送するプロセスについて詳細に記載するために一例として図5を使用する。
図5に示されるBIERドメインは、デバイスAからデバイスFを含んでよい。デバイスA、デバイスD、デバイスE、及びデバイスFは、BIERドメイン内のエッジBFRであり、デバイスB及びデバイスCは、BIER中間転送デバイスである。具体的に、デバイスAは、BIERドメインの入口に位置し、元のマルチキャストパケットに対してBIERカプセル化を実行することに関与し、図1のBFIRに対応する。デバイスD、デバイスE、及びデバイスFは、BIERドメインの出口に位置し、BIERパケットから脱カプセル化により元のマルチキャストパケットを取得することに関与し、図1のBFRIに対応する。
本願この実施形態では、一意のBFR-IDが各BIERドメイン内のエッジBFRに割り当てられてよい。例えば、図5において、デバイスA、デバイスD、デバイスE、及びデバイスFに設定されたBFR-IDは夫々、4、1、3、及び2である。中間転送BFR、例えば、デバイスB及びデバイスCには、BFR-IDは割り当てられない。
本願の実施形態において、「ID」及び「id」は時々置き換えられることがあることが留意されるべきである。そのような用語によって表される意味は、違いが強調されない場合に一貫性があることが留意されるべきである。本願のBFR-IDは、図5のidを意味し得る。
IPv6ネットワーク内の入口(ingressデバイス)として機能するとき、マルチキャストソース(source,SRC)からユーザマルチキャストパケットを受信した後、デバイスAはユーザマルチキャストパケットをBIERv6ヘッダ内に、つまり、外部IPv6ヘッダ及びBIERヘッダを含むIPv6拡張ヘッダ内にカプセル化して、カプセル化されたBIERv6パケットを取得する。IPv6拡張ヘッダに含まれているBIERパケットヘッダは、あて先デバイスの組を表すビット列を運ぶ。
BIERヘッダにおいて、トラフィックの全てのあて先デバイスは、カプセル化されたビット列を使用することによってマークされる。例えば、BFR-IDが1であるデバイスDに対応するビット列は0001であり、BFR-IDが2であるデバイスFに対応するビット列は0010であり、BFR-IDが3であるデバイスEに対応するビット列は0100であり、BFR-IDが4であるデバイスAに対応するビット列は1000である。
BIERドメイン内の各エッジBFRに割り当てられているBFR-IDは、ルーティングプロトコルに従ってBIERドメイン内の他のBFRへフラッディングされてもよいことが理解されるべきである。フラッディングされたBIER情報は、IPアドレス及びエッジBFRのカプセル化情報を更に含む。例えば、デバイスAのフラッディングされたBIER情報は、IPアドレス及びデバイスAのBIFT-idを運ぶ。BIERドメイン内のBFR(例えば、図5のデバイスF)は、フラッディングされたBIER情報に基づいてBIFTエントリを確立してもよく、それにより、図5のデバイスFは、BIERパケットを受信した後に、確立されたBIFTエントリに基づいてあて先デバイスへBIERパケットを転送する。
デバイスAが、BFR-IDが夫々1、2及び3であるBFERへBIERパケットを送信する必要がある場合に、デバイスAは最初にBIERパケットをデバイスAの隣(デバイスB)へ送信する必要がある。BFR-IDが4であるエッジBFRはデバイスAである。従って、デバイスAによって確立されるBIFTエントリは、次の通りである:
転送エントリ1:隣(neighbor,Nbr)=B,及び転送ビットマスク(forwarding bit mask,FBM)=0111;並びに
転送エントリ2:Nbr*=A,及びFBM=1000。
転送エントリ1:隣(neighbor,Nbr)=B,及び転送ビットマスク(forwarding bit mask,FBM)=0111;並びに
転送エントリ2:Nbr*=A,及びFBM=1000。
転送エントリ1は、BIERパケット内のビット列の右から左に1番目のビット、2番目のビット、及び3番目のビットのうちのいずれか1つが1であるときに、BIERパケットがデバイスAの隣(デバイスB)へ送信されることを示し、ことのき、Nbr=Bは、デバイスAの隣がデバイスBであることを示す。
転送エントリ2は、BIERパケット内のビット列の右から左に4番目のビットが1であるときに、BIERパケットがデバイスAへ送信されることを示す。デバイスAはデバイスAであるから、デバイスAはBIERヘッダを取り除き、元のマルチキャストパケット内の情報に基づいて転送を実行する。転送エントリ2において、*は、デバイスのNbrがそのデバイスであることを示すことが留意されるべきである。例えば、デバイスAの場合に、Nbr*=Aは、デバイスAの隣接デバイスがデバイスAであることを示す。同様に、図5の他のデバイスも、他のデバイスの隣接デバイスに基づいてBIFTエントリを確立してよい。他のデバイスによって確立されるBIFTエントリについては、図5を参照されたい。詳細はここで再び記載されない。
元のマルチキャストパケットを受信した後、BIERドメイン内の入口BFIRとして使用されるデバイスAは、元のマルチキャストパケットの前にBIERヘッダをカプセル化する。記載を容易にするために、デバイスAは、以下では略して入口デバイスAと呼ばれることが留意されるべきである。一例において、元のマルチキャストパケットを受信した後、入口デバイスAは、ボーダーゲートウェイプロトコルBGPメッセージを使用することによってフラッディングされたBFR-IDに基づいて、元のマルチキャストパケットのあて先デバイスを知ることができる。
例えば、元のマルチキャストパケットの受け手は、BFR-IDが3であるあて先デバイスE、BFR-IDが2であるあて先デバイスF、及びBFR-IDが1であるあて先デバイスDである。入口デバイスAは、BIERヘッダのビット列を0111としてカプセル化し、カプセル化されたBIERパケットを転送エントリ1に基づいて隣接デバイスBへ転送する。送信中、デバイスBのユニキャストアドレス(例えば、B::100)は、IPv6ヘッダ内のあて先アドレスフィールドにおいて使用されてもよい。
BIERパケットを受信した後、デバイスBは、ビット列0111及びBIFTエントリに基づいて、BIERパケットがデバイスC及びデバイスEへ送信される必要があることを決定する。例えば、BIERパケットをデバイスCへ送信する場合に、デバイスBは、BIERヘッダ内のビット列(0111)及びBIFTエントリ内のNbr=Cに対応するFBMフィールドに対してAND演算を実行してもよい。本願のこの実施形態では、AND結果は0011である。従って、デバイスBは、BIERヘッダ内のビット列を0011に変更し、BIERパケットをデバイスCへ送信し得る。送信中、デバイスCのユニキャストアドレス(例えば、C;;100)は、IPv6ヘッダ内のあて先アドレスフィールドにおいて使用されてもよい。他の例として、デバイスBがBIERパケットをデバイスEへ送信する場合に、BIERヘッダ内のビット列は0100に変更され得る。送信中、デバイスEのユニキャストアドレス(例えば、E::100)は、IPv6ヘッダ内のあて先アドレスフィールドにおいて使用されてもよい。
デバイスEについては、デバイスEは、転送テーブル内の識別子*に基づいて、隣接デバイスEがデバイスEであることを決定するので、BIERドメイン内の出口BFERとして使用されるデバイスEは、BIERパケットから脱カプセル化により元のマルチキャストパケットを取得し、内部の元のマルチキャストパケット内の情報(例えば、元のマルチキャストパケット内のあて先アドレス)に基づいてマルチキャストパケットをカスタマエッジ1(customer edge,CE 1)へ転送し得る。
同様に、デバイスCは、BIERパケットヘッダ及びBIERパケットヘッダのビット列に関する情報に基づいて、パケットをデバイスD及びデバイスFへ送信する。送信中、デバイスDのユニキャストアドレス(例えば、D::100)及びデバイスFのユニキャストアドレス(例えば、D::100)は、Ipv6ヘッダ内のあて先アドレスフィールドにおいて使用されてもよい。
デバイスDについては、デバイスDは、転送テーブル内の識別子*に基づいて、隣接デバイスDがデバイスDであることを決定するので、BIERドメイン内の出口BFERとして使用されるデバイスDは、BIERパケットから脱カプセル化により元のマルチキャストパケットを取得し、内部の元のマルチキャストパケット内の情報(例えば、元のマルチキャストパケット内のあて先アドレス)に基づいてマルチキャストパケットをCE 2へ転送し得る。
デバイスFについては、デバイスFは、転送テーブル内の識別子*に基づいて、隣接デバイスFがデバイスFであることを決定するので、BIERドメイン内の出口BFERとして使用されるデバイスFは、BIERパケットから脱カプセル化により元のマルチキャストパケットを取得し、内部の元のマルチキャストパケット内の情報(例えば、元のマルチキャストパケット内のあて先アドレス)に基づいてマルチキャストパケットをCE 3へ転送し得る。
具体的に、BIERパケットを受信した後、デバイスEなどの、BIERドメイン内の出口BFERは、マルチキャストパケットが属するVPNインスタンスを決定する必要があり、VPNインスタンスに基づいて、VPNインスタンスに対応する仮想ルート転送(virtual route forwarding,VRF)テーブルを決定し、元のマルチキャストパケット内の情報(例えば、元のマルチキャストパケット内のあて先アドレス)及びVRFテーブルに基づいてVRFテーブル内の次ホップ(例えば、CE 1)へマルチキャストパケットを転送する。
VPNは、共有ネットワーク上でプライベートネットワークを構築するための技術であり、プライベートネットワークルートは公衆ネットワーク上で不可視であることが理解されるべきである。従って、プライベートネットワークルートはVRFテーブルに格納されてよい。
転送プレーン上で、サービス識別子はVPNサービス識別子とも呼ばれることがあり、VPNインスタンスを識別することが更に理解されるべきである。
従来の技術的解決法では、サービス識別子はMPLSラベルで運ばれ、サービス識別子はVPNラベルとも呼ばれ得る。換言すれば、BIERヘッダ内のProtoフィールドの値が2であるとき、それは、BIERヘッダを転送するパケットがVPNラベル+IPパケットである、ことを示す。VPNラベルは、4バイトの長さを持ったMPLSラベルであり、モバイル仮想プライベートネットワーク(mobile virtual private network,MVPN)を識別する。具体的に、制御プレーン上で、BFIRはVPNラベルを生成し、VPNラベル値をVRF識別子と関連付け、情報をBFIR-IDとともにBFERへ送信する。VPNラベル値及びVRF識別子を受信した後、BFERはVPNラベル値及びVRF識別子を対応するVRFと関連付ける。データプレーン上で、MVPNによって運ばれる必要があるパケットを受信した後、BFIRはBIERヘッダ及び対応するVPNラベルをカプセル化する。BIERパケット及びVPNラベルをカプセル化されたパケットを受信した後、BFERは、VPNラベルに基づいてパケットを対応するVRFテーブルと照合し、VRFテーブルに基づいてパケットを転送する。
上記の技術的解決法では、BIERパケットが1つのMPLSラベルレイヤを含むので、ネットワークワイドのMPLS除去が実施され得ず、これはデバイスにとってより複雑である。
他の従来の技術的解決法では、VPNインスタンスは、BIERv6ヘッダ内のソースアドレス(source address,SA)を使用することによって識別される。換言すれば、1つのBFIR(つまり、入口エッジノード)は複数のソースIPv6アドレスを割り当て、異なるソースIPv6アドレスは異なるVPNインスタンスを表す。制御プレーン上で、BFIRは、異なるVPNインスタンスごとに、Src.DTと呼ばれる異なるソースIPv6アドレスを生成し、ソースIPv6アドレスをVRFインスタンスと関連付け、ソースIPv6アドレスとVRFインスタンスとの間の対応をBFERへ送信する。ソースIPv6アドレスとVRFインスタンスとの間の対応を受信した後、BFERは、ソースIPv6アドレス及びVRFインスタンスを対応するVRFと関連付ける。データプレーン上で、MVPNによって運ばれる必要があるパケットを受信した後、BFIRはBIERv6ヘッダをカプセル化し、BIERv6ヘッダ内のソースアドレスSAを使用して、VPNインスタンスを識別する。BIERv6ヘッダをカプセル化されたパケットを受信した後、BFERはBIERv6ヘッダ内のSAを識別し、SAによって識別されるVPNインスタンスに基づいて、対応するVRFテーブルを決定し、VRFテーブルに基づいてパケットを転送する。
上記の従来の技術的解決法では、VPNインスタンスがBIERv6ヘッダ内のソースIPv6アドレスを使用することによって識別される場合に、VPNインスタンスを識別するために必要なソースIPv6アドレスが管理され割り当てられる必要がある。
これを考慮して、本願の実施形態は、BIERパケット転送方法を提供する。適切なフィールドが、VPNサービス識別子を運ぶためにBIERパケットで選択される。従って、出口エッジノードがVPNインスタンスを識別するとき、VPNインスタンスを識別するために必要なソースIPv6アドレスは管理され割り当てられる必要がなく、それにより、実施は相対的に簡単である。
図6は、本願の実施形態に係るBIERパケット転送方法の略フローチャートである。図6に示されるように、方法はステップ610から630を含んでよい。以下は、ステップ610から630を参照して詳細な記載を与える。
ステップ610:第1ネットワークデバイスは、第2ネットワークデバイスによって送信されたBIERパケットを受信し、このとき、BIERパケットはIPv6ヘッダ、BIERヘッダ、及びマルチキャストパケットを含み、IPv6ヘッダのあて先アドレス又はBIERヘッダの第1フィールドはサービス識別子を運ぶ。
一例において、第1ネットワークデバイスは、図5の出口デバイス(例えば、デバイスD、デバイスE、又はデバイスF)に対応してよく、第2ネットワークデバイスは、図6の入口デバイス(例えば、デバイスA)に対応してよい。
BIERパケットのIPv6ヘッダのあて先アドレス又はBIERヘッダの第1フィールドで運ばれるサービス識別子は、仮想プライベートネットワークVPNインスタンスを識別する。サービス識別子はVPNサービス識別子とも呼ばれ得ることが理解されるべきである。
可能な実施において、例えば、BIERパケットのIPv6ヘッダのあて先アドレスがサービス識別子を運ぶ。あて先アドレスは、BIERパケットに対してBIER転送を実行することを指示する。サービス識別子は、あて先アドレスのビットの一部で運ばれてよく、例えば、あて先アドレスの引数(Argument)部で運ばれてよい。
以下は、実施について詳細に記載する。
セグメントルーティング(segment routing,SR)は、ネットワーク内の動作命令を示すために、パケット内のセグメント識別(segment identity,セグメントID)を使用する。例えば、IPv6上でのセグメントルーティング(segment routing over IPv6,SRv6)では、IPv6アドレスがSRv6 SIDとして使用され、SRv6 SIDにおいてプログラミングされる。換言すれば、128ビットのSRv6 SIDは3つの部分:位置(Locator)、機能(Function)、及び引数(Argument)に分けられる。Locatorは、ルーティング及びアドレッシングのために使用される。Functionは、対応する動作命令を示す。Argumentは、命令を実行するために必要なパラメータを運ぶために使用される。
BIERv6は、IPv6データプレーン上でBIER転送を実装する技術であり、BIER転送を実行することをデバイスに指示するために特別なIPv6あて先アドレス(End.BIERと呼ばれる)を使用する。End.BIERは、IPv6ヘッダのあて先アドレスDAフィールドにカプセル化され、特別な指示機能を持ったSRv6 SIDであり、デバイスにBIER転送をローカルで実行することを指示する。
BIERパケットのあて先アドレスで使用されるIPv6アドレスは、共通IPv6アドレスではなく、End.BIERと呼ばれる、BIERパケット処理に使用される特定のIPv6アドレスである。BFRルータがEnd.BIERのアドレスを設定した後、アドレスの128ビットマスクを持った転送エントリが転送情報ベース(forwarding information base,FIB)で生成され、転送エントリは、アドレスをEnd.BIERとして識別する。FIBから求められた結果がEnd.BIERのアドレスである場合に、ルータはEnd.BIERに特有の動作を実行する、つまり、IPv6拡張パケットヘッダ内のBIERパケットを引き続き処理する。さもなければ、結果が共通IPv6あて先アドレスである場合には、FIBから求められた結果は、パケットが、ローカルルータへ送信されかつあて先オプション拡張ヘッダを含むIPv6パケットであることを示す。この場合に、パケットは処理のためにCPUへ送信されてよく、データプレーン処理は実行され得ない。
本願のこの実施形態において、End.BIERは、End.BIERがBIER転送を実行することを指示することができるだけでなく、VPN関連パラメータ、例えば、VPNサービス識別子を運ぶこともできるように拡張されてよい。具体的に、End.BIERは3つの部分:Locator、Function、及びArgumentに分割されてよい。Locatorフィールド及びFunctionフィールドはBIER転送動作を指示し、ArgumentフィールドはVPNサービス識別子を運ぶ。
Argumentフィールドの長さは、本願のこの実施形態で特に制限されず、実際の要件に応じて定義されてよいことが留意されるべきである。例えば、VPNサービス識別子が20ビットMPLSラベル値である場合に、Argumentフィールドの長さは120ビットとして定義され得る。
他の可能な実施においては、例えば、BIERパケットの第1フィールドがサービス識別子を運ぶ。第1フィールドは、次のフィールド:差別化されたサービスコードポイントDSCPフィールド、ビット転送入口ルータ識別子BFIR-idフィールド、及びプロトコルprotoフィールド、のうちのいずれか1つのフィールド又はそれらの組み合わせであってよい。具体的に、VPNサービス識別子は、BIERヘッダ内の1つのフィールドを使用することによって運ばれてよく、あるいは、VPNサービス識別子は、BIERヘッダ内の複数のフィールドを使用することによって運ばれてもよい。
本願のこの実施形態では、BIERヘッダでVPNサービス識別子を運ぶフィールドは、DSCPフィールド、protoフィールド、及びBFIR-idフィールドを含み得るが、これらに限られない。
ステップ620:第1ネットワークデバイスは、サービス識別子及び第1対応に基づいてVRFテーブルを決定し、このとき、第1対応は、サービス識別子とVRFテーブルとの間の対応を含む。
サービス識別子を取得した後、第1ネットワークデバイスは、第1対応及びサービス識別子に基づいて、対応するVRFテーブルを決定してよい。第1対応は、サービス識別子とVRFテーブルとの間の対応を含む。
ステップ620の前に、方法は、第1ネットワークデバイスがサービス識別子とVRFテーブルとの間の第1対応を決定することを更に含む。複数の具体的な実施が存在する。以下は、異なる実施について個別的に詳細に記載する。
可能な実施において、第1ネットワークデバイスは、VRFインスタンスに対して対応するサービス識別子をローカルで生成し、そのサービス識別子とVRFインスタンスに対応するVRFテーブルとの間の対応を記憶してよい。この実施で、第1ネットワークデバイスは更に、VRFインスタンスに対してローカルで生成された対応するサービス識別子を第2ネットワークデバイスへ送信してもよい。従って、マルチキャストパケットを受信した後、第2ネットワークデバイスは、VRFインスタンスに対応するサービス識別子を、マルチキャストパケットが属するVRFインスタンスに基づいて、BIERパケットにカプセル化し得る。具体的なカプセル化方法については、ステップ610の記載を参照されたい。詳細はここで再び記載されない。
他の可能な実施においては、第1ネットワークデバイスは制御パケットを受信し、このとき、制御パケットは、サービス識別子とVRFテーブルとの間の対応を含み、第1ネットワークデバイスは、その対応を記憶する。
ステップ630:第1ネットワークデバイスは、VRFテーブルに基づいて、VRFテーブル内の第1カスタマエッジCEデバイスへマルチキャストパケットを送信する。
出口デバイスとして、第1ネットワークデバイスは、内部のマルチキャストパケットを取得するようBIERパケットを脱カプセル化し、マルチキャストパケットのあて先アドレス及び決定されたVRFテーブルに基づいて、マルチキャストパケットを転送してよい。
具体的に、VRFテーブルは複数のVRFエントリを含んでよく、各VRFエントリはあて先アドレスへの次ホップを含む。第1ネットワークデバイスは、マルチキャストパケットのあて先アドレスに基づいてVRFテーブル内のVRFエントリを決定し、VRFエントリ内の次ホップ(例えば、第1CEデバイス)へマルチキャストパケットを送信してよい。
上記の技術的解決法で、BIERパケットのIPv6ヘッダのあて先アドレス又はBIERヘッダの第1フィールドはサービス識別子を運び、それにより、VPNインスタンスを識別するために必要なソースIPv6アドレスは管理され割り当てられる必要がなくなり、追加のMPLSラベルレイヤも加えられる必要がない。従って、実施は相対的に簡単であり、デバイス実装複雑性は軽減される。
以下は、図7を参照して、本願の実施形態で提供されるBIERパケット転送方法の具体的な実施プロセスについて詳細に記載するための例として、図5に示されるBIERドメインを使用する。
図7の例は、当業者が本願のこの実施形態を理解するのを助けるよう単に意図されており、本願のこの実施形態を例の中の具体的な値又は具体的なシナリオに限定する意図はないことが理解されるべきである。当業者は、以下図7で与えられている例に基づいて様々な同等の変更又は改良を明りょうに行うことができ、そのような変更又は改良も本願の実施形態の範囲内にある。
図7は、本願の実施形態に係る他のBIERパケット転送方法の略フローチャートである。図7に示されるように、方法はステップ710から750を含んでよい。以下は、ステップ710から750について個別的に詳細に記載する。
ステップ710:BIERドメイン内の入口デバイスは、VPNサービス識別子とVRFとの間のマッピング関係を決定し記憶する。
例えば、デバイスAがBIERドメイン内の入口デバイスとして使用される。デバイスAは、VPNに対して対応するVPNサービス識別子を生成し、かつ、VPNサービス識別子とVRFテーブルとの間のマッピング関係を生成する必要がある。
一例において、VPNサービス識別子は20ビットMPLSラベル値であってよく、VPNサービス識別子は、入口エッジノード及び出口エッジノードで1つのVRFテーブルに一意に対応し得る。例えば、入口エッジノード及び出口エッジノードは両方とも、VRF1テーブルを表すためにVPNサービス識別子100を使用する。他の例として、入口エッジノード及び出口エッジノードは両方とも、VRF2テーブルを表すためにVPNサービス識別子101を使用する。
一例において、VPNサービス識別子はグローバル識別子であってよい。グローバル識別子はグローバルに一意であり、つまり、異なるVPNサービス識別子は異なるマルチキャストグループに対して使用される。
任意に、VPNサービス識別子がローカル識別子である場合に、異なるマルチキャストグループごとに、入口ノード又は出口ノードが異なる場合に、同じVPNサービス識別子が使用される可能性がある。この実施形態では、BFERは、ソースIPv6アドレスとVPNサービス識別子とVRFテーブルとの間のマッピング関係を記憶する必要がある。
ステップ720:BIERドメイン内の出口デバイスは、VPNサービス識別子とVRFテーブルとの間のマッピング関係を決定し記憶する。
例えば、BIERドメイン内の出口デバイスはデバイスEである。デバイスEがVPNサービス識別子とVRFテーブルとの間のマッピング関係を決定する複数の実施が存在する。これは本願で特に制限されない。以下は、いくつかの可能な実施をリストアップする。
可能な実施において、VPNサービス識別子とVRFテーブルとの間のマッピング関係はデバイスEで設定されてよい。例えば、VPNサービス識別子はグローバル識別子であり、表1に示されているVPNサービス識別子とVRFテーブルとの間のマッピング関係が設定される。他の例として、VPNサービス識別子はローカル識別子であり、表2に示されるマッピング関係が設定される。
他の可能な実施においては、VPNサービス識別子とVRFテーブルとの間のマッピング関係を決定した後、BIERドメイン内の入口デバイスは、制御パケットを使用することによってデバイスEにマッピング関係を通知してよい。例えば、VPNサービス識別子はグローバル識別子であり、デバイスEは、制御パケットを使用することによってVPNサービス識別子とVRFテーブルとの間のマッピング関係を受け取り、表1に示されるVPNサービス識別子とVRFテーブルとの間のマッピング関係をローカルで記憶する。他の例として、VPNサービス識別子はローカル識別子であり、BIERドメイン内の入口デバイスによってデバイスEへ送信される制御パケットは、BIERドメイン内の入口デバイスのIPv6アドレスを更に含み、デバイスEは、表2に示されるソースIPv6アドレス(BFIR 1のIPv6アドレス)とVPNサービス識別子とVRFテーブルとの間のマッピング関係をローカルで記憶する。
一例において、制御パケットはボーダーゲートウェイプロトコル(border gateway protocol,BGP)パケットであってよく、BIERドメイン内の入口デバイスは、BGPパケットを使用することによって、VPNサービス識別子とVRFテーブルとの間のマッピング関係をデバイスEに通知してよい。
ステップ730:BIERドメイン内の入口デバイスは、BIERパケットをカプセル化し、BIERパケットをBFRへ送信する。
例えば、デバイスAは、BIERドメイン内の入口デバイスとして使用される。マルチキャストパケットを受信した後、デバイスAは、マルチキャストパケットが属するVPNインスタンスに基づいてマルチキャストパケットに対してBIERカプセル化を実行して、BIERパケットを取得する。BIERパケットはIPv6ヘッダ、BIERヘッダ、及び内部マルチキャストを含む。
BIERパケットはVPNサービス識別子を運んでよく、VPNサービス識別子は上記のVPNインスタンスを識別する。複数の具体的な実施が存在する。これは本願で特に制限されない。可能な実施において、VPNサービス識別子は、IPv6ヘッダのあて先アドレスDAを使用することによって運ばれてよい。他の可能な実施においては、VPNサービス識別子は、代替的に、BIERヘッダのフィールドを使用することによって運ばれてもよい。
あて先アドレスDAがVPNサービス識別子を運ぶ実施において、各BIER転送デバイスは、End.BIERのIPv6アドレスでArgumentフィールドを予約する必要がある。具体的に、BIER転送に使用されるEnd.BIERが設定されるとき、アドレスブロックはArgumentフィールドを表すよう構成されてよい。
Argumentフィールドが20ビットVPNサービス識別子を運ぶ例が、図7に示されるBIER転送ノードでの予約済みArgumentフィールドの設定について記載するために以下で使用される:
デバイスAでの設定:end-bier 2001:db8:1000::/108arguments20;
デバイスBでの設定:end-bier 2001:db8:1001::/108arguments20;
デバイスCでの設定:end-bier 2001:db8:2000::/108arguments20;及び
デバイスEでの設定:end-bier 2001:db8:3000::/108arguments20。
デバイスAでの設定:end-bier 2001:db8:1000::/108arguments20;
デバイスBでの設定:end-bier 2001:db8:1001::/108arguments20;
デバイスCでの設定:end-bier 2001:db8:2000::/108arguments20;及び
デバイスEでの設定:end-bier 2001:db8:3000::/108arguments20。
ここで、end-bierは、BIER転送に使用されるIPv6アドレス(End.BIER)を示す。更に、2001:db8:1000::/108は、108のマスク長さを有するIPv6アドレスブロック(End.BIER)であり、arguments20は、アドレスブロックの下位20ビットがArgumentフィールドを表すことを示す。
本願のこの実施形態では、End.BIERのArgumentフィールドがVPNサービス識別子を運ぶ場合、かつVPNサービス識別子が変化する場合に、Argumentフィールドは変化し、デバイスのIPv6アドレス(End.BIER)も変化する。
例えば、VPNサービス識別子は100であり、デバイスAによってデバイスBへ送信されるBIERパケットで、IPv6ヘッダのあて先アドレスDAはアドレス2001:db8:1001::64を使用する。ここで、64は16進数であり、10進数表記の100に対応し、つまり、VPNサービス識別子は100である。
他の例として、VPNサービス識別子は101であり、デバイスAによってデバイスへ送信されるBIERパケットで、IPv6ヘッダのあて先アドレスDAはアドレス2001:db8:1001::65を使用する。ここで、65は16進数であり、10進数表記の101に対応し、つまり、VPNサービス識別子は101である。
BIERヘッダのフィールドがVPNサービス識別子を運ぶ実施において、各BIER転送デバイスは、End.BIERのIPv6アドレスでArgumentフィールドを予約する必要がない。図5に示される各BIER転送ノードは、BIER転送に使用されるIPv6アドレス(End.BIER)を設定するときにアドレスを設定してよい:
デバイスAでの設定:end-bier 2001:db8:1000::1234;
デバイスBでの設定:end-bier 2001:db8:1001::1234;
デバイスCでの設定:end-bier 2001:db8:2000::1234;及び
デバイスEでの設定:end-bier 2001:db8:3000::1234。
デバイスAでの設定:end-bier 2001:db8:1000::1234;
デバイスBでの設定:end-bier 2001:db8:1001::1234;
デバイスCでの設定:end-bier 2001:db8:2000::1234;及び
デバイスEでの設定:end-bier 2001:db8:3000::1234。
ここで、end-bierは、BIER転送に使用されるIPv6アドレス(End.BIER)を示す。この例示的な設定では、各ノードは、完全な128ビットIPv6アドレスを供給される。
この実施において、BIERヘッダ内のフィールドはVPNサービス識別子を運び、デバイスのIPv6アドレス(End.BIER)は変化しない。
例えば、VPNサービスは100であり、デバイスAによってデバイスBへ送信されるBIERパケットで、IPv6ヘッダのあて先アドレスDAはアドレス2001:db8:1001::1234を使用する。この場合に、VPNサービス識別子100は、この実施形態の方法に従って、BIERヘッダのフィールドにカプセル化される。次いで、デバイスBはパケットを複製し、パケットをデバイスC及びデバイスDへ送信する。相応して、デバイスC及びデバイスDのアドレスは2001:db8:2000::1234及び2001:db8:3000::1234としてカプセル化される。この場合に、BIERヘッダのフィールド内のVPNサービス識別子100は不変なままである。
他の例として、VPNサービス識別子は101であり、デバイスAによってデバイスへ送信されるBIERパケットで、IPv6ヘッダのあて先アドレスDAはアドレス2001:db8:1001::1234を使用する。この場合に、VPNサービス識別子101は、この実施形態の方法に従って、BIERヘッダのフィールドにカプセル化される。次いで、デバイスBはパケットを複製し、パケットをデバイスC及びデバイスDへ送信する。相応して、デバイスC及びデバイスDのアドレスは2001:db8:2000::1234及び2001:db8:3000::1234としてカプセル化される。この場合に、BIERヘッダのフィールド内のVPNサービス識別子101は不変なままである。
ステップ740:BFRは、受信したBIERパケットをBIERドメイン内の出口デバイスへ送信する。
BIERパケットを受信した後、BFRはBIERパケットをBIERドメイン内の出口デバイスへ送信してよい。
例えば、VPNサービス識別子は100である。BFRによってデバイスEへ送信されるBIERパケットのIPv6ヘッダのあて先アドレスDAはアドレス2001:db8:3000::64を使用する。ここで、64は16進数であり、10進数表記の100に対応し、つまり、VPNサービス識別子は100である。
例えば、VPNサービス識別子は101である。BFRによってデバイスEへ送信されるBIERパケットのIPv6ヘッダのあて先アドレスDAはアドレス2001:db8:3000::65を使用する。ここで、65は16進数であり、10進数表記の101に対応し、つまり、VPNサービス識別子は101である。
ステップ750:BIERドメイン内の出口デバイスは、BIERパケットを受信し、対応するVRFテーブルを探索してパケットを転送する。
BIERパケットを受信した後、BIERドメイン内の出口デバイスは、BIERパケットからVPNサービス識別子を取得してよい。一例において、VPNサービス識別子はBIERヘッダのフィールドで運ばれ、BIERドメイン内の出口デバイスは、BIERヘッダのフィールドからVPNサービス識別子を取得してよい。他の例においては、VPNサービス識別子は、IPv6ヘッダのあて先アドレスDAで運ばれ、BIERドメイン内の出口デバイスは、DAからVPNサービス識別子を取得してもよい。
VPNサービス識別子を取得した後、BIERドメイン内の出口デバイスは、VPNサービス識別子とVRFテーブルとの間のローカルで記憶されたマッピング関係に基づいて、対応するVRFテーブルを決定し、VRFテーブルに基づいてマルチキャストパケットを転送してよい。
例えば、デバイスEはBIERドメイン内の出口デバイスとして使用され、デバイスEによって取得されたVPNサービス識別子は100であり、表1に示されるマッピング関係に基づいて、100はVRF1テーブルに対応することが決定され得る。デバイスEは、マルチキャストパケットのあて先アドレスに基づいてVRFテーブル内の特定のVRFエントリを決定し、VRFエントリ内の次ホップ(例えば、特定の第1CEデバイス)へマルチキャストパケットを送信してよい。
上記の技術的解決法では、VPNサービス識別子は、BIERによってカプセル化されたIPv6あて先アドレス又はBIERによってカプセル化されたBIERヘッダのフィールドの一部を使用することによって運ばれ、出口エッジノードは、IPv6あて先アドレス又はBIERヘッダのフィールドの一部を読むことによってVPNサービス識別子を取得しさえすればよい。これは、従来の技術的解決法でVPNインスタンスを識別するためにソースIPv6アドレスを使用することによって必要とされるソースIPv6アドレスの管理及び割り当てを回避する。
図1から図7を参照して、上記は、本願の実施形態で提供されるBIERパケット転送方法について詳細に記載している。以下は、図8から図13を参照して本願の装置の実施形態について詳細に記載する。方法の実施形態の記載は、装置の実施形態の記載に対応することが理解されるべきある。従って、詳細に記載されない部分については、上記の方法の実施形態の記載を参照されたい。
図8は、本願の実施形態に係る第1ネットワークデバイス800の構造の模式図である。図8に示される第1ネットワークデバイス800は、上記の実施形態の方法で第1ネットワークデバイスによって実行された対応するステップを実行し得る。図8に示されるように、第1ネットワークデバイス800は受信モジュール810、処理モジュール820,及び送信モジュール830を含む。
受信モジュール810は、第2ネットワークデバイスによって送信されたBIERパケットを受信するよう構成され、このとき、BIERパケットは、インターネットプロトコルバージョン6IPv6ヘッダ、ビットインデックス明示的レプリケーションBIERヘッダ、及びマルチキャストパケットを含み、IPv6ヘッダのあて先アドレス又はBIERヘッダの第1フィールドは、サービス識別子を運び、サービス識別子は、仮想プライベートネットワークVPNインスタンスを識別する。
処理モジュール820は、サービス識別子及び第1対応に基づいて仮想ルート転送VRFテーブルを決定するよう構成され、このとき、第1対応は、サービス識別子とVRFテーブルとの間の対応を含む。
送信モジュール830は、VRFテーブルに基づいて、VRFテーブル内の第1カスタマエッジCEデバイスへマルチキャストパケットを送信するよう構成される。
任意に、サービス識別子は、IPv6ヘッダのあて先アドレスのビットの一部で運ばれ、あて先アドレスは、BIERパケットに対してBIER転送を実行することを指示する。
任意に、あて先アドレスのビットの一部は、あて先アドレスの引数部である。
他の可能な実施においては、BIERヘッダの第1フィールドは、次のフィールド:差別化されたサービスコードポイントDSCPフィールド、ビット転送入口ルータ識別子BFIR-idフィールド、及びプロトコルprotoフィールド、のうちのいずれか1つ又はそれらの組み合わせである。
任意に、受信モジュール810は、制御パケットを受信するよう更に構成され、このとき、制御パケットは、サービス識別子とVRFテーブルとの間の対応を含み、処理モジュール820は、サービス識別子とVRFテーブルとの間の対応を記憶するよう更に構成される。
任意に、第1対応は、ソースアドレスを更に含み、処理モジュール820は、IPv6ヘッダのソースアドレス、サービス識別子、及び第1対応に基づいて、VRFテーブルを決定するよう特に構成される。
図9は、本願の実施形態に係る第2ネットワークデバイス900の構造の模式図である。図9に示される第2ネットワークデバイス900は、上記の実施形態の方法で第2ネットワークデバイスによって実行された対応するステップを実行し得る。図9に示されるように、第2ネットワークデバイス900は受信モジュール910、処理モジュール920,及び送信モジュール930を含む。
受信モジュール910は、マルチキャストパケットを取得するよう構成される。
処理モジュール920は、BIERパケットを取得するように、マルチキャストパケットが属する仮想プライベートネットワークVPNインスタンスに基づいてマルチキャストパケットをカプセル化するよう構成され、このとき、BIERパケットは、インターネットプロトコルバージョン6IPv6ヘッダ、ビットインデックス明示的レプリケーションBIERヘッダ、及びマルチキャストパケットを含み、IPv6ヘッダのあて先アドレス又はBIERヘッダの第1フィールドは、サービス識別子を運び、サービス識別子は、VPNインスタンスを識別する。
送信モジュール930は、BIERパケットを第1ネットワークデバイスへ送信するよう構成される。
任意に、サービス識別子は、IPv6ヘッダのあて先アドレスのビットの一部で運ばれ、あて先アドレスは、BIERパケットに対してBIER転送を実行することを第1ネットワークデバイスに指示する。
任意に、あて先アドレスのビットの一部は、あて先アドレスの引数部である。
任意に、BIERヘッダの第1フィールドは、次のフィールド:差別化されたサービスコードポイントDSCPフィールド、ビット転送入口ルータ識別子BFIR-idフィールド、及びプロトコルprotoフィールド、のうちのいずれか1つ又はそれらの組み合わせである。
任意に、処理モジュール920は、サービス識別子をVPNインスタンスに割り当て、かつ、第1対応を確立するよう更に構成され、このとき、第1対応は、サービス識別子とVPNに対応するVRFテーブルとの間の対応を含む。
任意に、送信モジュール930は、制御パケットを第1ネットワークデバイスへ送信するよう更に構成され、このとき、制御パケットは、サービス識別子とVRFテーブルとの間の対応を含む。
任意に、制御パケットはボーダーゲートウェイプロトコルBGPパケットである。
図10は、本願の実施形態に係る第1ネットワークデバイス2000のハードウェア構造の模式図である。図10に示される第1ネットワークデバイス2000は、上記の実施形態の方法で第1ネットワークデバイスによって実行された対応するステップを実行し得る。
図10に示されるように、第1ネットワークデバイス2000はプロセッサ2001、メモリ2002、インターフェース2003、及びバス2004を含む。インターフェース2003は、無線又は有線方式で実施されてよく、具体的にネットワークアダプタであってよい。プロセッサ2001、メモリ2002、及びインターフェース2003はバス2004により接続されている。
インターフェース2003は具体的に送信器及び受信器を含み、第1ネットワークデバイスが上記の受信及び送信を実施することを可能にするよう構成される。例えば、インターフェース2003は、第2ネットワークデバイスによって送信されたBIERパケットを受信するよう構成され、あるいは、VRFテーブルに基づいてVRFテーブル内の第1カスタマエッジCEデバイスへマルチキャストパケットを送信するよう構成される。
プロセッサ2001は、上記の実施形態の方法で第1ネットワークデバイスによって実行された処理を実行するよう構成される。例えば、プロセッサ2001は、サービス識別子及び第1対応に基づいて仮想ルート転送VRFを決定するよう構成され、かつ/あるいは、本明細書で記載されている技術の他のプロセスを実行するよう構成される。メモリ2002はオペレーティングシステム20021及びアプリケーション20022を含み、プログラム、コード、又は命令を記憶するよう構成される。プロセッサ又はハードウェアデバイスがプログラム、コード、又は命令を実行するとき、方法の実施形態での第1ネットワークデバイスに関する処理プロセスが完了され得る。任意に、メモリ2002はリードオンリーメモリ(read-only memory,ROM)及びランダムアクセスメモリ(random access memory,RAM)を含んでよい。ROMは基本入力/出力システム(basic input/output system,BIOS)又は埋め込みシステムを含み、RAMはアプリケーション及びオペレーティングシステムを含む。第1ネットワークデバイス2000が動作する必要があるとき、ROM内に形成されたBIOS又は埋め込みシステム内のブートローダがシステムを起動させるために使用され、第1ネットワークデバイス2000を通常動作状態に入らせる。通常動作状態に入った後、第1ネットワークデバイス2000は、RAM内のアプリケーション及びオペレーティングシステムを実行して、方法の実施形態での第1ネットワークデバイス2000の処理プロセスを完了する。
図10は、第1ネットワークデバイス2000の簡単化された設計を単に示していることが理解され得る。第1ネットワークデバイスは、実際の応用中にはインターフェース、プロセッサ、又はメモリをいくつでも含んでよい。
図11は、本願の実施形態に係る他の第1ネットワークデバイス2100のハードウェア構造の模式図である。図11に示される第1ネットワークデバイス2100は、上記の実施形態の方法で第1ネットワークデバイスによって実行された対応するステップを実行し得る。
図11に示されるように、第1ネットワークデバイス2100はメイン制御ボード2110、インターフェースボード2130、スイッチングボード2120、及びインターフェースボード2140を含む。メイン制御ボード2110、インターフェースボード2130、インターフェースボード2140、及びスイッチングボード2120は、インターワーキングのためにシステムバスを通じてシステムバックプレーンへ接続されている。メイン制御ボード2110は、システム管理、デバイス保守、及びプロトコル処理などの機能を完了するよう構成される。スイッチングボード2120は、インターフェースボード間でデータを交換するよう構成される(インターフェースボードはラインカード又はサービスボードとも呼ばれる)。インターフェースボード2130及びインターフェースボード2140は、様々なサービスインターフェース(POSインターフェース、GEインターフェース、及びATMインターフェースなど)を提供し、データパケットを転送するよう構成される。
インターフェースボード2130は中央演算処理ユニット2131、転送エントリメモリ2134、物理インターフェースカード2133、及びネットワークプロセッサ2132を含み得る。中央演算処理ユニット2131は、インターフェースボードを制御及び管理し、メイン制御ボード上の中央演算処理ユニットと通信するよう構成される。転送エントリメモリ2134は、エントリ、例えば、上記のBIFTを記憶するよう構成される。物理インターフェースカード2133は、トラフィックを受信及び送信するよう構成される。
インターフェースボード2140での動作は、本願のこの実施形態ではインターフェースボード2130での動作と一貫性があることが理解されるべきである。簡潔さのために、詳細は再び記載されない。
この実施形態の第1ネットワークデバイス2100は、方法の実施形態での機能及び/又は様々な実装ステップに対応し得ることが理解されるべきである。詳細はここで再び記載されない。
更に、1つ以上のメイン制御ボードが存在してもよいことが留意されるべきである。複数のメイン制御ボードが存在する場合に、メイン制御ボードは、アクティブなメイン制御ボード及びスタンバイ中のメイン制御ボードを含んでもよい。1つ以上のインターフェースボードが存在してもよい。より強力なデータ処理能力を備えている第1ネットワークデバイスは、より多くのインターフェースボードを提供する。インターフェースボード上には1つ以上の物理インターフェースカードも存在してよい。スイッチングボードは存在しなくても、又は1つ以上のスイッチングボードが存在してもよい。複数のスイッチングボードが存在する場合に、負荷平衡化及び冗長性バックアップが一緒に実装され得る。中央集権的な転送アーキテクチャでは、第1ネットワークデバイスはスイッチングボードを含まなくてもよく、インターフェースボードがシステム全体のサービスデータ処理機能を引き受ける。分散型の転送アーキテクチャでは、第1ネットワークデバイスは少なくとも1つのスイッチングボードを含み、スイッチングボードを使用することによって複数のインターフェースボード間のデータ交換を実施し、大容量のデータ交換及び処理能力を提供し得る。従って、分散型アーキテクチャにおける第1ネットワークデバイスのデータアクセス及び処理能力は、中央集権的なアーキテクチャにおけるデバイスのそれらよりも強力である。使用されるべき具体的なアーキテクチャは、特定のネットワーキングデプロイメントシナリオに依存する。これはここで制限されない。
図12は、本願の実施形態に係る第2ネットワークデバイス2200のハードウェア構造の模式図である。図12に示される第2ネットワークデバイス2200は、上記の実施形態の方法で第2ネットワークデバイスによって実行された対応するステップを実行し得る。
図12に示されるように、第2ネットワークデバイス2200はプロセッサ2201、メモリ2202、インターフェース2203、及びバス2204を含む。インターフェース2203は、無線又は有線方式で実施されてよく、具体的にネットワークアダプタであってよい。プロセッサ2201、メモリ2202、及びインターフェース2203はバス2204により接続されている。
インターフェース2203は具体的に送信器及び受信器を含み、マルチキャストパケットを取得し、第1ネットワークデバイスへBIERパケットを送信するよう構成される。プロセッサ2201は、上記の実施形態の方法で第2ネットワークデバイスによって実行された処理を実行するよう構成される。例えば、プロセッサ2201は、BIERパケットを取得するように、マルチキャストパケットが属する仮想プライベートネットワークVPNインスタンスに基づいてマルチキャストパケットをカプセル化するよう構成、かつ/あるいは、本明細書で記載されている技術の他のプロセスを実行するよう構成される。メモリ2202はオペレーティングシステム22021及びアプリケーション22022を含み、プログラム、コード、又は命令を記憶するよう構成される。プロセッサ又はハードウェアデバイスがプログラム、コード、又は命令を実行するとき、方法の実施形態での第2ネットワークデバイスに関する処理プロセスが完了され得る。任意に、メモリ2202はリードオンリーメモリ(read-only memory,ROM)及びランダムアクセスメモリ(random access memory,RAM)を含んでよい。ROMは基本入力/出力システム(basic input/output system,BIOS)又は埋め込みシステムを含み、RAMはアプリケーション及びオペレーティングシステムを含む。第2ネットワークデバイス2200が動作する必要があるとき、ROM内に形成されたBIOS又は埋め込みシステム内のブートローダがシステムを起動させるために使用され、第2ネットワークデバイス2200を通常動作状態に入らせる。通常動作状態に入った後、第2ネットワークデバイス2200は、RAM内のアプリケーション及びオペレーティングシステムを実行して、方法の実施形態での第2ネットワークデバイス2200の処理プロセスを完了する。
図12は、第2ネットワークデバイス2200の簡単化された設計を単に示していることが理解され得る。第2ネットワークデバイスは、実際の応用中にはインターフェース、プロセッサ、又はメモリをいくつでも含んでよい。
図13は、本願の実施形態に係る他の第2ネットワークデバイス2300のハードウェア構造の模式図である。図13に示される第2ネットワークデバイス230は、上記の実施形態の方法で第2ネットワークデバイスによって実行された対応するステップを実行し得る。
図13に示されるように、第2ネットワークデバイス230はメイン制御ボード2310、インターフェースボード2330、スイッチングボード2320、及びインターフェースボード2340を含む。メイン制御ボード2310、インターフェースボード2330、インターフェースボード2340、及びスイッチングボード2320は、インターワーキングのためにシステムバスを通じてシステムバックプレーンへ接続されている。メイン制御ボード2310は、システム管理、デバイス保守、及びプロトコル処理などの機能を完了するよう構成される。スイッチングボード2320は、インターフェースボード間でデータを交換するよう構成される(インターフェースボードはラインカード又はサービスボードとも呼ばれる)。インターフェースボード2330及びインターフェースボード2340は、様々なサービスインターフェース(POSインターフェース、GEインターフェース、及びATMインターフェースなど)を提供し、データパケットを転送するよう構成される。
インターフェースボード2330は中央演算処理ユニット2331、転送エントリメモリ2334、物理インターフェースカード2333、及びネットワークプロセッサ2332を含み得る。中央演算処理ユニット2331は、インターフェースボードを制御及び管理し、メイン制御ボード上の中央演算処理ユニットと通信するよう構成される。転送エントリメモリ2334は、エントリ、例えば、上記のBIFTを記憶するよう構成される。物理インターフェースカード2133は、トラフィックを受信及び送信するよう構成される。
インターフェースボード2340での動作は、本願のこの実施形態ではインターフェースボード2330での動作と一貫性があることが理解されるべきである。簡潔さのために、詳細は再び記載されない。この実施形態の第2ネットワークデバイス2300は、方法の実施形態での機能及び/又は様々な実装ステップに対応し得ることが理解されるべきである。詳細はここで再び記載されない。
更に、1つ以上のメイン制御ボードが存在してもよいことが留意されるべきである。複数のメイン制御ボードが存在する場合に、メイン制御ボードは、アクティブなメイン制御ボード及びスタンバイ中のメイン制御ボードを含んでもよい。1つ以上のインターフェースボードが存在してもよい。より強力なデータ処理能力を備えている第2ネットワークデバイスは、より多くのインターフェースボードを提供する。インターフェースボード上には1つ以上の物理インターフェースカードも存在してよい。スイッチングボードは存在しなくても、又は1つ以上のスイッチングボードが存在してもよい。複数のスイッチングボードが存在する場合に、負荷平衡化及び冗長性バックアップは一緒に実装されてよい。中央集権的な転送アーキテクチャでは、第2ネットワークデバイスはスイッチングボードを含まなくてもよく、インターフェースボードがシステム全体のサービスデータ処理機能を引き受ける。分散型の転送アーキテクチャでは、第2ネットワークデバイスは少なくとも1つのスイッチングボードを含み、スイッチングボードを使用することによって複数のインターフェースボード間のデータ交換を実施し、大容量のデータ交換及び処理能力を提供し得る。従って、分散型アーキテクチャにおける第2ネットワークデバイスのデータアクセス及び処理能力は、中央集権的なアーキテクチャにおけるデバイスのそれらよりも強力である。使用されるべき具体的なアーキテクチャは、特定のネットワーキングデプロイメントシナリオに依存する。これはここで制限されない。
本願の実施形態はコンピュータ可読媒体を更に提供する。コンピュータ可読媒体はプログラムコードを記憶している。コンピュータプログラムコードがコンピュータ実行されると、コンピュータは、第1ネットワークデバイスによって実行される方法を実行することができる。コンピュータ可読ストレージは、次の、リードオンリーメモリ(read-only memory,ROM)、プログラム可能ROM(programmable ROM,PROM)、消去可能なPROM(erasable PROM,EPROM)、フラッシュメモリ、電気的EPROM(electrically EPROM,EEPROM)、及びハードドライブ(hard drive)、のうちの1つ以上を含むが、それらに限られない。
本願の実施形態はコンピュータ可読媒体を更に提供する。コンピュータ可読媒体はプログラムコードを記憶している。コンピュータプログラムコードがコンピュータ実行されると、コンピュータは、第2ネットワークデバイスによって実行される方法を実行することができる。コンピュータ可読ストレージは、次の、リードオンリーメモリ(read-only memory,ROM)、プログラム可能ROM(programmable ROM,PROM)、消去可能なPROM(erasable PROM,EPROM)、フラッシュメモリ、電気的EPROM(electrically EPROM,EEPROM)、及びハードドライブ(hard drive)、のうちの1つ以上を含むが、それらに限られない。
本願の実施形態は、第1ネットワークデバイスに適用されるチップシステムを更に提供する。チップシステムは、少なくとも1つのプロセッサ、少なくとも1つのメモリ、及びインターフェース回路を含む。インターフェース回路は、チップシステムと外部との間の情報交換に関与する。少なくとも1つのメモリ、インターフェース回路、及び少なくとも1つのプロセッサはラインにより接続されている。少なくとも1つのメモリは命令を記憶している。命令は、上記の態様の方法での第1ネットワークデバイスの動作を実行するように、少なくとも1つのプロセッサによって実行される。
具体的な実施プロセスにおいて、チップは、中央演算処理装置(central processing unit,CPU)、マイクロコントローラユニット(micro controller unit,MCU)、マイクロプロセッシングユニット(micro processing unit,MIPU)、デジタルシグナルプロセッサ(digital signal processor,DSP)、システム・オン・チップ(system-on-a-chip,SoC)、特定用途向け集積回路(application-specific integrated circuit,ASIC)、フィールドプログラマブルゲートアレイ(field programmable gate array,FPGA)、又はプログラム可能なロジックデバイス(programmable logic device,PLD)の形で実装されてよい。
本願の実施形態は、第2ネットワークデバイスに適用されるチップシステムを更に提供する。チップシステムは、少なくとも1つのプロセッサ、少なくとも1つのメモリ、及びインターフェース回路を含む。インターフェース回路は、チップシステムと外部との間の情報交換に関与する。少なくとも1つのメモリ、インターフェース回路、及び少なくとも1つのプロセッサはラインにより接続されている。少なくとも1つのメモリは命令を記憶している。命令は、上記の態様の方法での第2ネットワークデバイスの動作を実行するように、少なくとも1つのプロセッサによって実行される。
具体的な実施プロセスにおいて、チップは、中央演算処理装置(central processing unit,CPU)、マイクロコントローラユニット(micro controller unit,MCU)、マイクロプロセッシングユニット(micro processing unit,MIPU)、デジタルシグナルプロセッサ(digital signal processor,DSP)、システム・オン・チップ(system-on-a-chip,SoC)、特定用途向け集積回路(application-specific integrated circuit,ASIC)、フィールドプログラマブルゲートアレイ(field programmable gate array,FPGA)、又はプログラム可能なロジックデバイス(programmable logic device,PLD)の形で実装されてよい。
本願の実施形態は、第1ネットワークデバイスに適用されるコンピュータプログラム製品を更に提供する。コンピュータプログラム製品は一連の命令を含み、命令が実行されるとき、上記の態様の方法での第1ネットワークデバイスの動作が実行される。
本願の実施形態は、第2ネットワークデバイスに適用されるコンピュータプログラム製品を更に提供する。コンピュータプログラム製品は一連の命令を含み、命令が実行されるとき、上記の態様の方法での第2ネットワークデバイスの動作が実行される。
上記のプロセスのシーケンス番号は、本願の様々な実施形態で実行順序意味するものではないことが理解されるべきである。プロセスの実行順序は、プロセスの機能及び内部ロジックに基づいて決定されるべきであり、本願の実施形態の実装プロセスに対する如何なる制限としても解釈されるべきではない。
当業者は、本明細書中で開示されている実施形態で記載されている例と組み合わせて、ユニット及びアルゴリズムステップが電子ハードウェア又はコンピュータソフトウェアと電子ハードウェアの組み合わせによって実施されてよい、と認識し得る。機能がハードウェア又はソフトウェアによって実行されるかどうかは、技術的解決法の特定の用途及び設計に依存する。当業者は、異なる方法を用いて、特定の用途ごとに、記載されている機能を実施し得るが、実施が本願の範囲を越えることは考えられるべきではない。
当業者によって明りょうに理解され得るように、便宜上、及び簡潔な記載のために、上記のシステム、装置、及びユニットの詳細な作動プロセスについては、上記の方法の実施形態における対応するプロセスを参照されたい。詳細はここで再び記載されない。
本願で提供されるいくつかの実施形態において、開示されているシステム、装置、及び方法は他の様態で実施されてもよいことが理解されるべきである。例えば、記載されている装置の実施形態は一例にすぎない。例えば、ユニットへの分割は単に論理的な機能分割であり、実際の実施中には他の分割であってもよい。例えば、複数のユニット又はコンポーネントは他のシステムに結合又は一体化されてもよく、あるいは、結合又は直接の結合若しくは通信接続はいくつかのインターフェースにより実施されてよい。装置又はユニット間の間接的な結合又は通信接続は、電気的な、機械的な、又は他の形式で実施されてよい。
別個の部分として記載されているユニットは、物理的に分離していてもいなくてもよく、ユニットとして表示されている部分は物理ユニットであってもなくてもよく、すなわち、1つの場所に位置してよく、あるいは、複数のネットワークユニットに分散してもよい。一部又は全てのユニットは、実施形態の解決法の目的を達成するために実際の要件に従って選択されてもよい。
更に、本願の実施形態における機能ユニットは、1つの処理ユニットに一体化されてもよく、ユニットの夫々は、物理的に単独で存在してもよく、あるいは、2つ以上のユニットは1つのユニットにまとめられる。
機能がソフトウェア機能ユニットの形で実施され、独立した製品として販売又は使用される場合に、機能はコンピュータ可読記憶媒体に記憶されてもよい。そのような理解に基づいて、本願の技術的解決法は本質的に、又は従来技術に寄与する部分、若しくは一部の技術的解決法は、ソフトウェア製品の形で実施されてもよい。コンピュータソフトウェア製品は記憶媒体に記憶され、コンピュータデバイス(パーソナルコンピュータ、サーバ、ネットワークデバイス、などであってよい)に、本願の実施形態で記載されている方法のステップの一部又は全部を実行するよう指示するためのいくつかの命令を含む。上記の記憶媒体は、USBフラッシュドライブ、リムーバブルハードディスク、リードオンリーメモリ(read-only memory,ROM)、ランダムアクセスメモリ(random access memory,RAM)、磁気ディスク、又は光学ディスクなどの、プログラムコードを記憶することができる任意の媒体を含む。
以上の記載は、本願の具体的な実施に過ぎず、本願の保護範囲を制限する意図はない。本願で開示されている技術的範囲内で当業者が容易に想到可能な如何なる変形又は置換も、本願の保護範囲内に入るべきである。従って、本願の保護範囲は、特許請求の範囲の保護範囲に従うべきである。
本願は、2020年11が11日付けで、「BIER PACKET FORWARDING METHOD, DEVICE, AND SYSTEM」との発明の名称で出願された中国特許出願第202011250272.9号に対する優先権を主張するものであり、この出願は、その全文を参照により本願に援用される。
他の可能な実施においては、第1対応はソースアドレスを更に含み、第1ネットワークデバイスは、IPv6ヘッダのソースアドレス、サービス識別子、及び第1対応に基づいて、VRFテーブルを決定する。
第8の態様に従って、第2ネットワークデバイスが提供される。第2ネットワークデバイスは、上記の方法における第2ネットワークデバイスの動作を実装する機能を備えている。機能は、ハードウェアに基づいて実施されてよく、あるいは、ハードウェアが対応するソフトウェアを実行することに基づいて実施されてもよい。ハードウェア又はソフトウェアは、上記の機能に対応する1つ以上のモジュールを含む。
第2ネットワークデバイスは、メモリを更に含んでもよい。メモリはプロセッサへ結合され、第2ネットワークデバイスにとって必要であるプログラム命令及びデータを記憶してよい。
第13の態様に従って、コンピュータ可読媒体が提供される。コンピュータ可読媒体はプログラムコードを記憶している。コンピュータプログラムコードがコンピュータで実行されると、コンピュータは、第1の態様又は第1の態様の可能な実施のうちのいずれか1つに従う方法を実行することができる。コンピュータ可読媒体は、次の、リードオンリーメモリ(read-only memory,ROM)、プログラム可能ROM(programmable ROM,PROM)、消去可能なPROM(erasable PROM,EPROM)、フラッシュメモリ、電気的EPROM(electrically EPROM,EEPROM)、及びハードドライブ(hard drive)、のうちの1つ以上を含むが、それらに限られない。
第14の態様に従って、コンピュータ可読媒体が提供される。コンピュータ可読媒体はプログラムコードを記憶している。コンピュータプログラムコードがコンピュータで実行されると、コンピュータは、第2の態様又は第2の態様の可能な実施のうちのいずれか1つに従う方法を実行することができる。コンピュータ可読媒体は、次の、リードオンリーメモリ(read-only memory,ROM)、プログラム可能ROM(programmable ROM,PROM)、消去可能なPROM(erasable PROM,EPROM)、フラッシュメモリ、電気的EPROM(electrically EPROM,EEPROM)、及びハードドライブ(hard drive)、のうちの1つ以上を含むが、それらに限られない。
図2は、可能なBIERv6カプセル化の略ブロック図である。図2に示されるように、BIERヘッダは、IPv6拡張ヘッダに位置してよく、例えば、DOHに位置してよい。
(3)トラフィッククラス(traffic class,TC)フィールド
図4は、他の可能なBIERヘッダフォーマットの略ブロック図である。図3に示されるBIERヘッダフォーマットと比較して、図4に示されるBIERヘッダフォーマットは、BIFT-IDフィールドを含まず、3つのフィールド:SDフィールド、BSLフィールド、及びSIフィールドを含む。換言すれば、図4に示されるBIERヘッダフォーマットは、3つのフィールド:SDフィールド、BSLフィールド、及びSIフィールドを直接含み、SD/BSL/SI値は、BIFT IDフィールドからマッピングにより取得される必要がない。
同様に、デバイスCは、BIERパケットヘッダ及びBIERパケットヘッダのビット列に関する情報に基づいて、パケットをデバイスD及びデバイスFへ送信する。送信中、デバイスDのユニキャストアドレス(例えば、D::100)及びデバイスFのユニキャストアドレス(例えば、F::100)は、Ipv6ヘッダ内のあて先アドレスフィールドにおいて使用されてもよい。
図13は、本願の実施形態に係る他の第2ネットワークデバイス2300のハードウェア構造の模式図である。図13に示される第2ネットワークデバイス2300は、上記の実施形態の方法で第2ネットワークデバイスによって実行された対応するステップを実行し得る。
図13に示されるように、第2ネットワークデバイス2300はメイン制御ボード2310、インターフェースボード2330、スイッチングボード2320、及びインターフェースボード2340を含む。メイン制御ボード2310、インターフェースボード2330、インターフェースボード2340、及びスイッチングボード2320は、インターワーキングのためにシステムバスを通じてシステムバックプレーンへ接続されている。メイン制御ボード2310は、システム管理、デバイス保守、及びプロトコル処理などの機能を完了するよう構成される。スイッチングボード2320は、インターフェースボード間でデータを交換するよう構成される(インターフェースボードはラインカード又はサービスボードとも呼ばれる)。インターフェースボード2330及びインターフェースボード2340は、様々なサービスインターフェース(POSインターフェース、GEインターフェース、及びATMインターフェースなど)を提供し、データパケットを転送するよう構成される。
インターフェースボード2330は中央演算処理ユニット2331、転送エントリメモリ2334、物理インターフェースカード2333、及びネットワークプロセッサ2332を含み得る。中央演算処理ユニット2331は、インターフェースボードを制御及び管理し、メイン制御ボード上の中央演算処理ユニットと通信するよう構成される。転送エントリメモリ2334は、エントリ、例えば、上記のBIFTを記憶するよう構成される。物理インターフェースカード2333は、トラフィックを受信及び送信するよう構成される。
本願の実施形態はコンピュータ可読媒体を更に提供する。コンピュータ可読媒体はプログラムコードを記憶している。コンピュータプログラムコードがコンピュータ実行されると、コンピュータは、第1ネットワークデバイスによって実行される方法を実行することができる。コンピュータ可読媒体は、次の、リードオンリーメモリ(read-only memory,ROM)、プログラム可能ROM(programmable ROM,PROM)、消去可能なPROM(erasable PROM,EPROM)、フラッシュメモリ、電気的EPROM(electrically EPROM,EEPROM)、及びハードドライブ(hard drive)、のうちの1つ以上を含むが、それらに限られない。
本願の実施形態はコンピュータ可読媒体を更に提供する。コンピュータ可読媒体はプログラムコードを記憶している。コンピュータプログラムコードがコンピュータ実行されると、コンピュータは、第2ネットワークデバイスによって実行される方法を実行することができる。コンピュータ可読媒体は、次の、リードオンリーメモリ(read-only memory,ROM)、プログラム可能ROM(programmable ROM,PROM)、消去可能なPROM(erasable PROM,EPROM)、フラッシュメモリ、電気的EPROM(electrically EPROM,EEPROM)、及びハードドライブ(hard drive)、のうちの1つ以上を含むが、それらに限られない。
Claims (31)
- ビットインデックス明示的レプリケーションBIERパケット転送方法であって、
第1ネットワークデバイスによって、第2ネットワークデバイスによって送信されたBIERパケットを受信することであり、前記BIERパケットはインターネットプロトコルバージョン6IPv6ヘッダ、ビットインデックス明示的レプリケーションBIERヘッダ、及びマルチキャストパケットを含み、前記IPv6ヘッダのあて先アドレス又は前記BIERヘッダの第1フィールドはサービス識別子を運び、前記サービス識別子は仮想プライベートネットワークVPNインスタンスを識別する、前記受信することと、
前記第1ネットワークデバイスによって、前記サービス識別子及び第1対応に基づいて仮想ルート転送VRFテーブルを決定することであり、前記第1対応は前記サービス識別子と前記VRFテーブルとの間の対応を含む、前記決定することと、
前記第1ネットワークデバイスによって、前記VRFテーブルに基づいて前記VRFテーブル内の第1カスタマエッジCEデバイスへ前記マルチキャストパケットを送信することと
を有する方法。 - 前記サービス識別子は、前記IPv6ヘッダの前記あて先アドレスのビットの一部で運ばれ、前記あて先アドレスは、前記BIERパケットに対してBIER転送を実行することを指示する、
請求項1に記載の方法。 - 前記あて先アドレスの前記ビットの一部は、前記あて先アドレスの引数部である、
請求項2に記載の方法。 - 前記BIERヘッダの前記第1フィールドは、次の、差別化されたサービスコードポイントDSCPフィールド、ビット転送入口ルータ識別子BFIR-idフィールド、及びプロトコルprotoフィールド、のうちのいずれか1つのフィールド又はそれらの組み合わせである、
請求項1乃至3のうちいずれか一項に記載の方法。 - 当該方法は、
前記第1ネットワークデバイスによって制御パケットを受信することであり、前記制御パケットは前記サービス識別子と前記VRFテーブルとの間の前記対応を含む、ことと、
前記第1ネットワークデバイスによって前記サービス識別子と前記VRFテーブルとの間の前記対応を記憶することと
を更に有する、
請求項1乃至4のうちいずれか一項に記載の方法。 - 前記第1対応は、ソースアドレスを更に含み、
前記第1ネットワークデバイスによって、前記サービス識別子及び第1対応に基づいて仮想ルート転送VRFテーブルを決定することは、
前記第1ネットワークデバイスによって、前記IPv6ヘッダの前記ソースアドレス、前記サービス識別子、及び前記第1対応に基づいて前記VRFテーブルを決定することを有する、
請求項1乃至5のうちいずれか一項に記載の方法。 - ビットインデックス明示的レプリケーションBIERパケット転送方法であって、
第2ネットワークデバイスによってマルチキャストパケットを取得することと、
前記第2ネットワークデバイスによって、BIERパケットを取得するよう、前記マルチキャストパケットが属する仮想プライベートネットワークVPNインスタンスに基づいて前記マルチキャストパケットをカプセル化することであり、前記BIERパケットはインターネットプロトコルバージョン6IPv6ヘッダ、ビットインデックス明示的レプリケーションBIERヘッダ、及び前記マルチキャストパケットを含み、前記IPv6ヘッダのあて先アドレス又は前記BIERヘッダの第1フィールドはサービス識別子を運び、前記サービス識別子は前記VPNインスタンスを識別する、前記カプセル化することと、
前記第2ネットワークデバイスによって前記BIERパケットを第1ネットワークデバイスへ送信することと
を有する方法。 - 前記サービス識別子は、前記IPv6ヘッダの前記あて先アドレスのビットの一部で運ばれ、前記あて先アドレスは、前記BIERパケットに対してBIER転送を実行することを前記第1ネットワークデバイスに指示する、
請求項7に記載の方法。 - 前記あて先アドレスの前記ビットの一部は、前記あて先アドレスの引数部である、
請求項8に記載の方法。 - 前記BIERヘッダの前記第1フィールドは、次の、差別化されたサービスコードポイントDSCPフィールド、ビット転送入口ルータ識別子BFIR-idフィールド、及びプロトコルprotoフィールド、のうちのいずれか1つのフィールド又はそれらの組み合わせである、
請求項7乃至9のうちいずれか一項に記載の方法。 - 当該方法は、
前記第2ネットワークデバイスによって前記サービス識別子を前記VPNインスタンスに割り当てることと、
前記第2ネットワークデバイスによって第1対応を確立することであり、前記第1対応は前記サービス識別子と前記VPNに対応するVRFテーブルとの間の対応を含む、前記確立することと
を更に有する、
請求項7乃至10のうちいずれか一項に記載の方法。 - 当該方法は、
前記第2ネットワークデバイスによって制御パケットを前記第1ネットワークデバイスへ送信することであり、前記制御パケットは前記サービス識別子と前記VRFテーブルとの間の前記対応を含む、こと
を更に有する、
請求項11に記載の方法。 - 前記制御パケットはボーダーゲートウェイプロトコルBGPパケットである、
請求項12に記載の方法。 - 第2ネットワークデバイスによって送信されたBIERパケットを受信するよう構成される受信モジュールであり、前記BIERパケットはインターネットプロトコルバージョン6IPv6ヘッダ、ビットインデックス明示的レプリケーションBIERヘッダ、及びマルチキャストパケットを含み、前記IPv6ヘッダのあて先アドレス又は前記BIERヘッダの第1フィールドはサービス識別子を運び、前記サービス識別子は仮想プライベートネットワークVPNインスタンスを識別する、前記受信モジュールと、
前記サービス識別子及び第1対応に基づいて仮想ルート転送VRFテーブルを決定するよう構成される処理モジュールであり、前記第1対応は前記サービス識別子と前記VRFテーブルとの間の対応を含む、前記処理モジュールと、
前記VRFテーブルに基づいて前記VRFテーブル内の第1カスタマエッジCEデバイスへ前記マルチキャストパケットを送信するよう構成される送信モジュールと
を有する第1ネットワークデバイス。 - 前記サービス識別子は、前記IPv6ヘッダの前記あて先アドレスのビットの一部で運ばれ、前記あて先アドレスは、前記BIERパケットに対してBIER転送を実行することを指示する、
請求項14に記載の第1ネットワークデバイス。 - 前記あて先アドレスの前記ビットの一部は、前記あて先アドレスの引数部である、
請求項15に記載の第1ネットワークデバイス。 - 前記BIERヘッダの前記第1フィールドは、次の、差別化されたサービスコードポイントDSCPフィールド、ビット転送入口ルータ識別子BFIR-idフィールド、及びプロトコルprotoフィールド、のうちのいずれか1つのフィールド又はそれらの組み合わせである、
請求項14乃至16のうちいずれか一項に記載の第1ネットワークデバイス。 - 前記受信モジュールは、制御パケットを受信するよう更に構成され、前記制御パケットは前記サービス識別子と前記VRFテーブルとの間の前記対応を含み、
前記処理モジュールは、前記サービス識別子と前記VRFテーブルとの間の前記対応を記憶するよう更に構成される、
請求項14乃至17のうちいずれか一項に記載の第1ネットワークデバイス。 - 前記第1対応は、ソースアドレスを更に含み、
前記処理モジュールは、前記IPv6ヘッダの前記ソースアドレス、前記サービス識別子、及び前記第1対応に基づいて前記VRFテーブルを決定するよう特に構成される、
請求項14乃至18のうちいずれか一項に記載の第1ネットワークデバイス。 - マルチキャストパケットを取得するよう構成される受信モジュールと、
BIERパケットを取得するよう、前記マルチキャストパケットが属する仮想プライベートネットワークVPNインスタンスに基づいて前記マルチキャストパケットをカプセル化するよう更に構成されること処理モジュールであり、前記BIERパケットはインターネットプロトコルバージョン6IPv6ヘッダ、ビットインデックス明示的レプリケーションBIERヘッダ、及び前記マルチキャストパケットを含み、前記IPv6ヘッダのあて先アドレス又は前記BIERヘッダの第1フィールドはサービス識別子を運び、前記サービス識別子は前記VPNインスタンスを識別する、前記処理モジュールと、
前記BIERパケットを第1ネットワークデバイスへ送信するよう構成される送信モジュールと
を有する第2ネットワークデバイス。 - 前記サービス識別子は、前記IPv6ヘッダの前記あて先アドレスのビットの一部で運ばれ、前記あて先アドレスは、前記BIERパケットに対してBIER転送を実行することを前記第1ネットワークデバイスに指示する、
請求項20に記載の第2ネットワークデバイス。 - 前記あて先アドレスの前記ビットの一部は、前記あて先アドレスの引数部である、
請求項21に記載の第2ネットワークデバイス。 - 前記BIERヘッダの前記第1フィールドは、次の、差別化されたサービスコードポイントDSCPフィールド、ビット転送入口ルータ識別子BFIR-idフィールド、及びプロトコルprotoフィールド、のうちのいずれか1つのフィールド又はそれらの組み合わせである、
請求項20乃至22のうちいずれか一項に記載の第2ネットワークデバイス。 - 前記処理モジュールは、前記サービス識別子を前記VPNインスタンスに割り当て、かつ、第1対応を確立するよう更に構成され、
前記第1対応は、前記サービス識別子と前記VPNに対応するVRFテーブルとの間の対応を含む、
請求項20乃至23のうちいずれか一項に記載の第2ネットワークデバイス。 - 前記送信モジュールは、制御パケットを前記第1ネットワークデバイスへ送信するよう更に構成され、
前記制御パケットは前記サービス識別子と前記VRFテーブルとの間の前記対応を含む、
請求項24に記載の第2ネットワークデバイス。 - 前記制御パケットはボーダーゲートウェイプロトコルBGPパケットである、
請求項25に記載の第2ネットワークデバイス。 - プロセッサ及びメモリを有し、
前記メモリは、プログラムを記憶するよう構成され、
前記プロセッサは、前記メモリから前記プログラムを呼び出し、前記プログラムを実行して請求項1乃至6のうちいずれか一項に記載の方法を実行するよう構成される、
第1ネットワークデバイス。 - プロセッサ及びメモリを有し、
前記メモリは、プログラムを記憶するよう構成され、
前記プロセッサは、前記メモリから前記プログラムを呼び出し、前記プログラムを実行して請求項7乃至13のうちいずれか一項に記載の方法を実行するよう構成される、
第2ネットワークデバイス。 - 請求項14乃至19のうちいずれか一項に記載の第1ネットワークデバイスと、請求項20乃至26のうちいずれか一項に記載の第2ネットワークデバイスとを有するBIERパケット転送システム。
- コンピュータプログラム又はコードを有し、
前記コンピュータプログラム又はコードがコンピュータで実行されると、前記コンピュータは、請求項1乃至6のうちいずれか一項に記載の方法を実行することができる、
コンピュータ可読記憶媒体。 - コンピュータプログラム又はコードを有し、
前記コンピュータプログラム又はコードがコンピュータで実行されると、前記コンピュータは、請求項7乃至13のうちいずれか一項に記載の方法を実行することができる、
コンピュータ可読記憶媒体。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010702525 | 2020-07-21 | ||
CN202011250272.9A CN114095305A (zh) | 2020-07-21 | 2020-11-11 | Bier报文转发的方法、设备以及系统 |
CN202011250272.9 | 2020-11-11 | ||
PCT/CN2021/129377 WO2022100554A1 (zh) | 2020-07-21 | 2021-11-08 | Bier报文转发的方法、设备以及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023549797A true JP2023549797A (ja) | 2023-11-29 |
Family
ID=80295832
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023528300A Pending JP2023549797A (ja) | 2020-07-21 | 2021-11-08 | Bierパケット転送方法、デバイス、及びシステム |
Country Status (6)
Country | Link |
---|---|
US (1) | US20230283554A1 (ja) |
EP (1) | EP4231597A4 (ja) |
JP (1) | JP2023549797A (ja) |
KR (1) | KR20230101903A (ja) |
CN (1) | CN114095305A (ja) |
WO (1) | WO2022100554A1 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11705983B2 (en) * | 2021-03-22 | 2023-07-18 | Cisco Technology, Inc. | Efficient BIER forwarding over varying BSL domain using header stitching |
CN114978985B (zh) * | 2022-05-20 | 2024-08-06 | 中国电信股份有限公司 | 一种报文处理方法、装置、电子设备及存储介质 |
CN115118655B (zh) * | 2022-06-21 | 2023-12-12 | 阿里巴巴(中国)有限公司 | 跨网络报文转发方法、装置、电子设备及可读存储介质 |
CN115314436B (zh) * | 2022-07-11 | 2023-05-23 | 烽火通信科技股份有限公司 | 一种bier报文转发方法及装置 |
WO2024016869A1 (zh) * | 2022-07-21 | 2024-01-25 | 华为技术有限公司 | 一种组播配置方法及装置 |
CN115442294B (zh) * | 2022-07-29 | 2023-10-31 | 中盈优创资讯科技有限公司 | 一种基于bier和ipv 6组播的文件分发方法及装置 |
CN117768063A (zh) * | 2022-09-15 | 2024-03-26 | 中兴通讯股份有限公司 | 信息通告方法、网络设备和计算机可读存储介质 |
CN117749700A (zh) * | 2022-09-22 | 2024-03-22 | 华为技术有限公司 | 对应关系的获取方法、参数通告方法、装置、设备及介质 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106656524A (zh) * | 2015-10-30 | 2017-05-10 | 中兴通讯股份有限公司 | 一种bier控制信息的传输方法、装置和系统 |
CN107222449B (zh) * | 2016-03-21 | 2020-06-16 | 华为技术有限公司 | 基于流规则协议的通信方法、设备和系统 |
WO2018193285A1 (en) * | 2017-04-17 | 2018-10-25 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for enabling a scalable multicast virtual private network service across a multicast label distribution protocol network using in-band signaling |
CN111147383B (zh) * | 2018-11-02 | 2021-06-29 | 华为技术有限公司 | 报文转发的方法、发送报文的装置和接收报文的装置 |
CN114884867A (zh) * | 2019-03-08 | 2022-08-09 | 华为技术有限公司 | 一种bier报文的发送方法和装置 |
CN113726667B (zh) * | 2019-09-23 | 2022-11-18 | 华为技术有限公司 | 一种反向路径转发rpf检查方法及装置 |
CN110891022B (zh) * | 2019-11-20 | 2021-11-16 | Ut斯达康通讯有限公司 | 基于SRv6的虚拟子网标识符发布方法和装置 |
CN112491706B (zh) * | 2020-07-31 | 2024-07-23 | 中兴通讯股份有限公司 | 数据报文的处理方法及装置、存储介质、电子装置 |
-
2020
- 2020-11-11 CN CN202011250272.9A patent/CN114095305A/zh active Pending
-
2021
- 2021-11-08 WO PCT/CN2021/129377 patent/WO2022100554A1/zh active Application Filing
- 2021-11-08 KR KR1020237019574A patent/KR20230101903A/ko unknown
- 2021-11-08 EP EP21891079.2A patent/EP4231597A4/en active Pending
- 2021-11-08 JP JP2023528300A patent/JP2023549797A/ja active Pending
-
2023
- 2023-05-10 US US18/315,166 patent/US20230283554A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
WO2022100554A1 (zh) | 2022-05-19 |
CN114095305A (zh) | 2022-02-25 |
US20230283554A1 (en) | 2023-09-07 |
KR20230101903A (ko) | 2023-07-06 |
EP4231597A1 (en) | 2023-08-23 |
EP4231597A4 (en) | 2024-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7419510B2 (ja) | Bier転送項目構築方法、装置、およびシステム | |
JP7208386B2 (ja) | パケット転送方法、パケット送信装置、およびパケット受信装置 | |
JP2023549797A (ja) | Bierパケット転送方法、デバイス、及びシステム | |
US20210409242A1 (en) | BIER Packet Sending Method and Apparatus | |
US20220200820A1 (en) | Packet Sending Method and Apparatus | |
CN112468398B (zh) | 一种vpn的处理方法和pe设备以及系统 | |
CN113114576B (zh) | 报文发送的方法、设备和系统 | |
US20230318974A1 (en) | BIER Packet Forwarding Method, Device, and System | |
CN112822097B (zh) | 报文转发的方法、第一网络设备以及第一设备组 | |
CN113285878B (zh) | 负载分担的方法、第一网络设备 | |
US20220337521A1 (en) | Packet Sending Method, Device and System | |
JP7273125B2 (ja) | BIERv6パケットを送信するための方法および第1のネットワークデバイス | |
JP7528373B2 (ja) | パケット送信方法、対応関係取得方法、装置、およびシステム | |
WO2021254454A1 (zh) | Bier oam检测的方法、设备以及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230621 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230621 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240614 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240625 |