(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-04-05
(45)【発行日】2024-04-15
(54)【発明の名称】サービスレベル調整方法および装置、デバイス、ならびに記憶媒体
(51)【国際特許分類】
H04L 41/5025 20220101AFI20240408BHJP
【FI】
H04L41/5025
(21)【出願番号】P 2022544403
(86)(22)【出願日】2021-01-22
(86)【国際出願番号】 CN2021073420
(87)【国際公開番号】W WO2021148020
(87)【国際公開日】2021-07-29
【審査請求日】2022-09-01
(31)【優先権主張番号】202010075494.5
(32)【優先日】2020-01-22
(33)【優先権主張国・地域又は機関】CN
(31)【優先権主張番号】202010636735.9
(32)【優先日】2020-07-03
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】503433420
【氏名又は名称】華為技術有限公司
【氏名又は名称原語表記】HUAWEI TECHNOLOGIES CO.,LTD.
【住所又は居所原語表記】Huawei Administration Building, Bantian, Longgang District, Shenzhen, Guangdong 518129, P.R. China
(74)【代理人】
【識別番号】100110364
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133569
【氏名又は名称】野村 進
(72)【発明者】
【氏名】▲陳▼ 爽
(72)【発明者】
【氏名】李 磊
(72)【発明者】
【氏名】▲ゴン▼ ▲釣▼
(72)【発明者】
【氏名】常 ▲曉▼▲東▼
【審査官】大石 博見
(56)【参考文献】
【文献】特開2003-110605(JP,A)
【文献】特開2002-344509(JP,A)
【文献】特開2002-135329(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 41/5025
(57)【特許請求の範囲】
【請求項1】
サービスレベル調整方法であって、
第1のネットワークデバイスによって、前記第1のネットワークデバイスのターゲットサービスレベルで少なくとも1つのキューステータス情報を取得するステップと、
前記少なくとも1つのキューステータス情報のいずれか1つが
任意の前記キューステータス情報に対応する第1の閾値上限を超える場合に、前記第1のネットワークデバイスによって、前記ターゲットサービスレベルに関連付けられた最大遅延に基づいて前記ターゲットサービスレベルのパラメータを調整するステップと
、を含み、
前記ターゲットサービスレベルに関連付けられた最大遅延に基づいて前記ターゲットサービスレベルのパラメータを調整する前記ステップが、
前記ターゲットサービスレベルの前記パラメータの更新値を決定するステップと、
前記最大遅延が変化しないまま であるときに、前記ターゲットサービスレベルの前記パラメータの前記更新値がローカルターゲットリソースの制約条件を満たす場合、前記ターゲットサービスレベルの前記パラメータの前記更新値に基づいて前記ターゲットサービスレベルの前記パラメータを調整するステップであって、前記
ローカルターゲットリソースは前記ターゲットサービスレベルによってプリエンプトされ得るリソースである、ステップと、を含み、
前記ターゲットサービスレベルの前記パラメータの前記更新値に基づいて前記ターゲットサービスレベルの前記パラメータを調整する前記ステップの後に、前記方法が、
任意の前記キューステータス情報が第1の時間閾値内に第2の閾値上限を超えない場合、前記ターゲットサービスレベルの前記パラメータを前記更新値から前記更新値への調整前に存在していた値に戻すように調整するステップを
さらに含む、方法。
【請求項2】
前記ターゲットサービスレベルの前記パラメータの前記更新値に基づいて前記ターゲットサービスレベルの前記パラメータを調整する前記ステップの後に、前記方法が、
任意の前記キューステータス情報が第1の時間閾値内に第3の閾値上限を超える場合、前記ターゲットサービスレベルの更新情報を制御デバイスに報告するステップであって、前記更新情報は前記ターゲットサービスレベルの前記パラメータの前記更新値を含む、ステップ
をさらに含む
、請求項
1に記載の方法。
【請求項3】
前記ターゲットサービスレベルに関連付けられた最大遅延に基づいて前記ターゲットサービスレベルのパラメータを調整する前記ステップが、
前記ターゲットサービスレベルの前記パラメータの更新値を決定するステップと、
前記最大遅延が変化しないままであるときに、前期ターゲットサービスレベルの前記パラメータの更新値がローカルターゲットリソースの制約条件を満たさない場合、制御デバイスに例外情報を報告するステップであって、前記
ローカルターゲットリソースは、前記ターゲットサービスレベルによってプリエンプトされ得るリソースである、ステップと、
前記ターゲットサービスレベルの前記パラメータの、前記制御デバイスによって送信された第1の調整値を受信するステップであって、前記第1の調整値は前記例外情報に基づいて取得される、ステップと、
前記ターゲットサービスレベルの前記パラメータの前記第1の調整値に基づいて前記ターゲットサービスレベルの前記パラメータを調整するステップと
を含む、請求項1に記載の方法。
【請求項4】
前記ターゲットサービスレベルの前記パラメータが、キューリソースパラメータおよびデータフロー制約パラメータを含み、
前記ターゲットサービスレベルの前記パラメータの更新値を決定する前記ステップは、
実際に到着するデータフローに基づいて前記ターゲットサービスレベルの前記データフロー制約パラメータの更新値を決定するステップと、
前記最大遅延が変化しないままであるときに、前記ターゲットサービスレベルの前記データフロー制約パラメータの前記更新値に基づいて、前記ターゲットサービスレベルの前記キューリソースパラメータの更新値を決定するステップと、
を含む、
請求項
1から3のいずれか一項に記載の方法。
【請求項5】
前記ターゲットサービスレベルの前記キューリソースパラメータが、キュー帯域幅およびキューバッファ
サイズを含み、
前記最大遅延が変化しないままであるときに、前記ターゲットサービスレベルの前記データフロー制約パラメータの前記更新値に基づいて、前記ターゲットサービスレベルの前記キューリソースパラメータの更新値を決定する前記ステップは、
前記最大遅延が変化しないままであるときに、前記ターゲットサービスレベルに対応するポートの帯域幅、前記ターゲットサービスレベルが調整された後に転送され得る最大データ量、前記ターゲットサービスレベルが調整される前に前記第1のネットワークデバイスの各サービスレベルで転送され得る最大データ量、および各サービスレベルに対応するキューの最大パケット長を決定するステップと、
前記ターゲットサービスレベルに対応する前記ポートの前記帯域幅、前記ターゲットサービスレベルが調整された後に転送され得る前記最大データ量、および前記ターゲットサービスレベルが調整される前に各サービスレベルで転送され得る前記最大データ量に基づいて、前記ターゲットサービスレベルの前記キュー帯域幅を決定するステップと、
前記ターゲットサービスレベルが調整される前に各サービスレベルで転送され得る前記最大データ量、各サービスレベルに対応する前記キューの前記最大パケット長、前記ターゲットサービスレベルにおけるデータフローのバースト量の閾値の更新値、および前記データフローの平均レートの閾値の更新値に基づいて前記ターゲットサービスレベルの前記キューバッファ
サイズを決定するステップと、
を含む、
請求項
4に記載の方法。
【請求項6】
前記ターゲットサービスレベルに対応する前記ポートの前記帯域幅、前記ターゲットサービスレベルが調整された後に前記ターゲットサービスレベルで転送され得る前記最大データ量、および前記ターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る前記最大データ量に基づいて、前記ターゲットサービスレベルの前記キュー帯域幅を決定する前記ステップが、
前記ターゲットサービスレベルに対応する前記ポートの前記帯域幅、前記ターゲットサービスレベルが調整された後に前記ターゲットサービスレベルで転送され得る前記最大データ量、および前記ターゲットサービスレベルが調整される前に前記複数のサービスレベルの各々で転送され得る前記最大データ量に基づいて、以下の式に従って前記ターゲットサービスレベルの前記キュー帯域幅
【数1】
を決定するステップであって、
【数2】
Cは前記ターゲットサービスレベルに対応する前記ポートの前記帯域幅であり、
【数3】
は前記ターゲットサービスレベルが調整された後に転送され得る前記最大データ量であり、Q
jはj番目のサービスレベルで転送され得る最大データ量であり、
【数4】
は前記ターゲットサービスレベルが調整される前に転送され得る最大データ量であり、
【数5】
は前記ターゲットサービスレベルが調整される前に非遅延保証キューで転送され得る最大データ量であり、nは1より大きい正の整数である、ステップ
を含む、請求項
5に記載の方法。
【請求項7】
前記ターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る前記最大データ量、前記複数のサービスレベルの各々に対応する前記キューの前記最大パケット長、前記ターゲットサービスレベルでのデータフローのバースト量の閾値の更新値、および前記データフローの平均レートの閾値の更新値に基づいて、前記ターゲットサービスレベルの前記キューバッファ
サイズを決定する前記ステップが、
前記ターゲットサービスレベルが調整される前に前記複数のサービスレベルの各々で転送され得る前記最大データ量、前記複数のサービスレベルの各々に対応する前記キューの前記最大パケット長、前記ターゲットサービスレベルでの前記データフローの前記バースト量の前記閾値の前記更新値、および前記データフローの前記平均レートの前記閾値の前記更新値に基づいて、以下の式に従って前記ターゲットサービスレベルの前記キューバッファ
サイズBF
i
2を決定するステップであって、
【数6】
Cは、前記ターゲットサービスレベルに対応する前記ポートの前記帯域幅であり、
【数7】
は、前記ターゲットサービスレベルが調整された後に転送され得る前記最大データ量であり、Q
jは、j番目のサービスレベルで転送され得る最大データ量であり、
Q
n+1
2
は、前記ターゲットサービスレベルが調整された後に非遅延保証キューで転送され得る最大データ量であり、L
max,Lは、優先度の低いキューの最大パケット長であり、L
n+1は、前記非遅延保証キューの最大パケット長であり、L
jは、前記j番目のサービスレベルのキューの最大パケット長であり、b
i
2は、前記データフローの前記バースト量の前記閾値の前記更新値であり、r
i
2は、前記データフローの前記平均レートの前記閾値の前記更新値であり、L
iは前記ターゲットサービスレベルでのキューの最大パケット長であり、nは1より大きい正の整数である、ステップ
を含む、請求項
5に記載の方法。
【請求項8】
前記キューステータス情報が、キューバッファ占有、パケットキューイング遅延、およびキューパケットカウントのうちの1つまたは複数を含む、
請求項1から
3のいずれか一項に記載の方法。
【請求項9】
サービスレベル調整装置であって、
ターゲットサービスレベルで少なくとも1つのキューステータス情報を取得するように構成された取得ユニットと、
前記少なくとも1つのキューステータス情報のいずれか1つが
任意の前記キューステータス情報に対応する第1の閾値上限を超える場合に、前記ターゲットサービスレベルに関連付けられた最大遅延に基づいて前記ターゲットサービスレベルのパラメータを調整するように構成された、調整ユニット
と、を備え、
前記調整ユニットが、前記ターゲットサービスレベルの前記パラメータの更新値を決定し、前記最大遅延が変化しないままであるときに、前記ターゲットサービスレベルの前記パラメータの前記更新値がローカルターゲットリソースの制約条件を満たす場合、前記ターゲットサービスレベルの前記パラメータの前記更新値に基づいて前記ターゲットサービスレベルの前記パラメータを調整し、前記
ローカルターゲットリソースは前記ターゲットサービスレベルによってプリエンプトされ得るリソースである、ように構成さ
れ、
前記調整ユニットが、
任意の前記キューステータス情報が第1の時間閾値内に第2の閾値上限を超えない場合、前記ターゲットサービスレベルの前記パラメータを前記更新値から前記更新値への調整前に存在していた値に戻すように調整するようにさらに構成される
、
装置。
【請求項10】
前記装置が、
任意の前記キューステータス情報が第1の時間閾値内の第3の閾値上限を超える場合に、前記ターゲットサービスレベルの更新情報を制御デバイスに報告するように構成された報告ユニットであって、前記更新情報は、前記ターゲットサービスレベルの前記パラメータの前記更新値を含む、報告ユニット
をさらに備える、請求項
9に記載の装置。
【請求項11】
前記調整ユニットが、前記ターゲットサービスレベルの前記パラメータの更新値を決定し、前記最大遅延が変化しないままであるときに、前記ターゲットサービスレベルの前記パラメータの前記更新値がローカルターゲットリソースの制約条件を満たさない場合、制御デバイスに例外情報を報告し、前記例外情報は、前記対応する第1の閾値上限を超えるキューステータス情報、およびデータフローがアドミッション制約を超えることを示すエラー信号のうちの少なくとも1つを含み、前記
ローカルターゲットリソースは、前記ターゲットサービスレベルによってプリエンプトされ得るリソースであり、前記ターゲットサービスレベルのパラメータの、前記制御デバイスによって送信された第1の調整値を受信し、前記第1の調整値は前記例外情報に基づいて取得され、前記ターゲットサービスレベルの前記パラメータの前記第1の調整値に基づいて前記ターゲットサービスレベルの前記パラメータを調整する、ように構成される、請求項
9に記載の装置。
【請求項12】
前記ターゲットサービスレベルの前記パラメータが、キューリソースパラメータおよびデータフロー制約パラメータを含み、
前記調整ユニットは、実際に到着するデータフローに基づいて前記ターゲットサービスレベルの前記データフロー制約パラメータの更新値を決定し、前記最大遅延が変化しないままであるときに、前記ターゲットサービスレベルの前記データフロー制約パラメータの前記更新値に基づいて、前記ターゲットサービスレベルの前記キューリソースパラメータの更新値を決定するように構成される、
請求項
9から
11のいずれか一項に記載の装置。
【請求項13】
前記ターゲットサービスレベルの前記キューリソースパラメータがキュー帯域幅およびキューバッファ
サイズを含み、前記ターゲットサービスレベルの前記データフロー制約パラメータがデータフローのバースト量の閾値および前記データフローの平均レートの閾値を含み、
前記調整ユニットは、前記最大遅延が変化しないままであるときに、前記ターゲットサービスレベルに対応するポートの帯域幅、前記ターゲットサービスレベルが調整された後に前記ターゲットサービスレベルで転送され得る最大データ量、前記ターゲットサービスレベルが調整される前に前記
装置の複数のサービスレベルの各々で転送され得る最大データ量、および前記複数のサービスレベルの各々に対応するキューの最大パケット長を決定し、
前記ターゲットサービスレベルに対応する前記ポートの前記帯域幅、前記ターゲットサービスレベルが調整された後に前記ターゲットサービスレベルで転送され得る前記最大データ量、および前記ターゲットサービスレベルが調整される前に前記複数のサービスレベルの各々で転送され得る前記最大データ量に基づいて、前記ターゲットサービスレベルの前記キュー帯域幅を決定し、
前記ターゲットサービスレベルが調整される前に前記複数のサービスレベルの各々で転送され得る前記最大データ量、前記複数のサービスレベルの各々に対応する前記キューの前記最大パケット長、前記ターゲットサービスレベルにおけるデータフローのバースト量の閾値の更新値、および前記データフローの平均レートの閾値の更新値に基づいて、前記ターゲットサービスレベルの前記キューバッファ
サイズを決定する、
ように構成される、
請求項
12に記載の装置。
【請求項14】
前記調整ユニットが、前記ターゲットサービスレベルに対応する前記ポートの前記帯域幅、前記ターゲットサービスレベルが調整された後に前記ターゲットサービスレベルで転送され得る前記最大データ量、および前記ターゲットサービスレベルが調整される前に前記複数のサービスレベルの各々で転送され得る前記最大データ量に基づいて、以下の式に従って前記ターゲットサービスレベルの前記キュー帯域幅
【数8】
を決定するように構成され、
【数9】
Cは前記ターゲットサービスレベルに対応する前記ポートの前記帯域幅であり、
【数10】
は前記ターゲットサービスレベルが調整された後に転送され得る前記最大データ量であり、Q
jはj番目のサービスレベルで転送され得る最大データ量であり、
【数11】
は前記ターゲットサービスレベルが調整される前に転送され得る最大データ量であり、
【数12】
は前記ターゲットサービスレベルが調整される前に非遅延保証キューで転送され得る最大データ量であり、nは1より大きい正の整数である、
請求項
13に記載の装置。
【請求項15】
前記調整ユニットが、前記ターゲットサービスレベルが調整される前に前記複数のサービスレベルの各々で転送され得る前記最大データ量、前記複数のサービスレベルの各々に対応する前記キューの前記最大パケット長、前記ターゲットサービスレベルでの前記データフローの前記バースト量の前記閾値の前記更新値、および前記データフローの前記平均レートの前記閾値の前記更新値に基づいて、以下の式に従って前記ターゲットサービスレベルの前記キューバッファ
サイズBF
i
2を決定するように構成され、
【数13】
Cは、前記ターゲットサービスレベルに対応する前記ポートの前記帯域幅であり、
【数14】
は、前記ターゲットサービスレベルが調整された後に転送され得る前記最大データ量であり、Q
jは、j番目のサービスレベルで転送され得る最大データ量であり、
Q
n+1
2
は、前記ターゲットサービスレベルが調整された後に非遅延保証キューで転送され得る最大データ量であり、L
max,Lは、優先度の低いキューの最大パケット長であり、L
n+1は、前記非遅延保証キューの最大パケット長であり、L
jは、前記j番目のサービスレベルのキューの最大パケット長であり、b
i
2は、前記データフローの前記バースト量の前記閾値の前記更新値であり、r
i
2は、前記データフローの前記平均レートの前記閾値の前記更新値であり、L
iは前記ターゲットサービスレベルでのキューの最大パケット長であり、nは1より大きい正の整数である、
請求項
13に記載の装置。
【請求項16】
前記キューステータス情報が、キューバッファ占有、パケットキューイング遅延、およびキューパケットカウントのうちの1つまたは複数を含む、請求項
9から11のいずれか一項に記載の装置。
【請求項17】
メモリおよびプロセッサを備えるネットワークデバイスであって、
請求項1から
8のいずれか一項に記載の方法を実施するために、前記メモリは、コンピュータプログラムまたは少なくとも1つの命令を格納し、前記コンピュータプログラムまたは前記少なくとも1つの命令は、前記プロセッサによってロードされ実行される、
ネットワークデバイス。
【請求項18】
コンピュータプログラムまたは命令を含むコンピュータ可読媒体であって、前記コンピュータプログラムまたは前記命令がコンピュータ上で実行されると、前記コンピュータは、請求項1から
8のいずれか一項に記載の方法を実行することが可能になる、コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、2020年1月22日に中国国家知識産権局に出願された「METHOD,DEVICE,AND SYSTEM FOR DYNAMICALLY ADJUSTING SERVICE LEVEL」という名称の中国特許出願第202010075494.5号の優先権を主張し、2020年7月3日に出願された「SERVICE LEVEL ADJUSTMENT METHOD AND APPARATUS,DEVICE,AND STORAGE MEDIUM」という名称の中国特許出願第202010636735.9号の優先権を主張し、その全体が参照により本明細書に組み込まれる。
【0002】
本出願は、通信分野に関し、特に、サービスレベル調整方法および装置、デバイス、ならびに記憶媒体に関する。
【背景技術】
【0003】
新興の第5世代(fifth-generation、5G)超高信頼低遅延通信(ultra-reliable low-latency communication、URLLC)サービスは、インターネットプロトコル(internet protocol、IP)ネットワークに対してより高い要件を課す。従来の到達可能性および帯域幅保証に加えて、定量化可能なエンドツーエンド遅延およびパケット損失率保証がさらに提供される必要がある。具体的には、このタイプのサービスでは、パケットのエンドツーエンド遅延が、特定の最大遅延を超えず、パケット損失が発生しないという要件を厳密に満たすこと、またはエンドツーエンド遅延が、特定の最大遅延を特定の確率で超えないという要件を満たすことを保証する必要がある。しかしながら、従来のベストエフォートベースのIPネットワークは、決定論的なサービス転送能力を提供することができず、保証されたエンドツーエンド遅延要件を満たすことができない。
【発明の概要】
【0004】
本出願は、サービスのエンドツーエンド遅延要件を保証しながらネットワークリソース利用を改善するために、サービスレベル調整方法および装置、デバイス、ならびに記憶媒体を提供する。
【課題を解決するための手段】
【0005】
第1の態様によれば、サービスレベル調整方法が提供される。例えば、第1のネットワークデバイスが方法を実行する。本方法は、第1のネットワークデバイスが、ターゲットサービスレベルで少なくとも1つのキューステータス情報を取得するステップを含む。少なくとも1つのキューステータス情報のいずれか1つが任意のキューステータス情報に対応する第1の閾値上限を超えると、第1のネットワークデバイスは、ターゲットサービスレベルに関連付けられた最大遅延に基づいてターゲットサービスレベルのパラメータを調整する。
【0006】
ターゲットサービスレベルのキューステータス情報が対応する閾値上限を超えると、第1のネットワークデバイスは、関連する最大遅延に基づいてターゲットサービスレベルのパラメータを調整し、その結果、サービスのエンドツーエンド遅延が保証されながら、ネットワークリソース利用がさらに改善される。
【0007】
可能な実装形態では、ターゲットサービスレベルに関連付けられた最大遅延に基づいてターゲットサービスレベルのパラメータを調整するステップは、ターゲットサービスレベルのパラメータの更新値を決定するステップと、最大遅延が変化しないままであるときに、ターゲットサービスレベルのパラメータの更新値がローカルターゲットリソースの制約条件を満たす場合、ターゲットサービスレベルのパラメータの更新値に基づいてターゲットサービスレベルのパラメータを調整するステップであって、ターゲットリソースはターゲットサービスレベルによってプリエンプトされ得るリソースである、ステップと、を含む。
【0008】
可能な実装形態では、ターゲットサービスレベルのパラメータの更新値に基づいてターゲットサービスレベルのパラメータを調整するステップの後に、本方法は、任意のキューステータス情報が第1の時間閾値内に第2の閾値上限を超えない場合、ターゲットサービスレベルのパラメータを更新値から更新値への調整前に存在していた値に戻すように調整するステップをさらに含む。
【0009】
可能な実装形態では、ターゲットサービスレベルのパラメータの更新値に基づいてターゲットサービスレベルのパラメータを調整するステップの後に、本方法は、任意のキューステータス情報が第1の時間閾値内に第3の閾値上限を超える場合、ターゲットサービスレベルの更新情報を制御デバイスに報告するステップであって、更新情報はターゲットサービスレベルのパラメータの更新値を含む、ステップをさらに含む。
【0010】
可能な実装形態では、ターゲットサービスレベルに関連付けられた最大遅延に基づいてターゲットサービスレベルのパラメータを調整するステップは、ターゲットサービスレベルのパラメータの更新値を決定するステップと、最大遅延が変化しないままであるときに、ターゲットサービスレベルのパラメータの更新値がローカルターゲットリソースの制約条件を満たさない場合、制御デバイスに例外情報を報告するステップであって、例外情報は、対応する第1の閾値上限を超えるキューステータス情報、およびデータフローがアドミッション制約を超えることを示すエラー信号のうちの少なくとも1つを含み、ターゲットリソースは、ターゲットサービスレベルによってプリエンプトされ得るリソースである、ステップと、ターゲットサービスレベルのパラメータの、制御デバイスによって送信された第1の調整値を受信するステップであって、第1の調整値は例外情報に基づいて取得される、ステップと、ターゲットサービスレベルのパラメータの第1の調整値に基づいてターゲットサービスレベルのパラメータを調整するステップと、を含む。
【0011】
可能な実装形態では、ターゲットサービスレベルのパラメータは、キューリソースパラメータおよびデータフロー制約パラメータを含み、ターゲットサービスレベルのパラメータの更新値を決定するステップは、実際に到着するデータフローに基づいてターゲットサービスレベルのデータフロー制約パラメータの更新値を決定するステップと、最大遅延が変化しないままであるときに、ターゲットサービスレベルのデータフロー制約パラメータの更新値に基づいて、ターゲットサービスレベルのキューリソースパラメータの前記更新値を決定するステップと、を含む。
【0012】
可能な実装形態では、ターゲットサービスレベルのキューリソースパラメータはキュー帯域幅およびキューバッファを含み、ターゲットサービスレベルのデータフロー制約パラメータは、データフローのバースト量の閾値およびデータフローの平均レートの閾値を含み、
最大遅延が変化しないままであるときに、ターゲットサービスレベルのデータフロー制約パラメータの更新値に基づいてターゲットサービスレベルのキューリソースパラメータの更新値を決定するステップは、最大遅延が変化しないままであるときに、ターゲットサービスレベルに対応するポートの帯域幅、ターゲットサービスレベルが調整された後にターゲットサービスレベルで転送され得る最大データ量、ターゲットサービスレベルが調整される前に第1のネットワークデバイスの複数のサービスレベルの各々で転送され得る最大データ量、および複数のサービスレベルの各々に対応するキューの最大パケット長を決定するステップと、ターゲットサービスレベルに対応するポートの帯域幅、ターゲットサービスレベルが調整された後にターゲットサービスレベルで転送され得る最大データ量、およびターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る最大データ量に基づいて、ターゲットサービスレベルのキュー帯域幅を決定するステップと、ターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る最大データ量、複数のサービスレベルの各々に対応するキューの最大パケット長、ターゲットサービスレベルにおけるデータフローのバースト量の閾値の更新値、およびデータフローの平均レートの閾値の更新値に基づいてターゲットサービスレベルのキューバッファを決定するステップと、を含む。
【0013】
可能な実装形態では、ターゲットサービスレベルに対応するポートの帯域幅、ターゲットサービスレベルが調整された後にターゲットサービスレベルで転送され得る最大データ量、およびターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る最大データ量に基づいてターゲットサービスレベルのキュー帯域幅を決定するステップは、ターゲットサービスレベルに対応するポートの帯域幅、ターゲットサービスレベルが調整された後にターゲットサービスレベルで転送され得る最大データ量、およびターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る最大データ量に基づいて、以下の式に従ってターゲットサービスレベルのキュー帯域幅
【数1】
を決定するステップを含む。
【数2】
【0014】
ここで、Cはターゲットサービスレベルに対応するポートの帯域幅であり、
【数3】
はターゲットサービスレベルが調整された後に転送され得る最大データ量であり、Q
jはj番目のサービスレベルで転送され得る最大データ量であり、
【数4】
はターゲットサービスレベルが調整される前に転送され得る最大データ量であり、
【数5】
はターゲットサービスレベルが調整される前に非遅延保証キューで転送され得る最大データ量であり、nは1より大きい正の整数である。
【0015】
可能な実装形態では、ターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る最大データ量、複数のサービスレベルの各々に対応するキューの最大パケット長、ターゲットサービスレベルでのデータフローのバースト量の閾値の更新値、およびデータフローの平均レートの閾値の更新値に基づいてターゲットサービスレベルのキューバッファを決定するステップは、
ターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る最大データ量、複数のサービスレベルの各々に対応するキューの最大パケット長、ターゲットサービスレベルでのデータフローのバースト量の閾値の更新値、およびデータフローの平均レートの閾値の更新値に基づいて、以下の式に従ってターゲットサービスレベルのキューバッファBF
i
2を決定するステップ
を含む。
【数6】
【0016】
ここで、Cはターゲットサービスレベルに対応するポートの帯域幅であり、
【数7】
はターゲットサービスレベルが調整された後に転送され得る最大データ量であり、Q
jはj番目のサービスレベルで転送され得る最大データ量であり、
【数8】
はターゲットサービスレベルが調整される前に転送され得る最大データ量であり、
【数9】
はターゲットサービスレベルが調整される前に非遅延保証キューで転送され得る最大データ量であり、L
max,Lは優先度の低いキューの最大パケット長であり、L
n+1は非遅延保証キューの最大パケット長であり、L
jはj番目のサービスレベルのキューの最大パケット長であり、b
i
2はデータフローのバースト量の閾値の更新値であり、r
i
2はデータフローの平均レートの閾値の更新値であり、L
iはターゲットサービスレベルでのキューの最大パケット長であり、nは1より大きい正の整数である。
【0017】
可能な実装形態では、本方法は、ターゲットサービスレベルのパラメータの、制御デバイスによって送信された第2の調整値を受信するステップと、ターゲットサービスレベルのパラメータの第2の調整値に基づいてターゲットサービスレベルのパラメータを調整するステップと、を含む。
【0018】
可能な実装形態では、キューステータス情報は、キューバッファ占有、パケットキューイング遅延、およびキューパケットカウントなどの少なくとも1つのキューステータス情報を含む。
【0019】
第2の態様によれば、サービスレベル調整装置が提供される。本装置は、
ターゲットサービスレベルで少なくとも1つのキューステータス情報を取得するように構成された取得ユニットと、
少なくとも1つのキューステータス情報のいずれか1つが任意のキューステータス情報に対応する第1の閾値上限を超える場合に、ターゲットサービスレベルに関連付けられた最大遅延に基づいてターゲットサービスレベルのパラメータを調整するように構成された、調整ユニットと
を含む。
【0020】
可能な実装形態では、調整ユニットは、ターゲットサービスレベルのパラメータの更新値を決定し、最大遅延が変化しないままであるときに、ターゲットサービスレベルのパラメータの更新値がローカルターゲットリソースの制約条件を満たす場合、ターゲットサービスレベルのパラメータの更新値に基づいてターゲットサービスレベルのパラメータを調整し、ターゲットリソースはターゲットサービスレベルによってプリエンプトされ得るリソースである、ように構成される。
【0021】
可能な実装形態では、調整ユニットは、任意のキューステータス情報が第1の時間閾値内に第2の閾値上限を超えない場合、ターゲットサービスレベルのパラメータを更新値から更新値への調整前に存在していた値に戻すように調整するようにさらに構成される。
【0022】
可能な実装形態では、装置は、任意のキューステータス情報が第1の時間閾値内の第3の閾値上限を超える場合に、ターゲットサービスレベルの更新情報を制御デバイスに報告するように構成された報告ユニットをさらに含み、更新情報は、ターゲットサービスレベルのパラメータの更新値を含む。
【0023】
可能な実装形態では、調整ユニットは、ターゲットサービスレベルのパラメータの更新値を決定し、最大遅延が変化しないままであるときに、ターゲットサービスレベルのパラメータの更新値がローカルターゲットリソースの制約条件を満たさない場合、制御デバイスに例外情報を報告し、例外情報は、対応する第1の閾値上限を超えるキューステータス情報、およびデータフローがアドミッション制約を超えることを示すエラー信号のうちの少なくとも1つを含み、ターゲットリソースは、ターゲットサービスレベルによってプリエンプトされ得るリソースであり、ターゲットサービスレベルのパラメータの、制御デバイスによって送信された第1の調整値を受信し、第1の調整値は例外情報に基づいて取得され、ターゲットサービスレベルのパラメータの第1の調整値に基づいてターゲットサービスレベルのパラメータを調整する、ように構成される。
【0024】
可能な実装形態では、ターゲットサービスレベルのパラメータは、キューリソースパラメータおよびデータフロー制約パラメータを含む。調整ユニットは、実際に到着するデータフローに基づいて、ターゲットサービスレベルのデータフロー制約パラメータの更新値を決定し、最大遅延が変更されないままであるときに、ターゲットサービスレベルのデータフロー制約パラメータの更新値に基づいて、ターゲットサービスレベルのキューリソースパラメータの更新値を決定するように構成される。
【0025】
可能な実装形態では、ターゲットサービスレベルのキューリソースパラメータはキュー帯域幅およびキューバッファを含み、ターゲットサービスレベルのデータフロー制約パラメータは、データフローのバースト量の閾値およびデータフローの平均レートの閾値を含む。
【0026】
調整ユニットは、最大遅延が変化しないままであるときに、ターゲットサービスレベルに対応するポートの帯域幅、ターゲットサービスレベルが調整された後にターゲットサービスレベルで転送され得る最大データ量、ターゲットサービスレベルが調整される前に第1のネットワークデバイスの複数のサービスレベルの各々で転送され得る最大データ量、および複数のサービスレベルの各々に対応するキューの最大パケット長を決定し、
ターゲットサービスレベルに対応するポートの帯域幅、ターゲットサービスレベルが調整された後にターゲットサービスレベルで転送され得る最大データ量、およびターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る最大データ量に基づいて、ターゲットサービスレベルのキュー帯域幅を決定し、
ターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る最大データ量、複数のサービスレベルの各々に対応するキューの最大パケット長、ターゲットサービスレベルにおけるデータフローのバースト量の閾値の更新値、およびデータフローの平均レートの閾値の更新値に基づいてターゲットサービスレベルのキューバッファを決定する
ように構成される。
【0027】
可能な実装形態では、調整ユニットは、ターゲットサービスレベルに対応するポートの帯域幅、ターゲットサービスレベルが調整された後にターゲットサービスレベルで転送され得る最大データ量、およびターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る最大データ量に基づいて、以下の式に従ってターゲットサービスレベルのキュー帯域幅
【数10】
を決定するように構成される。
【数11】
【0028】
ここで、Cはターゲットサービスレベルに対応するポートの帯域幅であり、
【数12】
はターゲットサービスレベルが調整された後にターゲットサービスレベルで転送され得る最大データ量であり、Q
jはj番目のサービスレベルで転送され得る最大データ量であり、
【数13】
はターゲットサービスレベルが調整される前に転送され得る最大データ量であり、
【数14】
はターゲットサービスレベルが調整される前に非遅延保証キューで転送され得る最大データ量であり、nは1より大きい正の整数である。
【0029】
可能な実装形態では、調整ユニットは、ターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る最大データ量、複数のサービスレベルの各々に対応するキューの最大パケット長、ターゲットサービスレベルでのデータフローのバースト量の閾値の更新値、およびデータフローの平均レートの閾値の更新値に基づいて、以下の式に従ってターゲットサービスレベルのキューバッファBF
i
2を決定するように構成される。
【数15】
【0030】
ここで、Cはターゲットサービスレベルに対応するポートの帯域幅であり、
【数16】
はターゲットサービスレベルが調整された後にターゲットサービスレベルで転送され得る最大データ量であり、Q
jはj番目のサービスレベルで転送され得る最大データ量であり、
【数17】
はターゲットサービスレベルが調整される前に転送され得る最大データ量であり、
【数18】
はターゲットサービスレベルが調整される前に非遅延保証キューで転送され得る最大データ量であり、L
max,Lは優先度の低いキューの最大パケット長であり、L
n+1は非遅延保証キューの最大パケット長であり、L
jはj番目のサービスレベルのキューの最大パケット長であり、b
i
2はデータフローのバースト量の閾値の更新値であり、r
i
2はデータフローの平均レートの閾値の更新値であり、L
iはターゲットサービスレベルでのキューの最大パケット長であり、nは1より大きい正の整数である。
【0031】
可能な実装形態では、本装置は、
ターゲットサービスレベルのパラメータの、制御デバイスによって送信された第2の調整値を受信するように構成された受信ユニット
をさらに含み、
調整ユニットは、ターゲットサービスレベルのパラメータの第2の調整値に基づいてターゲットサービスレベルのパラメータを調整するようにさらに構成される。
【0032】
第3の態様によれば、ネットワークデバイスが提供され、第1の態様の実装形態における方法を実行する。例えば、ネットワークデバイスは、第1の態様の実装形態における方法を実行するように構成されたユニットを含む。
【0033】
第4の態様によれば、コンピュータ可読媒体が提供され、コンピュータプログラムまたは命令を含む。コンピュータプログラムまたは命令がコンピュータ上で実行されると、コンピュータは、第1の態様の実装形態における方法を実行することが可能になる。
【0034】
通信装置が提供される。装置は、トランシーバ、メモリ、およびプロセッサを含む。トランシーバ、メモリ、およびプロセッサは、内部接続チャネルを介して互いに通信し、メモリは、コンピュータプログラムまたは命令を格納するように構成され、プロセッサは、メモリに格納されたコンピュータプログラムまたは命令を実行して、信号を受信するようにトランシーバを制御し、信号を送信するようにトランシーバを制御するように構成される。加えて、プロセッサがメモリに格納されたコンピュータプログラムまたは命令を実行すると、プロセッサは、第1の態様または第1の態様の可能な実装形態のいずれか1つによる方法を実行することが可能になる。
【0035】
例示的な実施形態では、1つまたは複数のプロセッサが存在し、1つまたは複数のメモリが存在する。
【0036】
例示的な実施形態では、メモリはプロセッサと統合されてもよく、またはメモリはプロセッサとは独立して配置される。
【0037】
特定の実装プロセスでは、メモリは、非一時的(non-transitory)メモリ、例えば読み出し専用メモリ(read-only memory,ROM)であってもよい。メモリおよびプロセッサは、1つのチップに統合されてもよいし、または異なるチップに配置されてもよい。メモリの種類、ならびにメモリおよびプロセッサが配置される方式は、本出願の実施形態では限定されない。
【0038】
第5の態様によれば、コンピュータプログラム(製品)が提供される。コンピュータプログラム製品は、コンピュータプログラムコードを含み、コンピュータプログラムコードがコンピュータによって実行されると、コンピュータは、第1の態様または第1の態様の可能な実装形態のいずれか1つによる方法を実行することが可能になる。
【0039】
第6の態様によれば、チップが提供され、プロセッサを含む。プロセッサは、チップがインストールされた通信デバイスが第1の態様または第1の態様の可能な実装形態のいずれか1つによる方法を実行するように、メモリに格納されたコンピュータプログラムまたは命令をメモリから呼び出し、コンピュータプログラムまたは命令を実行するように構成される。
【0040】
第7の態様によれば、別のチップが提供され、入力インターフェースと、出力インターフェースと、プロセッサと、メモリとを含む。入力インターフェース、出力インターフェース、プロセッサ、およびメモリは、内部接続チャネルを介して互いに接続される。プロセッサは、メモリ内のコードを実行するように構成される。コードが実行されると、プロセッサは、第1の態様、または第1の態様の可能な実装形態のいずれか1つによる方法を実行するように構成される。
【図面の簡単な説明】
【0041】
【
図1】本出願の一実施形態によるサービスレベル調整シナリオの概略図である。
【
図2】本出願の一実施形態によるサービスレベル調整シナリオの概略図である。
【
図3】本出願の一実施形態によるサービスレベル調整システムのアーキテクチャの概略図である。
【
図4】本出願の一実施形態によるサービスレベル調整方法のフローチャートである。
【
図5】本出願の一実施形態による、サービスレベルを調整するための出口ポートキューの概略図である。
【
図6】本出願の一実施形態によるサービスレベル調整手順の概略図である。
【
図7】本出願の一実施形態による、サービスレベルを調整するためのネットワーク解析の概略図である。
【
図8】本出願の一実施形態によるサービスレベル調整装置の構造の概略図である。
【
図9】本出願の一実施形態によるネットワークデバイスの構造の概略図である。
【
図10】本出願の一実施形態によるネットワークデバイスの構造の概略図である。
【
図11】本出願の一実施形態による、サービスレベルを動的に調整するためのデバイスの構造の概略図である。
【発明を実施するための形態】
【0042】
サービスレベルベースのネットワーク構成解決策は、サービスデータフローのエンドツーエンド遅延要件を満たすために、ネットワーク解析理論に従って設計される。一例として、
図1に示す概略図が使用される。
図1のネットワークデバイス1、ネットワークデバイス2、およびネットワークデバイス3などの各ネットワークデバイスの各出口ポートは、1つまたは複数のサービスレベルを維持し、帯域幅およびバッファなどの対応するリソースをサービスレベルにバインドされたキューに割り当てる。ネットワークデバイスは、ネットワークデバイスのサービスレベル、関連する最大遅延、関連する信頼係数、および関連するデータフローアドミッション制約などの情報をコントローラに報告する。新しいサービスは、データフローのバースト量の閾値、データフローの平均レートの閾値などを含む、新しいサービスのサブスクライブされたコミットされたデータフローパラメータを提供する必要がある。コントローラは、サービスデータフローのエンドツーエンド遅延要件が満たされることを保証し、選択されたサービスレベルが選択されたサービスレベルのデータフローアドミッション制約を満たすことを保証するために、転送パスを選択すること、およびパス上のネットワークデバイスの各ホップによって入力されるサービスレベルを選択することを含む、各ネットワークデバイスのサービスレベル情報に基づいてサービス展開を実行する。コントローラは、サービスデータフローが指定されたパスおよびサービスレベルに基づいて転送されるように、転送パスおよびサービスレベルの各ホップの選択などの情報をネットワークデバイスにさらに配信する。
【0043】
しかしながら、エンドツーエンド遅延を保証するための現在のサービスレベルベースのQoS技術では、サービスレベル報告機能およびサービス構成配信機能は静的QoS設定のみに基づいて設計され、サービス要件、リアルタイムデータフロー、ネットワークステータスなどが変化したときにQoSを動的に調整するためのサービスレベルベースの技術は考慮されない。静的QoS設定を変更せずに維持することは、関連する条件が変化したときにQoS設定が依然として最適であることを保証することができない。逆に、サービスデータフローのエンドツーエンド遅延が保証されるとき、サービスレベルに基づいてQoSが動的に調整される場合、サービス要件が満たされている間にネットワークリソース利用がさらに改善されて、解決策全体の適用性および有効性を高めることができる。
【0044】
したがって、本出願の実施形態は、サービスレベル調整方法を提供し、その結果、サービス展開ステータス、データフローの実際の到着ステータス、キューステータス情報などの変化に基づいて、キューリソースおよびデータフロー制約などのサービスレベルのパラメータ構成が動的に更新されることができ、データフローが通過するサービスレベルが動的に切り替えられることができ、サービスのエンドツーエンド遅延を保証しながら、ネットワークリソース利用をさらに改善する。
【0045】
例えば、本出願の実施形態で提供されるサービスレベル調整方法は、
図2に示すネットワークシナリオに適用される。ネットワークシナリオは、コントローラ11およびいくつかのネットワークデバイス12を含む。例えば、ネットワークデバイス12は、パケット転送機能を有する1つまたは複数のルータまたはスイッチである。コントローラ11は、サーバ、ネットワークデバイス、またはパス計算もしくはリソース割り当てなどの同じ機能を有する別のソフトウェアもしくはハードウェアエンティティに置き換えられてもよい。本出願のこの実施形態では、説明のための例としてコントローラのみが使用される。
【0046】
図2に示すネットワークシナリオでは、ネットワークデバイス12の各出口ポートに1つまたは複数のサービスレベルが設定され、各サービスレベルは対応するサービス転送能力を提供する。言い換えれば、ネットワークデバイス12によって提供される決定論的サービス転送能力は、ネットワークデバイス12のサービスレベルとして定義される。各サービスレベルは、ネットワークデバイス12内の単一のキューまたはキューのグループにバインドされる。各サービスレベルは、最大遅延に関連付けられている。最大遅延は、ネットワークデバイス12によって、サービスレベルにバインドされたキューに入力されるデータフローを伝送するプロセスで許容される遅延閾値を表す。遅延閾値は、キューイング遅延、処理遅延、および送信遅延などの遅延のうちの1つまたは複数を含む。キューイング遅延は、パケットがキューイングのためのキューに入るのに要する時間期間である。例えば、キューイング遅延は、パケットがキューイングのためにダウンリンクトラフィックマネージャのキューに入るのに必要な時間期間である。送信遅延は、ネットワークデバイスがパケットを送信するのに必要な時間期間、すなわち、パケットの最初のビットを送信してからパケットの最後のビットの送信を完了するまでに必要な時間期間である。処理遅延は、ネットワークデバイスがパケットを受信した後、ネットワークデバイスがパケットヘッダ解析、エラーチェック、およびルート探索などの動作を実行するのに必要な時間期間である。
【0047】
任意選択で、各サービスレベルは信頼係数とさらに関連付けられてもよく、信頼係数は、データフローがサービスレベルを通過するときに生成される遅延が最大遅延を超えない確率を示す。デフォルトでは、信頼係数は100%に設定されてもよく、これは、生成された遅延が厳密に最大遅延の値を超えないことを示す。
【0048】
サービスレベルによってコミットされる最大遅延要件を保証するために、キュー帯域幅、キューバッファなどを含むがこれらに限定されないリソースを、サービスレベルにバインドされたキューに割り当てる必要がある。例えば、ラウンドロビンスケジューリング機構では、キュー帯域幅は、総重みに対するキュー重みの比に出口ポートの帯域幅を乗算した値である。また、制約条件は、キューに入力されるデータフローに対しても設定される必要があり、キューに入るデータフローのバースト量の閾値、データフローの平均レートの閾値などを含むが、これらに限定されない。データフローのバースト量の閾値は、特定の短期間に許容されるデータフローの最大データ量として表され、データフローの平均レートの閾値は、特定の長期間に許容されるデータフローの平均レートの最大値として表される。キューリソースおよびデータフロー制約条件が指定されると、データフローがサービスレベルを通過するときに特定の最大遅延要件を満たすことができることが保証され得る。
【0049】
外部条件が変化した場合、リソース利用を改善するために、キューリソースおよびデータフロー制約などのサービスレベルのパラメータ構成を調整および更新することが考慮され得る。
【0050】
例えば、いくつかのネットワークデバイス12内の第1のネットワークデバイス12のターゲットサービスレベルについて、大量のデータフローがターゲットサービスレベルに入る、例えば、データフローアドミッション制約上限に近づくまたは達すると判定された場合、ターゲットサービスレベルに事前割り当てされた帯域幅およびバッファなどのリソースは不十分である。この場合、ターゲットサービスレベルに関連付けられた最大遅延を変更せずに、ターゲットサービスレベルへのキューリソース、例えば帯域幅およびバッファの割り当てを増やすことが考慮され得る。また、これに対応してデータフロー制約が緩和され、例えば、データフローのバースト量の閾値またはデータフローの平均レートの閾値が増加する。このようにして、リソース利用を改善するために、ターゲットサービスレベルのボトルネックが排除されることができ、より多くのデータフローが収容されることができる。
【0051】
別の例では、いくつかのネットワークデバイス12内の第1のネットワークデバイス12のターゲットサービスレベルについて、少量のデータフローが一定期間にターゲットサービスレベルを通過する場合、例えば、データフローアドミッション制約の上限に達するにはほど遠い場合、ターゲットサービスレベルに事前に割り当てられている帯域幅やバッファなどのリソースはアイドルである。この場合、ターゲットサービスレベルに関連付けられた最大遅延を変更せずに、ターゲットサービスレベルへのリソース、例えば帯域幅およびバッファの割り当てを減らすことが考慮され得る。加えて、データフローアドミッション制約がそれに応じて厳しくされる。第1のネットワークデバイス12のローカルリソースの総量が指定されると、別のサービスレベルへのリソース割り当てを増やすために、ターゲットサービスレベルから解放されたリソースは第1のネットワークデバイス12の別のサービスレベルに転送され得る。これは、これらのサービスレベルがより多くのデータフロー要件に対応し、最終的に全体的なリソース利用を改善するのに役立つ。
【0052】
加えて、外部条件が変化すると、リソース利用を改善するために、パスに沿った展開されたデータフローのサービスレベル選択を調整すること、すなわち、パスに沿ったデータフローによって入力されたサービスレベルに対してイントラデバイスまたはインターデバイス切り替えさえも実行することがさらに考慮され得る。
【0053】
例えば、展開されたデータフローの場合、データフローがパスに沿って通過するターゲットサービスレベルがデータフローアドミッション制約上限に近づくかまたはそれに達すると、より多くのデータフローのさらなる展開が影響を受ける。データフローをターゲットサービスレベルからこのデバイスまたは第2のネットワークデバイスなどの別のデバイスのアイドルサービスレベルに切り替えながら、サービスのエンドツーエンド遅延要件を依然として満たすことができることを保証し、別のデータフローの展開のために元の位置でリソースを解放して、全体的なリソース利用を改善することが考慮され得る。
【0054】
本出願の一実施形態におけるシステムアーキテクチャが
図3に示される。システムアーキテクチャは、コントローラ11およびネットワークデバイス12のユニットモジュールを含む。本出願のこの実施形態では、説明のための例として
図3の1つのネットワークデバイスが使用される。例えば、コントローラ11は、グローバルサービス展開ユニット111、グローバルキュー監視分析ユニット112、グローバル調整トリガユニット113、グローバル
調整計算ユニット114、グローバルサービスレベル切り替えユニット115、およびグローバルサービスレベル維持ユニット116を含むが、これらに限定されない。ネットワークデバイス12は、ローカルキュー監視ユニット121、ローカル調整トリガユニット122、ローカル構成更新計算ユニット123、ローカル構成更新実行ユニット124、およびローカル例外情報報告ユニット125を含むが、これらに限定されない。コントローラ11およびネットワークデバイス12のユニットモジュールの機能については、
図5および
図6に示す方法手順の関連説明を参照されたい。ここでは詳細は説明されない。
【0055】
本出願の実施形態で提供される方法は、ネットワークデバイスがQoS調整手順をローカルにトリガするとき、ネットワークデバイスは、ローカルキューステータス情報に基づいて、ローカルQoS調整をトリガするかどうかを決定するステップと、ネットワークデバイスがQoS調整をトリガすることを決定した場合、ローカルデバイスは、サービスレベルに関連する更新構成を再計算するステップと、計算結果が実行可能である場合、関連するサービスレベルにバインドされたキューに対して関連する構成更新を実行し、同期のためにサービスレベルの構成更新情報をコントローラに報告するか、または計算結果が実行不可能である場合、例外情報をコントローラに報告し、次いでグローバルトリガプロセスをトリガするステップと、を含むが、これらに限定されない。例えば、グローバルにトリガされるQoS調整手順では、コントローラは、グローバルサービスアドミッション、グローバルキュー監視分析、およびローカル例外情報報告などの情報に基づいて、グローバルQoS調整をトリガするかどうかを決定する。コントローラがQoS調整をトリガすることを決定した場合、コントローラは、サービスレベルの構成更新を実行するか、または展開されたデータフローのサービスレベルを切り替える。
【0056】
ネットワークデバイス12によってローカルにトリガされるサービスレベル調整手順は、サービスレベルの構成更新またはデータフローのサービスレベルの切り替え中に、ネットワーク内のデータフローの遅延劣化またはパケット損失が引き起こされないことを保証することができる。例えば、本出願のこの実施形態で提供される方法は、パケット統計多重化に基づくIPネットワーク/ベアラネットワークに適用可能であり、エンドツーエンド遅延を保証するためのサービスレベルベースの解決策の適用性および有効性を改善するのに役立つ。
【0057】
以下では、第1のネットワークデバイスがサービスレベル調整プロセスをトリガする例を使用して、本出願の一実施形態で提供されるサービスレベル調整方法を説明する。
図4に示すように、サービスレベル調整方法は以下のプロセスを含む。
【0058】
401:第1のネットワークデバイスは、第1のネットワークデバイスのターゲットサービスレベルで少なくとも1つのキューステータス情報を取得する。
【0059】
例示的な実施形態では、第1のネットワークデバイスは、第1のネットワークデバイスのポートに対して1つまたは複数のサービスレベルを事前設定し、第1のネットワークデバイスは、第1のネットワークデバイスの複数のサービスレベルでローカルキューステータス情報をリアルタイムで監視して、ターゲットサービスレベルで少なくとも1つのキューステータス情報を取得する。第1のネットワークデバイスの出口ポートに設定されるサービスレベルの数は、本出願の本実施形態では限定されない。1つのサービスレベルが第1のネットワークデバイスの出口ポートに設定される場合、ターゲットサービスレベルは、第1のネットワークデバイスの出口ポートに設定される1つのサービスレベルである。第1のネットワークデバイスの出口ポートに複数のサービスレベルが設定されている場合、ターゲットサービスレベルは、第1のネットワークデバイスの出口ポートに設定されている複数のサービスレベルのいずれか1つである。
【0060】
例えば、各サービスレベルは第1のネットワークデバイス内の1つまたは複数のキューにバインドされ、複数のキューはキューのグループと呼ばれる。ターゲットサービスレベルが第1のネットワークデバイス内のキューのグループにバインドされている場合、ターゲットサービスレベルのキューステータス情報は、ターゲットサービスレベルにバインドされたキューのグループ内の各キューのキューステータス情報であるか、またはターゲットサービスレベルのキューステータス情報は、ターゲットサービスレベルにバインドされたキューのグループの全体的なキューステータス情報である。ターゲットサービスレベルでのキューステータス情報は、ローカルキューバッファ占有、パケットキューイング遅延、およびキューパケットカウントなどの少なくとも1つのキューステータス情報を含むが、これらに限定されない。キューバッファ占有は、ターゲットサービスレベルにバインドされたキュー内のパケットによって占有されるバッファのサイズを表す。パケットキューイング遅延は、ターゲットサービスレベルにバインドされたキューにおけるパケットのキューイング遅延を表し、パケットがバッファに入った時点からパケットがスケジューリングされた時点までの時間間隔を含む。キューパケットカウントは、ターゲットサービスレベルにバインドされたキュー内のパケットの単位時間当たりのデータ量または単位時間当たりのパケット量を表す。
【0061】
ターゲットサービスレベルのキューステータス情報がターゲットサービスレベルにバインドされたキューのグループの全体的なキューステータス情報である場合、キューバッファ占有について、全体的なキューステータス情報は、バウンドキューのグループのキューバッファ占有の合計を指し、すなわち、バウンドキューのグループ内のキューのキューバッファ占有が累積され、得られた結果が全体的なキューステータス情報として使用され;パケットキューイング遅延について、全体的なキューステータス情報は、バウンドキューのグループ内のキューのパケットキューイング遅延の最大値、またはバウンドキューのグループ内のキューのパケットキューイング遅延の平均値を指し;キューパケットカウントについて、全体的なキューステータス情報は、バウンドキューのグループのキューパケットカウントの合計を指し、すなわち、バウンドキューのグループ内のキューのキューパケットカウントが累積され、得られた結果が全体的なキューステータス情報として使用される、ことに留意されたい。
【0062】
402:少なくとも1つのキューステータス情報のいずれか1つが任意のキューステータス情報に対応する第1の閾値上限を超えると、第1のネットワークデバイスは、ターゲットサービスレベルに関連付けられた最大遅延に基づいてターゲットサービスレベルのパラメータを調整する。
【0063】
例えば、キューステータス情報は、ローカルキューバッファ占有、パケットキューイング遅延、およびキューパケットカウントを含む。ターゲットサービスレベルにバインドされたキューのバッファ占有がバッファ占有の第1の閾値上限を超えること、パケットキューイング遅延がパケットキューイング遅延の第1の閾値上限を超えること、または単位時間当たりのパケット数、すなわち、キューパケットカウントがキューパケットカウントの第1の閾値上限を超えることが検出された場合、第1のネットワークデバイスは、ターゲットサービスレベルに関連付けられた最大遅延に基づいてターゲットサービスレベルを調整するようにトリガされる。
【0064】
ターゲットサービスレベルが第1のネットワークデバイス内のキューのグループにバインドされている場合、ターゲットサービスレベルのキューステータス情報が、ターゲットサービスレベルにバインドされたキューのグループ内の各キューのキューステータス情報であるとき、ターゲットサービスレベルの各キューステータス情報に対応する第1の閾値上限は、単一のキューに基づいて設定されてもよく、キューのグループ内のキューの同じキューステータス情報に対応する第1の閾値上限は、同じであっても異なっていてもよいことに留意されたい。ターゲットサービスレベルのキューステータス情報が、ターゲットサービスレベルにバインドされたキューのグループの全体的なキューステータス情報である場合、ターゲットサービスレベルの各キューステータス情報に対応する第1の閾値上限は、キューのグループ内のキューの数に基づいて設定され得る。また、別の方法が使用されてもよい。各タイプのキューステータス情報に対応する第1の閾値上限は、本出願のこの実施形態では限定されない。例えば、バッファ占有の第1の閾値上限、パケットキューイング遅延の第1の閾値上限、およびキューパケットカウントの第1の閾値上限は、経験に基づいて設定されてもよく、または適用シナリオに基づいて構成および更新されてもよい。
【0065】
どのタイプのキューステータス情報が対応する第1の閾値上限を超えるかにかかわらず、少なくとも1つのキューステータス情報のいずれか1つが任意のキューステータス情報に対応する第1の閾値上限を超える場合、第1のネットワークデバイスは、ターゲットサービスレベルのパラメータをローカルに調整するようにトリガされ得る。本出願のこの実施形態では、最大遅延は、ネットワークデバイスによって、サービスレベルにバインドされたキューに入力されるデータフローを伝送するプロセスで許可される遅延閾値を表し、最大遅延は、ネットワークデバイスによって、サービスレベルにバインドされたキューに入力されるデータフローを転送するプロセスで許可される遅延を含む。遅延閾値は、第1のネットワークデバイスのキューイング遅延、処理遅延、および送信遅延などの遅延のうちの1つまたは複数を含む。したがって、ターゲットサービスレベルに関連付けられた最大遅延は、検出されたキューイング遅延またはネットワークデバイスによるデータフローの伝送の遅延に基づいて取得される。あるいは、最大遅延は、コントローラなどの制御デバイスによって構成されてもよい。したがって、ネットワークデバイスは、コントローラから最大遅延を取得する。例えば、ローカルリソースステータスに基づいて、第1のネットワークデバイスが、ターゲットサービスレベルに関連付けられた最大遅延に基づいてターゲットサービスレベルのパラメータを調整することは、以下の2つのケースを含むが、これらに限定されない。
【0066】
ケース1:最大遅延が変化しないままであるときに、ターゲットサービスレベルのパラメータの更新値は、ローカルターゲットリソースの制約条件を満たす。
【0067】
ケース1では、第1のネットワークデバイスがターゲットサービスレベルに関連付けられた最大遅延に基づいてターゲットサービスレベルのパラメータを調整することは、2つのプロセス4021Aおよび4022Aを含むが、これらに限定されない。
【0068】
4021A:ターゲットサービスレベルのパラメータの更新値を決定する。
【0069】
例えば、ターゲットサービスレベルのパラメータは、キューリソースパラメータおよびデータフロー制約パラメータを含む。ターゲットサービスレベルのパラメータの更新値を決定するステップは、実際に到着するデータフローに基づいてターゲットサービスレベルのデータフロー制約パラメータの更新値を決定するステップと、最大遅延が変化しないままであるときに、ターゲットサービスレベルのデータフロー制約パラメータの更新値に基づいて、ターゲットサービスレベルのキューリソースパラメータの更新値を決定するステップと、を含むが、これらに限定されない。
【0070】
例示的な実装形態では、ターゲットサービスレベルのキューリソースパラメータはキュー帯域幅およびキューバッファを含み、ターゲットサービスレベルのデータフロー制約パラメータは、データフローのバースト量の閾値およびデータフローの平均レートの閾値を含む。最大遅延が変化しないままであるときに、ターゲットサービスレベルのデータフロー制約パラメータの更新値に基づいて、ターゲットサービスレベルのキューリソースパラメータの更新値を決定するステップは、最大遅延が変化しないままであるときに、ターゲットサービスレベルに対応するポートの帯域幅、ターゲットサービスレベルが調整された後にターゲットサービスレベルで転送され得る最大データ量、ターゲットサービスレベルが調整される前に第1のネットワークデバイスの複数のサービスレベルの各々で転送され得る最大データ量、および複数のサービスレベルの各々に対応するキューの最大パケット長を決定するステップと、ターゲットサービスレベルに対応するポートの帯域幅、ターゲットサービスレベルが調整された後にターゲットサービスレベルで転送され得る最大データ量、およびターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る最大データ量に基づいて、ターゲットサービスレベルのキュー帯域幅を決定するステップと、ターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る最大データ量、複数のサービスレベルの各々に対応するキューの最大パケット長、ターゲットサービスレベルにおけるデータフローのバースト量の閾値の更新値、およびデータフローの平均レートの閾値の更新値に基づいてターゲットサービスレベルのキューバッファを決定するステップと、を含むが、これらに限定されない。
【0071】
なお、上述した転送可能な最大データ量は、1回のラウンドロビンスケジューリングで転送され得る最大データ量である。例えば、ターゲットサービスレベルが調整された後にターゲットサービスレベルで転送され得る最大データ量は、ターゲットサービスレベルが調整された後に1回のラウンドロビンスケジューリングで転送され得る最大データ量である。ターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る最大データ量は、ターゲットサービスレベルが調整される前に1回のラウンドロビンスケジューリングにおいて複数のサービスレベルの各々で転送され得る最大データ量である。
【0072】
例示的な実施形態では、例えば、サービスレベルの更新構成は、ネットワーク解析理論に従って計算される。第1のネットワークデバイスの出口ポートキューが
図5に示されている。
図5では、例えば、合計n個のサービスレベルが出口ポートに設定され、各サービスレベルは1つのキューにバインドされている。また、例えば、遅延保証要件のないデータフローを提供するキューがいくつか存在する。簡単に説明すると、遅延保証要件がないキューを表すために1つの仮想キューが使用され、非遅延保証キューと呼ばれる。すべてのサービスレベルに対応するキューと非遅延保証キューはラウンドロビンを介してスケジューリングされる。任意選択で、いくつかの優先度の低いキューがあってもよい。サービスレベルに対応するキューおよび非遅延保証キューは、優先度の高いキューである。各スケジューリング機会において、優先度の高いキューが最初にスケジューリングされ得る。
【0073】
ターゲットサービスレベルに対応するポートの帯域幅、ターゲットサービスレベルが調整された後にターゲットサービスレベルで転送され得る最大データ量、およびターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る最大データ量に基づいてターゲットサービスレベルのキュー帯域幅を決定するステップは、
ターゲットサービスレベルに対応するポートの帯域幅に基づいて、ターゲットサービスレベルが調整された後にターゲットサービスレベルで転送され得る最大データ量、およびターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る最大データ量に基づいて、以下の式に従ってターゲットサービスレベルのキュー帯域幅
【数19】
を決定するステップ
を含むが、これに限定されない。
【数20】
【0074】
ここで、Cはターゲットサービスレベルに対応するポートの帯域幅であり、
【数21】
はターゲットサービスレベルが調整された後にターゲットサービスレベルで転送され得る最大データ量であり、Q
jはj番目のサービスレベルで転送され得る最大データ量であり、
【数22】
はターゲットサービスレベルが調整される前に転送され得る最大データ量であり、
【数23】
はターゲットサービスレベルが調整される前に非遅延保証キューで転送され得る最大データ量であり、nは1より大きい正の整数であり、iとjは正の整数であり、iはターゲットサービスレベルに対応し、jはj番目のサービスレベルに対応する。
【0075】
ターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る最大データ量、複数のサービスレベルの各々に対応するキューの最大パケット長、ターゲットサービスレベルでのデータフローのバースト量の閾値の更新値、およびデータフローの平均レートの閾値の更新値に基づいてターゲットサービスレベルのキューバッファを決定するステップは、ターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る最大データ量、複数のサービスレベルの各々に対応するキューの最大パケット長、ターゲットサービスレベルでのデータフローのバースト量の閾値の更新値、およびデータフローの平均レートの閾値の更新値に基づいて、以下の式に従ってターゲットサービスレベルのキューバッファ
【数24】
を決定するステップを含むが、これに限定されない。
【数25】
【0076】
ここで、L
max,Lは優先度の低いキューの最大パケット長であり、L
n+1は非遅延保証キューの最大パケット長であり、L
jはj番目のサービスレベルにおけるキューの最大パケット長であり、
【数26】
はデータフローのバースト量の閾値の更新値であり、
【数27】
はデータフローの平均レートの閾値の更新値であり、L
iはターゲットサービスレベルにおけるキューの最大パケット長である。
【0077】
ターゲットサービスレベルのキュー帯域幅
【数28】
およびターゲットサービスレベルのキューバッファ
【数29】
を決定するために使用される前述のパラメータを取得する方法については、
図6に示す手順の関連説明を参照されたい。ここでは詳細は説明されない。
【0078】
4022A:最大遅延が変化しないままであるときに、ターゲットサービスレベルのパラメータの更新値がローカルターゲットリソースの制約条件を満たす場合、ターゲットサービスレベルのパラメータの更新値に基づいてターゲットサービスレベルのパラメータを調整し、ターゲットリソースはターゲットサービスレベルによってプリエンプトされ得るリソースである。
【0079】
図5に示されたキューの概略図に基づいて、本出願のこの実施形態では、ターゲットリソースは、非遅延保証キューの、プリエンプトされ得るリソースを含むが、これに限定されない。具体的には、本出願のこの実施形態で提供される方法では、ターゲットサービスレベルが調整される必要がある場合、非遅延保証キューのリソースがプリエンプトされて、ターゲットサービスレベルが調整されるときに必要とされるリソースを満たすことができる。
【0080】
例示的な実施形態では、ターゲットサービスレベルのパラメータがターゲットサービスレベルのパラメータの更新値に基づいて調整された後、任意のキューステータス情報が、第1の時間閾値内に、任意のキューステータス情報に対応する第2の閾値上限を超えない場合、ターゲットサービスレベルのパラメータは、更新値から、更新値への調整前に存在していた値に戻すように調整される。本出願のこの実施形態では、第1の時間閾値および第2の閾値上限の値は制限されない。第2の閾値上限は、第1の閾値上限と同じであってもよいし、異なっていてもよい。第2の閾値上限は、経験に基づいて設定されてもよく、または適用シナリオに基づいて調整されてもよい。この場合、いずれかのキューステータス情報が、第1の時間閾値内に、いずれかのキューステータス情報に対応する第2の閾値上限を超えない場合には、ターゲットサービスレベルのパラメータは更新値から更新値への調整前に存在していた値に戻すように調整されるので、調整に起因してターゲットサービスレベルによってプリエンプトされたリソースが解放され得る。
【0081】
例示的な実施形態では、ターゲットサービスレベルのパラメータの更新値に基づいてターゲットサービスレベルのパラメータが調整された後、任意のキューステータス情報が、第1の時間閾値内で、任意のキューステータス情報に対応する第3の閾値上限を超えると、ターゲットサービスレベルの更新情報が制御デバイスに報告され、更新情報は、ターゲットサービスレベルのパラメータの更新値を含む。第3の閾値上限は、本出願の本実施形態では限定されない。第3の閾値上限は、第2の閾値上限と同じであってもよいし、異なっていてもよい。第3の閾値上限は、経験に基づいて設定されてもよく、または適用シナリオに基づいて調整されてもよい。この場合、ターゲットサービスレベルが調整された後、任意のキューステータス情報が、第1の時間閾値内に、任意のキューステータス情報に対応する第3の閾値上限を超える場合、ターゲットサービスレベルの更新情報が制御デバイスに報告され、その結果、制御デバイスは、グローバル調整を実行するようにトリガされ得る。
【0082】
ケース2:最大遅延が変化しないままであるときに、ターゲットサービスレベルのパラメータの更新値は、ローカルターゲットリソースの制約条件を満たさない。
【0083】
ケース2では、第1のネットワークデバイスがターゲットサービスレベルに関連付けられた最大遅延に基づいてターゲットサービスレベルのパラメータを調整することは、2つのプロセス4021Bおよび4022Bを含むが、これらに限定されない。
【0084】
4021B:ターゲットサービスレベルのパラメータの更新値を決定する。
【0085】
4021Bにおけるターゲットサービスレベルのパラメータの更新値を決定する方法については、4021Aの関連する説明を参照されたい。ここでは詳細を繰り返さない。
【0086】
4022B:最大遅延が変化しないままであるときに、ターゲットサービスレベルのパラメータの更新値がローカルターゲットリソースの制約条件を満たさない場合、制御デバイスに例外情報を報告する。
【0087】
例えば、例外情報は、対応する第1の閾値上限を超えるキューステータス情報、およびデータフローがアドミッション制約を超えることを示すエラー信号のうちの少なくとも1つを含む。
【0088】
キューステータス情報は、キューバッファ占有、パケットキューイング遅延、およびキューパケットカウント情報を含むが、これらに限定されない。
【0089】
4023B:ターゲットサービスレベルのパラメータの、制御デバイスによって送信された第1の調整値を受信し、第1の調整値は例外情報に基づいて取得される。
【0090】
4022Bでは、最大遅延が変化しないままであるときに、ターゲットサービスレベルのパラメータの更新値がローカルターゲットリソースの制約条件を満たさない場合、例外情報が制御デバイスに報告される。したがって、制御デバイスは、例外情報に基づいて第1のネットワークデバイスのターゲットサービスレベルのパラメータを調整することができる。制御デバイスが例外情報に基づいてターゲットサービスレベルのパラメータの第1の調整値を取得する方法は、最大遅延が変化しないままであるときにローカルターゲットリソースの制約条件を満たすことができる限り、本出願のこの実施形態では限定されない。
【0091】
4024B:ターゲットサービスレベルのパラメータの第1の調整値に基づいてターゲットサービスレベルのパラメータを調整する。
【0092】
この場合、ターゲットサービスレベルのパラメータの第1の調整値は、制御デバイスによって決定される。第1の調整値を受信した後、ネットワークデバイスは、第1の調整値に基づいてターゲットサービスレベルのパラメータを調整する。ターゲットサービスレベルのパラメータの第1の調整値は、ターゲットサービスレベルの各パラメータの調整値を含むが、これに限定されない。ターゲットサービスレベルのパラメータがキューリソースパラメータおよびデータフロー制約パラメータを含む例は、依然として使用される。ターゲットサービスレベルのパラメータの第1の調整値は、ターゲットサービスレベルのキューリソースパラメータの第1の調整値およびターゲットサービスレベルのデータフロー制約パラメータの第1の調整値を含む。第1のネットワークデバイスは、キューリソースパラメータの第1の調整値に基づいてキューリソースパラメータを調整し、データフロー制約パラメータの第1の調整値に基づいてデータフロー制約パラメータを調整する。
【0093】
第1のネットワークデバイスが例外情報を報告した後にターゲットサービスレベルのパラメータの調整値を送信することに加えて、制御デバイスは、別の要因に基づいて第1のネットワークデバイスのターゲットサービスレベルのパラメータをさらに調整することができる。したがって、本出願のこの実施形態で提供される方法は、第1のネットワークデバイスが、制御デバイスによって送信された、ターゲットサービスレベルのパラメータの第2の調整値を受信するステップをさらに含む。第1のネットワークデバイスは、ターゲットサービスレベルのパラメータの第2の調整値に基づいてターゲットサービスレベルのパラメータを調整する。ターゲットサービスレベルのパラメータの第2の調整値を決定する方法は、本出願のこの実施形態では限定されない。第2の調整値は、第1の調整値と同じであっても異なっていてもよい。第1の調整値および第2の調整値の値は、本出願のこの実施形態では限定されない。
【0094】
本出願のこの実施形態で提供される方法によれば、ターゲットサービスレベルのキューステータス情報が対応する第1の閾値上限を超えると、第1のネットワークデバイスはターゲットサービスレベルのパラメータを調整し、その結果、サービスのエンドツーエンド遅延が保証されながら、ネットワークリソース利用がさらに改善される。加えて、第1のネットワークデバイスは、ターゲットサービスレベルに関連付けられた最大遅延に基づいてターゲットサービスレベルのパラメータを調整するので、遅延劣化またはパケット損失がネットワークトラフィックによって引き起こされないことを保証することができる。
【0095】
図4に示された方法手順に基づいて、
図3に示されたシステムアーキテクチャは、第1のネットワークデバイスとコントローラとの間のインタラクションのプロセスを使用することによって、本出願のこの実施形態で提供されるサービスレベルを動的に調整するための方法を説明するための例として使用される。
図6に示すように、本方法は以下のプロセス601から608を含む。
【0096】
601:第1のネットワークデバイスのローカルキュー監視ユニット121は、ローカルデバイスの複数のサービスレベルでキューステータス情報をリアルタイムで監視する。
【0097】
例えば、第1のネットワークデバイスのローカルキュー監視ユニット121は、複数のサービスレベルのそれぞれのローカルキューバッファ占有、パケットキューイング遅延、およびキューパケットカウントなどのキューステータス情報を監視する。
【0098】
602:601に基づいて、ローカル調整トリガユニット122は、キューステータス情報に基づいて、ローカルQoS調整をトリガすることを決定する、すなわち、関連するキューのサービスレベルのパラメータの更新をトリガすることを決定する。
【0099】
例えば、ローカルターゲットサービスレベルのキューバッファ占有がキューバッファ占有の第1の閾値上限を超えること、キューパケットキューイング遅延がキューパケットキューイング遅延の第1の閾値上限を超えること、または単位時間当たりの到着パケットの数がキューパケットカウントの第1の閾値上限を超えることが検出された場合、ローカル調整トリガユニット122は、ターゲットサービスレベル内の実際に到着するデータフローの量がデータフローアドミッション制約で指定されたデータフローの量を超えると判定し、ターゲットサービスレベルのキューリソースおよびデータフローアドミッションなどのパラメータの構成更新を増加方向にさらにトリガする。例えば、サービスによって実際に送信されるデータフローのバースト量、平均レートなどは、サブスクリプションコミットメントに従って送信することが許可されるデータフローのバースト量の閾値、およびデータフローの平均レートの閾値などのパラメータをそれぞれ超えるので、ターゲットサービスレベルで実際に到着するデータフローの量は、データフローアドミッション制約で指定されているデータフローの量を超える。ターゲットサービスレベルは、第1のネットワークデバイスの複数のサービスレベルのうちのいずれか1つである。
【0100】
603:602に基づいて、ローカル構成更新計算ユニット123が、キューリソースパラメータの更新値およびデータフロー制約パラメータの更新値を含む、ターゲットサービスレベルのパラメータの更新値を計算する。
【0101】
キューリソースパラメータは、キュー帯域幅およびキューバッファなどを含む。データフロー制約パラメータは、データフローのバースト量の閾値、データフローの平均レートの閾値などを含む。
【0102】
例示的な実施形態では、ローカル構成更新計算ユニット123は、現在のデータフローアドミッション制約を超える実際に到着するデータフローの量に基づいて、データフローのバースト量の、追加される必要がある閾値、データフローの平均レートの、追加される必要がある閾値などを含むがこれらに限定されない、ターゲットサービスレベルの、追加される必要があるデータフローアドミッションを計算し、関連付けられた最大遅延が変更されないままであるときに、追加される必要があるキュー帯域幅、キューバッファなどを含むが、これらに限定されない、ターゲットサービスレベルの、対応して追加される必要があるキューリソースを計算する。
【0103】
例えば、ローカル構成更新計算ユニット123がネットワーク解析理論に従ってサービスレベルの更新構成を計算する場合、原理は
図5に示す出口ポートキューの概略図に示されている。合計n個のサービスレベルが出口ポートに設定され、各サービスレベルは1つのキューにバインドされると考えられる。また、遅延保証要件のないデータフローを提供するキューがいくつか存在することが考えられる。簡単に説明すると、遅延保証要件がないキューを表すために1つの仮想キューが使用され、非遅延保証キューと呼ばれる。すべてのサービスレベルに対応するキューと非遅延保証キューはラウンドロビンを介してスケジューリングされる。任意選択で、いくつかの優先度の低いキューがあってもよい。これに対応して、サービスレベルに対応するキューおよび非遅延保証キューは、優先度の高いキューである。各スケジューリング機会において、優先度の高いキューが最初にスケジューリングされ得る。
【0104】
最大データ量は、キューのラウンドロビンスケジューリングプロセスにおける1回のスケジューリングで転送され得る最大データ量である。例えば、ターゲットサービスレベルはi番目のサービスレベルである。優先度の高いキューにおけるラウンドロビンスケジューリングでは、i番目のサービスレベルの1回のスケジューリングで転送され得る最大データ量をQiとし、非遅延保証キューにおける1回のラウンドロビンスケジューリングで転送され得る最大データ量をQn+1とする。
【0105】
図7に示すように、i番目のサービスレベルの到着曲線関数をα
i(t)、独立変数をtと定義し、任意の時点t
1とt
2との間の間隔t
2-t
1(t
2≧t
1≧0)において、i番目のサービスレベルに到着するデータ量はα
i(t
2-t
1)を超えない。例えば、時点0から時点tまでのi番目のサービスレベルのキューの蓄積データ量をA
i(t)とする。関数α
i(t)が存在する場合、任意の時点t
1およびt
2(t
2≧t
1≧0)について、A
i(t
2)-A
i(t
1)≦α
i(t
2-t
1)が満たされる。この場合、関数α
i(t)は、i番目のサービスレベルの到着曲線関数であると定義される。
【0106】
加えて、i番目のサービスレベルのサービス曲線関数はβi(t)であり、独立変数はtであり、任意の時点t1とt2との間の間隔t2-t1(t2≧t1≧0)において、サービスレベルで正常に転送されたデータの量はβi(t2-t1)以上であると定義される。例えば、時点0から時点tまでにi番目のサービスレベルのキューに送られた蓄積データ量をBi(t)とする。関数βi(t)が存在する場合、任意の時点t1およびt2(t2≧t1≧0)について、Bi(t2)-Bi(t1)≧βi(t2-t1)が満たされる。この場合、関数βi(t)は、i番目のサービスレベルのサービス曲線関数であると定義される。
【0107】
例えば、ターゲットサービスレベルはi番目のサービスレベルである。i番目のサービスレベルを通過するパケットによって生成される最大遅延は、D
i=sup
t≧0{inf{d≧0│α
i(t)≦β
i(t+d)}}と表されてもよい。例えば、ポートの帯域幅はCであり、i番目のサービスレベルの最大遅延要件はD
iであり、i番目のサービスレベルに対応するキューの最大パケット長はL
iである。また、非遅延保証キューの最大パケット長はL
n+1であり、優先度の低いキューの最大パケット長はL
max,Lである。構成更新がi番目のサービスレベルで行われる必要がある場合、構成更新前に毎回i番目のサービスレベルで転送され得る最大データ量は
【数30】
であり、非遅延保証キューで転送され得る最大データ量は
【数31】
であると定義される。i番目のサービスレベルの構成更新の前に、i番目のサービスレベルの出口帯域幅は
【数32】
である。これに対応して、i番目のサービスレベルの構成更新の前に、i番目のサービスレベルの、データフローのバースト量の閾値は
【数33】
であり、平均レートは
【数34】
である。
図7に示すように、
【数35】
は、i番目のサービスレベルの更新前に存在していた到着曲線を表す。この場合、i番目のサービスレベルのサービス曲線
【数36】
は以下のように表される。
【数37】
【0108】
ここで、
【数38】
は、
【数39】
の値と0でより大きな値を取得することであり、T
0は時間オフセットである。例えば、最大遅延D
iが、キューイング遅延、処理遅延、および送信遅延を含む単一のネットワークデバイスによるデータフローの伝送の遅延である場合、T
0は、ネットワークデバイスの処理遅延と送信遅延の合計として定義される。例えば、最大遅延D
iがキューイング遅延であれば、T
0は0と定義される。
【0109】
【数40】
の水平座標切片は
【数41】
であり、勾配は
【数42】
であると定義される。式(1)によれば、詳細は以下の通りである。
【数43】
【数44】
【0110】
また、i番目のサービスレベルの最大遅延D
iの値は、以下のように表される。
【数45】
【0111】
式(2)、式(3)、および式(4)によれば、i番目のサービスレベルの最大遅延D
iの値は、以下のように再表現される。
【数46】
【0112】
これに対応して、構成更新の前に、最大遅延D
iの値の要件を満たすためにi番目のサービスレベルによって必要とされる最小キューバッファサイズ
【数47】
は、以下のように表される。
【数48】
【0113】
ローカル構成更新計算ユニット123が、i番目のサービスレベルの、データフローのバースト量の、新たに追加される必要がある閾値をΔb
iとして計算する場合、データフローのバースト量の更新された閾値は
【数49】
であり、データフローの平均レートの、新たに追加される必要がある閾値をΔr
iとする場合、データフローの平均レートの更新された閾値は
【数50】
である。i番目のサービスレベルの構成更新後、
図7に示すように、
【数51】
はi番目のサービスレベルの更新後に取得されたサービス曲線を表し、
【数52】
の水平座標切片は
【数53】
であり、
【数54】
はi番目のサービスレベルの更新後に取得された到着曲線を表す。この場合、i番目のサービスレベルの最大遅延D
iの値は変更されないままであり、以下のように再表現され得る。
【数55】
【0114】
ここで、
【数56】
は、i番目のサービスレベルがスケジューリングされたときに転送され得る新たに計算された最大データ量、すなわち、ターゲットサービスレベルが調整された後にターゲットサービスレベルで転送され得る最大データ量であり、
【数57】
は、非遅延保証キューで転送され得る新たに計算された最大データ量、すなわち、ターゲットサービスレベルが調整された後に非遅延保証キューで転送され得る最大データ量である。別のサービスレベルの遅延要件がi番目のサービスレベルの構成更新後に影響を受けないことを保証するために、以下の制約が保証される必要がある。
【数58】
【0115】
式(5)、式(7)、および式(8)によれば、構成更新後にi番目のサービスレベルがスケジューリングされたときに転送され得る最大データ量
【数59】
は、以下のように計算され得る。
【数60】
【0116】
式(8)および式(9)によれば、更新の度に非遅延保証キューにスケジューリングされる最大データ量
【数61】
は以下のように表される。
【数62】
【0117】
式(8)および式(9)によれば、i番目のサービスレベルの更新されたキュー帯域幅は以下のように計算される。
【数63】
【0118】
式(6)、式(8)、および式(9)によれば、構成更新後、i番目のサービスレベルが必要とする最小キューバッファサイズ
【数64】
は、以下のように計算される。
【数65】
【0119】
604:603に基づいて、ローカルリソースが計算結果に基づいて構成更新をサポートすることができる場合、ローカル構成更新実行ユニット124は、ターゲットサービスレベルに対して対応する構成更新を実施する。
【0120】
例示的な実施形態では、第1のネットワークデバイスの同じポート上の非遅延保証キューによって現在プリエンプトされ得る帯域幅およびバッファなどのリソースが、関連するサービスレベルの、付加的に追加される必要があるキューリソースの要件を満たすのに十分である場合、ローカル構成更新実行ユニット124は、非遅延保証キューの対応するリソースをプリエンプトし、リソースをターゲットサービスレベルに転送し、新しいキュー帯域幅およびバッファ要件に基づいてターゲットサービスレベルに対して構成更新を実行する。
【0121】
例えば、ローカル構成更新実行ユニット124は、603のネットワーク解析理論の計算結果に基づいて、以下の判定を行い、計算結果に基づいて構成更新を行うか否かを判定する。非遅延保証キューによって現在プリエンプトされ得る最大帯域幅リソースはΔC
n+1であり、非遅延保証キューによって現在プリエンプトされ得る最大バッファリソースはΔBF
n+1であると定義される。この場合、ローカル構成更新実行ユニット124が構成更新を行う際には、以下の2つの条件を満たす必要がある。
【数66】
【0122】
605:604に基づいて、ローカル調整をトリガするための条件が第1の時間閾値内でのみ満たされると判定された場合、ローカル構成更新実行ユニット124は、トリガ条件が消えた後に、関連するサービスレベルのパラメータを更新値から更新値への調整前に存在していた値に戻すようにアクティブに調整する。
【0123】
例示的な実施形態では、キューバッファ占有、パケットキューイング遅延、またはキューパケットカウントなどのキューステータス情報が、第1の時間閾値内でのみ対応する第1の閾値上限を超え、その後正常範囲に回復されたことが検出された場合、実際に到着するデータフローが短期間でのみ現在のアドミッション制約を超えると判定される。この場合、第1のネットワークデバイスは、同期のために構成更新情報をコントローラに報告する必要はなく、キューステータス情報が正常に回復した後、第1のネットワークデバイスは、関連するサービスレベルのパラメータを更新値から更新値への調整前に存在していた値に戻すようにアクティブに調整する。
【0124】
606:604に基づいて、ローカル調整をトリガするための条件が第1の時間閾値内だけでなく満たされていると判定された場合、ローカル構成更新実行ユニット124は、ターゲットサービスレベルのパラメータを更新値から更新値への調整前に存在していた値に戻すようにアクティブに調整せず、ターゲットサービスレベルの更新情報をコントローラに報告する。
【0125】
更新情報は、キューリソースパラメータ(キュー帯域幅、キューバッファなどを含む)およびデータフロー制約パラメータ(データフローのバースト量の閾値、データフローの平均レートの閾値などを含む)などのパラメータの更新値を含むが、これらに限定されない。コントローラのグローバルサービスレベル維持ユニット116は、更新情報に対してデータベース同期を実行し、その後、コントローラは、新しいサービスレベル構成に基づいてサービス展開を実行する。
【0126】
例示的な実施形態では、キューバッファ占有、パケットキューイング遅延、またはキューパケットカウントなどのキューステータス情報が対応する第1の閾値上限を超える期間が第1の時間閾値などの間隔を超えることが検出された場合、実際に到着するデータフローが長期的に現在のアドミッション制約を超えると判定される。この場合、リアルタイム構成更新動作の後、デバイスは、ターゲットサービスレベルのパラメータを更新値から更新値への調整前に存在していた値に戻すようにアクティブに調整せずに、更新情報をコントローラに報告し、グローバルサービスレベル維持ユニット116は、更新情報に対して同期を実行する。
【0127】
607:606に基づいて、グローバルサービス展開ユニット111は、データフローのバースト量の閾値、データフローの平均レートの閾値などを修正することを含む、実際の到着ステータスおよび要件に基づいて関連サービスのサブスクライブされたコミットされたデータフローパラメータを修正し、ターゲットサービスレベルおよび要件の更新構成に基づいて各サービスレベルの現在のデータフローパラメータおよび残りのデータフローパラメータを修正する。現在のデータフローパラメータは、現在のデータフローの平均レートおよび/またはバースト量を含み、残りのデータフローパラメータは、残りのデータフローの平均レートおよび/またはバースト量を含む。現在のデータフローパラメータおよび残りのデータフローパラメータは、トラフィックモデルに基づいて計算されてもよく、またはリアルタイムのデータフローステータスに基づいて取得されてもよい。
【0128】
例示的な実施形態では、グローバルサービス展開ユニット111は、実際の到着ステータスに基づいて、ターゲットサービスレベルでサブスクリプションコミットメントを超えるデータフローのパラメータを増加方向に修正し、増加方向におけるデータフローのバースト量の閾値、データフローの平均レートの閾値などを修正することを含む。
【0129】
608:603に基づき、ローカルリソースが計算結果に基づく構成更新をサポートできない場合、ローカル例外情報報告ユニット125がQoS調整例外情報、すなわち例外情報をコントローラに報告し、コントローラのグローバル調整トリガユニット113がグローバルQoS調整動作をトリガする。
【0130】
例えば、コントローラとネットワークデバイスとの間の通信は、ネットワーク構成プロトコル(network configuration protocol、NETCONF)を使用して実施される。したがって、ローカル例外情報報告ユニット125は、NETCONFを用いてQoS調整例外情報をコントローラに報告する。
【0131】
例示的な実施形態では、非遅延保証キューの、第1のネットワークデバイスの同じポート上でプリエンプトされ得る帯域幅およびバッファなどのリソースが、ターゲットサービスレベルの、付加的に追加される必要があるキューリソースの要件を満たすのに不十分であり、非遅延保証キューのリソースをプリエンプトすることによって、ターゲットサービスレベルが指定された最大遅延要件を依然として満たしていることを保証できない場合、ローカル例外情報報告ユニット125は、対応する第1の閾値上限を超えるキューバッファ占有、パケットキューイング遅延、またはキューパケットカウント情報などのキューステータス情報、データフローがアドミッション制約を超えることを示すERROR信号などを例外情報として使用し、例外情報をリアルタイムでコントローラに報告する。
【0132】
コントローラは、第1のネットワークデバイスによって報告された例外情報に基づいて、ターゲットサービスレベルのパラメータの第1の調整値を第1のネットワークデバイスに返すことができる。したがって、第1のネットワークデバイスは、ターゲットサービスレベルのパラメータの第1の調整値に基づいてターゲットサービスレベルのパラメータを調整する。
【0133】
図4および
図6では、説明のための例として、第1のネットワークデバイスによって第1のネットワークデバイスのサービスレベルを動的に調整するための方法が使用されることに留意されたい。コントローラなどの制御デバイスに接続された別のネットワークデバイスは、第1のネットワークデバイスによって実行される調整方法を使用してサービスレベルを調整することができる。言い換えれば、第1のネットワークデバイスに加えて、本出願の実施形態で提供される方法は、第1のネットワークデバイスと同じまたは同様の機能を有する第2のネットワークデバイスにさらに適用され得る。
【0134】
本出願の一実施形態は、サービスのエンドツーエンド遅延要件が保証されながらネットワークリソース利用をさらに改善することができるように、QoSを動的に調整するためのサービスレベルに基づくシステムを提供する。QoSが動的に調整されるとき、本出願のこの実施形態は、遅延劣化またはパケット損失がネットワーク内のデータフローによって引き起こされないことを保証することができる。
【0135】
図3は、サービスのエンドツーエンド遅延を保証しながらネットワークリソース利用を改善するために、エンドツーエンド遅延を保証するQoSを動的に調整するためのサービスレベルに基づくシステムを示す。システムの全体的なアーキテクチャは、コントローラ側およびネットワークデバイス側のユニット、ユニットの関連機能、およびユニット間のインタラクションロジックを含む。
【0136】
全体的な作業手順は、ネットワークデバイスによってローカルにトリガされるQoS調整手順、対応する元の情報収集、トリガ判定調整、計算調整、実行調整、および情報同期調整などのステップを含み、その結果、サービス展開ステータス、データフローの実際の到着ステータス、キューステータス情報などの変化に基づいて、サービスレベルのパラメータに対して構成更新が動的に実行されることができ、データフローが通過するサービスレベルが動的に切り替えられることができる。したがって、サービスレベルの動的な構成更新やデータフローのサービスレベルの切り替えの際に、ネットワークにおけるデータフローの遅延劣化やパケットロスが発生しない。
【0137】
サービスレベルのパラメータの構成更新は、以下のパラメータ、すなわち、キューリソース、例えばキュー帯域幅およびキューバッファの割り当てを増加または減少させること、およびデータフロー制約パラメータの値、例えば、データフローのバースト量の閾値およびデータフローの最大平均レートを増加または減少させること、のうちの1つまたは複数を含む。データフローが通過するサービスレベルの切り替えは、同じデバイスの同じポート上の別のサービスレベルへの切り替え、または同じデバイスもしくは別のデバイスの別のポート上のサービスレベルへの切り替えを含む。
【0138】
本出願の一実施形態は、サービスレベル調整装置を提供する。本装置は、
図8に示すモジュールを用いて、
図4または
図6のネットワークデバイスによって行われる方法を行うように構成される。
図8を参照されたい。装置は、取得ユニット801と調整ユニット802とを含む。
【0139】
取得ユニット801は、ターゲットサービスレベルで少なくとも1つのキューステータス情報を取得するように構成される。例えば、取得ユニット801によって実行される機能については、
図4に示されるステップ401の関連する説明を参照されたい。ここでは詳細を繰り返さない。
【0140】
調整ユニット802は、少なくとも1つのキューステータス情報のいずれか1つが任意のキューステータス情報に対応する第1の閾値上限を超える場合、ターゲットサービスレベルに関連付けられた最大遅延に基づいてターゲットサービスレベルのパラメータを調整するように構成される。例えば、調整ユニット802によって実行される機能については、
図4に示すステップ402の関連説明を参照されたい。ここでは詳細を繰り返さない。
【0141】
可能な実装形態では、調整ユニット802は、ターゲットサービスレベルのパラメータの更新値を決定し、最大遅延が変化しないままであるときに、ターゲットサービスレベルのパラメータの更新値がローカルターゲットリソースの制約条件を満たす場合、ターゲットサービスレベルのパラメータの更新値に基づいてターゲットサービスレベルのパラメータを調整し、ターゲットリソースはターゲットサービスレベルによってプリエンプトされ得るリソースである、ように構成される。
【0142】
可能な実装形態では、調整ユニット802は、任意のキューステータス情報が第1の時間閾値内に第2の閾値上限を超えない場合、ターゲットサービスレベルのパラメータを更新値から更新値への調整前に存在していた値に戻すように調整するようにさらに構成される。
【0143】
可能な実装形態では、装置は、任意のキューステータス情報が第1の時間閾値内の第3の閾値上限を超える場合に、ターゲットサービスレベルの更新情報を制御デバイスに報告するように構成された報告ユニットをさらに含み、更新情報は、ターゲットサービスレベルのパラメータの更新値を含む。
【0144】
可能な実装形態では、調整ユニット802は、ターゲットサービスレベルのパラメータの更新値を決定し、最大遅延が変化しないままであるときに、ターゲットサービスレベルのパラメータの更新値がローカルターゲットリソースの制約条件を満たさない場合、制御デバイスに例外情報を報告し、例外情報は、対応する第1の閾値上限を超えるキューステータス情報、およびデータフローがアドミッション制約を超えることを示すエラー信号のうちの少なくとも1つを含み、ターゲットリソースは、ターゲットサービスレベルによってプリエンプトされ得るリソースであり、ターゲットサービスレベルのパラメータの、制御デバイスによって送信された第1の調整値を受信し、第1の調整値は例外情報に基づいて取得され、ターゲットサービスレベルのパラメータの第1の調整値に基づいてターゲットサービスレベルのパラメータを調整する、ように構成される。
【0145】
可能な実装形態では、ターゲットサービスレベルのパラメータは、キューリソースパラメータおよびデータフロー制約パラメータを含む。調整ユニット802は、実際に到着するデータフローに基づいて、ターゲットサービスレベルのデータフロー制約パラメータの更新値を決定し、最大遅延が変更されないままであるときに、ターゲットサービスレベルのデータフロー制約パラメータの更新値に基づいて、ターゲットサービスレベルのキューリソースパラメータの更新値を決定するように構成される。
【0146】
可能な実装形態では、ターゲットサービスレベルのキューリソースパラメータはキュー帯域幅およびキューバッファを含み、ターゲットサービスレベルのデータフロー制約パラメータは、データフローのバースト量の閾値およびデータフローの平均レートの閾値を含む。
【0147】
調整ユニット802は、最大遅延が変化しないままであるときに、ターゲットサービスレベルに対応するポートの帯域幅、ターゲットサービスレベルが調整された後にターゲットサービスレベルで転送され得る最大データ量、ターゲットサービスレベルが調整される前に第1のネットワークデバイスの複数のサービスレベルの各々で転送され得る最大データ量、および複数のサービスレベルの各々に対応するキューの最大パケット長を決定し、
ターゲットサービスレベルに対応するポートの帯域幅、ターゲットサービスレベルが調整された後にターゲットサービスレベルで転送され得る最大データ量、およびターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る最大データ量に基づいて、ターゲットサービスレベルのキュー帯域幅を決定し、
ターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る最大データ量、複数のサービスレベルの各々に対応するキューの最大パケット長、ターゲットサービスレベルにおけるデータフローのバースト量の閾値の更新値、およびデータフローの平均レートの閾値の更新値に基づいてターゲットサービスレベルのキューバッファを決定する
ように構成される。
【0148】
可能な実装形態では、調整ユニット802は、ターゲットサービスレベルに対応するポートの帯域幅に基づいて、ターゲットサービスレベルが調整された後にターゲットサービスレベルで転送され得る最大データ量、およびターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る最大データ量を、以下の式に従ってターゲットサービスレベルのキュー帯域幅
【数67】
を決定するように構成される。
【数68】
【0149】
ここで、Cはターゲットサービスレベルに対応するポートの帯域幅であり、
【数69】
はターゲットサービスレベルが調整された後にターゲットサービスレベルで転送され得る最大データ量であり、Q
jはj番目のサービスレベルで転送され得る最大データ量であり、
【数70】
はターゲットサービスレベルが調整される前に転送され得る最大データ量であり、
【数71】
はターゲットサービスレベルが調整される前に非遅延保証キューで転送され得る最大データ量であり、nは1より大きい正の整数である。
【0150】
可能な実装形態では、調整ユニットは、ターゲットサービスレベルが調整される前に複数のサービスレベルの各々で転送され得る最大データ量、複数のサービスレベルの各々に対応するキューの最大パケット長、ターゲットサービスレベルでのデータフローのバースト量の閾値の更新値、およびデータフローの平均レートの閾値の更新値に基づいて、以下の式に従ってターゲットサービスレベルのキューバッファBF
i
2を決定するように構成される。
【数72】
【0151】
ここで、Cはターゲットサービスレベルに対応するポートの帯域幅であり、
【数73】
はターゲットサービスレベルが調整された後にターゲットサービスレベルで転送され得る最大データ量であり、Q
jはj番目のサービスレベルで転送され得る最大データ量であり、
【数74】
はターゲットサービスレベルが調整される前に転送され得る最大データ量であり、
【数75】
はターゲットサービスレベルが調整される前に非遅延保証キューで転送され得る最大データ量であり、L
max,Lは優先度の低いキューの最大パケット長であり、L
n+1は非遅延保証キューの最大パケット長であり、L
jはj番目のサービスレベルのキューの最大パケット長であり、
【数76】
はデータフローのバースト量の閾値の更新値であり、
【数77】
はデータフローの平均レートの閾値の更新値であり、L
iはターゲットサービスレベルでのキューの最大パケット長であり、nは1より大きい正の整数である。
【0152】
可能な実装形態では、本装置は、
ターゲットサービスレベルのパラメータの、制御デバイスによって送信された第2の調整値を受信するように構成された受信ユニット
をさらに含み、
調整ユニット802は、ターゲットサービスレベルのパラメータの第2の調整値に基づいてターゲットサービスレベルのパラメータを調整するようにさらに構成される。
【0153】
本出願のこの実施形態で提供される装置によれば、ターゲットサービスレベルのキューステータス情報が対応する第1の閾値上限を超えると、装置はターゲットサービスレベルのパラメータを調整し、その結果、サービスのエンドツーエンド遅延が保証されながら、ネットワークリソース利用がさらに改善される。加えて、装置は、ターゲットサービスレベルに関連付けられた最大遅延に基づいてターゲットサービスレベルのパラメータを調整するので、遅延劣化またはパケット損失がネットワークトラフィックによって引き起こされないことを保証することができる。
【0154】
図8で提供される装置がその装置の機能を実装するとき、前述の機能モジュールへの分割は、単に説明のための例として使用されるにすぎないことを理解されたい。実際の用途では、前述の機能は、要件に基づいて実装用の様々な機能モジュールに割り振られてもよい。言い換えれば、デバイスは、上記の機能のすべてまたは一部を実装するために、内部構造に関して、異なる機能モジュールに分割される。また、前述の実施形態で提供される装置、および方法の実施形態は、同じ概念に属する。装置の具体的な実装プロセスについては、方法の実施形態を参照されたい。ここでは詳細を繰り返さない。
【0155】
前述の実施形態における制御デバイスまたはネットワークデバイスは、ルータまたはスイッチであってもよい。2つのタイプのハードウェア構造がある。
【0156】
1.
図9に示すように、制御デバイスまたはネットワークデバイスは、トランシーバ、プロセッサ、およびメモリを含む。
【0157】
ネットワークデバイスの場合、ネットワークデバイスのトランシーバは、パケット、データ情報などを受信するように構成される。例えば、
図4に示す4022Bに記載されるように、トランシーバは、例外情報を制御デバイスに報告する。あるいは、トランシーバは、ターゲットサービスレベルの更新情報をコントローラに報告するために、
図6に示すステップ606を実行するように構成される。あるいは、トランシーバは、例外情報をコントローラに報告するために、
図6に示すステップ608を実行するように構成される。プロセッサは、前述の実施形態における第1のネットワークデバイスの処理関連ステップを実行するように構成される。例えば、プロセッサは、
図4に示す第1のネットワークデバイスによって実行される処理ステップ401および402を実行する。別の例では、プロセッサは、
図6に示す第1のネットワークデバイスによって実行される処理ステップ601から605およびステップ607を実行する。
【0158】
2.
図10に示すように、制御デバイスまたはネットワークデバイスは、主制御ボードおよびインターフェースボードを含み、主制御ボードは、プロセッサおよびメモリを含み、インターフェースボードは、プロセッサ、メモリ、およびインターフェースカードを含む。インターフェースボードのプロセッサは、パケットを送受信するためにインターフェースボードのメモリ内のプログラム命令を呼び出すように構成される。主制御ボードのプロセッサは、対応する処理機能を実行するために主制御ボードのメモリ内のプログラム命令を呼び出すように構成される。
【0159】
例えば、ネットワークデバイスの場合、ネットワークデバイスのインターフェースボードのインターフェースカードは、パケット、データ情報などを受信するように構成される。例えば、
図4に示す4022Bに記載されるように、インターフェースカードは、例外情報を制御デバイスに報告する。あるいは、インターフェースカードは、ターゲットサービスレベルの更新情報をコントローラに報告するために、
図6に示すステップ606を実行するように構成される。あるいは、インターフェースカードは、例外情報をコントローラに報告するために、
図6に示すステップ608を実行するように構成される。主制御ボードのプロセッサは、前述の実施形態における第1のネットワークデバイスの処理関連ステップを実行するように構成される。例えば、プロセッサは、
図4に示す第1のネットワークデバイスによって実行される処理ステップ401および402を実行する。別の例では、プロセッサは、
図6に示す第1のネットワークデバイスによって実行される処理ステップ601から605およびステップ607を実行する。
【0160】
上記の装置の実施形態は、単なる例であることに留意されたい。別々の部分として記載されたユニットは、物理的に別々であってもなくてもよく、ユニットとして表示された部分は、物理的なユニットであってもなくてもよく、1つの位置に配置されてもよく、複数のネットワークユニット上に分散されてもよい。モジュールの一部またはすべては、実施形態の解決策の目的を達成するための実際の要件に基づいて選択されてもよい。加えて、本発明で提供される第1のネットワークノードまたはコントローラの添付の図面の実施形態では、モジュール間の接続関係は、モジュール間に通信接続があることを示し、通信接続は、具体的には、1つまたは複数の通信バスまたは信号ケーブルとして実装されてもよい。当業者は、創造的な努力を払わずとも実施形態を理解し、実施することができる。
【0161】
本発明の実施形態で開示されている内容に関して説明されている方法またはアルゴリズムステップは、ハードウェアによって実装されてもよいし、ソフトウェア命令を実行することによってプロセッサによって実装されてもよい。ソフトウェア命令は、対応するソフトウェアモジュールを含んでもよい。ソフトウェアモジュールは、ランダムアクセスメモリ(random access memory、RAM)、フラッシュメモリ、読み出し専用メモリ(read-only memory、ROM)、消去可能プログラマブル読み出し専用メモリ(erasable programmable ROM、EPROM)、電気的消去可能プログラマブル読み出し専用メモリ(electrically EPROM、EEPROM)、ハードディスク、リムーバルハードディスク、コンパクトディスク、または当技術分野でよく知られた任意の他の形態の記憶媒体に格納されてよい。例えば、記憶媒体はプロセッサに結合されているので、プロセッサは記憶媒体から情報を読み取り、記憶媒体に情報を書き込むことができる。当然ながら、記憶媒体はプロセッサの構成要素であってもよい。プロセッサおよび記憶媒体はASIC内に位置していてもよい。加えて、ASICはコアネットワークインターフェースデバイスに位置していてもよい。当然ながら、プロセッサと記憶媒体とはコアネットワークインターフェースデバイスに別個の構成要素として存在してもよい。
【0162】
当業者は、上述の1つまたは複数の例では、本出願の実施形態で説明された機能がハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組み合わせによって実装され得ることを理解するはずである。機能がソフトウェアによって実装されると、前述の機能は、コンピュータ可読媒体内に格納されるか、またはコンピュータ可読媒体内で1つもしくは複数の命令もしくはコードとして伝送されてもよい。コンピュータ可読媒体は、コンピュータ記憶媒体と通信媒体とを含む。通信媒体は、ある1つの場所から別の場所へのコンピュータプログラムの伝送を容易にするいずれかの媒体を含む。記憶媒体は、汎用または専用のコンピュータにアクセス可能な任意の利用可能な媒体であってもよい。
【0163】
図11は、本出願の一実施形態による、サービスレベルを動的に調整するためのデバイス1100のハードウェア構造の概略図である。
図11に示すサービスレベルを動的に調整するためのデバイス1100は、
図4または
図6に示す実施形態で提供されるサービスレベルを動的に調整するための方法の対応するステップを実行することができる。
【0164】
図11に示すように、サービスレベルを動的に調整するためのデバイス1100は、プロセッサ1101と、メモリ1102と、インターフェース1103と、バス1104とを含む。インターフェース1103は、無線または有線方式で実装されてもよい。例えば、インターフェース1103は、ネットワークアダプタであってもよい。プロセッサ1101、メモリ1102、およびインターフェース1103は、バス1104を介して接続される。
【0165】
インターフェース1103は、送信機および受信機を含むことができ、別の通信デバイスと通信するように構成される。例えば、
図4に示す4022Bに記載されるように、インターフェース1103は、例外情報を制御デバイスに報告する。あるいは、インターフェース1103は、ターゲットサービスレベルの更新情報をコントローラに報告するために、
図6に示すステップ606を実行するように構成される。あるいは、インターフェース1103は、例外情報をコントローラに報告するために、
図6に示すステップ608を実行するように構成される。
【0166】
プロセッサ1101は、
図4に示す実施形態における処理関連ステップ401および402を実行するように構成される。別の例では、プロセッサ1101は、
図6に示す第1のネットワークデバイスによって実行される処理ステップ601から605およびステップ607を実行する、および/またはプロセッサ1101は、本明細書に記載された技術の別のプロセスを実行するように構成される。メモリ1102は、オペレーティングシステム11021およびアプリケーションプログラム11022を含み、プログラム、コード、または命令を格納するように構成される。プログラム、コード、または命令を実行するとき、プロセッサまたはハードウェアデバイスは、方法実施形態においてサービスレベルを動的に調整するためのデバイス1100の処理プロセスを完了することができる。任意選択で、メモリ1102は、読み出し専用メモリ(英語:Read-only Memory、略してROM)およびランダムアクセスメモリ(英語:Random Access Memory、略してRAM)を含んでもよい。ROMは、基本入出力システム(英語:Basic Input/Output System、略してBIOS)または組み込みシステムを含む。RAMは、アプリケーションプログラムおよびオペレーティングシステムを含む。サービスレベルを動的に調整するためのデバイス1100が動作する必要があるとき、サービスレベルを動的に調整するためのデバイス1100を通常の動作状態に入るようにブートするために、ROMに組み込まれたBIOSまたは組み込みシステム内のbootloaderブートストラップシステムを使用することによって、サービスレベルを動的に調整するためのデバイス1100が起動される。通常の動作状態に入った後、サービスレベルを動的に調整するためのデバイス1100は、アプリケーションプログラムおよびRAM内のオペレーティングシステムを実行して、方法実施形態におけるサービスレベルを動的に調整するためのデバイス1100の処理プロセスを完了する。
【0167】
図11は、サービスレベルを動的に調整するためのデバイス1100の簡略化された設計を示しているにすぎないことが理解されよう。実際の用途では、サービスレベルを動的に調整するためのデバイス1100は、任意の数のインターフェース、プロセッサ、またはメモリを含むことができる。
【0168】
プロセッサは、中央処理装置(Central Processing Unit、CPU)であってもよく、または別の汎用プロセッサ、デジタル信号プロセッサ(digital signal processor、DSP)、特定用途向け集積回路(application-specific integrated circuit、ASIC)、フィールドプログラマブルゲートアレイ(field-programmable gate array、FPGA)、または別のプログラム可能な論理デバイス、個別のゲートもしくはトランジスタ論理デバイス、個別のハードウェア構成要素などであってもよい。汎用プロセッサは、マイクロプロセッサまたは任意の従来のプロセッサなどであってもよい。プロセッサは、高度なRISCマシン(advanced RISC machines、ARM)アーキテクチャをサポートするプロセッサであってもよいことに留意されたい。
【0169】
さらに、任意選択の実施形態では、メモリは、読み出し専用メモリおよびランダムアクセスメモリを含み、プロセッサに命令およびデータを供給してもよい。メモリは、不揮発性ランダムアクセスメモリをさらに含んでもよい。例えば、メモリは、デバイスタイプに関する情報をさらに格納してもよい。
【0170】
メモリは、揮発性メモリまたは不揮発性メモリであってもよく、揮発性メモリと不揮発性メモリの両方を含んでもよい。不揮発性メモリは、読み出し専用メモリ(read-only memory、ROM)、プログラマブル読み出し専用メモリ(programmable ROM、PROM)、消去可能プログラマブル読み出し専用メモリ(erasable PROM、EPROM)、電気的消去可能プログラマブル読み出し専用メモリ(electrically EPROM、EEPROM)、またはフラッシュメモリであってもよい。揮発性メモリは、外部キャッシュとして使用されるランダムアクセスメモリ(random access memory、RAM)であってもよい。限定ではなく例として、多くの形態のRAM、例えば、スタティックランダムアクセスメモリ(static RAM、SRAM)、ダイナミックランダムアクセスメモリ(dynamic random access memory、DRAM)、シンクロナス・ダイナミック・ランダム・アクセス・メモリ(synchronous DRAM、SDRAM)、ダブル・データ・レート・シンクロナス・ダイナミック・ランダム・アクセス・メモリ(double data rate SDRAM、DDR SDRAM)、拡張シンクロナス・ダイナミック・ランダム・アクセス・メモリ(enhanced SDRAM、ESDRAM)、シンクリンク・ダイナミック・ランダム・アクセス・メモリ(synchlink DRAM、SLDRAM)、およびダイレクト・ラムバス・ランダム・アクセス・メモリ(direct rambus RAM,DR RAM)が使用されてもよい。
【0171】
コンピュータ可読記憶媒体が、さらに提供される。記憶媒体は少なくとも1つの命令を格納し、命令は、サービスレベルを動的に調整するための前述の方法のいずれか1つを実施するためにプロセッサによってロードされ実行される。
【0172】
本出願は、コンピュータプログラムを提供する。コンピュータプログラムがコンピュータによって実行されると、プロセッサまたはコンピュータは、前述の方法の実施形態における対応するステップおよび/または手順を実行することが可能になる。
【0173】
チップが提供される。チップは、チップがインストールされた通信デバイスが前述の態様の方法を実行するように、メモリから、メモリに格納された命令を呼び出し、命令を実行するように構成されたプロセッサを含む。
【0174】
別のチップが提供される。チップは、入力インターフェースと、出力インターフェースと、プロセッサと、メモリとを含む。入力インターフェース、出力インターフェース、プロセッサ、およびメモリは、内部接続チャネルを介して互いに接続される。プロセッサは、メモリ内のコードを実行するように構成される。コードが実行されると、プロセッサは、前述の態様における方法を実行するように構成される。
【0175】
前述の実施形態のすべてまたは一部は、ソフトウェア、ハードウェア、ファームウェア、またはそれらの任意の組み合わせによって実施されてもよい。ソフトウェアが、実施形態を実施するために使用される場合、実施形態のすべてまたは一部は、コンピュータプログラム製品の形式で実施されてもよい。コンピュータプログラム製品は、1つまたは複数のコンピュータ命令を含む。コンピュータプログラム命令がコンピュータにロードされ実行されると、このアプリケーションにおける手順または機能のすべてまたは一部が生成される。コンピュータは、汎用コンピュータ、専用コンピュータ、コンピュータネットワーク、または他のプログラマブル装置であってもよい。コンピュータ命令は、コンピュータ可読記憶媒体に格納されてもよく、またはコンピュータ可読記憶媒体から別のコンピュータ可読記憶媒体に伝送されてもよい。例えば、コンピュータ命令は、ウェブサイト、コンピュータ、サーバ、またはデータセンタから別のウェブサイト、コンピュータ、サーバ、またはデータセンタへ、有線(例えば、同軸ケーブル、光ファイバ、またはデジタル加入者線)方式で、または無線(例えば、赤外線、電波、またはマイクロ波)方式で、伝送されてもよい。コンピュータ可読記憶媒体は、コンピュータによってアクセス可能な任意の使用可能な媒体、または1つもしくは複数の使用可能な媒体を統合した、サーバやデータセンタなどのデータ記憶デバイスであってもよい。使用可能な媒体は、磁気媒体(例えば、フロッピー(登録商標)ディスク、ハードディスク、または磁気テープ)、光学媒体(例えば、DVD)、または半導体媒体(例えば、ソリッドステートドライブ(Solid State Disk))であってもよい。
【0176】
本出願の目的、技術的解決策、および有益な効果は、前述の特定の実施形態でさらに詳細に説明される。前述の説明は本出願の特定の実施形態にすぎず、本出願の保護範囲を限定することを意図するものではないことを理解されたい。本出願の技術的解決策に基づいて行われた修正、同等の交換、または改善は、本出願の保護範囲に含まれるものとする。
【符号の説明】
【0177】
11 コントローラ
12 ネットワークデバイス
111 グローバルサービス展開ユニット
112 グローバルキュー監視分析ユニット
113 グローバル調整トリガユニット
114 グローバル調整計算ユニット
115 グローバルサービスレベル切り替えユニット
116 グローバルサービスレベル維持ユニット
121 ローカルキュー監視ユニット
122 ローカル調整トリガユニット
123 ローカル構成更新計算ユニット
124 ローカル構成更新実行ユニット
125 ローカル例外情報報告ユニット
801 取得ユニット
802 調整ユニット
1100 デバイス
1101 プロセッサ
1102 メモリ
1103 インターフェース
1104 バス
11021 オペレーティングシステム
11022 アプリケーションプログラム