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

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

▶ オラクル・インターナショナル・コーポレイションの特許一覧

特許7589170サービス通信プロキシにおけるプロデューサネットワーク機能サービスインスタンス・ワイドエグレスレート制限のための方法、システムおよびコンピュータ可読媒体
<>
  • 特許-サービス通信プロキシにおけるプロデューサネットワーク機能サービスインスタンス・ワイドエグレスレート制限のための方法、システムおよびコンピュータ可読媒体 図1
  • 特許-サービス通信プロキシにおけるプロデューサネットワーク機能サービスインスタンス・ワイドエグレスレート制限のための方法、システムおよびコンピュータ可読媒体 図2
  • 特許-サービス通信プロキシにおけるプロデューサネットワーク機能サービスインスタンス・ワイドエグレスレート制限のための方法、システムおよびコンピュータ可読媒体 図3
  • 特許-サービス通信プロキシにおけるプロデューサネットワーク機能サービスインスタンス・ワイドエグレスレート制限のための方法、システムおよびコンピュータ可読媒体 図4
  • 特許-サービス通信プロキシにおけるプロデューサネットワーク機能サービスインスタンス・ワイドエグレスレート制限のための方法、システムおよびコンピュータ可読媒体 図5
  • 特許-サービス通信プロキシにおけるプロデューサネットワーク機能サービスインスタンス・ワイドエグレスレート制限のための方法、システムおよびコンピュータ可読媒体 図6
  • 特許-サービス通信プロキシにおけるプロデューサネットワーク機能サービスインスタンス・ワイドエグレスレート制限のための方法、システムおよびコンピュータ可読媒体 図7A
  • 特許-サービス通信プロキシにおけるプロデューサネットワーク機能サービスインスタンス・ワイドエグレスレート制限のための方法、システムおよびコンピュータ可読媒体 図7B
  • 特許-サービス通信プロキシにおけるプロデューサネットワーク機能サービスインスタンス・ワイドエグレスレート制限のための方法、システムおよびコンピュータ可読媒体 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-15
(45)【発行日】2024-11-25
(54)【発明の名称】サービス通信プロキシにおけるプロデューサネットワーク機能サービスインスタンス・ワイドエグレスレート制限のための方法、システムおよびコンピュータ可読媒体
(51)【国際特許分類】
   H04L 47/20 20220101AFI20241118BHJP
   H04W 28/08 20230101ALI20241118BHJP
   H04W 28/10 20090101ALI20241118BHJP
   H04L 47/215 20220101ALI20241118BHJP
【FI】
H04L47/20
H04W28/08
H04W28/10
H04L47/215
【請求項の数】 12
(21)【出願番号】P 2021564209
(86)(22)【出願日】2020-05-27
(65)【公表番号】
(43)【公表日】2022-09-06
(86)【国際出願番号】 US2020034723
(87)【国際公開番号】W WO2020263486
(87)【国際公開日】2020-12-30
【審査請求日】2023-05-11
(31)【優先権主張番号】16/453,955
(32)【優先日】2019-06-26
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】502303739
【氏名又は名称】オラクル・インターナショナル・コーポレイション
(74)【代理人】
【識別番号】110001195
【氏名又は名称】弁理士法人深見特許事務所
(72)【発明者】
【氏名】ゴエル,イェシュ
【審査官】吉田 歩
(56)【参考文献】
【文献】米国特許第08190593(US,B1)
【文献】米国特許第10237875(US,B1)
【文献】特開2005-244417(JP,A)
【文献】米国特許出願公開第2010/0229218(US,A1)
【文献】特表2009-543485(JP,A)
【文献】特開2013-030855(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 47/20
H04W 28/08
H04W 28/10
H04L 47/215
(57)【特許請求の範囲】
【請求項1】
ネットワーク機能(NF:Network Function)サービスインスタンス・ワイドエグレ
スレート制限のための方法であって、
少なくとも1つのプロセッサを含むサービス通信プロキシ(SCP:Service Communication Proxy)において、
コンシューマNFからサービス要求を受信するステップと、
前記サービス要求を複数のSCPワーカインスタンスに転送するステップと、
前記複数のSCPワーカインスタンスの各々において、前記複数のSCPワーカインスタンスとは別のレート制限ポリサから、前記サービス要求を処理するためのプロデューサNFサービスインスタンス容量を要求するステップと、
前記レート制限ポリサにおいて、
前記複数のSCPワーカインスタンスからの結合エグレストラフィックが前記プロデューサNFサービスインスタンスのレート容量を超過しないように、前記複数のSCPワーカインスタンスの各々からのプロデューサNFサービスインスタンス容量の要求を許可または拒否することによって、前記複数のSCPワーカインスタンスとプロデューサNFサービスインスタンスとの間でプロデューサNFサービスインスタンス・ワイドエグレスレート制限を実行するステップとを含み、前記結合エグレストラフィックは、前記複数のSCPワーカインスタンスからのエグレストラフィックの合計である、方法。
【請求項2】
前記レート制限ポリサからプロデューサNFサービスインスタンス容量を要求するステップは、前記レート制限ポリサからトークン割当を要求するステップを含み、
前記トークンは、前記サービス要求を許可するか拒否するかを判定するために前記複数のSCPワーカインスタンスによって使用可能である、請求項1に記載の方法。
【請求項3】
プロデューサNFサービスインスタンス・ワイドエグレスレート制限を実行するステップは、前記プロデューサNFサービスインスタンスの各々について利用可能なトークン量を決定するためのデータベースにアクセスするステップを含む、請求項2に記載の方法。
【請求項4】
トークン割当を要求するステップは、前記複数のSCPワーカインスタンスのうちの1つについて許可トークンに対する利用可能なトークンの比率が閾値量未満であることに応答して、前記トークン割当を要求するステップを含む、請求項2または3に記載の方法。
【請求項5】
前記レート制限ポリサにおいて、
前記プロデューサNFサービスインスタンスの各々について、ある時間間隔で割り当て可能なトークン最大限度を維持するステップと、
前記トークン割当要求によって要求されるトークン数が前記トークン最大限度を超過するかどうかに基づいて、前記トークン割当要求を許可または拒否するステップとを含む、請求項2~4のいずれか1項に記載の方法。
【請求項6】
プロデューサNFサービスインスタンス・ワイドエグレスレート制限を実行するステップは、満了時間が固定である固定ウィンドウにトークンを割り当てるステップを含む、請求項5に記載の方法。
【請求項7】
プロデューサNFサービスインスタンス・ワイドエグレスレート制限を実行するステップは、満了時間がバケットの満了に応じて移動するスライディングウィンドウにトークンを割り当てるステップを含む、請求項5に記載の方法。
【請求項8】
プロデューサNFサービスインスタンス・ワイドレート制限を実行するステップは、ベストエフォートトークン割当を実装するステップを含み、
ある時間間隔で前記複数のSCPワーカインスタンスのうちの1つによって要求されたトークン数が前記時間間隔で最大割り当てられたトークンを超過する場合に、前記トークン最大限度を超過しない前記時間間隔で利用可能な残りトークンが許可される、請求項2~7のいずれか1項に記載の方法。
【請求項9】
プロデューサNFサービスインスタンス・ワイドエグレスレート制限を実行するステップは、トークン要求数が前記トークン最大限度を超過する場合に、トークン割当要求を拒否することによって最大限度トークン割当を実装するステップを含む、請求項2~8のいずれか1項に記載の方法。
【請求項10】
前記SCPは、少なくとも1つのサービス通信プロキシ(SCP)機能を実装する、請求項1~9のいずれか1項に記載の方法。
【請求項11】
請求項1~10のいずれかに記載の方法をプロセッサに実行させるためのプログラム。
【請求項12】
請求項11に記載のプログラムを格納したメモリと、
前記プロセッサとを備える、システム。
【発明の詳細な説明】
【技術分野】
【0001】
優先権主張
この出願は2019年6月26日付の米国特許出願16/453,955の優先権の利益を請求し、その開示全体が参照により本明細書に組み込まれる。
【0002】
技術分野
本明細書で説明される主題は、プロデューサネットワーク機能(NF:Network Function)に対するネットワークサービス要求のレート制限を実行することに関する。より具体的には、本明細書で説明される主題は、サービス通信プロキシ(SCP:Service Communication Proxy)におけるプロデューサNFサービスインスタンス・ワイドエグレスレート制限のための方法、システムおよびコンピュータ可読媒体に関する。
【背景技術】
【0003】
背景
第3世代パートナーシッププロジェクト(3GPP:3rd Generation Partnership Project)によって特定される5Gネットワークアーキテクチャにおいて、ネットワーク機能(NF)は、サービスを提供または消費するネットワークノードである。サービスを提供するNFはプロデューサNFと呼ばれる。サービスを消費するNFはコンシューマNFと呼ばれる。NFは、文脈に応じてプロデューサまたはコンシューマであり得る。NFリポジトリ機能(NRF:NF Repository Function)は、利用可能なNFインスタンスおよびそれらのサポートサービスのNFプロファイルを維持するネットワークエンティティである。NRFはまた、他のNFインスタンスが、所定の種類の新規の/更新されたプロデューサNFサービスインスタンスのNRFへの登録に加入したり通知されたりすることを可能にする。NRFは、NF検出要求を受信したり、利用可能なNFに関する情報を提供したりすることによって、サービス検出機能をサポートする。
【0004】
サービス通信プロキシ(SCP)は、コンシューマNFとプロデューサNFとの間の間接通信に使用可能なノードである。間接通信では、コンシューマNFは、サービス要求をSCPに送信し、SCPは、各サービス要求を処理するためにプロデューサNFを選択し、そして、SCPは、サービス要求をプロデューサNFに転送する。SCPはまた、プロデューサNFからの応答をコンシューマNFに転送する。その開示全体が参照により本明細書に組み込まれる、3GPP TS23.501, 3rd Generation Partnership Project、技術仕様グループサービスおよびシステム態様(Technical Specification Group Service and System Aspects)、5Gシステムのためのシステムアーキテクチャ、ステージ2(リリース16), V16.0.0(2019-03)によれば、SCPによって提供される負荷分散、監視および過負荷制御は、実装に任されるが、実装の詳細は指定されていない。
【発明の概要】
【発明が解決しようとする課題】
【0005】
プロデューサNFの選択に使用される既存のプロセスの1つの課題は、他のエンティティからプロデューサNFに送られるサービス要求に基づいて、プロデューサNF容量を認識していない個々のエンティティによってプロデューサNF選択決定が行われ得ることである。たとえば、プロデューサNFは、異なるコンシューマNFまたはコンシューマNFのためのプロキシとして機能するエンティティからサービス要求を受信し得る。コンシューマNFまたはコンシューマNFのためのプロキシとして動作するエンティティは、プロデューサNFの容量、または、他のコンシューマNFもしくはプロキシによって使用される容量の量を認識しているかもしれないし認識していないかもしれない。その結果、プロデューサNFは、他のエンティティからプロデューサNFサービスインスタンスに送られたサービス要求を認識していない1つのエンティティからの大量のサービス要求に対応できなくなる可能性がある。
【0006】
よって、これらの課題に照らして、プロデューサNFサービスインスタンス・ワイドエグレスレート制限のための方法、システムおよびコンピュータ可読媒体に対するニーズが存在する。
【課題を解決するための手段】
【0007】
概要
本明細書で説明される主題は、プロデューサネットワーク機能(NF)サービスインスタンス・ワイドエグレスレート制限のための方法、システムおよびコンピュータ可読媒体を含む。1つの方法は、少なくとも1つのプロセッサを含むサービス通信プロキシ(SCP)において実行されるステップを含む。ステップは、コンシューマNFからサービス要求を受信するステップを含む。ステップは、SCPワーカインスタンスにサービス要求を転送するステップをさらに含む。ステップは、SCPワーカインスタンスにおいて、SCPワーカインスタンスとは別のレート制限ポリサから、サービス要求を処理するためのプロデューサNFサービスインスタンス容量を要求するステップをさらに含む。方法はまた、レート制限ポリサにおいて実行されるステップを含む。ステップは、SCPワーカインスタンスからの結合エグレストラフィックがプロデューサNFサービスインスタンスのレート容量を超過しないように、SCPワーカインスタンスからのプロデューサNFサービスインスタンス容量のための要求を許可または拒否することによって、プロデューサNFサービスインスタンス・ワイドエグレスレート制限をSCPワーカインスタンスとプロデューサNFサービスインスタンスとの間で実行するステップを含む。
【0008】
本明細書で説明される主題の一態様によれば、レート制限ポリサからプロデューサNFサービスインスタンス容量を要求するステップは、レート制限ポリサからトークン割当を要求するステップを含む。トークンは、サービス要求を許可するか拒否するかを判定するためにSCPワーカインスタンスによって利用可能である。
【0009】
本明細書で説明される主題の一態様によれば、NFサービスインスタンスのワイドレート制限を実行するステップは、プロデューサNFサービスインスタンスの各々について利用可能なトークン量を決定するためにデータベースにアクセスするステップを含む。
【0010】
本明細書で説明される主題の他の態様によれば、トークン割当を要求するステップは、SCPワーカインスタンスのうちの1つに利用可能な許可トークンの比率が閾値量未満であることに応答して、トークン割当を要求するステップを含む。
【0011】
本明細書で説明される主題のさらに他の態様によれば、レート制限ポリサは、NFサービスインスタンスの各々について、時間間隔で割り当てられ得るトークン最大限度を維持し、かつ、トークン割当要求によって要求されるトークン数がトークン最大限度を超過するかどうかに基づいてトークン割当要求を許可または拒否する。
【0012】
本明細書で説明される主題のさらに他の態様によれば、NFサービスインスタンス・ワイドエグレスレート制限を実行するステップは、トークンが許可され得る固定ウィンドウを実装するステップを含む。
【0013】
本明細書で説明される主題のさらに他の態様によれば、NFサービスインスタンス・ワイドエグレスレート制限を実行するステップは、トークンが許可され得るスライディングウィンドウを実装するステップを含む。
【0014】
本明細書に記載される主題のさらに他の態様によれば、プロデューサNFサービスインスタンス・ワイドレート制限ポリシングを実行するステップは、ベストエフォート割当を実装するステップを含む。ある時間間隔でSCPワーカインスタンスのうちの1つによって要求されるトークン数が当該時間間隔で最大割り当てられたトークンを超過する場合に、トークン最大限度を超過しない時間間隔で利用可能な残りトークンが許可される。
【0015】
本明細書で説明される主題のさらに他の態様によれば、プロデューサNFサービスインスタンス・ワイドエグレスレート制限を実行するステップは、トークン要求数がトークン最大限度を超過する場合に、トークン割当要求を拒否することによって最大限度トークン割当を実装するステップを含む。
【0016】
本明細書で説明される主題のさらに他の態様によれば、SCPは、サービス通信プロキシ(SCP)を備える。
【0017】
本明細書で説明される主題のさらに他の態様によれば、ネットワーク機能(NF)サービスインスタンス・ワイドエグレスレート制限のためのシステムが提供される。本システムは、少なくとも1つのプロセッサを含むサービス通信プロキシ(SCP)を含む。プロセッサは、コンシューマNFからサービス要求を受信するステップと、SCPによって実装されるSCPワーカインスタンスにサービス要求を転送するステップと、SCPワーカインスタンスによって、サービス要求を処理するためのプロデューサNFサービスインスタンス容量を要求するステップとを含む。システムはレート制限ポリサをさらに含む。レート制限ポリサは、SCPワーカインスタンスからの結合エグレストラフィックがプロデューサNFサービスインスタンスのレート容量を超過しないように、SCPワーカインスタンスからのプロデューサNFサービスインスタンス容量のための要求を許可または拒否することによって、SCPワーカインスタンスとプロデューサNFサービスインスタンスとの間でプロデューサNFサービスインスタンス・ワイドエグレスレート制限を実行する。
【0018】
本明細書で説明される主題のさらに他の態様によれば、SCPワーカインスタンスは、レート制限ポリサからトークン割当を要求することによって、レート制限ポリサからプロデューサNFサービスインスタンス容量を要求するように構成されている。トークンは、サービス要求を許可または拒否するかどうかを判定するためにSCPワーカインスタンスによって使用可能である。
【0019】
本明細書で説明される主題のさらに他の態様によれば、システムは、プロデューサNFサービスインスタンスの各々について利用可能なトークン量を決定するためにレート制限ポリサによってアクセス可能なデータベースを含む。
【0020】
本明細書で説明される主題のさらに他の態様によれば、SCPワーカインスタンスは、SCPワーカインスタンスのうちの1つに利用可能な許可トークン数が閾値未満であることに応答して、トークン割当を要求するように構成されている。
【0021】
本明細書で説明される主題のさらに他の態様によれば、レート制限ポリサは、NFサービスインスタンスの各々について、時間間隔で割り当てられ得るトークン最大限度を維持し、かつ、トークン割当要求によって要求されるトークン数がトークン最大限度を超過するかどうかに基づいてトークン割当要求を許可または拒否するように構成されている。
【0022】
本明細書で説明される主題のさらに他の態様によれば、レート制限ポリサは、トークンが許可され得る固定ウィンドウを実装することによって、NFサービスインスタンス・ワイドエグレスレート制限を実行するように構成されている。
【0023】
本明細書で説明される主題のさらに他の態様によれば、レート制限ポリサは、トークンが許可され得るスライディングウィンドウを実装することによって、NFサービスインスタンス・ワイドエグレスレート制限を実行するように構成されている。
【0024】
本明細書で説明される主題のさらに他の態様によれば、レート制限ポリシングは、ベストエフォート割当を実装することによって、プロデューサNFサービスインスタンス・ワイドレート制限ポリシングを実行するように構成されている。ある時間間隔でSCPワーカインスタンスのうちの1つによって要求されるトークン数が、ある時間間隔で最大割り当てられたトークンを超過する場合に、トークン最大限度を超過しない時間間隔で利用可能な残りトークンが許可される。
【0025】
本明細書で説明される主題のさらに他の態様によれば、レート制限ポリサは、最大限度トークン割当を実装することによって、プロデューサNFサービスインスタンス・ワイドエグレスレート制限を実行するように構成されている。最大限度トークン割当は、トークン要求数がトークン最大限度を超過する場合に、トークン割当要求を拒否することを含む。
【0026】
本明細書で説明される主題のさらに他の態様によれば、コンピュータのプロセッサによって実行されると、ステップを実行するようにコンピュータを制御する実行可能な命令が記憶された非一時的なコンピュータ可読媒体が提供される。ステップは、少なくとも1つのプロセッサを含むサービス通信(SCP)において実行される第1セットのステップを含む。第1セットのステップは、コンシューマNFからサービス要求を受信するステップと、サービス要求をSCPワーカインスタンスに転送するステップと、SCPワーカインスタンスにおいて、SCPワーカインスタンスとは別のレート制限ポリサから、サービス要求を処理するためのプロデューサNFサービスインスタンス容量を要求するステップとを含む。ステップは、レート制限ポリサにおいて実行される第2セットのステップをさらに含む。第2セットのステップは、SCPワーカインスタンスからの結合エグレストラフィックがプロデューサNFサービスインスタンスのレート容量を超過しないように、SCPワーカインスタンスからのプロデューサNFサービスインスタンス容量ための要求を許可または拒否することによって、SCPワーカインスタンスとプロデューサNFインスタンスとの間でプロデューサNFサービスインスタンス・ワイドエグレスレート制限を実行するステップを含む。
【0027】
本明細書で説明される主題は、ハードウェアおよび/またはファームウェアと組み合わせてソフトウェアにより実装可能である。たとえば、本明細書で説明される主題は、プロセッサによって実行されるソフトウェアにより実装可能である。例示的な一実施形態では、本明細書で説明される主題は、コンピュータのプロセッサによって実行されると、ステップを実行するようにコンピュータを制御するコンピュータ実行可能命令が記憶された非一時的なコンピュータ可読媒体を用いて実装可能である。本明細書で説明される主題を実装するのに好適な例示的なコンピュータ可読媒体は、ディスクメモリデバイス、チップメモリデバイス、プログラマブルロジックデバイス、および、ASIC(Application Specific Integrated Circuit)などの非一時的コンピュータ可読媒体を含む。加えて、本明細書で説明される主題を実装するコンピュータ可読媒体は、単一のデバイスもしくはコンピュータプラットフォーム上に配置され得るか、または、複数のデバイスもしくはコンピュータプラットフォームにわたって分散され得る。
【図面の簡単な説明】
【0028】
図1】プロデューサNF、コンシューマNF、NRFおよびSCPを含む例示的な5Gネットワークアーキテクチャを示すネットワーク図である。
図2】SCPワーカインスタンスからプロデューサNFサーバインスタンスへのリクエストのエグレスレート制限なしに、SCPワーカインスタンスからプロデューサNFサービスインスタンスへのサービス要求の転送を示すネットワーク図である。
図3】異なるSCPワーカインスタンスからの要求によってプロデューサNFサービスインスタンスの容量を超過する場合に、SCPからプロデューサNFサービスインスタンスへの要求の転送を示すネットワーク図である。
図4】SCPワーカインスタンスとプロデューサNFサービスインスタンスとの間のトラフィックのエグレスレート制限を示すネットワーク図である。
図5】プロデューサNFサービスインスタンスがコンシューマNFサービスインスタンスからの大量のトラフィックで対応不能になるのを防ぐために、図4のレート制限ポリサによって実装され得る例示的な固定ウィンドウ・トークンバケットアルゴリズムを示すフローチャートである。
図6】プロデューサNFサービスインスタンスへのトラフィックのエグレスレート制限を実行するためにレート制限ポリサによって実装され得るスライディングウィンドウ・トークンバケットアルゴリズムを示すフローチャートである。
図7A】SCPワーカインスタンスによって実装され得るトークン要求アルゴリズムを示すフローチャートである。
図7B】SCPワーカインスタンスによって実施されるトークン要求アルゴリズムの一部を示すフローチャートである。
図8】NFサービスインスタンス・ワイドエグレスレート制限のための例示的なプロセスを示すフローチャートである。
【発明を実施するための形態】
【0029】
詳細な説明
本明細書で説明される主題は、サービス通信プロキシにおけるプロデューサNFサービスインスタンス・ワイドエグレスレート制限のための方法、システムおよびコンピュータ可読媒体に関する。前述したように、既存のネットワークアーキテクチャの1つの課題は、5GプロデューサNFサービスインスタンスが、複数の異なるコンシューマからの大量のトラフィックに対応不能になり得ることである。レート制限ポリシングをより完全に説明するために、5Gサービスプロデューサおよびサービスコンシューマネットワークアーキテクチャの背景が最初に提示される。図1は、例示的な5Gシステムネットワークアーキテクチャを示すブロック図である。図1のアーキテクチャは、ホーム公衆陸上移動体通信網(HPLMN:Home Public Land Mobile Network)に位置するNRF100およびSCP101を含む。前述したように、NRF100は、利用可能なプロデューサNFサービスインスタンスおよびそれらにサポートされたサービスのプロファイルを維持し、コンシューマNFが新規の/更新されたプロデューサNFサービスインスタンスの登録に加入し、その登録を通知されるようにし得る。SCP101はまた、サービス検出およびプロデューサNFの選択をサポートし得る。加えて、SCP101は、コンシューマNFとプロデューサNFとの間の接続の負荷分散を実行し得る。
【0030】
図1では、NRF100およびSCP101以外のいずれのノードも、それらがサービスを要求しているか提供しているかに応じて、コンシューマNFまたはプロデューサNFとなり得る。図示した例では、ノードは、ネットワーク内でポリシー関連動作を実行するポリシー制御機能(PCF:Policy Control Function)102と、ユーザデータを管理するユーザデータ管理(UDM:User Data Management)機能104と、アプリケーションサービスを提供するアプリケーション機能106とを含む。図1に示すノードは、アクセスおよびモビリティ管理(AMF:Access and Mobility Management)機能110とPCF102との間のセッションを管理するセッション管理機能(SMF:Session Management Function)108をさらに含む。AMF110は、4Gネットワークにおいてモビリティ管理エンティティ(MME:Mobility Management Entity)によって実行される動作と同様のモビリティ管理動作を実行する。認証サーバ機能(AUSF:Authentication Server Function)112は、UE114のようにネットワークへのアクセスを求めるユーザ機器(UE:User Equipment)のための認証サービスを実行する。
【0031】
ネットワークスライス選択機能(NSSF:Network Slice Selection Function)116は、ネットワークスライスに関連する特定のネットワーク能力および特性にアクセスしようとするデバイスのためのネットワークスライスサービスを提供する。ネットワーク露出機能(NEF:Network Exposure Function)118は、IoT(Internet of Things)デバイスおよびネットワークに接続された他のUEに関する情報を取得しようとするアプリケーション機能のためのAPI(Application Programming Interfaces)を提供する。
【0032】
無線アクセスネットワーク(RAN:Radio Access network)120は、無線リンクを介してUE114をネットワークに接続する。無線アクセスネットワーク120は、gノードB(gNB)または他の無線アクセスポイントを用いてアクセスされ得る。ユーザプレーン機能(UPF:User Plane Function)122は、ユーザプレーンサービスのための様々なプロキシ機能をサポート可能である。そのようなプロキシ機能の一例は、マルチパス送信制御プロトコル(MPTCP:Multipath Transmission Control Protocol)プロキシ機能である。UPF122はまた、ネットワーク性能測定を取得するためにUE114によって使用され得る性能測定機能をサポートし得る。また、図1には、インターネットサービスなどのデータネットワークサービスにUEがアクセスするデータネットワーク(DN:Data Network)124も示されている。
【0033】
前述したように、プロデューサNFは、プロデューサNFが提供するサービスの種類を示すためにNRFに登録する。プロデューサNFはまた、容量および優先情報をNRFに登録できる。コンシューマNFは、特定のサービスを提供するために登録されたプロデューサNFを検出でき、プロデューサNFを選択するために容量および優先情報を使用できる。
【0034】
コンシューマNFは、NFサービスプロデューサNFと直接的に通信できる。あるいは、コンシューマNFは、SCPを介してプロデューサNFと間接的に通信できる。直接通信では、コンシューマNFは、ローカル構成によって、またはNRFを介して、対象のプロデューサNFの検出を実行する。さらに、コンシューマNFは、対象のサービスプロデューサNFと直接通信する。間接モードでは、コンシューマNFは、サービス要求メッセージをSCPに送信し、SCPは、コンシューマNFの代理でサービス検出およびプロデューサNFの選択を実行し得る。
【0035】
本明細書で説明される主題は、5GコンシューマNFとプロデューサNFとの間に存在するサービス通信プロキシ(SCP)を含む。SCPは、3GPP TS 23.501に定義されているように、SCP機能を実行し得る。そのような機能は、プロデューサNFサービス検出、プロデューサNF選択、コンシューマNFとプロデューサNFとの間のメッセージのルーティング、および、プロデューサNFとコンシューマNFとの間の負荷分散を含み得る。図2は、サービス通信プロキシがプロデューサNFとコンシューマNFとの間に存在する例示的なアーキテクチャを示すネットワーク図である。図2において、サービス通信プロキシ200は、プロデューサNF206および208からサービスを受けるために5GコンシューマNF204に接続されたサービスIPアドレス202を提供する。サービス通信プロキシ200は、コンシューマNF204からの要求をプロデューサNF206および208に転送し、プロデューサNF206および208からの応答をコンシューマNF204にルーティングする。サービス通信プロキシ200は、コンシューマNF204からのイングレスサービス要求がSCPワーカインスタンス210および212間で負荷分散されるように、拡張性がある態様で展開されるSCPワーカインスタンス210および212を含む。各SCPワーカインスタンス210および212は、冗長性および負荷分布の目的のために、プロデューサNFサービスインスタンス206および208のすべてに接続されている。図示した例では、SCPワーカインスタンス210は、サービスエンドポイント206A,206B,208Aおよび208Bをそれぞれ介して、プロデューサNFサービスインスタンス206およびプロデューサNFサービスインスタンス208とのHTTP2サービス接続を開始する。同様に、SCPワーカインスタンス212は、サービスエンドポイント206A,206B,208Aおよび208Bをそれぞれ介して、プロデューサNFサービスインスタンス206および208とのHTTP2サービス接続を確立する。サービスエンドポイント206A,206B,208Aおよび208Bの各々は、プロデューサNFサービスインスタンス206および208によって宣伝されるサービスアクセスポイントであり得る。
【0036】
サービス通信プロキシ200は、少なくとも1つのプロセッサおよびメモリを含むコンピュータプラットフォームを用いて実装され得る。コンピュータプラットフォームは、ネットワークサービスプロバイダによって管理される設備におけるオンプレミス展開用に構成されてもよいし、クラウドネットワーク展開用に構成されてもよい。クラウド展開では、サービス通信プロキシは、ネットワークサービスプロバイダにクラウドサービスとして提供されてもよい。
【0037】
図3は、プロデューサNFサービスインスタンスへのSCP200によって生成されたサービス要求のためのエグレスレートポリシングなしに、図2に示されたアーキテクチャにて起こり得る課題を説明するためのネットワーク図である。プロデューサNFサービスインスタンス206および208は、それらのレート容量をSCP200に公開し得る。図3において、プロデューサNFサービスインスタンス206は、毎秒50,000要求の公開レート容量を有する。プロデューサNFサービスインスタンス208は、毎秒70,000要求の公開レート容量を有する。レート容量は、ある期間内に各プロデューサNFが処理可能な新たなサービス要求の数を規定する。SCP200は各プロデューサNFのレート容量を認識しているとしても、SCP200は複数のSCPワーカインスタンスを用いてプロデューサNF206および208にサービス要求を送信し、かつ、SCPワーカインスタンスは他のSCPワーカインスタンスによって送信されたサービス要求を認識していないため、プロデューサNFサービスインスタンス206および208のレート容量が所定の時間間隔で超過され得る。
【0038】
この課題を回避するために、プロデューサNFの容量を超過する独立エンティティからのトラフィック受信に対してプロデューサNFサービスインスタンスが保護されるように、プロデューサNFサービスインスタンス毎にレート制限が適用されるべきである。図3に示されるアーキテクチャの課題は、複数のSCPワーカインスタンスが同じプロデューサNFにメッセージを接続してルーティングでき、SCPワーカインスタンスが他のSCPワーカインスタンスの伝送レートを認識していないという事実を含む。その結果、プロデューサNFサービスインスタンスが過負荷になる可能性が高い。
【0039】
この課題に対して考えられる1つの解決策は、各プロデューサNFによる容量の静的な割当を各SCPワーカインスタンスに提供することである。たとえば、プロデューサNFサービスインスタンス206は、その総容量の半分をSCPワーカインスタンス210に静的に割り当て、他の半分をSCPワーカインスタンス212に静的に割り当てることができる。この手法の1つの課題は、入力されるサービス要求がSCPワーカインスタンス210および212の間で均等に分散されない場合に、プロデューサNFサービスインスタンス206の容量を十分に活用できないことである。SCPワーカインスタンスが自身のエグレストラフィックレートを規制することを要する他の課題は、エグレスサービスインスタンスに対する複数のエンドポイントが存在し得、NFサービスインスタンス当たりの追跡レート制限がSCPワーカインスタンスロジックを不必要に複雑にし得ることである。SCPワーカインスタンス間にプロデューサNF容量を静的に割り当てることに伴う他の課題は、新たなSCPワーカインスタンスが継続的に確立される可能性があり、新規のおよび既存のSCPワーカインスタンス間に静的容量の再割当を必要とすることである。
【0040】
図4は、NFサービスインスタンス毎にエグレスレート制限を実行するためにSCPワーカインスタンスとは別のマイクロサービスとして実装されるレート制限ポリサ400を有する図3のアーキテクチャを示すネットワーク図である。図示された例では、レート制限ポリサ400は、プロデューサNFサービスインスタンス毎の総レート限度容量を維持し、SCPワーカインスタンス210および212間の容量割当を制御するメモリ内データベースまたはキャッシュ402を含む。レート制限ポリサ400は、プロデューサNFから、または、プロデューサNFから容量情報を受信するSCP200から、プロデューサNF容量情報を受信し得る。
【0041】
SCPワーカインスタンス212は、コンシューマNFからのサービス要求を処理するためにSCP200によってインスタンス化されたエンティティである。一般に、SCPワーカインスタンスの機能は、コンシューマNFから入力されるサービス要求を受信すること、(たとえば、提供されるサービスの種類に基づいて)サービス要求を処理するためにプロデューサNFを選択すること、レート制限ポリサ400からプロデューサNFサービスインスタンス容量を要求すること、および、レート制限ポリサによって許可されたプロデューサNFサービスインスタンス容量が要求を処理するのに十分であるかどうかに応じてサービス要求を転送または脱落(drop)させることを含む。レート制限ポリサ400は、所定のサービスの容量の割当に対する要求をSCPワーカインスタンス210および212から受信する。レート制限ポリサ400は、以下で説明するトークンバケットアルゴリズムを使用して、NFサービスインスタンス毎に各SCPワーカにレート容量スライスを割り当てる。各プロデューサNFサービスインスタンス206および208が利用可能なまたは使用済みの容量は、高速アクセスのためにデータベース402に維持され得る。
【0042】
レート制限ポリサ400は、少なくとも1つのプロセッサおよびメモリを含むコンピュータプラットフォームを用いて実装され得る。コンピュータプラットフォームは、ネットワークサービスプロバイダによって管理される設備におけるオンプレミス展開用に構成されてもよいし、クラウドネットワーク展開用に構成されてもよい。クラウド展開では、レート制限ポリサ400は、ネットワークサービスプロバイダにクラウドサービスとして提供されてもよい。
【0043】
SCPワーカインスタンスがプロデューサNFサービスインスタンスの使用済み容量を維持する必要はないため、各SCPワーカインスタンス210および212におけるレート制限ロジックは、図4に示されるアーキテクチャを用いて単純化される。それに代えて、各SCPワーカインスタンス210および212は、コンシューマNF204からのサービス要求を処理するためにレート制限ポリサ400によって許可された十分なプロデューサNFサービスインスタンス容量を有するか否かを判定する。SCPワーカインスタンスが十分なプロデューサNFサービスインスタンス容量を有さない場合、ワーカは、レート制限ポリサ400からの追加容量を要求する。レート制限ポリサ400が容量をSCPワーカインスタンスに許可する場合、SCPワーカインスタンスは、対応するサービス要求を受け入れ、許可された容量に従ってNFサービスインスタンス206または208に要求をルーティングできる。SCPワーカインスタンスが新たな要求を処理するのに十分な容量を取得できない場合、SCPワーカインスタンスは、プロデューサNFサービスインスタンスのためのトラフィックを脱落させてもよい。このように、レート制限は、SCPワーカインスタンスに対して、スケールアップまたはスケールダウンに拘らずシームレスである。
【0044】
前述したように、一例では、レート制限ポリサ400は、サービスインスタンス毎にレート制限ポリシングを実行するためのトークンバケットアルゴリズムを実装する。トークンバケットアルゴリズムは、レート制限ウィンドウ毎にすべてのプロデューサNFサービスインスタンス206または208について実装され得る。レート制限ウィンドウは、1秒などの期間であり、その期間にわたって、当該ウィンドウの間に許可され得るトークン数を用いてNFサービスインスタンスのレート限度容量が定義され得る。SCPワーカインスタンスは、レート制限ポリサ400からのレート制限ウィンドウにおいて複数のトークン(コンシューマNFからの各係属中の要求に対して1トークン)を要求し得る。SCPワーカインスタンスのアルゴリズムについては後に詳細に説明する。レート制限ポリシングは、2つの異なるアルゴリズムで実装され得る。一方のアルゴリズムは固定ウィンドウを使用し、もう一方のアルゴリズムはスライディングウィンドウを使用する。図5は、レート制限ポリサ400によって実装され得る固定ウィンドウレートポリシングアルゴリズムを示す。固定ウィンドウアルゴリズムは、2つの異なる構成で動作する。一方の構成は、トークン要求数がプロデューサNFの最大限度容量を超過するであろう場合に、要求が拒否される最大限度構成である。もう一方の構成オプションは、ベストエフォート構成オプションである。構成オプションでは、所定のウィンドウにおけるトークン要求数が利用可能なトークン数を超過する場合に、利用可能なトークンが、それらが現在の要求を完全に満たさなくても割り当てられ得る。トークン需要毎に、レート制限ポリサ400は、アルゴリズムに従って許可されたトークンおよび現在のウィンドウに残っている時間を返す。
【0045】
図5のフローチャートを参照して、SCPワーカは、最初にまたは断続的に、SCPワーカインスタンスが所定のサービス要求のためのサービスを提供することを選択したプロデューサNFサービスインスタンスに対するトークンを要求し得る。トークン割当要求は、現在のタイムスタンプおよび現在のトークンアスク(トークン要求数)を含み得る。ステップ500において、レート制限ポリサ400は、トークン割当要求を受信し、データベース402における検索を実行して、要求が現在の時間間隔に対する新たな要求であるかどうか、または、現在の時間間隔でトークンが要求者に既に割り当てられているかどうかを判定する。ステップ502において、レコードが検索において見つからない場合、要求は新たな要求であって、制御はステップ504に進み、サービスXのためのトークン割当の第1ウィンドウを開始する。ここで、以前に割り当てられたトークン数は、ウィンドウを作成した直後であるためゼロに設定される。以前の満了時間は、現在のタイムスタンプにウィンドウ長を加えたもの、すなわち、作成されたウィンドウの満了時間に設定される。ステップ502において、レコードが見つかった場合、要求は同じ要求者に対する後続の要求であって、制御はステップ506に進み、以前に割り当てられたトークンおよび以前の満了時間が読み込まれる。
【0046】
ステップ508において、P-Expiryタイマが満了したか否かが判定される。P-Expiryタイマは、以前に割り当てられたトークンの満了を制御する。P-Expiryタイマが満了している場合、制御はステップ504に進み、現在の要求が新たな要求のように処理される。ステップ508において前回の満了時間が満了していない場合、制御はステップ510に進む。ステップ510では、以前に割り当てられたトークン数に、現在の要求されたトークン数を加えたものが、時間間隔に対するサービスインスタンスの最大限度を超過するかどうかが判定される。最大限度を超過しない場合、制御はステップ510に進み、要求されたトークンが割り振られ、変数Pトークン(以前のトークン)は、PトークンにCトークン(現在要求されているトークン)を加えた現在値に等しくなるように設定される。ステップ512において、PトークンおよびCトークンの値がデータベース402に格納される。その後、SCPワーカインスタンスは、プロデューサNFサービスインスタンスにサービス要求を送信することによってトークンを消費できる。ある実施形態では、1つのトークンは、SCPワーカインスタンスが1つのサービス要求をプロデューサNFサービスインスタンスに送信することを可能にする。SCPワーカインスタンスが対象のプロデューサNFサービスにサービス要求を送信した後、SCPワーカインスタンスは、利用可能なトークン数をデクリメントする。
【0047】
ステップ510に戻り、以前に割り当てられたトークンに、時間間隔で現在要求されたトークンを加えたものが最大限度を超過する場合、制御はステップ512に進み、ベストエフォート割当が実装されているかどうかが判定される。前述したように、ベストエフォート割当は、利用可能なトークン数が現在の要求を満たすのに十分でない場合であってもトークンが割り当てられることを可能にする。ベストエフォート割当が実装されない場合、制御は、トークン需要が拒否されるステップ516に進み、その後、PトークンおよびP-Expiryの値がデータベース402に格納される512に進む。ベストエフォート割当が実装される場合、制御は、残りのトークンが割り当てられるステップ514に進む。割り当てられたトークン数は、最大限度から以前に割り当てられたトークンを差し引いた値に等しい。次いで、制御は、PトークンおよびP-Expiryの値がデータベース402に格納されるステップ512に進む。
【0048】
図5は、エグレスレート制限ポリサ400によって実装される固定ウィンドウトークン割当アルゴリズムを示す。前述したように、他の例では、トークン割当アルゴリズムは、スライディングウィンドウを利用し得る。スライディングウィンドウの手法では、所定のトークン割当ウィンドウにとっての初期時間および満了時間が時間的に移動する。ウィンドウ内のトークンはバケットに分割され、各バケットは開始時間および長さを有する。現在のタイムスタンプがバケットの終わり(バッケット開始時間+長さ)を通過するとき、バケット内の未使用トークンは満了し、同じまたは他のSCPワーカインスタンスからのトークンへの要求を満たすために再生(reclaim)および使用できる。したがって、スライディングウィンドウの使用は、未使用トークンの利用可能性を増大させる。
【0049】
図6は、レート制限ポリサ400によって実装され得る例示的なスライディングウィンドウ・トークンバケットアルゴリズムを示すフローチャートである。図6を参照して、SCPワーカは、サービスを対象とした要求を処理するためのトークンを最初にまたは断続的に要求する。要求は、現在のタイムスタンプおよび要求されたトークンの現在の数を特定する。ステップ600において、レート制限ポリサ400は、要求が時間間隔に対する新たな要求であるか既存の要求であるかを判定するために、データベース402における検索を実行する。エントリが検索内にない場合、要求は新たな要求である。したがって、制御は、ステップ602からステップ604に進み、その時間間隔に対して以前に割り当てられたトークン変数(P-Tokens)がゼロに初期化される。その後、制御はステップ606に進み、変数P-Bucket-Tokensがゼロに設定されるとともに、変数P-Bucket-Start-Timestampが現在のタイムスタンプに設定される。
【0050】
ステップ602において、エントリが見つかった場合、要求は、現在の時間間隔のための後続の要求である。要求が後続の要求である場合、制御はステップ608に進み、以前に割り当てられたトークン(P-Tokens)、変数P-Bucket-Tokens、および、変数P-Bucket-Start-Timeがデータベース内の値に初期化される。続いて制御はステップ610に進み、変数P-Bucket-Start-Timeが現在のタイムスタンプからバケット長を差し引いたものよりも古いかどうかが判定される。これが真である場合、制御はステップ612に進み、現在のバケットは満了とマークされる。その後、制御はステップ606に進み、変数P-tokens-bucketがゼロに設定されるとともに、変数P-Bucket-Start-Timeは現在の開始時刻に設定される。
【0051】
ステップ610の後、制御はステップ613に進み、満了したトークンが満了したバケットから再生され、満了したバケットのレコードが除去される。ステップ613から、制御はステップ614に進み、満了したバケットからの再生トークンがPトークン(すなわち、Pトークン=Pトークン-再生トークン)に調整される。続いて制御はステップ616に進み、以前に割り当てられたトークンに現在要求されたトークンを加えたものが最大限度より大きいかどうかが判定される。以前に割り当てられたトークンと現在のトークンとの合計が最大限度を超過しない場合、トークンが割り当てられ、制御はステップ618に進み、Pトークンが以前に割り当てられたトークンに現在要求されたトークンを加えたものに設定される。その後、制御はステップ620に進み、変数P-Tokens,P-Bucket-TokensおよびP-Bucket-Timestampの値がデータベース402に格納される。
【0052】
ステップ616を参照して、以前に割り当てられたトークンと現在要求されたトークンとの合計が時間間隔の最大限度を超過する場合、制御はステップ622に進み、ベストエフォート割当が実装されるかどうかが判定される。ベストエフォート割当が実装されていない場合、制御は、要求が拒否されるステップ624に進む。ベストエフォート割当が実装されている場合、制御はステップ626に進み、残りのトークンが部分的に要求を満たすように割り当てられる。続いて制御はステップ620に進み、変数P-Tokens,P-Bucket-TokensおよびP-Bucket-Timestampの値がデータベース402に格納される。
【0053】
前述したように、SCPワーカインスタンスとは別のレート制限ポリサ400においてレート制限ポリシングを実装することによって、SCPワーカインスタンスのロジックが単純化される。図7Aおよび図7Bは、各SCPワーカインスタンスによって実装され得るSCPワーカインスタンストークン要求アルゴリズムを示す。一般に、各SCPワーカインスタンスは、プロデューサNFサービスインスタンスによって提供されるサービスに対する要求を受信し、トークン数を初期化し、レート制限ポリサ400にトークンの初期許可を依頼する。後続の要求のために、SCPワーカインスタンスは、利用可能なトークン数が許可トークンの設定可能な比率より大きいかどうか確認し、要求を転送する。たとえば、積極的なトークン要求アルゴリズムでは、閾値量を50%以上に設定し、最終のトークン不足を予測してもよい。それほど積極的でないアルゴリズムでは、SCPワーカインスタンスがさらに多くのトークンを要求する前にそれらのトークン割当をほぼ枯渇させることを可能にするために、閾値は、25%などのより低い比率に設定されてもよい。後続のトークン需要は、サイズが固定されていてもよく、たとえばフィボナッチ数列に基づいて増加する順序であってもよい。SCPワーカインスタンスは、レート制限時間ウィンドウトラバーサルを管理する必要はない。レート制限ポリサは、現在のウィンドウに残り時間を提供する。
【0054】
図7Aに示されるフローチャートを参照して、SCPワーカインスタンスは、プロデューサNFサービスインスタンスによって提供されるサービスの要求をコンシューマNFから受信する。ステップ700において、SCPワーカインスタンスは、サービスインスタンスxのためのローカルデータベースにおける検索を実行し、現在利用可能なトークン数、現在許可されたトークン数、および、所定のサービスインスタンスに対する最後のトークン要求ステータスを決定する。なお、SCPワーカインスタンスは、プロデューサNFのレート容量または他のコンシューマNFによって使用中の利用可能な容量の値を知る必要はない。各SCPワーカインスタンスによって維持されるデータベースは、各プロデューサNFサービスインスタンスについてレート制限ポリサによってSCPワーカインスタンスに許可されるトークン数、および、使用されなかったトークン数を含み得る。
【0055】
ステップ702において、レコードが見つからない場合、SCPワーカインスタンスが現在の時間間隔で所定のプロデューサNFサービスインスタンスに対するトークンを要求していないことを意味する。続いて制御はステップ704に進み、SCPワーカインスタンスは、サービスインスタンスxに対する利用可能なトークンを0に初期化し、サービスインスタンスxに対する許可されたトークンを0に初期化し、ウィンドウ残り時間を0に初期化し、トークン要求ステータスを係属なしに初期化する。
【0056】
レコードが見つかった場合、SCPワーカインスタンスが現在の時間間隔でプロデューサNFサービスインスタンスに対するトークンを既に要求していることを意味する。レコードが見つかった場合、制御はステップ706に進み、SCPワーカインスタンスは、検索内に位置する情報を読み込む。読み込まれる情報は、サービスインスタンスのための利用可能なトークン、プロデューサNFサービスインスタンスのための許可されたトークン、ウィンドウ残り時間、および、トークン要求ステータスを含む。ステップ708において、SCPワーカは、利用可能なトークンから1を差し引いたものが、許可されたトークンの前述の設定可能な比率よりも大きいか否かを判定する。言い換えれば、SCPワーカは、既存のトークンの半数以上が現在の時間間隔に使用された場合に新たなトークンを要求する。これは積極的なアルゴリズムであるが、SCPワーカが欠乏することを防止し得る。
【0057】
利用可能なトークンから1を差し引いたものが、許可されたトークンの設定可能な比率よりも大きい場合、新たなトークンは必要とされない。そして、制御はステップ710に進み、要求はサービスインスタンスxに転送され、利用可能なトークン変数は、要求を満たすための1つのトークンの使用を示すためにデクリメントされる。
【0058】
利用可能なトークンから1を差し引いたものが、許可されたトークンの設定可能な比率よりも大きくない場合、制御はステップ712に進み、SCPワーカは、現在の時間間隔に対する係属中のトークン要求があるか否かを判定する。係属中のトークン要求が存在する場合、制御はステップ714に進み、現在のウィンドウに残り時間があるかどうかが判定される。現在のウィンドウに残り時間がない場合、SCPワーカは、ステップ716でトークン要求を脱落させる。現在のウィンドウに残り時間がある場合、制御はステップ718に進み、SCPワーカは、利用可能なトークンがあるかどうかを判定する。利用可能なトークンが存在する場合、制御はステップ710に進み、SCPワーカはサービス要求を転送し、利用可能なトークン数をデクリメントする。利用可能なトークンがない場合、制御はステップ720に進み、係属中のトークン要求のステータスが何であるかが判定される。トークンステータス要求がある場合、制御はステップ722に進み、要求は待ち行列に入れられ、SCPワーカはレート制限ポリサからの応答を待つ。係属中のトークン要求がない場合、制御はステップ716に進み、現在の要求が脱落する。
【0059】
ステップ712において、係属中のトークン要求が存在せず、利用可能なトークン数が許可されたトークンの半数未満である場合、制御はステップ724に進む。そして、SCPワーカは、レート制限ポリサからトークンを要求し、係属中のトークンステータス要求変数を係属中にマークする。
【0060】
図7Bはトークン要求アルゴリズムを示す。図7Bにおいて、ステップ723にて、利用可能なトークン数がゼロである場合、制御はステップ728に進み、SCPワーカは、yが設定可能な値であるyトークンの許可をレート制限ポリサに要求する。ステップ730において、SCPワーカは、現在のウィンドウ内に時間が残された許可を受信する。ステップ732において、SCPワーカは、利用可能なトークンを、現在利用可能なトークンに許可を加えた数に設定する。許可されたトークン変数は、許可のトークン数に設定される。ウィンドウ時間残り変数は現在のウィンドウの残り時間に設定され、トークン要求ステータスは係属要求なしに設定される。
【0061】
ステップ726において、利用可能なトークン数がゼロである場合、制御はステップ734に進み、SCPワーカインスタンスは、wが設定可能な値である初期許可wトークンをレート制限ポリサに要求する。wを大きな値に設定することにより、メッセージの初期バーストの供給を促進できる。ステップ736において、SCPワーカインスタンスは、レート制限ポリサからの許可を待つ。ステップ730において許可が生じると、制御はステップ732に進み、SCPワーカインスタンスは、トークン許可を反映するようにその変数を更新する。
【0062】
図8は、サービス通信プロキシにおけるネットワーク機能サービスインスタンス・ワイドエグレスレート制限のための例示的な処理を示すフローチャートである。図8を参照して、ステップ800において、サービス要求がコンシューマNFから受信される。たとえば、サービス通信プロキシ200は、プロデューサNFによって提供されるサービスにアクセスするためのサービス要求をコンシューマNF204から受信し得る。サービス要求は、UEがネットワークに接続すること、または、UEが通信セッションを開始することに応答して開始され得る。
【0063】
ステップ802において、サービス要求は、SCPワーカインスタンスに転送される。たとえば、5GサービスコンシューマNF204は、SCP200の単一のIPアドレスにサービス要求を送信し得る。SCP200は、SCPワーカインスタンス210および212に要求を転送し得る。一例では、SCP200は、SCPワーカインスタンス210および212間で入力されるサービス要求を負荷分散してもよい。
【0064】
ステップ804において、SCPワーカインスタンスは、レート制限ポリサから、サービス要求を処理するためのプロデューサNFサービスインスタンス容量を要求する。たとえば、SCPワーカインスタンス210および212は、サービス要求を処理するためにレート制限ポリサ400からプロデューサNFサービスインスタンス容量のトークンまたは他の指示を要求し得る。SCPワーカインスタンスからの要求は、サービス要求において識別されたサービスを提供するプロデューサNFを識別し得る。SCPワーカインスタンスは、プロデューサNFからのサービス登録に基づいて、プロデューサNFサービスインスタンスによって提供されるサービスを認識してもよい。
【0065】
ステップ806において、レート制限ポリサは、SCPワーカインスタンスからの結合エグレストラフィックがプロデューサNFサービスインスタンスの容量を超過しないように、プロデューサNFサービスインスタンス・ワイドエグレスレート制限を実行する。たとえば、レート制限ポリサ400は、SCPワーカインスタンス210および212からのトークン要求に応答して、SCPワーカインスタンスによって選択されたプロデューサNFサービスの容量超過を要求の許可が引き起こすかどうかに応じて、トークンを許可または拒否し得る。ベストエフォートトークン割当が実装される場合、レート制限ポリサ400は、トークン要求数が利用可能なトークン数を超過するときであっても、時間間隔で利用可能なトークン数を有するトークン割当要求を部分的に満足し得る。ベストエフォートトークン割当が実装されない場合、トークン要求数が利用可能なトークン数を超過するときには、トークン割当要求は拒否されるであろう。上記のように、レート制限ポリサ400は、プロデューサNFサービスインスタンスの容量と、コンシューマNFサービスインスタンスに既に割り当てられたその容量の部分とを追跡するために使用するメモリ内データベースを維持し得る。レート制限ポリサ400は、各トークン割当要求を許可するか拒否するかを判定するためにデータベースにアクセスし得る。
【0066】
このように、各プロデューサNFサービスインスタンスに割り当てられたトークンのグローバルな視点を有するレート制限ポリサを用いて、SCPワーカインスタンストークン要求アルゴリズムが単純化される。SCPワーカインスタンスは、トークン需要がレート制限ポリサを有する係属状態にある場合には、サービス要求を脱落させない。係属要求は、レート制限ポリサからの応答が来るまで待ち行列に入れられる。これは、ワーカがレート制限ポリサから許可をゼロとして得る場合、すなわち、依然としてウィンドウ内に時間が残されているが、現在のレート制限ウィンドウ内で超過したレートが、時間ウィンドウが満了するか下降するまで受信されたメッセージを要求する場合と同様に、初期要求にも当てはまる。ある時間間隔中の後続のトークン需要は、サイズが固定されるか、たとえばフィボナッチ数列に基づいて増加する値に設定され得る。よって、本明細書で説明される主題を用いて、SCP機能が単純化され、NFサービスインスタンス毎にレート制限が実装される。SCP200は、SCP200経由でアクセス可能なすべてのプロデューサNFに対してエグレス側レート制限を実行するための5GプロデューサNFのためのプロキシまたはAPIゲートウェイとして実装できる。SCP200および/またはレート制限ポリサ400は、ユーザのサイトに展開されたオンプレミスハードウェアプラットフォームとして、または、クラウドネットワークを介して利用可能に作成されたサービスとして実装できる。
【0067】
本明細書で説明される主題の様々な詳細は、本明細書で説明される主題の範囲から逸脱することなく変更され得ることが理解されるであろう。さらに、本明細書で説明される主題は、以下で説明される特許請求の範囲によって規定されるため、前述の説明は、例示を目的とするものに過ぎず、限定を目的とするものではない。
図1
図2
図3
図4
図5
図6
図7A
図7B
図8