(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-03-04
(45)【発行日】2024-03-12
(54)【発明の名称】メッセージ生成方法および装置ならびにメッセージ処理方法および装置
(51)【国際特許分類】
H04L 45/033 20220101AFI20240305BHJP
【FI】
H04L45/033
【外国語出願】
(21)【出願番号】P 2022120448
(22)【出願日】2022-07-28
(62)【分割の表示】P 2021006508の分割
【原出願日】2021-01-19
【審査請求日】2022-08-01
(31)【優先権主張番号】202010066033.1
(32)【優先日】2020-01-20
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】503433420
【氏名又は名称】華為技術有限公司
【氏名又は名称原語表記】HUAWEI TECHNOLOGIES CO.,LTD.
【住所又は居所原語表記】Huawei Administration Building, Bantian, Longgang District, Shenzhen, Guangdong 518129, P.R. China
(74)【代理人】
【識別番号】100132481
【氏名又は名称】赤澤 克豪
(74)【代理人】
【識別番号】100115635
【氏名又は名称】窪田 郁大
(72)【発明者】
【氏名】リー ウェンイエン
(72)【発明者】
【氏名】ワン ハイボー
(72)【発明者】
【氏名】ワン リーリー
【審査官】羽岡 さやか
(56)【参考文献】
【文献】米国特許出願公開第2014/0369356(US,A1)
【文献】米国特許出願公開第2019/0081897(US,A1)
【文献】特開2015-159486(JP,A)
【文献】米国特許出願公開第2014/0269422(US,A1)
【文献】米国特許出願公開第2017/0180247(US,A1)
【文献】中国特許出願公開第108429685(CN,A)
【文献】米国特許出願公開第2018/0375763(US,A1)
【文献】米国特許出願公開第2019/0260657(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 45/00
(57)【特許請求の範囲】
【請求項1】
メッセージ生成方法であって、
第1のデバイスによって、セグメント識別子リスト(SIDリスト)識別子を取得するステップであって、前記SIDリスト識別子はSIDリストに対応する、ステップと、
前記第1のデバイスによって、第1のメッセージを生成するステップであって、前記第1のメッセージは前記SIDリスト識別子を含む、ステップと、
前記第1のデバイスによって、前記第1のメッセージを第2のデバイスに送信するステップと
を含
み、
前記第1のメッセージは、ボーダーゲートウェイプロトコル(BGP)更新メッセージであり、前記第1のメッセージは前記SIDリスト内の少なくとも1つのSIDのセグメント記述情報をさらに含み、前記SIDリスト識別子は前記少なくとも1つのSIDのセグメント記述情報の前に配置され、前記少なくとも1つのSIDのセグメント記述情報は前記SIDリスト中のSIDの順に配置される、方法。
【請求項2】
前記第1のデバイスはコントローラであり、前記第2のデバイスはネットワーク転送デバイスであり、
前記方法は、
前記第1のデバイスによって、前記第2のデバイスから前記SIDリスト内の
前記少なくとも1つのSIDのセグメント記述情報を受信するステップ
をさらに含む、請求項1に記載の方法。
【請求項3】
前記第1のデバイスはネットワーク転送デバイスであり、前記第2のデバイスはコントローラであ
る、請求項1に記載の方法。
【請求項4】
前記方法は、
前記第1のデバイスによって、前記第2のデバイスへ対応関係を送信するステップであって、前記対応関係は、前記SIDリストと前記SIDリスト識別子との間の対応関係を含む、ステップ
をさらに含む、請求項1から3のいずれか一項に記載の方法。
【請求項5】
メッセージ処理方法であって、
第2のデバイスによって、第1のデバイスから第1のメッセージを受信するステップであって、前記第1のメッセージは、セグメント識別子リスト(SIDリスト)識別子を含み、前記SIDリスト識別子はSIDリストに対応する、ステップと、
前記第2のデバイスによって、前記SIDリスト識別子および対応関係に基づいて前記SIDリストを取得するステップであって、前記対応関係は、前記SIDリストと前記SIDリスト識別子との間の対応関係を含む、ステップと
を含
み、前記第1のメッセージは、ボーダーゲートウェイプロトコル(BGP)更新メッセージであり、前記第1のメッセージは前記SIDリスト内の少なくとも1つのSIDのセグメント記述情報をさらに含み、前記SIDリスト識別子は前記少なくとも1つのSIDのセグメント記述情報の前に配置され、前記少なくとも1つのSIDのセグメント記述情報は前記SIDリスト中のSIDの順に配置される、方法。
【請求項6】
第2のデバイスによって、第1のデバイスから第1のメッセージを受信する前記ステップの前に、前記方法は、
前記第2のデバイスによって、前記第1のデバイスから前記対応関係を受信するステップ
をさらに含む、請求項
5に記載の方法。
【請求項7】
前記第1のデバイスはコントローラであり、前記第2のデバイスはネットワーク転送デバイスであ
る、請求項
5または
6に記載の方法。
【請求項8】
前記第1のデバイスはネットワーク転送デバイスであり、前記第2のデバイスはコントローラであり、
前記方法は、
前記第1のデバイスによって、前記第2のデバイスから前記SIDリスト内の
前記少なくとも1つのSIDのセグメント記述情報を受信するステップ
をさらに含む、請求項
5または
6に記載の方法。
【請求項9】
メッセージ生成方法であって、
第1のデバイスによって、セグメント識別子リスト(SIDリスト)内の各セグメント識別子SIDに対応するロケータ識別子を取得するステップであって、前記ロケータ識別子は、前記ロケータ識別子に対応するSIDのロケータ部分を識別するために使用され、前記ロケータ識別子
の長さは前記ロケータ部分の長さよりも短い、ステップと、
前記第1のデバイスによって、第1のメッセージを生成するステップであって、前記第1のメッセージは、前記SIDリスト内の各SIDに対応するロケータ識別子および各SIDの機能部分を含む、ステップと、
前記第1のデバイスによって、前記第1のメッセージを第2のデバイスに送信するステップと
を含
み、
前記第1のメッセージは、ボーダーゲートウェイプロトコル(BGP)更新メッセージである、方法。
【請求項10】
前記方法は、
前記第1のデバイスによって、前記第2のデバイスへ対応関係を送信するステップであって、前記対応関係は、前記ロケータ識別子と各SIDの前記ロケータ部分との間の対応関係を含む、ステップ
をさらに含む、請求項
9に記載の方法。
【請求項11】
前記第1のデバイスはコントローラであり、前記第2のデバイスはネットワーク転送デバイスであり、
前記方法は、
前記第1のデバイスによって、前記第2のデバイスから前記SIDリスト内の少なくとも1つのSIDのセグメント記述情報を受信するステップ
をさらに含む、請求項
9または
10に記載の方法。
【請求項12】
前記第1のデバイスはネットワーク転送デバイスであり、前記第2のデバイスはコントローラであり、前記第1のメッセージは、前記SIDリスト内の少なくとも1つのSIDのセグメント記述情報をさらに含む、請求項
11に記載の方法。
【請求項13】
メッセージ処理方法であって、
第2のデバイスによって、第1のデバイスから第1のメッセージを受信するステップであって、前記第1のメッセージは、セグメント識別子リスト(SIDリスト)内の各セグメント識別子SIDに対応するロケータ識別子および前記SIDの機能部分を含み、前記ロケータ識別子は、前記ロケータ識別子に対応するSIDのロケータ部分を識別するために使用され、前記ロケータ識別子の長さは前記ロケータ部分の長さよりも短い、ステップと、
前記第2のデバイスによって、各SIDに対応する前記ロケータ識別子および対応関係に基づいて各SIDの前記ロケータ部分を取得するステップであって、前記対応関係は、前記ロケータ識別子と各SIDの前記ロケータ部分との間の対応関係を含む、ステップと、
前記第2のデバイスによって、各SIDの前記ロケータ部分と各SIDの前記機能部分とに基づいて前記SIDリストを取得するステップと
を含
み、
前記第1のメッセージは、ボーダーゲートウェイプロトコル(BGP)更新メッセージである、方法。
【請求項14】
前記第2のデバイスによって、前記第1のデバイスから対応関係を受信するステップ
をさらに含む、請求項1
3に記載の方法。
【請求項15】
前記第1のデバイスはコントローラであり、前記第2のデバイスはネットワーク転送デバイスであり、前記第1のメッセージは、前記SIDリスト内の少なくとも1つのSIDのセグメント記述情報をさらに含む、請求項1
3または1
4に記載の方法。
【請求項16】
前記第1のデバイスはネットワーク転送デバイスであり、前記第2のデバイスはコントローラであり、
前記方法は、
前記第1のデバイスによって、前記第2のデバイスから前記SIDリスト内の少なくとも1つのSIDのセグメント記述情報を受信するステップ
をさらに含む、請求項1
3または1
4に記載の方法。
【請求項17】
第1のデバイスに適用されるメッセージ生成装置であって、
セグメント識別子リスト(SIDリスト)識別子を取得するように構成された取得ユニットであって、前記SIDリスト識別子はSIDリストに対応する、取得ユニットと、
第1のメッセージを生成するように構成された生成ユニットであって、前記第1のメッセージは前記SIDリスト識別子を含む、生成ユニットと、
前記第1のメッセージを第2のデバイスに送信するように構成された送信ユニットと
を備え
、
前記第1のメッセージは、ボーダーゲートウェイプロトコル(BGP)更新メッセージであり、前記第1のメッセージは前記SIDリスト内の少なくとも1つのSIDのセグメント記述情報をさらに含み、前記SIDリスト識別子は前記少なくとも1つのSIDのセグメント記述情報の前に配置され、前記少なくとも1つのSIDのセグメント記述情報は前記SIDリスト中のSIDの順に配置される、メッセージ生成装置。
【請求項18】
第2のデバイスに適用されるメッセージ処理装置であって、
第1のデバイスから第1のメッセージを受信するように構成された受信ユニットであって、前記第1のメッセージはセグメント識別子リスト(SIDリスト)識別子を含み、前記SIDリスト識別子はSIDリストに対応する、受信ユニットと、
前記SIDリスト識別子および対応関係に基づいて前記SIDリストを取得するように構成された取得ユニットであって、前記対応関係は、前記SIDリストと前記SIDリスト識別子との間の対応関係を含む、取得ユニットと
を備え
、
前記第1のメッセージは、ボーダーゲートウェイプロトコル(BGP)更新メッセージであり、前記第1のメッセージは前記SIDリスト内の少なくとも1つのSIDのセグメント記述情報をさらに含み、前記SIDリスト識別子は前記少なくとも1つのSIDのセグメント記述情報の前に配置され、前記少なくとも1つのSIDのセグメント記述情報は前記SIDリスト中のSIDの順に配置される、メッセージ処理装置。
【請求項19】
第1のデバイスに適用されるメッセージ生成装置であって、
セグメント識別子リスト(SIDリスト)内の各セグメント識別子SIDに対応するロケータ識別子を取得するように構成された取得ユニットであって、前記ロケータ識別子は、前記ロケータ識別子に対応するSIDのロケータ部分を識別するために使用され、前記ロケータ識別子の長さは前記ロケータ部分の長さよりも短い、取得ユニットと、
第1のメッセージを生成するように構成された生成ユニットであって、前記第1のメッセージは、前記SIDリスト内の各SIDに対応するロケータ識別子と、各SIDの機能部分とを含む、生成ユニットと、
前記第1のメッセージを第2のデバイスに送信するように構成された送信ユニットと
を備え
、
前記第1のメッセージは、ボーダーゲートウェイプロトコル(BGP)更新メッセージである、メッセージ生成装置。
【請求項20】
第2のデバイスに適用されるメッセージ処理装置であって、
第1のデバイスから第1のメッセージを受信するように構成された受信ユニットであって、前記第1のメッセージは、セグメント識別子リスト(SIDリスト)内の各セグメント識別子SIDに対応するロケータ識別子および前記SIDの機能部分を含み、前記ロケータ識別子は、前記ロケータ識別子に対応するSIDのロケータ部分を識別するために使用され、前記ロケータ識別子の長さは前記ロケータ部分の長さよりも短い、受信ユニットと、
各SIDに対応する前記ロケータ識別子および対応関係に基づいて各SIDの前記ロケータ部分を取得するように構成された決定ユニットであって、前記対応関係は、前記ロケータ識別子と各SIDの前記ロケータ部分との間の対応関係を含む、決定ユニットと、
各SIDの前記ロケータ部分および各SIDの前記機能部分に基づいて前記SIDリストを取得するように構成された取得ユニットと
を備え
、
前記第1のメッセージは、ボーダーゲートウェイプロトコル(BGP)更新メッセージである、メッセージ処理装置。
【請求項21】
命令を含み、前記命令がコンピュータ上で実行されるとき、前記コンピュータは請求項1から1
6のいずれか一項に記載の方法を実行することが可能になる、コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、通信分野に関し、特に、メッセージ生成方法、メッセージ処理方法、メッセージ生成装置、およびメッセージ処理装置に関する。
【背景技術】
【0002】
インターネットプロトコルバージョン6(Internet Protocol Version 6、IPv6)セグメントルーティング(Segment Routing IPv6、SRv6)は、ソースルーティング概念に基づいてネットワークを介してIPv6パケットを転送するように設計されたプロトコルである。プロトコルは、セグメント識別子リスト(Segment List、SIDリスト)によって表される転送経路を定義する。SIDリストは、複数のセグメント識別子(Segment Identifier、SID)を含み、各SIDは、転送経路上のノードまたはリンクを表す。SIDリスト中の順序に配置されるSIDは、転送経路に沿ったノードまたはリンクを表し得る。
【0003】
SRv6ネットワークでは、コントローラは、SIDリストを計算し、ネットワーク中の転送デバイスにSIDリストを配信し得る。転送デバイスはまた、コントローラにSIDリスト中の各SIDのステータスまたはポリシー(Policy)情報を報告する必要がある。したがって、コントローラとネットワーク転送デバイスとの間で交換されるメッセージは、SIDリストを搬送する必要があり得る。
【0004】
しかしながら、現在、コントローラとヘッドエンドとの間で交換されるメッセージ中で搬送されるSIDリストの数量は制限されており、伝送効率は低く、SIDリストの数量がメッセージ中で搬送されることができるSIDリストの数量よりも大きいとき、SIDリストは、切り捨てられることがあり、データは、紛失されることがあるか、または過大に長いメッセージは報告されないことがある。したがって、メッセージ送信障害が発生する。
【発明の概要】
【0005】
本出願の実施形態は、メッセージ中で搬送されることができるSIDリストの数量を増加させるためにメッセージ生成方法、メッセージ処理方法、メッセージ生成装置、およびメッセージ処理装置を提供し、それによって、メッセージ送信の効率および成功率を改善する。
【0006】
第1の態様によれば、本出願の一実施形態は、メッセージ生成方法を提供する。本方法は以下のステップを含む。最初に、第1のデバイスは、SIDリストを取得し、ここで、SIDリストは、複数のSIDを含み、複数のSIDの最初のNビットは、同じであり、Nは正の整数である。次に、第1のデバイスは、SIDリストに基づいて第1のメッセージを生成し、ここで、第1のメッセージは、第1の部分と第2の部分とを含み、第1の部分は、複数のSIDの最初のNビットを含み、第2の部分は、複数のSIDの各々の第(N+1)ビットから第128ビットまでを含む。最後に、第1のデバイスは、第2のデバイスに第1のメッセージを送る。第1のメッセージを受信した後に、第2のデバイスは、第1のメッセージ中の複数のSIDの共通部分、すなわち、各SIDの最初のNビットおよび第(N+1)ビットから第128ビットまでに基づいて各SIDを取得し得る。この解決策では、第1のメッセージは、SIDリスト中の各SIDの128ビットを搬送しないが、複数のSIDから共通部分を除去し、各SIDの残りの部分のみを記憶し、したがって、メッセージ中のSIDリストの長さが低減され、第1のメッセージは、従来の方式よりも多くの数量のSIDリストを搬送することができ、それによって、メッセージ送信の効率および成功率を改善する。
【0007】
任意選択で、第2の部分は、第1の部分中の複数のSIDの最初のNビットの位置を示す位置インジケータをさらに含み、第2のデバイスは、位置インジケータに基づいて複数のSIDの最初のNビットを取得し、次いで、複数のSIDの最初のNビットと複数のSIDの各々の第(N+1)ビットから第128ビットまでとに基づいてSIDリストを取得し得、したがって、第2のデバイスは、完全なSIDリストを取得する。
【0008】
任意選択で、第1の部分は、最初のNビットの長さをさらに含み、したがって、第2のデバイスは、SIDの最初のNビットを正確に読み取ることができる。
【0009】
第2の態様によれば、本出願の一実施形態は、メッセージ処理方法を提供する。本方法は以下のステップを含む。最初に、第2のデバイスは、第1のデバイスから第1のメッセージを受信し、ここで、第1のメッセージは、第1の部分と第2の部分とを含み、第1の部分は、SIDリスト中の複数のSIDの最初のNビット、すなわち、複数のSIDの共通部分を含み、第2の部分は、複数のSIDの各々の第(N+1)ビットから第128ビットまでを含み、Nは正の整数である。次に、第2のデバイスは、第1の部分と第2の部分とに基づいてSIDリストを取得する。メッセージが、共通部分以外の各SIDの残りの部分のみを記憶するので、複数のSIDによって占有される長さが低減され、したがって、第1のメッセージは、より多くの数量のSIDリストを搬送することができ、それによって、メッセージ送信の効率および成功率を改善する。
【0010】
任意選択で、第2の部分は、第1の部分中の複数のSIDの最初のNビットの位置を示す位置インジケータをさらに含む。次いで、第2のデバイスは、第1の部分中の複数のSIDの最初のNビットの位置インジケータに基づいて複数のSIDの最初のNビットを取得し得、第2のデバイスは、複数のSIDの最初のNビットと複数のSIDの各々の第(N+1)ビットから第128ビットまでとに基づいてSIDリストを取得し、したがって、第2のデバイスは、完全なSIDリストを取得する。
【0011】
任意選択で、第1の部分は、最初のNビットの長さをさらに含み、したがって、第2のデバイスは、SIDの最初のNビットを正確に読み取ることができる。
【0012】
第3の態様によれば、本出願の一実施形態は、メッセージ生成方法を提供する。本方法は以下のステップを含む。最初に、第1のデバイスは、SIDリスト識別子を取得する。次に、第1のデバイスは、第1のメッセージを生成し、ここで、第1のメッセージは、SIDリスト識別子を含み、ここで、SIDリスト識別子は、SIDリスト中のすべてのSIDを置き換えるために使用される。最後に、第1のデバイスは、第2のデバイスに第1のメッセージを送る。SIDリスト識別子の長さがSIDリスト中のすべてのSIDの長さの和よりも短いので、第1のメッセージは、より多くの数量のSIDリストを搬送することができ、それによって、メッセージ送信の効率および成功率を改善する。
【0013】
任意選択で、本方法は、以下のステップをさらに含む。第1のデバイスは、第2のデバイスに対応関係を送り、ここで、対応関係は、SIDリストとSIDリスト識別子との間の対応関係を含み、したがって、第2のデバイスは、対応関係と第1のメッセージとに基づいてSIDリストを生成することができる。
【0014】
第4の態様によれば、本出願の一実施形態は、メッセージ処理方法を提供する。本方法は以下のステップを含む。最初に、第2のデバイスは、第1のデバイスから第1のメッセージを受信し、ここで、第1のメッセージは、セグメント識別子リストSIDリスト識別子を含む。次に、第2のデバイスは、SIDリスト識別子と対応関係とに基づいてSIDリストを取得し、ここで、対応関係は、SIDリストとSIDリスト識別子との間の対応関係を含む。第1のメッセージでは、SIDリスト中のすべてのSIDを置き換えるためにSIDリスト識別子が使用され、したがって、SIDリストの長さが低減される。さらに、第2のデバイスが、SIDリストとSIDリスト識別子との間の対応関係を記憶するので、第2のデバイスは、対応関係に基づいて第1のメッセージからSIDリストを取得することができ、したがって、SIDリストは正常に取得される。
【0015】
任意選択で、本方法は、以下をさらに含む。第2のデバイスは、第1のデバイスによって送られた対応関係を受信し、ここで、対応関係は、SIDリストとSIDリスト識別子との間の対応関係を含み、したがって、第2のデバイスは、対応関係と第1のメッセージとに基づいてSIDリストを生成することができる。
【0016】
第5の態様によれば、本出願の一実施形態は、メッセージ生成方法を提供する。本方法は以下のステップを含む。最初に、第1のデバイスは、SIDリスト中の各SIDに対応するロケータ識別子を取得し、ここで、ロケータ識別子は、ロケータ識別子に対応するSIDのロケータ部分を識別するために使用され、ロケータ識別子の長さは、ロケータ部分の長さよりも短い。次に、第1のデバイスは、第1のメッセージを生成し、ここで、第1のメッセージは、SIDリスト中の各SIDに対応するロケータ識別子と各SIDの機能部分とを含む。最後に、第1のデバイスは、第2のデバイスに第1のメッセージを送る。ロケータ識別子の長さがロケータ部分の長さよりも短いので、第1のメッセージ中のSIDの長さは128ビットよりも短く、したがって、SIDリストの長さが低減される。したがって、第1のメッセージは、より多くの数量のSIDリストを搬送することができ、それによって、メッセージ送信の効率および成功率を改善する。
【0017】
任意選択で、本方法は、以下をさらに含む。第1のデバイスは、第2のデバイスに対応関係を送り、ここで、対応関係は、各SIDのロケータ識別子とロケータ部分との間の対応関係を含み、したがって、第2のデバイスは、対応関係と第1のメッセージとに基づいてSIDリストを取得する。
【0018】
第6の態様によれば、本出願の一実施形態は、メッセージ処理方法を提供する。本方法は以下のステップを含む。最初に、第2のデバイスは、第1のデバイスから第1のメッセージを受信し、ここで、第1のメッセージは、SIDリスト中の各SIDに対応するロケータ識別子とSIDの機能部分とを含み、ロケータ識別子は、ロケータ識別子に対応するSIDのロケータ部分を識別するために使用され、ロケータ識別子の長さは、ロケータ部分の長さよりも短い。次に、第2のデバイスは、各SIDに対応するロケータ識別子と対応関係とに基づいて各SIDのロケータ部分を取得し、ここで、対応関係は、各SIDのロケータ識別子とロケータ部分との間の対応関係を含む。最後に、第2のデバイスは、各SIDのロケータ部分と各SIDの機能部分とに基づいてSIDリストを取得する。ロケータ識別子の長さがロケータ部分の長さよりも短いので、第1のメッセージ中で搬送されるSIDの長さは128ビットよりも短い。これは、第1のメッセージ中で搬送されるSIDリストの数量を増加させ、それによって、メッセージ送信の効率および成功率を改善する。さらに、第2のデバイスは、SIDのロケータ識別子とSIDのロケータ部分との間の対応関係に基づいて第1のメッセージ中で搬送されるSIDのロケータ識別子に対応するSIDのロケータ部分を決定し、SIDを取得するために第1のメッセージ中の機能部分にロケータ部分を組み合わせ得る。このようにして、SIDが正常に取得され、そしてSIDリストが取得される。
【0019】
任意選択で、本方法は、以下をさらに含む。第2のデバイスは、対応関係と第1のメッセージとに基づいてSIDリストを取得するために第1のデバイスから対応関係を受信する。
【0020】
第1の態様、第3の態様、および第5の態様の実施形態に関連して、第1の可能な実装では、第1のデバイスはコントローラであり、第2のデバイスはネットワーク転送デバイスである。次いで、メッセージ生成方法は、以下のステップをさらに含む。第1のデバイスは、第2のデバイスから複数のSIDのうちの少なくとも1つのセグメント記述情報を受信し、ここで、セグメント記述情報は、セグメントに対応するアルゴリズム識別子に関する情報などのSIDに対応するセグメントの記述情報である。第2の可能な実装では、第1のデバイスはネットワーク転送デバイスであり、第2のデバイスはコントローラである。次いで、メッセージ生成方法における第1のメッセージは、複数のSIDのうちの少なくとも1つのセグメント記述情報をさらに含む。
【0021】
第2の態様、第4の態様、および第6の態様の実施形態に関連して、第1の可能な実装では、第1のデバイスはコントローラであり、第2のデバイスはネットワーク転送デバイスである。次いで、メッセージ生成方法における第1のメッセージは、複数のSIDのうちの少なくとも1つのセグメント記述情報をさらに含む。第2の可能な実装では、第1のデバイスはネットワーク転送デバイスであり、第2のデバイスはコントローラである。次いで、メッセージ生成方法は、以下のステップをさらに含む。第1のデバイスは、第2のデバイスから複数のSIDのうちの少なくとも1つのセグメント記述情報を受信し、ここで、セグメント記述情報は、セグメントに対応するアルゴリズム識別子に関する情報などのSIDに対応するセグメントの記述情報である。
【0022】
第7の態様によれば、本出願の一実施形態は、メッセージ生成装置を提供する。本装置は、第1のデバイスに適用され、本装置は、セグメント識別子リストSIDリストを取得するように構成された獲得ユニットであって、SIDリストは、複数のセグメント識別子SIDを含み、複数のSIDの最初のNビットは同じであり、Nは、正の整数である、獲得ユニットと、SIDリストに基づいて第1のメッセージを生成するように構成された生成ユニットであって、第1のメッセージは、第1の部分と第2の部分とを含み、第1の部分は、複数のSIDの最初のNビットを含み、第2の部分は、複数のSIDの各々の第(N+1)ビットから第128ビットまでを含む、生成ユニットと、第2のデバイスに第1のメッセージを送るように構成された送信ユニットとを含む。
【0023】
任意選択で、第2の部分は、第1の部分中の複数のSIDの最初のNビットの位置を示す位置インジケータをさらに含む。
【0024】
任意選択で、第1の部分は、最初のNビットの長さをさらに含む。
【0025】
第8の態様によれば、本出願の一実施形態は、メッセージ処理装置を提供する。本装置は、第2のデバイスに適用され、本装置は、第1のデバイスから第1のメッセージを受信するように構成された受信ユニットであって、第1のメッセージは、セグメント識別子リストSIDリストを搬送するために使用され、SIDリストは、複数のセグメント識別子SIDを含み、複数のSIDの最初のNビットは、同じであり、Nは、正の整数であり、第1のメッセージは、第1の部分と第2の部分とを含み、第1の部分は、セグメント識別子リストSIDリスト中の複数のSIDの最初のNビットを含み、第2の部分は、複数のSIDの各々の第(N+1)ビットから第128ビットまでを含む、受信ユニットと、第1の部分と第2の部分とに基づいてSIDリストを取得するように構成された獲得ユニットとを含む。
【0026】
任意選択で、第2の部分は、第1の部分中の複数のSIDの最初のNビットの位置インジケータをさらに含み、
獲得ユニットは、第1の部分中の複数のSIDの最初のNビットの位置インジケータに基づいて複数のSIDの最初のNビットを取得し、複数のSIDの最初のNビットと複数のSIDの各々の第(N+1)ビットから第128ビットまでとに基づいてSIDリストを取得するように構成される。
【0027】
任意選択で、第1の部分は、最初のNビットの長さをさらに含む。
【0028】
第9の態様によれば、本出願の一実施形態は、メッセージ生成装置を提供する。本装置は、第1のデバイスに適用され、本装置は、セグメント識別子リストSIDリスト識別子を取得するように構成された獲得ユニットであって、SIDリスト識別子は、SIDリストに対応する、獲得ユニットと、第1のメッセージを生成するように構成された生成ユニットであって、第1のメッセージは、SIDリスト識別子を含む、生成ユニットと、第2のデバイスに第1のメッセージを送るように構成された送信ユニットとを含む。
【0029】
任意選択で、送信ユニットは、第2のデバイスに対応関係を送るようにさらに構成され、ここで、対応関係は、SIDリストとSIDリスト識別子との間の対応関係を含む。
【0030】
第10の態様によれば、本出願の一実施形態は、メッセージ処理装置を提供する。本装置は、第2のデバイスに適用され、本装置は、第1のデバイスから第1のメッセージを受信するように構成された受信ユニットであって、第1のメッセージは、セグメント識別子リストSIDリスト識別子を含み、SIDリスト識別子は、SIDリストに対応する、受信ユニットと、
SIDリスト識別子と対応関係とに基づいてSIDリストを取得するように構成された獲得ユニットであって、対応関係は、SIDリストとSIDリスト識別子との間の対応関係を含む、獲得ユニットとを含む。
【0031】
任意選択で、受信ユニットは、第1のデバイスから対応関係を受信するようにさらに構成される。
【0032】
第11の態様によれば、本出願の一実施形態は、メッセージ生成装置を提供する。本装置は、第1のデバイスに適用され、本装置は、セグメント識別子リストSIDリスト中の各セグメント識別子SIDに対応するロケータ識別子を取得するように構成された獲得ユニットであって、ロケータ識別子は、ロケータ識別子に対応するSIDのロケータ部分を識別するために使用され、ロケータ識別子の長さは、ロケータ部分の長さよりも短い、獲得ユニットと、
第1のメッセージを生成するように構成された生成ユニットであって、第1のメッセージは、SIDリスト中の各SIDに対応するロケータ識別子と各SIDの機能部分とを含む、生成ユニットと、第2のデバイスに第1のメッセージを送るように構成された送信ユニットとを含む。
【0033】
任意選択で、送信ユニットは、第2のデバイスに対応関係を送るようにさらに構成され、ここで、対応関係は、各SIDのロケータ識別子とロケータ部分との間の対応関係を含む。
【0034】
第12の態様によれば、本出願の一実施形態は、メッセージ処理装置を提供する。本装置は、第2のデバイスに適用され、本装置は、第1のデバイスから第1のメッセージを受信するように構成された受信ユニットであって、第1のメッセージは、セグメント識別子リストSIDリスト中の各セグメント識別子SIDに対応するロケータ識別子とSIDの機能部分とを含み、ロケータ識別子は、ロケータ識別子に対応するSIDのロケータ部分を識別するために使用され、ロケータ識別子の長さは、ロケータ部分の長さよりも短い、受信ユニットと、各SIDに対応するロケータ識別子と対応関係とに基づいて各SIDのロケータ部分を取得するように構成された決定ユニットであって、対応関係は、各SIDのロケータ識別子とロケータ部分との間の対応関係を含む、決定ユニットと、各SIDのロケータ部分と各SIDの機能部分とに基づいてSIDリストを取得するように構成された獲得ユニットとを含む。
【0035】
任意選択で、受信ユニットは、第1のデバイスから対応関係を受信するようにさらに構成される。
【0036】
第7の態様、第9の態様、および第11の態様の実施形態に関連して、第1の可能な実装では、第1のデバイスはコントローラであり、第2のデバイスはネットワーク転送デバイスである。次いで、メッセージ生成装置は、第2のデバイスから複数のSIDのうちの少なくとも1つのセグメント記述情報を受信するように構成された受信ユニットであって、セグメント記述情報は、セグメントに対応するアルゴリズム識別子に関する情報などのSIDに対応するセグメントの記述情報である、受信ユニットをさらに含む。第2の可能な実装では、第1のデバイスはネットワーク転送デバイスであり、第2のデバイスはコントローラである。次いで、メッセージ生成装置における第1のメッセージは、複数のSIDのうちの少なくとも1つのセグメント記述情報をさらに含む。
【0037】
第8の態様、第10の態様、および第12の態様の実施形態に関連して、第1の可能な実装では、第1のデバイスはコントローラであり、第2のデバイスはネットワーク転送デバイスである。次いで、メッセージ生成装置における第1のメッセージは、複数のSIDのうちの少なくとも1つのセグメント記述情報をさらに含む。第2の可能な実装では、第1のデバイスはネットワーク転送デバイスであり、第2のデバイスはコントローラである。次いで、メッセージ生成装置中の受信ユニットは、第2のデバイスから複数のSIDのうちの少なくとも1つのセグメント記述情報を受信するようにさらに構成され、ここで、セグメント記述情報は、セグメントに対応するアルゴリズム識別子に関する情報などのSIDに対応するセグメントの記述情報である。
【0038】
さらに、任意選択で、第1のメッセージは、ボーダーゲートウェイプロトコル(Border Gateway Protocol、BGP)更新メッセージ(Update Message)であり得る。
【0039】
第13の態様によれば、本出願の一実施形態は、メッセージ処理デバイスを提供する。デバイスは、プロセッサとメモリとを含み、メモリは、命令を記憶するように構成され、プロセッサは、上記のメッセージ生成方法またはメッセージ処理方法を実行するためにメモリ中の命令を実行するように構成される。
【0040】
第14の態様によれば、本出願の一実施形態は、コンピュータ可読記憶媒体を提供し、コンピュータ可読記憶媒体は、命令を含み、命令がコンピュータ上の実行されるとき、コンピュータは、上記のメッセージ生成方法またはメッセージ処理方法を実行することが可能になる。
【図面の簡単な説明】
【0041】
【
図1】従来のメッセージ中でSIDリストを搬送するTLVフィールドのフォーマットの概略図である。
【
図2】本出願の一実施形態による、ネットワークシステム100の概略構造図である。
【
図3】本出願の一実施形態による、メッセージ生成方法の概略フローチャートである。
【
図4】本出願の一実施形態による、BGP更新メッセージ中でSIDリストを搬送するTLVの概略図である。
【
図5】本出願の一実施形態による、メッセージ生成方法の別のフローチャートである。
【
図6】本出願の一実施形態による、BGP更新メッセージ中でSIDリスト識別子を搬送するTLVの概略図である。
【
図7】本出願の一実施形態による、メッセージ生成方法の別のフローチャートである。
【
図8】本出願の一実施形態による、BGP更新メッセージ中でSIDリストを搬送するTLVの概略図である。
【
図9】本出願の一実施形態による、メッセージ生成装置900の概略構造図である。
【
図10】本出願の一実施形態による、メッセージ処理装置1000の概略構造図である。
【
図11】本出願の一実施形態による、メッセージ生成装置1100の概略構造図である。
【
図12】本出願の一実施形態による、メッセージ処理装置1200の概略構造図である。
【
図13】本出願の一実施形態による、メッセージ生成装置1300の概略構造図である。
【
図14】本出願の一実施形態による、メッセージ処理装置1400の概略構造図である。
【
図15】本出願の一実施形態による、デバイスの概略構造図である。
【発明を実施するための形態】
【0042】
図1は、従来のメッセージ中でSIDリストを搬送するタイプ-長さ-値(Type-Length-Value、TLV)フィールドのフォーマットの概略図である。TLVフィールドは、4つのサブTLV(Sub TLV)フィールドを含み(4つのサブTLVフィールドは、色深度によって
図1において区別されている)、ここで、第1のサブTLVフィールドは、サブTLVフィールドがSRセグメントリストに関係するサブTLVであることを示すタイプ1205のものであり、最後の3つのサブTLVフィールドは、サブTLVフィールドがSRセグメントに関係するサブTLVであることを示すタイプ1206のものである。
【0043】
第1のサブTLVフィールドは、長さ(Length)フィールドと、フラグ(Flags)フィールドと、予約済み(Reserved)フィールドと、マルチトポロジ識別子(Multi-Topology Identifier、MTID)フィールドと、アルゴリズム(Algorithm)フィールドと、重み(Weight)フィールドとをさらに含む。第1のサブTLVフィールドは、合計16バイトを占有する。フラグフィールドは、セグメントリストの属性情報および/またはステータス情報、たとえば、SIDリストに対応する経路が明示的な経路であるかまたは動的経路であるかどうか、あるいはSIDリスト中のすべてのSIDが特定のアルゴリズムに属するのかどうか、を搬送する。
【0044】
最後の3つのサブTLVフィールドの各々は、長さ(Length)フィールドと、予約済み(Reserved)フィールドと、フラグ(Flags)フィールドと、SIDフィールドと、セグメント記述子(Segment Descriptor)フィールドとをさらに含む。各サブTLVフィールドは、25バイトを占有する。フラグフィールドは、セグメントの属性情報および/またはステータス情報、たとえば、SIDが検証されるかどうかを搬送する。
【0045】
従来のメッセージでは、SIDフィールドは、合計128ビットである、ネットワーク転送デバイスのIPv6アドレスを搬送する。SIDフィールドは、概して、ロケータ(Locator)フィールドと機能(Function)フィールドとを含む。たとえば、「2000::1::1」のIPv6アドレスをもつSIDの場合、ロケータフィールドは、「2000::1」を搬送し得、機能フィールドは「::1」を搬送し得る。
【0046】
ロケータは、すべてのIPv6アドレスがSRv6 SIDとして割り当てられることができるIPv6ネットワークセグメントである。ノードがロケータを構成した後、システムは、ローカルノードが位置されることができるロケータネットワークセグメントルートを生成し、ローカルノードによってパブリッシュされるすべてのSIDは、ロケータネットワークセグメントルートを通して到達されることができる。
【0047】
現在、RFC4271は、ボーダーゲートウェイプロトコルメッセージの長さが4Kバイトであることを指定する。次いで、SIDリストが10個のSIDを含むとき、SIDリストのTLVの他のコンテンツとSIDリスト中のセグメント記述子フィールドのコンテンツとが考慮されない場合、SIDリストの長さは25×10+16=266バイトであり、メッセージは、最大4K/266≒15個のSIDリストを搬送することができる(SIDリストが同じ長さのものであると仮定する)。15個を超えるSIDリストが搬送される必要があるとき、4Kバイトを上回るデータは切り捨てられる必要がある。したがって、データ損失が発生するか、またはメッセージが送られるには長すぎ、メッセージ送信障害を生じる。
【0048】
上記の技術的問題を解決するために、本出願の実施形態は、メッセージ中で搬送されることができるSIDリストの数量を増加させ、メッセージ送信の成功率を増加させるためのメッセージ生成方法およびメッセージ処理方法を提供する。
【0049】
理解しやすいように、以下は、本出願の実施形態の適用シナリオについて最初に説明する。
【0050】
図2は、本出願の一実施形態による、ネットワークシステム100の概略構造図である。
【0051】
図2に示されたネットワークシステム100は、端末デバイス101と、端末デバイス102と、ネットワーク転送デバイス201と、ネットワーク転送デバイス202と、ネットワーク転送デバイス203と、ネットワーク転送デバイス204と、コントローラ301とを含む。端末デバイス101は、ネットワーク転送デバイス201に接続され、ネットワーク転送デバイス201は、ネットワーク転送デバイス202に接続され、ネットワーク転送デバイス202は、ネットワーク転送デバイス203に接続され、ネットワーク転送デバイス203は、端末デバイス102に接続され、ネットワーク転送デバイス204は、ネットワーク転送デバイス201と、ネットワーク転送デバイス202と、ネットワーク転送デバイス203とに接続され、コントローラ301は、ネットワーク転送デバイス204に接続される。
【0052】
端末デバイス101と端末デバイス102との各々は、ユーザ機器(User Equipment、UE)、移動局(Mobile Station、MS)、モバイル端末(Mobile Terminal、MT)、端末などと呼ばれることもあり、ユーザにボイスおよび/もしくはデータ接続性を与えるためのデバイスであるか、またはデバイス、たとえば、ワイヤレス接続機能を有するハンドヘルドデバイスもしくは車両搭載デバイス中に配設されたチップである。現在、端末デバイスのいくつかの例は、モバイルフォン、デスクトップコンピュータ、タブレットコンピュータ、ノートブックコンピュータ、パームトップコンピュータ、モバイルインターネットデバイス(Mobile Internet Device、MID)、ウェアラブルデバイス、バーチャルリアリティ(Virtual Reality、VR)デバイス、拡張現実(Augmented Reality、AR)デバイス、産業制御(Industrial Control)におけるワイヤレス端末、自動運転(Self Driving)におけるワイヤレス端末、リモート医療手術(Remote Medical Surgery)におけるワイヤレス端末、スマートグリッド(Smart Grid)におけるワイヤレス端末、輸送安全性(Transportation Safety)におけるワイヤレス端末、スマートシティ(Smart City)におけるワイヤレス端末、スマートホーム(Smart Home)におけるワイヤレス端末、および5Gアクセスをサポートするホームゲートウェイデバイス(5G-Residential Gateway、5G-RG)を含む。
【0053】
ネットワーク転送デバイス201と、ネットワーク転送デバイス202と、ネットワーク転送デバイス203との各々は、ルータ(Router)またはスイッチ(Switch)などの転送デバイスであり得る。
【0054】
ネットワーク転送デバイス204は、たとえば、ルートリフレクタ(Route Reflector、RR)である。
【0055】
コントローラ301は、たとえば、ソフトウェア定義ネットワーキング(Software Defined Network、SDN)コントローラであり得る。
【0056】
本出願のこの実施形態では、コントローラ301は、ネットワーク転送デバイス204を使用することによってネットワーク転送デバイス201と、ネットワーク転送デバイス202と、ネットワーク転送デバイス203とのトポロジ情報を取得し、トポロジ情報に基づいて転送経路を示すSIDリストを生成し、ネットワーク転送デバイス204を使用することによってネットワーク転送デバイス201に第1のBGP更新メッセージを送り得、ここで、第1のBGP更新メッセージは、SIDリストを示す情報を搬送し、SIDリスト中に含まれるSIDは、それぞれ、ネットワーク転送デバイス201、ネットワーク転送デバイス202、およびネットワーク転送デバイス203を表し、SIDリストは、端末デバイス101について端末デバイス102にメッセージを送信するために使用される。
【0057】
第1のBGP更新メッセージを受信した後に、ネットワーク転送デバイス201は、第1のBGP更新メッセージ中のSIDリストによって示された経路に基づいてメッセージを転送する。
【0058】
さらに、ネットワーク転送デバイス201は、第2のBGP更新メッセージを生成し、ネットワーク転送デバイス204を使用することによってコントローラにメッセージを送り得、ここで、第2のBGP更新メッセージは、SIDリストを表す情報とセグメント記述情報とを搬送し、セグメント記述情報は、第2のBGP更新メッセージのセグメント記述子フィールド中で搬送され得る。セグメント記述情報は、たとえば、アルゴリズム識別子に関する情報を含み得、ここで、アルゴリズム識別子は、ネットワーク断片化を実行するために使用され得る。セグメント記述情報はまた、たとえば、ネットワーク転送デバイスに関する情報および/またはネットワーク転送デバイス間のトンネルのステータス情報を含み得、ここで、ネットワーク転送デバイスに関する情報は、たとえば、BGPルータ識別子(BGP Router ID)と、自律システム番号(Autonomous System Number)と、エンドポイント(Endpoint)とを含む。トンネルのステータス情報は、トンネルのステータス、たとえば、アクティブ(UP)状態または失敗(Down)状態を示す情報である。
【0059】
ネットワーク転送デバイス204は、コントローラ301とネットワーク転送デバイス201との間でBGP更新メッセージを透過的に送信し得るか、または受信されたBGP更新メッセージをパースし、次いで、送るために新しいBGP更新メッセージを生成し得る。パーシング処理は、BGP更新メッセージ中のSIDリストを表すメッセージをSIDリストに変換することを含む。新しいBGP更新メッセージを生成する処理は、SIDリストを、SIDリストを表すメッセージに変換することを含む。
【0060】
もちろん、実際の適用では、ネットワークシステム100は、ネットワーク転送デバイス204を含まないことがあり、すなわち、コントローラは、ネットワーク転送デバイス201からネットワーク転送デバイス203までに直接接続されると理解されることができる。たとえば、コントローラ301は、ネットワーク転送デバイス204を使用せずにネットワーク転送デバイス201、ネットワーク転送デバイス202、およびネットワーク転送デバイス203のトポロジ情報を直接取得し得る。
【0061】
図3は、本出願の一実施形態による、メッセージ生成方法の概略フローチャートである。
【0062】
以下は、
図2および
図3を参照して本出願のこの実施形態において提供されるメッセージ生成方法について説明する。本方法は以下のステップを含む。
【0063】
S101:第1のデバイスは、SIDリストを取得し、ここで、SIDリストは、複数のSIDを含み、複数のSIDの最初のNビットは、同じである。
【0064】
本出願のこの実施形態では、第1のデバイスは、たとえば、
図2に示される実施形態におけるコントローラ301であり得、以下で説明される第2のデバイスは、たとえば、
図2に示される実施形態におけるネットワーク転送デバイス201であり得る。代替として、第1のデバイスは、たとえば、
図2に示される実施形態におけるネットワーク転送デバイス201であり得、以下で説明される第2のデバイスは、
図2に示される実施形態におけるコントローラ301であり得る。代替として、第1のデバイスは、たとえば、
図2に示される実施形態におけるネットワーク転送デバイス201であり得、第2のデバイスは、たとえば、
図2に示される実施形態におけるネットワーク転送デバイス204であり得る。代替として、第1のデバイスは、たとえば、
図2に示される実施形態におけるネットワーク転送デバイス204であり得、第2のデバイスは、たとえば、
図2に示される実施形態におけるネットワーク転送デバイス201であり得る。
【0065】
本出願のこの実施形態では、SIDはロケータ部分と機能部分とを含み、ロケータ部分と機能部分とは、合計128ビットを占有する。最初のNビットは、SIDのロケータ部分の第1のビットからカウントされ、Nは、1以上で128よりも小さい整数である。本出願のこの実施形態では、SIDの最初のNビットは、SIDの最初のNビットのコンテンツを指す。
【0066】
本出願のこの実施形態では、第1のデバイスは、SIDリストを取得し、ここで、SIDリスト中に含まれる複数のSIDのすべての最初のNビットは同じである。
【0067】
たとえば、表1は、第1のデバイスによって取得されたSIDリスト中に含まれる複数のSIDを示す。
【0068】
【0069】
表1では、SIDリスト1は、SID1と、SID2と、SID3とを含み、ここで、SID1は、「2000::1::1」であり、SID2は、「2000::2::1」であり、SID3は、「2000::3::1」である。3つのSIDの最初の120ビットは、同じであり、「2000::」である。
【0070】
表1では、SIDリスト2は、SID4とSID5とを含み、ここで、SID4は、「2001::1::1」であり、SID5は、「2001::2::1」である。2つのSIDの最初の96ビットは、同じであり、「2001::」である。
【0071】
複数のSIDの最初のNビットが同じであることは、複数のSIDのN+1番目が異なることを意味しないことに留意されたい。すなわち、複数のSIDの最初のMビットが同じであるが、複数のSIDの第(M+1)ビットが異なると仮定する。そのとき、Nは、1以上であり、M以下である。
【0072】
S102:第1のデバイスは、SIDリストに基づいて第1のメッセージを生成し、ここで、第1のメッセージは、第1の部分と第2の部分とを含み、第1の部分は、複数のSIDの最初のNビットを含み、第2の部分は、複数のSIDの各々の第(N+1)ビットから第128ビットまでを含む。
【0073】
本出願のこの実施形態では、SIDの第(N+1)ビットから第128ビットまでは、SIDの第(N+1)ビットから第128ビットまでのコンテンツを指す。
【0074】
本出願のこの実施形態では、第1のメッセージは、たとえば、
図2に示される実施形態における第1のBGP更新メッセージまたは第2のBGP更新メッセージである。第1のメッセージ中の第1の部分と第2の部分とは、SIDリストを表す上記の実装のうちの1つであり得る。
【0075】
図4は、本出願の一実施形態による、BGP更新メッセージ中でSIDリストを搬送するTLVの概略図である。
【0076】
図4では、複数のSIDの最初のNビットは、複数のSIDの共通部分としてロケータフィールド中で搬送され、SIDリストの前に配置される。もちろん、共通部分は、代替として、第1のメッセージ中の別の位置に配置され得ると理解されることができる。これは、本出願では特に限定されない。複数のSIDの残りの部分、すなわち、
第(N+1
)ビットから
第128
ビットまでは、各サブTLVの機能(略して、Func)フィールド中で搬送される。また、上記のロケータフィールドとFuncフィールドとは、第1の部分と第2の部分とを搬送するフィールドの名前を限定するものではないと理解されることができ、当業者はまた、実際の状況に基づいてロケータフィールドとFuncフィールドとを設計し得る。第1のメッセージが複数のSIDリストを搬送する場合、複数のSIDリストのすべての共通部分は、一緒に配置され得、たとえば、第1のSIDリストの前に配置され得るか、または各SIDリストの共通部分は、それぞれのSIDリストの前に配置され得るなど、である。これは、本出願のこの実施形態では特に限定されない。
【0077】
本出願のこの実施形態では、(
図4中の薄灰色でマークされた)第1の部分は、複数のSIDの最初のNビットに加えて最初のNビットの長さを含み得る。たとえば、
図4では、最初のNビットの長さは、プレフィックス長(Prefix Length)フィールド中で搬送され、ロケータフィールドと一緒にSIDリストの前に配置される。各ロケータフィールドは、1つのプレフィックス長フィールドに対応する。もちろん、プレフィックス長フィールドの名前と位置とは本出願の技術的解決策を限定するものではなく、当業者はまた、実際の状況に基づいてプレフィックス長フィールドを設計し得る。
【0078】
本出願のこの実施形態では、(
図4中の濃灰色でマークされた)第2の部分は、複数のSIDの各々の残りの部分に加えて位置インジケータを含み得、ここで、位置インジケータは、第1のメッセージ中の複数のSIDの最初のNビットの位置を示す。たとえば、
図4では、位置インジケータは、各SIDのサブTLVのロケータ位置(略して、LocatorPos)フィールド中で搬送され、各ロケータフィールドは、1つのLocatorPosフィールドに対応する。
図4のLocatorPosフィールドの名前と位置とは本出願の技術的解決策を限定するものではないと理解されることができ、当業者はまた、実際の状況に基づいてLocatorPosフィールドを設計し得る。
【0079】
表1および
図4を参照すると、第1のメッセージは、ロケータフィールド1およびロケータフィールド2の2つのロケータフィールドを含み得、ここで、ロケータフィールド1は、SIDリスト1の「2000::」の最初のNビットを搬送し、ロケータフィールド2は、SIDリスト2の「2001::」の最初のNビットを搬送する。ロケータフィールド1に対応するプレフィックス長フィールドの値は、120であり、ロケータフィールド2に対応するプレフィックス長フィールドの値は、100である。
【0080】
SIDリスト1中のSID1中に含まれるLocatorPosフィールドの値は、ロケータフィールド1の位置を示す1であり、SID1中に含まれるFuncフィールドの値は、「1::1」である。
【0081】
SIDリスト1中のSID2中に含まれるLocatorPosフィールドの値は、ロケータフィールド1の位置を示す1であり、SID1中に含まれるFuncフィールドの値は、「2::1」である。
【0082】
SIDリスト1中のSID3中に含まれるLocatorPosフィールドの値は、ロケータフィールド1の位置を示す1であり、SID1中に含まれるFuncフィールドの値は、「3::1」である。
【0083】
SIDリスト2中のSID4中に含まれるLocatorPosフィールドの値は、ロケータフィールド2の位置を示す2であり、SID1中に含まれるFuncフィールドの値は、「::1::1」である。
【0084】
SIDリスト2中のSID5中に含まれるLocatorPosフィールドの値は、ロケータフィールド2の位置を示す2であり、SID1中に含まれるFuncフィールドの値は、「::2::1」である。
【0085】
S103:第1のデバイスは、第2のデバイスに第1のメッセージを送る。
【0086】
S104:第2のデバイスは、第1のメッセージを受信し、第1のメッセージの第1の部分と第2の部分とに基づいてSIDリストを取得する。
【0087】
本出願のこの実施形態では、第1の部分は、SIDリスト中の複数のSIDの最初のNビットを含み、第2の部分は、複数のSIDの各々の第(N+1)ビットから第128ビットまでを含むので、複数のSIDの各々は、最初のNビットと第(N+1)ビットから第128ビットまでとを組み合わせることによって取得され得る。SIDリスト中に含まれる複数のSIDを取得した後に、SIDリストは、第1のメッセージ中の複数のSIDのシーケンスに基づいて生成される。
【0088】
第2の部分が、第1の部分中の複数のSIDの最初のNビットの位置インジケータをさらに含む場合、第2のデバイスは、位置インジケータに基づいて複数のSIDの最初のNビットを取得し、次いで、複数のSIDの最初のNビットと複数のSIDの各々の第(N+1)ビットから第128ビットまでとに基づいて複数のSIDを取得し、次いで、第1のメッセージ中の複数のSIDのシーケンスに基づいてSIDリストを取得し得る。
【0089】
たとえば、第1のデバイスは、SID1中に含まれるLocatorPosフィールドの値「1」に基づいてロケータフィールド1の値「2000::」を取得し、SID1中に含まれるFuncフィールドの値「1::1」に基づいてロケータフィールドのコンテンツとFuncフィールドのコンテンツとを組み合わせることによってSID1の値「2000::1::1」を取得し得る。
【0090】
別の例では、第1のデバイスは、SID3中に含まれるLocatorPosフィールドの値「2」に基づいてロケータフィールド2の値「2001::」を取得し、SID3中に含まれるFuncフィールドの値「::1::1」に基づいてロケータフィールドのコンテンツとFuncフィールドのコンテンツとを組み合わせることによってSID3の値「2001::1::1」を取得する。
【0091】
本出願のこの実施形態では、複数のSIDの最初のNビットは、抽出され、共通部分としてフィールド中で別々に搬送される。これは、各SIDが128ビットを含む従来の方式とは異なり、したがって、第1のメッセージ中のSIDリストによって占有される長さは、従来の方式と比較して低減され、第1のメッセージは、従来の方式よりも多くの数量のSIDリストを搬送することができ、それによって、メッセージ送信の効率および成功率を改善する。
【0092】
たとえば、1つのSIDリストが、10個のSIDを含み、すべてのSIDの最初の15バイト(すなわち、120ビット)が同じであり、各SIDの最後のバイトが、任意の他のSIDの最後のバイトとは異なると仮定する。プレフィックス長フィールドは1バイトを占有し、次いで、SIDリストの長さは10×10+15+16+1=132バイトであり、4Kバイトのメッセージ長をもつメッセージは、最大4K/132≒30個のSIDリストを搬送することができる(すべてのSIDリストが同じ長さのものであると仮定する)。上述のように、最大15個のSIDリストしか従来の方式では搬送されることができない。したがって、本出願のこの実施形態における第1のメッセージは、従来の方式よりも多くの数量のSIDリストを搬送することができ、それによって、メッセージ送信の効率を改善し、メッセージが切り捨てられるかまたは送られないリスクを低減し、メッセージ送信の成功率を改善する。
【0093】
図5は、本出願の一実施形態による、メッセージ生成方法の別のフローチャートである。
【0094】
以下は、
図2および
図5を参照して本出願のこの実施形態において提供されるメッセージ生成方法について説明する。本方法は以下のステップを含む。
【0095】
S201:第1のデバイスは、SIDリスト識別子を取得する。
【0096】
本出願のこの実施形態では、第1のデバイスは、たとえば、
図2に示される実施形態におけるコントローラ301であり得、以下で説明される第2のデバイスは、たとえば、
図2に示される実施形態におけるネットワーク転送デバイス201であり得る。代替として、第1のデバイスは、たとえば、
図2に示される実施形態におけるネットワーク転送デバイス201であり得、以下で説明される第2のデバイスは、
図2に示される実施形態におけるコントローラ301であり得る。代替として、第1のデバイスは、たとえば、
図2に示される実施形態におけるネットワーク転送デバイス201であり得、第2のデバイスは、たとえば、
図2に示される実施形態におけるネットワーク転送デバイス204であり得る。代替として、第1のデバイスは、たとえば、
図2に示される実施形態におけるネットワーク転送デバイス204であり得、第2のデバイスは、たとえば、
図2に示される実施形態におけるネットワーク転送デバイス201であり得る。
【0097】
第1のデバイスがコントローラであるとき、第1のデバイスは、SIDリストのための対応する識別子を生成し得る。第1のデバイスがネットワーク転送デバイスであるとき、コントローラは、ネットワーク転送デバイスにSIDリストとSIDリスト識別子との間の対応関係を事前に配信し得、したがって、ネットワーク転送デバイスは、SIDリスト識別子を取得する。
【0098】
たとえば、表2は、SIDリストとSIDリスト識別子との間の対応関係を示す。
【0099】
【0100】
表2では、SIDリスト識別子Aは、SID1と、SID2と、SID3とを含むSIDリスト識別子であり、SIDリスト識別子Bは、SID4とSID5とを含むSIDリスト識別子である。
【0101】
本出願のこの実施形態では、SIDリスト識別子は、文字、番号などであり得る。これは、本出願のこの実施形態では特に限定されない。
【0102】
S202:第1のデバイスは、第1のメッセージを生成し、ここで、第1のメッセージは、SIDリスト識別子を含む。
【0103】
本出願のこの実施形態では、第1のメッセージは、たとえば、
図2に示される実施形態における第1のBGP更新メッセージまたは第2のBGP更新メッセージである。
【0104】
図6は、本出願の一実施形態による、BGP更新メッセージ中でSIDリスト識別子(ID)を搬送するTLVの概略図である。
【0105】
図6では、TLVは、SIDリストIDフィールドを含み、ここで、SIDリストIDフィールドは、4バイトを占有し得る。各SIDリストIDフィールドは、SIDリスト中に含まれる各SIDのセグメント記述子フィールドを搬送するために使用されるサブTLVの前に配置され、SIDリストIDフィールド中で搬送されるSIDリストIDに対応するサブTLVがSIDリストIDフィールドの後に配置されることを示し得る。相応して、
図6中のサブTLVは、SIDを搬送するSIDフィールドの数量を低減し、したがって、SIDリスト全体のバイトの数量が低減される。もちろん、
図6は、第1のメッセージ中のSIDリストIDフィールドの位置を限定しないと理解されることができ、当業者はまた、実際の状況に基づいてSIDリストIDフィールドの位置を設計し得る。
【0106】
表2および
図6を参照すると、第1のメッセージは、SIDリストIDフィールド1とSIDリストIDフィールド2との2つのSIDリストIDフィールドを含み得る。SIDリストIDフィールド1は、SIDリスト識別子Aを搬送し、SIDリストIDフィールド2は、SIDリスト識別子Bを搬送する。SIDリスト識別子Aは、3つのサブTLVを含み、ここで、3つのサブTLVは、それぞれ、SID1、SID2、およびSID3のセグメント記述子フィールドを含む。SIDリスト識別子Bは、2つのサブTLVを含み、ここで、2つのサブTLVは、それぞれ、SID4およびSID5のセグメント記述子フィールドを含む。各SIDリストIDフィールドは、第1のメッセージ中の対応するサブTLVの前か後に配置され得る。これは、本出願のこの実施形態では特に限定されない。
【0107】
SIDリストに対応するサブTLVは、SIDリスト中のSIDの順序に配置され得、したがって、第2のデバイスは、SIDに対応するサブTLVを正確に発見することができることに留意されたい。
【0108】
S203:第1のデバイスは、第2のデバイスに第1のメッセージを送る。
【0109】
S204:第2のデバイスは、第1のデバイスから第1のメッセージを受信する。
【0110】
S205:第2のデバイスは、SIDリスト識別子と対応関係とに基づいてSIDリストを取得し、ここで、対応関係は、SIDリストとSIDリスト識別子との間の対応関係を含む。
【0111】
本出願のこの実施形態では、第2のデバイスは、SIDリストとSIDリスト識別子との間の対応関係を事前に取得し、第1のメッセージを受信した後にSIDリスト識別子と対応関係とに基づいてSIDリストを取得する。
【0112】
たとえば、第2のデバイスは、表2と第1のメッセージ中のSIDリストIDフィールド1中のSIDリスト識別子Aとに基づいてSID1、SID2およびSID3を含むSIDリストを取得する。SIDリストを取得した後に、第2のデバイスは、第1のメッセージ中のSIDリスト識別子Aに対応するサブTLVを取得し、サブTLVからセグメント記述子フィールドの値を抽出し得る。SIDリスト識別子Aに対応するサブTLVがSIDリスト1中のSIDの順序に配置されるので、サブTLVの順序に基づいてすべてのサブTLVから第1のデバイスによって抽出されるセグメント記述子フィールドの値はSIDリスト中に含まれるSIDに対応することができる。
【0113】
本出願のこの実施形態では、SIDリスト識別子がSIDリスト中に含まれる複数のSIDを置き換えるために使用されるので、SIDリスト識別子の長さはSIDリスト中に含まれる複数のSIDの長さよりも短く、したがって、SIDリストの長さが低減され、第1のメッセージはより多くの数量のSIDリストを搬送することができる。
【0114】
たとえば、1つのSIDリストが10個のSIDを含み、第1のメッセージ中のSIDリストIDフィールドが4バイトを占有すると仮定する。次いで、SIDリストの長さは9×10+16+4=110バイトであり、4Kバイトのメッセージ長をもつメッセージは、最大4K/110≒36個のSIDリストを搬送することができる(SIDリストが同じ長さのものであると仮定する)。上述のように、最大15個のSIDリストしか従来の方式では搬送されることができない。したがって、本出願のこの実施形態における第1のメッセージは、従来の方式でよりも多くの数量のSIDリストを搬送することができ、それによって、メッセージが切り捨てられるかまたは送られないリスクを低減し、メッセージ送信の効率および成功率を改善する。
【0115】
図7は、本出願の一実施形態による、メッセージ生成方法の別のフローチャートである。
【0116】
以下は、
図2および
図7を参照して本出願のこの実施形態において提供されるメッセージ生成方法について説明する。本方法は以下のステップを含む。
【0117】
S301:第1のデバイスは、SIDリスト中の各SIDに対応するロケータ識別子を取得し、ここで、ロケータ識別子の長さは、ロケータの長さよりも短い。
【0118】
本出願のこの実施形態では、ロケータ識別子は、SIDリスト中のSIDのロケータ部分を識別するために使用される。
【0119】
本出願のこの実施形態では、第1のデバイスは、たとえば、
図2に示される実施形態におけるコントローラ301であり得、以下で説明される第2のデバイスは、たとえば、
図2に示される実施形態におけるネットワーク転送デバイス201であり得る。代替として、第1のデバイスは、たとえば、
図2に示される実施形態におけるネットワーク転送デバイス201であり得、以下で説明される第2のデバイスは、
図2に示される実施形態におけるコントローラ301であり得る。代替として、第1のデバイスは、たとえば、
図2に示される実施形態におけるネットワーク転送デバイス201であり得、第2のデバイスは、たとえば、
図2に示される実施形態におけるネットワーク転送デバイス204であり得る。代替として、第1のデバイスは、たとえば、
図2に示される実施形態におけるネットワーク転送デバイス204であり得、第2のデバイスは、たとえば、
図2に示される実施形態におけるネットワーク転送デバイス201であり得る。
【0120】
本出願のこの実施形態では、第1のデバイスがコントローラであるとき、第1のデバイスは、SIDのロケータ部分のための対応する識別子を生成し得るか、またはSIDに対応するネットワーク転送デバイスによって割り当てられたロケータ識別子を取得し得る。後者の場合、各ネットワーク転送デバイスは、それ自体のロケータ識別子を事前に割り当て、次いで、フラッディングを通してヘッドエンド(
図1では、ヘッドエンドはネットワーク転送デバイス201である)にロケータ部分とロケータ識別子との間の対応関係を送り、次いで、ヘッドエンドは、各ネットワーク転送デバイスからコントローラにロケータ部分とロケータ識別子との間の受信された対応関係を報告する。代替として、各ネットワーク転送デバイスは、コントローラにそれ自体のロケータ部分とロケータ識別子との間の対応関係を直接送り得る。
【0121】
第1のデバイスがネットワーク転送デバイスであるとき、第1のデバイスは、ネットワーク転送デバイスごとに事前構成されたSIDのロケータ識別子とロケータ部分との間の対応関係を受信し得るか、またはコントローラによって配信された対応関係を受信し得る。これは、本出願のこの実施形態では特に限定されない。
【0122】
表3は、ロケータ部分とロケータ識別子(ID)との間の対応関係の一例を示す。
【0123】
【0124】
本出願のこの実施形態では、ロケータ識別子は、文字、番号などであり得る。これは、本出願のこの実施形態では特に限定されない。
【0125】
S302:第1のデバイスは、第1のメッセージを生成し、ここで、第1のメッセージは、SIDリスト中の各SIDに対応するロケータ識別子と機能部分とを含む。
【0126】
本出願のこの実施形態では、第1のメッセージは、たとえば、
図2に示される実施形態における第1のBGP更新メッセージまたは第2のBGP更新メッセージである。
【0127】
本出願のこの実施形態では、第1のデバイスは、SIDリスト中に含まれるSIDのロケータ識別子を取得した後に第1のメッセージを生成し得る。第1のメッセージは、第1のフィールドと第2のフィールドとを含み得、ここで、第1のフィールドはSIDのロケータ識別子を搬送し、第2のフィールドはSIDの機能部分を搬送する。
【0128】
図8は、本出願の一実施形態による、BGP更新メッセージ中でSIDリストを搬送するTLVの概略図である。
図8では、第1のフィールドは、(
図8中の薄灰色でマークされた)ロケータIDフィールドであり、これは、4バイトを占有し、第2のフィールドは、(
図8中の濃灰色でマークされた)機能(func)フィールドである。
【0129】
表3および
図8を参照すると、SID1に対応するサブTLV中に含まれるロケータIDフィールドの値は1であり、funcフィールドの値は「::1」であり、SID2に対応するサブTLV中に含まれるロケータIDフィールドの値は2であり、funcフィールドの値は、「::1」であり、SID3に対応するサブTLV中に含まれるロケータIDフィールドの値は3であり、funcフィールドの値は、「::1」である。
【0130】
S303:第1のデバイスは、第2のデバイスに第1のメッセージを送る。
【0131】
S304:第2のデバイスは、第1のデバイスから第1のメッセージを受信する。
【0132】
S305:第2のデバイスは、各SIDに対応するロケータ識別子と対応関係とに基づいて各SIDのロケータ部分を取得する。
【0133】
S306:第2のデバイスは、各SIDのロケータ部分と各SIDの機能部分とに基づいてSIDリストを取得する。
【0134】
SIDのロケータ部分と機能部分とを取得した後に、SIDは、ロケータ部分の後に機能部分を配置することによって取得されることができる。
【0135】
たとえば、第2のデバイスは、表3と、第1のメッセージ中のSID1に対応するロケータIDフィールドの値「1」とに基づいてロケータ部分の「2000::1」を取得し、SID1に対応するfuncフィールドの値「::1」に基づいてSID1の「2000::1::1」を取得し、第2のデバイスは、表3と、第1のメッセージ中のSID2に対応するロケータIDフィールドの値「2」とに基づいてロケータ部分の「2000::2」を取得し、SID1に対応するfuncフィールドの値「::1」に基づいてSID2の「2000::2::1」を取得し、第2のデバイスは、表3と、第1のメッセージ中のSID3に対応するロケータIDフィールドの値「3」とに基づいてロケータ部分の「2000::3」を取得し、SID3に対応するfuncフィールドの値「::1」に基づいてSID3の「2000::3::1」を取得する。
【0136】
本出願のこの実施形態では、ロケータ識別子の長さがロケータ部分の長さよりも短いので、SIDリストの長さが低減され、第1のメッセージは、従来の方式でよりも多くの数量のSIDリストを搬送し得、それによって、伝送効率を改善する。
【0137】
たとえば、1つのSIDリストが10個のSIDを含み、各SIDのロケータ部分が15バイトを占有し、各SIDの機能部分が1バイトを占有すると仮定する。各SIDのロケータ部分が4バイトのみを占有するロケータIDによって置き換えられる場合、1つのSIDリストの長さは14×10+16=156バイトであり、4Kバイトのメッセージ長をもつメッセージは、最大4K/156≒25個のSIDリストを搬送することができる(SIDリストが同じ長さのものであると仮定する)。上述のように、最大15個のSIDリストしか従来の方式では搬送されることができない。したがって、本出願のこの実施形態における第1のメッセージは、従来の方式でよりも多くの数量のSIDリストを搬送することができ、それによって、メッセージが切り捨てられるかまたは送られないリスクを低減し、メッセージ送信の成功率を改善する。
【0138】
相応して、
図9を参照すると、本出願の一実施形態は、メッセージ生成装置900をさらに提供する。装置900は、
図3に示される実施形態における第1のデバイスの機能を実装するように構成される。装置900は、獲得ユニット901と、生成ユニット902と、送信ユニット903とを含み、ここで、獲得ユニット901は、
図3に示される実施形態におけるS101を実行するように構成され、生成ユニット902は、
図3に示される実施形態におけるS102を実行するように構成され、送信ユニット903は、
図3に示される実施形態におけるS103を実行するように構成される。
【0139】
獲得ユニット901は、セグメント識別子リストSIDリストを取得するように構成され、ここで、SIDリストは、複数のセグメント識別子SIDを含み、複数のSIDの最初のNビットは同じであり、Nは正の整数である。
【0140】
生成ユニット902は、SIDリストに基づいて第1のメッセージを生成するように構成され、ここで、第1のメッセージは、第1の部分と第2の部分とを含み、第1の部分は、複数のSIDの最初のNビットを含み、第2の部分は、複数のSIDの各々の第(N+1)ビットから第128ビットまでを含む。
【0141】
送信ユニット903は、第2のデバイスに第1のメッセージを送るように構成される。
【0142】
本出願のこの実施形態において提供されるメッセージ生成装置900の関連するコンテンツについては、
図3に示される実施形態における第1のデバイスの説明への参照が行われ得、本明細書では、詳細を再び説明しない。
【0143】
図10を参照すると、本出願の一実施形態は、メッセージ処理装置1000を提供する。装置1000は、
図3に示される実施形態における第2のデバイスの機能を実装するように構成される。装置1000は、受信ユニット1001と獲得ユニット1002とを含み、ここで、受信ユニット1001と獲得ユニット1002とは、
図3に示される実施形態におけるS104を実行するように構成される。
【0144】
受信ユニット1001は、第1のデバイスから第1のメッセージを受信するように構成され、ここで、第1のメッセージは、セグメント識別子リストSIDリストを搬送するために使用され、SIDリストは、複数のセグメント識別子SIDを含み、複数のSIDの最初のNビットは、同じであり、第1のメッセージは、第1の部分と第2の部分とを含み、第1の部分は、SIDリスト中の複数のSIDの最初のNビットを含み、第2の部分は、複数のSIDの各々の第(N+1)ビットから第128ビットまでを含む。
【0145】
獲得ユニット1002は、第1の部分と第2の部分とに基づいてSIDリストを取得するように構成される。
【0146】
本出願のこの実施形態において提供されるメッセージ
処理装置1000の関連するコンテンツについては、
図3に示される実施形態における第2のデバイスの説明への参照が行われ得、本明細書では、詳細を再び説明しない。
【0147】
図11を参照すると、本出願の一実施形態は、メッセージ生成装置1100を提供する。装置1100は、
図5に示される実施形態における第1のデバイスの機能を実装するように構成される。装置1100は、獲得ユニット1101と、生成ユニット1102と、送信ユニット1103とを含み、ここで、獲得ユニット1101は、
図5に示される実施形態におけるS201を実行するように構成され、生成ユニット1102は、
図5に示される実施形態におけるS202を実行するように構成され、送信ユニット1103は、
図5に示される実施形態におけるS203を実行するように構成される。
【0148】
獲得ユニット1101は、セグメント識別子リストSIDリスト識別子を取得するように構成され、ここで、SIDリスト識別子は、SIDリストに対応する。
【0149】
生成ユニット1102は、第1のメッセージを生成するように構成され、ここで、第1のメッセージは、SIDリスト識別子を含む。
【0150】
送信ユニット1103は、第2のデバイスに第1のメッセージを送るように構成される。
【0151】
本出願のこの実施形態において提供されるメッセージ生成装置1100の関連するコンテンツについては、
図5に示される実施形態における第1のデバイスの説明への参照が行われ得、本明細書では、詳細を再び説明しない。
【0152】
図12を参照すると、本出願の一実施形態は、メッセージ処理装置1200を提供する。装置1200は、
図5に示される実施形態における第2のデバイスの機能を実装するように構成される。装置1200は、受信ユニット1201と獲得ユニット1202とを含み、ここで、受信ユニット1201は、
図5に示される実施形態におけるS204を実行するように構成され、獲得ユニット1202は、
図5に示される実施形態におけるS205を実行するように構成される。
【0153】
受信ユニット1201は、第1のデバイスから第1のメッセージを受信するように構成され、ここで、第1のメッセージは、セグメント識別子リストSIDリスト識別子を含み、SIDリスト識別子は、SIDリストに対応する。
【0154】
獲得ユニット1202は、SIDリスト識別子と対応関係とに基づいてSIDリストを取得するように構成され、ここで、対応関係は、SIDリストとSIDリスト識別子との間の対応関係を含む。
【0155】
本出願のこの実施形態において提供されるメッセージ
処理装置1200の関連するコンテンツについては、
図5に示される実施形態における第2のデバイスの説明への参照が行われ得、本明細書では、詳細を再び説明しない。
【0156】
図13を参照すると、本出願の一実施形態は、メッセージ生成装置1300を提供し、ここで、装置1300は、
図7に示される実施形態における第1のデバイスの機能を実装するように構成される。装置1300は、獲得ユニット1301と、生成ユニット1302と、送信ユニット1303とを含み、ここで、獲得ユニット1301は、
図7に示される実施形態におけるS301を実行するように構成され、生成ユニット1302は、
図7に示される実施形態におけるS302を実行するように構成され、送信ユニット1303は、
図7に示される実施形態におけるS303を実行するように構成される。
【0157】
獲得ユニット1301は、セグメント識別子リストSIDリスト中の各セグメント識別子SIDに対応するロケータ識別子を取得するように構成され、ここで、ロケータ識別子は、ロケータ識別子に対応するSIDのロケータ部分を識別するために使用され、ロケータ識別子の長さは、ロケータ部分の長さよりも短い。
【0158】
生成ユニット1302は、第1のメッセージを生成するように構成され、ここで、第1のメッセージは、SIDリスト中の各SIDに対応するロケータ識別子と各SIDの機能部分とを含む。
【0159】
送信ユニット1303は、第2のデバイスに第1のメッセージを送るように構成される。
【0160】
本出願のこの実施形態において提供されるメッセージ生成装置1300の関連するコンテンツについては、
図7に示される実施形態における第1のデバイスの説明への参照が行われ得、本明細書では、詳細を再び説明しない。
【0161】
図14を参照すると、本出願の一実施形態は、メッセージ処理装置1400を提供する。装置1400は、
図7に示される実施形態における第2のデバイスの機能を実装するように構成される。装置1400は、受信ユニット1401と、決定ユニット1402と、獲得ユニット1403とを含み、ここで、受信ユニット1401は、
図7に示される実施形態におけるS304を実行するように構成され、決定ユニット1402は、
図7に示される実施形態におけるS305を実行するように構成され、獲得ユニット1403は、
図7に示される実施形態におけるS306を実行するように構成される。
【0162】
受信ユニット1401は、第1のデバイスから第1のメッセージを受信するように構成され、ここで、第1のメッセージは、セグメント識別子リストSIDリスト中の各セグメント識別子SIDに対応するロケータ識別子とSIDの機能部分とを含み、ロケータ識別子は、ロケータ識別子に対応するSIDのロケータ部分を識別するために使用され、ロケータ識別子の長さは、ロケータ部分の長さよりも短い。
【0163】
決定ユニット1402は、各SIDに対応するロケータ識別子と対応関係とに基づいて各SIDのロケータ部分を取得するように構成され、ここで、対応関係は、各SIDのロケータ識別子とロケータ部分との間の対応関係を含む。
【0164】
獲得ユニット1403は、各SIDのロケータ部分と各SIDの機能部分とに基づいてSIDリストを取得するように構成される。
【0165】
本出願のこの実施形態において提供されるメッセージ
処理装置1400の関連するコンテンツについては、
図7に示される実施形態における第2のデバイスの説明への参照が行われ得、本明細書では、詳細を再び説明しない。
【0166】
メッセージ生成装置900、メッセージ生成装置1100、およびメッセージ生成装置1300に対応するメッセージ生成デバイスのハードウェア構造とメッセージ処理装置1000、メッセージ処理装置1200、およびメッセージ処理装置1400に対応するメッセージ処理デバイスのハードウェア構造とは両方とも、
図15に示された構造であり得ることに留意されたい。
図15は、本出願の一実施形態による、デバイスの概略構造図である。
【0167】
図15に示されるように、デバイス1500は、プロセッサ1510と、通信インターフェース1520と、メモリ1530とを含む。デバイス1500は、1つまたは複数のプロセッサ1510を含み得る。
図15では、1つのプロセッサが一例として使用される。本出願のこの実施形態では、プロセッサ1510と、通信インターフェース1520と、メモリ1530とがバスシステムまたは別の方法を使用して接続され得る。
図15では、バスシステム1040に基づく接続が一例として使用される。
【0168】
プロセッサ1510は、中央処理ユニット(Central Processing Unit、CPU)、ネットワークプロセッサ(Network Processor、NP)またはCPUとNPとの組合せであり得る。プロセッサ1510は、ハードウェアチップをさらに含み得る。ハードウェアチップは、特定用途向け集積回路(Application-Specific Integrated Circuit、ASIC)、プログラマブル論理デバイス(Programmable Logic Device、PLD)、またはそれらの組合せであり得る。PLDは、複合プログラマブル論理デバイス(Complex Programmable Logic Device、CPLD)、フィールドプログラマブルゲートアレイ(Field-Programmable Gate Array、FPGA)、汎用アレイ論理(Generic Array Logic、GAL)、またはそれらの組合せであり得る。
【0169】
メモリ1530は、ランダムアクセスメモリ(Random-Access Memory、RAM)などの揮発性メモリ(英語:Volatile Memory)を含み得る。メモリ1530はまた、フラッシュメモリ(英語:Flash Memory)、ハードディスクドライブ(Hard Disk Drive、HDD)、またはソリッドステートドライブ(Solid-State Drive、SSD)などの不揮発性メモリ(英語:Non-Volatile Memory)を含み得る。メモリ1530はまた、上記のタイプのメモリの組合せを含み得る。
【0170】
任意選択で、メモリ1530は、オペレーティングシステムおよびプログラム、実行可能モジュールもしくはデータ構造、またはそれらのサブセット、またはそれらの拡張セットを記憶し、ここで、プログラムは、様々な動作を実装するための様々な動作命令を含み得る。オペレーティングシステムは、様々な基本サービスおよび処理ハードウェアベースのタスクを実装するための様々なシステムプログラムを含み得る。プロセッサ1510は、本出願の実施形態において提供されるメッセージ生成方法またはメッセージ処理方法を実装するためにメモリ1530中のプログラムを読み取り得る。
【0171】
バスシステム1040は、周辺構成要素相互接続(Peripheral Component Interconnect、PCI)バス、拡張業界標準アーキテクチャ(Extended Industry Standard Architecture、EISA)バスなどであり得る。バスシステム1040は、アドレスバス、データバス、制御バスなどに分類され得る。表現を簡単にするために、ただ1つの太線が
図15中のバスを表すために使用されているが、これは、ただ1つのバスまたはただ1つのタイプのバスしかないことを意味しない。
【0172】
本出願の一実施形態は、メッセージ生成システムをさらに提供し、ここで、システムは、第1のデバイスと第2のデバイスとを含む。システム中の第1のデバイスは、
図3に示される実施形態における第1のデバイスの処理ステップを実行し得るか、または相応して、システム中の第1のデバイスは、
図9に示される実施形態におけるメッセージ生成装置900である。システム中の第2のデバイスは、
図3に示される実施形態における第2のデバイスの処理ステップを実行し得るか、または相応して、システム中の第2のデバイスは、
図10に示される実施形態におけるメッセージ処理装置1000である。
【0173】
本出願の一実施形態は、メッセージ生成システムをさらに提供し、ここで、システムは、第1のデバイスと第2のデバイスとを含む。システム中の第1のデバイスは、
図5に示される実施形態における第1のデバイスの処理ステップを実行し得るか、または相応して、システム中の第1のデバイスは、
図11に示される実施形態におけるメッセージ生成装置1100である。システム中の第2のデバイスは、
図5に示される実施形態における第2のデバイスの処理ステップを実行し得るか、または相応して、システム中の第2のデバイスは、
図12に示される実施形態におけるメッセージ処理装置1200である。
【0174】
本出願の一実施形態は、メッセージ生成システムをさらに提供し、ここで、システムは、第1のデバイスと第2のデバイスとを含む。システム中の第1のデバイスは、
図7に示される実施形態における第1のデバイスの処理ステップを実行し得るか、または相応して、システム中の第1のデバイスは、
図13に示される実施形態におけるメッセージ生成装置1300である。システム中の第2のデバイスは、
図7に示される実施形態における第2のデバイスの処理ステップを実行し得るか、または相応して、システム中の第2のデバイスは、
図14に示される実施形態におけるメッセージ処理装置1400である。
【0175】
本出願の一実施形態は、コンピュータ可読記憶媒体をさらに提供し、ここで、コンピュータ可読記憶媒体は、命令を含み、命令がコンピュータ上で実行されるとき、コンピュータは、前述の方法実施形態において提供され、第1のデバイスによって実行されるメッセージ生成方法を実行することが可能になる。
【0176】
本出願の一実施形態は、コンピュータ可読記憶媒体をさらに提供し、ここで、コンピュータ可読記憶媒体は、命令を含み、命令がコンピュータ上で実行されるとき、コンピュータは、前述の方法実施形態において提供され、第2のデバイスによって実行されるメッセージ処理方法を実行することが可能になる。
【0177】
本出願の一実施形態は、命令を含むコンピュータプログラム製品をさらに提供し、ここで、コンピュータプログラム製品がコンピュータ上で動作するとき、コンピュータは、前述の方法実施形態において提供され、第1のデバイスによって実行されるメッセージ生成方法を実行することが可能になる。
【0178】
本出願の一実施形態は、命令を含むコンピュータプログラム製品をさらに提供し、ここで、コンピュータプログラム製品がコンピュータ上で動作するとき、コンピュータは、前述の方法実施形態において提供され、第2のデバイスによって実行されるメッセージ処理方法を実行することが可能になる。
【0179】
本出願の明細書、特許請求の範囲、および添付の図面において、「第1の」、「第2の」、「第3の」、「第4の」などという用語は(存在する場合)、同様のオブジェクトの間を区別するものであるが、必ずしも特定の順序またはシーケンスを示すとは限らない。そのような方法で呼ばれるデータは、適切な状況では交換可能であり、したがって、本明細書で説明する本発明の実施形態は、本明細書で図示または説明する順序とは異なる順序で実装されることができることを理解されたい。さらに、「含む」、「含まれる」という用語および任意の他の変形形態が、非排他的な包含、たとえば、必ずしもユニットに限定されるとは限らないステップまたはユニットのリストを含む処理、方法、システム、製品、またはデバイスをカバーするものであるが、そのような処理、方法、システム、製品、またはデバイスに明示的にリストされていないまたはそれらに固有の他のユニットを含み得る。
【0180】
本出願では、「少なくとも1つの」は1つまたは複数を意味し、「複数の」は2つ以上を意味する。「以下のうちの少なくとも1つ」またはそれの同様の表現は、以下の任意の組合せを示し、以下のうちの1つまたは複数の任意の組合せを含む。たとえば、a、b、またはcのうちの少なくとも1つは、a、b、c、a-b、a-c、b-c、またはa-b-cを示し得、ここで、a、b、およびcは、単数形または複数形を示し得る。本出願では、「Aおよび/またはB」は、Aのみ、Bのみ、およびA+Bを含むと考慮される。
【0181】
便利で簡単な説明のために、上記のシステム、装置、およびユニットの詳細な作業処理については、上記の方法実施形態における対応する処理への参照が行われ得ることが当業者によって明らかに理解され得、本明細書では、詳細を再び説明しない。
【0182】
本出願で提供されるいくつかの実施形態では、開示するシステム、装置、および方法が他の方法で実装され得ることを理解されたい。たとえば、説明した装置実施形態は、一例にすぎない。たとえば、ユニット区分は論理機能区分にすぎず、実際の実装では他の区分であり得る。たとえば、複数のユニットまたは構成要素が、組み合わされ得るか、もしくは別のシステムに統合され得、またはいくつかの特徴は、無視され得るか、もしくは実行されないことがある。さらに、表示されるまたは説明される相互結合または直接結合または通信接続は、いくつかのインターフェースを使用することによって実装され得る。装置またはユニット間での間接的な結合または通信接続は、電子、機械、または他の形態で実装され得る。
【0183】
別個の部分として説明されるユニットは、物理的に別個であることも、別個でないこともあり、ユニットとして表示される部分は、物理的なユニットであることも物理的なユニットでないこともあり、1つの位置に位置し得るか、または複数のネットワークユニット上に分散され得る。ユニットの一部または全部は、実施形態の解決策の目的を達成するために実際の要件に基づいて選択され得る。
【0184】
さらに、本出願の実施形態における機能ユニットは、1つ処理ユニットに統合され得るか、またはユニットの各々は、物理的に単独で存在し得るか、または2つ以上のユニットは、1つのユニットに統合される。統合ユニットは、ハードウェアの形態で実装され得るか、またはソフトウェア機能ユニットの形態で実装され得る。
【0185】
統合ユニットがソフトウェア機能ユニットの形態で実装され、独立した製品として販売または使用されるとき、統合ユニットは、コンピュータ可読記憶媒体中に記憶され得る。そのような理解に基づいて、本質的に本出願の技術的解決策、または従来技術に寄与する部分、または技術的解決策の全部または一部は、ソフトウェア製品の形態で実装され得る。ソフトウェア製品は、記憶媒体中に記憶され、本出願の実施形態において説明される方法のステップの全部または一部を実行するように(パーソナルコンピュータ、サーバ、またはネットワークデバイスを含み得る)コンピュータデバイスに命令するためのいくつかの命令を含む。上記の記憶媒体は、USBフラッシュドライブ、リムーバブルハードディスク、読取り専用メモリ(Read-Only Memory、ROM)、ランダムアクセスメモリ(Random Access Memory、RAM)、磁気ディスク、または光ディスクなど、プログラムコードを記憶することができる任意の媒体を含む。
【0186】
当業者は、上記の1つまたは複数の例では、本発明において説明される機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せによって実装され得ることを認識すべきである。本発明がソフトウェアによって実装されるとき、上記の機能は、コンピュータ可読媒体中に記憶されるか、またはコンピュータ可読媒体中の1つまたは複数の命令もしくはコードとして送信され得る。コンピュータ可読媒体は、コンピュータ記憶媒体と通信媒体とを含み、ここで、通信媒体は、コンピュータプログラムがある位置から別の位置に送信されることを可能する任意の媒体を含む。記憶媒体は、汎用または専用コンピュータにとってアクセス可能な任意の利用可能な媒体であり得る。
【0187】
本出願の目的、技術的解決策、および有益な効果は、上記の特定の実装においてさらに詳細に説明されている。上記の説明は、本発明の特定の実装形態にすぎないことを理解されたい。
【0188】
上記の実施形態は、本出願の技術的解決策について説明するものにすぎず、本出願を限定するものではない。本出願について上記の実施形態に関して詳細に説明されているが、本出願の実施形態の技術的解決策の範囲から逸脱することなく上記の実施形態において説明された技術的解決策にさらに変更を行うか、またはそれのいくつかの技術的特徴に等価の代替を行い得ることを、当業者は理解されたい。