(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-06-04
(54)【発明の名称】パケット伝送方法及びパケット伝送装置
(51)【国際特許分類】
H04L 47/28 20220101AFI20240528BHJP
H04L 49/9023 20220101ALI20240528BHJP
【FI】
H04L47/28
H04L49/9023
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2023571943
(86)(22)【出願日】2021-07-15
(85)【翻訳文提出日】2023-11-20
(86)【国際出願番号】 CN2021106623
(87)【国際公開番号】W WO2023283902
(87)【国際公開日】2023-01-19
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】518056748
【氏名又は名称】新華三技術有限公司
【氏名又は名称原語表記】NEW H3C TECHNOLOGIES CO., LTD.
(74)【代理人】
【識別番号】100147485
【氏名又は名称】杉村 憲司
(74)【代理人】
【識別番号】230118913
【氏名又は名称】杉村 光嗣
(74)【代理人】
【識別番号】100173794
【氏名又は名称】色部 暁義
(72)【発明者】
【氏名】程 作品
【テーマコード(参考)】
5K030
【Fターム(参考)】
5K030JA11
5K030KA03
5K030LC01
(57)【要約】
本願の実施例は、パケット伝送方法及びパケット伝送装置を提供し、ネットワーク技術の分野に関し、第1ネットワーク機器に適用され、当該方法は、第2ネットワーク機器から送信されたパケットを受信することと、受信パケットをプリセット期間バッファリングした後、受信パケットを転送することと、を含む。本願の実施例に係る技術案を適用する場合、決定論的伝送のWANへの適応性を向上させる。
【選択図】
図2
【特許請求の範囲】
【請求項1】
第1ネットワーク機器に適用されるパケット伝送方法であって、
第2ネットワーク機器から送信されたパケットを受信することと、
受信パケットをプリセット期間バッファリングした後、受信パケットを転送することと、を含む、
ことを特徴とするパケット伝送方法。
【請求項2】
受信パケットを再構成し、再構成後に、同一フローに属するパケットが順番に配置されることをさらに含む、
ことを特徴とする請求項1に記載の方法。
【請求項3】
前記受信パケットを再構成することは、
第1マッピングルールに従って、受信パケットを再構成することを含む、
ことを特徴とする請求項2に記載の方法。
【請求項4】
前記第1マッピングルールは、同一フローのパケットをバッファリングするためのスケジューリングキューを含む、
ことを特徴とする請求項3に記載の方法。
【請求項5】
前記第1マッピングルールは、パケットを転送する期間を示すためのスケジューリングサイクルを含み、
前記受信パケットをプリセット期間バッファリングした後、受信パケットを転送することは、
受信パケットのスケジュールサイクルが終了し、受信パケットをプリセット期間バッファリングした後、受信パケットを転送することを含む、
ことを特徴とする請求項3に記載の方法。
【請求項6】
同一フローに対して、前記第1ネットワーク機器のスケジューリングサイクルと前記第2ネットワーク機器のスケジューリングサイクルとの時間差は、目標時間遅延以上であり、前記目標時間遅延は、前記第1ネットワーク機器と前記第2ネットワーク機器との間の時間遅延である、
ことを特徴とする請求項5に記載の方法。
【請求項7】
前記第1マッピングルールは、前記プリセット期間を含む、
ことを特徴とする請求項3に記載の方法。
【請求項8】
前記パケットのヘッダーに前記第1マッピングルールが付加される、
ことを特徴とする請求項3~7のいずれか1項に記載の方法。
【請求項9】
前記パケットのヘッダーに、前記パケットが属するフローを確定するための5タプルが付加され、または
前記パケットのヘッダーに、前記パケットが属するフローを確定するためのフロー識別子が付加される、
ことを特徴とする請求項1~7のいずれか1項に記載の方法。
【請求項10】
前記第1ネットワーク機器と前記第2ネットワーク機器とは、スケジューリング頻度が同じであり、前記スケジューリング頻度は、スケジューリングサイクルを分割する頻度である、
ことを特徴とする請求項1~7のいずれか1項に記載の方法。
【請求項11】
前記第2ネットワーク機器から送信された、第2ネットワーク機器と第1ネットワーク機器との間の各パスのサービス品質を検出するための遠隔測定パケットを受信することと、
コントローラに前記遠隔測定パケットを送信することと、
をさらに含む、ことを特徴とする請求項1~7のいずれか1項に記載の方法。
【請求項12】
前記サービス品質は、時間遅延とジッターを含み、
前記遠隔測定パケットの末尾に、パス上の各ネットワーク機器のタイムスタンプが付加される、
ことを特徴とする請求項11に記載の方法。
【請求項13】
コントローラに適用されるパケット伝送方法であって、
第1ネットワーク機器に第1マッピングルールを送信することであって、前記第1マッピングルールは、第2ネットワーク機器からのパケットをプリセット期間バッファリングした後、受信パケットを転送するように前記第1ネットワーク機器に指示するためのものであることを含む、
ことを特徴とするパケット伝送方法。
【請求項14】
第2ネットワーク機器に第2マッピングルールを送信することをさらに含み、
前記第1マッピングルールと第2マッピングルールは、パケットを転送する期間を示すためのスケジューリングサイクルを含み、
同一フローに対して、前記第1ネットワーク機器のスケジューリングサイクルと前記第2ネットワーク機器のスケジューリングサイクルとの時間差は、目標時間遅延以上であり、前記目標時間遅延は、前記第1ネットワーク機器と前記第2ネットワーク機器との間の時間遅延である、
ことを特徴とする請求項13に記載の方法。
【請求項15】
第1ネットワーク機器から送信された、前記第2ネットワーク機器と前記第1ネットワーク機器との間の各パスのサービス品質を検出するための遠隔測定パケットを受信することと、
前記遠隔測定パケットに付加された情報に従って、前記各パスのサービス品質を確定することと、
をさらに含む、ことを特徴とする請求項13に記載の方法。
【請求項16】
前記サービス品質は、時間遅延とジッターを含み、
前記遠隔測定パケットの末尾に、パス上の各ネットワーク機器のタイムスタンプが付加される、
ことを特徴とする請求項13に記載の方法。
【請求項17】
第1ネットワーク機器に第1マッピングルールを送信する前に、前記方法は、
前記第2ネットワーク機器から送信された、前記第2ネットワーク機器と前記第1ネットワーク機器との間でパケットを伝送するマッピングルールをリクエストするためのリクエストパケットを受信することと、
前記リクエストパケットに従って、前記第1マッピングルールを確定することと、
をさらに含む、ことを特徴とする請求項13に記載の方法。
【請求項18】
前記リクエストパケットに目標伝送パラメータが付加され、
前記リクエストパケットに従って、前記第1マッピングルールを確定することは、
第1ネットワーク機器と第2ネットワーク機器との間の各パスのサービス品質に従って、サービス品質が前記目標伝送パラメータを満たすパスと、前記第1マッピングルールとを確定することを含む、
ことを特徴とする請求項17に記載の方法。
【請求項19】
第1ネットワーク機器に適用されるパケット伝送装置であって、
第2ネットワーク機器から送信されたパケットを受信するための第1受信手段と、
受信パケットをプリセット期間バッファリングした後、受信パケットを転送するための転送手段と、を備える、
ことを特徴とするパケット伝送装置。
【請求項20】
コントローラに適用されるパケット伝送装置であって、
第1ネットワーク機器に第1マッピングルールを送信するための第1送信手段であって、前記第1マッピングルールは、第2ネットワーク機器からのパケットをプリセット期間バッファリングした後、受信パケットを転送するように前記第1ネットワーク機器に指示するためのものである第1送信手段を備える、
ことを特徴とするパケット伝送装置。
【請求項21】
ネットワーク機器であって、プロセッサと機械可読記憶媒体を備え、前記機械可読記憶媒体に、前記プロセッサによって実行可能な機械実行可能な命令が記憶されており、前記機械実行可能な命令は、前記プロセッサに、請求項1~12のいずれか1項に記載の方法のステップを実現させる、
ことを特徴とするネットワーク機器。
【請求項22】
コントローラであって、プロセッサと機械可読記憶媒体とを備え、前記機械可読記憶媒体に、前記プロセッサによって実行可能な機械実行可能な命令が記憶されており、前記機械実行可能な命令は、前記プロセッサに、請求項13~18のいずれか1項に記載の方法のステップを実現させる、
ことを特徴とするコントローラ。
【請求項23】
コンピューター可読記憶媒体であって、前記コンピューター可読記憶媒体にコンピュータープログラムが記憶されており、前記コンピュータープログラムは、プロセッサによって実行されると、請求項1~12または請求項13~18のいずれか1項に記載の方法のステップを実現する、
ことを特徴とするコンピューター可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本願は、ネットワーク技術の分野に関し、特に、パケット伝送方法及びパケット伝送装置に関する。
【背景技術】
【0002】
「スマートグリッド」、「遠隔医療」、「オーディオ/ビデオ・エンターテインメント」、および「産業用遠隔制御」などのネットワークの応用シナリオにおいて、決定論的時間遅延とジッターを実現するように、パケットに対して決定論的伝送を行う必要がある。しかしながら、現在の決定論的伝送は、パケットの伝送路上の機器に対する要求が高いため、複雑な広域通信網(Wide Area Network,WAN)への適応性が低い。
【発明の概要】
【0003】
本願の実施例は、決定論的伝送のWANへの適応性を向上させるために、パケット伝送方法及びパケット伝送装置を提供することを目的とする。具体的な技術案は、以下の通りである。
【0004】
第1の態様として、本願の実施例は、第1ネットワーク機器に適用されるパケット伝送方法を提供し、前記方法は、
第2ネットワーク機器から送信されたパケットを受信することと、
受信パケットをプリセット期間バッファリングした後、受信パケットを転送することと、を含む。
【0005】
選択的に、前記方法は、
受信パケットを再構成し、再構成後に、同一フローに属するパケットが順番に配置されることをさらに含む。
【0006】
選択的に、前記受信パケットを再構成することは、
第1マッピングルールに従って、受信パケットを再構成することを含む。
【0007】
選択的に、前記第1マッピングルールは、同一フローのパケットをバッファリングするためのスケジューリングキューを含む。
【0008】
選択的に、前記第1マッピングルールは、パケットを転送する期間を示すためのスケジューリングサイクルを含み、
前記受信パケットをプリセット期間バッファリングした後、受信パケットを転送することは、
受信パケットのスケジュールサイクルが終了し、受信パケットをプリセット期間バッファリングした後、受信パケットを転送することを含む。
【0009】
選択的に、同一フローに対して、前記第1ネットワーク機器のスケジューリングサイクルと前記第2ネットワーク機器のスケジューリングサイクルとの時間差は、目標時間遅延以上であり、前記目標時間遅延は、前記第1ネットワーク機器と前記第2ネットワーク機器との間の時間遅延である。
【0010】
選択的に、前記第1マッピングルールは、前記プリセット期間を含む。
【0011】
選択的に、前記パケットのヘッダーに前記第1マッピングルールが付加される。
【0012】
選択的に、前記パケットのヘッダーに、前記パケットが属するフローを確定するための5タプルが付加され、または
前記パケットのヘッダーに、前記パケットが属するフローを確定するためのフロー識別子が付加される。
【0013】
選択的に、前記第1ネットワーク機器と前記第2ネットワーク機器とは、スケジューリング頻度が同じであり、前記スケジューリング頻度はスケジューリングサイクルを分割する頻度である。
【0014】
選択的に、前記方法は、
第2ネットワーク機器から送信された、前記第2ネットワーク機器と前記第1ネットワーク機器との間の各パスのサービス品質を検出するための遠隔測定パケットを受信することと、
コントローラに前記遠隔測定パケットを送信することと、をさらに含む。
【0015】
選択的に、前記サービス品質は、時間遅延とジッターを含み、
前記遠隔測定パケットの末尾に、パス上の各ネットワーク機器のタイムスタンプが付加される。
【0016】
第2の態様として、本願の実施例は、コントローラに適用されるパケット伝送方法を提供し、前記方法は、
第1ネットワーク機器に第1マッピングルールを送信することであって、前記第1マッピングルールは、第2ネットワーク機器からのパケットをプリセット期間バッファリングした後、受信パケットを転送するように前記第1ネットワーク機器に指示するためのものであることを含む。
【0017】
選択的に、前記方法は、
第2ネットワーク機器に第2マッピングルールを送信することをさらに含み、
前記第1マッピングルールと前記第2マッピングルールは、パケットを転送する期間を示すためのスケジューリングサイクルを含み、
同一フローに対して、前記第1ネットワーク機器のスケジューリングサイクルと前記第2ネットワーク機器のスケジューリングサイクルとの時間差は、目標時間遅延以上であり、前記目標時間遅延は、前記第1ネットワーク機器と前記第2ネットワーク機器との間の時間遅延である。
【0018】
選択的に、前記方法は、
第1ネットワーク機器から送信された、前記第2ネットワーク機器と前記第1ネットワーク機器との間の各パスのサービス品質を検出するための遠隔測定パケットを受信することと、
遠隔測定パケットに付加された情報に従って、前記各パスのサービス品質を確定することと、をさらに含む。
【0019】
選択的に、前記サービス品質は、時間遅延とジッターを含み、
前記遠隔測定パケットの末尾に、パス上の各ネットワーク機器のタイムスタンプが付加される。
【0020】
選択的に、第1ネットワーク機器に第1マッピングルールを送信する前に、前記方法は、
第2ネットワーク機器から送信された、前記第2ネットワーク機器と前記第1ネットワーク機器との間でパケットを伝送するマッピングルールをリクエストするためのリクエストパケットを受信することと、
前記リクエストパケットに従って、前記第1マッピングルールを確定することと、をさらに含む。
【0021】
選択的に、前記リクエストパケットに目標伝送パラメータが付加され、
前記リクエストパケットに従って、前記第1マッピングルールを確定することは、
第1ネットワーク機器と第2ネットワーク機器との間の各パスのサービス品質に従って、サービス品質が前記目標伝送パラメータを満たすパスと、前記第1マッピングルールとを確定することを含む。
【0022】
第3の態様として、本願の実施例は、第1ネットワーク機器に適用されるパケット伝送装置を提供し、前記装置は、
第2ネットワーク機器から送信されたパケットを受信するための第1受信手段と、
受信パケットをプリセット期間バッファリングした後、受信パケットを転送するための転送手段と、を備える。
【0023】
第4の態様として、本願の実施例は、コントローラに適用されるパケット伝送装置を提供し、前記装置は、
第1ネットワーク機器に第1マッピングルールを送信するための第1送信手段であって、前記第1マッピングルールは、第2ネットワーク機器からのパケットをプリセット期間バッファリングした後、受信パケットを転送するように前記第1ネットワーク機器に指示するためのものである第1送信手段を備える。
【0024】
第5の態様として、本願の実施例は、ネットワーク機器を提供し、前記ネットワーク機器は、プロセッサと機械可読記憶媒体を備え、前記機械可読記憶媒体に前記プロセッサによって実行可能な機械実行可能な命令が記憶されており、前記機械実行可能な命令は、前記プロセッサに、上記第1の態様のいずれか1項に記載の方法のステップを実現させる。
【0025】
第6の態様として、本願の実施例は、コントローラを提供し、前記コントローラは、プロセッサと機械可読記憶媒体を備え、前記機械可読記憶媒体に前記プロセッサによって実行可能な機械実行可能な命令が記憶されており、前記機械実行可能な命令は、前記プロセッサに、上記第2の態様のいずれか1項に記載の方法のステップを実現させる。
【0026】
第7の態様として、本願の実施例は、コンピューター可読記憶媒体を提供し、前記コンピューター可読記憶媒体にコンピュータープログラムが記憶されており、前記コンピュータープログラムは、プロセッサによって実行されると、上記第1の態様または第2の態様のいずれか1項に記載の方法のステップを実現する。
【0027】
第8の態様として、本願の実施例は、コンピュータープログラムを提供し、前記コンピュータープログラムは、コンピューター上で実行されると、コンピューターに上記第1の態様または第2の態様のいずれか1項に記載の方法のステップを実行させる。
【0028】
本願の実施例は、以下の有益な効果を奏する。
本願の実施例に係る技術案において、第1ネットワーク機器は、受信パケットをプリセット期間バッファリングする。第1ネットワーク機器が受信パケットをバッファリングするプリセット期間内に、第1ネットワーク機器は、当該パケットと同一フローに属する他のパケットを受信することができる。このように、受信パケットをプリセット期間バッファリングした後、第1ネットワーク機器が当該パケットを転送すると、同一フローのパケットの転送によるジッターを低減し、決定論的伝送を実現することができる。これからわかるように、本願の実施例に係る技術案において、パケットの受信側のネットワーク機器がパケットをバッファリングすることで、決定論的伝送を実現することができる。当該決定論的伝送の方式は、伝送路上の他のネットワーク機器に対する要求がない。これにより、本願の実施例に係る技術案は、複雑なWANによりよく適応することができ、決定論的伝送のWANへの適応性を向上させることができる。
【0029】
もちろん、本願を実施する任意の製品又は方法は、必ずしも上記の利点のすべてを同時に実現することを必要としない。
【図面の簡単な説明】
【0030】
以下、本願の実施例や従来技術の技術案をより明確に説明するために、実施例や従来技術に用いられる図面を簡単に説明する。以下に説明される図面が単に本願の一部の実施例によるものに過ぎず、当業者にとって、これらの図面に基づいて他の実施例を得ることもできることは明らかである。
【0031】
【
図1】
図1は、本願の実施例に係るWANの一例の模式図である。
【
図2】
図2は、本願の実施例に係るパケット伝送方法の第1のフローチャートである。
【
図3】
図3は、本願の実施例に係るパケット伝送方法の第2のフローチャートである。
【
図4】
図4は、本願の実施例に係る受信パケットの一例の模式図である。
【
図5】
図5は、本願の実施例に係るパケット伝送方法の第3のフローチャートである。
【
図6】
図6は、本願の実施例に係るパケット伝送方法の第4のフローチャートである。
【
図7】
図7は、本願の実施例に係るパケット伝送方法の第5のフローチャートである。
【
図8】
図8は、本願の実施例に係るパケット伝送方法の第6のフローチャートである。
【
図9】
図9は、本願の実施例に係るWANの別の例の模式図である。
【
図10】
図10は、本願の実施例に係るパケット伝送方法の第7のフローチャートである。
【
図11】
図11は、本願の実施例に係るパケット伝送方法の第8のフローチャートである。
【
図12】
図12は、本願の実施例に係るINTパケットの転送の一例の模式図である。
【
図13】
図13は、本願の実施例に係るパケット伝送方法の第9のフローチャートである。
【
図14】
図14は、本願の実施例に係るパケット伝送方法の第10のフローチャートである。
【
図15】
図15は、本願の実施例に係るパケット伝送装置の第1の構造の模式図である。
【
図16】
図16は、本願の実施例に係るパケット伝送装置の第2の構造の模式図である。
【
図17】
図17は、本願の実施例に係るネットワーク機器の構造模式図である。
【
図18】
図18は、本願の実施例に係るコントローラの構造模式図である。
【発明を実施するための形態】
【0032】
以下、本願の実施例における図面を参照しながら、本願の実施例の技術案を明確かつ完全な説明を行う。明らかに、説明される実施例は、すべての実施例ではなく、本願の実施例の一部にすぎない。本願の実施例によれば、当業者が本願に基づいて得られるすべての他の実施例は、何れも本願の保護範囲に属する。
【0033】
以下、本願の実施例における用語について説明する。
タイムセンシティブネットワーク(Time Sensitive Network,TSN):イーサネット規格群であり、正確な時間同期やタイミングスケジューリングなどのコア技術により、時間同期の低遅延フローサービスを実現し、システム内の各ユニットに低遅延等時性の標準データを提供することにより、制御、測定、構成、ユーザーインタフェース(User Interface,UI)およびファイル交換インフラストラクチャなどの統合ための基礎を提供する。
【0034】
タイムスロット:時間を均等に分割して各々のタイムスロットになり、TSNにおける最小のスケジューリング単位である。
【0035】
決定論的ネットワーク:サービスの決定論的帯域幅、時間遅延、ジッターおよびパケット損失率という指標を保証するネットワークを指す。決定論的ネットワーク技術は、新しいサービス品質(Quality of Service,QoS)保証技術である。
【0036】
「スマートグリッド」、「遠隔医療」、「オーディオ/ビデオ・エンターテインメント」、および「産業用遠隔制御」などのネットワークの応用シナリオにおいて、決定論的時間遅延とジッターを実現するように、パケットに対して決定論的伝送を行う必要がある。この時、これらのネットワークは、決定論的ネットワークと呼ばれてよい。
【0037】
決定論的ネットワークに対する要求は主に2つの側面から生じる。
第一、イーサネット規格との互換性:産業オートメーションやインテリジェント製造などの伝統的なシナリオでは、ベストエフォートフローと時間遅延敏感フローの共有ネットワーク伝送を実現し、コストを削減するために、数十種類のフィールドバスとリアルタイムのイーサネット規格をイーサネットに置き換え、情報技術(Information Technology,IT)ネットワークと運用技術(Operational Technology,OT)ネットワークを統合する必要がある。
【0038】
第二、決定論的サービスの提供:機械と機械との間の通信トラフィックの急増に伴い、自動運転、遠隔手術およびホログラフィック通信などの新しいネットワーク応用シナリオにおいて、第5世代移動通信技術(5th Generation Mobile Communication Technology,5G)などの技術と組み合わせて、ネットワーク内のハイパーループを構築し、単に決定論的伝送と呼ばれる決定論的サービスのエンドツーエンドの伝送を実現する必要がある。
【0039】
従来のインターネットと産業用ネットワークでは、主に次の4つの方法を使用して、QoSを保証する。
【0040】
a)容量の拡張/軽負荷:容量の拡張とは、帯域幅を拡張し、ネットワークを軽負荷状態にすることを意味する。現在、イーサネットは、シングルポートの帯域幅が400Gbpsであることを実現できるようになる。
【0041】
b)トラフィックシェーピング:トークンバケットとクレジットベースシェーパーなどの技術によって、特定のポートまたはトラフィックに対して速度制限を行う。例えば、上流ノードの出力ポートの帯域幅が8Gbpsであり、下流ノードの空き帯域幅が2Gbpsしかないと、下流ノードの輻輳を回避するために、上流ノードの伝送帯域幅を2Gbps未満に制限する必要がある。
【0042】
c)キュースケジューリング:スイッチの出力ポートでトラフィックをスケジューリングすることを意味する。まず、パケットに異なる優先度を付け、そして、パケットを対応する優先度キューに追加し、最後に、例えば、厳密優先度(Strict Priority,SP)アルゴリズムや重み付きラウンドロビン(Weighted Round Robin,WRR)アルゴリズムなどの異なるキュースケジューリングアルゴリズムを用いてパケットを処理する。
【0043】
ここで、SPアルゴリズムは、キューの優先度に従って厳密にスケジューリングされる。高優先度のキュー内のパケットがすべてスケジュールされた後にのみ、低優先度のキュー内のパケットがスケジュールされる。
【0044】
WRRアルゴリズムは、キューごとに重み付けをして、重み付けの割合に従って順に転送することで、優先度が低いトラフィックが長時間待機することを避けることができる。
【0045】
d)輻輳制御:トラフィックが多すぎて、バッファキューのバッファスペースが不足すると、ネットワークに輻輳やパケットロスが発生するため、輻輳制御が必要になる。現在、明示的輻輳通知(Explicit Congestion Notification,ECN)やデータセンター伝送制御プロトコル(Data Center Transmission Control Protocol,DTCP)などの明示的輻輳マーキングに基づく輻輳制御方法、又はTimely、Swiftなどの往復遅延時間(Round-Trip Time,RTT)に基づく輻輳制御方法を用いて輻輳を検出し、送信側までの上流ノードがパケットの送信速度を低下させることができる。
【0046】
上述したQoSを保証するための技術案は、以下の問題がある。
1)有限時間遅延ジッターの保証の欠如:多重化出力ポートの帯域幅リソースの統計をとるため、時間遅延次元のQoS保証メカニズムがなく、ベストエフォート転送では、常にキューイングと輻輳が発生し、サービスの時間遅延は50ms~1sのオーダーであり、ロングテールの時間遅延が存在する。
【0047】
2)マルチキャストとバーストトラフィックへ対応が困難:送信側のトラフィックとパケットの送信時間は制御できないため、ネットワーク内で、複数のデータフローが下流ノードに集中したり(即ち、マルチキャスト)、ある時点でトラフィックが急増したり(即ち、トラフィックバースト)する現象が発生し、ネットワーク内で輻輳やパケットロスを引き起こす。
【0048】
上述した2つの問題を解決するために、関連技術に、時分割多重化(Time Division Multiplexing,TDM)の概念が導入され、例えばTNSを挙げて、クロック同期とタイムスロットのプランニングを実現し、簡単に言えば、全ネットワークは、統一されたビートでパケットへのスケジューリングおよび転送をすることにより、決定論的時間遅延とジッターを実現する。
【0049】
(1)クロック同期:即ち、ネットワーク全体のクロックが同期され、端末とスイッチのクロックは同じであり、ネットワークカードもパケットにハードタイムスタンプを付ける必要がある。
【0050】
現在、クロック同期方法が2種類ある。1種は、1つの最も正確なクロックをマスタークロックとして選択し、他のスレーブクロックが何れもマスタークロックと同期するマスタースレーブモードである。もう1種は、投票モードであり、例えば、1つのドメインに9つのデバイスがあり、5つのデバイスの現在の時計は1:00と表し、4つのデバイスの現在の時計は1:01と表すと、多数決の原則に従って、9つのデバイスの時計をすべて1:00に調整する。
【0051】
(2)タイムスロットのプランニング:タイムスロットとは、通常、スイッチの出力ポートの時間次元の伝送リソースを意味する。
【0052】
たとえば、あるスイッチの出力ポートの帯域幅が1Gbpsであり、1つのパケットが1500バイト(Byte)、つまり12000ビット(bit)である場合、このパケットの伝送は、当該出力ポートの12マイクロ秒(μs)の一定期間のタイムスロットリソースを占有するが、どの一定期間のタイムスロットリソースを占有するかは、そのパケットの伝送開始時間によって決定される。
【0053】
産業用トラフィックのほとんどは、周期的に送信される最大転送単位(Maximum Transmission Unit,MTU)より小さいパケットであるため、端末からパケットを送信する開始時間を制御することができ、グローバルなタイムスロットのプランニング(即ち、時間分割多重化)によって、各パケットが事前に計算された時点にのみ「トリガー」されて送信され、各ホップの出力ポートで伝送される時に占有されるタイムスロットが互いに競合しないことを保証し、これによりマルチキャストやバーストトラフィックの発生を回避し、「時間通りに正確な」伝送を実現する。
【0054】
上記のTSNに基づく決定論的伝送は、以下の欠点がある。
1、ネットワークスパンが比較的に小さい:上記のTSNに基づく決定論的伝送は、レイヤー2ネットワークの転送にのみ適しており、決定論的ネットワークは、小規模なローカルエリアネットワークに相当する。
【0055】
2、ネットワーク機器に対する要求が厳しい:クロック同期の場合、各ネットワーク機器間は、同じ周波数と時間を保持しなければならない。
【0056】
3、パス上の全てのネットワーク機器がTSNをサポートしなければならず、その中の1つのネットワーク機器がTSNをサポートしなければ、エンドツーエンドの決定論的伝送の効果を果たすことができない。
【0057】
上記の問題を解決するために、関連技術に、セグメントルーティングに基づく周期特定のキューイングと転送(Cyclic Specific Queuing and Forwarding,CSQF)メカニズムも導入される。
【0058】
コントローラは、各ネットワーク機器にセグメント識別子(Segmented Identification,SID)を割り当て、SIDに対応する出力ポートと転送サイクルを指定する。ネットワーク機器は、パケットヘッダーを解析して、パケットに付加されたSIDを取得し、さらに具体的な出力ポートと転送サイクルを確定し、確定された転送サイクルに従って、確定された出力ポートを介してパケットを転送する。
【0059】
上記のCSQFメカニズムに基づくパケット伝送方法は、ネットワークスパンが小さいことを解決できるが、パス上の全てのネットワーク機器がCSQFメカニズムをサポートしなければならないという欠点もある。
【0060】
実際のネットワークは非常に複雑である。ソース端末と宛先端末の間に跨ったものはWANであり、ソース端末と宛先端末の間に多くのネットワーク機器がある。これらのネットワーク機器のすべてがCSQFメカニズムをサポートすることは困難である。これにより、関連技術では、決定論的伝送のWANへの適応性が低くなる。
【0061】
決定論的伝送のWANへの適応性を向上させるために、本願の実施例は、
図1に示したWANに適用されるパケット伝送方法を提供し、当該WANは、コントローラとネットワーク機器R1~R9とを備える。
図1では、9つのネットワーク機器のみを例として説明するが、これに限定されない。
【0062】
ここで、ネットワーク機器は、ルータやスイッチなどであってもよい。コントローラは、ソフトウェア定義ネットワーク(Software Defined Network,SDN)コントローラであってよいし、コレクタなどであってもよいが、これに限定されない。コントローラは、WAN全体のネットワーク機器を管理し、決定論的伝送のパスプランニングを行い、決定論的伝送の帯域幅予約を行うために用いられる。
【0063】
図1に示すWANでは、端末Aはネットワーク機器R1に接続され、端末Bはネットワーク機器R9に接続され、端末Aと端末Bの間はWANを跨る必要がある。端末Aが端末Bとエンドツーエンドの決定論的伝送を行う必要がある場合、端末Aはソース端末であり、端末Bは宛先端末であり、端末Aに接続されたネットワーク機器R1と端末Bに接続されたネットワーク機器R9は、ゲートウェイ機器として理解でき、ネットワーク機器R1とネットワーク機器R9はエンドツーエンドの決定論的伝送のキーノードであり、両者は、スケジューリングおよび転送の頻度が同じである。
【0064】
図1に示すWANに基づいて、本願の実施例は、
図2に示すように、第1ネットワーク機器に適用されるパケット伝送方法を提供する。ここで、第1ネットワーク機器は、WANにおける任意のネットワーク機器であってもよい。上記のパケット伝送方法は、以下のステップを含む。
【0065】
ステップS21:第2ネットワーク機器から送信されたパケットを受信する。
【0066】
ステップS22:受信パケットをプリセット期間バッファリングし後、受信パケットを転送する。
【0067】
本願の実施例に係る技術案において、第1ネットワーク機器は、受信パケットをプリセット期間バッファリングする。第1ネットワーク機器が受信パケットをバッファリングするプリセット期間内に、第1ネットワーク機器は、当該パケットと同一フローに属する他のパケットを受信することができる。このように、受信パケットをプリセット期間バッファリングした後、第1ネットワーク機器が当該パケットを転送すると、同一フローのパケットの転送によるジッターを低減し、決定論的伝送を実現することができる。これからわかるように、本願の実施例に係る技術案において、パケットの受信側のネットワーク機器がパケットをバッファリングすることで、決定論的伝送を実現することができる。当該決定論的伝送の方式は、伝送路上の他のネットワーク機器に対する要求がない。これにより、本願の実施例に係る技術案は、複雑なWANによりよく適応することができ、決定論的伝送のWANへの適応性を向上させることができる。
【0068】
上記のステップS21において、第2ネットワーク機器は、WANにおける任意のネットワーク機器であってもよい。第2ネットワーク機器は、他のネットワーク機器にパケットを送信する。このパケットは、端末から第2ネットワーク機器に送信されるものであってもよいし、第2ネットワーク機器自体によって生成されるものであってもよい。
【0069】
上記のステップS22において、第1ネットワーク機器は、パケットを受信した後、受信パケットをバッファリングし、プリセット期間バッファリングした後、受信パケットを転送する。
【0070】
ここで、プリセット期間は、実際のニーズに応じて設定することができる。例えば、プリセット期間は10マイクロ秒(μs)、20μs、または30μsなどとする。
【0071】
本願の一実施例において、同一フローのパケットの転送によるジッターを低減するために、本願の実施例は、パケット伝送方法をさらに提供する。
図3に示すように、当該方法は、ステップS220をさらに含む。
【0072】
ステップS220:受信パケットを再構成し、再構成後に、同一フローに属するパケットが順番に配置される。
【0073】
本願の実施例において、フローは、データフローであってもよく、制御フローであってもよい。
【0074】
1つの選択的な実施例において、異なるフローを容易に区別するために、パケットのヘッダーに、パケットが属するフローを確定するための5タプルが付加される。
【0075】
別の選択的な実施例において、異なるフローをより正確に区別するために、パケットのヘッダーに、パケットが属するフローを確定するためのフロー識別子が付加される。
【0076】
第1ネットワーク機器は、パケットを受信し、受信パケットを再構成し、再構成後に、同一フローに属するパケットが順番に配置される。つまり、無秩序から回復を実現する。
【0077】
例えば、
図4に受信パケットの模式図を示す。
図4において、長方形枠はパケットを表し、同じ番号のパケットは、同一フローのパケットである。同一フローのパケットに対して、第1ネットワーク機器が順に受信するわけではない。
図4の左側に示すように、第1ネットワーク機器は、まずフロー1のパケットを1つ受信し、その後、フロー2のパケットを1つ、フロー3のパケットを1つ受信した後、フロー1のパケットを1つ受信する。第1ネットワーク機器は、受信パケットを再構成することで、
図4の右側に示すように、同一フローのパケットが順番に配置される。
【0078】
異なるネットワーク機器間で複数のフローのパケットが伝送される可能性があるため、ネットワーク機器が異なるフローのパケットを受信する順序は固定されていない。第1ネットワーク機器は、パケットを受信し、受信パケットを再構成し、再構成後に、同一フローに属するパケットが順番に配置されるため、同一フローのパケット転送のジッターをさらに低減することができる。
【0079】
本願の一実施例において、第1ネットワーク機器は、第1マッピングルールを予め記憶し、第1マッピングルールに従って、受信パケットを再構成する。
【0080】
例えば、第1ネットワーク機器は、パケットを受信した後、受信パケットが属するフローに対応する第1マッピングルールを確定し、さらに第1マッピングルールに従って受信パケットを再構成する。
【0081】
1つの選択的な実施例において、第1マッピングルールは、同一フローのパケットをバッファリングするためのスケジューリングキューを含む。
【0082】
この場合、第1ネットワーク機器は、同一フローのパケットを同じスケジューリングキューにバッファリングすることにより、無秩序から回復を実現することができる。
【0083】
1つの選択的な実施例において、第1マッピングルールは、パケットを転送する期間を示すためのスケジューリングサイクルを含む。
【0084】
この場合、上記のステップS22は、受信パケットのスケジュールサイクルが終了し、受信パケットをプリセット期間バッファリングした後、受信パケットを転送することであってもよい。
【0085】
例えば、プリセット期間は、1つのスケジューリングサイクルであり、パケットのスケジューリングサイクルがX番目のスケジューリングサイクルである場合、X番目~X+1番目のスケジューリングサイクルで当該パケットを転送する。
【0086】
スケジューリングサイクルを設定することにより、周期的にパケットの転送を制御し、パケットの同期を容易に実現し、パケット伝送のジッターなどを低減する。
【0087】
本願の一実施例において、同一フローに対して、第1ネットワーク機器のスケジューリングサイクルと第2ネットワーク機器のスケジューリングサイクルとの時間差は、目標時間遅延以上であってよく、目標時間遅延は、第1ネットワーク機器と第2ネットワーク機器との間の時間遅延である。これにより、第1ネットワーク機器が第2ネットワーク機器からのパケットを受信した後、より迅速にパケットを処理できることを保証でき、第1ネットワーク機器と第2ネットワーク機器との間の時間遅延を低減することができる。
【0088】
1つの選択的な実施例において、受信パケットを容易に制御してジッターを低減するために、第1マッピングルールは、プリセット期間を含む。
【0089】
受信パケットをさらに容易に制御してジッターを低減するために、第2ネットワーク機器から第1ネットワーク機器に送信されるパケットのヘッダーに第1マッピングルールが付加される。
【0090】
1つの選択的な実施例において、第1ネットワーク機器と第2ネットワーク機器とは、スケジューリング頻度が同じであり、スケジューリング頻度は、スケジューリングサイクルを分割する頻度である。これにより、エンドツーエンドのジッターをさらに確保することができる。
【0091】
本願の一実施例において、パケット伝送方法をさらに提供し、
図5に示すように、当該方法は、以下のステップを含む。
【0092】
ステップS51:第2ネットワーク機器から送信された、第2ネットワーク機器と第1ネットワーク機器との間の各パスのサービス品質を検出するための遠隔測定パケットを受信する。
【0093】
ここで、サービス品質は、時間遅延やジッターなどを含むが、これらに限定されない。この遠隔測定パケットは、インバンドネットワークテレメトリ(In-band Network Telemetry,INT)パケットであってもよい。遠隔測定パケットの末尾に、パス上の各ネットワーク機器のタイムスタンプが付加される。
【0094】
ステップS52:コントローラに遠隔測定パケットを送信する。
【0095】
本願の実施例により、コントローラが各パスの最大時間遅延、具体的なカプセル化および処理動作などを確定することを容易にし、決定論的伝送サービスがQoS制約範囲内で有効であることを保証する。
【0096】
上記の第1ネットワーク機器に適用されるパケット伝送方法に基づいて、本願の実施例は、
図6に示すように、コントローラに適用されるパケット伝送方法をさらに提供し、当該方法は以下のステップを含む。
【0097】
ステップS61:第1ネットワーク機器に第1マッピングルールを送信し、前記第1マッピングルールは、第2ネットワーク機器からのパケットをプリセット期間バッファリングした後、受信パケットを転送するように前記第1ネットワーク機器に指示するために用いられる。
【0098】
コントローラは、WANを監視することができる。1つの選択的な実施例において、第1ネットワーク機器のマッピングルールが第1ネットワーク機器と第2ネットワーク機器との間のパケット伝送の要求を満たすことができないと確定した場合、コントローラは、新しいマッピングルール、即ち第1マッピングルールを確定し、第1マッピングルールを第1ネットワーク機器に送信することができる。
【0099】
別の選択的な実施例において、
図7に示すように、コントローラは、下記の方法により第1マッピングルールを確定する。
【0100】
ステップS71:第2ネットワーク機器から送信された、第2ネットワーク機器と第1ネットワーク機器との間でパケットを伝送するマッピングルールをリクエストするためのリクエストパケットを受信する。
【0101】
ステップS72:リクエストパケットに従って、第1マッピングルールを確定する。
【0102】
本願の実施例において、コントローラは、第2ネットワーク機器から送信されたリクエストパケットを受信すると、第1マッピングルールを確定し、更にステップS61を実行して、第1ネットワーク機器に第1マッピングルールを送信し、それにより、第2ネットワーク機器と第1ネットワーク機器との間の決定論的伝送を実現する。
【0103】
本願の実施例により、コントローラは、実際のニーズに応じてマッピングルールを発行し、ネットワークリソースを節約することができる。
【0104】
1つの選択的な実施例において、上記のリクエストパケットに目標伝送パラメータが付加され、第1ネットワーク機器と第2ネットワーク機器との間の各パスのサービス品質に従って、サービス品質が目標伝送パラメータを満たすパスと、第1マッピングルールとを確定する。その後、第2ネットワーク機器は、確定されたパスに沿って、第1ネットワーク機器にパケットを転送し、第1ネットワーク機器は、第1マッピングルールに従って転送し、ユーザが求める決定論的伝送を実現することができる。
【0105】
ここで、目標伝送パラメータは、パケット伝送に必要な帯域幅やパケット伝送の時間遅延などであってもよい。
【0106】
1つの選択的な実施例において、本願の実施例は、パケット伝送方法をさらに提供し、
図8に示すように、以下のステップを含む。
【0107】
ステップS81:第1ネットワーク機器から送信された、第2ネットワーク機器と第1ネットワーク機器との間の各パスのサービス品質を検出するための遠隔測定パケットを受信する。
【0108】
ステップS82:遠隔測定パケットに付加された情報に従って、各パスのサービス品質を確定する。
【0109】
本願の実施例により、コントローラは、各パスの最大時間遅延、具体的なカプセル化および処理動作などを確定し、決定論的伝送サービスがQoS制約範囲内で有効であることを保証することができる。
【0110】
本願の一実施例において、コントローラは、第2ネットワーク機器に第2マッピングルールを送信することを更に含む。ここで、第1マッピングルールと第2マッピングルールは、パケットを転送する期間を示すためのスケジューリングサイクルを含む。
同一フローに対して、前記第1ネットワーク機器のスケジューリングサイクルと前記第2ネットワーク機器のスケジューリングサイクルとの時間差は、目標時間遅延以上であり、目標時間遅延は、第1ネットワーク機器と第2ネットワーク機器との間の時間遅延である。
【0111】
これにより、第1ネットワーク機器が第2ネットワーク機器からのパケットを受信した後、より迅速にパケットを処理することを保証し、第1ネットワーク機器と第2ネットワーク機器との間の時間遅延を低減することができる。
【0112】
以下に、
図1に示すWANを組み合わせて、本願の実施例に係るパケット伝送方法を説明する。端末Aと端末Bとの間のエンドツーエンドの決定論的伝送は、次のことを含む。
【0113】
端末Aは、フロー識別子(Flow Identity,FlowID)9が付加されたパケット1をネットワーク機器R1に送信する。
【0114】
ネットワーク機器R1は、パケット1を受信した後、予め記憶されたフロー識別子と、パスと、マッピングルールとの対応関係に従って、フロー識別子1に対応するパス1(
図1におけるネットワーク機器R1→R3→R7→R9で示されるようなパス)と、マッピングルール1とを確定する。
図1では、SAは、ソースアドレスを表し、DAは、宛先アドレスを表し、矢印付き破線は、パケットの伝送路を表す。パケットにおけるF9、Q7、T3などは、マッピングルールを表す。
【0115】
ここで、マッピングルールは、パケットの転送ルールを示すものである。マッピングルールは、実際のニーズに応じて設定してよい。該マッピングルールは、フロー識別子に対応するスケジューリングキュー、スケジューリングサイクル、バッファリング時間などの情報を含むが、これらに限定されない。
【0116】
例えば、マッピングルールは、FX1、QX2、TX3を含む。FX1は、FlowIDである。QX2は、スケジューリングキューの識別子であり、第X2キューを表し、即ち、FlowID X1を付加したパケットを第X2キューにマッピングする。TX3はスケジューリングサイクルであり、第X3スケジューリングサイクルを表し、即ち、FlowID X1を付加したパケットは、第X3スケジューリングサイクルで転送される。マッピングルールは、パケットの同期を実現し、パケット伝送のジッターを低減することなどを容易にするように、バッファリング時間(即ち、上記のプリセット期間)も含む。例えば、バッファリング時間は1つのスケジューリングサイクルであり、この時、上記のマッピングルールは、FloID X1を付加したパケットを第X2キューにマッピングし、第X2キューにバッファリングされたパケットを、第X3~X3+1のスケジューリングサイクルで転送することを示す。
【0117】
マッピングルール1は、F9、Q7、T3を含み、バッファリング時間は、1つのスケジュールサイクルであり、パス1は、
図1におけるネットワーク機器R1→R3→R7→R9で示されるパスであると仮定する。ネットワーク機器R1は、マッピングルール1に従って、パス1に沿ってネットワーク機器R9にパケット1を転送し、即ち、FlowID 9を付加したパケット1は、第7キューにマッピングされ、第7キューにバッファリングされたパケット1を、第3~4のスケジューリングサイクルでネットワーク機器R9に転送する。
【0118】
一例として、
図1に示すように、ネットワーク機器R1は、パケット1のヘッダーに上記のマッピングルール1をカプセル化することにより、ネットワーク機器R9は、マッピングルール1に従って正確にパケット1を転送し、決定論的伝送を実現することができる。
【0119】
図1において、パケットのヘッダーにおけるマッピングルールがF9、Q7、T3を含むことのみを例として説明したが、これに限定されない。SRv6技術に基づいてパケットを転送する必要がある場合、
図1に示すパケットのヘッダーに、パス上の各ネットワーク機器のSIDなどの情報も含む。
【0120】
別の例として、パケット伝送の圧力を低減するために、ネットワーク機器R1は、パケット1のヘッダーに上記のマッピングルール1をカプセル化しなくてもよい。
図9に示すWANでは、SAはソースアドレスを表し、DAは宛先アドレスを表し、矢印付き破線はパケットの伝送路を表し、パケットのヘッダーに付加されたR9はネットワーク機器R9のSIDを表し、パケットのヘッダーに付加されたR7はネットワーク機器R7のSIDを表し、パケットのヘッダーに付加されたR3はネットワーク機器R3のSIDを表す。ネットワーク機器R9は、ローカルに格納されたフロー識別子とマッピングルールとの対応関係に従って、対応するマッピングルール1を確定する。
図9は、SRv6技術に基づいてパケットを転送することのみを例として説明した。他の技術を用いてパケットの転送を行う場合、パケットヘッダーにSIDを付加しなくてもよい。
【0121】
ネットワーク機器R9は、パケット1を受信した後、マッピングルール1に従って、パケット1をプリセット期間バッファリングした後、端末Bにパケット1を送信することにより、決定論的伝送を実現する。
【0122】
上記の実施例において、パケットにフロー識別子を付加することのみを例として説明した。フロー識別子を使用しない場合、異なるフローを区別することもでき、パケットにフロー識別子を付加しないこともできる。
【0123】
図10に示すように、
図10は、本願の実施例に係るパケット伝送方法の第7のフローチャートである。該方法は、ソース端末に接続された第2ネットワーク機器に適用され、以下のステップを含む。
【0124】
ステップS101:ソース端末から送信された、目標フロー識別子を付加した目標パケットを取得する。
【0125】
本願の実施例において、ソース端末は、パケット、即ち目標パケットを第2ネットワーク機器に送信する。該目標パケットに付加されたフロー識別子は、目標フロー識別子である。
【0126】
ステップS102:予め記憶されたフロー識別子と、パスと、マッピングルールとの対応関係に従って、目標フロー識別子に対応する目標パスと目標マッピングルールとを確定する。
【0127】
本願の実施例において、第2ネットワーク機器に、フロー識別子と、パスと、マッピングルールとの対応関係が予め記憶されている。目標パケットを取得した後、第2ネットワーク機器は、予め記憶されたフロー識別子と、パスと、マッピングルールとの対応関係の中で、目標フロー識別子を含む対応関係を検索する。対応関係を検索した後、第2ネットワーク機器は、検索した対応関係に含まれたパスを目標フロー識別子に対応する目標パスとして、検索した対応関係に含まれたマッピングルールを目標マッピングルールとする。
【0128】
ステップS103:第1ネットワーク機器が目標マッピングルールに従って第1ネットワーク機器に接続された宛先端末に目標パケットを送信するように、目標マッピングルールに従って、目標パスに沿って第2ネットワーク機器のスケジューリング転送の頻度と同じ第1ネットワーク機器に目標パケットを転送する。
【0129】
本願の実施例において、第1ネットワーク機器と第2ネットワーク機器は、パケットのスケジューリング転送の頻度が同じである。例えば、第1ネットワーク機器と第2ネットワーク機器はいずれもCSQFメカニズムをサポートし、第1ネットワーク機器と第2ネットワーク機器とは、同じスケジューリング頻度に従って複数のスケジューリングサイクル(Cycle)を分割する。このようにして、エンドツーエンドのネットワークジッターを確保し、帯域幅予約とINT測定によって時間遅延を決定することができる。目標パスと目標マッピングルールを取得した後、第2ネットワーク機器は、目標マッピングルールに従って、目標パスに沿って第1ネットワーク機器に目標パケットを転送する。
【0130】
本願の一実施例において、WANは、セグメントルーティング(Segment Routing,SR)に基づいてパスを確定する。例えば、コントローラは、セグメントルーティングインターネットプロトコルバージョン6(Segment Routing Internet Protocol Version 6,SRv6)に基づく技術を利用して、各ネットワーク機器にセグメント識別子(Segment Identifier,SID)をそれぞれ設定し、各ネットワーク機器のSIDに基づいてエンドツーエンドの可視化、パスプランニング、帯域幅予約などを完了する。各ネットワーク機器は、SIDを利用して、受信パケットを転送する。
【0131】
本願の実施例において、目標パスに、第1ネットワーク機器と第2ネットワーク機器の他に、1つまたは複数のネットワーク機器を備えてもよい。1つまたは複数のネットワーク機器は、目標パケットを受信した後、目標パケットの具体的な転送サイクルを確定することなく、目標パケットを直接転送することができる。第1ネットワーク機器は、目標パケットを受信した後、CSQFメカニズムに基づいて、目標マッピングルールに従って宛先端末に目標パケットを送信する。
【0132】
本願の実施例に係る技術案において、ソース端末に接続された第2ネットワーク機器と宛先端末に接続された第1ネットワーク機器とに対してのみ要求があり、即ち両者のスケジューリング転送の頻度が同じである必要があり、例えば、第1ネットワーク機器と第2ネットワーク機器のみがCSQFメカニズムをサポートする必要があるが、第1ネットワーク機器と第2ネットワーク機器との間の他のネットワーク機器に対して要求がなく、これにより、決定論的時間遅延とジッターを実現し、決定論的伝送を実現することができる。これにより、本願の実施例に係る技術案は、複雑なWANによりよく適応することができ、決定論的伝送のWANへの適応性を向上させることができる。
【0133】
本願の一実施例において、本願の実施例は、パケット伝送方法をさらに提供し、
図11に示すように、当該方法は、ステップS101の前に、以下のステップをさらに含む。
【0134】
ステップS1010:コントローラが予め記憶された第1ネットワーク機器と第2ネットワーク機器との間の各パスのサービス品質に従って、目標伝送パラメータを満たす目標パスと目標マッピングルールとを確定するように、コントローラにソース端末からの伝送リクエストパケットを送信し、伝送リクエストパケットに目標伝送パラメータを付加している。
【0135】
本願の実施例において、ソース端末が宛先端末にパケットへの決定論的伝送を行う必要がある場合、ソース端末は、第2ネットワーク機器に伝送リクエストパケットを送信し、さらに、第2ネットワーク機器は、コントローラに伝送リクエストパケットを送信し、該伝送リクエストパケットに目標伝送パラメータを付加しており、目標伝送パラメータは、FlowID、パケット伝送に必要な帯域幅、パケット伝送の時間遅延などを含むが、これらに限定されない。
【0136】
コントローラに、第1ネットワーク機器と第2ネットワーク機器との間の各パスのサービス品質が予め記憶されている。ここで、1つのパスのサービス品質に、当該パスの残りの帯域幅、当該パスの時間遅延、および当該パスのキューリソースなどを含む。
【0137】
コントローラは、伝送リクエストパケットを受信した後、伝送リクエストパケットから目標伝送パラメータを取得し、予め記憶された第1ネットワーク機器と第2ネットワーク機器との間の各パスのサービス品質に従って、サービス品質が目標伝送パラメータを満たす目標パスを確定し、目標マッピングルールを確定する。
【0138】
ステップS1011:コントローラから発行された目標パスと目標マッピングルールとを受信し、目標フロー識別子と、目標パスと、目標マッピングルールとの対応関係を記憶する。
【0139】
本願の実施例において、コントローラは、目標パスと目標マッピングルールとを確定した後、目標パスと目標マッピングルールとを第2ネットワーク機器に発行する。第2ネットワーク機器は、コントローラから発行された目標パスと目標マッピングルールとを受信し、さらに目標フロー識別子と、目標パスと、目標マッピングルールとの対応関係を記憶する。
【0140】
その後、第2ネットワーク機器は、記憶された目標フロー識別子と、目標パスと、目標マッピングルールとの対応関係に基づいて、目標フロー識別子を付加したパケットを転送する。
【0141】
本願の実施例において、コントローラは、第1ネットワーク機器と第2ネットワーク機器との間の複数のパスのサービス品質を収集し、パスに対して統合的なプランニングを行うことで、さらに決定論的伝送を実現する。
【0142】
本願の一実施例において、コントローラは、目標パスと目標マッピングルールとを確定した後、対応する目標マッピングルールを第1ネットワーク機器に発行する。このようにして、第1ネットワーク機器が目標フロー識別子と目標マッピングルールとの対応関係を記憶することで、正確な決定論的伝送を実現する。ここで、第1ネットワーク機器に格納された目標マッピングルールは、第2ネットワーク機器に格納された目標マッピングルールとは、目標時間遅延だけが異なる。目標時間遅延は、第1ネットワーク機器と第2ネットワーク機器との間の時間遅延である。
【0143】
本願の一実施例において、決定論的伝送を実現するために、第2ネットワーク機器は、周期的に、第1ネットワーク機器と第2ネットワーク機器との間の各パスに沿って、それぞれ第1ネットワーク機器に遠隔測定パケットを送信する。当該遠隔測定パケットは、第1ネットワーク機器と第2ネットワーク機器との間の各パスのサービス品質を検出するために用いられる。
【0144】
第1ネットワーク機器は、受信された遠隔測定パケットをコントローラに送信する。コントローラは、第1ネットワーク機器から送信された遠隔測定パケットを受信した後、遠隔測定パケットから第1ネットワーク機器と第2ネットワーク機器との間の各パスのサービス品質を取得し、さらに第1ネットワーク機器と第2ネットワーク機器との間の各パスのサービス品質を記憶する。
【0145】
本願の実施例において、遠隔測定パケットは、インバンドネットワークテレメトリ(In-band Network Telemetry,INT)パケットであってもよい。第1ネットワーク機器と第2ネットワーク機器との間のパスに沿ってINTパケットを転送する時に、パス上のネットワーク機器は、そのネットワーク機器の機器情報と、そのネットワーク機器がINTパケットを受信するタイムスタンプおよびINTパケットを送信するタイムスタンプとをINTパケットに挿入する。ここで、当該ネットワーク機器がINTパケットを受信するタイムスタンプとINTパケットを送信するタイムスタンプとを総称してタイムスタンプと呼び、このタイムスタンプがINTパケットの末尾に位置し、ネットワーク機器の機器情報がINTパケットのヘッダーに位置する。
【0146】
例えば、
図12にINTパケットの転送の模式図を示し、
図12において、SAは、ソースアドレスを表し、DAは、宛先アドレスを表し、矢印付き破線は、INTパケットの伝送路を表す。ネットワーク機器R1→R3→R7→R9に沿ってINTパケットを転送する場合、ネットワーク機器R1は、INTパケットを転送すると、INTパケットの末尾にタイムスタンプTS1を挿入し、ネットワーク機器R3は、INTパケットを転送すると、INTパケットの末尾にタイムスタンプTS3を挿入し、ネットワーク機器R7は、INTパケットを転送すると、INTパケットの末尾にタイムスタンプTS7を挿入し、ネットワーク機器R9は、コントローラにINTパケットを送信すると、INTパケットの末尾にタイムスタンプTS9を挿入する。
図12に、ネットワーク機器R1、R7、R9によって転送されるINTパケットのみが示されている。
【0147】
ここで、ネットワーク機器R1、R3、R7、R9は、INTをサポートし、INTパケットにタイムスタンプを追加している。一方、ネットワーク機器R2、R8もパス上のネットワーク機器であるが、ネットワーク機器R2、R8は、INTをサポートしないため、INTパケットにタイムスタンプを追加しない。
【0148】
コントローラは、ネットワーク機器R9から送信されたINTパケットを受信した後、該INTパケットに付加されたタイムスタンプを解析し、ネットワーク機器R1→R3→R7→R9というパスの時間遅延とジッターを確定し、さらにエンドツーエンドのQoS検出を完了する。これにより、コントローラが各パスの最大時間遅延、具体的なカプセル化および処理動作などを確定することを容易にし、決定論的伝送サービスがQoS制約範囲内で有効であることを保証する。
【0149】
本願の実施例において、エンドツーエンドのQoSをより正確に検出するために、第2ネットワーク機器と第1ネットワーク機器との間のパスに沿ってINTパケットを転送する場合、パス上のネットワーク機器は、ネクストホップデバイスにネットワーク機器を転送しながら、コントローラにINTパケットを送信する。パス上の1つのネットワーク機器がINTパケットをコントローラに送信しないと、該ネットワーク機器に故障があると確定する。これに基づいて、コントローラは、当該ネットワーク機器に故障があることを示すための警告を適時に発し、さらに当該ネットワーク機器の修復を適時に行うことができる。
【0150】
上記の第2ネットワーク機器に適用されるパケット伝送方法に基づいて、本願の実施例は、宛先端末に接続された第1ネットワーク機器に適用されるパケット伝送方法をさらに提供し、
図13に示すように、以下のステップを含む。
【0151】
ステップS131:第1ネットワーク機器のスケジューリング転送の頻度と同じ第2ネットワーク機器から送信された、目標フロー識別子を付加した目標パケットを受信し、目標パケットは、目標フロー識別子に対応する目標マッピングルールに従って、目標パスに沿って第2ネットワーク機器から送信された、第2ネットワーク機器に接続されたソース端末からのパケットである。
【0152】
ステップS132:目標マッピングルールに従って、宛先端末に目標パケットを送信する。
【0153】
本願の一実施例において、目標パケットに目標マッピングルールを付加した場合、上記のステップS132は、具体的には、目標パケットに付加された目標マッピングルールに従って、宛先端末に目標パケットを送信することであってもよい。
【0154】
本願の別の実施例において、目標パケットに目標マッピングルールを付加しない場合、上記のステップS132は、具体的には、予め記憶されたフロー識別子とマッピングルールとの対応関係に従って、目標フロー識別子に対応する目標マッピングルールを確定し、確定された目標マッピングルールに従って、宛先端末に目標パケットを送信する。
【0155】
本願の一実施例において、エンドツーエンドの決定論的伝送を実現するために、第1ネットワーク機器は、コントローラから発行された目標マッピングルールを受信し、当該目標マッピングルールは、コントローラがソース端末からの伝送リクエストパケットを受信した後、予め記憶された第2ネットワーク機器と第1ネットワーク機器との間の各パスのサービス品質に従って確定された、伝送リクエストパケットに付加された目標伝送パラメータを満たすマッピングルールであり、目標フロー識別子と目標マッピングルールとの対応関係を記憶する。
【0156】
本願の実施例において、目標フロー識別子と目標マッピングルールとの対応関係を正確に記憶するために、コントローラは、目標マッピングルールを第1ネットワーク機器に発行するとともに、目標フロー識別子を第1ネットワーク機器に発行することもできる。
【0157】
本願の一実施例において、第1ネットワーク機器は、第2ネットワーク機器からの遠隔測定パケットを受信し、遠隔測定パケットをコントローラに送信するものであって、当該遠隔測定パケットは、第2ネットワーク機器と第1ネットワーク機器との間の各パスのサービス品質を検出するためのものである。
【0158】
ここで、遠隔測定パケットは、INTパケットであってもよく、他のタイプの遠隔測定パケットであってもよい。
【0159】
本願の実施例に係る技術案において、ソース端末に接続された第2ネットワーク機器と宛先端末に接続された第1ネットワーク機器とに対してのみ要求があり、即ち、両者のスケジューリング転送の頻度が同じである必要があり、例えば、第1ネットワーク機器と第2ネットワーク機器のみがCSQFメカニズムをサポートする必要があるが、第1ネットワーク機器と第2ネットワーク機器との間の他のネットワーク機器に対して要求がなく、これにより、決定論的時間遅延とジッターを実現し、決定論的伝送を実現することができる。これにより、本願の実施例に係る技術案は、複雑なWANによりよく適応することができ、決定論的伝送のWANへの適応性を向上させることができる。
【0160】
本願の一実施例において、本願の実施例は、パケット伝送方法をさらに提供し、
図14に示すように、当該方法では、ステップS132をステップS1321とS1322に細分化する。
【0161】
ステップS1321:目標パケットが目標フロー識別子に対応する他のパケットに隣接するように、目標フロー識別子に従って目標パケットを再配置する。
【0162】
ステップS1322:目標マッピングルールに従って、再配置された目標パケットを宛先端末に送信する。
【0163】
本願の実施例に係る技術案において、第1ネットワーク機器は、フロー識別子を利用してパケットを再配置し、即ちパケットを再構成し、無秩序から回復を実現し、同一データフローに属するパケットが順に送信されることを保証し、ジッターを低減し、さらにエンドツーエンドの決定論的伝送を実現する。
【0164】
上記のパケット伝送方法に対応して、本願の実施例は、第1ネットワーク機器に適用されるパケット伝送装置をさらに提供し、
図15に示すように、前記装置は、
第2ネットワーク機器から送信されたパケットを受信するための第1受信手段151と、
受信パケットをプリセット期間バッファリングした後、受信パケットを転送するための転送手段152と、を備える。
【0165】
選択的に、前記装置は、受信パケットを再構成し、再構成後に、同一フローに属するパケットが順番に配置されるための再構成手段をさらに備える。
【0166】
選択的に、前記再構成手段は、具体的には、
第1マッピングルールに従って、受信パケットを再構成するために用いられる。
【0167】
選択的に、前記第1マッピングルールは、同一フローのパケットをバッファリングするためのスケジューリングキューを含む。
【0168】
選択的に、前記第1マッピングルールは、パケットを転送する期間を示すためのスケジューリングサイクルを含み、
前記転送手段は、具体的には、
受信パケットのスケジュールサイクルが終了し、受信パケットをプリセット期間バッファリングした後、受信パケットを転送するために用いられる。
【0169】
選択的に、同一フローに対して、前記第1ネットワーク機器のスケジューリングサイクルと前記第2ネットワーク機器のスケジューリングサイクルとの時間差は、目標時間遅延以上であり、前記目標時間遅延は、前記第1ネットワーク機器と前記第2ネットワーク機器との間の時間遅延である。
【0170】
選択的に、前記第1マッピングルールは、前記プリセット期間を含む。
【0171】
選択的に、前記パケットのヘッダーに前記第1マッピングルールが付加される。
【0172】
選択的に、前記パケットのヘッダーに、前記パケットが属するフローを確定するための5タプルが付加され、または
前記パケットのヘッダーに、前記パケットが属するフローを確定するためのフロー識別子が付加される。
【0173】
選択的に、前記第1ネットワーク機器と前記第2ネットワーク機器とは、スケジューリング頻度が同じであり、前記スケジューリング頻度は、スケジューリングサイクルを分割する頻度である。
【0174】
選択的に、前記装置は、
第2ネットワーク機器から送信された、前記第2ネットワーク機器と第1ネットワーク機器との間の各パスのサービス品質を検出するための遠隔測定パケットを受信し、コントローラに前記遠隔測定パケットを送信するための第2受信手段をさらに備える。
【0175】
選択的に、前記サービス品質は、時間遅延とジッターを含み、
前記遠隔測定パケットの末尾に、パス上の各ネットワーク機器のタイムスタンプが付加される。
【0176】
本願の実施例に係る技術案において、第1ネットワーク機器は、受信パケットをプリセット期間バッファリングする。第1ネットワーク機器が受信パケットをバッファリングするプリセット期間内に、第1ネットワーク機器は、当該パケットと同一フローに属する他のパケットを受信する。このように、受信パケットをプリセット期間バッファリングした後、第1ネットワーク機器が当該パケットを転送すると、同一フローのパケットの転送によるジッターを低減し、決定論的伝送を実現することができる。これからわかるように、本願の実施例に係る技術案において、パケットの受信側のネットワーク機器がパケットをバッファリングすることで、決定論的伝送を実現することができる。当該決定論的伝送の方式は、伝送路上の他のネットワーク機器に対する要求がない。これにより、本願の実施例に係る技術案は、複雑なWANによりよく適応することができ、決定論的伝送のWANへの適応性を向上させることができる。
【0177】
上記のパケット伝送方法に対応して、本願の実施例は、コントローラに適用されるパケット伝送装置をさらに提供し、
図16に示すように、前記装置は、
第1ネットワーク機器に第1マッピングルールを送信するための第1送信手段であって、前記第1マッピングルールは、第2ネットワーク機器からのパケットをプリセット期間バッファリングした後、受信パケットを転送するように前記第1ネットワーク機器に指示するためのものである第1送信手段を161備える。
【0178】
選択的に、前記装置は、
第2ネットワーク機器に第2マッピングルールを送信するための第2送信手段をさらに備え、
前記第1マッピングルールと第2マッピングルールは、パケットを転送する期間を示すためのスケジューリングサイクルを含み、
同一フローに対して、前記第1ネットワーク機器のスケジューリングサイクルと前記第2ネットワーク機器のスケジューリングサイクルとの時間差は、目標時間遅延以上であり、前記目標時間遅延は、前記第1ネットワーク機器と前記第2ネットワーク機器との間の時間遅延である。
【0179】
選択的に、前記装置は、
第1ネットワーク機器から送信された、前記第2ネットワーク機器と第1ネットワーク機器との間の各パスのサービス品質を検出するための遠隔測定パケットを受信するための第1受信手段と、
前記遠隔測定パケットに付加された情報に従って、前記各パスのサービス品質を確定するための第1確定手段と、をさらに備える。
【0180】
選択的に、前記サービス品質は、時間遅延とジッターを含み、前記遠隔測定パケットの末尾に、パス上の各ネットワーク機器のタイムスタンプが付加される。
【0181】
選択的に、前記装置は、
第1ネットワーク機器に第1マッピングルールを送信する前に、第2ネットワーク機器から送信された、前記第2ネットワーク機器と第1ネットワーク機器との間でパケットを伝送するマッピングルールをリクエストするためのリクエストパケットを受信するための第2受信手段と、
前記リクエストパケットに従って、前記第1マッピングルールを確定するための第2確定手段と、をさらに備える。
【0182】
選択的に、前記リクエストパケットに目標伝送パラメータが付加され、
前記第2確定手段は、具体的には、
第1ネットワーク機器と第2ネットワーク機器との間の各パスのサービス品質に従って、サービス品質が前記目標伝送パラメータを満たすパスと、第1マッピングルールとを確定するために用いられる。
【0183】
本願の実施例に係る技術案において、第1ネットワーク機器は、受信パケットプリセット期間バッファリングする。第1ネットワーク機器が受信パケットをバッファリングするプリセット期間内に、第1ネットワーク機器は、当該パケットと同一フローに属する他のパケットを受信することができる。このように、受信パケットをプリセット期間バッファリングした後、第1ネットワーク機器が当該パケットを転送すると、同一フローのパケットの転送によるジッターを低減し、決定論的伝送を実現することができる。これからわかるように、本願の実施例に係る技術案において、パケットの受信側のネットワーク機器がパケットをバッファリングすることで、決定論的伝送を実現することができる。当該決定論的伝送の方式は、伝送路上の他のネットワーク機器に対する要求がない。これにより、本願の実施例に係る技術案は、複雑なWANによりよく適応することができ、決定論的伝送のWANへの適応性を向上させることができる。
【0184】
上記のパケット伝送方法に対応して、本願の実施例は、ネットワーク機器をさらに提供し、
図17に示すように、当該ネットワーク機器は、プロセッサ171と機械可読記憶媒体172を備え、機械可読記憶媒体172にプロセッサ171によって実行可能な機械実行可能な命令が記憶されており、機械実行可能な命令は、プロセッサ171に、第1ネットワーク機器に適用される上記のいずれかのパケット伝送方法のステップを実現させる。
【0185】
上記のパケット伝送方法に対応して、本願の実施例は、ネットワーク機器をさらに提供し、
図18に示すように、当該ネットワーク機器は、プロセッサ181と機械可読記憶媒体182を備え、機械可読記憶媒体182にプロセッサ181によって実行可能な機械実行可能な命令が記憶されており、機械実行可能な命令は、プロセッサ181に、コントローラに適用される上記のいずれかのパケット伝送方法のステップを実現させる。
【0186】
機械可読記憶媒体は、ランダムアクセスメモリ(Random Access Memory,RM)を含んでよく、不揮発性メモリ(Non-Volatile Memory,NVM)を含んでもよく、例えば、少なくとも1つのディスクメモリを含んでよい。選択的に、機械可読記憶媒体は、上記のプロセッサから離れた少なくとも1つの記憶装置であってよい。
【0187】
プロセッサは、中央処理装置(Central Processing Unit,CPU)、ネットワークプロセッサー(Network Processor,NP)などを含む汎用プロセッサであってもよく、デジタル信号処理装置(Digital Signal Processing,DSP)、特定用途向け集積回路(Application Specific Integrated Circuit,ASIC)、現場プログラム可能ゲートアレイ(Field-Programmable Gate Array,FPGA)又は他のプログラマブルロジックデバイス、ディスクリートゲートあるいはトランジスタロジックデバイス、ディスクリートハードウェアコンポーネントであってもよい。
【0188】
本願に係る別の実施例において、コンピューター可読記憶媒体をさらに提供し、当該コンピューター可読記憶媒体にコンピュータープログラムが記憶されており、前記コンピュータープログラムは、プロセッサよって実行されると、第1ネットワーク機器に適用される上記のいずれかのパケット伝送方法のステップを実現し、またはコントローラに適用される上記のいずれかのパケット伝送方法のステップを実現する。
【0189】
本願に係る別の実施例において、コンピュータープログラムをさらに提供し、前記コンピュータープログラムがコンピューター上で実行されると、コンピューターに、第1ネットワーク機器に適用される上記のいずれかのパケット伝送方法のステップを実行させ、またはコントローラに適用される上記のいずれかのパケット伝送方法のステップを実行させる。
【0190】
上記実施例において、全部または一部的に、ソフトウェア、ハードウェア、ファームウェア、又はこれらの任意の組み合わせによって実現することができる。ソフトウェアによって実現する場合、全部または一部的に、コンピュータープログラム製品の形態で実現することができる。上記コンピュータープログラム製品は、1つ又は複数のコンピューター命令を含む。コンピューター上で上記コンピュータープログラム命令がロードされて実行されると、本願の実施例に記載されたプロセス又は機能が全部又は一部的に生成される。上記のコンピューターは、汎用コンピューター、専用コンピューター、コンピューターネットワーク、又は他のプログラマブルデバイスであってよい。上記のコンピューター命令は、コンピューター読取可能な記憶媒体に記憶されてもよく、又は、1つのコンピューター読取可能な記憶媒体から別のコンピューター読取可能な記憶媒体に送信されてもよい。例えば、該コンピューター命令は、1つのウェブサイト、コンピューター、サーバー、又はデータセンターから、有線(例えば、同軸ケーブル、光ファイバ、デジタル加入者線(DSL))又は無線(例えば、赤外線、ワイヤーレス、マイクロウェーブなど)によって、別のウェブサイト、コンピューター、サーバー、又はデータセンターに送信することができる。上記のコンピューター読取可能な記憶媒体は、コンピューターがアクセス可能な任意の利用可能な媒体、或いは、1つ又は複数の利用可能な媒体を一体化したサーバー、データセンターなどを含むデータ記憶装置であってよい。上記利用可能な媒体は、磁気媒体(例えば、フロッピーディスク、ハードディスク、磁気テープ)、光学媒体(例えば、DVD)、又は半導体媒体(例えば、ソリッドステートドライブ(Solid State Disk,SSD))等であってもよい。
【0191】
なお、本明細書において、「第1」や「第2」等のような関係用語は、1つのエンティティ又は操作を他のエンティティ又は操作と区別するためのもの過ぎず、必ずしもこれらのエンティティ又は操作の間にこのような実際的な関係又は順序があることを要求又は示唆しない。また、用語「備える」、「含む」、又はその他の変形は、非排他的に含むことをカバーすることで、一連の要素を含むプロセス、方法、物品、又はデバイスがそれらの要素を含むだけでなく、明示的に列挙されていない他の要素をさらに含み、或いは、このようなプロセス、方法、物品又はデバイスに固有される要素をさらに含むことを意図する。特に制限がない限り、「1つの…を含む」という文により限定される要素は、上記要素を含むプロセス、方法、物品又はデバイスにさらに他の同一の要素を有することを排除するものではない。
【0192】
なお、本明細書における各実施例は、相互に関連するように記載されているが、各実施例間の同一又は類似の部分は、互いに参照すればよく、各実施例における重要な説明は、他の実施例との相違点である。特に、装置、ネットワーク機器、コントローラ、コンピューター可読記憶媒体およびコンピュータープログラムの実施例に対し、方法の実施例にほぼ類似するので、説明が簡単であり、関連する部分は方法の実施例の部分の説明を参照すればよい。
【0193】
以上の説明は、本願の好適な実施例にすぎず、本願の保護範囲を限定するものではない。本願の精神及び原則の範囲内で行われた任意の補正、同等の置換、改良等は、いずれも本願の保護範囲内に含まれる。
【国際調査報告】