IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 華為技術有限公司の特許一覧

<>
  • 特許-機能通知方法、及び関連デバイス 図1
  • 特許-機能通知方法、及び関連デバイス 図2
  • 特許-機能通知方法、及び関連デバイス 図3A
  • 特許-機能通知方法、及び関連デバイス 図3B
  • 特許-機能通知方法、及び関連デバイス 図4
  • 特許-機能通知方法、及び関連デバイス 図5
  • 特許-機能通知方法、及び関連デバイス 図6
  • 特許-機能通知方法、及び関連デバイス 図7
  • 特許-機能通知方法、及び関連デバイス 図8
  • 特許-機能通知方法、及び関連デバイス 図9
  • 特許-機能通知方法、及び関連デバイス 図10
  • 特許-機能通知方法、及び関連デバイス 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-06
(45)【発行日】2024-06-14
(54)【発明の名称】機能通知方法、及び関連デバイス
(51)【国際特許分類】
   H04L 41/085 20220101AFI20240607BHJP
   H04L 45/02 20220101ALI20240607BHJP
【FI】
H04L41/085
H04L45/02
【請求項の数】 17
(21)【出願番号】P 2023501762
(86)(22)【出願日】2021-07-13
(65)【公表番号】
(43)【公表日】2023-08-10
(86)【国際出願番号】 CN2021105883
(87)【国際公開番号】W WO2022012489
(87)【国際公開日】2022-01-20
【審査請求日】2023-02-21
(31)【優先権主張番号】202010672048.2
(32)【優先日】2020-07-13
(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)【発明者】
【氏名】周 天然
(72)【発明者】
【氏名】李 ▲維▼▲東▼
(72)【発明者】
【氏名】董 杰
【審査官】和平 悠希
(56)【参考文献】
【文献】国際公開第2019/233179(WO,A1)
【文献】国際公開第2018/040941(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/00-12/66
H04L 41/00-101/695
(57)【特許請求の範囲】
【請求項1】
第1のネットワークデバイスによって、第1のパケットを第2のネットワークデバイスに送信するステップであって、前記第1のパケットは、第1のインジケーション情報を含み、前記第1のインジケーション情報は、前記第1のネットワークデバイス又は前記第1のネットワークデバイスに含まれる第1のサービスモジュールに対応する現場フロー情報テレメトリiFIT機能のサポート状態を示す、ステップ
を含む、機能通知方法。
【請求項2】
前記iFIT機能の前記サポート状態は、前記第1のネットワークデバイス又は前記第1のサービスモジュールがiFIT処理を行うことができる又はiFIT処理を行うことができないという状態を含む、
請求項1に記載の機能通知方法。
【請求項3】
前記iFIT機能は、経路トラッキング現場でのオペレーションと管理とメンテナンスの機能、エンドツーエンド現場でのオペレーションと管理とメンテナンスの機能、データダイレクトエクスポート現場でのオペレーションと管理とメンテナンスの機能、又は、拡張代替マーキング現場でのオペレーションと管理とメンテナンスの機能のうちの1つ以上を含む、
請求項に記載の機能通知方法。
【請求項4】
前記第1のパケットは、ボーダーゲートウェイプロトコルBGPパケットを含み、前記BGPパケットは、第1の属性を含み、前記第1のインジケーション情報は、前記第1の属性で搬送される、
請求項1~3のいずれか1項に記載の機能通知方法。
【請求項5】
前記第1の属性は、発信インターネットプロトコルIPアドレスをさらに搬送し、前記発信IPアドレスは、前記第1のネットワークデバイスのアドレスを含み、前記発信IPアドレスは、前記第1のパケットを送信するデバイスが前記第1のネットワークデバイスであることを示す、
請求項に記載の機能通知方法。
【請求項6】
前記第1のパケットは、BGPパケット又は内部ゲートウェイプロトコルIGPパケットを含む、
請求項1~3のいずれか1項に記載の機能通知方法。
【請求項7】
第1のネットワークデバイスによって、第1のパケットを第2のネットワークデバイスに送信する前記ステップの前に、前記方法は、
前記第1のネットワークデバイスによって、前記第1のネットワークデバイスの前記iFIT機能の変更に基づいて、前記第1のパケットを生成するステップをさらに含む、
請求項1~のいずれか1項に記載の機能通知方法。
【請求項8】
前記第1のインジケーション情報は、第1のタイプ長さ値TLVを含み、前記第1のTLVは、第1のフィールドを含み、
前記第1のフィールドは、1つ以上のビットを含み、前記第1のフィールド内の各ビットは、前記第1のネットワークデバイスが、経路トラッキング現場でのオペレーションと管理とメンテナンスの機能、エンドツーエンド現場でのオペレーションと管理とメンテナンスの機能、データダイレクトエクスポート現場でのオペレーションと管理とメンテナンスの機能、又は、拡張代替マーキング現場でのオペレーションと管理とメンテナンスの機能についての能力を有する又は能力を有しないことを示す、又は
前記第1のフィールドは、複数の値を含み、前記第1のフィールド内の各値は、前記第1のネットワークデバイスが、経路トラッキング現場でのオペレーションと管理とメンテナンスの機能、エンドツーエンド現場でのオペレーションと管理とメンテナンスの機能、データダイレクトエクスポート現場でのオペレーションと管理とメンテナンスの機能、又は、拡張代替マーキング現場でのオペレーションと管理とメンテナンスの機能のうちの1つ以上についての能力を有する又は能力を有しないことを示す、
請求項1~のいずれか1項に記載の機能通知方法。
【請求項9】
前記第1のネットワークデバイスによって、前記第1のパケットを送信する前記ステップの後に、前記方法は、
前記第1のパケットを送信する前記ステップに応答して、前記第1のネットワークデバイスによって、前記第2のネットワークデバイスによって送信されたデータパケットを受信するステップであって、前記データパケットは、iFIT測定ヘッダを含む、ステップと、
前記第1のネットワークデバイスによって、前記iFIT測定ヘッダに基づいて、iFIT測定を実行するステップと、
前記第1のネットワークデバイスによって、前記iFIT測定ヘッダを前記データパケットから取り除くステップと
をさらに含む、
請求項1~のいずれか1項に記載の機能通知方法。
【請求項10】
第2のネットワークデバイスによって、第1のネットワークデバイスによって送信された第1のパケットを受信するステップであって、前記第1のパケットは、第1のインジケーション情報を含み、前記第1のインジケーション情報は、前記第1のネットワークデバイス又は前記第1のネットワークデバイスに含まれる第1のサービスモジュールに対応する現場フロー情報テレメトリ(iFIT機能のサポート状態を示す、ステップと、
前記第2のネットワークデバイスによって、前記第1のパケットに基づいて、前記第1のネットワークデバイス又は前記第1のサービスモジュールに対応する前記iFIT機能の前記サポート状態を決定するステップと
を含む、機能通知方法。
【請求項11】
前記iFIT機能の前記サポート状態は、前記第1のネットワークデバイス又は前記第1のサービスモジュールがiFIT処理を行うことができる又はiFIT処理を行うことができないという状態を含む、
請求項10に記載の機能通知方法。
【請求項12】
前記iFIT機能は、経路トラッキング現場でのオペレーションと管理とメンテナンスの機能、エンドツーエンド現場でのオペレーションと管理とメンテナンスの機能、データダイレクトエクスポート現場でのオペレーションと管理とメンテナンスの機能、又は、拡張代替マーキング現場でのオペレーションと管理とメンテナンスの機能のうちの1つ以上を含む、
請求項11に記載の機能通知方法。
【請求項13】
前記第2のネットワークデバイスによって、前記第1のパケットに基づいて、前記第1のネットワークデバイス又は前記第1のサービスモジュールに対応する前記iFIT機能の前記サポート状態を決定する前記ステップの後に、前記方法は、
前記第2のネットワークデバイスによって、データパケットを取得するステップと、
前記第2のネットワークデバイスによって、前記第1のネットワークデバイス又は前記第1のサービスモジュールに対応する前記iFIT機能の前記サポート状態に基づいて、iFIT測定ヘッダを前記データパケットに埋め込むステップと、
前記第2のネットワークデバイスによって、前記第1のネットワークデバイスに、iFIT測定ヘッダが埋め込まれているデータパケットを送信するステップと
をさらに含む、
請求項10~12のいずれか1項に記載の機能通知方法。
【請求項14】
プロセッサと、通信インターフェースとを含むネットワークデバイスであって、前記プロセッサは、命令を実行するように構成され、それにより、前記ネットワークデバイスは、請求項1~13のいずれか1項に記載の方法を実行することができる、ネットワークデバイス。
【請求項15】
請求項1~のいずれか1項に記載の前記第1のネットワークデバイスと、請求項10~13のいずれか1項に記載の前記第2のネットワークデバイスとを含む、ネットワークシステム。
【請求項16】
コンピュータ可読記憶媒体であって、前記コンピュータ可読記憶媒体は、ソフトウェアプログラムを格納し、前記ソフトウェアプログラムは、1つ以上のプロセッサによって読み出されて実行され、請求項1~13のいずれか1項に記載の方法を実施する、コンピュータ可読記憶媒体。
【請求項17】
プログラムであって、前記プログラムが通信デバイスによって実行されるとき、前記通信デバイスは、請求項1~13のいずれか1項に記載の方法を実行することができる、プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
この出願は、2020年7月13日に中国国家知的産権局に提出され、「CAPABILITY NOTIFICATION METHOD AND RELATED DEVICE」と題された中国特許出願第202010672048.2号の優先権を主張し、その全体が参照によって本明細書に組み込まれる。
【0002】
この出願は、通信技術の分野に関し、特に、機能通知方法、及び関連デバイスに関する。
【背景技術】
【0003】
現場でのフロー情報テレメトリ(in-situ Flow Information Telemetry, iFIT)は、オペレーション、管理、及びメンテナンス(Operation, Administration, and Maintenance, OAM)の検出技術であり、実データパケットで搬送される測定情報に基づいて、ネットワークの実パケットロスレート及び遅延などの性能インジケータを直接的に取得することができる。
【0004】
通常、iFITが実行される測定領域は、ヘッドノードとテールノードとを含む。ヘッドノードは、カプセル化ノード(Encapsulate node, Encap node)と称されることもあり、テールノードは、カプセル除去ノード(Decapsulate node, Decap node)と称されることもある。任意選択で、測定領域は、中間ノードをさらに含む。パケットが測定領域に入った後、ヘッドノードは、測定ヘッダをパケットに埋め込み、そのパケットを中間ノードに転送する。中間ノードは、パケット内の測定ヘッダに基づいて測定及びデータ収集を実行してよく、又は、中間ノードは、透過的にパケットをテールノードに伝送する。パケットが測定領域を出る前に、テールノードは、中間ノードによって収集されたデータを報告し、測定ヘッダをパケットから取り除いて、元のパケットを復元する。測定ヘッダ埋め込みの有効範囲は、測定領域内である。測定ヘッダが埋め込まれているパケットが測定領域の外に拡散される場合、パケットは、識別されることができず、又は破棄されることさえできず、それによって、正常なサービスパケット転送に影響を及ぼす。
【0005】
現在、測定ヘッダを埋め込む前に、ヘッドノードは、テールノードがiFIT機能を有することを確認する必要がある。これには、通常、関連デバイス、例えば、テールノードの関連情報を手動で構成し、ヘッドノード上で、ヘッドノードが、関連デバイスのiFIT機能に基づいて測定ヘッダを埋め込むかどうかを決定することができることを保証するためにオペレーション及びメンテナンス員を要する。しかし、手動構成は、不十分であり、かつ複雑であり、それは、容易に正常なサービスパケット転送に影響を及ぼす。
【発明の概要】
【0006】
この出願は、手動で複雑なiFIT機能構成を構成することについての技術的課題を解決するための機能通知方法、及び関連デバイスを提供する。
【0007】
この出願の第1の態様は、機能通知方法を提供する。方法は、第1のネットワークデバイスが、第1のパケットを第2のネットワークデバイスに送信することであって、第1のパケットは、第1のインジケーション情報を含み、第1のインジケーション情報は、第1のネットワークデバイス又は第1のネットワークデバイスに含まれる第1のサービスモジュールに対応するiFIT機能のサポート状態を示す、ことを含む。
【0008】
この出願では、第1のネットワークデバイスが、パケットを第2のネットワークデバイスに送信して、第1のネットワークデバイスのiFIT機能のサポート状態を通知する。このようにして、第1のネットワークデバイスが測定ヘッダをサービスパケットから取り除くことができないためにサービスを正しく処理することができなくなることを防止するために、第2のネットワークデバイスは、第1のネットワークデバイスのiFIT機能に基づいて、測定ヘッダを埋め込むかどうかを決定することができる。
【0009】
任意選択で、可能な実装において、iFIT機能のサポート状態は、第1のネットワークデバイス又は第1のサービスモジュールがiFIT処理を行うことができる又はiFIT処理を行うことができないという状態を含む。
【0010】
この出願では、第1のネットワークデバイスが直接的に、パケットで、第1のネットワークデバイスがiFIT処理を行うことができること又はiFIT処理を行うことができないことを通知し、それにより、第2のネットワークデバイスは、第1のネットワークデバイスによってサポートされるiFIT機能タイプに基づいて、対応するiFIT測定を開始し、又は、第1のネットワークデバイスによってサポートされないiFIT機能に基づいて、対応するiFIT測定を開始せず、解決策のフレキシビリティを改善する。
【0011】
任意選択で、可能な実装において、iFIT機能は、現場での経路トラッキングのオペレーションと管理とメンテナンスの機能、現場でのエンドツーエンドのオペレーションと管理とメンテナンスの機能、現場でのデータダイレクトエクスポートのオペレーションと管理とメンテナンスの機能、又は、現場での拡張代替マーキングのオペレーションと管理とメンテナンスの機能のうちの1つ以上を含む。
【0012】
任意選択で、可能な実装において、第1のパケットは、ボーダーゲートウェイプロトコル(Border Gateway Protocol, BGP)パケットを含み、BGPパケットは、第1の属性を含み、第1のインジケーション情報は、第1の属性で搬送される。既存のBGPパケット内の属性は、iFIT機能を通知するために利用されるインジケーション情報を搬送するために拡張され、それにより、従来技術に対する修正を可能な限り低減することができ、解決策の実現可能性を改善することができる。
【0013】
任意選択で、可能な実装において、第1の属性は、ネクストホップ機能属性、拡張コミュニティ属性、又はネクストホップ経路属性を含む。
【0014】
任意選択で、可能な実装において、第1の属性は、ネクストホップ情報をさらに搬送し、ネクストホップ情報は、第1のネットワークデバイスのアドレスを含む。ネクストホップ情報は、第1の属性で搬送され、それにより、第2のネットワークデバイスは、第1の属性内のネクストホップ情報に基づいて、第1の属性で搬送されるiFIT機能に対応するネットワークデバイスを決定することができ、解決策の実現可能性が改善される。
【0015】
任意選択で、可能な実装において、第1の属性は、ネクストホップ経路属性を含み、第1のネットワークデバイスが、第1のパケットを第2のネットワークデバイスに送信する前に、方法は、第1のネットワークデバイスが、第3のネットワークデバイスによって送信された第2のパケットを受信することであって、第2のパケットは、第2のインジケーション情報を含み、第2のインジケーション情報は、第3のネットワークデバイスに対応するiFIT機能のサポート状態を示す、ことをさらに含み、第1のネットワークデバイスが、第1のパケットを第2のネットワークデバイスに送信することは、第1のネットワークデバイスが、第2のパケットに基づいて、第1のパケットを第2のネットワークデバイスに送信することであって、第1のパケットは、第2のインジケーション情報をさらに含む、ことを含む。パケットは、複数のネットワークデバイスに対応するiFIT機能のサポート状態を搬送し、それにより、パケットを受信する第2のネットワークデバイスは、同じパケットに基づいて、複数のネットワークデバイスに対応するiFIT機能を知ることができ、パケットオーバーヘッドを低減し、複数のネットワークデバイスのiFIT機能に基づいて、第2のネットワークデバイスが、iFIT測定を実行するテールノードをフレキシブルに選択できることを保証し、解決策のフレキシビリティを改善する。
【0016】
任意選択で、可能な実装において、第1の属性は、第3のネットワークデバイスのアドレスをさらに含む。第1の属性は、第3のネットワークデバイスのアドレスをさらに含み、それにより、第2のネットワークデバイスは、パケットで搬送されるiFIT機能に対応する各ネットワークデバイスを特定することができ、解決策の実現可能性を改善する。
【0017】
任意選択で、可能な実装において、第1の属性は、発信インターネットプロトコル(Internet Protocol, IP)アドレスをさらに搬送し、発信IPアドレスは、第1のネットワークデバイスのアドレスを含む。発信IPアドレスは、有効性チェックを強化するために利用されてよく、第1のネットワークデバイスのアドレスは、第1のパケットで搬送されるネクストホップが、実際に第1のパケットを送信する第1のネットワークデバイスであるかどうかをチェックするために示される。これにより、情報改ざんを防止し、技術的解決策の信頼性をさらに増加させる。
【0018】
任意選択で、可能な実装において、第1のパケットは、BGPパケット又は内部ゲートウェイプロトコル(Interior Gateway Protocol, IGP)パケットを含む。
【0019】
任意選択で、可能な実装において、第1のネットワークデバイスが、第1のパケットを第2のネットワークデバイスに送信する前に、方法は、第1のネットワークデバイスが、第1のネットワークデバイスのiFIT機能の変更に基づいて、第1のパケットを生成することをさらに含む。ネットワークデバイスのiFIT機能が変更されるとき、ネットワークデバイスは、ネットワークデバイスの変更されたiFIT機能を通知するためのパケットを生成するようにトリガされ、それにより、他のネットワークデバイスは、ネットワークデバイスに対応するiFIT機能を適時に知ることができ、他のネットワークデバイスが、測定ヘッダを埋め込むかどうかを正しく決定できることを保証し、正常なパケット転送を保証する。
【0020】
任意選択で、可能な実装において、第1のインジケーション情報は、第1のタイプ長さ値(Type Length Value, TLV)を含み、第1のTLVは、第1のフィールドを含む。第1のフィールドは、1つ以上のビットを含み、第1のフィールド内の各ビットは、第1のネットワークデバイスが、現場での経路トラッキングのオペレーションと管理とメンテナンスの機能、現場でのエンドツーエンドのオペレーションと管理とメンテナンスの機能、現場でのデータダイレクトエクスポートのオペレーションと管理とメンテナンスの機能、又は、現場での拡張代替マーキングのオペレーションと管理とメンテナンスの機能のうちの1つについての能力を有する又は能力を有しないことを示す。代替的に、第1のフィールドは、複数の値を含み、第1のフィールド内の各値は、第1のネットワークデバイスが、現場での経路トラッキングのオペレーションと管理とメンテナンスの機能、現場でのエンドツーエンドのオペレーションと管理とメンテナンスの機能、現場でのデータダイレクトエクスポートのオペレーションと管理とメンテナンスの機能、又は、現場での拡張代替マーキングのオペレーションと管理とメンテナンスの機能のうちの1つ以上についての能力を有する又は能力を有しないことを示す。パケットのフィールドは、iFIT機能のサポート状態を示すために複数のビット又は複数の値を含む。これにより、解決策実装のフレキシビリティを改善することができる。
【0021】
任意選択で、可能な実装において、第1のネットワークデバイスが、第1のパケットを送信した後に、方法は、第1のパケットを送信することに応答して、第1のネットワークデバイスが、第2のネットワークデバイスによって送信されたデータパケットを受信することであって、データパケットは、iFIT測定ヘッダを含む、ことと、第1のネットワークデバイスが、iFIT測定ヘッダに基づいて、iFIT測定を実行することと、第1のネットワークデバイスが、iFIT測定ヘッダをデータパケットから取り除くこととをさらに含む。
【0022】
この出願の第2の態様は、機能通知方法を提供する。方法は、第2のネットワークデバイスが、第1のネットワークデバイスによって送信された第1のパケットを受信することであって、第1のパケットは、第1のインジケーション情報を含み、第1のインジケーション情報は、第1のネットワークデバイス又は第1のネットワークデバイスに含まれる第1のサービスモジュールに対応するiFIT機能のサポート状態を示す、ことと、第2のネットワークデバイスが、第1のパケットに基づいて、第1のネットワークデバイス又は第1のサービスモジュールに対応するiFIT機能のサポート状態を決定することとを含む。
【0023】
任意選択で、可能な実装において、iFIT機能のサポート状態は、第1のネットワークデバイス又は第1のサービスモジュールがiFIT処理を行うことができる又はiFIT処理を行うことができないという状態を含む。
【0024】
任意選択で、可能な実装において、iFIT機能は、現場での経路トラッキングのオペレーションと管理とメンテナンスの機能、現場でのエンドツーエンドのオペレーションと管理とメンテナンスの機能、現場でのデータダイレクトエクスポートのオペレーションと管理とメンテナンスの機能、又は、現場での拡張代替マーキングのオペレーションと管理とメンテナンスの機能のうちの1つ以上を含む。
【0025】
任意選択で、可能な実装において、第2のネットワークデバイスが、第1のパケットに基づいて、第1のネットワークデバイス又は第1のサービスモジュールに対応するiFIT機能のサポート状態を決定した後に、方法は、第2のネットワークデバイスが、データパケットを受信することと、第2のネットワークデバイスが、第1のネットワークデバイス又は第1のサービスモジュールに対応するiFIT機能のサポート状態に基づいて、iFIT測定ヘッダをデータパケットに埋め込むことと、第2のネットワークデバイスが、第1のネットワークデバイスに、iFIT測定ヘッダが埋め込まれているデータパケットを送信することとをさらに含む。
【0026】
この出願の第3の態様は、第1のネットワークデバイスを提供する。第1のネットワークデバイスは、第1のパケットを送信することであって、第1のパケットは、第1のインジケーション情報を含み、第1のインジケーション情報は、第1のネットワークデバイス又は第1のネットワークデバイスに含まれる第1のサービスモジュールに対応する現場フロー情報テレメトリiFIT機能のサポート状態を示す、ことを行うように構成された送信ユニットを含む。
【0027】
任意選択で、可能な実装において、iFIT機能のサポート状態は、第1のネットワークデバイス又は第1のサービスモジュールがiFIT処理を行うことができる又はiFIT処理を行うことができないという状態を含む。
【0028】
任意選択で、可能な実装において、iFIT機能は、現場での経路トラッキングのオペレーションと管理とメンテナンスの機能、現場でのエンドツーエンドのオペレーションと管理とメンテナンスの機能、現場でのデータダイレクトエクスポートのオペレーションと管理とメンテナンスの機能、又は、現場での拡張代替マーキングのオペレーションと管理とメンテナンスの機能のうちの1つ以上を含む。
【0029】
任意選択で、可能な実装において、第1のパケットは、ボーダーゲートウェイプロトコルBGPパケットを含み、BGPパケットは、第1の属性を含み、第1のインジケーション情報は、第1の属性で搬送される。
【0030】
任意選択で、可能な実装において、第1の属性は、ネクストホップ機能属性、拡張コミュニティ属性、又はネクストホップ経路属性を含む。
【0031】
任意選択で、可能な実装において、第1の属性は、発信インターネットプロトコルIPアドレスをさらに搬送し、発信IPアドレスは、第1のネットワークデバイスのアドレスを含み、発信IPアドレスは、第1のパケットを送信するデバイスが第1のネットワークデバイスであることを示す。
【0032】
任意選択で、可能な実装において、第1のネットワークデバイスは、受信ユニットをさらに含み、第1の属性は、ネクストホップ経路属性を含み、受信ユニットは、第3のネットワークデバイスによって送信された第2のパケットを受信することであって、第2のパケットは、第2のインジケーション情報を含み、第2のインジケーション情報は、第3のネットワークデバイスに対応するiFIT機能のサポート状態を示す、ことを行うように構成され、送信ユニットは、第2のパケットに基づいて、第1のパケットを第2のネットワークデバイスに送信することであって、第1のパケットは、第2のインジケーション情報をさらに含む、ことを行うようにさらに構成される。
【0033】
任意選択で、可能な実装において、第2のインジケーション情報は、第3のネットワークデバイスのアドレスをさらに含む。
【0034】
任意選択で、可能な実装において、第1のパケットは、BGPパケット又は内部ゲートウェイプロトコルIGPパケットを含む。
【0035】
任意選択で、可能な実装において、第1のネットワークデバイスは、第1のネットワークデバイスのiFIT機能の変更に基づいて、第1のパケットを生成するように構成された処理ユニットをさらに含む。
【0036】
任意選択で、可能な実装において、第1のインジケーション情報は、第1のタイプ長さ値TLVを含み、第1のTLVは、第1のフィールドを含み、第1のフィールドは、1つ以上のビットを含み、第1のフィールド内の各ビットは、第1のネットワークデバイスが、現場での経路トラッキングのオペレーションと管理とメンテナンスの機能、現場でのエンドツーエンドのオペレーションと管理とメンテナンスの機能、現場でのデータダイレクトエクスポートのオペレーションと管理とメンテナンスの機能、又は、現場での拡張代替マーキングのオペレーションと管理とメンテナンスの機能のうちの1つについての能力を有する又は能力を有しないことを示す、又は第1のフィールドは、複数の値を含み、第1のフィールド内の各値は、第1のネットワークデバイスが、現場での経路トラッキングのオペレーションと管理とメンテナンスの機能、現場でのエンドツーエンドのオペレーションと管理とメンテナンスの機能、現場でのデータダイレクトエクスポートのオペレーションと管理とメンテナンスの機能、又は、現場での拡張代替マーキングのオペレーションと管理とメンテナンスの機能のうちの1つ以上についての能力を有する又は能力を有しないことを示す。
【0037】
任意選択で、可能な実装において、受信ユニットは、第1のパケットを送信することに応答して、第2のネットワークデバイスによって送信されたデータパケットを受信することであって、データパケットは、iFIT測定ヘッダを含む、ことを行うようにさらに構成され、処理ユニットは、iFIT測定ヘッダに基づいて、iFIT測定を実行し、iFIT測定ヘッダをデータパケットから取り除くようにさらに構成される。
【0038】
この出願の第4の態様は、第2のネットワークデバイスを提供する。第2のネットワークデバイスは、第1のネットワークデバイスによって送信された第1のパケットを受信することであって、第1のパケットは、第1のインジケーション情報を含み、第1のインジケーション情報は、第1のネットワークデバイス又は第1のネットワークデバイスに含まれる第1のサービスモジュールに対応するiFIT機能のサポート状態を示す、ことを行うように構成された受信ユニットと、第1のパケットに基づいて、第1のネットワークデバイス又は第1のサービスモジュールに対応するiFIT機能のサポート状態を決定するように構成された処理ユニットとを含む。
【0039】
任意選択で、可能な実装において、iFIT機能のサポート状態は、第1のネットワークデバイス又は第1のサービスモジュールがiFIT処理を行うことができる又はiFIT処理を行うことができないという状態を含む。
【0040】
任意選択で、可能な実装において、iFIT機能は、現場での経路トラッキングのオペレーションと管理とメンテナンスの機能、現場でのエンドツーエンドのオペレーションと管理とメンテナンスの機能、現場でのデータダイレクトエクスポートのオペレーションと管理とメンテナンスの機能、又は、現場での拡張代替マーキングのオペレーションと管理とメンテナンスの機能のうちの1つ以上を含む。
【0041】
任意選択で、可能な実装において、第2のネットワークデバイスは、送信ユニットをさらに含み、受信ユニットは、データパケットを取得するようにさらに構成され、処理ユニットは、第1のネットワークデバイス又は第1のサービスモジュールに対応するiFIT機能のサポート状態に基づいて、iFIT測定ヘッダをデータパケットに埋め込むようにさらに構成され、送信ユニットは、第1のネットワークデバイスに、iFIT測定ヘッダが埋め込まれているデータパケットを送信するようにさらに構成される。
【0042】
この出願の第5の態様は、ネットワークデバイスを提供する。ネットワークデバイスは、プロセッサと、通信インターフェースとを含む。プロセッサは、命令を実行するように構成され、それにより、ネットワークデバイスは、第1の態様又は第2の態様、及び第1の態様又は第2の態様の実装のいずれか1つによる方法を実行することが可能になる。
【0043】
この出願の第6の態様は、ネットワークシステムを提供する。ネットワークシステムは、第3の態様、及び第3の態様の実装のいずれか1つによる第1のネットワークデバイスと、第4の態様、及び第4の態様の実装のいずれか1つによる第2のネットワークデバイスとを含む。
【0044】
この出願の第7の態様は、コンピュータ記憶媒体を提供する。コンピュータ記憶媒体は、不揮発性であってよい。コンピュータ記憶媒体は、コンピュータ可読命令を格納している。コンピュータ可読命令がプロセッサによって実行されるとき、第1の態様又は第2の態様、及び第1の態様又は第2の態様の実装のいずれか1つによる方法が実装される。
【0045】
この出願の第8の態様は、命令を含むコンピュータプログラム製品を提供する。コンピュータプログラム製品がコンピュータ上で実行されるとき、コンピュータは、第1の態様又は第2の態様、及び第1の態様又は第2の態様の実装のいずれか1つによる方法を実行することが可能になる。
【0046】
この出願の第9の態様は、チップシステムを提供する。チップシステムは、上記の態様における機能を実施する、例えば、上記の方法におけるデータ及び/又は情報を送信又は処理するに際し、ネットワークデバイスをサポートするように構成されたプロセッサを含む。可能な設計において、チップシステムは、メモリをさらに含む。メモリは、ネットワークデバイスに必要なプログラム命令及びデータを格納するように構成される。チップシステムは、チップを含んでもよいし、チップと他のディスクリートデバイスとを含んでもよい。
【0047】
この出願の実施形態は、以下の利点を有することを上記の技術的解決策から理解することができる。この出願の実施形態は、機能通知方法、及び関連デバイスを提供する。第1のネットワークデバイスは、パケットを第2のネットワークデバイスに送信して、第1のネットワークデバイスのiFIT機能のサポート状態を通知する。このようにして、第2のネットワークデバイスは、第1のネットワークデバイスが測定ヘッダをサービスパケットから取り除くことができないためにサービスパケットを破棄することを防止するために、第1のネットワークデバイスのiFIT機能に基づいて、測定ヘッダを埋め込むかどうかを決定することができる。これにより、正常なサービスパケット転送を保証する。
【図面の簡単な説明】
【0048】
図1】この出願の実施形態による、機能通知方法100の模式的フローチャートである。
図2】この出願の実施形態による、パケット送信手順の模式図である。
図3A】この出願の実施形態による、ネクストホップ機能属性がiFIT機能を搬送するパケットフォーマットの模式図である。
図3B】この出願の実施形態による、機能値フィールドのパケットフォーマットの模式図である。
図4】この出願の実施形態による、ネクストホップ経路属性内のTLVのフォーマットの模式図である。
図5】この出願の実施形態による、ルート広告の模式図である。
図6】この出願の実施形態による、ロケータiFIT TLVのフォーマットの模式図である。
図7】この出願の実施形態による、iFIT測定方法700の模式的フローチャートである。
図8】この出願の実施形態による、ネットワークデバイス800の構造の模式図である。
図9】この出願の例示的な実施形態による、ネットワークデバイス900の構造の模式図である。
図10】この出願の例示的な実施形態による、ネットワークデバイス1000の構造の模式図である。
図11】この出願の例示的な実施形態による、ネットワークシステム1100の構造の模式図である。
【発明を実施するための形態】
【0049】
この出願のこの明細書、特許請求の範囲、及び添付図において、用語「第1の」、「第2の」、「第3の」、「第4の」など(ある場合)は、類似のオブジェクト間を区別することを意図しており、必ずしも特定の順序又は順番を示すものではない。そのような方法で名付けられたデータは、適切な環境において交換可能であり、従って、本明細書で説明される、この出願の実施形態を、本明細書で図示され又は説明される順序とは異なる順序で実施することができると理解すべきである。加えて、「含む」、「対応する」、及びそれらの任意の変形などの用語は、非排他的包含、例えば、一連のステップ又はユニットを含むプロセス、方法、システム、製品、又はデバイスをカバーすることが意図されており、これらの明示的に列挙されたステップ又はユニットに必ずしも限定されず、明示的に列挙されていない又はそのようなプロセス、方法、製品、又はデバイスに固有の他のステップ又はユニットを含むことがある。
【0050】
この出願の実施形態において、用語「例」、「例えば」などは、例、例示、又は説明を与えることを表すために利用される。この出願の実施形態において「例」又は「例えば」として説明される任意の実施形態又は設計スキームは、他の実施形態又は設計スキームより好適である又はより有利であると解釈されるべきではない。正確には、用語「例」、「例えば」などの利用は、特定の方式における関連概念を提供することを意図している。
【0051】
関連技術では、ヘッドノードがiFIT測定ヘッダをパケットに埋め込むとき、テールノードがiFIT機能を有しない場合、テールノードは、iFIT測定ヘッダをパケットから取り除くことができない。結果として、パケットを認識することができないためにパケットが破棄され、正常なパケット転送に影響を及ぼす。
【0052】
従って、測定ヘッダを埋め込む前に、ヘッドノードは、テールノードがiFIT機能を有することを確認する必要がある。これには、通常、ヘッドノード上でiFIT関連情報を手動で構成し、ヘッドノードが、測定ヘッダを埋め込む前に、関連デバイスのiFIT機能に基づいて、測定ヘッダを埋め込むかどうかを決定することができることを保証するためにオペレーション及びメンテナンス員を要する。しかし、手動構成は、不十分であり、かつ複雑である。
【0053】
例えば、ネットワークに、互いに接続されているネットワークデバイス1及びネットワークデバイス2が含まれ、ネットワークデバイス2は、外部ネットワークに接続されている。
【0054】
ネットワークデバイス1及びネットワークデバイス2は、それぞれiFIT測定領域のヘッドノード及びテールノードでありうる。ネットワークデバイス1が送信対象パケットを取得した後、ネットワークデバイス1は、iFIT測定ヘッダをパケットに埋め込み、ネットワークデバイス2に、iFIT測定ヘッダが埋め込まれているパケットを送信する。ネットワークデバイス2は、受信されたパケット内のiFIT測定ヘッダに基づいて、データ測定及び報告を実行し、iFIT測定ヘッダをパケットから取り除き、iFIT測定ヘッダが取り除かれたデータパケットを外部ネットワークに転送する。
【0055】
ネットワークデバイス1が測定ヘッダを埋め込む必要がある前に、ネットワークデバイス2がiFIT及びiFITをサポートする特定の機能をサポートしているかどうかを決定する必要がある。さもなければ、ネットワークデバイス2がiFIT又は対応する機能をサポートしていない場合、ネットワークデバイス1が測定ヘッダを埋め込んで、測定ヘッダをネットワークデバイス2に送信した後、ネットワークデバイス2が測定ヘッダの処理をサポートしないために、パケット処理又は送信においてエラーが発生しうる。この場合、ネットワークデバイス2によってサポートされるiFIT機能は、通常、ネットワークデバイス1上で、オペレーション及びメンテナンス員によって手動構成される。これは、複雑な構成及び低い構成効率などの課題をもたらす。
【0056】
さらに、ネットワークが変更された後、ネットワークデバイス2は、iFIT処理を行うことができるデバイスから、iFIT処理を行うことができないデバイスに変更される。ネットワークデバイス1上でのネットワークデバイス2の関連構成が、オペレーション及びメンテナンス員によって手動で構成されるため、ネットワークデバイス1は、ネットワークデバイス2上の変更に気づくことができない。このようにして、ネットワークデバイス1がパケットを受信した後、ネットワークデバイス1は、iFIT測定ヘッダをパケットに埋め込み続け、ネットワークデバイス2に、iFIT測定ヘッダが埋め込まれているパケットを転送する。しかし、ネットワークデバイス2がiFIT機能を有しないため、ネットワークデバイス2は、パケット内のiFIT測定ヘッダを認識することができず、結果として、そのパケットを外部ネットワークに直接転送する。外部ネットワークは、パケット内のiFIT測定ヘッダを認識することができず、結果として、パケットを破棄し、正常なパケット転送に影響を及ぼす。上記の課題に鑑み、この出願の実施形態は、機能通知方法、及び関連デバイスを提供する。第1のネットワークデバイスは、パケットを第2のネットワークデバイスに送信し、第1のネットワークデバイスのiFIT機能のサポート状態を通知する。このようにして、第2のネットワークデバイスは、第1のネットワークデバイスがパケット内の測定ヘッダを正しく処理することができないために正常なパケット転送に影響を及ぼすことを防止するために、第1のネットワークデバイスのiFIT機能に基づいて、測定ヘッダを埋め込むかどうかを決定することができる。
【0057】
図1は、この出願の実施形態による機能通知方法100の模式的フローチャートである。図1に示すように、この出願のこの実施形態において提供される機能通知方法100は、以下のステップを含む。
【0058】
ステップ101:第1のネットワークデバイスは、第1のパケットを第2のネットワークデバイスに送信し、第1のパケットは、第1のインジケーション情報を含み、第1のインジケーション情報は、第1のネットワークデバイス又は第1のネットワークデバイスに含まれる第1のサービスモジュールに対応する現場フロー情報テレメトリiFIT機能のサポート状態を示す。
【0059】
この実施形態において、第1のネットワークデバイス及び第2のネットワークデバイスは、例えば、ルータ、スイッチ、又はゲートウェイなどの物理デバイスであってもよいし、パケット転送をサポートする仮想デバイスであってもよい。第1のネットワークデバイス及び第2のネットワークデバイスの具体的なタイプについては、この実施形態において限定されない。第1のネットワークデバイスは、複数のサービスモジュールを含んでよい。第1のサービスモジュールは、第1のネットワークデバイス内にあり、かつパケット転送又はパケット処理を実行するように構成されうるサービスモジュール、例えば、VPN処理モジュールであってよい。第1のパケットは、例えば、ボーダーゲートウェイプロトコル(Border Gateway Protocol, BGP)パケット又は内部ゲートウェイプロトコル(Interior Gateway Protocol, IGP)パケットなどのパケットであってよい。例では、第1のパケットは、BGP更新パケット(update packet)であり、通知ルートに利用される。例えば、第1のネットワークデバイスは、第2のネットワークデバイスに、iFIT機能のサポート状態を搬送するBGP更新パケットについての通知ルートを広告し、ルートは、サービスルート(Service Route)、トンネルルート(Tunnel Route)、SRv6ロケータ(Locator)などのSRv6ルート、又は他のルートであってよく、第2のネットワークデバイスは、通常、パケットで搬送されるiFIT機能を受信して識別しうる。BGPパケットによって示されるアドレス範囲については、第2のネットワークデバイスが、Encapノードとして利用されてよく、第1のネットワークデバイスがDecapノードとして利用されてよい。
【0060】
可能な実装において、iFIT機能のサポート状態は、第1のネットワークデバイス又は第1のサービスモジュールがiFIT処理を行うことができるかどうかであってよい。
【0061】
例えば、第1のインジケーション情報は、ビットを含んでよく、そのビットの値は、「0」又は「1」であってよい。ビットの値が「0」であるとき、それは、第1のネットワークデバイス又は第1のサービスモジュールがiFIT処理を行うことができないことを示す。ビットの値が「1」であるとき、それは、第1のネットワークデバイス又は第1のサービスモジュールがiFIT処理を行うことができることを示す。
【0062】
例では、第1のネットワークデバイスが第1のパケットを第2のネットワークデバイスに送信する前に、第1のネットワークデバイスが、他のパケットを第2のネットワークデバイスに送信することによって、又は、事前に第2のネットワークデバイスと取り決めを行うことによって、サポートされる特定のiFIT機能(単数)又は特定のiFIT機能(複数)をさらに示しうる。
【0063】
他の可能な実装において、iFIT機能のサポート状態は、代替的に、第1のネットワークデバイス又は第1のサービスモジュールがiFIT処理を行うことができる又はiFIT処理を行うことができないという状態であってよい。
【0064】
例えば、iFIT機能は、現場での経路トラッキングのオペレーションと管理とメンテナンスの機能、現場でのエンドツーエンドのオペレーションと管理とメンテナンスの機能、現場でのデータダイレクトエクスポートのオペレーションと管理とメンテナンスの機能、又は、現場での拡張代替マーキングのオペレーションと管理とメンテナンスの機能のうちの1つ以上を含んでよい。即ち、第1のインジケーション情報は、第1のネットワークデバイス又は第1のサービスモジュールが、4つのタイプのiFIT機能のうちの1つ以上についての能力を有する及び/又は能力を有しないことを示しうる。
【0065】
任意選択で、可能な例において、現場での経路トラッキングのオペレーションと管理とメンテナンスの機能は、事前に割り当てられた、現場での経路トラッキングのオペレーションと管理とメンテナンスの機能、及び、増加する、現場での経路トラッキングのオペレーションと管理とメンテナンスの機能をさらに含みうる。具体的には、iFIT機能は、4つの機能のうちの1つ以上、即ち、現場での経路トラッキングのオペレーションと管理とメンテナンスの機能、現場でのエンドツーエンドのオペレーションと管理とメンテナンスの機能、現場でのデータダイレクトエクスポートのオペレーションと管理とメンテナンスの機能、又は、現場での拡張代替マーキングのオペレーションと管理とメンテナンスの機能を含みうる。代替的に、iFIT機能は、5つの機能、即ち、事前に割り当てられた、現場での経路トラッキングのオペレーションと管理とメンテナンスの機能、増加する、現場での経路トラッキングのオペレーションと管理とメンテナンスの機能、現場でのエンドツーエンドのオペレーションと管理とメンテナンスの機能、現場でのデータダイレクトエクスポートのオペレーションと管理とメンテナンスの機能、又は、現場での拡張代替マーキングのオペレーションと管理とメンテナンスの機能のうちの1つ以上を含みうる。説明を容易にするため、以下では、iFIT機能が4つのiFIT機能を含む例を利用する。
【0066】
可能な例において、第1のインジケーション情報は、第1のTLVを含んでよく、第1のTLVは、第1のフィールドを含み、第1のフィールドは、サポートされる及び/又はサポートされないiFIT機能を示す。言い換えると、第1のネットワークデバイスは、TLVを第1のパケットに追加し、TLV内のフィールドを利用して、第1のネットワークデバイスによってサポートされる及び/又はサポートされないiFIT機能を搬送しうる。
【0067】
可能な例において、第1のフィールドは、1つ以上のビットを含み、第1のフィールド内の各ビットは、第1のネットワークデバイスが、上記の4つのタイプのiFIT処理のうちの1つについての能力を有する又は能力を有しないことを示す。
【0068】
例えば、iFIT機能が上記の4つのiFIT機能を含むとき、第1のフィールドは、4つのビットを含む。4つのビットは、例えば、ビット「T」、ビット「E」、ビット「D」、及び「A」であり、それぞれ、現場での経路トラッキングのオペレーションと管理とメンテナンスの機能、現場でのエンドツーエンドのオペレーションと管理とメンテナンスの機能、現場でのデータダイレクトエクスポートのオペレーションと管理とメンテナンスの機能、又は、現場での拡張代替マーキングのオペレーションと管理とメンテナンスの機能に対応するサポート状態を示しうる。詳細については、表1を参照されたい。表1は、4つのビットを利用してiFIT機能が示される例である。
【0069】
【表1】
【0070】
上記の4つのiFIT機能のサポート状態が、4つのビットの異なる値を利用して効果的に示されうることが、表1から理解されうる。上記の説明は、第1のフィールドに含まれるビットの数量が4である例を利用して提供されることが理解されうる。実際のケースでは、代替的に、他の数量のビットが第1のフィールドに含まれることがありうる。例えば、第1のフィールドは、1つのビット、2つのビット、5つのビットなどを含みうる。第1のフィールドのビットの数量が4より小さいとき、第1のフィールドのビットの数量は、第1のフィールドによって示すことができるiFIT機能の数量に対応する。例えば、1つのビットのみを含む第1のフィールドは、上記の4つのiFIT機能のうちのいずれか1つのサポート状態のみを示しうる。第1のフィールドのビットの数量が4より大きいとき、上記の4つのiFIT機能を示すことに基づいて、特定のビットが、予約済ビットとして、その後の拡張利用を容易にするために、さらに予約されうる。
【0071】
他の例では、iFIT機能が上記の5つのiFIT機能を含むとき、第1のフィールドは、5つのビットを含みうる。5つのビットは、例えば、ビット「P」、ビット「I」、ビット「E」、ビット「D」、及びビット「A」であってよく、それぞれ、事前に割り当てられた、現場での経路トラッキングのオペレーションと管理とメンテナンスの機能、増加する、現場での経路トラッキングのオペレーションと管理とメンテナンスの機能、現場でのエンドツーエンドのオペレーションと管理とメンテナンスの機能、現場でのデータダイレクトエクスポートのオペレーションと管理とメンテナンスの機能、又は、現場での拡張代替マーキングのオペレーションと管理とメンテナンスの機能に対応するサポート状態を示しうる。
【0072】
他の可能な例では、第1のフィールドは、複数の値を含み、第1のフィールド内の各値は、第1のネットワークデバイスが、上記の4つのタイプのiFIT処理のうちの1つ以上についての能力を有する又は能力を有しないことを示す。
【0073】
例えば、第1のフィールドは、4つのビットを含み、4つのビットは、「0000」から「1111」など、16個の異なる値を示しうる、即ち、第1のフィールドは、15個の値を含みうる。このようにして、4つのビットの異なる値は、4つのiFIT機能のうちのいずれか1つ又は任意の組み合わせを示しうる。例えば、「0000」は、上記の4つのiFIT機能がサポートされないことを示す。「0001」から「0100」は、それぞれ、上記の4つのiFIT機能のうちのいずれか1つがサポートされ、かつ上記の4つのiFIT機能のうちの他の3つがサポートされないことを示す。「0101」から「1010」は、それぞれ、上記の4つのiFIT機能のうちのいずれか2つがサポートされ、かつ上記の4つのiFIT機能のうちの他の2つがサポートされないことを示す。「1011」から「1110」は、それぞれ、上記の4つのiFIT機能のうちのいずれか3つがサポートされ、かつ上記の4つのiFIT機能のうちの他の1つがサポートされないことを示す。「1111」は、上記の4つの機能がサポートされることを示す。
【0074】
第1のフィールドに含まれる値の数量は、代替的に、実際の状態に基づいて決定されうることが理解されうる。例えば、第1のフィールドは、4つの値を含んでよく、4つの値のそれぞれは、上記の4つのiFIT機能のうちの1つがサポートされることを示す。どのようにして第1のフィールドが、異なる値を利用してiFIT機能のサポート状態を示すかについて、この実施形態は限定されない。
【0075】
この実施形態において、第1のネットワークデバイスが第1のパケットを第2のネットワークデバイスに送信するようにトリガされる複数のケースがありうる。
【0076】
ケース1:第1のネットワークデバイスのiFIT機能が変更される。
【0077】
例えば、第1のネットワークデバイスが、iFIT機能を変更する指示を取得するとき、第1のネットワークデバイスは、第1のネットワークデバイスのiFIT機能が変更されると決定しうる。第1のネットワークデバイスは、変更されたiFIT機能に基づいて、第1のパケットを生成し、第1のパケットを第2のネットワークデバイスに送信し、第2のネットワークデバイスに、変更されたiFIT機能のサポート状態を通知しうる。例えば、iFIT機能を変更する指示は、オペレーション及びメンテナンス員によって、コマンドラインを入力することによって、第1のネットワークデバイスに配送されうる。
【0078】
ケース2:第1のネットワークデバイスは、ネットワーク内に新たに配置されるデバイスである。
【0079】
例えば、第1のネットワークデバイスは、ネットワーク展開プロセスにおいて(例えば、ネットワーク展開の初期段階において)、ネットワーク内に直接的に配置されるデバイスであってよい。代替的に、第1のネットワークデバイスは、ネットワークメンテナンスプロセスにおいて、ネットワークデバイス内の元のデバイスを置き換えることによって、ネットワーク内に新たに配置されるデバイスであってよい。このようにして、新たに配置された第1のネットワークデバイスが電源オンされて開始された後、第1のネットワークデバイスは、自動的に、第1のパケットを第2のネットワークデバイスに送信することをトリガして、第2のネットワークデバイスに、第1のネットワークデバイスのiFIT機能のサポート状態を通知しうる。
【0080】
上記のケースに加え、第1のネットワークデバイスは、代替的に、他のケースにおいて、第1のパケットを第2のネットワークデバイスに送信するようにトリガされうることが理解されうる。例えば、第1のネットワークデバイスが周期的に第1のパケットを第2のネットワークデバイスに送信することをトリガするために、周期性が設定されうる。第1のネットワークデバイスが、第1のパケットを第2のネットワークデバイスに送信するようにトリガされるケースは、この出願のこの実施形態において特に限定されない。
【0081】
ステップ102:第2のネットワークデバイスは、第1のパケットに基づいて、第1のネットワークデバイス又は第1のサービスモジュールに対応するiFIT機能のサポート状態を決定する。
【0082】
第1のネットワークデバイスによって送信される第1のパケットで搬送される第1のインジケーション情報に対応して、第2のネットワークデバイスは、第1のインジケーション情報に基づいて、第1のネットワークデバイス又は第1のサービスモジュールに対応するiFIT機能のサポート状態を決定する。
【0083】
この実施形態では、第1のネットワークデバイス又は第1のサービスモジュールに対応するiFIT機能のサポート状態を決定した後、第2のネットワークデバイスが、測定ヘッダをデータパケットに埋め込むことができるかどうかを決定しうる。例えば、第2のネットワークデバイスが、第1のネットワークデバイスが現場での経路トラッキングのオペレーションと管理とメンテナンスの機能についての能力を有すると決定した後、第2のネットワークデバイスは、測定ヘッダをデータパケットに埋め込み、第1のネットワークデバイスに、測定ヘッダが埋め込まれているデータパケットを送信してよく、ここで、データパケット内の測定ヘッダは、第1のネットワークデバイスに、現場での経路トラッキングのオペレーションと管理とメンテナンスを実行することを示す。他の例では、第2のネットワークデバイスが、第1のネットワークデバイスが現場での経路トラッキングのオペレーションと管理とメンテナンスの機能についての能力を有しないと決定した後、第2のネットワークデバイスは、第1のネットワークデバイスに、測定ヘッダが埋め込まれていないデータパケットを直接的に転送する。
【0084】
この実施形態において、第1のネットワークデバイスは、パケットを第2のネットワークデバイスに送信し、第1のネットワークデバイスのiFIT機能のサポート状態を通知する。このようにして、第2のネットワークデバイスは、第1のネットワークデバイスのiFIT機能に基づいて、測定ヘッダを埋め込むかどうかを決定して、第1のネットワークデバイスがパケット内の測定ヘッダを正しく処理することができないために正常なパケット転送に影響が及ぶことを防止することができる。
【0085】
上記では、第1のネットワークデバイスが第2のネットワークデバイスに、第1のネットワークデバイスのiFIT機能のサポート状態を通知するプロセスについて説明している。以下では、どのようにして第1のネットワークデバイスが、第1のパケットを利用して、第1のネットワークデバイスのiFIT機能のサポート状態を通知するかについて詳細に説明する。
【0086】
可能な実施形態において、第1のパケットは、BGPパケットを含んでよく、BGPパケットは、例えば、BGP更新パケットであってよい。BGPパケットは、第1の属性を含み、第1のインジケーション情報は、第1の属性で搬送される。例えば、第1の属性は、ネクストホップ機能属性、拡張コミュニティ属性、又はネクストホップ経路属性を含みうる。TLVが、新たに第1の属性に追加され、それにより、第1のネットワークデバイス又は第1のサービスモジュールに対応するiFIT機能のサポート状態が搬送されうる。
【0087】
上記の第1の属性に加え、第1のネットワークデバイスによって第2のネットワークデバイスに送信されたBGPパケットは、ネクストホップをさらに含み、BGPパケット内のネクストホップは、第1のネットワークデバイスのアドレスであると理解されうる。このようにして、第2のネットワークデバイスが、第1のネットワークデバイスによって送信されたBGPパケットを受信した後、第2のネットワークデバイスは、BGPパケット内のネクストホップが第1のネットワークデバイスであることに基づいて、第1の属性内の第1のインジケーション情報によって示されるデバイスが第1のネットワークデバイスであると決定しうる、即ち、第1のネットワークデバイスのiFIT機能が、第1の属性で搬送されるiFIT機能であると決定しうる。
【0088】
可能な例において、第1の属性は、発信IPアドレスをさらに搬送してよく、発信IPアドレスは、第1のネットワークデバイスのアドレスを含む。発信IPアドレスは、強化された有効性チェックに利用されてよく、第1のパケットで搬送されるネクストホップが、第1のパケットを実際に送信する第1のネットワークデバイスであるかどうかをチェックするために、第1のネットワークデバイスのアドレス(即ち、第1のパケットを送信する発信ネットワークデバイスのアドレス)が示される。任意選択で、発信IPアドレスは、ネクストホップ情報と称されることもあり、即ち、第1の属性は、ネクストホップ情報を搬送してよく、ネクストホップ情報は、第1のネットワークデバイスのアドレスを含む。
【0089】
いくつかのケースにおいて、第1のネットワークデバイス及び第2のネットワークデバイスは、直接的に接続されなくてよく、即ち、他のデバイスが、第1のネットワークデバイスと第2のネットワークデバイスとの間にさらに接続されてよいことが理解されうる。例えば、ルートリフレクタが、第1のネットワークデバイスと第2のネットワークデバイスとの間にさらに接続される。この場合、第1のネットワークデバイスが、第1のパケットをルートリフレクタに送信し、次いで、ルートリフレクタが、第1のパケットを第2のネットワークデバイスに転送する。ルートリフレクタが第1のパケットを転送するプロセスにおいて、ルートリフレクタは、第1のパケット内のネクストホップを、ルートリフレクタのアドレスに修正しうる(即ち、第1のネットワークデバイスからルートリフレクタにネクストホップを修正しうる)。結果として、第2のネットワークデバイスは、第1のパケット内のネクストホップに基づいて、第1の属性で搬送されるiFIT機能に対応するデバイスを決定することができない。
【0090】
例えば、図2は、この出願の実施形態による、パケット送信手順の模式図である。図2に示すように、ステップ201において、第1のネットワークデバイスは、第1のパケットをルートリフレクタに送信し、ここで、第1のパケット内のネクストホップは、第1のネットワークデバイスのアドレスである。第1のパケットは、第1のネットワークデバイスのiFIT機能を搬送するために利用される第1の属性を含み、第1の属性は、ネクストホップ情報を含み、ネクストホップ情報は、また、第1のネットワークデバイスのアドレスである。ステップ202において、ルートリフレクタは、第1のパケット内のネクストホップを、ルートリフレクタのアドレスに修正するが、第1のパケット内の第1の属性を修正しない。ステップ203において、ルートリフレクタは、第2のネットワークデバイスに、ネクストホップが修正されている第1のパケットを送信する。ステップ204において、第2のネットワークデバイスは、第1の属性内のネクストホップ情報に基づいて、iFIT処理を行うことができるデバイスが、第1のパケット内のネクストホップで示されるルートリフレクタではなく、第1のネットワークデバイスであることを決定する。
【0091】
言い換えると、ネクストホップ情報は、第1のパケット内の第1の属性で搬送され、それにより、第1のネットワークデバイスと第2のネットワークデバイスとの間の他のネットワークデバイスがあるとき、第2のネットワークデバイスが、第1の属性で搬送されるiFIT機能に対応するネットワークデバイスを決定できることを保証することができる。
【0092】
可能な例において、第1の属性は、ネクストホップ経路属性を含み、ネクストホップ経路属性は、複数のネットワークデバイスに対応するiFIT機能のサポート状態を搬送しうる。
【0093】
例えば、第1のネットワークデバイスが第1のパケットを第2のネットワークデバイスに送信することの前に、方法は、第1のネットワークデバイスが、第3のネットワークデバイスによって送信された第2のパケットを受信することであって、第2のパケットは、第2のインジケーション情報を含み、第2のインジケーション情報は、第3のネットワークデバイスに対応するiFIT機能のサポート状態を示す、ことと、第1のネットワークデバイスが、第2のパケット内の第2のインジケーション情報に基づいて、第1のパケットを第2のネットワークデバイスに送信することであって、第1のパケットは、第2のインジケーション情報をさらに含む、こととをさらに含みうる。
【0094】
言い換えると、第1のネットワークデバイスによって送信される第1のパケットは、第1のネットワークデバイス及び第3のネットワークデバイスに対応するiFIT機能のサポート状態をそれぞれ示す第1のインジケーション情報及び第2のインジケーション情報を含む。このようにして、第2のネットワークデバイスが第1のパケットを受信した後、第2のネットワークデバイスは、第1のパケットに基づいて、第1のネットワークデバイス及び第3のネットワークデバイスに対応するiFIT機能のサポート状態を知りうる、即ち、第2のネットワークデバイスは、同じパケットに基づいて、複数のネットワークデバイスに対応するiFIT機能のサポート状態を知りうる。
【0095】
第1のインジケーション情報及び第2のインジケーション情報は、ネクストホップ経路属性で搬送されうる。例えば、ネクストホップ経路属性は、iFIT機能を示す複数のTLVを含んでよく、複数のTLVはそれぞれ、異なるネットワークデバイスに対応するiFIT機能を搬送してよい。
【0096】
可能な例において、ネクストホップ経路属性は、第1のネットワークデバイス及び第3のネットワークデバイスのアドレスをさらに含んでよく、それにより、第2のネットワークデバイスは、ネクストホップ経路属性で示されるiFIT機能に対応するネットワークデバイスを決定することができる。例えば、ネクストホップ経路属性は、TLV1とTLV2とを含み、TLV1は、第1のネットワークデバイスのアドレスと、対応するiFIT機能のサポート状態とを含み、TLV2は、第3のネットワークデバイスのアドレスと、対応するiFIT機能のサポート状態とを含む。このようにして、第2のネットワークデバイスは、TLV内のネットワークデバイスのアドレスに基づいて、各ネットワークデバイスに対応するiFIT機能のサポート状態を決定しうる。
【0097】
理解を容易にするため、以下では、具体的な例を参照して、第1のネットワークデバイスが、パケット内の属性を利用して第1のネットワークデバイスのiFIT機能のサポート状態を通知する具体的な実装について説明する。
【0098】
例1:BGPパケット内のネクストホップ機能属性が、iFIT機能のサポート状態を搬送する。
【0099】
例えば、図3Aは、この出願の実施形態による、ネクストホップ機能属性がiFIT機能を搬送するパケットフォーマット、即ち、第1のインジケーション情報の模式図である。図3Aに示すように、ネクストホップ機能属性は、機能コード(Capability Code)と、機能長(Capability Length)と、機能値(Capability Value)とを含んでよい。機能コードは、ネクストホップ機能属性がiFIT機能を搬送することを示しうる。機能長は、機能値の長さを示しうる。機能値は、iFIT機能を搬送するために利用されうる。例えば、図3Bは、この出願の実施形態による、機能値フィールドのパケットフォーマットの模式図である。図3Bに示すように、機能値は、iFIT機能(iFIT Capability)を含みうる。任意選択で、機能値は、発信IPアドレス(Originating IP Address)をさらに含みうる。iFIT機能は、iFIT機能がサポートされる及び/又はサポートされないことを示すために、複数のビット又は複数の値を含んでよい。詳細については、ステップ101を参照されたい。詳細については、ここでは再び説明されない。発信IPアドレスは、有効性チェックを強化するために、第1のネットワークデバイスのIPv4アドレス又はIPv6アドレスを示してよい。
【0100】
例2:BGPパケット内の拡張コミュニティ属性がiFIT機能を搬送する。
【0101】
例えば、BGPパケット内のインターネットプロトコルバージョン4(Internet Protocol version 4, IPv4)拡張コミュニティ属性の可能なフォーマットは、表2に示されうる。
【0102】
【表2】
【0103】
タイプ1及びサブタイプ1は、IPv4拡張コミュニティ属性がiFIT機能を搬送するために利用されることを示しうる。iFIT機能(iFIT Capability)は、iFIT機能のサポート状態を搬送するために利用される。iFIT機能は、上記の機能値と同様であり、詳細については、ここでは再び説明されない。任意選択で、IPv4拡張コミュニティ属性は、発信IPv4アドレス(Originating IPv4 Address)をさらに含んでよく、発信IPv4アドレスは、パケットを送信するネットワークデバイスの発信IPアドレス、即ち、第1のネットワークデバイスのIPv4アドレスを搬送するために利用されうる。
【0104】
BGPパケット内のIPv6拡張コミュニティ属性の可能なフォーマットは、表3に示されうる。
【0105】
【表3】
【0106】
同様に、タイプ2及びサブタイプ2は、IPv6拡張コミュニティ属性がiFIT機能を搬送するために利用されることを示しうる。任意選択で、IPv6拡張コミュニティ属性は、ネクストホップIPv6をさらに含んでよく、ネクストホップIPv6は、IPv6ネクストホップ情報を搬送するために利用されてよい。
【0107】
例3:BGPパケット内のネクストホップ経路属性が、iFIT機能を搬送する。
【0108】
例えば、図4は、この出願の実施形態による、ネクストホップ経路属性内のTLVのフォーマットの模式図である。図4に示すように、TLVは、タイプ(Type)、長さ(Length)、及び値(value)を含む。TLV内の値部分は、予約済(Reserved)ビット、発信IPアドレス(Originating IP Address)、及びiFIT機能を含みうる。TLVは、ネットワークデバイスに対応するiFIT機能のサポート状態を示しうる。TLVにおいて、「タイプ」は、TLVのタイプを示し、「長さ」は、TLVの長さ情報を示し、「予約済」は、拡張利用のために利用され、「発信IPアドレス」は、TLVを送信するネットワークデバイスのIPアドレスを示し、「iFIT機能」は、iFIT機能を搬送するために利用される。
【0109】
可能な例では、BGPパケットを利用してルートを広告するプロセスにおいて、ネットワークデバイスが、対応するiFIT機能のサポート状態を示すために、BGPパケット内のネクストホップ経路属性内に上記のTLVを含みうる。BGPパケットをホップバイホップで転送するプロセスにおいて、BGPパケットの転送を担当する他のネットワークデバイスが、新たにTLVをBGPパケット内のネクストホップ経路属性に追加して、対応するiFIT機能のサポート状態を搬送することがある。言い換えると、BGPパケット内のネクストホップ経路属性は、ルート広告シーケンスにおいて複数のTLVを搬送して、異なるネットワークデバイスに対応するiFIT機能のサポート状態を示すことがある。
【0110】
例えば、図5は、この出願の実施形態による、ルート広告の模式図である。図5に示すように、プロバイダエッジルータ(Provider Edge, PE)2は、BGPパケットを利用してルートを広告し、ルートは、エリア境界ルータ(Area Border Router, ABR)-c2、ABR-b2、ABR-b1、ABR-a1を順に通過して、最終的にPE1に至る。BGPパケットをホップバイホップで転送するプロセスにおいて、経路に沿った各ABRは、図4に示したTLVを利用して、ABRに対応するiFIT機能をBGPパケット内のネクストホップ経路属性に追加する。最終的に、PE1は、BGPパケット広告経路内の各デバイスによってサポートされるiFIT機能情報を取得しうる。可能な例において、PE1によって取得されるiFIT機能情報は、表4に示されうる。
【0111】
【表4】
【0112】
経路に沿ってBGPパケットを送信する各ネットワークデバイスが順に、IPアドレスと、ネットワークデバイスのiFIT機能とをBGPパケット内のネクストホップ経路属性に追加することが、表4から理解することができる。このようにして、PE1は、取得されるiFIT機能情報に基づいて、iFIT測定を開始するためのテールノードとして利用される特定のネットワークデバイスを決定しうる。加えて、PE1は、BGPパケット内のiFIT機能の追加シーケンスに基づいて、BGPパケットの送信シーケンスを決定しうる。例えば、PE1は、iFIT機能の追加シーケンスに基づいて、BGPパケットで元来搬送されているIPアドレスが、BGPパケットを元来広告しているネットワークデバイスの発信IPアドレスであることを決定しうる、即ち、10.1.8.1が、BGPパケットを元来広告しているネットワークデバイスの発信IPアドレスであることを決定しうる。
【0113】
例えば、PE1は、表4に示したiFIT機能情報に基づいて、ABR-a1のiFIT機能がT=1、E=0、D=0、A=0である、即ち、ABR-a1が、現場での経路トラッキングのオペレーションと管理とメンテナンスの機能のみについての能力を有する、ことを決定する。従って、PE1は、PE1をヘッドノードとして利用し、ABR-a1をテールノードとして利用して、現場での経路トラッキングのオペレーションと管理とメンテナンスを開始しうる。
【0114】
他の例について、PE1は、表4に示したiFIT機能情報に基づいて、PE2のiFIT機能がT=1、E=1、D=0、A=0である、即ち、PE2が、現場での経路トラッキングのオペレーションと管理とメンテナンスの機能及び現場でのエンドツーエンドのオペレーションと管理とメンテナンスの機能の両方についての能力を有する、ことを決定する。従って、PE1は、PE1をヘッドノードとして利用し、PE2をテールノードとして利用して、現場での経路トラッキングのオペレーションと管理とメンテナンス又は現場でのエンドツーエンドのオペレーションと管理とメンテナンスを開始しうる。
【0115】
例4:この例では、iFIT機能のサポート状態を第1のネットワークデバイスのサービスモジュールによって通知する例について説明する。例において、サービスモジュールは、SRモジュール、トンネルモジュール、又は、iFIT機能を通知する必要がある他のサービスモジュールであってよい。これは、この出願において特に限定されない。この解決策は、セグメントルーティング(Segment Routing, SR)をサポートするネットワークに適用される。上記の第1のパケットは、BGPパケットであり、セグメントルーティングインターネットプロトコルバージョン6(Segment Routing IPv6, SRv6)仮想プライベートネットワーク(virtual private network, VPN)情報を搬送して、iFIT機能を通知しうる。
【0116】
例えば、TLV、例えば、ロケータiFIT TLVが、新たにBGPパケットに追加され、それにより、iFIT機能が搬送されうる。図6は、この出願の実施形態による、ロケータiFIT TLVのフォーマットの模式図である。図6に示すように、ロケータiFIT TLVは、複数のフィールドを含み、それぞれロケータプレフィックス(Locator-Prefix)、ロケータマスク(Locator-Mask)、及びiFIT機能である。ロケータプレフィックスの長さは、128ビットであり、ロケータマスクの値は、1~128の範囲である。ロケータプレフィックス及びロケータマスクに基づいて、例えば、ロケータプレフィックスとロケータマスクとについて「AND」演算が実行された後、ロケータの値が取得されてよく、その値は、IPv6アドレスネットワークセグメントである。SRネットワークでは、この形式で、ヘッドノードが、アドレスネットワークセグメントを利用してトラフィックを監視して、エンドツーエンドの総トラフィック性能の検出を実施しうる。上記の説明では、第1のネットワークデバイスが、第1のネットワークデバイスのサポートモジュールを利用してiFIT機能のサポート状態を通知するとき、第2のネットワークデバイスは、対応するサービスモジュールのみについてiFIT検出を実行しうる。これにより、テールノードが過大なiFITパケットを受信すること及び攻撃されることを防止する。
【0117】
上記では、第1のネットワークデバイスが、パケット内の属性を利用して、第1のネットワークデバイスのiFIT機能のサポート状態を通知するプロセスについて説明している。以下では、第1のネットワークデバイスが、第2のネットワークデバイスに、第1のネットワークデバイスによってサポートされるiFIT機能を通知した後に、第2のネットワークデバイスがiFIT測定を開始するプロセスについて説明する。
【0118】
図7は、この出願の実施形態による、iFIT測定方法700の模式的フローチャートである。図7に示すように、図1に示した機能通知方法に基づいて、この出願のこの実施形態は、iFIT測定方法700をさらに提供する。iFIT測定方法は、以下のステップを含む。
【0119】
ステップ701:第2のネットワークデバイスがデータパケットを取得する。
【0120】
データパケットは、第2のネットワークデバイスがデータパケットを受信した後に転送されるパケットであってよく、データパケットを正しく宛先に転送することができることを保証するために、第2のネットワークデバイスは、データパケットを第1のネットワークデバイスに転送する必要がある。
【0121】
ステップ702:第2のネットワークデバイスは、第1のネットワークデバイス又は第1のサービスモジュールに対応するiFIT機能のサポート状態に基づいて、iFIT測定ヘッダをデータパケットに埋め込む。
【0122】
この実施形態において、第1のネットワークデバイス又は第1のサービスモジュールは、サポートされるiFIT機能(例えば、上記の4つのiFIT機能のうちの1つ以上)を有し、対応するiFIT測定を開始するために、第2のネットワークデバイスは、第1のネットワークデバイス又は第1のサービスモジュールによってサポートされるiFIT機能に基づいて、対応するiFIT測定ヘッダをデータパケットに埋め込む。
【0123】
第2のネットワークデバイスは、第2のネットワークデバイスをヘッドノードとして、第1のネットワークデバイスをテールノードとして利用しうる。例えば、第2のネットワークデバイスは、第1のネットワークデバイスの識別子をデータパケットに埋め込み、それにより、第1のネットワークデバイスは、第1のネットワークデバイスがテールノードであると決定することができる。
【0124】
ステップ703:第2のネットワークデバイスは、第1のネットワークデバイスに、iFIT測定ヘッダが埋め込まれているデータパケットを送信する。
【0125】
ステップ704:第1のネットワークデバイスは、iFIT測定ヘッダに基づいて、iFIT測定を実行する。
【0126】
ステップ705:第1のネットワークデバイスは、データパケットからiFIT測定ヘッダを取り除く。
【0127】
この実施形態において、第1のネットワークデバイスが、iFIT測定ヘッダが埋め込まれているデータパケットを受信した後、第1のネットワークデバイスは、データパケットに埋め込まれているiFIT測定ヘッダを認識し、そのiFIT測定ヘッダに基づいて、データ測定及び報告を実行しうる。加えて、第1のネットワークデバイスは、第1のネットワークデバイスがiFIT測定のためのテールノードであることを認識しうる。従って、データパケットからiFIT測定ヘッダを取り除いた後、第1のネットワークデバイスは、iFIT測定ヘッダが取り除かれたデータパケットを転送し続ける。
【0128】
この出願の実施形態における方法100及び方法700については上で説明されている。この出願の実施形態におけるネットワークデバイスについては以下で説明される。以下で説明されるネットワークデバイスは、方法100又は方法700における第1のネットワークデバイス又は第2のネットワークデバイスの任意の機能を有する。
【0129】
図8は、この出願の実施形態による、ネットワークデバイス800の構造の模式図である。図8に示すように、ネットワークデバイス800は、ステップ101又は703を実行するように構成された送信ユニット801と、ステップ102、702、704、又は705を実行するように構成された処理ユニット802と、ステップ701を実行するように構成された受信ユニット803とを含む。
【0130】
ネットワークデバイス800は、上記の方法実施形態における第1のネットワークデバイスに対応する。ネットワークデバイス800内のユニット及び上記の他の動作及び/又は機能はそれぞれ、方法実施形態における第1のネットワークデバイスによって実行される様々なステップ及び方法を実装するために利用される。具体的な詳細については、方法100又は方法700を参照されたい。簡潔のために、詳細については、ここでは再び説明されない。
【0131】
ネットワークデバイス800がパケットを処理するとき、上記の機能モジュールへの分割が説明のための例として利用される。実際の適用の際には、上記の機能は、必要に応じて、異なる機能モジュールに割り当てられてよく、即ち、ネットワークデバイス800の内部構造は、上述した機能の全部又は一部を実装するために異なる機能モジュールに分割される。加えて、上記の実施形態において提供されるネットワークデバイス800は、図1又は図7に対応する実施形態における方法と同じコンセプトに属する。ネットワークデバイス800の具体的な実装プロセスについては、方法100又は方法700を参照されたい。詳細については、ここでは再び説明されない。
【0132】
この出願において提供される方法実施形態及び仮想的な装置実施形態に対応して、この出願の実施形態は、ネットワークデバイスをさらに提供する。以下では、ネットワークデバイスのハードウェア構造について説明する。
【0133】
以下で説明するネットワークデバイス900又はネットワークデバイス1000は、上記の方法実施形態における第1のネットワークデバイス又は第2のネットワークデバイスに対応し、ネットワークデバイス900又はネットワークデバイス1000におけるハードウェア及びモジュールと、上記の他の動作及び/又は機能はそれぞれ、方法実施形態における第1のネットワークデバイス又は第2のネットワークデバイスによって実行される様々なステップ及び方法を実装するために利用される。どのようにネットワークデバイス900又はネットワークデバイス1000が機能通知を実行するかの詳細な手順について、具体的な詳細については、上記の方法実施形態を参照されたい。簡潔のために、詳細については、ここでは再び説明されない。方法100又は方法700のステップは、ネットワークデバイス900又はネットワークデバイス1000のプロセッサのハードウェアの集積論理回路又はソフトウェア形態の命令を利用して完備される。この出願の実施形態に関連して開示される方法のステップは、ハードウェアプロセッサによって直接的に実行されてもよいし、プロセッサにおけるハードウェアとソフトウェアモジュールとの組み合わせによって実行されてもよい。ソフトウェアモジュールは、ランダムアクセスメモリ、フラッシュメモリ、リードオンリーメモリ、プログラマブルリードオンリーメモリ、電気的消去可能なプログラマブルメモリ、又はレジスタなどの当該分野で成熟した記憶媒体に配置されてよい。記憶媒体は、メモリ内に配置され、プロセッサは、メモリ内の情報を読み出し、プロセッサのハードウェアと共同で、上記の方法におけるステップを完備する。繰り返しを避けるため、詳細については、ここでは再び説明されない。
【0134】
ネットワークデバイス900又はネットワークデバイス1000は、上記の仮想的な装置実施形態におけるネットワークデバイス800に対応し、ネットワークデバイス800内の各機能モジュールは、ネットワークデバイス900又はネットワークデバイス1000のソフトウェアを利用して実装される。言い換えると、ネットワークデバイス800に含まれる機能モジュールは、ネットワークデバイス900又はネットワークデバイス1000のプロセッサがメモリに格納されているプログラムコードを読み出した後に生成される。
【0135】
図9は、この出願の例示的な実施形態によるネットワークデバイス900の構造の模式図である。ネットワークデバイス900は、第1のネットワークデバイス又は第2のネットワークデバイスとして構成されうる。ネットワークデバイス900は、一般的なバスアーキティクチャによって実装されうる。
【0136】
ネットワークデバイス900は、少なくとも1つのプロセッサ901と、通信バス902と、メモリ903と、少なくとも1つの通信インターフェース904とを含む。
【0137】
プロセッサ901は、汎用CPU、NP、又はマイクロプロセッサであってもよいし、この出願の解決策を実装するように構成された1つ以上の集積回路、例えば、特定用途向け集積回路(application-specific integrated circuit, ASIC)、プログラマブルロジックデバイス(programmable logic device, PLD)、又はそれらの組み合わせであってもよい。PLDは、コンプレックスプログラマブルロジックデバイス(complex programmable logic device, CPLD)、フィールドプログラマブルートアレイ(field programmable gate array, FPGA)、ジェネラルアレイロジック(generic array logic, GAL)、又はそれらの任意の組み合わせであってよい。
【0138】
通信バス902は、上記のコンポーネントの間で情報を伝送するように構成される。上記の通信バス902は、アドレスバス、データバス、制御バスなどに分類されうる。表示を容易にするため、図中では、バスは、1本の太線のみを利用して示されている。しかし、それは、1本のバスしかないこと、又は1つのタイプのバスしかないことを示すものではない。
【0139】
メモリ903は、静的な情報及び命令を格納することができるリードオンリーメモリ(read-only memory, ROM)又は他のタイプの静的記憶デバイス、又は、情報及び命令を格納することができるランダムアクセスメモリ(random access memory, RAM)又は他のタイプの動的記憶デバイスであってもよいし、電気的消去可能なプログラマブルリードオンリーメモリ(electrically erasable programmable read-only memory, EEPROM)、コンパクトディスクリードオンリーメモリ(compact disc read-only memory, CD-ROM)又は他の光ディスクストレージ、光ディスクストレージ(コンパクトディスク、レーザーディスク、光ディスク、デジタルバーサタイルディスク、Blu-ray(登録商標)ディスクなどを含む)、ディスク記憶媒体又は他の磁気記憶デバイス、又は、期待されるプログラムコードを命令又はデータ構造の形態で搬送又は格納するために利用することができ、かつコンピュータによってアクセスすることができる任意の他の媒体であってもよい。しかし、メモリ903は、それらに限定されない。メモリ903は、独立して存在してよく、通信バス902を介してプロセッサ901に接続される。代替的に、メモリ903は、プロセッサ901に統合されてよい。
【0140】
通信インターフェース904は、トランシーバなどの任意の装置を利用し、他のデバイス又は通信ネットワークと通信するように構成される。通信インターフェース904は、有線通信インターフェースを含み、無線通信インターフェースをさらに含んでよい。有線通信インターフェースは、例えば、イーサネットインターフェースであってよい。イーサネットインターフェースは、光インターフェース、電気的インターフェース、又はそれらの組み合わせであってよい。無線通信インターフェースは、無線ローカルエリアネットワーク(wireless local area network, WLAN)インターフェース、セルラネットワーク通信インターフェース、又はそれらの組み合わせであってよい。
【0141】
具体的な実装の際、実施形態において、プロセッサ901は、図9のCPU0及びCPU1などの1つ以上のCPUを含んでよい。
【0142】
具体的な実装の際、実施形態において、ネットワークデバイス900は、図9に示したプロセッサ901及びプロセッサ905などの複数のプロセッサを含んでよい。これらのプロセッサのそれぞれは、シングルコアプロセッサ(single-CPU)又はマルチコアプロセッサ(multi-CPU)であってよい。ここでは、プロセッサは、データ(例えば、コンピュータプログラム命令)を処理するように構成された1つ以上のデバイス、回路、及び/又は処理コアを指すことがある。
【0143】
具体的な実装の際、実施形態において、ネットワークデバイス900は、出力デバイス906及び入力デバイス907をさらに含んでよい。出力デバイス906は、プロセッサ901と通信し、複数の方式で情報を表示しうる。例えば、出力デバイス906は、液晶ディスプレイ(liquid crystal display, LCD)、発光ダイオード(light emitting diode, LED)ディスプレイデバイス、陰極線管(cathode ray tube, CRT)ディスプレイデバイス、又はプロジェクタ(projector)であってよい。入力デバイス907は、プロセッサ901と通信し、複数の方式でユーザ入力を受信しうる。例えば、入力デバイス907は、マウス、キーボード、タッチスクリーンデバイス、又はセンサデバイスであってよい。
【0144】
いくつかの実施形態において、メモリ903は、この出願の解決策を実行するためのプログラムコード910を格納するように構成され、プロセッサ901は、メモリ903に格納されたプログラムコード910を実行しうる。言い換えると、ネットワークデバイス900は、プロセッサ901、及びメモリ903内のプログラムコード910を介して、方法実施形態において提供される方法100又は方法700を実装しうる。
【0145】
この出願のこの実施形態におけるネットワークデバイス900は、方法実施形態における第1のネットワークデバイス又は第2のネットワークデバイスに対応しうる。加えて、ネットワークデバイス900内のプロセッサ901、通信インターフェース904などは、第1のネットワークデバイス又は第2のネットワークデバイスの機能、及び/又は、上記の方法実施形態において第1のネットワークデバイス又は第2のネットワークデバイスによって実行される様々なステップ及び方法を実装しうる。簡潔のために、詳細については、ここでは再び説明されない。
【0146】
ネットワークデバイス800内の送信ユニット801及び受信ユニット803は、ネットワークデバイス900内の通信インターフェース904と等価である。ネットワークデバイス800内の処理ユニット802は、ネットワークデバイス900内のプロセッサ901と等価でありうる。
【0147】
図10は、この出願の例示的な実施形態によるネットワークデバイス1000の構造の模式図である。ネットワークデバイス1000は、上記の方法実施形態の方法100又は方法700における第1のネットワークデバイス又は第2のネットワークデバイスとして構成されうる。ネットワークデバイス1000は、メイン制御基板1010及びインターフェース基板1030を含む。
【0148】
メイン制御基板1010は、メイン処理ユニット(main processing unit, MPU)又はルートプロセッサカード(route processor card)とも称される。メイン制御基板1010は、ネットワークデバイス1000内のコンポーネントを制御及び管理するように構成され、ルート計算、デバイス管理、デバイスメンテナンス、及びプロトコル処理の機能を含む。メイン制御基板1010は、中央処理ユニット1011及びメモリ1012を含む。
【0149】
インターフェース基板1030は、ライン処理ユニット(line processing unit, LPU)、ラインカード(line card)、又はサービス基板とも称される。インターフェース基板1030は、様々なサービスインターフェースを提供し、データパケット転送を実施するように構成される。サービスインターフェースは、それらに限定されないが、イーサネットインターフェース、POS(Packet over SONET/SDH)インターフェースなどを含む。イーサネットインターフェースは、例えば、フレキシブルイーサネットクライアント(Flexible Ethernet Client, FlexE Client)である。インターフェース基板1030は、中央処理ユニット1031、ネットワークプロセッサ1032、転送エントリメモリ1034、及び物理インターフェースカード(physical interface card, PIC)1033を含む。
【0150】
インターフェース基板1030上の中央処理ユニット1031は、インターフェース基板1030を制御及び管理し、メイン制御基板1010上の中央処理ユニット1011と通信するように構成される。
【0151】
ネットワークプロセッサ1032は、パケット転送処理を実施するように構成される。ネットワークプロセッサ1032の形態は、転送チップであってよい。具体的には、ネットワークプロセッサ1032は、転送エントリメモリ1034に格納された転送テーブルに基づいて、受信したパケットを転送し、パケットの宛先アドレスがネットワークデバイス1000のアドレスである場合に、処理のために、パケットをCPU(例えば、中央処理ユニット1011)にアップロードし、又は、パケットの宛先アドレスがネットワークデバイス1000のアドレスでない場合に、宛先アドレスに基づいて、宛先アドレスに対応するネクストホップ及び下り(outbound)インターフェースを転送テーブルから検索し、パケットを宛先アドレスに対応する下りインターフェースに転送するように構成される。アップリンクパケット処理は、パケット上り(inbound)インターフェース処理及び転送テーブル検索を含み、また、ダウンリンクパケット処理は、転送テーブル検索などを含む。
【0152】
物理インターフェースカード1033は、物理レイヤ相互接続機能を実装するように構成される。オリジナルトラフィックがインターフェース基板1030に入り、処理後に取得されるパケットが物理インターフェースカード1033から外部に送信される。物理インターフェースカード1033は、サブカードとも称され、インターフェース基板1030に取り付けられてよく、光/電気信号をパケットに変換し、パケット上での有効性チェックを実行し、次いで、処理のために、パケットをネットワークプロセッサ1032に転送することを担当する。いくつかの実施形態では、中央処理ユニットは、ネットワークプロセッサ1032の機能を実行してもよく、例えば、汎用CPUに基づいてソフトウェア転送を実装してもよく、それにより、ネットワークプロセッサ1032が、物理インターフェースカード1033内にある必要がなくなる。
【0153】
任意選択で、ネットワークデバイス1000は、複数のインターフェース基板を含む。例えば、ネットワークデバイス1000は、インターフェース基板1040をさらに含む。インターフェース基板1040は、中央処理ユニット1041、ネットワークプロセッサ1042、転送エントリメモリ1044、及び物理インターフェースカード1043を含む。
【0154】
任意選択で、ネットワークデバイス1000は、スイッチング基板1020をさらに含む。スイッチング基板1020は、スイッチファブリックユニット(switch fabric unit, SFU)と称されることもある。ネットワークデバイスが複数のインターフェース基板1030を有するとき、スイッチング基板1020は、インターフェース基板の間でデータ交換を実施するように構成される。例えば、インターフェース基板1030とインターフェース基板1040とは、スイッチング基板1020を介して互いに通信しうる。
【0155】
メイン制御基板1010は、インターフェース基板1030に結合される。例えば、メイン制御基板1010、インターフェース基板1030、インターフェース基板1040、及びスイッチング基板1020は、相互接続のためのシステムバスを介してシステムバックプレーンに接続される。可能な実装において、プロセス間通信(inter-process communication, IPC)チャネルが、メイン制御基板1010とインターフェース基板1030との間に構築され、メイン制御基板1010とインターフェース基板1030との間でIPCチャネルを介して通信が実行される。
【0156】
論理的には、ネットワークデバイス1000は、制御プレーンと転送プレーンとを含む。制御プレーンは、メイン制御基板1010と中央処理ユニット1031とを含む。転送プレーンは、転送エントリメモリ1034、物理インターフェースカード1033、及びネットワークプロセッサ1032など、転送を実行するコンポーネントを含む。制御プレーンは、ルータ、転送テーブル生成、シグナリングとプロトコルパケット処理、及びデバイス状態構成と管理などの機能を実行する。制御プレーンは、生成した転送テーブルを転送プレーンに配送する。転送プレーン上では、ネットワークプロセッサ1032が、制御プレーンによって配送された転送テーブルに基づいて、物理インターフェースカード1033によって受信されるパケットを検索及び転送する。制御プレーンによって配送される転送テーブルは、転送エントリメモリ1034に格納されうる。いくつかの実施形態において、制御プレーン及び転送プレーンは、同じデバイス上で完全に分離されてもされなくてもよい。
【0157】
ネットワークデバイス1000が第1のネットワークデバイスとして構成される場合、ネットワークプロセッサ1032は、第1のパケットを生成し、第1のパケットが第2のネットワークデバイスに伝送されるように、第1のパケットを物理インターフェースカード1033から外部に送信しうる。
【0158】
ネットワークデバイス1000が第2のネットワークデバイスとして構成される場合、物理インターフェースカード1033は、第1のパケットを受信し、ネットワークプロセッサ1032が、第1のパケットから、第1のネットワークデバイスのiFIT機能のサポート状態を取得するように、第1のパケットをネットワークプロセッサ1032に送信する。
【0159】
ネットワークデバイス800内の送信ユニット801及び受信ユニット803は、ネットワークデバイス1000内の物理インターフェースカード1033と等価でありうる。ネットワークデバイス800内の処理ユニット802は、ネットワークプロセッサ1032又は中央処理ユニット1011と等価でありうる。
【0160】
この出願のこの実施形態において、インターフェース基板1040上の動作は、インターフェース基板1030上の動作と同じである。簡潔のために、詳細については、ここでは再び説明されない。この実施形態におけるネットワークデバイス1000は、上記の方法実施形態における第1のネットワークデバイス又は第2のネットワークデバイスに対応しうる。ネットワークデバイス1000内のメイン制御基板1010、インターフェース基板1030、及び/又はインターフェース基板1040は、第1のネットワークデバイス又は第2のネットワークデバイスの機能、及び/又は、上記の方法実施形態における第1のネットワークデバイス又は第2のネットワークデバイスによって実行される様々なステップを実施しうる。簡潔のために、詳細については、ここでは再び説明されない。
【0161】
1つ以上のメイン制御基板があってよいことに留意すべきである。複数のメイン制御基板があるとき、アクティブなメイン制御基板とスタンバイ状態のメイン制御基板とが含まれうる。1つ以上のインターフェース基板があってもよい。ネットワークデバイスのデータ処理機能が強力になるほど、より多くのインターフェース基板が提供される。インターフェース基板上に1つ以上の物理インターフェースカードがあってもよい。スイッチング基板はなくてもよいし、1つ以上のスイッチング基板があってもよい。複数のスイッチング基板があるとき、負荷分散及び冗長バックアップが、複数のスイッチング基板によって協働して実施されうる。集中型転送アーキティクチャにおいて、ネットワークデバイスは、スイッチング基板を必要としないことがあり、インターフェース基板は、システム全体のサービスデータを処理する。分散型転送アーキティクチャにおいて、ネットワークデバイスは、少なくとも1つのスイッチング基板を有することがあり、複数のインターフェース基板の間のデータ交換が、スイッチング基板を介して実施され、大容量データの交換及び処理機能を提供する。従って、分散型アーキティクチャにおけるネットワークデバイスのデータアクセス及び処理能力は、集中型アーキティクチャにおけるデバイスのものより大きい。任意選択で、ネットワークデバイスの形態は、1つの基板のみがあるもの、即ち、スイッチング基板がないものであってもよく、インターフェース基板及びメイン制御基板の機能は、その基板に統合される。この場合、インターフェース基板上の中央処理ユニットと、メイン制御基板上の中央処理ユニットとは、基板上の1つの中央処理ユニットに結合され、2つが重ねられた後の機能を実行しうる。この形態におけるデータのデータ交換及び処理機能は低い(例えば、ローエンドスイッチ又はルータなどのネットワークデバイス)。利用される具体的なアーキティクチャは、具体的なネットワーク展開シナリオに依存する。これについては、ここでは限定されない。
【0162】
いくつかの可能な実施形態において、第1のネットワークデバイス又は第2のネットワークデバイスは、仮想化デバイスとして実装されうる。
【0163】
例えば、仮想化デバイスは、パケットを送信するための機能を有するプログラムを実行する仮想マシン(英語:Virtual Machine, VM)であってよく、仮想マシンは、ハードウェアデバイス(例えば、物理サーバ)上に展開される。仮想マシンは、完全なハードウェアシステム機能を有し、かつ完全に隔離された環境で動作する、完全にソフトウェアでシミュレートされたコンピュータシステムである。仮想マシンは、第1のネットワークデバイス又は第2のネットワークデバイスとして構成されうる。例えば、第1のネットワークデバイス又は第2のネットワークデバイスは、ネットワーク機能仮想化(Network Function Virtualization, NFV)技術と組み合わせて、汎用物理サーバに基づいて実装されうる。第1のネットワークデバイス又は第2のネットワークデバイスは、仮想ホスト、仮想ルータ、又は仮想スイッチである。当業者は、汎用物理サーバ上で、この出願を読むことによって、NFV技術を参照して、上記の機能を有する第1のネットワークデバイス又は第2のネットワークデバイスを仮想化しうる。詳細については、ここでは説明されない。
【0164】
例えば、仮想化デバイスは、コンテナであってよく、コンテナは、隔離された仮想化環境を提供するように構成されたエンティティである。例えば、コンテナは、ドッカーコンテナであってよい。コンテナは、第1のネットワークデバイス又は第2のネットワークデバイスとして構成されうる。例えば、第1のネットワークデバイス又は第2のネットワークデバイスは、対応するイメージを利用して作成されうる。例えば、2つのコンテナインスタンスは、プロキシコンテナについて、プロキシコンテナ(プロキシサーバを提供するコンテナ)のイメージを利用して作成され、それぞれ、コンテナインスタンスプロキシコンテナ1及びコンテナインスタンスプロキシコンテナ2である。コンテナインスタンスプロキシコンテナ1は、第1のネットワークデバイス又は第1のコンピューティングデバイスとして提供され、コンテナインスタンスプロキシコンテナ2は、第2のネットワークデバイス又は第2のコンピューティングデバイスとして提供される。コンテナ技術が実装のために利用されるとき、第1のネットワークデバイス又は第2のネットワークデバイスは、物理マシンのカーネルを利用して動作してよく、複数の第1のネットワークデバイス又は第2のネットワークデバイスが、物理マシンのオペレーティングシステムを共有しうる。異なる第1のネットワークデバイス又は第2のネットワークデバイスは、コンテナ技術を利用して隔離されうる。コンテナ化された第1のネットワークデバイス又は第2のネットワークデバイスは、仮想化環境内で動作してよく、例えば、仮想マシン内で動作してよく、又は、コンテナ化された第1のネットワークデバイス又は第2のネットワークデバイスは、物理マシン内で直接的に動作してよい。
【0165】
例えば、仮想化デバイスは、ポッドであってよく、ポッドは、Kubernetes(Kubernetesは、Googleのオープンソースコンテナオーケストレーションエンジンであり、英語では略してK8sである)であり、コンテナ化されたアプリケーションを展開、管理、及び組織化するための基本ユニットである。ポッドは、1つ以上のコンテナを含みうる。同じポッド内の各コンテナは、通常、同じホスト上に展開される。従って、同じポッド内の各コンテナは、ホストを介して通信しうるし、ホストのストレージリソース及びネットワークリソースを共有しうる。ポッドは、第1のネットワークデバイス又は第2のネットワークデバイスとして構成されうる。例えば、具体的には、サービスとしてのコンテナ(英語フルネーム:container as a service、英語では略してCaaSであり、コンテナベースのPaaSサービスである)は、ポッドを作成するように指示されることがあり、ポッドは、第1のネットワークデバイス又は第2のネットワークデバイスとして提供される。
【0166】
もちろん、第1のネットワークデバイス又は第2のネットワークデバイスは、代替的に、他の仮想化デバイスであってよい。これについては、ここではいちいち列挙しない。
【0167】
いくつかの可能な実施形態において、第1のネットワークデバイス又は第2のネットワークデバイスは、代替的に、汎用プロセッサによって実装されうる。例えば、汎用プロセッサの形態は、チップであってよい。具体的には、第1のネットワークデバイス又は第2のネットワークデバイスを実現する汎用プロセッサは、処理回路と、内部的に接続され、かつ処理回路と通信する入力インターフェース及び出力インターフェースとを含む。処理回路は、入力インターフェースを介して、上記の方法実施形態におけるパケット生成ステップを実行するように構成される。処理回路は、入力インターフェースを介して、上記の方法実施形態における受信ステップを実行するように構成される。処理回路は、出力インターフェースを介して、上記の方法実施形態における送信ステップを実行するように構成される。任意選択で、汎用プロセッサは、記憶媒体をさらに含んでよく、処理回路は、記憶媒体を介して、上記の方法実施形態における記憶ステップを実行するように構成される。記憶媒体は、処理回路によって実行される命令を格納してよく、処理回路は、記憶媒体に格納された命令を実行して、上記の方法実施形態を実行するように構成される。
【0168】
図11を参照する。この出願の実施形態は、ネットワークシステム1100を提供する。システム1100は、第1のネットワークデバイス1101及び第2のネットワークデバイス1102を含む。任意選択で、第1のネットワークデバイス1101は、例えば、ネットワークデバイス800、ネットワークデバイス900、又はネットワークデバイス1000であり、第2のネットワークデバイス1102は、ネットワークデバイス800、ネットワークデバイス900、又はネットワークデバイス1000である。
【0169】
この出願の実施形態は、コンピュータプログラム製品を提供する。コンピュータプログラム製品が第1のネットワークデバイス又は第2のネットワークデバイス上で実行されるとき、第1のネットワークデバイス又は第2のネットワークデバイスは、上記の方法実施形態における方法100又は方法700を実行することが可能になる。
【0170】
上記の製品形態でネットワークデバイスが別々に、上記の方法実施形態における第1のネットワークデバイス又は第2のネットワークデバイスの任意の機能を有する。詳細については、ここでは再び説明されない。
【0171】
当業者は、この明細書において開示された実施形態において説明される方法ステップ及びユニットは、電子ハードウェア、コンピュータソフトウェア、又はそれらの組み合わせによって実装されうることを理解しうる。ハードウェアとソフトウェアとの間の可換性について明確に説明するために、上記では、概して、機能に従う各実施形態のステップ及び構成について説明してきた。機能がハードウェアによって実行されるか、ソフトウェアによって実行されるかは、技術的解決策の特定の適用及び設計制約条件に依存する。当業者は、各特定の適用のために、説明された機能を実装するために異なる方法を利用しうるが、その実装がこの出願の範囲を逸脱するとみなされるべきでない。
【0172】
便利で簡潔な説明を目的として、上記のシステム、装置、及びユニットの詳細な動作プロセスについては、上記の方法実施形態における、対応するプロセスを参照すべきことは当業者によって明確に理解されうる。詳細については、ここでは再び説明されない。
【0173】
この出願において提供されるいくつかの実施形態において、開示されたシステム、装置、及び方法は、他の方法で実装されることがある。例えば、説明された装置実施形態は単なる例に過ぎない。例えば、ユニット分割は、単なる論理機能分割に過ぎず、実際の実装においては他の分割でありうる。例えば、複数のユニット又はコンポーネントは、他のシステムに結合又は統合されてもよいし、一部の特徴が省略され又は実行されなくてもよい。加えて、表示され又は論述された相互結合又は直接結合又は通信接続は、いくつかのインターフェースを介して実装されてよい。装置又はユニットの間の間接結合又は通信接続は、電気的に、機械的に、又は他の形態で実装されうる。
【0174】
別々の部分として説明されたユニットは、物理的に別々であっても、そうでなくてもよく、ユニットとして表示された部分は、物理的なユニットであっても、そうでなくてもよく、1つの場所に配置されてもよいし、複数のネットワークユニット上に分散されてもよい。ユニットの一部又は全部は、実際の要件に基づいて選択され、この出願の実施形態の解決策の目的を達成しうる。
【0175】
加えて、この出願の実施形態における機能ユニットは、1つの処理ユニットに統合されてよく、ユニットのそれぞれは、物理的に単独で存在してよいし、又は、2つ以上のユニットが1つのユニットに統合されてよい。統合されたユニットは、ハードウェアの形態で実装されてもよいし、ソフトウェア機能ユニットの形態で実装されてもよい。
【0176】
統合されたユニットがソフトウェア機能ユニットの形態で実装され、独立した製品として販売又は利用されるとき、統合されたユニットは、コンピュータ可読記憶媒体に格納されうる。そのような理解に基づき、この出願の技術的解決策は本質的に、又は従来技術に貢献する部分、又は技術的解決策の全部又は一部は、ソフトウェア製品の形態で実装されうる。コンピュータソフトウェア製品は、記憶媒体に格納され、コンピュータデバイス(パーソナルコンピュータ、サーバ、ネットワークデバイスなどであってよい)に、この出願の実施形態における方法のステップの全部又は一部を実行するように指示するための、いくつかの命令を含む。上記の記憶媒体は、USBフラッシュドライブ、リムーバブルハードディスク、リードオンリーメモリ(read-only Memory, ROM)、ランダムアクセスメモリ(random access memory, RAM)、磁気ディスク、又は光ディスクなど、プログラムコードを格納することができる任意の媒体を含む。
【0177】
上記の説明は、単に、この出願の具体的な実施形態に過ぎず、この出願の保護範囲を限定することを意図していない。この出願において開示された技術的範囲内で、当業者によって直ちに理解される任意の修正又は置換は、この出願の保護範囲に収まるべきである。従って、この出願の保護範囲は、特許請求の範囲の保護範囲を対象とすべきである。
【0178】
上記の実施形態の全部又は一部は、ソフトウェア、ハードウェア、ファームウェア、又はそれらの任意の組み合わせを利用して実装されうる。ソフトウェアが実施形態を実装するために利用されるとき、実施形態の全部又は一部は、コンピュータプログラム製品の形態で実装されることがある。コンピュータプログラム製品は、1つ以上のコンピュータプログラム命令を含む。コンピュータプログラム命令がコンピュータ上にロードされて実行されるとき、この出願の実施形態による手順又は機能の全部又は一部が生成される。コンピュータは、汎用コンピュータ、専用コンピュータ、コンピュータネットワーク、又は他のプログラマブル装置であってよい。コンピュータ命令は、コンピュータ可読記憶媒体に格納されうるか、又は、コンピュータ可読記憶媒体から他のコンピュータ可読記憶媒体へと伝送されうる。例えば、コンピュータ命令は、ウェブサイト、コンピュータ、サーバ、又はデータセンターから、他のウェブサイト、コンピュータ、サーバ、又はデータセンターへと有線又は無線方式で伝送されうる。コンピュータ可読記憶媒体は、コンピュータによってアクセス可能な任意の利用可能な媒体、又は、1つ以上の利用可能な媒体を統合するサーバ又はデータセンタなどのデータ記憶デバイスであってよい。利用可能な媒体は、磁気媒体(例えば、フロッピーディスク、ハードディスク、又は磁気テープ)、光学媒体(例えば、デジタルビデオディスク(digital video disc, DVD))、半導体媒体(例えば、ソリッドステートドライブ、SSD)などであってよい。
【0179】
当業者は、実施形態のステップの全部又は一部は、ハードウェア又は関連ハードウェアに指示するプログラムによって実装されうることを理解しうる。プログラムは、コンピュータ可読記憶媒体に格納されうる。記憶媒体は、リードオンリーメモリ、磁気ディスク、光ディスクなどであってよい。
【0180】
上記の説明は、この出願の単なる任意選択の実施形態についてのものであり、この出願を限定することは意図していない。この出願原理を逸脱することなくなされる任意の修正、等価置換、又は改善は、この出願の保護範囲内に収まるべきである。
図1
図2
図3A
図3B
図4
図5
図6
図7
図8
図9
図10
図11