(57)【要約】【課題】本出願の実施例には、メッセージ転送方法、装置及びノードが開示されている。【解決手段】そのうち、前記方法は、インターネットプロトコルバージョンＩＰｖ６セグメントルーティングＳＲｖ６転送機能を有するノードは、セグメントルーティングヘッダーＳＲＨによるカプセル化を含むＩＰｖ６メッセージを受信し、前記ＳＲＨはセグメントリストを含むことと、前記ノードは、それ自体が前記セグメントリストにおける最後から２番目のセグメントに対応するノードであることを決定し、前記ＩＰｖ６メッセージを転送する前に、前記ＳＲＨをポップアップすることとを含む。【選択図】図１
2021525469.tif 000002
【特許請求の範囲】
【請求項１】
インターネットプロトコルバージョンＩＰｖ６セグメントルーティングＳＲｖ６転送機能を有するノードは、セグメントルーティングヘッダーＳＲＨによるカプセル化を含むＩＰｖ６メッセージを受信し、前記ＳＲＨはセグメントリストを含むことと、
前記ノードは、それ自体が前記セグメントリストにおける最後から２番目のセグメントに対応するノードであることを決定し、前記ＩＰｖ６メッセージを転送する前に、前記ＳＲＨをポップアップすることとを含むメッセージ転送方法。
【請求項２】
前記のＳＲｖ６転送機能を有するノードに、ＳＲｖ６ セグメントルーティングヘッダーの最後から２番目のセグメントポップＰＳＰ機能スイッチを配置することをさらに含む請求項１に記載のメッセージ転送方法。
【請求項３】
前記ＳＲＨをポップアップする前に、
前記ノードは前記ＳＲｖ６ ＰＳＰ機能スイッチがオンの状態となることを決定することをさらに含む請求項２に記載のメッセージ転送方法。
【請求項４】
前記ノードはそれ自体が前記セグメントリストにおける最後から２番目のセグメントに対応するノードであることを決定する前に、
前記ノードは、前記ＩＰｖ６メッセージにおけるＩＰｖ６宛先アドレスＤＡが自身のアドレスであることを決定することをさらに含む請求項１に記載のメッセージ転送方法。
【請求項５】
前記ノードはそれ自体が前記セグメントリストにおける最後から２番目のセグメントに対応するノードであることを決定することは、
前記ＳＲＨにおける残りのセグメント数Ｓｅｇｍｅｎｔ Ｌｅｆｔフィールドの値が１であることに基づいて、自体が前記セグメントリストにおける最後から２番目のセグメントに対応するノードであることを決定することを含む請求項１に記載のメッセージ転送方法。
【請求項６】
前記ノードはそれ自体が前記セグメントリストにおける最後から２番目のセグメントに対応するノードであることを決定した後に、
１をＳｅｇｍｅｎｔ Ｌｅｆｔフィールドの値から減算し、ＩＰｖ６ ＤＡを前記セグメントリストにおける次のセグメントに対応するＩＰｖ６アドレスに更新し、更新されたＩＰｖ６ ＤＡによって前記ＩＰｖ６メッセージを転送することをさらに含む請求項５に記載のメッセージ転送方法。
【請求項７】
前記ＳＲＨにおけるＳｅｇｍｅｎｔ Ｌｅｆｔフィールドの値が０であることに基づいて、自体が前記セグメントリストにおける最後のセグメントに対応するノードであることを決定し、前記ＳＲＨをポップアップし、前記ＳＲＨによりカプセル化されたペイロードを処理することをさらに含む請求項１〜６のいずれか一項に記載のメッセージ転送方法。
【請求項８】
前記ＳＲＨにおけるＳｅｇｍｅｎｔ Ｌｅｆｔフィールドの値が１を超えていることに基づいて、自体が前記セグメントリストにおける２番目のセグメント及び最後のセグメントを除く他のセグメントに対応するノードであることを決定し、１をＳｅｇｍｅｎｔ Ｌｅｆｔフィールドの値から減算し、ＩＰｖ６ ＤＡを前記セグメントリストにおける次のセグメントに対応するＩＰｖ６アドレスに更新し、更新されたＩＰｖ６ ＤＡによって前記ＩＰｖ６メッセージを転送することをさらに含む請求項１〜６のいずれか一項に記載のメッセージ転送方法。
【請求項９】
セグメントルーティングヘッダーＳＲＨによるカプセル化を含むインターネットプロトコルバージョンＩＰｖ６メッセージを受信するように設けられた受信モジュールであって、前記ＳＲＨはセグメントリストを含む受信モジュールと、
自体が前記セグメントリストにおける最後から２番目のセグメントに対応するノードであることを決定し、前記ＩＰｖ６メッセージを転送する前に、前記ＳＲＨをポップアップするように設けられる転送モジュールとを含むメッセージ転送装置。
【請求項１０】
プロセッサと、
前記プロセッサの実行可能な命令を格納するように設けられるメモリと、
前記プロセッサの制御によって情報の送受信を行うように設けられる伝送装置とを含み、
そのうち、前記プロセッサは、以下の操作を実行するように設けられる。
前記伝送装置がセグメントルーティングヘッダーＳＲＨによるカプセル化を含むインターネットプロトコルバージョンＩＰｖ６メッセージを受信するように制御し、前記ＳＲＨはセグメントリストを含み、
自体が前記セグメントリストにおける最後から２番目のセグメントに対応するノードであることを決定し、前記伝送装置が前記ＩＰｖ６メッセージを転送するように制御する前に、前記ＳＲＨをポップアップするノード。
【請求項１１】
コンピュータプログラムが格納されており、そのうち、前記コンピュータプログラムは実行する際に上記の請求項１〜８のいずれか一項に記載のメッセージ転送方法を実行するように設けられる記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、２０１８年５月３０日付けで中国特許局に出願し、出願番号が２０１８１０５３８６９０．４号である中国特許出願を基礎として優先権を主張し、当該出願の全ての開示内容が参照によって本出願に組み込まれる。
【０００２】
本出願は、データ通信分野に関し、例えばメッセージ転送方法、装置及びノードに関する。
【背景技術】
【０００３】
ルーティング技術に関する基準において、ｄｒａｆｔ−ｉｅｔｆ−ｓｐｒｉｎｇ−ｓｅｇｍｅｎｔ−ｒｏｕｔｉｎｇ−１５は、セグメントルーティング（Ｓｅｇｍｅｎｔ  Ｒｏｕｔｉｎｇ）のフレームについて記載されており、セグメントルーティング技術により、１つのノードは、通常の最短の経路に従って転送することなく、特定のメッセージに対してその転送経路を指定することができる。セグメント識別子（Ｓｅｇｍｅｎｔ ＩＤ、ＳＩＤ）からなるセグメントリスト（Ｓｅｇｍｅｎｔ Ｌｉｓｔ）に関する情報をメッセージに付加することによって、中間ノードで経路毎における状態情報をメンテナンスする必要がない。
【０００４】
ｄｒａｆｔ−ｆｉｌｓｆｉｌｓ−ｓｐｒｉｎｇ−ｓｒｖ６−ｎｅｔｗｏｒｋ−ｐｒｏｇｒａｍｍｉｎｇ−０３は、如何にしてセグメントルーティングをインターネットプロトコルバージョン６（Ｉｎｔｅｒｎｅｔ Ｐｒｏｔｏｃｏｌ Ｖｅｒｓｉｏｎ ６、ＩＰｖ６）転送平面に応用するか、即ちＩＰｖ６セグメントルーティング（ＩＰｖ６ Ｓｅｇｍｅｎｔ Ｒｏｕｔｉｎｇ、ＳＲｖ６）について記載されている。ＩＰｖ６メッセージにルーティング拡張ヘッダーセグメントルーティングヘッダー（Ｓｅｇｍｅｎｔ Ｒｏｕｔｉｎｇ Ｈｅａｄｅｒ、ＳＲＨ）を挿入することで、ＳＲＨには、ＩＰｖ６アドレスリストで示されるＳｅｇｍｅｎｔ Ｌｉｓｔが含まれており、メッセージの宛先アドレスがセクション毎に更新され、セクション毎に転送することを完了する。このドラフトにおいて、異なる機能（Ｆｕｎｃｔｉｏｎ）を有する幾つかのＳＩＤが定義され、特にＥＮＤ、ＥＮＤ．Ｘ、ＥＮＤ．Ｔという３つのＦｕｎｃｔｉｏｎタイプ（関数のタイプ）のＳＩＤに対して、対応するＳＲＨの最後から２番目のセグメントポップ（Ｐｅｎｕｌｔｉｍａｔｅ Ｓｅｇｍｅｎｔ ＰＯＰ ｏｆ ｔｈｅ ＳＲＨ、ＰＳＰ）及びＳＲＨの最後のセグメントポップ（Ｕｌｔｉｍａｔｅ Ｓｅｇｍｅｎｔ Ｐｏｐ ｏｆ ｔｈｅ ＳＲＨ、ＵＳＰ）のバリアントも定義されている。ＰＳＰとは、メッセージがＳＲＨにおける最後から２番目のセグメント（Ｓｅｇｍｅｎｔ）に対応するノードに到着する際に予定を繰り上げてＳＲＨをポップアップすることであり、マルチプロトコルラベルスイッチング（Ｍｕｌｔｉ−Ｐｒｏｔｏｃｏｌ Ｌａｂｅｌ Ｓｗｉｔｃｈｉｎｇ、ＭＰＬＳ）により転送された最後から２番目のホップ・ポッピング（Ｐｅｎｕｌｔｉｍａｔｅ Ｈｏｐ ＰＯＰ、ＰＨＰ）と類似する。ＵＳＰとは、メッセージがＳＲＨにおける最後のｓｅｇｍｅｎｔに対応するノードに到着する際にＳＲＨをポップアップすることである。
【０００５】
ＰＳＰ又はＵＳＰを支援するために、ｄｒａｆｔ−ｂａｓｈａｎｄｙ−ｉｓｉｓ−ｓｒｖ６−ｅｘｔｅｎｓｉｏｎｓ−０１において、如何にして内部ゲートウェイプロトコル（Ｉｎｔｅｒｉｏｒ Ｇａｔｅｗａｙ Ｐｒｏｔｏｃｏｌ、ＩＧＰ）エリア（ａｒｅａ）内にＥＮＤ、ＥＮＤ．Ｘ等のＦｕｎｃｔｉｏｎタイプのＳＩＤをフラッディングし且つＰＳＰ又はＵＳＰ識別子を携帯することが定義されており、後続のメッセージがＳＲＨにおける最後から２番目のｓｅｇｍｅｎｔに対応するノードに到着して処理する際に、最後のＳＩＤに対応するテーブルエントリにＰＳＰ又はＵＳＰ識別子が含まれるか否かに基づいて、予定を繰り上げてＳＲＨをポップアップするか否かを決定する。
【０００６】
現在の基準では、ＰＳＰ（又はＵＳＰ）は具体的なＳＩＤに関連付けられているが、全てのＦｕｎｃｔｉｏｎタイプのＳＩＤは、例えばＶＰＮ（Ｖｉｒｔｕａｌ Ｐｒｉｖａｔｅ Ｎｅｔｗｏｒｋ、仮想プライベートネットワーク）サービスに関するＳＩＤ等は、いずれもＩＧＰドメイン内でフラッディングすることが可能又は適宜であるわけではない。従って、現在の基準では、全てのＦｕｎｃｔｉｏｎタイプのＳＩＤに対してＰＳＰを支援することができない。
【発明の概要】
【０００７】
本出願の実施例には、メッセージ転送方法、装置及びノードが提供され、関連する基準においてＦｕｎｃｔｉｏｎタイプが限られているＳＩＤを支援するＰＳＰに対して、全てのＦｕｎｃｔｉｏｎタイプのＳＩＤを支援するＰＳＰメカニズムが提供される。
【０００８】
本出願の実施例には、メッセージ転送方法が提供され、当該メッセージ転送方法は、
ＩＰｖ６セグメントルーティングＳＲｖ６転送機能を有するノードは、セグメントルーティングヘッダーＳＲＨによるカプセル化を含むＩＰｖ６メッセージを受信し、前記ＳＲＨはセグメントリストを含むことと、
前記ノードは、それ自体が前記セグメントリストにおける最後から２番目のセグメントに対応するノードであることを決定し、前記ＩＰｖ６メッセージを転送する前に、前記ＳＲＨをポップアップすることとを含む。
【０００９】
本出願の実施例には、メッセージ転送装置がさらに提供され、当該メッセージ転送装置は、
ＳＲＨによるカプセル化を含むＩＰｖ６メッセージを受信するように設けられた受信モジュールであって、前記ＳＲＨはセグメントリストを含む受信モジュールと、
自体が前記セグメントリストにおける最後から２番目のセグメントに対応するノードであることを決定し、前記ＩＰｖ６メッセージを転送する前に、前記ＳＲＨをポップアップするように設けられる転送モジュールとを含む。
【００１０】
本出願の実施例には、ノードがさらに提供され、当該ノードは、
プロセッサと、
前記プロセッサの実行可能な命令を格納するためのメモリと、
前記プロセッサの制御によって情報の送受信を行うための伝送装置とを含み、
そのうち、前記プロセッサは、以下の操作を実行するように設けられる。
前記伝送装置がＳＲＨによるカプセル化を含むＩＰｖ６メッセージを受信するように制御し、前記ＳＲＨはセグメントリストを含み、
自体が前記セグメントリストにおける最後から２番目のセグメントに対応するノードであることを決定し、前記伝送装置が前記ＩＰｖ６メッセージを転送するように制御する前に、前記ＳＲＨをポップアップする。
【図面の簡単な説明】
【００１１】
図面は、本出願の技術案に対する更なる理解を容易にするために使用され、明細書の一部を構成し、本出願の実施例と共に本出願の技術案を説明するためのものであり、本出願の技術案を限定するものではない。
【００１２】
【図１】図１は、本出願の実施例に係るメッセージ転送方法を示すフローチャートである。
【図２】図２は、本出願の実施例に係る別のメッセージ転送方法を示すフローチャートである。
【図３】図３は、本出願の第１応用実例のネットワークトポロジを示す図である。
【図４】図４は、本出願の第２応用実例のネットワークトポロジを示す図である。
【図５】図５は、本出願の実施例に係るメッセージ転送装置を示す図である。
【図６】図６は、本出願の実施例に係るノードの構成を示す図である。
【発明を実施するための形態】
【００１３】
以下、図面を組み合わせて本出願の実施例を詳しく説明する。なお、互いに衝突しない限り、本出願の実施例及び実施例に記載の特徴を任意に組み合わせることができる。
【００１４】
図面のフローチャートに示されるステップは、例えば１セットのコンピュータ実行可能な命令のコンピュータシステムで実行されることができる。また、フローチャートに論理的な順序が示されているが、場合によっては、ここでの順序と異なる順序で示される又は記載されるステップを実行してもよい。
【００１５】
図１に示されるように、本出願の実施例に係るメッセージ転送方法は、以下のステップを含む。
【００１６】
ステップ１０１、ＳＲｖ６転送機能を有するノードは、ＳＲＨによるカプセル化を含むＩＰｖ６メッセージを受信し、前記ＳＲＨはセグメントリスト（Ｓｅｇｍｅｎｔ  Ｌｉｓｔ）を含む。
【００１７】
ステップ１０２、前記ノードは、それ自体が前記セグメントリストにおける最後から２番目のセグメントに対応するノードであることを決定し、前記ＩＰｖ６メッセージを転送する前に、前記ＳＲＨをポップアップする。
【００１８】
本出願の実施例では、ＳＲｖ６におけるＰＳＰを一種のノード能力として実現し、具体的なＳＩＤからデカップリングしている。ＳＲｖ６転送機能を備えたノードは、ＳＲＨによりカプセル化されたメッセージを解析する時に、それ自体がＳＲＨにおける最後から２番目のＳｅｇｍｅｎｔに対応するノードであることを発見した場合、予定を繰り上げてこのＳＲＨをポップアップし、これによって、全てのＦｕｎｃｔｉｏｎタイプのＳＩＤはいずれもＰＳＰを支援することを実現することができ、ＰＳＰに対する支援を全面的且つ徹底的なものにする。
【００１９】
１つの実施例では、ＳＲｖ６転送機能を備えたノードにＳＲｖ６ ＰＳＰ機能スイッチが配置されている。
【００２０】
このように、必要に応じて、ＳＲｖ６ ＰＳＰ機能スイッチをオン又はオフの状態に設定することができる。
【００２１】
相応的に、前記ノードはそれ自体が前記セグメントリストにおける最後から２番目のセグメントに対応するノードであることを決定し、且つ前記ＳＲｖ６ ＰＳＰ機能スイッチがオンの状態となることを決定した場合、前記ＩＰｖ６メッセージを転送する前に、前記ＳＲＨをポップアップする。
【００２２】
１つの実施例では、前記ノードはそれ自体が前記セグメントリストにおける最後から２番目のセグメントに対応するノードであることを決定する前に、上記の方法は以下のことをさらに含む。
【００２３】
前記ノードは、前記ＩＰｖ６メッセージにおけるＩＰｖ６宛先アドレス（Ｄｅｓｔｉｎａｔｉｏｎ Ａｄｄｒｅｓｓ、ＤＡ）が自身のアドレスであることを決定する。
【００２４】
そのうち、前記ノードは前記ＩＰｖ６ ＤＡが自身のアドレスではないと決定した場合、最短経路に従ってメッセージを転送する。
【００２５】
１つの実施例では、前記ＳＲＨにおける残りのセグメント数（Ｓｅｇｍｅｎｔ Ｌｅｆｔ）フィールドの値に基づいて、前記ノードは、それ自体が前記セグメントリストにおける最後から２番目のセグメントに対応するノードであることを決定する。
【００２６】
前記Ｓｅｇｍｅｎｔ Ｌｅｆｔフィールドの値は次の３つの結果であってもよい。
【００２７】
１．Ｓｅｇｍｅｎｔ Ｌｅｆｔフィールドの値は０である。
【００２８】
この場合、自体が前記セグメントリストにおける最後のセグメントに対応するノードであることを決定し、前記ＳＲＨをポップアップし、前記ＳＲＨによりカプセル化されたペイロードを処理する。
【００２９】
２．Ｓｅｇｍｅｎｔ Ｌｅｆｔフィールドの値は１である。
【００３０】
この場合、自体が前記セグメントリストにおける最後から２番目のセグメントに対応するノードであることを決定する。
【００３１】
そのうち、前記Ｓｅｇｍｅｎｔ Ｌｅｆｔフィールドの値が１である場合、１をＳｅｇｍｅｎｔ Ｌｅｆｔフィールドの値から減算し、ＩＰｖ６ ＤＡを前記セグメントリストにおける次のセグメントに対応するＩＰｖ６アドレスに更新し、更新されたＩＰｖ６ ＤＡによって前記ＩＰｖ６メッセージを転送する。転送する前に、前記ＳＲＨをポップアップする。
【００３２】
３．Ｓｅｇｍｅｎｔ Ｌｅｆｔフィールドの値は１を超えている。
【００３３】
この場合、自体が前記セグメントリストにおける２番目のセグメント及び最後のセグメントを除く他のセグメントに対応するノードであることを決定し、１をＳｅｇｍｅｎｔ Ｌｅｆｔフィールドの値から減算し、ＩＰｖ６ ＤＡを前記セグメントリストにおける次のセグメントに対応するＩＰｖ６アドレスに更新し、更新されたＩＰｖ６ ＤＡによって前記ＩＰｖ６メッセージを転送する。
【００３４】
図２に示されるのは、本出願の実施例に係る別のメッセージ転送方法を示すフローチャートであり、以下のステップを含む。
【００３５】
ステップ２０１、ＳＲｖ６転送機能を備えた全てのノードにＳＲｖ６ ＰＳＰ機能スイッチを配置する。
【００３６】
そのうち、ＳＲｖ６ ＰＳＰ機能スイッチを配置しなければ、ＳＲｖ６ ＰＳＰ機能がないと認定され、即ちＳＲｖ６ ＵＳＰ能力のみが認定されている。
【００３７】
ステップ２０２、ＳＲｖ６転送機能を備えたノードは、ＳＲＨによるカプセル化を含むＩＰｖ６メッセージを受信した時に、ＩＰｖ６ ＤＡが当該ノード自身のアドレスである場合、当該ノードはＩＰｖ６ヘッダーの後のＳＲＨを解析し続ける。
【００３８】
ステップ２０３、ＳＲＨにおけるＳｅｇｍｅｎｔ Ｌｅｆｔフィールドの値をチェックし、Ｓｅｇｍｅｎｔ Ｌｅｆｔフィールドの値が０である場合、ステップ２０４を実行し、Ｓｅｇｍｅｎｔ Ｌｅｆｔフィールドの値が１である場合、ステップ２０５を実行し、Ｓｅｇｍｅｎｔ Ｌｅｆｔフィールドの値が１を超えている場合、ステップ２０６を実行する。
【００３９】
ステップ２０４、当該ノードはＳＲＨのＳｅｇｍｅｎｔ Ｌｉｓｔにおける最後のＳｅｇｍｅｎｔに対応するノードであり、この場合、ＳＲＨをポップアップ（即ち、除去）し、ＳＲＨによりカプセル化されたペイロードを処理し続け、プロセスを終了する。
【００４０】
ステップ２０５、当該ノードはＳＲＨのＳｅｇｍｅｎｔ Ｌｉｓｔにおける最後から２番目のＳｅｇｍｅｎｔに対応するノードであり、１をＳｅｇｍｅｎｔ Ｌｅｆｔから減算した後にＳＲＨのＳｅｇｍｅｎｔ Ｌｉｓｔから次のＳｅｇｍｅｎｔを取得し、ＩＰｖ６ ＤＡを次のＳｅｇｍｅｎｔに対応するＩＰｖ６アドレスに更新し、ステップ２０７を実行する。
【００４１】
ステップ２０６、当該ノードはＳＲＨのＳｅｇｍｅｎｔ Ｌｉｓｔにおける最後から２番目のＳｅｇｍｅｎｔ及び最後のＳｅｇｍｅｎｔを除く他のＳｅｇｍｅｎｔに対応するノードであり、この場合、１をＳｅｇｍｅｎｔ Ｌｅｆｔから減算した後にＳＲＨのＳｅｇｍｅｎｔ Ｌｉｓｔから次のＳｅｇｍｅｎｔを取得し、ＩＰｖ６ ＤＡを次のＳｅｇｍｅｎｔに対応するＩＰｖ６アドレスに更新し、ステップ２０９を実行する。
【００４２】
ステップ２０７、ＳＲｖ６ ＰＳＰ機能スイッチをオンにするか否かをチェックし、ＹＥＳである場合、ステップ２０８を実行し、ＮＯである場合、ステップ２０９を実行する。
【００４３】
ステップ２０８、前記ＳＲＨをポップアップする。
【００４４】
ステップ２０９、新たなＩＰｖ６ ＤＡの表検索によってＩＰｖ６メッセージを転送し、プロセスを終了する。
【００４５】
以下、幾つかの応用実例について説明する。
第１応用実例
【００４６】
図３のネットワークトポロジ図に示されるように、Ｒ１からＲ９までのＳＲｖ６−トラヒックエンジニアリング（Ｔｒａｆｆｉｃ Ｅｎｇｉｎｅｅｒｉｎｇ、ＴＥ）経路を確立し、その経路情報は＜ｎｏｄｅ−Ｒ３、ｌｉｎｋ−Ｒ３Ｒ７、ｎｏｄｅ−Ｒ９＞であり、即ち、当該経路に沿って転送されたメッセージはまず最短の経路に沿ってノードＲ３まで転送され、そして、リンクＲ３Ｒ７に沿ってノードＲ７まで転送され、最後に最短の経路に沿ってノードＲ９まで転送される。ノードＲ３に配置されたＥＮＤ ＳＩＤをａ３：：１とし、ノードＲ３においてリンクＲ３Ｒ７のＥＮＤ．Ｘ ＳＩＤをａ３：：２とすると仮定すると、類似するノードＲ９には、ＥＮＤ ＳＩＤをａ９：：１として設定することができる。メッセージ転送のステップは下記の通りである。
【００４７】
ステップ３０１、ＳＲｖ６転送機能を支援するノードＲ１、Ｒ３、Ｒ９において、ＳＲｖ６ ＰＳＰ機能スイッチをオンに設定し、そうすると、これらのノードはいずれもＳＲＨによりカプセル化されたメッセージを解析する際に、それ自体がＳＲＨにおける最後から２番目のＳｅｇｍｅｎｔに対応するノードであることを発見した場合、予定を繰り上げて当該ＳＲＨをポップアップする。
【００４８】
ステップ３０２、Ｒ１においてトラヒックを上記の確立されたＳＲｖ６−ＴＥ経路に導入する時に、直接にペイロードの直前にＩＰｖ６ヘッダー（ｈｅａｄｅｒ）＋ＳＲＨをカプセル化し、ＳＲＨに含まれたＳｅｇｍｅｎｔ Ｌｉｓｔは｛ａ３：：１、ａ３：：２、ａ９：：１｝であり、ＳＲＨにおけるＳｅｇｍｅｎｔ Ｌｅｆｔ初期値は３である。ＩＰｖ６ ｈｅａｄｅｒにおけるＤＡをまず、最初のｓｅｇｍｅｎｔ、即ちａ３：：１としてコピーし、１をＳＲＨにおけるＳｅｇｍｅｎｔ Ｌｅｆｔフィールドから減算して２となり、メッセージは最短の経路に沿って宛先のＲ３ノードに転送される。
【００４９】
ステップ３０３、メッセージはＲ２に到着し、Ｒ２ノードがＳｅｇｍｅｎｔ Ｌｉｓｔに含まれていないため、ＳＲｖ６機能を支援する必要がない。Ｒ２は最短の経路に沿ってメッセージをＲ３に転送し続ける。
【００５０】
ステップ３０４、メッセージはＲ３に到着し、Ｒ３において、ＩＰｖ６ ＤＡ（ａ３：：１である）がそのローカル（ｌｏｃａｌ）にメンテナンスされたｌｏｃａｌ ＳＩＤテーブルエントリ（ａ３：：１／１２８）にヒットすることが発見され、そのｆｕｎｃｔｉｏｎはＥＮＤである。そして、Ｒ３は１をＳＲＨにおけるＳｅｇｍｅｎｔ Ｌｅｆｔから減算した（１をＳｅｇｍｅｎｔ Ｌｅｆｔから減算して１となった）後に次のｓｅｇｍｅｎｔ（ａ３：：２）を取得して、ＤＡにコピーする。ルーティングテーブルの検索に基づいてメッセージを転送し続ける。
【００５１】
ステップ３０５、Ｒ３において、ＤＡ（ａ３：：２）がそのローカルにメンテナンスされたｌｏｃａｌ ＳＩＤテーブルエントリ（ａ３：：２／１２８）にヒットし続けることが発見され、そのｆｕｎｃｔｉｏｎはＥＮＤ．Ｘである。そして、Ｒ３は１をＳＲＨにおけるＳｅｇｍｅｎｔ Ｌｅｆｔから減算した（１をＳｅｇｍｅｎｔ Ｌｅｆｔから減算して０となり、この場合、Ｒ３はそれが最後から２番目のＳｅｇｍｅｎｔの所属するノードであることを発見した）後に次のｓｅｇｍｅｎｔ（ａ９：：１）を取得して、ＤＡにコピーする。Ｒ３はメッセージをリンクＲ３Ｒ７に転送し続ける前に、ＳＲｖ６ ＰＳＰ機能スイッチをオンに設定したことを確認した場合、予定を繰り上げてメッセージにおけるＳＲＨをポップアップしてから転送する。
【００５２】
ステップ３０６、メッセージはＲ７に到着し、Ｒ７は最短の経路に沿ってメッセージをＲ８へ転送し続ける。
【００５３】
ステップ３０７、メッセージはＲ８に到着し、Ｒ８は最短の経路に沿ってメッセージをＲ９へ転送し続ける。
【００５４】
ステップ３０８、メッセージはＲ９に到着し、Ｒ９において、ＩＰｖ６ ＤＡ（ａ９：：１）がそのローカルにメンテナンスされたｌｏｃａｌ ＳＩＤテーブルエントリ（ａ９：：１／１２８）にヒットすることが発見され、そのｆｕｎｃｔｉｏｎはＥＮＤである。Ｒ９はＩＰｖ６ ｈｅａｄｅｒを除去し、ＩＰｖ６ ｈｅａｄｅｒによりカプセル化されたペイロードを処理し続ける。
第２応用実例
【００５５】
図４に示されるネットワークトポロジ図には、Ｌ３ＶＰＮ ｏｖｅｒ ＳＲｖ６−ＴＥのメッセージ転送が示されており、図４におけるＣＥはカスタマエッジ（Ｃｕｓｔｏｍｅｒ Ｅｄｇｅ）を表し、公衆ネットワークの配置は第１実施例と同じであり、ＶＰＮｖ４ ｏｖｅｒ ＳＲｖ６−ＴＥを例とすると、Ｒ９において、仮想ルーティング転送（Ｖｉｒｔｕａｌ Ｒｏｕｔｉｎｇ Ｆｏｒｗａｒｄｉｎｇ、ＶＲＦ）実例に対してＥＮＤ．ＤＴ４ＳＩＤをａ９：：１０に設定することができる。また、Ｒ１においてＶＲＦに対してトンネルポリシーを配置することができ、これによってＶＰＮルーティングを強引にＳＲｖ６−ＴＥ経路に繰り返し、又は、Ｒ９がＲ１にＶＰＮルーティングを報知すると同時に、ボーダー・ゲートウェイ・プロトコル（Ｂｏｒｄｅｒ Ｇａｔｅｗａｙ Ｐｒｏｔｏｃｏｌ、ＢＧＰ）カラー拡張コミュニティ（Ｃｏｌｏｒ Ｅｘｔｅｎｄｅｄ Ｃｏｍｍｕｎｉｔｙ）属性を携帯し、これによってもＲ１はＶＰＮルーティングを、対応するＣｏｌｏｒを有し宛先アドレスがＲ９であるＳＲ−ＴＥ経路に繰り返す。Ｒ１においてＶＰＮルーティングをＳＲ−ＴＥ経路に繰り返し、当該ＳＲ−ＴＥ経路に対応するＳｅｇｍｅｎｔ Ｌｉｓｔは｛ａ３：：１、ａ３：：２、ａ９：：１｝であり、メッセージを転送する際に、ＳＲｖ６ ＶＰＮ ＳＩＤ（ａ９：：１０）は最後に追加されることができ、即ち｛ａ３：：１、ａ３：：２、ａ９：：１、ａ９：：１０｝を取得する。ただし、Ｒ１はそのうちのａ９：：１を取り除くことができ、簡略化された｛ａ３：：１、ａ３：：２、ａ９：：１０｝を取得することができる。メッセージ転送のステップは下記の通りである。
【００５６】
ステップ４０１、ＳＲｖ６転送機能を支援するノードＲ１、Ｒ３、Ｒ９において、ＳＲｖ６ ＰＳＰ機能スイッチをオンに設定し、そうすると、これらのノードはいずれもＳＲＨによりカプセル化されたメッセージを解析する際に、それ自体がＳＲＨにおける最後から２番目のＳｅｇｍｅｎｔに対応するノードであることを発見した場合、予定を繰り上げて当該ＳＲＨをポップアップする。
【００５７】
ステップ４０２、Ｒ１においてＶＰＮトラヒックを上記の確立されたＳＲｖ６−ＴＥ経路に導入する時に、直接にペイロードの直前にＩＰｖ６ ｈｅａｄｅｒ＋ＳＲＨをカプセル化し、ＳＲＨに含まれたＳｅｇｍｅｎｔ Ｌｉｓｔは｛ａ３：：１、ａ３：：２、ａ９：：１０｝であり、ＳＲＨにおけるＳｅｇｍｅｎｔ Ｌｅｆｔ初期値は３である。ＩＰｖ６ ｈｅａｄｅｒにおけるＤＡをまず、最初のｓｅｇｍｅｎｔ、即ちａ３：：１としてコピーし、１をＳＲＨにおけるＳｅｇｍｅｎｔ Ｌｅｆｔフィールドから減算して２となり、メッセージは最短の経路に沿って宛先のＲ３ノードに転送される。
【００５８】
ステップ４０３、メッセージはＲ２に到着し、Ｒ２ノードがＳｅｇｍｅｎｔ Ｌｉｓｔに含まれていないため、ＳＲｖ６機能を支援する必要がない。Ｒ２は最短の経路に沿ってメッセージをＲ３に転送し続ける。
【００５９】
ステップ４０４、メッセージはＲ３に到着し、Ｒ３において、ＩＰｖ６ ＤＡ（ａ３：：１である）がそのローカルにメンテナンスされたｌｏｃａｌ ＳＩＤテーブルエントリ（ａ３：：１／１２８）にヒットすることが発見され、そのｆｕｎｃｔｉｏｎはＥＮＤである。そして、Ｒ３は１をＳＲＨにおけるＳｅｇｍｅｎｔ Ｌｅｆｔから減算した（１をＳｅｇｍｅｎｔ Ｌｅｆｔから減算して１となった）後に次のｓｅｇｍｅｎｔ（ａ３：：２）を取得して、ＤＡにコピーする。ルーティングテーブルの検索に基づいてメッセージを転送し続ける。
【００６０】
ステップ４０５、Ｒ３において、ＤＡ（ａ３：：２）がそのローカルにメンテナンスされたｌｏｃａｌ ＳＩＤテーブルエントリ（ａ３：：２／１２８）にヒットし続けることが発見され、そのｆｕｎｃｔｉｏｎはＥＮＤ．Ｘである。そして、Ｒ３は１をＳＲＨにおけるＳｅｇｍｅｎｔ Ｌｅｆｔから減算した（１をＳｅｇｍｅｎｔ Ｌｅｆｔから減算して０となり、この場合、Ｒ３はそれが最後から２番目のＳｅｇｍｅｎｔの所属するノードであることを発見した）後に次のｓｅｇｍｅｎｔ（ａ９：：１０）を取得して、ＤＡにコピーする。Ｒ３はメッセージをリンクＲ３Ｒ７に転送し続ける前に、ＳＲｖ６ ＰＳＰ機能スイッチをオンに設定したことを確認した場合、予定を繰り上げてメッセージにおけるＳＲＨをポップアップしてから転送する。
【００６１】
ステップ４０６、メッセージはＲ７に到着し、Ｒ７は最短の経路に沿ってメッセージをＲ８へ転送し続ける。
【００６２】
ステップ４０７、メッセージはＲ８に到着し、Ｒ８は最短の経路に沿ってメッセージをＲ９へ転送し続ける。
【００６３】
ステップ４０８、メッセージはＲ９に到着し、Ｒ９において、ＩＰｖ６ ＤＡ（ａ９：：１０）がそのローカルにメンテナンスされたｌｏｃａｌ ＳＩＤテーブルエントリ（ａ９：：１／１２８）にヒットすることが発見され、そのｆｕｎｃｔｉｏｎはＥＮＤ．ＤＴ４である。Ｒ９はＩＰｖ６ ｈｅａｄｅｒを除去し、内部ペイロードに基づいて対応するＶＰＮルーティングテーブルを検索して転送し続ける。
【００６４】
図５に示されるように、本出願の実施例には、ＳＲｖ６転送機能を備えたノードに適用されるメッセージ転送装置がさらに提供され、当該メッセージ転送装置は、
ＳＲＨによるカプセル化を含むＩＰｖ６メッセージを受信するように設けられた受信モジュールであって、前記ＳＲＨはセグメントリストを含む受信モジュール５１と、
自体が前記セグメントリストにおける最後から２番目のセグメントに対応するノードであることを決定し、前記ＩＰｖ６メッセージを転送する前に、前記ＳＲＨをポップアップするように設けられる転送モジュール５２とを含む。
【００６５】
１つの実施例では、前記装置は、ＳＲｖ６ ＰＳＰ機能スイッチを配置するように設けられた配置モジュールをさらに含む。
【００６６】
１つの実施例では、前記転送モジュール５２は、さらに、自体が前記セグメントリストにおける最後から２番目のセグメントに対応するノードであることを決定し、且つ前記ＳＲｖ６ ＰＳＰ機能スイッチがオンの状態となることを決定し、前記ＩＰｖ６メッセージを転送する前に、前記ＳＲＨをポップアップするように設けられる。
【００６７】
１つの実施例では、前記転送モジュール５２は、さらに、前記ＩＰｖ６メッセージにおけるＩＰｖ６ ＤＡが自身のアドレスであることを決定すると共に、自体が前記セグメントリストにおける最後から２番目のセグメントに対応するノードであることを決定し、前記ＩＰｖ６メッセージを転送する前に、前記ＳＲＨをポップアップするように設けられる。
【００６８】
１つの実施例では、前記転送モジュール５２は、前記ＳＲＨにおけるＳｅｇｍｅｎｔ Ｌｅｆｔフィールドの値が１であることに基づいて、自体が前記セグメントリストにおける最後から２番目のセグメントに対応するノードであることを決定するように設けられる。
【００６９】
１つの実施例では、前記転送モジュール５２は、さらに、Ｓｅｇｍｅｎｔ Ｌｅｆｔフィールドの値が１であることを決定した場合、１をＳｅｇｍｅｎｔ Ｌｅｆｔフィールドの値から減算し、ＩＰｖ６ ＤＡを前記セグメントリストにおける次のセグメントに対応するＩＰｖ６アドレスに更新し、更新されたＩＰｖ６ ＤＡによって前記ＩＰｖ６メッセージを転送するように設けられる。
【００７０】
１つの実施例では、前記転送モジュールは、さらに、前記ＳＲＨにおけるＳｅｇｍｅｎｔ Ｌｅｆｔフィールドの値が０であることに基づいて、自体が前記セグメントリストにおける最後のセグメントに対応するノードであることを決定し、前記ＳＲＨをポップアップし、前記ＳＲＨによりカプセル化されたペイロードを処理するように設けられる。
【００７１】
１つの実施例では、前記転送モジュールは、さらに、前記ＳＲＨにおけるＳｅｇｍｅｎｔ Ｌｅｆｔフィールドの値が１を超えていることに基づいて、自体が前記セグメントリストにおける２番目のセグメント及び最後のセグメントを除く他のセグメントに対応するノードであることを決定し、１をＳｅｇｍｅｎｔ Ｌｅｆｔフィールドの値から減算し、ＩＰｖ６ ＤＡを前記セグメントリストにおける次のセグメントに対応するＩＰｖ６アドレスに更新し、更新されたＩＰｖ６ ＤＡによって前記ＩＰｖ６メッセージを転送するように設けられる。
【００７２】
本出願の実施例では、ＳＲｖ６におけるＰＳＰを一種のノード能力として実現し、具体的なＳＩＤからデカップリングしている。ＳＲｖ６転送機能を備えたノードは、ＳＲＨによりカプセル化されたメッセージを解析する時に、それ自体がＳＲＨにおける最後から２番目のＳｅｇｍｅｎｔに対応するノードであることを発見した場合、予定を繰り上げてこのＳＲＨをポップアップし、全てのＦｕｎｃｔｉｏｎタイプのＳＩＤはいずれもＰＳＰを支援することを実現することができ、ＰＳＰに対する支援を全面的且つ徹底的なものにする。
【００７３】
図６に示されるように、本出願の実施例には、ノードがさらに提供され、当該ノードは、
プロセッサ６１０と、
前記プロセッサの実行可能な命令を格納するためのメモリ６２０と、
前記プロセッサの制御によって情報の送受信を行うための伝送装置６３０とを含む。
【００７４】
そのうち、前記プロセッサ６１０は、以下の操作を実行するように設けられる。
前記伝送装置６３０がＳＲＨによるカプセル化を含むＩＰｖ６メッセージを受信するように制御し、前記ＳＲＨはセグメントリストを含み、
自体が前記セグメントリストにおける最後から２番目のセグメントに対応するノードであることを決定し、前記伝送装置６３０が前記ＩＰｖ６メッセージを転送するように制御する前に、前記ＳＲＨをポップアップする。
【００７５】
１つの実施例では、当該ノードは上記のいずれかの実施例に記載の方法を実行することができる。
【００７６】
本出願の実施例には、前記メッセージ転送方法を実行するためのコンピュータ実行可能な命令が格納されているコンピュータ読み取り可能な記憶媒体がさらに提供される。
【００７７】
当業者が理解できるように、上記開示された方法の全て又は一部のステップ、システム、装置における機能モジュール／ユニットは、ソフトウェア、ファームウェア、ハードウェア、及びそれらの適切な組み合わせとして実施することが可能である。ハードウェアの実施形態では、上記の記載に言及された機能モジュール／ユニット間の区分は、必ずしも物理コンポーネントの区分に対応するわけではなく、例えば、１つの物理コンポーネントは複数の機能を持っていてもよく、又は１つの機能又はステップは複数の物理コンポーネントで連携して実行することができる。一部又は全てのコンポーネントは、プロセッサ、例えばデジタル信号プロセッサ若しくはマイクロプロセッサ等によって実行されるソフトウェアとして実施することができ、又は、ハードウェアとして、又は集積回路、例えば特定用途向け集積回路として実施することができる。このようなソフトウェアは、コンピュータ読み取り可能な媒体上で配布されることができ、コンピュータ読み取り可能な媒体は、コンピュータ記憶媒体（又は非一時的な媒体）及び通信媒体（又は一時的な媒体）を含み得る。当業者が周知するように、コンピュータ記憶媒体という用語は、情報（コンピュータ読み取り可能な命令、データ構造、プログラムモジュール、又は他のデータ）を格納するための任意の方法、又は技術で実施される揮発性及び不揮発性、取り外し可能及び取り外し不可能な媒体を含む。コンピュータ記憶媒体には、ランダムアクセスメモリ（Ｒａｎｄｏｍ Ａｃｃｅｓｓ Ｍｅｍｏｒｙ  、ＲＡＭ）、読み取り専用メモリ（Ｒｅａｄ−Ｏｎｌｙ Ｍｅｍｏｒｙ、ＲＯＭ）、電気的に消去可能、プログラム可能な読み取り専用メモリ（Ｅｌｅｃｔｒｉｃａｌｌｙ Ｅｒａｓａｂｌｅ Ｐｒｏｇｒａｍｍａｂｌｅ ｒｅａｄ ｏｎｌｙ ｍｅｍｏｒｙ、ＥＥＰＲＯＭ）、フラッシュメモリ又は他のメモリ技術、読み取り専用のコンパクトディスク（Ｃｏｍｐａｃｔ Ｄｉｓｃ Ｒｅａｄ−Ｏｎｌｙ Ｍｅｍｏｒｙ  、ＣＤ−ＲＯＭ）、デジタルビデオディスク（Ｄｉｇｉｔａｌ Ｖｉｄｅｏ Ｄｉｓｃ  、ＤＶＤ）又は他のコンパクトディスクメモリ、磁気カセット、磁気テープ、磁気ディスクメモリ又は他の磁気記憶装置、又は、所望の情報を記憶するために使用され、コンピュータによってアクセスされることが可能な他の任意の媒体が含まれるが、これらに限らない。なお、当業者が周知するように、通信媒体は、一般的にコンピュータ読み取り可能な命令、データ構造、プログラムモジュール、又は搬送波又は他の伝送メカニズム等の変調データ信号における他のデータを含み、任意の情報配信媒体を含むことができる。
【図１】
2021525469.tif 000003
【図２】
2021525469.tif 000004
【図３】
2021525469.tif 000005
【図４】
2021525469.tif 000006
【図５】
2021525469.tif 000007
【図６】
2021525469.tif 000008
【手続補正書】
【提出日】令和3年8月6日(2021.8.6)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００４
【補正方法】変更
【補正の内容】
【０００４】
ｄｒａｆｔ−ｆｉｌｓｆｉｌｓ−ｓｐｒｉｎｇ−ｓｒｖ６−ｎｅｔｗｏｒｋ−ｐｒｏｇｒａｍｍｉｎｇ−０３は、如何にしてセグメントルーティングをインターネットプロトコルバージョン６（Ｉｎｔｅｒｎｅｔ Ｐｒｏｔｏｃｏｌ Ｖｅｒｓｉｏｎ ６、ＩＰｖ６）転送平面に応用するか、即ちＩＰｖ６セグメントルーティング（ＩＰｖ６ Ｓｅｇｍｅｎｔ Ｒｏｕｔｉｎｇ、ＳＲｖ６）について記載されている。ＩＰｖ６メッセージにセグメントルーティングヘッダー（Ｓｅｇｍｅｎｔ Ｒｏｕｔｉｎｇ Ｈｅａｄｅｒ、ＳＲＨ）を挿入することで、ＳＲＨには、ＩＰｖ６アドレスリストで示されるＳｅｇｍｅｎｔ Ｌｉｓｔが含まれており、メッセージの宛先アドレスがセクション毎に更新され、セクション毎に転送することを完了する。このドラフトにおいて、異なる機能（Ｆｕｎｃｔｉｏｎ）を有する幾つかのＳＩＤが定義され、特にＥＮＤ、ＥＮＤ．Ｘ、ＥＮＤ．Ｔという３つのＦｕｎｃｔｉｏｎタイプ（関数のタイプ）のＳＩＤに対して、対応するＳＲＨの最後から２番目のセグメントポップ（Ｐｅｎｕｌｔｉｍａｔｅ Ｓｅｇｍｅｎｔ ＰＯＰ ｏｆ ｔｈｅ ＳＲＨ、ＰＳＰ）及びＳＲＨの最後のセグメントポップ（Ｕｌｔｉｍａｔｅ Ｓｅｇｍｅｎｔ Ｐｏｐ ｏｆ ｔｈｅ ＳＲＨ、ＵＳＰ）のバリアントも定義されている。ＰＳＰとは、メッセージがＳＲＨにおける最後から２番目のセグメント（Ｓｅｇｍｅｎｔ）に対応するノードに到着する際に予定を繰り上げてＳＲＨをポップアップすることであり、マルチプロトコルラベルスイッチング（Ｍｕｌｔｉ−Ｐｒｏｔｏｃｏｌ Ｌａｂｅｌ Ｓｗｉｔｃｈｉｎｇ、ＭＰＬＳ）により転送された最後から２番目のホップ・ポッピング（Ｐｅｎｕｌｔｉｍａｔｅ Ｈｏｐ ＰＯＰ、ＰＨＰ）と類似する。ＵＳＰとは、メッセージがＳＲＨにおける最後のｓｅｇｍｅｎｔに対応するノードに到着する際にＳＲＨをポップアップすることである。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００３３
【補正方法】変更
【補正の内容】
【００３３】
この場合、自体が前記セグメントリストにおける最後から２番目のセグメント及び最後のセグメントを除く他のセグメントに対応するノードであることを決定し、１をＳｅｇｍｅｎｔ Ｌｅｆｔフィールドの値から減算し、ＩＰｖ６ ＤＡを前記セグメントリストにおける次のセグメントに対応するＩＰｖ６アドレスに更新し、更新されたＩＰｖ６ ＤＡによって前記ＩＰｖ６メッセージを転送する。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００７１
【補正方法】変更
【補正の内容】
【００７１】
１つの実施例では、前記転送モジュールは、さらに、前記ＳＲＨにおけるＳｅｇｍｅｎｔ Ｌｅｆｔフィールドの値が１を超えていることに基づいて、自体が前記セグメントリストにおける最後から２番目のセグメント及び最後のセグメントを除く他のセグメントに対応するノードであることを決定し、１をＳｅｇｍｅｎｔ Ｌｅｆｔフィールドの値から減算し、ＩＰｖ６ ＤＡを前記セグメントリストにおける次のセグメントに対応するＩＰｖ６アドレスに更新し、更新されたＩＰｖ６ ＤＡによって前記ＩＰｖ６メッセージを転送するように設けられる。
【手続補正４】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項８
【補正方法】変更
【補正の内容】
【請求項８】
前記ＳＲＨにおけるＳｅｇｍｅｎｔ Ｌｅｆｔフィールドの値が１を超えていることに基づいて、自体が前記セグメントリストにおける最後から２番目のセグメント及び最後のセグメントを除く他のセグメントに対応するノードであることを決定し、１をＳｅｇｍｅｎｔ Ｌｅｆｔフィールドの値から減算し、ＩＰｖ６ ＤＡを前記セグメントリストにおける次のセグメントに対応するＩＰｖ６アドレスに更新し、更新されたＩＰｖ６ ＤＡによって前記ＩＰｖ６メッセージを転送することをさらに含む請求項１〜６のいずれか一項に記載のメッセージ転送方法。
【国際調査報告】
2021525469.tif 000009
2021525469.tif 000010
2021525469.tif 000011
2021525469.tif 000012