本出願は、経路処理方法を提供する。第1のネットワークドメイン内の第2のネットワーク装置によって送信された第1の経路を受信すると、第1のネットワーク装置は、第1の経路内の第1の識別子に基づいて、対応する第2の識別子を第1の経路に割り当て、第2のネットワークドメイン内の第3のネットワーク装置に第2の識別子を担う第2の経路を送信する。第1の識別子と第2の識別子の両方が、ネットワーク装置間のパケット伝送をガイドするために使用される。第1のネットワークドメインの第1の識別子に基づいて第2のネットワークドメインの第2の識別子を割り当て、第2の識別子を担う第2の経路を使ってことにより、クロスネットワークドメインシナリオで通常の経路アドバタイズメントを実施することができ、縫合ノードに大量のコンフィグレーションを加えることを避けて、コンフィグレーション圧力を減らすことができる。さらに、第1のネットワーク装置の転送パスを識別子間の1対1の対応に基づいて制御することができ、通常のパケット処理を保証できる。
本出願の第1の態様は、以下を含む経路処理方法を提供する。第1のネットワーク装置は、第1のネットワークドメイン内に配置された第2のネットワーク装置によって送信された第1の経路を受信し、第1の経路は第1の識別子を含む。第1のネットワーク装置は、第1の識別子に基づいて、第1の経路に対応する第2の識別子を割り当てる。第1のネットワーク装置は、第1の経路に基づいて、第2の識別子を含む第2の経路を、第2のネットワークドメイン内に配置された第3のネットワーク装置に送信する。前記第1のネットワークドメインおよび前記第2のネットワークドメインにおけるパケット伝送には異なる転送タイプが使用され、前記第2の識別子は第1のパケットを前記第1のネットワーク装置に転送するように第3のネットワーク装置に指示するために使用され、第1の識別子は前記第1のパケットを前記第2のネットワーク装置に転送するように前記第1のネットワーク装置に指示するために使用される。第1のネットワークドメインおよび第2のネットワークドメインにおけるパケット伝送には、異なる転送タイプが使用されることは、第1のネットワークドメインと第2のネットワークドメインにおいてパケット伝送を実施するために異なるタイプのトンネリング技術が使用されることである。
本出願では、第2のネットワークドメインの第2の識別子は、第1のネットワークドメインの第1の識別子に基づいて割り当てられ、第2の経路は第2の識別子を担う。これにより、クロスネットワークドメインシナリオで通常の経路アドバタイズメントを実施することができ、縫合ノードに大量のコンフィグレーションを追加することを避け、コンフィグレーション圧力を減らすことができる。
任意的に、可能な実施形態において、第1の経路は、第2のネットワーク装置のアドレスをさらに含み、第1のネットワーク装置が、第1の識別子に基づいて、対応する第2の識別子を第1の経路に割り当てることは、第1のネットワーク装置が、第2のネットワーク装置のアドレスおよび第1の識別子に基づいて、対応する第2の識別子を第1の経路に割り当てることを含む。言い換えると、第1のネットワーク装置に対して、ネットワーク装置アドレスが同じで第1の識別子が同じである場合、第1のネットワーク装置は対応する第2の識別子を割り当てる。
本出願では、第2のネットワークドメイン内の識別子は、第1のネットワークドメイン内の経路を送信するネットワーク装置のアドレスと、経路内の識別子とに基づいて割り当てられ、第1のネットワークドメイン内の複数のネットワーク装置によって送信される経路が同一の識別子を担う場合、第2のネットワークドメイン内の複数の識別子が割り当てられる。このようにして、第2のネットワークドメイン内の識別子と第1のネットワークドメイン内の転送パスとの間の1対1の対応が形成され、正常なパケット処理が保証される。
任意的に、可能な実施形態では、第1の識別子は、第1の経路に対応するサービスソースを識別するために使用される。例えば、サービスソースは、第2のネットワーク装置に接続された仮想プライベートネットワーク(Virtual Private Network、VPN)インスタンス、第2のネットワーク装置上のアウトバウンドインターフェース、または第2のネットワーク装置に接続された仮想マシンであってもよい。
任意的に、可能な実施形態において、本方法はさらに次を含む。第1のネットワーク装置が第2のネットワーク装置によって送信された第3の経路を受信し、第3の経路は第2のネットワーク装置のアドレスと第3の識別子を含み、第3の識別子と第1の識別子は異なるサービスソースを識別するために使用される。第1のネットワーク装置は、第2のネットワーク装置のアドレスと第3の識別子に基づいて、第3の経路に対応する第4の識別子を割り当てる。第1のネットワーク装置は、第3の経路に基づいて第4の経路を第3のネットワーク装置に送信し、第4の経路は第4の識別子を含み、第4の識別子は、第3のパケットを第1のネットワーク装置に転送するように第3のネットワーク装置に指示するために使用される。
本出願では、第1のネットワーク装置は、第1のネットワークドメイン内の複数のネットワーク装置に接続されてもよく、異なる受信した経路に基づいて、第2のネットワークドメイン内の経路の複数の識別子を割り当てて、第2のネットワークドメイン内の複数の識別子と第1のネットワークドメイン内の複数の転送パスとの間の1対1対応が形成され、パケットがネットワークドメインをわたって柔軟に転送され得ることが保証される。
任意的に、可能な実施形態において、本方法はさらに次を含む。第1のネットワーク装置は、第4のネットワーク装置によって送信された第5の経路を受信し、第5の経路は、第4のネットワーク装置のアドレスと第1の識別子を含み、第5の経路のプレフィックスアドレスは、第1の経路のプレフィックスアドレスと同じであり、第4のネットワーク装置は、第1のネットワークドメインに配置され、第4のネットワーク装置と第2のネットワーク装置は、例えば、同じ仮想マシンまたはVPNインスタンスに接続される。第1のネットワーク装置は、第4のネットワーク装置のアドレスと第1の識別子に基づいて、対応する第5の識別子を第5の経路に割り当て、第4のネットワーク装置のアドレスは、例えば、第5の経路のネクストホップフィールドに担われ得る。第1のネットワーク装置は、第5の経路に基づいて第3のネットワーク装置に第6の経路を送信し、第6の経路は第5の識別子を含み、第5の識別子は、第2のパケットを第1のネットワーク装置に転送するよう第3のネットワーク装置に指示するために使用される。
本出願では、第1のネットワークドメインにおいて経路を送信するネットワーク装置のアドレスと、経路内の識別子とに基づいて、第2のネットワークドメイン内の識別子が割り当てられ、第1のネットワークドメイン内の複数のネットワーク装置によって送信される経路が同一の識別子を担う場合、第1のネットワークドメイン内の経路を送信する複数の異なるネットワーク装置に基づいて、第2のネットワークドメイン内の複数の異なる対応する識別子が割り当てられてもよい。このようにして、第2のネットワークドメインの識別子と第1のネットワークドメインの転送パスとの間の1対1対応が形成され、通常のパケット処理が保証され、いくつかのサービスシナリオにおける負荷分散が保証される。
任意的に、可能な実施形態において、本方法はさらに次を含む。第1のネットワーク装置が第1の識別子と第2の識別子との間の対応を確立する。第1のネットワーク装置は第3のネットワーク装置によって送信された第1のパケットを受信し、第1のパケットは第2の識別子を含む。第1のネットワーク装置が、第2の識別子と対応に基づいて第1のパケットを更新し、第2のパケットを取得し、第2のパケットは第1の識別子を含む。第1のネットワーク装置は、第2のパケットを第2のネットワーク装置に送信する。
本出願では、第1のネットワーク装置が、第1のネットワークドメインから受信した経路内の識別子と、第1のネットワーク装置により第2のネットワークドメインに割り当てられた識別子との対応をあらかじめ確立しておくことで、第2のネットワークドメインに割り当てた識別子を含むパケットを受信した場合、第1のネットワーク装置が、パケット内の識別子に基づいて第1のネットワークドメイン内の識別子を判定し、通常のパケット伝送を実現する。
任意的に、可能な実施形態において、第1のネットワーク装置によって確立された対応は、第2のネットワーク装置のアドレス、第1の識別子、および第2の識別子の間の対応を含み、第1のネットワーク装置が第2のパケットを第2のネットワーク装置に送信することは、第1のネットワーク装置が、第1の識別子および対応に基づいて第2のネットワーク装置のアドレスを決定し、第2のネットワーク装置のアドレスに基づいて第2のパケットを第2のネットワーク装置に送信することを含む。
任意的に、可能な実施形態では、MPLSトンネルは、第1のネットワークドメインのパケット送信に使用され、SRv6トンネルは、第2のネットワークドメインのパケット送信に使用され、またはSRv6トンネルは第1のネットワークドメインのパケット送信に使用され、MPLSトンネルは、第2のネットワークドメインのパケット送信に使用される。
任意的に、可能な実施形態では、第1の識別子はセグメント識別子(segment identifier、SID)であり、第2の識別子はMPLSラベルであり、または第1の識別子はMPLSラベルであり、第2の識別子はSIDである。
任意的に、可能な実施形態では、第1のネットワーク装置は、データセンターのゲートウェイ装置、またはインターネットプロトコル無線アクセスネットワーク(Internet Protocol Radio Access Network、IP RAN)の集約装置を含む。
任意的に、可能な実施形態では、第2のネットワーク装置は、プロバイダエッジ(provider edge、PE)装置を含む。
本出願の第2の態様は、トランシーバユニットおよび処理ユニットを含む第1のネットワーク装置を提供する。トランシーバユニットは、第2のネットワーク装置によって送信された第1の経路を受信するように構成され、第1の経路が第1の識別子を含む。処理ユニットは、第1の識別子に基づいて、第1の経路に対応する第2の識別子を割り当てるように構成される。トランシーバユニットは、第1の経路に基づいて第3のネットワーク装置に第2の経路を送信するように構成され、第2の経路は第2の識別子を含む。第2のネットワーク装置は、第1のネットワークドメインに配置され、第3のネットワーク装置は、第2のネットワークドメインに配置され、第1のネットワークドメインおよび第2のネットワークドメインにおけるパケット伝送のために異なる転送タイプが使用され、第2の識別子は、第1のパケットを第1のネットワーク装置に転送するように第3のネットワーク装置に指示するために使用され、第1の識別子は、第1のパケットを第2のネットワーク装置に転送するように第1のネットワーク装置に指示するために使用される。
任意的に、可能な実施形態では、第1の経路は、第2のネットワーク装置のアドレスをさらに含み、処理ユニットは、第2のネットワーク装置のアドレスおよび第1の識別子に基づいて、対応する第2の識別子を第1の経路に割り当てるように具体的に構成される。
任意的に、可能な実施形態では、第1の識別子は、第1の経路に対応するサービスソースを識別するために使用される。
任意的に、可能な実施形態では、サービスソースは、第2のネットワーク装置に接続されたVPNインスタンス、第2のネットワーク装置上のアウトバウンドインターフェース、または第2のネットワーク装置に接続された仮想マシンを含む。
任意的に、可能な実施形態では、トランシーバユニットは、さらに、第2のネットワーク装置によって送信された第3の経路を受信するように構成され、第3の経路は、第2のネットワーク装置のアドレスと第3の識別子を含み、第3の識別子と第1の識別子は、異なるサービスソースを識別するために使用され、処理ユニットは、第2のネットワーク装置のアドレスおよび第3の識別子に基づいて、第3の経路に対応する第4の識別子を割り当てるようにさらに構成される。トランシーバユニットは、第3の経路に基づいて第4の経路を第3のネットワーク装置に送信するようにさらに構成され、第4の経路は、第4の識別子を含み、第4の識別子は、第3のパケットを第1のネットワーク装置に転送するように第3のネットワーク装置に指示するために使用される。
任意的に、可能な実施形態では、トランシーバユニットはさらに、第4のネットワーク装置によって送信された第5の経路を受信するように構成され、第5の経路は、第4のネットワーク装置のアドレスと第1の識別子を含み、第5の経路のプレフィックスアドレスは、第1の経路のプレフィックスアドレスと同じであり、第4のネットワーク装置は、第1のネットワークドメイン内に配置される。処理ユニットは、第4のネットワーク装置のアドレスと第1の識別子に基づいて、対応する第5の識別子を第5の経路に割り当てるようにさらに構成される。トランシーバユニットは、第3の経路に基づいて、第6の経路を第3のネットワーク装置に送信するようにさらに構成され、第6の経路は、第5の識別子を含み、第5の識別子は、第2のパケットを第1のネットワーク装置に転送するように第3のネットワーク装置に指示するために使用される。
任意的に、可能な実施形態において、処理ユニットは、第1の識別子と第2の識別子との間の対応を確立するようにさらに構成される。トランシーバユニットは、第3のネットワーク装置によって送信された第1のパケットを受信するようにさらに構成され、第1のパケットは、第2の識別子を含む。処理ユニットは、第2の識別子と対応に基づいて第1のパケットを更新して、第2のパケットを取得するようにさらに構成され、第2のパケットは、第1の識別子を含む。トランシーバユニットは、第2のパケットを第2のネットワーク装置に送信するようにさらに構成される。
任意的に、可能な実施形態では、第1のネットワーク装置によって確立される対応は、第2のネットワーク装置のアドレス、第1の識別子、および第2の識別子の間の対応を含み、処理ユニットは、第1の識別子および対応に基づいて第2のネットワーク装置のアドレスを決定し、第2のネットワーク装置のアドレスに基づいて、第2のパケットを第2のネットワーク装置に送るようにトランシーバユニットを制御するようにさらに構成される。
任意的に、可能な実施形態では、MPLSトンネルは、第1のネットワークドメインのパケット送信に使用され、SRv6トンネルは、第2のネットワークドメインのパケット送信に使用されるか、又は第1のネットワークドメインのパケット送信に使用され、MPLSトンネルは、第2のネットワークドメインのパケット送信に使用される。
任意的に、可能な実施形態では、第1の識別子がSIDで、第2の識別子がMPLSラベルであるか、第1の識別子がMPLSラベルで、第2の識別子がSIDである。
任意的に、可能な実施形態では、第1のネットワーク装置は、データセンターのゲートウェイ装置またはIP RANの集約装置を含む。
任意的に、可能な実施形態では、第2のネットワーク装置はPE装置を含む。
本出願の第3の態様は、ネットワーク装置を提供する。ネットワーク装置は、ネットワーク装置が、第1の態様の任意の可能な実施形態において説明された方法を実施することを可能にするように構成されたプロセッサを含む。装置はさらにメモリを含んでもよい。メモリはプロセッサに結合される。プロセッサがメモリに記憶された命令を実行するとき、ネットワーク装置は、第1の態様の任意の可能な実施形態に記載された方法を実施することができる。装置は通信インターフェースをさらに含んでもよい。通信インターフェースは、装置が他の装置と通信するために使用される。例えば、通信インターフェースは、トランシーバ、回路、バス、モジュール、または別のタイプの通信インターフェースであってもよい。
本出願のメモリ内の命令は、予め記憶されていてもよいし、ネットワーク装置が使用されるときにインターネットからダウンロードされて記憶されていてもよい。メモリ内の命令のソースは、本出願では具体的に限定されない。本出願における結合は、装置、ユニット、またはモジュール間の間接的結合または接続であり、電気的形態、機械的形態、または他の形態であってよく、装置、ユニット、またはモジュール間の情報交換のために使用される。
本出願の第4の態様は、コンピュータ記憶媒体を提供する。コンピュータ記憶媒体は不揮発性であってもよい。コンピュータ記憶媒体は、コンピュータ読取可能な命令を記憶し、コンピュータ読取可能な命令がプロセッサによって実行されると、第1の態様の任意の可能な実施形態に記載された方法が実施される。
本出願の第5の態様は、命令を含むコンピュータプログラム製品を提供する。コンピュータプログラム製品がコンピュータ上で実行されると、コンピュータは、第1の態様の任意の可能な実施形態において説明された方法を実行することが可能である。
本出願の第6の態様は、ネットワークシステムを提供する。ネットワークシステムは、第2の態様または第3の態様の任意の実施形態におけるネットワーク装置と、第1の態様の任意の実施形態における第2のネットワーク装置および第3のネットワーク装置とを含む。
任意的に、可能な実施において、ネットワークシステムは、第2の態様または第3の態様の任意の実施形態における複数のネットワーク装置を含んでもよい。
第2の態様ないし第6の態様に提供されるソリューションは、第1の態様に提供される方法を実施するために実施または協働するために使用され、従って、第1の態様に提供される方法と同じまたは対応する有益な効果を達成することができる。詳細は、ここでは再度説明しない。
本出願の目的、技術的ソリューション、および利点をより明確にするために、添付の図面を参照して、本出願の実施形態を以下に記載する。記載された実施形態は、本出願の実施形態のいくつかの実施形態にすぎなず、すべてではないことは明らかである。当業者は、新しいアプリケーションシナリオが出現するにつれて、本出願の実施形態で提供される技術的ソリューションが同様の技術的問題にも適用可能であることを知ることができる。
本出願の明細書、特許請求の範囲、および添付した図面において、「第1」および「第2」のような用語は、類似したオブジェクトを区別することを意図しているが、必ずしも特定の順序やシーケンスを示すものではない。言うまでもなく、このような方法で使用されるデータは、適切な状況において互換可能であり、従って本明細書に記載された実施形態は、本明細書に図示された順序または記載された順序以外の他の順序で実施することができる。さらに、用語「include」および「have」ならびにそれらの変化形は、非排他的包含をカバーすることを意図している。例えば、ステップまたはモジュールのリストを含むプロセス、方法、システム、製品、または装置は、必ずしも明示的にリストされたステップまたはモジュールに限定されず、明示的にリストされていない、またはそのようなプロセス、方法、製品、または装置に固有の他のステップまたはモジュールを含んでもよい。本出願におけるステップの命名又は番号付けは、方法手順におけるステップが、命名又は番号付けによって示される時間的又は論理的な順序で実行される必要があることを意味しない。同一又は類似の技術的効果を達成することができる限り、達成しようとする技術目標に基づいて、命名又は番号を付した手順のステップの実行順序を変更することができる。本出願におけるユニットへの分割は、論理的分割であり、実際の実施においては他の分割であってもよい。例えば、複数のユニットを組み合わせたり、別のシステムに統合したりしてもよく、或いは、いくつかの特徴を無視したり、実行しなかったりしてもよい。さらに、表示または説明された相互結合、直接結合、または通信接続は、いくつかのインターフェースを介して実施されてもよい。ユニット間の間接的な結合又は通信接続は、電子的又は他の類似の形態で実施することができる。これは、本出願において限定されない。さらに、別個の部分として記載されたユニット又はサブユニットは、物理的に分離されていてもしなくてもよく、物理的ユニットであってもなくてもよく、又は複数の回路ユニットに分散されていてもよい。本出願のソリューションの目的を達成するために、実際の要件に基づいてユニットの一部または全部を選択することができる。
SRv6技術の開発に伴い、より多くの新しく構築されたネットワークでは、SRv6技術が採用されている。従って、新しく構築したSRv6ネットワークと従来のMPLSネットワークが縫合されるシナリオが発生する。例えば、エリア内のネットワークが新しく配備された場合、そのエリア内の新しく配備されたネットワークがSRv6ネットワークであり、そのエリア内のSRv6ネットワークを別のエリアのMPLSネットワークに接続する必要がある場合、新しく構築されたSRv6ネットワークと従来のMPLSネットワークが縫合されるシナリオが発生する。例えば、ローカルネットワーク再構築の場合、エリアのローカルネットワークが従来のMPLSネットワークからSRv6ネットワークに再構築される、再構築されたSRv6ネットワークはそのエリア内の未再構築のMPLSネットワークに接続されたままであり、SRv6ネットワークとMPLSネットワークが縫合されるシナリオも発生する。
新しく構築されたネットワークと従来のネットワークが縫合された縫合ノード、すなわち、2種類のネットワークに同時に接続されたノードでは、多量のクロスネットワークサービスが存在する。現在、ネットワークでアドバタイズされた経路を学習する時、縫合ノードは、プライベートネットワークの仮想ルーティング及び転送(Virtual Routing and Forwarding、VRF)インスタンスに経路を転送し(すなわち、スクリーニングを通じて経路を取得し、VRFインスタンスにその経路を複製し)、その後、VRFインスタンスに基づいて別のネットワークに経路を再度アドバタイズする必要がある。この経路処理方法では、縫合ノードはVRFを感知することができる必要がある。従って、縫合ノード上に大量のコンフィギュレーションを追加する必要がある。その結果、縫合ノードコンフィギュレーションが煩雑になる。
例えば、図1は、本出願の一実施形態に係る関連技術におけるプレフィックスアドレスに基づいてMPLSラベルの割り当てを示す概略図である。図1に示すように、ネットワーク装置1及びネットワーク装置2は、新しく構築されたSRv6ネットワークに配置され、ネットワーク装置4は、従来のMPLSネットワークに配置され、ネットワーク装置3は、新しく構築されたSRv6ネットワークと従来のMPLSネットワークとの間の縫合エリアに配置される。ネットワーク装置1は、ホスト装置内の仮想マシン(virtual machine、VM)1に接続されており、ネットワーク装置1は、対応するセグメント識別子(segment identifier、SID)1をVM1に割り当て、ネットワーク装置3にSID1を担う経路1をアドバタイズすることができる。ネットワーク装置2は、ホスト装置内のVM2及びVM3に接続されており、ネットワーク装置2は、対応するSID2及びSID3をVM2及びVM3に割り当て、SID2を担う経路2及びSID3を担う経路3をネットワーク装置3にアドバタイズすることができる。ホスト装置のVM1、VM2、およびVM3は、同じサービスを担うように構成され、サービスの負荷分散を実施するように構成されてもよい。
関連技術においては、ネットワーク装置3が、ネットワーク装置1及びネットワーク装置2によってアドバタイズされた経路を受信した場合、ネットワーク装置3は、ネットワーク装置1及びネットワーク装置2によってアドバタイズされた経路をVRFインスタンスに転送し、VRFインスタンスに基づいてネットワーク装置4にその経路を再度アドバタイズする必要がある。ネットワーク装置3は、VRFインスタンスを感知する必要があるため、ネットワーク装置3に大量のコンフィグレーションを追加する必要がある。その結果、ネットワーク装置3のコンフィギュレーションが煩雑になり、運転・保守要員のコンフィギュレーション圧力が増大する。
また、ネットワーク装置3は、プレフィックスアドレスに基づいてMPLSラベルを割り当てる場合、経路1、経路2、経路3のプレフィックスアドレスが同じ(すべてのプレフィックスアドレスがホスト装置のアドレスである)ため、3つの経路に1つのMPLSラベルを割り当て、MPLSラベルを担う経路を用いて、ネットワーク装置4にMPLSラベルを送信する。この場合、ネットワーク装置4は、ホスト装置宛てのパケットを受信すると、そのパケットに対応するMPLSラベルが1つのみであると判断し、MPLSラベルを用いてネットワーク装置3にそのパケットを転送する。ネットワーク装置3については、MPLSラベルは3つのSIDに対応する、すなわち、MPLSラベルはネットワーク装置1へのパスとネットワーク装置2へのパスに対応する。したがって、ネットワーク装置3は、パケットを送信するために、ネットワーク装置1へのパスとネットワーク装置2へのパスとから1つのパスを選択することができる。この場合、実際には、ネットワーク装置3は、パケットを転送するために、2つのパスからランダムに1つのパスを選択するか、特定のパスを固定的に選択することができる。具体的には、ネットワーク装置1宛てのパケットの、ネットワーク装置2宛てのパケットに対する比率は1:1である。しかし、実際には、ネットワーク装置1は1つのVMに接続されており、ネットワーク装置2は2つのVMに接続されている。したがって、VM1によって受信されるパケットの、VM2によって受信されるパケットとVM3によって受信されるパケットに対する比率は、2:1:1である。これは、VM間の負荷の不均衡を引き起こす。その結果、通常のパケット処理が影響を受け、サービスの実行またはプロビジョニングの効率が影響を受ける。
この観点から、本出願の一実施形態は経路処理方法を提供する。第1のネットワークドメイン内の第2のネットワーク装置によって送信された第1の経路を受信すると、第1のネットワーク装置は、第1の経路内の第1の識別子に基づいて、対応する第2の識別子を第1の経路に割り当て、第2の識別子を担う第2の経路を第2のネットワークドメイン内の第3のネットワーク装置に送信する。第1の識別子と第2の識別子の両方が、ネットワーク装置間のパケット伝送をガイドするために使用される。第1のネットワークドメインにおいて第1の識別子に基づいて第2のネットワークドメインの第2の識別子を割り当て、第2の識別子を担う第2の経路を使うことにより、クロスネットワークドメインシナリオで通常の経路アドバタイズを実施することができ、縫合ノードに大量のコンフィグレーションを加えることを避けて、コンフィグレーション圧力を減らすことができる。また、第1のネットワーク装置の転送パスは、識別子間の1対1対応に基づいて制御することができ、通常のパケット処理が保証され、サービス運用がより良好に保証される。
図2は、本出願の一実施形態による経路処理方法200を示す概略フローチャートである。図2に示すように、経路処理方法200は、図1に示すネットワークアーキテクチャに適用することができる。経路処理方法200は、以下のステップを含む。
ステップ201:第1のネットワーク装置は、第2のネットワーク装置によって送信された第1の経路を受信する。第1の経路が第1の識別子を含む。
この実施形態では、第1のネットワーク装置は、第1のネットワークドメインと第2のネットワークドメインの交点にあるエッジ装置であってもよく、クロスドメインサービスの通常の実行を実施するように構成されている。第1のネットワーク装置は、第1のネットワークドメイン内の第2のネットワーク装置に接続されてもよく、第2のネットワークドメイン内の第3のネットワーク装置に接続されてもよい。例えば、第1のネットワーク装置は、データセンターのゲートウェイ装置、またはインターネットプロトコル無線アクセスネットワーク(Internet Protocol Radio Access Network、IP RAN)の集約装置であってもよい。第2のネットワーク装置及び第3のネットワーク装置は、例えば、プロバイダエッジ(provider edge、PE)装置であってもよい。
第1のネットワークドメインおよび第2のネットワークドメインにおけるパケット伝送には、異なる転送タイプを使用することができる。第1のネットワーク装置および第2のネットワーク装置は、第1のネットワークドメイン内のトンネルエンドポイント装置であってもよく、第1のネットワーク装置および第3のネットワーク装置は、第2のネットワークドメイン内のトンネルエンドポイント装置であってもよい。例えば、第1のネットワークドメインはSRv6ネットワークであってもよく、第1のネットワークドメインで使用される転送タイプは、SRv6トンネルに基づいてパケットを転送している。第2のネットワークドメインはMPLSネットワークであってもよく、第2のネットワークドメインで使用される転送タイプは、MPLSトンネルに基づいてパケットを転送する。あるいは、MPLSトンネルに基づいてパケットを転送する転送タイプが第1のネットワークドメインで使われ、SRv6トンネルに基づいてパケットを転送する転送タイプが第2のネットワークドメインで使われる。SRv6トンネルに基づいてパケットを転送し、MPLSトンネルに基づいてパケットを転送する前記転送タイプの他に、第1のネットワークドメインと第2のネットワークドメインにおけるパケット伝送には、他の転送タイプを使用することができ、第1のネットワークドメインと第2のネットワークドメインで使用される転送タイプは異なる。
経路アドバタイズメントプロセスでは、第2のネットワーク装置によって送信された第1の経路は、第1の識別子を含み、第1の識別子は、パケット伝送プロセスにおいて第1のパケットを第2のネットワーク装置に転送するように第1のネットワーク装置に指示するために使用される。例えば、第1の識別子は、第1の経路に対応するサービスソースを識別するために使用することができ、サービスソースは、例えば、第2のネットワーク装置に接続された仮想プライベートネットワーク(Virtual Private Network、VPN)インスタンス、または第2のネットワーク装置上のアウトバウンドインターフェース、または第2のネットワーク装置に接続された仮想マシンを含んでもよい。
簡単に説明すると、第1の識別子は、第2のネットワーク装置に接続されたVPNインスタンスに第2のネットワーク装置によって割り当てられた識別子であってもよい。あるいは、第1の識別子は、第2のネットワーク装置によって第2のネットワーク装置上のアウトバウンドインターフェースに割り当てられた識別子であってもよく、サービスを処理するように構成することができる、VPNインスタンスまたは仮想マシンなどの対応する物理的または仮想化装置が、アウトバウンドインターフェースに接続されてもよい。あるいは、第1の識別子は、第2のネットワーク装置によって第2のネットワーク装置に接続された仮想マシンに割り当てられた識別子であってもよく、仮想マシンはサービスを処理するように構成される。
可能な実施形態では、第2のネットワーク装置が位置する第1のネットワークドメインがSRv6ネットワークである場合、第1の識別子は、例えばSIDであってもよい。第2のネットワーク装置が配置されている第1のネットワークドメインがMPLSネットワークである場合、第1の識別子は例えばMPLSラベルであってもよい。
ステップ202:第1のネットワーク装置は、第1の識別子に基づいて、第1の経路に対応する第2の識別子を割り当てる。
この実施形態では、第1の識別子は、第1のネットワークドメイン内の第1の経路に対応する識別子であり、第1のネットワーク装置は、第1の識別子に基づいて、第2のネットワークドメイン内の第1の経路に対応する第2の識別子を第1の経路に割り当てることができる。第2の識別子は、第2のネットワークドメインの第3のネットワーク装置に、第1のネットワーク装置にパケットを転送するように指示するために使用される。
可能な実施形態では、第3のネットワーク装置が配置された第2のネットワークドメインがMPLSネットワークである場合、第2の識別子は例えばMPLSラベルであってもよい。第3のネットワーク装置が配置された第2のネットワークドメインがSRv6ネットワークである場合、第2の識別子は例えばSIDであってもよい。
ステップ203:第1のネットワーク装置は、第1の識別子と第2の識別子との間の対応を確立する。
第1のネットワーク装置が第1の識別子を担う第1の経路に第2の識別子を割り当てた後、第1のネットワーク装置は、第1の識別子と第2の識別子との間の対応を確立し、第1の識別子がその後のパケット伝送プロセスにおいて第2の識別子に基づいて決定され得るように、その対応を記憶することができる。
可能な実施形態では、第1のネットワーク装置によって受信される第1の経路は、第2のネットワーク装置のアドレスをさらに含んでもよい。例えば、第2のネットワーク装置のアドレスは、第1の経路のネクストホップフィールドに担われてもよく、第1のネットワーク装置は、第1の経路のネクストホップフィールドに基づいて第2のネットワーク装置のアドレスを取得してもよい。
第1のネットワーク装置が第2のネットワーク装置のアドレスを取得することができる場合、第1のネットワーク装置は、第2のネットワーク装置のアドレス及び第1の識別子に基づいて、対応する第2の識別子を第1の経路に代わりに割り当てることができる。
この場合、第1のネットワーク装置によって確立された対応は、第2のネットワーク装置のアドレス、第1の識別子、および第2の識別子の間の対応であってもよい。換言すれば、第1のネットワーク装置は、第2の識別子に基づいて、第2のネットワーク装置のアドレスと、第2の識別子に対応する第1の識別子とを決定することができる。
ステップ204:第1のネットワーク装置は、第1の経路に基づいて第3のネットワーク装置に第2の経路を送信し、第2の経路は第2の識別子を含む。
第1のネットワーク装置が第2の識別子を割り当てた後、第1のネットワーク装置は、アップデートまたは再生などの方法で、第1の経路に基づいて第2の経路を取得してもよい。第2の経路は第2の識別子を含む。次に、第1のネットワーク装置は、第2の経路を第2のネットワークドメインに配置された第3のネットワーク装置に送信し、第3のネットワーク装置は、第2の経路の第2の識別子に基づいて、対応するパケットを第1のネットワーク装置に転送することができる。このようにして、第1のネットワーク装置は、パケットをさらに別のネットワークドメインの第2のネットワーク装置に転送する。
ステップ205:第1のネットワーク装置は、第3のネットワーク装置によって送信された第1のパケットを受信し、第1のパケットは第2の識別子を含む。
パケット伝送プロセスにおいて、第1のネットワーク装置は、第3のネットワーク装置によって送信され、第2の識別子を含む第1のパケットを受信することができる。
ステップ206:第1のネットワーク装置は、第2のパケットを取得するために、第2の識別子および対応に基づいて第1のパケットを更新し、第2のパケットは第1の識別子を含む。
この実施形態では、第1のパケットを受信した後、第1のネットワーク装置は、第1のパケットに含まれる第2の識別子を決定し、前記の対応に基づいて、第2の識別子に対応する第1の識別子を決定することができる。第2の識別子を使用して決定された第1の識別子に基づいて、第1のネットワーク装置は、第1のパケットを更新してもよい。具体的には、第1のネットワーク装置は、第1のパケット内の第2の識別子を削除し、第1のパケットに第1の識別子を追加して、第1の識別子を含む第2のパケットを取得することができる。
ステップ207:第1のネットワーク装置は、第2のパケットを第2のネットワーク装置に送信する。
この実施形態では、第1のネットワーク装置によって確立された対応が、第1の識別子、第2の識別子、および第2のネットワーク装置のアドレスを含む場合、第1のネットワーク装置は、第1の識別子および対応に基づいて第2のネットワーク装置のアドレスを決定し、第2のパケットを第2のネットワーク装置のアドレスに基づいて第2のネットワーク装置に送信することができる。
第1のネットワーク装置によって確立された対応が、第1の識別子と第2の識別子のみを含む場合、第1のネットワーク装置は、第1の識別子と第2のネットワーク装置のアドレスとの間のプリセットマッピング関係に基づいて、第2のネットワーク装置のアドレスであって第1の識別子に対応するアドレスを決定し、第2のパケットを第2のネットワーク装置に送ることができる。
例えば、第2のネットワーク装置が第1の識別子をサービスソースに割り当てる場合、第2のネットワーク装置は、第1の識別子が第2のネットワーク装置に対応する割り当て可能なアドレスセグメント内にあることを確実にするために、事前に割り当てられたアドレスセグメントに基づいて第1の識別子を割り当てることができる。第1のネットワーク装置では、第2のネットワーク装置のアドレスと、第2のネットワーク装置に対応する割り当て可能なアドレスセグメントとの間のマッピング関係がプリセットされてもよい。このようにして、第1のネットワーク装置が第1の識別子を取得した後、第1のネットワーク装置は、第1の識別子が第2のネットワーク装置に対応する割り当て可能なアドレスセグメント内にあると判定し、マッピング関係および割り当て可能なアドレスセグメントに基づいて第2のネットワーク装置のアドレスを決定することができる。換言すれば、第2のネットワーク装置のアドレスは、第1の識別子に基づいて決定される。
第2のネットワーク装置が、あらかじめ割り当てられたアドレスセグメントに基づいて第1の識別子を割り当てる場合、第2のネットワーク装置に割り当てられたアドレスセグメントと他のネットワーク装置とは異なってもよい。このように、各ネットワーク装置がサービスソースに対して識別子を割り当てる場合、各ネットワーク装置が異なる識別子を割り当てることを確実にすることができ、第1のネットワーク装置が第1の識別子に基づいて第2のネットワーク装置のアドレスを一意に決定できることを確実にすることができる。
可能な実施形態において、図2に対応する実施形態では、第2のネットワーク装置はさらに、異なるサービスソースに対応する複数の識別子を割り当て、対応する経路を第1のネットワーク装置に送信してもよい。
例えば、経路処理方法200はさらに次を含む。第1のネットワーク装置が第2のネットワーク装置によって送信された第3の経路を受信し、第3の経路が第2のネットワーク装置のアドレスと第3の識別子を含み、第3の識別子と第1の識別子が異なるサービスソースを識別するために使用される。例えば、第2のネットワーク装置が複数の仮想マシンに接続されている場合、第2のネットワーク装置は、第1の識別子と第3の識別子とを別々に異なる仮想マシンに割り当てることができる。第1のネットワーク装置は、第2のネットワーク装置のアドレスと第3の識別子に基づいて、第3の経路に対応する第4の識別子を割り当てる。第4の識別子は、第2のネットワークドメインの第3の経路に対応する識別子である。第1のネットワーク装置は、第3の経路に基づいて第4の経路を第3のネットワーク装置に送信し、第4の経路は第4の識別子を含み、第4の識別子は、第3のパケットを第1のネットワーク装置に転送するように第3のネットワーク装置に指示するために使用される。
具体的には、第2のネットワーク装置が同一のホスト装置内に配置された複数の仮想マシンに接続されている場合、第1のネットワーク装置は、第2のネットワーク装置によって送信され、異なる識別子を担う複数の経路に基づいて、第2のネットワーク装置内の複数の対応する識別子を割り当てて、第2のネットワークドメインの複数の識別子と第1のネットワークドメインの複数の転送パスとの間の1対1の対応を形成することにより、第3のネットワーク装置が同一の宛先アドレスを有する複数のパケットの転送パスを取得することができる。これは、パケットがネットワークドメインをわたって柔軟に転送できることを保証する。
理解を容易にするために、本出願の実施形態に提供される経路処理方法を、具体的な例を参照して以下に詳細に説明する。図3は、本出願の一実施形態による経路処理方法300を示す概略図である。図3に示すように、ネットワーク装置1はSRv6ネットワークに配置され、ネットワーク装置3はMPLSネットワークに配置され、ネットワーク装置2はSRv6ネットワークとMPLSネットワークとの間の縫合エリアに配置されている。また、ネットワーク装置1は、ホスト装置内のVM1及びVM2に接続されている。経路処理方法300は、以下のステップを含む。
ステップ301:ネットワーク装置1は、経路1をネットワーク装置2に送信し、経路1はSID1を含む。
この実施形態では、ネットワーク装置1に接続されたVM1がオンラインになった後、ネットワーク装置1は、対応するSID1をネットワーク装置1に接続されたVM1に割り当てることができ、あるいは、ネットワーク装置1は、対応するSID1をネットワーク装置1のものであり、VM1に接続されたアウトバウンドインターフェースに割り当てることができる。
SID1が割り当てられた後、ホスト装置がVM1を使用してネットワーク装置1に経路を送信する場合、経路の経路プレフィックスはホスト装置のアドレスであり、ネットワーク装置1はホスト装置により送信された経路に基づいて経路1を生成してもよい。経路1の経路プレフィックスはホスト装置のアドレスである。経路1はさらに、SID1とネットワーク装置1のアドレスを含む。例えば、SID1は経路1のプレフィックスSIDフィールドに配置され、ネットワーク装置1のアドレスは経路1のネクストホップフィールドに配置されてもよい。
また、ホスト装置1とVM1との間の対応は、ネットワーク装置1内に、事前設定方法で構成されていてもよく、すなわち、ホスト装置1のアドレスとVM1との間の対応が構成されていてもよい。このように、ネットワーク装置1は、ホスト装置1のアドレスとVM1とのあらかじめ設定された対応に基づいて、前記経路1を生成してもよい。
ステップ302:ネットワーク装置1は、ネットワーク装置2に経路2を送信し、経路2はSID2を含む。
同様に、ネットワーク装置1は、対応するSID2をVM2またはVM2に接続されたアウトバウンドインターフェースに割り当て、経路2をネットワーク装置2に送信してもよい。経路2の経路プレフィックスはホスト装置のアドレスであり、経路2はさらにSID2を担う。
ステップ303:ネットワーク装置2は、経路1にMPLSラベル1を割り当て、経路2にMPLSラベル2を割り当てる。
ネットワーク装置2は、経路1及び経路2を受信した後、SID1に基づいて、MPLSネットワーク中の経路1のMPLSラベル1を経路1に割り当て、SID2に基づいて、MPLSネットワーク中の経路2のMPLSラベル2を経路2に割り当てることができる。さらに、ネットワーク装置2は、SID1とMPLSラベル1との間の対応1と、SID2とMPLSラベル2との間の対応2とをさらに確立することができる。
さらに、ネットワーク装置2は、経路1に含まれるネットワーク装置1のアドレスに基づいて、ネットワーク装置1をさらに含む対応1をさらに確立することができる。換言すれば、対応1は、SID1、MPLSラベル1、及びネットワーク装置1のアドレス間の対応であってもよい。同様に、ネットワーク装置2は、ネットワーク装置1をさらに含む対応2を確立することもできる。換言すれば、対応2は、SID2、MPLSラベル2、及びネットワーク装置1のアドレス間の対応であってもよい。
言うまでもなく、ネットワーク装置2がMPLSラベル1及びMPLSラベル2を割り当てるシーケンスは、ネットワーク装置2が経路1及び経路2を受信するシーケンスに基づいて決定してもよい。ネットワーク装置1が最初に経路1を受信したとき、ネットワーク装置は、まず、経路1に対応するMPLSラベル1を割り当てる。ネットワーク装置1が最初に経路2を受信したとき、ネットワーク装置は、まず、経路2に対応するMPLSラベル2を割り当てる。
ステップ304:ネットワーク装置2は、MPLSラベル1を含む経路3をネットワーク装置3に送信する。
ステップ305:ネットワーク装置2は、MPLSラベル2を含む経路4をネットワーク装置3に送信する。
ネットワーク装置2は、対応するMPLSラベルを割り当てた後、経路1及び経路2に基づいて、対応する経路3及び経路4を生成し、MPLSラベル1を含む経路3と、MPLSラベル2を含む経路4とをネットワーク装置3に送信することができる。経路3と経路4の経路プレフィックスは、経路1と経路2の経路プレフィックス、すなわちホスト装置のアドレスと同じである。
経路3と経路4を受信した後、ネットワーク装置3は、経路3と経路4に基づいて、対応するフォワーディングエントリを生成してもよい。フォワーディングエントリのプレフィックスアドレスはホスト装置のアドレスであり、フォワーディングエントリは対応するMPLSラベル1とMPLSラベル2を持つ。
ステップ306:ネットワーク装置3は、サーバにより送信されたパケット1を受信する。
ネットワーク装置3に接続されたサーバがサービス送信を実行する場合、ネットワーク装置3は、サーバによって送信されたパケット1を受信することができる。パケット1の宛先アドレスはホスト装置のアドレスであってもよい。
ステップ307:ネットワーク装置3は、パケット1を更新してMPLSラベル2を含むパケット2を取得し、パケット2をネットワーク装置2に送信する。
ネットワーク装置3は、パケット1内の宛先アドレスに基づいて、パケット1内の宛先アドレスに一致するフォワーディングエントリをルーティングテーブルで検索して、前記生成されたフォワーディングエントリを決定し、対応するMPLSラベル1およびMPLSラベル2を決定することができる。
ネットワーク装置3は、パケット1に対応するMPLSラベル1とMPLSラベル2を決定した後、2つのMPLSラベルのうち1つのMPLSラベルを決定し、パケット1を転送することができる。例えば、本実施形態では、ネットワーク装置3は、事前設定された負荷バランシングポリシーに従ってMPLSラベル2を選択してパケット1を転送することができる。このようにして、ネットワーク装置3は、MPLSラベル2をパケット1にカプセル化し、MPLSラベル2を含むパケット2を取得し、MPLSラベル2に対応するMPLSトンネルに基づいてネットワーク装置2にパケット2を送信する。
ステップ308:ネットワーク装置2は、パケット2を更新してSID2を含むパケット3を取得し、パケット3をネットワーク装置1に送信する。
パケット2を受信した後、ネットワーク装置2は、あらかじめ確立された対応2及びパケット2内のMPLSラベル2に基づいて、MPLSラベル2に対応するSID2を決定することができる。次に、ネットワーク装置2は、パケット2をカプセル解除し、パケット2に担われたMPLSラベル2を削除し、SID2をパケット2にカプセル化して、SID2を含むパケット3を取得する。
可能な実施形態では、ネットワーク装置2によって確立された対応2が、ネットワーク装置1のものでありSID2に対応するアドレスをさらに含む場合、ネットワーク装置2は、ネットワーク装置1の決定されたアドレスに基づいて、SID2を含むパケット3をネットワーク装置1に送信することができる。
別の可能な実施において、ネットワーク装置2によって確立された対応2がネットワーク装置1のアドレスを含まない場合、ネットワーク装置2は、SIDとネットワーク装置のアドレスとの間のプリセットマッピング関係に基づいて、ネットワーク装置のアドレスであってSID2に対応するアドレス(すなわち、ネットワーク装置1のアドレス)を決定して、パケット3をネットワーク装置1に送信することができる。換言すれば、ネットワーク装置1は、ネットワーク装置1によって割り当てられたSID1及びSID2の両方が、ネットワーク装置1に対応する割り当て可能なアドレスセグメント内にあることを確実にするために、予め割り当てられたアドレスセグメントに基づいて、SIDをVMに割り当てることができる。ネットワーク装置2には、ネットワーク装置1のアドレスと、ネットワーク装置1に対応する割当可能なアドレスセグメントとの間のマッピング関係をあらかじめ設定することができる。このようにして、ネットワーク装置2がSID2を取得した後、ネットワーク装置2は、SID2がネットワーク装置1に対応する割り当て可能なアドレスセグメント内にあると判断して、ネットワーク装置1のアドレスを決定することができる。
ステップ309:ネットワーク装置1は、パケット3をVM2に送信する。
パケット3を受信した後、ネットワーク装置1は、パケット3をVM2に送信するために、パケット3内のSID2に基づいて、SID2に対応するVM2を決定することができる。
図3に対応する実施形態に基づいて、ネットワーク装置2が、同一のネットワーク装置によってアドバタイズされる同一の経路プレフィックスを有する経路を受信するかも知れないことを除き、ネットワーク装置2は、別のネットワーク装置によってアドバタイズされる同一の経路プレフィックスを有する経路を受信してもよい。
例えば、図4は、本出願の一実施形態による経路処理方法を示す概略図である。図4に示すように、図3に基づいて、サービスを担うように構成されたVM3をさらにホスト装置に追加してもよく、VM3はネットワーク装置4に接続される。
ネットワーク装置1は、SID1及びSID2をそれぞれVM1及びVM2に割り当て、ネットワーク装置1は、SID1及びSID2をそれぞれ担う経路をネットワーク装置2に送信する。ネットワーク装置4は、VM3にSID3を割り当て、SID3を担う経路をネットワーク装置2に送信する。また、ネットワーク装置4とネットワーク装置1により送信される経路の経路プレフィックスは同一であり、全ての経路プレフィックスはホスト装置のアドレスである。
ネットワーク装置2は、ネットワーク装置1及びネットワーク装置4によって送信される経路に基づいて、SIDとMPLSラベルとの間の対応を生成することができる。具体的には、SID1はMPLSラベル1に対応し、SID2はMPLSラベル2に対応し、SID3はMPLSラベル3に対応する。ネットワーク装置2は、それぞれMPLSラベル1、MPLSラベル2、およびMPLSラベル3を担う経路をネットワーク装置3に送信する。
ネットワーク装置2によって送信された3つの経路を受信した後、ネットワーク装置3は、対応するフォワーディングエントリを生成することができる。フォワーディングエントリのプレフィックスアドレスはホスト装置のアドレスであり、フォワーディングエントリは対応するMPLSラベル1、MPLSラベル2、MPLSラベル3を持っている。
あるいは、ネットワーク装置3は、ネットワーク装置2によって送信された3つの経路に基づいて、3つの対応するフォワーディングエントリを生成してもよい。3つのフォワーディングエントリのプレフィックスアドレスはすべてホスト装置のアドレスであり、3つのフォワーディングエントリはそれぞれ対応するMPLSラベル1、MPLSラベル2、MPLSラベル3を持つ。
このように、ネットワーク装置3がホスト装置宛てのパケットを受信した場合、ネットワーク装置3は、ルーティングテーブルを検索することにより、対応するMPLSラベルがMPLSラベル1、MPLSラベル2及びMPLSラベル3であることを判断することができる。ネットワーク装置3は、あらかじめ設定された負荷分散ポリシーに従って、3つのMPLSラベルの中から1つのMPLSラベルを選択してパケットを送信することができる。この場合、ネットワーク装置2は、ネットワーク装置3によって送信されたパケットを受信すると、SIDとMPLSラベルとの生成された対応に基づいて対応するSIDを判断し、そのパケットを送信することができる。
具体的には、ネットワーク装置3が負荷バランシングポリシーに従ってMPLSラベルを選択する場合、MPLSラベル1、MPLSラベル2、MPLSラベル3を1:1:1の比率で選択することができる。MPLSラベル1、MPLSラベル2、およびMPLSラベル3に対応する伝送パスは、VM1、VM2、およびVM3へのパスであるため、VM1が受信するパケットと、VM2が受信するパケットと、VM3が受信するパケットとの比率は1:1:1となり、VM間の負荷分散が実現され、正常なパケット処理が保証される。
可能な実施形態では、図2に対応する実施形態では、第2のネットワーク装置は、シングルホーミングアクセス方式でサービスインスタンスに接続されてもよく、または第2のネットワーク装置は、デュアルホーミングアクセス方式でサービスインスタンスに接続されてもよい。換言すれば、第2のネットワーク装置に加えて、他のネットワーク装置(例えば、第4のネットワーク装置)が、第2のネットワーク装置と同じVPNインスタンスまたは仮想マシンに接続されてもよい。第2のネットワーク装置がデュアルホーミングアクセス方式で接続されている場合、第2のネットワーク装置と第4のネットワーク装置によりVPNインスタンスや仮想マシンに割り当てられた識別子は同一であってもよい。。
例えば、経路処理方法200はさらに、第1のネットワーク装置が第4のネットワーク装置によって送信された第5の経路を受信し、第5の経路が第4のネットワーク装置および第1の識別子を含み、第5の経路のプレフィックスアドレスが第1の経路のプレフィックスアドレスと同じであり、第4のネットワーク装置が第1のネットワークドメインに配置され、第4のネットワーク装置および第2のネットワーク装置が、例えば、同じ仮想マシンまたはVPNインスタンスに接続される、ことを含んでもよい。
第1のネットワーク装置は、第4のネットワーク装置のアドレスと第1の識別子に基づいて、対応する第5の識別子を第5の経路に割り当てる。第4のネットワーク装置のアドレスは、例えば、第5の経路のネクストホップフィールドに担われてもよい。第1のネットワーク装置は、第5の経路に基づいて第3のネットワーク装置に第6の経路を送信し、第6の経路は第5の識別子を含み、第5の識別子は、第2のパケットを第1のネットワーク装置に転送するように第3のネットワーク装置に指示するために使用される。
たとえば、第2のネットワーク装置と第4のネットワーク装置の両方がSRv6ネットワークに配置され、第3のネットワーク装置がMPLSネットワークに配置されている。第2のネットワーク装置によって送信される第1の経路にで担われた第1の識別子はSIDであり、第4のネットワーク装置によって送信される第5の経路もSIDを担う。第1のネットワーク装置は、第2のネットワーク装置のアドレスとSIDに基づいて、第1の経路にMPLSラベル1を割り当て、第2の経路を介して第3のネットワーク装置にMPLSラベル1を送信する。第1のネットワーク装置は、第4のネットワーク装置のアドレスとSIDに基づいて、第5の経路にMPLSラベル2を割り当て、第6の経路を介して第3のネットワーク装置にMPLSラベル2を送信する。
理解を容易にするために、本出願の実施形態で提供される経路処理方法を、具体的な例を参照して以下に詳細に説明する。図5は、本出願の一実施形態による経路処理方法500を示す概略図である。図5に示すように、ネットワーク装置1及びネットワーク装置4は、SRv6ネットワークに配置され、ネットワーク装置3は、MPLSネットワークに配置され、ネットワーク装置2は、SRv6ネットワークとMPLSネットワークとの間の縫合エリアに配置される。また、ネットワーク装置1及びネットワーク装置4は、ともにホスト装置内のVM4に接続される。経路処理方法500は、以下のステップを含む。
ステップ501:ネットワーク装置1は、SID4を含む経路5をネットワーク装置2に送信する。
この実施形態では、ネットワーク装置1は、対応するSID4をネットワーク装置1に接続されたVM4に割り当てることができる。SID4の割当て後、ネットワーク装置1は、ネットワーク装置2に経路5を送信する。経路5の経路プレフィックスはホスト装置のアドレスであり、経路5はさらにSID4を担う。
ステップ502:ネットワーク装置4は、SID4を含む経路6をネットワーク装置2に送信する。
同様に、ネットワーク装置4は、対応するSID4をVM4に割り当て、経路6をネットワーク装置2に送信してもよい。経路6の経路プレフィックスはホスト装置のアドレスであり、経路6はさらにSID4を運ぶ。
ステップ503:ネットワーク装置2は、経路5と経路6にMPLSラベル4とMPLSラベル5を割り当てる。
ネットワーク装置2によって受信された経路5と経路6の経路プレフィックスは同じであり、経路5と経路6の両方がSID4を担う。この場合、ネットワーク装置2は、経路を送信するネットワーク装置のアドレスとSIDに基づいて、対応するMPLSラベルを経路に割り当てることができる。
換言すれば、ネットワーク装置2は、ネットワーク装置1のアドレス及びSID4に基づいて、経路5にMPLSラベル4を割り当てることができる。ネットワーク装置2は更に、ネットワーク装置1のアドレス、SID4、及びMPLSラベル4間の対応関係3を確立することができる。
同様に、ネットワーク装置2は、ネットワーク装置4のアドレス及びSID4に基づいて、経路6にMPLSラベル5を割り当てることができる。ネットワーク装置2はさらに、ネットワーク装置4のアドレス、SID4、及びMPLSラベル5間の対応4を確立することができる。
ステップ504:ネットワーク装置2は、MPLSラベル4を含む経路7をネットワーク装置3に送信する。
ステップ505:ネットワーク装置2は、MPLSラベル5を含む経路8をネットワーク装置3に送信する。
ステップ504およびステップ505は、ステップ304およびステップ305と同様である。詳細は、ステップ304およびステップ305を参照されたい。詳細は、ここでは再度説明しない。
ステップ506:ネットワーク装置3は、サーバにより送信されたパケット4を受信する。
ネットワーク装置3に接続されたサーバがサービス送信を行う場合、ネットワーク装置3は、サーバnいより送信されたパケット4を受信することができる。パケット4の宛先アドレスは、ホスト装置のアドレスであってもよい。
ステップ507:ネットワーク装置3は、パケット4を更新してパケット5を取得し、パケット5をネットワーク装置2に送信する。
ネットワーク装置3は、パケット4内の宛先アドレスに基づいて、パケット4内の宛先アドレスに一致するフォワーディングエントリをルーティングテーブルで検索して、前記生成されたフォワーディングエントリを決定し、対応するMPLSラベル4とMPLSラベル5とを決定することができる。
ネットワーク装置3は、パケット4に対応するMPLSラベル4とMPLSラベル5を決定した後、2つのMPLSラベルのうち1つのMPLSラベルを決定し、パケット4を転送することができる。例えば、本実施形態では、ネットワーク装置3は、パケット4を転送するために、事前設定された負荷バランシングポリシーに従ってMPLSラベル5を選択することができる。このようにして、ネットワーク装置3は、MPLSラベル5をパケット4にカプセル化して、MPLSラベル5を含むパケット5を取得し、MPLSラベル5に対応するMPLSトンネルに基づいてネットワーク装置2にパケット5を送信する。
ステップ508:ネットワーク装置2は、パケット5を更新して、パケット6を取得し、パケット6をネットワーク装置4に送信する。
ネットワーク装置2は、ネットワーク装置3によって送信されたパケット5を受信した後、パケット5に担われたMPLSラベル5を取得することができる。前記対応に基づき、ネットワーク装置2は、MPLSラベル5に対応するSID4とネットワーク装置4のアドレスを決定することができる。従って、ネットワーク装置2は、パケット5をカプセル解除し、パケット5に担われたMPLSラベル5を削除し、SID4をパケット5にカプセル化して、SID4を含むパケット6を取得することができる。そして、ネットワーク装置2は、ネットワーク装置4の決定されたアドレスに基づいて、ネットワーク装置4にパケット6を送信する。
ステップ509:ネットワーク装置4は、パケット6をVM4に送信する。
パケット6を取得した後、ネットワーク装置4は、パケット6内のSID4に基づいて対応するVM4を決定し、パケット6をVM4に送信する。
前記実施形態を実施するために、本出願はさらに、ネットワーク装置を提供する。図6は、本出願の一実施形態によるネットワーク装置600の構造を示す概略図である。
図6に示されたネットワーク装置600は、いくつかの具体的な特徴を示すが、本出願の実施形態から当業者には言うまでもなく、簡潔にするために、図6は、本出願の実施形態に開示された実施形態のより関連した態様を誤解させることを避けるために、種々の他の特徴を示していない。この目的のために、例えば、いくつかの実施形態では、ネットワーク装置600は、1つ以上のプロセッサ601、ネットワークインターフェース602、プログラミングインターフェース603、メモリ604、および種々の構成要素を相互接続するように構成された1つ以上の通信バス605を含む。いくつかの他の実施形態では、いくつかの機能コンポーネントまたはユニットは、前記例に基づいて、省略されても、ネットワーク装置600に追加されてもよい。
いくつかの実施形態では、別の目的に加えて、ネットワークインターフェース602は、ネットワークシステム内の1つ以上の他のネットワーク装置/サーバに接続するように構成される。いくつかの実施態様では、通信バス605は、システム構成要素を相互接続し、システム構成要素間の通信を制御する回路を含む。メモリ604は、不揮発性メモリ、例えば、リードオンリーメモリ(read-only memory、ROM)、プログラマブルリードオンリーメモリ(programmable ROM、PROM)、消去可能プログラマブルリードオンリーメモリ(erasable PROM、EPROM)、電気的消去可能プログラマブルリードオンリーメモリ(electrically EPROM、EEPROM)、またはフラッシュメモリを含んでもよい。メモリ604はまた、揮発性メモリを含んでもよい。揮発性メモリは、ランダムアクセスメモリ(random access memory、RAM)であってもよく、外部キャッシュとして使用される。
いくつかの実施形態では、メモリ604の非一時的コンピュータ読取り可能記憶媒体またはメモリ604は、以下のプログラム、モジュール、およびデータ構造、またはそれらの一部を記憶し、例えば、トランシーバユニット(図示せず)および処理ユニット6041を含む。
可能な実施形態では、ネットワーク装置600は、方法200における第1のネットワーク装置、または方法300または方法500における第1のネットワーク装置のいずれかの機能を有してもよい。ネットワーク装置600のトランシーバユニットは、ステップ201、ステップ207、ステップ304、ステップ305、ステップ308、ステップ504、ステップ505、またはステップ508を実行するように構成される。処理ユニット6041は、ステップ202、ステップ203、ステップ206、ステップ303、またはステップ503を実行するように構成される。
言うまでもなく、ネットワーク装置600は、前記方法の実施形態における第1のネットワーク装置に対応し、ネットワーク装置600のモジュールおよび前記他の動作および/または機能は、前記方法の実施形態における第1のネットワーク装置によって実施される種々のステップおよび方法を別々に実施するように使用される。具体的な詳細については、方法200、方法300、方法500を参照されたい。簡潔にするために、詳細はここでは再度説明しない。
言うまでもなく、トランシーバユニットの前記機能は、メモリ内のプログラムコードを呼び出すことによってプロセッサによって実施されてもよく、必要に応じて、ネットワークインターフェース602との協調が行われてもよい。あるいは、データ受信/送信動作は、ネットワークインターフェース600上のネットワークインターフェース602によって完了されてもよい。
様々な実施形態において、ネットワーク装置600は、本出願の実施形態で提供される経路処理方法を実行するように構成され、例えば、図2、図3または図5に示される実施形態に対応する経路処理方法を実行するように構成される。
本出願で提供される方法の実施形態および仮想化装置の実施形態に対応して、本出願の一実施形態は、ネットワーク装置をさらに提供する。以下に、ネットワーク装置のハードウェア構造を説明する。
図7は、本出願の一実施形態によるネットワーク装置700の構造を示す概略図である。ネットワーク装置700は、前記方法の実施形態における第1のネットワーク装置として構成されてもよい。
ネットワーク装置700は、前記方法の実施形態における第1のネットワーク装置に対応してもよい。ネットワーク装置700内のハードウェア、モジュール、および前記他の動作および/または機能は、方法の実施形態において第1のネットワーク装置によって実施される種々のステップおよび方法を実施するために別々に使用される。ネットワーク装置700がどのようにしてパケットを転送するかに関する詳細な手順の具体的な詳細については、前記方法の実施形態を参照されたい。簡潔にするために、詳細はここでは再度説明しない。方法200、方法300、または方法500のステップは、ネットワーク装置700のプロセッサ内のハードウェアの集積論理回路またはソフトウェアの形式の命令を使用することによって完了される。本出願の実施形態を参照して開示される方法のステップは、ハードウェアプロセッサによって直接的に実行され完了されてもよく、またはプロセッサ内のハードウェアとソフトウェアモジュールとの組み合わせによって実行され完了されてもよい。ソフトウェアモジュールは、ランダムアクセスメモリ、フラッシュメモリ、リードオンリーメモリ、プログラマブルリードオンリーメモリ、電気的消去可能プログラマブルメモリ、またはレジスタのような、当該技術分野における成熟した記憶媒体内に配置することができる。記憶媒体はメモリ内に配置され、プロセッサは、メモリから情報を読み出し、プロセッサのハードウェアと組み合わせて、前記方法のステップを完了する。繰り返しを避けるために、本明細書には詳細は記載しない。
ネットワーク装置700は、主制御ボード77およびインターフェースボード730を含む。
主制御ボード77は、メイン処理ユニット(main processing unit、MPU)または経路プロセッサカード(route processor card)とも呼ばれる。主制御ボード77は、経路計算、装置管理、装置メンテナンス、およびプロトコル処理機能を含む、ネットワーク装置700内の構成要素の制御および管理をする。主制御ボード77は、中央処理ユニット711およびメモリ712を含む。
インターフェースボード730は、ライン処理ユニット(line processing unit、LPU、ラインカード(line card)、またはサービスボードとも呼ばれる。インターフェースボード730は、種々のサービスインターフェースを提供し、データパケットを転送するように構成される。サービスインターフェースは、イーサネットインターフェース、POS(Packet over SONET/SDH)インターフェースなどを含むが、これらに限定されない。イーサネットインターフェースは、例えば、柔軟なイーサネットサービスインターフェース(Flexible Ethernet Client、FlexE Client)である。インターフェースボード730は、中央処理ユニット731、ネットワークプロセッサ732、フォワーディングエントリメモリ734、および物理インターフェースカード(physical interface card、PIC)733を含む。
インターフェースボード730上の中央処理ユニット731は、インターフェースボード730を制御および管理し、主制御ボード77上の中央処理ユニット711と通信するように構成される。
ネットワークプロセッサ732は、パケット伝送処理を実施するように構成される。ネットワークプロセッサ732の形態は、転送チップであってもよい。具体的には、アップリンクパケットの処理は、パケットのインバウンドインターフェースの処理および転送テーブルの検索を含み、ダウンリンクパケットの処理は、転送テーブルの検索などを含む。
物理インターフェースカード733は、物理層において相互接続機能を実施するように構成される。元のトラフィックは、物理インターフェースカード733からインターフェースボード730に入り、処理されたパケットが物理インターフェースカード733から送られる。物理インターフェースカード733は、少なくとも1つの物理インターフェースを含む。物理インターフェースは、物理ポートとも呼ばれます。物理インターフェースカード733は、システムアーキテクチャにおけるFlexE物理インターフェースに対応する。物理インターフェースカード733は、サブカードとも呼ばれ、インターフェースボード730にインストールされてもよく、光/電気信号をパケットに変換し、パケットの有効性チェックを行い、処理のためにパケットをネットワークプロセッサ732に転送する役割を果たす。いくつかの実施形態では、インターフェースボード730上の中央処理ユニット731は、ネットワークプロセッサ732の機能を実行してもよく、例えば、汎用CPUに基づいてソフトウェア転送を実施してもよい。この場合、ネットワークプロセッサ732は、物理インターフェースカード733には必要とされない。
任意的に、ネットワーク装置700は、複数のインターフェースボードを含む。例えば、ネットワーク装置700は、インターフェースボード740をさらに含む。インターフェースボード740は、中央処理ユニット741、ネットワークプロセッサ742、フォワーディングエントリメモリ744、および物理インターフェースカード743を含む。
任意的に、ネットワーク装置700は、スイッチングボード720をさらに含む。スイッチングボード720は、スイッチファブリックユニット(switch fabric unit、SFU)とも呼ばれる。ネットワーク装置が複数のインターフェースボードを有する場合、スイッチングボード720は、インターフェースボード間のデータ交換を完了するように構成される。例えば、インターフェースボード730とインターフェースボード740は、スイッチングボード720を使用することによって互いに通信することができる。
主制御ボード77とインターフェースボード730は結合されている。例えば、主制御ボード77、インターフェースボード730およびインターフェースボード740、ならびにスイッチングボード720は、システムバスを介してシステムバックプレーンに接続され、相互接続を実現する。可能な実施形態では、主制御ボード77とインターフェースボード730との間にプロセス間通信(inter-process communication、IPC)チャネルが確立され、主制御ボード77とインターフェースボード730とは、IPCチャネルを介して互いに通信する。
論理的には、ネットワーク装置700は、制御プレーンおよび転送プレーンを含む。制御プレーンは、主制御ボード77および中央処理ユニット731を含む。転送プレーンは、転送に使用される構成要素、例えば、フォワーディングエントリメモリ734、物理インターフェースカード733、およびネットワークプロセッサ732を含む。制御プレーンは、ルータの機能、転送テーブルの生成、シグナリングおよびプロトコルパケットの処理、装置のステータスの設定および維持などの機能を実行する。制御プレーンは、生成された転送テーブルを転送プレーンに配信する。転送プレーン上で、ネットワークプロセッサ732は、制御プレーンによって配信された転送テーブルを検索し、物理インターフェースカード733によって受信されたパケットを転送する。制御プレーンによって配信された転送テーブルは、フォワーディングエントリメモリ734に格納されてもよい。いくつかの実施形態において、制御プレーンと転送プレーンは、完全に分離されてもよく、同一の装置上になくてもよい。
言うまでもなく、インターフェースボード740上で実行される動作は、本出願のこの実施形態においてインターフェースボード730上で実行される動作と一致する。簡略化のため、詳細は説明しない。言うまでもなく、本実施形態におけるネットワーク装置700は、前記方法の実施形態における第1のネットワーク装置または第2のネットワーク装置に対応するものであってもよい。主制御ボード77、ネットワーク装置700内のインターフェースボード730および/またはインターフェースボード740は、前記方法の実施形態において第1のネットワーク装置によって実施される機能および/またはステップを実施することができる。簡潔にするために、本明細書には詳細は説明しない。
なお、主制御ボードが1つ以上あってもよい。複数の主制御ボードが存在する場合、主制御ボードは、アクティブ主制御ボードおよびスタンバイ主制御ボードを含むことができる。1つまたは複数のインターフェースボードが存在してもよく、より強力なデータ処理能力を有するネットワーク装置は、より多くのインターフェースボードを提供する。また、インターフェースボード上に1つ以上の物理インターフェースカードがあってもよい。スイッチングボードは無くても、1つ以上あってもよい。。複数のスイッチングボードが存在する場合、負荷シェアリングおよび冗長バックアップは、一緒にスイッチングボードによって実施されてもよい。集中転送アーキテクチャでは、ネットワーク装置はスイッチングボードを必要としなくてもよく、インターフェースボードはシステム全体のサービスデータを処理する機能を提供する。分散転送アーキテクチャでは、ネットワーク装置は、少なくとも1つのスイッチングボードを有してもよく、複数のインターフェースボード間のデータ交換は、大容量のデータ交換および処理能力を提供するために、スイッチングボードを使用することによって実現される。従って、分散アーキテクチャにおけるネットワーク装置のデータアクセスおよび処理能力は、集中アーキテクチャにおける装置のそれよりも優れている。任意的に、ネットワーク装置は、代わりに、1つのカードのみが存在する形態であってもよい。具体的には、スイッチボードがなく、インターフェースボードと主制御ボードの機能がカードに統合される。この場合、インターフェースボード上の中央処理ユニットおよび主制御ボード上の中央処理ユニットは、カード上の1つの中央処理ユニットに結合され、2つの中央処理ユニットが結合された後に得られる機能を実行することができる。この形態の装置(例えば、ローエンドのスイッチやルータのようなネットワーク装置)は、比較的弱いデータ交換および処理能力を有する。どのアーキテクチャが具体的に使用されるかは、具体的なネットワーキング展開シナリオに依存し、本明細書では一意に限定されない。
いくつかの可能な実施形態では、第1のネットワーク装置は、仮想化装置として実施されてもよい。例えば、仮想化装置は、パケット送信機能を有するプログラムが動作し、仮想マシンがハードウェア装置(例えば、物理サーバ)上に配置される仮想マシン(English: Virtual Machine、VM)であってもよい。仮想マシンは、ソフトウェアによってシミュレートされ、完全なハードウェアシステム機能を持ち、完全に隔離された環境で動作する完全なコンピュータシステムである。仮想マシンは、第1のネットワーク装置または第2のネットワーク装置として設定することができる。例えば、第1のネットワーク装置又は第2のネットワーク装置は、ネットワーク機能仮想化(Network Functions Virtualization、NFV)技術と組み合わされた汎用物理サーバに基づいて実施されてもよい。第1のネットワーク装置または第2のネットワーク装置は、仮想ホスト、仮想ルータ、または仮想スイッチである。本出願を読んだ後、NFV技術を参照して、当業者は、汎用物理サーバ上で、前記機能を有する第1のネットワーク装置又は第2のネットワーク装置を仮想化することができる。本明細書には、詳細は記載しない。
言うまでもなく、前記製品形態のネットワーク装置は、前記方法の実施形態における第1のネットワーク装置のいずれかの機能を別々に有するが、詳細は本明細書には記載しない。
本出願の一実施形態は、コンピュータプログラム製品を提供する。コンピュータプログラム製品がネットワーク装置上で実行されるとき、ネットワーク装置は、方法200、方法300、または方法500の第1のネットワーク装置によって実行される方法を実行することを可能にする。
図8を参照すると、本出願の一実施形態は、ネットワークシステム800を提供する。システム800は、第1のネットワーク装置801、第2のネットワーク装置802、および第3のネットワーク装置803を含む。任意的に、第1のネットワーク装置801は、方法200における第1のネットワーク装置、ネットワーク装置600、またはネットワーク装置700であってもよい。第2のネットワーク装置802は、方法200における第2のネットワーク装置であってもよい。第3のネットワーク装置803は、方法200における第3のネットワーク装置であってもよい。
本出願の一実施形態は、プロセッサおよびインターフェース回路を含むチップをさらに提供する。インターフェース回路は、命令を受信し、命令をプロセッサに送信するように構成される。プロセッサは、メモリに結合され、メモリは、プログラムまたは命令を記憶するように構成され、プログラムまたは命令がプロセッサによって実行されると、チップシステムは、前記方法の実施形態のいずれかにおける方法を実施することができる。
任意的に、チップシステム内に1つ以上のプロセッサが存在してもよい。プロセッサは、ハードウェアを使用して実施することもできるし、ハードウェアを使用して実施することもできる。プロセッサがハードウェアを使用して実施される場合、プロセッサは、論理回路、集積回路などであってもよい。プロセッサは、ソフトウェアを用いて実施される場合には、汎用プロセッサであってもよく、メモリに記憶されたソフトウェアコードを読み出すことによって実施される。
任意的に、チップシステム内に1つ以上のメモリが存在してもよい。メモリは、プロセッサと一体化されてもよいし、プロセッサとは別個に配置されてもよい。これは、本出願において限定されない。例えば、メモリは、非一時的プロセッサ、例えば、読み出し専用メモリROMであってもよい。メモリおよびプロセッサは、同じチップに集積されてもよく、または異なるチップ上に別々に配置されてもよい。メモリの種類、およびメモリおよびプロセッサを配置する方法は、本出願において特に限定されない。
例えば、チップシステムは、フィールドプログラマブルゲートアレイ(field programmable gate array、FPGA)、特定用途向け集積チップ(application-specific integrated circuit、ASIC)、システムオンチップ(system on chip、SoC)、中央処理ユニット(central processing unit、CPU)、ネットワークプロセッサ(network processor、NP)、デジタル信号プロセッサ(digital signal processor、DSP)、マイクロコントローラユニット(micro controller unit、MCU)、プログラマブルロジック装置(programmable logic device、PLD)、または別の集積チップであってもよい。
以上、本出願の実施形態を詳細に説明した。本出願の実施形態における方法のステップは、実際の要件に基づいて、順次的にスケジュールされ、組み合わされ、または削除され得る。本出願の実施形態における装置のモジュールは、実際の要件に基づいて分割、結合、または削除することができる。
言うまでもなく、明細書全体に記載されている「1つの実施形態」又は「一実施形態」とは、当該実施形態に関連する特定のフィーチャー、構造、又は特徴が本願の少なくとも一実施形態に含まれることを意味する。したがって、明細書全体に記載されている「1つの実施形態」又は「一実施形態」は、必ずしも同一の実施形態を意味するものではない。さらに、これらの特定のフィーチャー、構造、または特徴は、1つ以上の実施形態において、任意の適切な方法で組み合わせることができる。言うまでもなく、前記プロセスのシーケンス番号は、本出願の種々の実施態様における実行シーケンスを意味しないことを理解されたい。プロセスの実行シーケンスは、プロセスの機能及び内部論理に基づいて決定されるべきであり、本出願の実施形態の実施プロセスに対する制限と解釈すべきではない。
本明細書では、関連するオブジェクトを記述するための関連関係のみを記述し、3つの関係が存在し得ることを表す。例えば、Aおよび/またはBは、Aのみが存在し、AとBの両方が存在し、Bのみが存在する場合を表す。また、本明細書では、文字「/」は、通常、関連するオブジェクト間の「または」関係を表す。
言うまでもなく、本出願の実施形態において、「Aに対応するB」とは、BがAに関連し、BがAに従って決定され得ることを意味する。しかし、言うまでもなくさらに、Aに従ってBを決定することは、BがAのみに基づいて決定されることを意味するものではない。Bは、代替的に、Aおよび/またはその他の情報に従って決定され得る。
当業者には既知かも知れないが、本明細書に開示された実施形態と組み合わせて、実施例のユニットおよびアルゴリズムステップは、電子的ハードウェア、コンピュータソフトウェア、またはそれらの組み合わせによって実施することができる。ハードウェアとソフトウェアとの間の互換性を明確に説明するために、前記説明では、一般的に、機能に基づいた各実施例の組成およびステップについて説明した。機能がハードウェアかソフトウェアかは、具体的なアプリケーションと技術的ソリューションの設計制約条件に依存する。当業者であれば、具体的なアプリケーションごとに、説明した機能を実現するために異なる方法を用いることができるが、その実施形態が本出願の範囲を超えるものであると考えてはならない。
当業者には言うまでもなく、便利で簡潔な説明のために、前記システム、装置、およびユニットの詳細な動作プロセスについては、方法の実施形態における対応するプロセスを参照されたい。詳細は、ここでは再度説明しない。
本出願で提供されるいくつかの実施形態では、言うまでもなく、開示のシステム、装置、および方法は、他の方法で実施することができる。例えば、説明した装置の実施形態は単なる例である。たとえば、ユニットへの分割は単に論理的な機能分割にすぎない。実際の実施においは、別の分割方法があるかもしれない。例えば、複数のユニット又は構成要素は、別のシステムに結合又は統合されてもよく、或いはいくつかのフィーチャーは、無視されても又は実行されなくてもよい。さらに、表示または説明された相互結合、直接結合、または通信接続は、いくつかのインターフェースを介して実施されてもよい。装置またはユニット間の間接結合または通信接続は、電子的、機械的、または他の形態で実施することができる。
別個のパーツとして記載されるユニットは、物理的に分離されていても、されていなくてもよく、ユニットとして表示されるパーツは、物理的ユニットであってもなくてもよく、1つの場所に配置されていてもよく、または複数のネットワークユニット上に分散されていてもよい。ユニットの一部または全部は、実施形態のソリューションの目的を達成するために実際の要件に基づいて選択されてもよい。
さらに、本出願の実施形態における機能ユニットは、1つの処理ユニットに集積されてもよく、またはユニットの各々は、物理的に単独で存在してもよく、または2つ以上のユニットが1つのユニットに集積されてもよい。統合されたユニットは、ハードウェアの形態で実施されてもよく、またはソフトウェア機能ユニットの形態で実施されてもよい。
統合されたユニットがソフトウェア機能ユニットの形態で実施され、独立した製品として販売または使用される場合、統合されたユニットは、コンピュータ読取可能な記憶媒体に記憶され得る。このような理解に基づいて、本出願の技術的ソリューションは、本質的に、従来技術に寄与する部分、又は技術的ソリューションの全部若しくは一部は、ソフトウェア製品の形態で実施することができる。コンピュータソフトウェア製品は、記憶媒体に記憶され、(パーソナルコンピュータ、サーバ、ネットワーク装置/サーバなどであり得る) コンピュータ装置に、本出願の実施形態における方法の全部または一部のステップを実行するように指示するための幾つかの命令を含む。前記記憶媒体は、USBフラッシュドライブ、リムーバブルハードディスク、読み出し専用メモリ、ランダムアクセスメモリ、磁気ディスク、または光ディスクのようなプログラムコードを記憶することができる任意の媒体を含む。