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

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

▶ グーグル インコーポレイテッドの特許一覧

特許7443563モバイルネットワークにおける負荷分散およびサービス選択
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-02-26
(45)【発行日】2024-03-05
(54)【発明の名称】モバイルネットワークにおける負荷分散およびサービス選択
(51)【国際特許分類】
   H04W 28/088 20230101AFI20240227BHJP
   H04W 24/02 20090101ALI20240227BHJP
   G06N 20/00 20190101ALI20240227BHJP
   H04W 92/24 20090101ALI20240227BHJP
   H04W 88/14 20090101ALI20240227BHJP
【FI】
H04W28/088
H04W24/02
G06N20/00 130
H04W92/24
H04W88/14
【請求項の数】 28
(21)【出願番号】P 2022564014
(86)(22)【出願日】2021-04-21
(65)【公表番号】
(43)【公表日】2023-06-01
(86)【国際出願番号】 US2021028377
(87)【国際公開番号】W WO2021216693
(87)【国際公開日】2021-10-28
【審査請求日】2022-11-28
(31)【優先権主張番号】16/854,140
(32)【優先日】2020-04-21
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】502208397
【氏名又は名称】グーグル エルエルシー
【氏名又は名称原語表記】Google LLC
【住所又は居所原語表記】1600 Amphitheatre Parkway 94043 Mountain View, CA U.S.A.
(74)【代理人】
【識別番号】100142907
【弁理士】
【氏名又は名称】本田 淳
(72)【発明者】
【氏名】クディ、ラジーブ
【審査官】青木 健
(56)【参考文献】
【文献】国際公開第2020/018012(WO,A1)
【文献】米国特許出願公開第2019/0261213(US,A1)
【文献】平井 弘実、他3名,IoT時代に向けた低遅延通信サービスのためのゲートウェイ選択方式,電子情報通信学会技術研究報告 Vol.115 No.251,一般社団法人電子情報通信学会,2015年10月08日,43~46頁
(58)【調査した分野】(Int.Cl.,DB名)
H04W 4/00 - 99/00
H04B 7/24 - 7/26
G06N 20/00
3GPP TSG RAN WG1-4
SA WG1-4
CT WG1,4
(57)【特許請求の範囲】
【請求項1】
方法(400)であって、
データ処理ハードウェア(202)において、制御プレーン(160)から、パケットコアネットワーク(120)内のユーザプレーンインスタンス(152)に対する要求を受信するステップであって、前記ユーザプレーンインスタンス(152)は、通信セッション中にユーザ機器(102)に対するパケット処理を実行するように構成される、前記要求を受信するステップと、
前記データ処理ハードウェア(202)が、前記ユーザ機器(102)と通信している基地局(104)に関連付けられた複数のユーザプレーンインスタンス候補(212)を識別するステップであって、前記複数のユーザプレーンインスタンス候補(212)は、前記制御プレーン(160)によって構成可能である、前記複数のユーザプレーンインスタンス候補(212)を識別するステップと、
各ユーザプレーンインスタンス候補(212)に対して、前記データ処理ハードウェア(202)が、前記ユーザ機器(102)と通信している前記基地局(104)の一部の主要な性能指標(112)に対応する1つまたは複数の選択パラメータ(114)を決定するステップと、
前記データ処理ハードウェア(202)が、前記複数のユーザプレーンインスタンス候補(212)の各々に対して決定された前記1つまたは複数の選択パラメータ(114)に基づいて、前記制御プレーン(160)からの前記ユーザプレーンインスタンス(152)に対する前記要求を満たすために前記複数のユーザプレーンインスタンス候補(212)のうちの1つを、機械学習選択モデル(232)を使用して選択するステップと、を含み、前記機械学習選択モデル(232)は、
前記複数のユーザプレーンインスタンス候補(212)の各々に対して決定された前記1つまたは複数の選択パラメータ(114)と選択基準とを受信するように構成され、かつ
複数のトレーニンググループ上でトレーニングされ、各トレーニンググループは、複数のトレーニングユーザプレーンインスタンス(236)を含み、対応するトレーニンググループ内の各トレーニングユーザプレーンインスタンス(236)は、1つまたは複数の対応する選択パラメータ(114)および選択基準ラベルに関連付けられ、前記選択基準ラベルは、対応するトレーニングユーザプレーンインスタンス(236)が前記選択基準を満たすか否かを示しており、
前記選択基準は、ネットワーク性能ベースの基準、ネットワークデバイスベースの基準、および要求中のネットワークデバイスの条件に基づく基準からなる複合選択基準(224)を含み、前記機械学習選択モデルは、粒度の増加する順序で複合選択基準(224)を使用する、方法(400)。
【請求項2】
前記データ処理ハードウェア(202)が、前記複数のユーザプレーンインスタンス候補(212)の各々に対して決定された前記1つまたは複数の選択パラメータ(114)に基づいて、ユーザプレーンインスタンス候補(212)のリストを生成するステップをさらに含み、
前記要求を満たすために前記複数のユーザプレーンインスタンス候補(212)のうちの1つを選択するステップは、前記ユーザプレーンインスタンス候補(212)のリストから以前に選択されたユーザプレーンインスタンス(152)に基づいて、前記ユーザプレーンインスタンス候補(212)のリストから前記ユーザプレーンインスタンス候補(212)を順次選択することを含む、請求項1に記載の方法(400)。
【請求項3】
前記データ処理ハードウェア(202)が、前記複数のユーザプレーンインスタンス候補(212)の各ユーザプレーンインスタンス候補(212)に対応する重みを割り当てるステップであって、前記対応する重みは、対応するユーザプレーンインスタンス候補(212)に対して決定された前記1つまたは複数の選択パラメータ(114)を表す、前記対応する重みを割り当てるステップと、
前記データ処理ハードウェア(202)が、前記複数のユーザプレーンインスタンス候補(212)の各ユーザプレーンインスタンス候補(212)に割り当てられた前記対応する重みに基づいて、前記複数のユーザプレーンインスタンス候補(212)をランク付けするステップと、をさらに含み、
前記要求を満たすために前記複数のユーザプレーンインスタンス候補(212)のうちの1つを選択するステップは、前記ユーザプレーンインスタンス(212)に対する前記要求を満たすために、最高のランキングを有するユーザプレーンインスタンス候補(152)を前記複数のユーザプレーンインスタンス候補(212)のうちの1つとして選択することを含む、請求項1または2に記載の方法(400)。
【請求項4】
前記要求を満たすために前記複数のユーザプレーンインスタンス候補(212)のうちの1つを選択するステップは、前記複数のユーザプレーンインスタンス候補(212)のうちの1つが選択基準を満たすことを決定することを含み、前記選択基準は、前記複数のユーザプレーンインスタンス候補(212)の各々に対して決定された前記1つまたは複数の選択パラメータ(114)の最小値または最大値に対応する、請求項1乃至3のいずれか一項に記載の方法(400)。
【請求項5】
前記複数のユーザプレーンインスタンス候補(212)の各々に対して決定された前記1つまたは複数の選択パラメータ(114)のうちの1つが、前記対応するユーザプレーンインスタンス候補(212)に関連付けられたレイテンシ測定値を含み、
前記選択基準は、前記複数のユーザプレーンインスタンス候補(212)に関連付けられた複数のレイテンシ測定値のうちの最も低いレイテンシ測定値を含む、請求項4に記載の方法(400)。
【請求項6】
前記複数のユーザプレーンインスタンス候補(212)の各々に対して決定された前記1つまたは複数の選択パラメータ(114)のうちの1つは、前記対応するユーザプレーンインスタンス候補(212)に関連付けられた負荷を含み、
前記選択基準は、前記複数のユーザプレーンインスタンス候補(212)に関連付けられた複数の負荷のうちの最も低い負荷を含む、請求項4に記載の方法(400)。
【請求項7】
前記選択基準は、時刻を含むとともに、
基地局ノードインターネットプロトコルアドレスと、
進化型ユニバーサルモバイル電気通信サービス地上波無線アクセスネットワークセルグローバル識別子(ECGI)と、
国際モバイル機器識別子(IMEI)と、
国際モバイル加入者識別子(IMSI)とのうちの少なくとも1つを含む、請求項に記載の方法(400)。
【請求項8】
前記選択基準は、転送制御プロトコル再送信の最低レイテンシまたは最低レートのうちの少なくとも1つを含む、請求項に記載の方法(400)。
【請求項9】
前記データ処理ハードウェア(202)が、所与の時刻にパケットコアネットワーク識別子を受信するステップをさらに含み、
前記機械学習選択モデル(232)は、所与の時刻における前記パケットコアネットワーク識別子を使用して、前記ユーザプレーンインスタンスに対する前記要求を満たすために前記複数のユーザプレーンインスタンス候補のうちの1つを選択する、請求項に記載の方法(400)。
【請求項10】
前記データ処理ハードウェア(202)が、所与の時刻にパケットコアネットワーク識別子を受信するステップをさらに含み、
前記機械学習選択モデル(232)による前記ユーザプレーンインスタンスの選択は、所与の時刻における前記パケットコアネットワーク識別子と、前記要求に関連付けられた前記ユーザ機器とに基づく、請求項に記載の方法(400)。
【請求項11】
前記パケットコアネットワーク識別子が、基地局ノードインターネットプロトコルアドレスまたは進化型ユニバーサルモバイル電気通信サービス地上波無線アクセスネットワークセルグローバル識別子を含む、請求項10に記載の方法(400)。
【請求項12】
前記パケットコアネットワーク識別子が、基地局ノードインターネットプロトコルアドレスまたは進化型ユニバーサルモバイル電気通信サービス地上波無線アクセスネットワークセルグローバル識別子を含む、請求項10に記載の方法(400)。
【請求項13】
前記パケットコアネットワーク(120)は、第5世代(5G)コアインフラストラクチャを含む、請求項1乃至12のいずれか一項に記載の方法(400)。
【請求項14】
前記パケットコアネットワーク(120)は、第4世代(4G)コアインフラストラクチャ用の進化型パケットコアネットワークインフラストラクチャを含む、請求項1乃至13のいずれか一項に記載の方法(400)。
【請求項15】
方法(500)であって、
データ処理ハードウェア(302)において、パケットコアネットワーク(120)のセッションマネージャ(164)から、前記パケットコアネットワーク(120)内の制御プレーンインスタンス(166)に対する要求を受信するステップであって、前記制御プレーンインスタンス(166)は、通信セッション中にユーザ機器(102)に対してパケットをルーティングするように構成される、前記要求を受信するステップと、
前記データ処理ハードウェア(302)が、前記パケットコアネットワーク(120)のモビリティマネージャ(132)に関連付けられた複数の制御プレーンインスタンス候補(312)を識別するステップであって、前記複数の制御プレーンインスタンス候補(312)は、前記モビリティマネージャ(132)の地理的領域にサービスを提供するように構成される、前記複数の制御プレーンインスタンス候補(312)を識別するステップと、
各制御プレーンインスタンス候補(312)に対して、前記データ処理ハードウェア(302)が、前記ユーザ機器(102)と通信している前記モビリティマネージャ(132)の一部の主要な性能指標(136)に対応する1つまたは複数の選択パラメータ(138)を決定するステップと、
前記データ処理ハードウェア(302)が、決定された前記1つまたは複数の選択パラメータ(138)に基づいて、前記セッションマネージャ(164)からの前記制御プレーンインスタンス(166)に対する前記要求を満たすために個々の制御プレーンインスタンス候補(312)を、機械学習選択モデル(332)を使用して選択するステップと、を含み、前記機械学習選択モデル(332)は、
前記複数の制御プレーンインスタンス候補(312)の各々に対して決定された前記1つまたは複数の選択パラメータ(138)と選択基準とを受信するように構成され、かつ
複数のトレーニンググループ上でトレーニングされ、各トレーニンググループは、複数のトレーニング制御プレーンインスタンス(336)を含み、対応するトレーニンググループ内の各トレーニング制御プレーンインスタンス(336)は、1つまたは複数の対応する選択パラメータ(138)および選択基準ラベルに関連付けられ、前記選択基準ラベルは、対応するトレーニング制御プレーンインスタンス(336)が前記選択基準を満たすか否かを示しており、
前記選択基準は、ネットワーク性能ベースの基準、ネットワークデバイスベースの基準、および要求中のネットワークデバイスの条件に基づく基準からなる複合選択基準(324)を含み、前記機械学習選択モデルは、粒度の増加する順序で複合選択基準(324)を使用する、方法(500)。
【請求項16】
前記セッションマネージャ(164)は、前記パケットコアネットワーク(120)のセッション管理機能を含み、前記パケットコアネットワーク(120)は、第5世代(5G)コアインフラストラクチャを含む、請求項15に記載の方法(500)。
【請求項17】
前記セッションマネージャ(164)は、前記パケットコアネットワーク(120)のゲートウェイに対応しており、前記パケットコアネットワーク(120)は、第4世代(4G)コアインフラストラクチャを含む、請求項15または16に記載の方法(500)。
【請求項18】
前記データ処理ハードウェア(302)が、前記複数の制御プレーンインスタンス候補(312)の各々に対して決定された前記1つまたは複数の選択パラメータ(138)に基づいて、制御プレーンインスタンス候補(312)のリストを生成するステップをさらに含み、
前記要求を満たすために前記複数の制御プレーンインスタンス候補(312)のうちの1つを選択することは、前記制御プレーンインスタンス候補(312)のリストから以前に選択された制御プレーンインスタンス(166)に基づいて、前記制御プレーンインスタンス候補(312)のリストから前記制御プレーンインスタンス候補(312)を順次選択することを含む、請求項15乃至17のいずれか一項に記載の方法(500)。
【請求項19】
前記データ処理ハードウェア(302)が、前記複数の制御プレーンインスタンス候補(312)の各制御プレーンインスタンス候補(312)に対応する重みを割り当てるステップであって、前記対応する重みは、対応する制御プレーンインスタンス候補(312)に対して決定された前記1つまたは複数の選択パラメータ(138)を表す、前記対応する重みを割り当てるステップと、
前記データ処理ハードウェア(302)が、前記複数の制御プレーンインスタンス候補(312)の各制御プレーンインスタンス候補(312)に対する前記対応する重みに基づいて、前記複数の制御プレーンインスタンス候補(312)をランク付けするステップと、をさらに含み、
前記要求を満たすために前記複数の制御プレーンインスタンス候補(312)のうちの1つを選択することは、前記制御プレーンインスタンス(312)に対する前記要求を満たすために、最高のランキングを有する前記制御プレーンインスタンス候補(166)を前記複数の制御プレーンインスタンス候補(312)のうちの1つとして選択することを含む、請求項15乃至18のいずれか一項に記載の方法(500)。
【請求項20】
前記要求を満たすために前記複数の制御プレーンインスタンス候補(312)のうちの1つを選択することは、前記データ処理ハードウェアが、前記複数の制御プレーンインスタンス候補(312)のうちの1つが選択基準を満たすことを決定することを含み、前記選択基準は、前記複数の制御プレーンインスタンス候補(312)の各々に対して決定された前記1つまたは複数の選択パラメータ(138)の最小値または最大値に対応する、請求項15乃至19のいずれか一項に記載の方法(500)。
【請求項21】
前記複数の制御プレーンインスタンス候補(312)の各々に対して決定された前記1つまたは複数の選択パラメータ(138)のうちの1つが、前記対応する制御プレーンインスタンス候補(312)に関連付けられたレイテンシ測定値を含み、
前記選択基準は、前記複数の制御プレーンインスタンス候補(312)に関連付けられた複数のレイテンシ測定値のうちの最も低いレイテンシ測定値を含む、請求項20に記載の方法(500)。
【請求項22】
前記複数の制御プレーンインスタンス候補(312)の各々に対して決定された前記1つまたは複数の選択パラメータ(138)のうちの1つが、前記対応する制御プレーンインスタンス候補(312)に関連付けられた負荷を含み、
前記選択基準は、前記複数の制御プレーンインスタンス候補(312)に関連付けられた複数の負荷のうちの最も低い負荷を含む、請求項20に記載の方法(500)。
【請求項23】
前記選択基準は、時刻を含むとともに、
モバイル管理エンティティ(MME)と、
アクセスおよびモビリティ管理機能(AMF)と、
国際モバイル機器識別子(IMEI)と、
国際モバイル加入者識別子(IMSI)とのうちの少なくとも1つを含む、請求項15に記載の方法(500)。
【請求項24】
前記選択基準は、汎用パケット無線サービストンネリングプロトコル再送信の最低レイテンシまたは最低レートのうちの少なくとも1つを含む、請求項15に記載の方法(500)。
【請求項25】
前記データ処理ハードウェア(302)が、所与の時刻にモビリティマネージャ(132)の識別子を受信するステップをさらに含み、
前記機械学習選択モデル(332)は、所与の時刻における前記モビリティマネージャ(132)の識別子を使用して、前記制御プレーンインスタンス(166)に対する前記要求を満たすために前記複数の制御プレーンインスタンス候補(312)のうちの1つを選択する、請求項15に記載の方法(500)。
【請求項26】
前記データ処理ハードウェア(302)が、所与の時刻にパケットコアネットワーク識別子を受信するステップをさらに含み、
前記機械学習選択モデル(332)は、所与の時刻における前記モビリティマネージャ(132)の前記識別子と、前記要求に関連付けられた前記ユーザ機器(102)とを使用して、前記制御プレーンインスタンス(166)に対する前記要求を満たすために前記複数の制御プレーンインスタンス候補(312)のうちの1つを選択する、請求項25に記載の方法(500)。
【請求項27】
前記モビリティマネージャ(132)の前記識別子は、モバイル管理エンティティ(MME)を識別する、請求項25または26に記載の方法(500)。
【請求項28】
前記モビリティマネージャ(132)の前記識別子は、アクセスおよびモビリティ管理機能(AMF)を識別する、請求項25乃至27のいずれか一項に記載の方法(500)。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、モバイルネットワークにおける負荷分散およびサービス選択に関する。
【背景技術】
【0002】
セルラー通信ネットワークは、モバイルデバイスおよびデータ端末などの加入者デバイスに対して、音声、ビデオ、パケットデータ、メッセージ、および番組などの通信コンテンツを提供する。セルラー通信ネットワークは、分散した地理的領域にわたって多数の加入者デバイスのための通信をサポートすることができる多数の基地局を含み得る。一般的に、携帯電話などのユーザデバイスが通信セッションを開始するとき、ネットワークは、通信セッションのためのサービスインスタンスを選択する。しかし、残念ながら、通信セッションのために選択されたインスタンスは、選択プロセスが、通信セッションが確立されたときのユーザの状況および/またはネットワークの状況などの要因を適切に考慮していない場合、通信セッション自体、または通信セッションに関するユーザのエクスペリエンスに影響を及ぼす可能性がある。
【発明の概要】
【0003】
本開示の一態様は、モバイルネットワークにおける負荷分散およびサービス選択のための方法を提供する。本方法は、データ処理ハードウェアにおいて、制御プレーンから、パケットコアネットワーク内のユーザプレーンインスタンスに対する要求を受信することを含む。ユーザプレーンインスタンスは、通信セッション中にユーザ機器のためのパケット処理を実行するように構成される。また、本方法は、データ処理ハードウェアが、ユーザ機器と通信している基地局に関連付けられた複数のユーザプレーンインスタンス候補を識別することを含む。複数のユーザプレーンインスタンス候補は、制御プレーンによって構成可能である。各ユーザプレーンインスタンス候補に対して、本方法は、データ処理ハードウェアが、ユーザ機器と通信している基地局についての一部の主要な性能指標に対応する1つまたは複数の選択パラメータを決定することを含む。方法は、データ処理ハードウェアが、複数のユーザプレーンインスタンス候補の各々に対して決定された1つまたは複数の選択パラメータに基づいて、制御プレーンからのユーザプレーンインスタンスに対する要求を満たすために複数のユーザプレーンインスタンス候補のうちの1つを選択することをさらに含む。
【0004】
本開示の実施形態は、以下の任意の特徴のうちの1つまたは複数を含み得る。いくつかの実施形態では、方法は、データ処理ハードウェアが、複数のユーザプレーンインスタンス候補の各々に対して決定された1つまたは複数の選択パラメータに基づいて、ユーザプレーンインスタンス候補のリストを生成することを含む。この実施形態では、要求を満たすために複数のユーザプレーンインスタンス候補のうちの1つを選択することは、ユーザプレーンインスタンス候補のリストから以前に選択されたユーザプレーンインスタンスに基づいて、ユーザプレーンインスタンス候補のリストからユーザプレーンインスタンス候補を順次選択することを含む。
【0005】
いくつかの例では、方法は、データ処理ハードウェアが、複数のユーザプレーンインスタンス候補の各ユーザプレーンインスタンス候補に対応する重みを割り当てることを含み、対応する重みは、対応するユーザプレーンインスタンス候補に対して決定された1つまたは複数の選択パラメータを表す。この例では、方法は、データ処理ハードウェアが、複数のユーザプレーンインスタンス候補の各ユーザプレーンインスタンス候補に対する対応する重みに基づいて、複数のユーザプレーンインスタンス候補をランク付けすることを含む。要求を満たすために複数のユーザプレーンインスタンス候補のうちの1つを選択することは、ユーザプレーンインスタンスに対する要求を満たすために、最高のランキングを有するユーザプレーンインスタンス候補を複数のユーザプレーンインスタンス候補のうちの1つとして選択することを含む。
【0006】
いくつかの構成では、要求を満たすために複数のユーザプレーンインスタンス候補のうちの1つを選択することは、データ処理ハードウェアが、複数のユーザプレーンインスタンス候補のうちの1つが選択基準を満たすことを決定することを含み、選択基準は、複数のユーザプレーンインスタンス候補の各々に対して決定された1つまたは複数の選択パラメータの最小値または最大値に対応する。ここで、複数のユーザプレーンインスタンス候補の各々に対して決定された1つまたは複数の選択パラメータのうちの1つが、対応するユーザプレーンインスタンス候補に関連付けられたレイテンシ測定値を含み得、選択基準は、複数のユーザプレーンインスタンス候補に関連付けられた複数のレイテンシ測定値のうちの最低のレイテンシ測定値を含み得る。追加的または代替的に、複数のユーザプレーンインスタンス候補の各々に対して決定された1つまたは複数の選択パラメータのうちの1つが、対応するユーザプレーンインスタンス候補に関連付けられた負荷を含み得、選択基準は、複数のユーザプレーンインスタンス候補に関連付けられた複数の負荷のうちの最低の負荷を含み得る。
【0007】
いくつかの実施形態では、要求を満たすために複数のユーザプレーンインスタンス候補のうちの1つを選択することは、複数のユーザプレーンインスタンス候補の各々に対して決定された1つまたは複数の選択パラメータと選択基準とを受信するように構成された機械学習選択モデルを使用することを含む。この実施形態では、機械学習選択モデルは、複数のトレーニンググループ上でトレーニングされ、各トレーニンググループは、複数のトレーニングユーザプレーンインスタンスを含み、対応するトレーニンググループ内の各トレーニングユーザプレーンインスタンスは、1つまたは複数の対応する選択パラメータおよび選択基準ラベルに関連付けられ、選択基準ラベルは、対応するトレーニングユーザプレーンインスタンスが選択基準を満たすか否かを示す。ここで、選択基準は、時刻を含むとともに、基地局ノードインターネットプロトコルアドレス、進化型ユニバーサルモバイル電気通信サービス地上波無線アクセスネットワークセルグローバル識別子(ECGI:evolved Universal Mobile Telecommunications Service Terrestrial Radio Access Network cell global identifier)、国際モバイル機器識別子(IMEI:International Mobile Equipment Identity)、または国際モバイル加入者識別子(IMSI:International Mobile Subscriber Identity)のうちの少なくとも1つを含み得る。任意選択的に、選択基準は、転送制御プロトコル再送信の最低レイテンシまたは最低レートのうちの少なくとも1つを含み得る。本方法は、データ処理ハードウェアが、所与の時刻におけるパケットコアネットワーク識別子を受信することを含み得、機械学習選択モデルは、所与の時刻におけるパケットコアネットワーク識別子を使用して、ユーザプレーンインスタンスに対する要求を満たすために複数のユーザプレーンインスタンス候補のうちの1つを選択し得る。任意選択的に、方法は、データ処理ハードウェアが、所与の時刻におけるパケットコアネットワーク識別子を受信することを含み得、機械学習選択モデルによるユーザプレーンインスタンスの選択は、所与の時刻におけるパケットコアネットワーク識別子と、要求に関連付けられたユーザ機器とに基づき得る。パケットコアネットワーク識別子は、基地局ノードインターネットプロトコルアドレスまたは進化型ユニバーサルモバイル電気通信サービス地上波無線アクセスネットワークセルグローバル識別子を含み得る。
【0008】
いくつかの例では、パケットコアネットワークは、第5世代(5G)コアインフラストラクチャを含む。追加的または代替的に、パケットコアネットワークは、第4世代(4G)コアインフラストラクチャ用の進化型パケットコアネットワークインフラストラクチャを含み得る。
【0009】
本開示の別の態様は、モバイルネットワークにおける負荷分散およびサービス選択のための方法を提供する。本方法は、データ処理ハードウェアにおいて、パケットコアネットワークのセッションマネージャから、パケットコアネットワーク内の制御プレーンインスタンスに対する要求を受信することを含む。制御プレーンインスタンスは、通信セッション中にユーザ機器のためのパケットをルーティングするように構成される。また、本方法は、データ処理ハードウェアが、パケットコアネットワークのモビリティマネージャに関連付けられた複数の制御プレーンインスタンス候補を識別することを含む。複数の制御プレーンインスタンス候補は、モビリティマネージャの地理的領域にサービスを提供するように構成される。各制御プレーンインスタンス候補に対して、本方法は、データ処理ハードウェアが、ユーザ機器と通信しているモビリティマネージャについての一部の主要な性能指標に対応する1つまたは複数の選択パラメータを決定することを含む。方法は、データ処理ハードウェアが、決定された1つまたは複数の選択パラメータに基づいて、セッションマネージャからの制御プレーンインスタンスに対する要求を満たすために個々の制御プレーンインスタンス候補を選択することをさらに含む。
【0010】
この態様は、以下の任意の特徴のうちの1つまたは複数を含み得る。いくつかの構成では、セッションマネージャは、パケットコアネットワークのセッション管理機能を含み、パケットコアネットワークは、第5世代(5G)コアインフラストラクチャを含む。セッションマネージャは、パケットコアネットワークのゲートウェイに対応し得、パケットコアネットワークは、第4世代(4G)コアインフラストラクチャを含む。
【0011】
いくつかの実施形態では、方法は、データ処理ハードウェアが、複数の制御プレーンインスタンス候補の各々に対して決定された1つまたは複数の選択パラメータに基づいて、制御プレーンインスタンス候補のリストを生成することを含む。この実施形態では、要求を満たすために複数の制御プレーンインスタンス候補のうちの1つを選択することは、制御プレーンインスタンス候補のリストから以前に選択された制御プレーンインスタンスに基づいて、制御プレーンインスタンス候補のリストから制御プレーンインスタンス候補を順次選択することを含む。
【0012】
いくつかの例では、方法は、データ処理ハードウェアが、複数の制御プレーンインスタンス候補の各制御プレーンインスタンス候補に対応する重みを割り当てることを含み、対応する重みは、対応する制御プレーンインスタンス候補に対して決定された1つまたは複数の選択パラメータを表す。この例では、方法は、データ処理ハードウェアが、複数の制御プレーンインスタンス候補の各制御プレーンインスタンス候補に対する対応する重みに基づいて、複数の制御プレーンインスタンス候補をランク付けすることを含む。ここで、要求を満たすために複数の制御プレーンインスタンス候補のうちの1つを選択することは、制御プレーンインスタンスに対する要求を満たすために、最高のランキングを有する制御プレーンインスタンス候補を複数の制御プレーンインスタンス候補のうちの1つとして選択することを含む。
【0013】
いくつかの構成では、要求を満たすために複数の制御プレーンインスタンス候補のうちの1つを選択することは、データ処理ハードウェアが、複数の制御プレーンインスタンス候補のうちの1つが選択基準を満たすことを決定することを含み、選択基準は、複数の制御プレーンインスタンス候補の各々に対して決定された1つまたは複数の選択パラメータの最小値または最大値に対応する。ここで、複数の制御プレーンインスタンス候補の各々に対して決定された1つまたは複数の選択パラメータのうちの1つが、対応する制御プレーンインスタンス候補に関連付けられたレイテンシ測定値を含み得、選択基準は、複数の制御プレーンインスタンス候補に関連付けられた複数のレイテンシ測定値のうちの最低のレイテンシ測定値を含み得る。任意選択的に、複数の制御プレーンインスタンス候補の各々に対して決定された1つまたは複数の選択パラメータのうちの1つが、対応する制御プレーンインスタンス候補に関連付けられた負荷を含み得、選択基準は、複数の制御プレーンインスタンス候補に関連付けられた複数の負荷のうちの最低の負荷を含み得る。
【0014】
いくつかの実施形態では、要求を満たすために複数の制御プレーンインスタンス候補のうちの1つを選択することは、複数の制御プレーンインスタンス候補の各々に対して決定された1つまたは複数の選択パラメータと選択基準とを受信するように構成された機械学習選択モデルを使用することを含む。この実施形態では、機械学習選択モデルは、複数のトレーニンググループ上でトレーニングされ、各トレーニンググループは、複数のトレーニング制御プレーンインスタンスを含み、対応するトレーニンググループ内の各トレーニング制御プレーンインスタンスは、1つまたは複数の対応する選択パラメータおよび選択基準ラベルに関連付けられ、選択基準ラベルは、対応するトレーニング制御プレーンインスタンスが選択基準を満たすか否かを示す。ここで、選択基準は、時刻とともに、モバイル管理エンティティ(MME:Mobile Management Entity)、アクセスおよびモビリティ管理機能(AMF:Access and Mobility Management Function)、国際モバイル機器識別子(IMEI:International Mobile Equipment Identity)、または国際モバイル加入者識別子(IMSI:International Mobile Subscriber Identity)のうち少なくとも一つを含み得る。任意選択的に、選択基準は、汎用パケット無線サービストンネリングプロトコル再送信の最低レイテンシまたは最低レートのうちの少なくとも1つを含み得る。いくつかの例では、方法は、データ処理ハードウェアが、所与の時刻におけるモビリティマネージャの識別子を受信することを含み、機械学習選択モデルは、所与の時刻におけるモビリティマネージャの識別子を使用して、制御プレーンインスタンスの要求を満たすために複数の制御プレーンインスタンス候補のうちの1つを選択する。他の例では、方法は、データ処理ハードウェアが、所与の時刻におけるパケットコアネットワーク識別子を受信することを含み、機械学習選択モデルは、所与の時刻におけるモビリティマネージャの識別子と、要求に関連付けられたユーザ機器とを使用して、制御プレーンインスタンスに対する要求を満たすために複数の制御プレーンインスタンス候補のうちの1つを選択する。モビリティマネージャの識別子は、モバイル管理エンティティ(MME)を識別し得る。追加的または代替的に、モビリティマネージャの識別子は、アクセスおよびモビリティ管理機能(AMF)を識別し得る。
【0015】
本開示の1つまたは複数の実施の詳細は、添付の図面および以下の詳細な説明に記載されている。他の態様、特徴、および利点は、詳細な説明および図面、ならびに特許請求の範囲から明らかになる。
【図面の簡単な説明】
【0016】
図1】例示的な通信ネットワークの概略図である。
図2A図1の通信ネットワークのための例示的なユーザプレーンセレクタの概略図である。
図2B図1の通信ネットワークのための例示的なユーザプレーンセレクタの概略図である。
図2C図1の通信ネットワークのための例示的なユーザプレーンセレクタの概略図である。
図2D図1の通信ネットワークのための例示的なユーザプレーンセレクタの概略図である。
図2E図1の通信ネットワークのための例示的なユーザプレーンセレクタの概略図である。
図3A図1の通信ネットワークのための例示的な制御プレーンセレクタの概略図である。
図3B図1の通信ネットワークのための例示的な制御プレーンセレクタの概略図である。
図3C図1の通信ネットワークのための例示的な制御プレーンセレクタの概略図である。
図3D図1の通信ネットワークのための例示的な制御プレーンセレクタの概略図である。
図3E図1の通信ネットワークのための例示的な制御プレーンセレクタの概略図である。
図4】ユーザプレーンインスタンスを選択する方法のための動作の例示的な構成のフローチャートである。
図5】制御プレーンインスタンスを選択する方法のための動作の例示的な構成のフローチャートである。
図6】本明細書で説明されるシステムおよび方法を実施するために使用され得る例示的コンピューティングデバイスの概略図である。
【発明を実施するための形態】
【0017】
様々な図面の同様の参照記号は、同様の構成要素を示す。
デバイスのモビリティおよび接続が増加するにつれて、モバイルネットワークおよびそれらのリソースの需要が増加している。過去のモバイルネットワークに対するリソース需要とは異なり、この需要は、モバイルデバイスの進化により、より複雑である。例えば、かつては携帯電話のためのモバイル通信を主にサポートしていたモバイルネットワークは、現在では、モバイルネットワークへの接続性を備えて構成されたほぼ全てのコンピューティングデバイスをサポートしている。モバイルデバイスは、携帯電話、タブレット、ラップトップ、およびパーソナルディスプレイデバイスから、スマートウェアラブル(例えば、時計、心臓モニタなど)、スマート周辺機器(例えば、スピーカ、ヘッドフォンなど)、スマート家電、およびスマートセンサなどの多くのスマートデバイスに拡大している。さらに、従来の携帯電話の本質は、高度なコンピューティングおよびマイクロプロセッシングにより、電話サービスのためにモバイルネットワークに依存するデバイスから、メディアストリーミング、モバイルアプリケーション、電子メール、およびインターネット接続などの機能を有するパーソナルコンピュータにより近いデバイスに変化している。そのような機能は、人と人との間の通信の一般的なモードを電話コールからテキストメッセージにシフトさせた。
【0018】
携帯電話自体に対する絶え間ない変化、および異なるタイプのモバイルデバイスの使用の増加とともに、モバイルネットワークは、異なるタイプの接続の必要性に対処する必要がある。言い換えれば、モバイルネットワークは、歴史的には比較的予測可能なリソース需要を有していたが、今日のモバイルネットワークは、現時点でリソース需要の変動が増大している。例えば、今日のネットワーク負荷は、モバイルビデオおよびリアルタイム通信アプリケーションの使用の増加をサポートしている。モバイルネットワーク上のリソース需要が比較的予測可能であったときでは、制御プレーンによって実行されるネットワークのシグナリング機能およびユーザプレーンのデータパケット転送も比較的予測可能であった。そのような予測可能性に起因して、制御プレーンおよびデータプレーンは、概して、モバイルネットワーク構造において互いに結合されていた。しかし、リソース需要が変動し始めると、この変動によって、制御プレーンおよびユーザプレーンのリソース要件に関してリソース需要が変化してきた。あるデバイスは、大量の制御プレーンリソース(例えば、シグナリングリソース)を要求するが、他のデバイスは、少量のシグナリングリソースを要求する。同じことがユーザプレーンにも当てはまり、あるデバイスがデータリソースに対して大きな需要を有する一方で、他のデバイスがデータリソースに対して比較的小さな需要を有する場合がある。
【0019】
リソース需要の不均衡に基づいて、汎用パケット無線サービス(GPRS)を中心とするコアネットワークを使用してデータパケットを送信するモバイルネットワークは、パケットコアネットワーク(例えば、4G用の進化型パケットコア(EPC)または5G用の第5世代コア(5GC))へと移行した。パケットコアネットワークのネットワークアーキテクチャでは、パケットコアネットワークは、ユーザ(例えば、加入者)データを管理するユーザプレーンと、ネットワークを介したユーザデータのシグナリングを管理する制御プレーンとに分離された構造がある。この手法は、概して、制御およびユーザプレーン分離(CUPS:Control and User Plane Separation)と呼ばれている。CUPSは、パケットコアネットワークの他のノードの機能に影響を及ぼすことなく、制御プレーンおよびユーザプレーンを独立してスケーリングすることができるフレキシブルなネットワーク展開を提供しようとしている。ユーザプレーンおよび制御プレーンを独立してスケーリングすることによって、CUPS構成は、モバイルネットワークがリアルタイムで必要に応じてユーザトラフィックに対処することが可能となる。従って、パケットコアネットワークは、モバイルネットワークが現在受けているビデオおよび他のモバイルアプリケーションの急増により増加したユーザデータトラフィックに対処することが可能である。
【0020】
独立したスケーリングに加えて、ユーザプレーンと制御プレーンとの分離により、これらのプレーンがエッジネットワーク内に存在することが可能となり得る。エッジネットワークとは、概して、デバイスおよびそれらのユーザがモバイルネットワークを使用する(例えば、データを消費する)場所の近くに位置するパケットコアネットワークの一部を指す。言い換えれば、「エッジ」とは、モバイルネットワークのエンドポイント(例えば、ユーザ機器)の近くの場所を指し、エッジネットワークは、モバイルネットワークの分散型コンピューティングトポロジの一部が存在する場所である。従って、エッジネットワークは、コンピューティングおよび/またはデータストレージをエンドポイントに近づける。
【0021】
ユーザプレーンおよび制御プレーンは別個であり、および/またはエッジネットワーク内に常駐することが可能であるが、ユーザ機器(UE)との通信セッションにおいてどのユーザプレーンインスタンスおよび/または制御プレーンインスタンスを使用するかの選択は、ネットワーク性能および/またはユーザのネットワークに関するエクスペリエンスに影響を及ぼし得る。例えば、ユーザプレーンインスタンスおよび/または制御プレーンインスタンスの割り当てが、レイテンシまたはパケット損失等のマイナス要因に寄与する場合、割り当ては、ネットワークに関するユーザのエクスペリエンスに悪影響を及ぼし得る。従って、UEが実行することを所望する通信機能に依存して、ユーザプレーンインスタンスおよび/または制御プレーンインスタンスを選択することが、ユーザに対するネットワークサービスの実行にとって重要となる場合がある。さらに、ユーザプレーンインスタンスおよび/または制御プレーンインスタンスの選択は、特定のユーザが実行することを所望する機能に依存するだけでなく、ユーザが位置する場所、選択のための時刻、選択時のモバイルネットワーク上の現在の負荷、モバイルネットワークのユーザの現在のアクセスパターンなどの他の要因にも依存する場合がある。言い換えれば、サービスインスタンス(即ち、制御プレーンインスタンスまたはユーザプレーンインスタンス)を選択するための決定は、特に、モバイルデバイスの数の増加によりモバイルネットワークが一度に多数のサービスインスタンス要求を受けた場合に、ますます複雑になる。従って、本明細書で開示されるユーザプレーンセレクタおよび/または制御プレーンセレクタは、サービスインスタンス選択による欠陥に対処しようとするものである。
【0022】
モバイルネットワークに対する継続的な改善により、ネットワークインフラストラクチャは、ユーザ(例えば、エンドポイント)および/またはユーザの無線アクセスネットワーク(RAN)に対してより近くに構築されている。これらの改善されたモバイルネットワークでは、モバイルデバイスなどのUEが基地局(例えば、RANアンテナ)と通信するのにかかる時間に相当するエアインタフェースレイテンシが低減されている。例えば、第5世代(5G)ネットワークインフラストラクチャでは、エアインタフェースレイテンシが5ミリ秒未満に低減されている。比較として、前世代のモバイルネットワーク、例えば、第3世代(3G)モバイルネットワークは、エアインタフェースレイテンシが80-100ミリ秒以上であった。少量のエアインタフェースレイテンシ(例えば、5ミリ秒未満)では、様々なモバイルアプリケーションが可能であるが、これらのアプリケーションの機能がレイテンシに敏感でない場合、レイテンシ問題は、モバイルネットワークのパケットコアネットワークの部分の欠陥に移行する可能性がある。言い換えれば、エアインタフェースレイテンシが80ミリ秒以上であったとき、UEとRANインフラストラクチャ(例えば、基地局(単数または複数))との間の通信がネットワークボトルネックであるため、EPC内のモバイルネットワークの機能は、さらなるレイテンシ問題に寄与することなく、このエアインタフェースのレイテンシウィンドウ内で発生し得る。例えば、ネットワークが、3Gネットワーク(例えば、エアインタフェースレイテンシが80ミリ秒)においてパケットコアネットワークのデータセンタからデータパケットを送信し、取得するのに5~10ミリ秒かかる場合、そのような機能は、付加的なレイテンシに寄与しないが、5Gネットワーク(例えば、エアインタフェースレイテンシが5ミリ秒)では、これらのパケットコアネットワーク機能は、タスクに5秒以上のレイテンシを導入する。このように、そのような低い程度のエアインタフェースレイテンシの場合、パケットコアネットワークがどのように機能するかによって、ユーザ(例えば、モバイルネットワーク加入者)のエクスペリエンスに影響を及ぼし得る。モバイルネットワークにおける潜在的なレイテンシ問題に敏感であるために、制御プレーンセレクタおよび/またはユーザプレーンセレクタは、ユーザの機能に適合するサービスインスタンスを選択することを目的とする。この観点から、可能な場合、各プレーンセレクタ(例えば、ユーザプレーンセレクタおよび/または制御プレーンセレクタ)は、ユーザのインスタンスを最良にサポートしようと試みる。
【0023】
図1は、通信ネットワーク100(セルラーネットワークとも呼ばれる)を示し、これは、ロングタームエボリューション(LTE)ネットワーク、5Gネットワーク、および/または、汎用パケット無線サービス(GPRS)、モバイル通信用グローバルシステム/GSM(登録商標)エボリューション用拡張データレート(GSM/EDGE)、ユニバーサルモバイル電気通信システム/高速パケットアクセス(UMTS/HSPA)、LTEおよびLTEアドバンストネットワーク技術等の第3世代パートナーシッププロジェクト(3GPP(登録商標))によって規定された多数のアクセス技術をサポートする多元接続ネットワークであり得る。セルラーネットワーク100(例えば、LTEネットワークまたは5Gネットワーク)は、モバイルデバイスおよびデータ端末などの加入者デバイス102、102a~bと基地局104との間の高速データパケットの無線通信を可能にする。加入者デバイス102は、ユーザ機器(UE)デバイスおよび/またはモバイルデバイス102と互換的に呼ばれ得る。例えば、LTEは、GSM/EDGEおよびUMTS/HSPAネットワーク技術に基づく無線通信規格であり、かつコアネットワークの改良に加えて異なる無線インタフェースを使用することによって電気通信の容量および速度を増加させるように構成されている。異なるタイプのセルラーネットワーク100は、UEデバイス102がデータ(例えば、データパケット)を通信することを可能にするために、様々な帯域幅において異なる帯域/周波数をサポートし得る。例示のために、LTEは、1.4MHzから20MHzまでのスケーラブルキャリア帯域幅をサポートし、かつ周波数分割複信(FDD)と時分割複信(TDD)の両方をサポートするが、5Gは、5MHzから100MHzの範囲の帯域幅をサポートし、いくつかの帯域幅はLTEと重複する。
【0024】
UEデバイス102は、ネットワーク100上で音声/データを送信および/または受信することが可能な任意の電気通信デバイスであり得る。UEデバイス102は、ラップトップ、タブレット、スマートフォン、およびウェアラブルコンピューティングデバイス(例えば、ヘッドセットおよび/または時計)などのモバイルコンピューティングデバイスを含み得るが、これらに限定されない。また、UEデバイス102は、デスクトップコンピュータ、スマートスピーカ/ディスプレイ、車両、ゲームデバイス、テレビ、または他の電化製品(例えば、ネットワーク化されたホームオートメーションデバイスおよび家電製品)に含まれるコンピューティングデバイス等の他のフォームファクタを有する他のコンピューティングデバイスを含んでもよい。UEデバイス102は、通信ネットワーク100の電気通信事業者によって提供されるネットワークサービスに加入する。電気通信事業者は、移動体通信事業者(MNO:mobile network operator)、ワイヤレスサービスプロバイダ、ワイヤレスキャリア、携帯電話会社、またはモバイルネットワークキャリアと呼ばれることもある。
【0025】
UEデバイス102は、通信ネットワーク100(または5G/4Gネットワーク)を介して、パケットデータネットワーク(PDN)などの外部ネットワーク30と通信することができる。図1を参照すると、通信ネットワーク100は、モバイルネットワークのための分散型アーキテクチャを表している。通信ネットワーク100は、第1の部分である進化型ユニバーサル地上波無線アクセスネットワーク(e-UTRAN:Evolved Universal Terrestrial Radio Access Network)部110と、第2の部分であるパケットコアネットワーク部120とを含む。パケットコアネットワーク部120は、概して、第4世代(4G)コアインフラストラクチャ用の進化型パケットコア(EPC:Evolved Packet Core)、または第5世代(5G)コアインフラストラクチャ(即ち、5GC)のいずれかを指し得る。第1の部分110は、UE102などのエンドポイントと1つまたは複数の基地局104の無線アクセスネットワーク(RAN)との間をインタフェースするエアインタフェース106(例えば、3GPPのLTEアップグレードパスの進化型ユニバーサル地上波無線アクセス(e-UTRA))を含む。LTEでは、エアインタフェース106は、ダウンリンクについては直交周波数分割多元接続(OFDMA)無線アクセスを使用し、アップリンクについてはシングルキャリアFDMA(SC-FDMA)を使用する。従って、第1の部分110は、1つまたは複数の基地局104を介してエアインタフェース106上で外部ネットワーク30からUEデバイス102へのデータパケットおよび/または他のサーフェスの無線通信をサポートする。
【0026】
各基地局104は、進化型ノードB(4GシステムではeノードBまたはeNBとも呼ばれる)、または5Gシステムに関しては次世代ノードB(gNBとも呼ばれる)を含み得る。eNB/gNB104は、UEデバイス102と直接通信するためにエアインタフェース106(例えば、携帯電話ネットワーク)に接続するハードウェアを含む。例えば、eNB/gNB104は、エアインタフェース106を介して、ダウンリンクLTE/5G信号(例えば、情報)をUEデバイス102に送信し、アップリンクLTE/5G信号をUEデバイス102から受信することができる。基地局104は、1つまたは複数のUEデバイス102が基地局104を介してネットワーク100と通信するエリアに対応する関連するカバレッジエリア104areaを有し得る。4Gネットワークの場合、基地局104がeNBであるとき、基地局104は、パケットコアネットワーク120(例えば、パケットコアネットワーク120のコアネットワーク部122)と通信するためにS1インタフェースを使用する。S1インタフェースは、コアネットワーク130のモビリティ管理エンティティ(MME:Mobility Management Entity)132と通信するためのS1-MMEインタフェースと、サービングゲートウェイ(SGW、例えば、サービングゲートウェイとパケットデータノードゲートウェイ(SPGW)との組合せとして図1に示される)とインタフェースするためのS1-Uインタフェースとを含み得る。従って、S1インタフェースは、パケットコアネットワーク120と通信するためのバックホールリンクに関連付けられる。5Gネットワークの場合、基地局104がgNBであるとき、gNBは、N2およびN3インタフェースを使用して、5Gコアネットワーク制御プレーン機能およびユーザプレーン機能(user plane function)に接続する。例えば、N2インタフェースは、gNB104と、アクセスおよびモビリティ管理機能(AMF:Access and Mobility Management Function)との間の通信のためのインタフェースであり、N3インタフェースは、gNBと、エッジネットワーク140のバックエンドユーザプレーン150との間の通信のためのインタフェースである。
【0027】
概して、パケットコアネットワーク120(例えば、EPC又は5GC)は、UEデバイス102及び外部ネットワーク30と通信して、それらの間でデータパケットをルーティングする。そのような通信手段として、パケットコアネットワーク120は、LTE/5Gネットワーク100上で音声およびデータを収束させるように構成されたフレームワークを提供する。パケットコアネットワーク120は、インターネットプロトコル(IP)サービスアーキテクチャ上で音声およびデータを統合し、音声は、単に別のIPアプリケーションとして扱われる。パケットコアネットワーク120は、コアネットワーク130およびエッジネットワーク140を含むが、これらに限定されない。4Gネットワークでは、コアネットワーク130は、例えば、MME132、ポリシーおよび課金ルール機能(PCRF:Policy and Charging Rules Function)134、ホーム加入者サーバ(HSS:Home Subscriber Server)(図示せず)、およびサービングGPRSサポートノード(SGSN:Serving GPRS Support Node)(図示せず)など、いくつかのネットワーク要素を含み得る。一方、5Gネットワークの場合、コアネットワーク130は、MME132の代わりにアクセスおよびモビリティ管理機能(AMF:Access and Mobility Management Function)132と、PCRF134と同等の5Gとしてのポリシー,課金機能(PCF:Policy, Charging Function)134とを含む。4Gおよび5Gネットワークの両方において、エッジネットワーク140は、ユーザプレーンと制御プレーンとの分離を含み得る。言い換えれば、サービングゲートウェイ(SGW)およびパケットデータノードゲートウェイ(PGW)の各々は、制御プレーン部150(例えば、指定された「-C」で示される)と、ユーザプレーン部160(例えば、指定された「-U」で示される)とを有する。
【0028】
図1などのいくつかの例では、エッジネットワーク140は、(例えば、コアネットワーク130および外部ネットワーク30に面する)異なるフロントエンド(FE)ネットワーク要素と、(例えば、ネットワーク100のe-UTRAN部110に面する)バックエンドネットワーク要素(BE)とに分割される。この分割により、図1は、制御プレーン部160が、バックエンド制御プレーン162およびフロントエンド制御プレーン164にさらに分割され得ることを示す。5Gネットワークでは、SGWおよびPGW要素に加えて、制御プレーン部160は、セッション管理機能(SMF:Session Management Function)も含む。ここで、SMFは、制御プレーン部160のフロントエンド(FE)およびバックエンド(BE)の両方の機能を含む。図1は、PGWおよびSGWが(例えば、SPGW要素によって)統合され得ることを示すが、MME/AMF132、PCRF/PCF134、SGSN、およびHSSなどの他のネットワーク要素は、スタンドアロン構成要素であってもよく、または構成要素のうちの少なくとも2つが共に統合されてもよい。
【0029】
ネットワーク100は、UEデバイス102、基地局104、および様々なネットワーク要素(例えば、MME132、PCRF/PCF134、SPGW、SGSN、HSS、SMF)がネットワーク100の使用中に互いに協働することを可能にするインタフェースを含む。情報は、ネットワーク100全体にわたってこれらのインタフェースに沿って流れ、全体的に、これらのインタフェースは、ユーザプレーン機能および制御プレーン機能によって分割され得る。ユーザプレーン機能は、ユーザプレーントラフィックをルーティングし、かつパケットデータ収束プロトコル(PDCP)、無線リンク制御(RLC)、および媒体アクセス制御(MAC)などのサブレイヤを有する、UEデバイス102と基地局104との間のユーザプレーンプロトコルスタックを含む。ユーザプレーン機能は、複数の制御プレーン機能によって共有され得る。ユーザプレーンデータパケットは、複数のユーザプレーン機能を通過し得る。ユーザプレーン部150に特有のいくつかのインタフェースには、以下のような、基地局104と制御プレーン部150のSPGW-Uとの間の、ベアラごとのユーザプレーントンネリングおよびハンドオーバ時の基地局間パス切り替えのためのS1-Uインタフェースと、基地局104とユーザプレーン部150との間の(例えば、5Gにおける)N3インタフェース(ここで、N3インタフェースは、GPRSトンネリングプロトコル(GTP)または情報指向ネットワーク(ICN)プロトコルを使用し得る)と、ユーザ制御プレーン部150と外部ネットワーク30(例えば、パケットデータネットワーク)との間のN6インタフェースと、ユーザプレーンインスタンス(例えば、中間ユーザプレーンおよびセッションアンカーユーザプレーン)間のN9インタフェース(インタフェースは、GPRSトンネリングプロトコル(GTP)または情報指向ネットワーク(ICN)プロトコルを使用し得る)と、2Gアクセスまたは3Gアクセスを有するUEデバイス102とPGWとの間の、制御およびモビリティサポート並びに場合によってはユーザプレーントンネリングのためのS4インタフェース(図示せず)と、E-UTRAN部110(例えば、UEデバイス102)とSGWとの間の、オペレータ構成オプションとしてのユーザプレーントンネリングのためのS12インタフェース(図示せず)とがある。他のタイプの通信ネットワーク(例えば、3G、5Gなど)は、ネットワーク100に関して図1に示されたもの以外の他のユーザプレーンインタフェースを含み得る。
【0030】
図1を参照すると、いくつかの例では、ユーザプレーン部150は、1つまたは複数のユーザプレーンインスタンス152、152a~nを含む。各ユーザプレーンインスタンス152は、コンピューティングリソース(例えば、データ処理ハードウェアまたはメモリハードウェアなどのハードウェア)が存在し得るインフラストラクチャサイト(例えば、サイト1~nとして示される)を指し得る。異なるサイトを有することによって、パケットコアネットワーク120のエッジネットワーク140は、ユーザプレーン機能および/または制御プレーン機能をサポートし得る、UE102などのエンドポイントの近くの場所を利用し得る。サービスインスタンスがエンドポイントの場所により近い場合、データ機能(例えば、ユーザプレーン部150による)およびデータ制御機能(例えば、制御プレーン部160による)は、レイテンシを最小化するとともに、エンドポイント需要/アクセスパターンを満たす速度で生じ得る。図1のネットワーク100は、制御プレーン部160のための単一のサイト(例えば、サイト0)を示しているが、制御プレーン部160は、1つまたは複数のサイトにおいて生じる複数の制御プレーンインスタンス166を有してもよい。概して、UE102は単一の制御プレーンインスタンス166によってサービスされるため、図1のネットワーク100は簡略化のために単一の制御プレーンサイトを示すが、パケットコアネットワーク120は、この特定の例ではUE102をサポートするために選択されなかった複数の制御プレーンインスタンス166(図示せず)をホストする他の複数のサイトを含み得る。いくつかの構成では、ユーザプレーン部150および制御プレーン部160は、それらの個々の機能をサポートする1つまたは複数のサイトを共有する。
【0031】
制御プレーン部160は、制御プレーンプロトコル(例えば、GTP-C、Gx、Gy、Gz)を用いてユーザプレーン機能を制御およびサポートすることを担う。特に、制御プレーン部160は、E-UTRANアクセス接続(例えば、ネットワーク100のE-UTRAN部106へのアタッチおよびデタッチ)を制御し、確立されたネットワークアクセス接続の属性(例えば、IPアドレスのアクティブ化)を制御し、(例えば、ユーザモビリティをサポートするために)確立されたネットワーク接続のルーティングパスを制御し、様々なルール(例えば、パケット検出ルール、パケット転送ルール、サービス品質実施ルール、および/または使用報告ルール)によってパケットの処理を制御し、かつ/または(例えば、UEデバイス102のユーザによる)ネットワーク100への要求に基づいてネットワークリソースの割り当てを制御する。制御プレーン部160は、複数のユーザプレーンインスタンス(例えば、ユーザプレーンインスタンス152a-n)とインタフェースし得る。概して、UE102は、単一の制御プレーン部160によってサービスされるが、複数のユーザプレーンインスタンス152は、異なるタイプの接続または機能に関して選択され得る。制御プレーン部160に特有のいくつかのインタフェース(例えば、ネットワーク要素間の点線で示される)には、以下のような、基地局104とMME132との間の、シグナリングメッセージの配信を保証するS1-MMEインタフェースと、SGSNとMME132との間の、アイドル状態および/またはアクティブ状態における3GPPアクセスネットワーク間モビリティのためのユーザ/ベアラ情報交換を可能にするS3インタフェース(図示せず)と、SGW-C/UとPGW-C/Uとの間のS5/S8インタフェース(図示せず)(S5インタフェースは非ローミングシナリオにおいて使用されて、UEデバイス102のモビリティに基づく再配置にサービス提供し、かつPDNの非コロケートゲートウェイに接続する一方で、S8インタフェースはパブリックランドモバイルネットワーク(PLMN:public land mobile networks)に接続する)と、ユーザプレーン部150と制御プレーン部160との間の、パケット転送制御プレーン(PFCP:Packet Forwarding Control Plane)プロトコルを用いるSxa/Sxbインタフェースと、MME132間のハンドオーバを調整するS10インタフェース(図示せず)と、MME132と制御プレーン部160との間の、信号メッセージを転送するためのS11インタフェースと、MME132とHSSとの間の、ユーザアクセスに関連する加入および認証データの転送を可能にするS6aインタフェース(図示せず)と、HSSとSGSNとの間の、ユーザアクセスに関連する加入および認証データの転送をも可能にするS6dインタフェース(図示せず)と、UEデバイス102のアイデンティティチェックをサポートするS13インタフェース(図示せず)とがある。他のタイプの通信ネットワーク(例えば、3G、5Gなど)は、ネットワーク100に関して図1に示されたもの以外の他の制御プレーンインタフェースを含み得る。
【0032】
特定のUEデバイス102がネットワーク100に接続するとき、1つまたは複数の制御メッセージが、様々なネットワーク要素間で(例えば、進化型パケットコア120のネットワーク要素とE-UTRAN部110との間で)送信される。例えば、基地局104は、新たなUEデバイス102がネットワーク100への接続を試みていることを示す制御メッセージをMME132に送信する。別の例として、SPGWは、外部ネットワーク30からのデータが特定のUEデバイス102に到着したこと、およびUEデバイス102が待機データを受け入れるためにトンネルを確立する必要があることを示す制御メッセージをMME132に送信する。制御プレーンインタフェースは、汎用パケット無線サービストンネリング制御(GTP-C)プロトコルまたはDiameterプロトコルなどの制御プレーンプロトコルを使用してそのような制御メッセージを送信し得る。制御メッセージ128を送信するために使用されるプロトコルのタイプは、インタフェースに依存し得る。例えば、S3、S5/S8、及びS10インタフェースは、GTP-Cプロトコルを使用し、S11、S6a、S6d、及びS13インタフェースは、Diameterプロトコルを使用する。
【0033】
MME/AMF132は、ネットワーク100に関する重要な制御ノードである。MME/AMF132は、セッションおよび状態を管理し、ネットワーク100にわたってUEデバイス102を認証および追跡する。例えば、MME/AMF132は、非アクセス層(NAS)のためのシグナリングおよびセキュリティの制御、UEデバイス102の認証およびモビリティ管理、UEデバイス102のためのゲートウェイの選択、およびベアラ管理機能などの様々な機能を実行することができるが、これらに限定されない。
【0034】
PCRF/PCF134は、パケットコアネットワーク120におけるリアルタイムポリシールールおよび課金を担うノードである。いくつかの例では、PCRF/PCF134は、ポリシー決定を行うために加入者データベース(即ち、UEデバイスユーザ)にアクセスするように構成される。サービス品質管理は、PCRF/PCF134とネットワークゲートウェイデバイス(例えば、PGW、SGW、またはSPGW)との間の動的ポリシーインタラクションによって制御され得る。PCRF/PCF134によるシグナリングは、EPSベアラ(即ち、UEデバイス102とネットワークゲートウェイデバイスとの間の仮想接続)の属性を確立または修正し得る。ボイスオーバLTE(VoLTE)などのいくつかの構成では、PCRF134は、コールを確立し、要求された帯域幅を設定属性とともにコールベアラに分配するためにネットワークリソースを割り当てる。
【0035】
SGW(例えば、制御プレーン部160に関して別個のネットワーク要素として示されているが、ユーザプレーン部150においてPGWと一体化されている)は、データルーティングおよび転送、ならびにモビリティ・アンカリングなど、ユーザデバイス102のためのIPデータ転送に関連する様々な機能を実行する。SGWは、モバイルデバイス102のためのデータパケットのバッファリング、ルーティング、および転送などの機能を実行し得る。同様に、PGW(即ち、ネットワークゲートウェイデバイス)は、インターネットプロトコル(IP)アドレス割り当て、UEデバイス102のためのデータ接続性の維持、UEデバイス102のためのパケットフィルタリング、サービスレベルゲーティング制御および速度規制、クライアントおよびサーバのための動的ホスト構成プロトコル(DHCP)機能、およびゲートウェイ汎用パケット無線サービス(GGSN)機能などの様々な機能を実行するが、これらに限定されない。
【0036】
制御プレーン部160のSMFは、セッション管理(SM)及びIPアドレス管理に関する機能を実行する。例えば、SMFは、ユーザプレーン機能とRANノード(例えば、基地局104)との間のセッション確立、セッション変更、および/またはセッション解放を実行する。また、SMFは、ユーザプレーン機能(例えば、トラフィックをその適切な宛先にルーティングするためのトラフィックステアリング)を選択および制御し、PCFに向けたインタフェースを終了させ、課金データを収集し、課金インタフェースをサポートし、RANノード固有セッション管理情報を開始し、ローミング機能をサポートするように構成される。IPアドレス管理に関して、SMFは、UE IPアドレスを割り当て、その後、そのUE IPアドレスを管理するように構成される。これは、IPアドレスに対する許可機能を含み得る。
【0037】
HSS(図示せず)は、全てのUEデバイスユーザデータを含む全てのUEデバイス102のデータベースを参照する。概して、HSSは、コールおよびセッションセットアップのための認証を担う。言い換えれば、HSSは、ユーザアクセスおよびUEコンテキスト認証のための加入および認証データを転送するように構成される。HSSは、MME132とインタラクションして、UEデバイス102および/またはUEデバイスユーザを認証する。MMEは、Diameterプロトコルを使用して(例えば、S6aインタフェースを介して)PLMN上でHSSと通信する。
【0038】
いくつかの実施形態では、パケットコアネットワーク120は、ユーザプレーンセレクタ200および/または制御プレーンセレクタ300を含む。各セレクタ200、300は、UE102とパケットコアネットワーク120との間の通信セッションのためのサービスインスタンスを選択するように構成される。ここで、ユーザプレーンセレクタ200は、UE102とパケットコアネットワーク120との間の通信セッション中にユーザプレーン機能(例えば、データパケット処理)を実行するために、パケットコアネットワーク120に利用可能な1つまたは複数のユーザプレーンインスタンス候補212(例えば、図2A図2Eに示す)からユーザプレーンインスタンス152を選択するように構成される。同様に、制御プレーンセレクタ300は、UE102とパケットコアネットワーク120との間の通信セッション中に制御プレーン機能(例えば、データパケットルーティング)を実行するために、パケットコアネットワーク120に利用可能な1つまたは複数の制御プレーンインスタンス候補312(例えば、図3A図3Eに示す)から制御プレーンインスタンス166を選択するように構成される。
【0039】
(例えば、セルラー通信のために、または様々なコンピューティングベースのアプリケーションの使用をサポートするために)UE102がネットワーク100のデータパケットサービスを使用することを決定した場合、UE102は、セッションセットアップ要求(例えば、要求Rとも呼ばれる)を開始する。UE102は、このセッションセットアップ要求を、UE102の地理的領域(例えば、カバレッジエリア104area)内の基地局104(例えば、eNB/gNB)に送信する。次いで、基地局104は、パケットコアネットワーク120のMME/AMF132をネットワーク制御ノードとして選択して、UE102に対する通信セッションを管理する。概して、基地局104は、それ自体の負荷分散技法に基づいてネットワーク100のMME/AMF132を選択する。基地局104がセットアップ要求に応答してMME/AMF132を選択すると、MME/AMF132は、ドメインネームサービス(DNS)を参照して、UE102用のSPGW/SMF仮想IP(VIP)アドレスを選択するように構成される。VIPは、(例えば、トップオブラック(TOR:Top Of Rack)スイッチからアドバタイジングすることによって)電気通信事業者に伝達され、制御プレーン部160(例えば、フロントエンド制御プレーン部164)が、(例えば、ハッシュ関数を有するTORによって)通信セッションのために選択される。フロントエンド制御プレーン部164(例えば、サイト0のフロントエンド制御プレーン部164として示される)が選択されると、フロントエンド制御プレーン部164は、制御プレーンセレクタ300と協働して、通信セッションのためのバックエンド制御プレーン部162(例えば、制御プレーンインスタンス166)を発見する。特定の制御プレーンインスタンス166のためのバックエンドプレーン部162は、セッションセットアップ要求Rの初期セッションセットアップメッセージを処理するように構成される。制御プレーン部160がUEセッションをセットアップするためにプロトコル処理を実行すると、制御プレーン部160は、ユーザプレーン部150のユーザプレーン機能を実行するためにユーザプレーンインスタンス166を選択する。ここで、制御プレーン部160がユーザプレーンインスタンス152を選択するために、制御プレーン部160は、ユーザプレーンセレクタ200に問い合わせる。ユーザプレーンセレクタ200は、選択推奨を渡すか、または利用可能なユーザプレーンインスタンス152a~nのうちの1つを実際に選択するために使用されてもよい。UE102のセッションのために確立されたサービスインスタンス152、166を用いて、制御プレーン部160は、トンネルパラメータをプログラムして、UE102にUE IPアドレス(例えば、IPv4/IPv6アドレス)を提供する。また、制御プレーン部160は、外部ネットワーク30(例えば、パケットデータネットワーク)と選択されたユーザプレーンインスタンス152との間の確立された関連付けを維持することを担う。この時点で、制御プレーン部160は、モビリティマネージャ(例えば、MME/AMF132)に応答して、サービスインスタンス152、166とのセッションが確立されたことを中継するとともに、RAN側データパス(例えば、S1-Uインタフェーストンネル)を確立し得る。ユーザプレーンインスタンス152とのセッションの確立後、制御プレーン部160は、UE102と外部ネットワーク30との間の確立された接続のために、選択されたユーザプレーンインスタンス152を介してデータ(例えば、メッセージまたは情報の他のパケット)をルーティングする。
【0040】
いくつかの実施形態では、セレクタ200、300は、セレクタ200、300の機能を実行するためのコンピューティングリソースとしてハードウェア(例えば、データ処理ハードウェア204、304およびメモリハードウェア206、306)を含む。いくつかの例では、このハードウェアは、セレクタ200、300に固有であってもよく、またはセレクタ(単数または複数)200、300と共有されるパケットコアネットワーク120(例えば、エッジネットワーク140)の処理リソースを指してもよい。いくつかの構成では、セレクタ200、300は、サービスインスタンス152、166と同じ場所に配置される(例えば、ユーザプレーン部150および/または制御プレーン部160とともに1つまたは複数のサイトに存在する)か、またはサービスインスタンス152、166を確立するために、セレクタ200、300の推奨および/または選択を適切なネットワーク要素に伝達することが可能な一元的な場所に配置される。
【0041】
図2A図2Eを参照すると、ユーザプレーンセレクタ200は、(例えば、UE102と外部ネットワーク30との間の)通信セッションを確立する要求Rに基づいて、ユーザプレーンインスタンス152を推奨または選択するように構成される。ユーザプレーンセレクタ200は、概して、識別器210及び分析器220を含む。識別器210は、複数のユーザプレーンインスタンス候補212を識別するように構成される。ユーザプレーンインスタンス候補212は、通信セッションのために確立された制御プレーンインスタンス166と通信することができるユーザプレーンインスタンス152を指す。言い換えれば、ユーザプレーンインスタンス候補212は、制御プレーン部160が、選択された場合、ユーザプレーンインスタンス候補212を介してデータパケットを適宜ルーティングすることができるように、制御プレーン部160によって到達可能である必要がある。
【0042】
図2A図2Eにおいて、識別器210は、ユーザプレーン部150の各サイト(例えば、サイト1~n)をユーザプレーンインスタンス候補212a~nとして識別する。各ユーザプレーンインスタンス候補212に関して、識別器210は、1つまたは複数の選択パラメータ114、1141-iを決定する。ここで、iは、識別器210によって決定または取得され得る選択パラメータ114のタイプの数に対応している。選択パラメータ114は、概して、ネットワーク性能メトリックを指す。いくつかの構成では、各RANノード(例えば、基地局104)は、ネットワーク性能を監視するために収集されるか、または概して定量化および保存される通信ベースのメトリックに対応する多数の主要な性能指標(KPI:key performance indicators)112を維持する。基地局104がUE102から要求Rを受信すると、基地局104は、基地局104のKPI112をパケットコアネットワーク120(例えば、セレクタ200に)に伝達するように構成される。いくつかの実施形態では、セレクタ200は、ネットワーク100の1つまたは複数の基地局ノード104からKPI112を周期的にストリーミングまたは取得し、受信時または識別時に複数のパラメータ114を決定し得る。いくつかの例では、基地局104は、一部のKPI112(例えば、選択パラメータ(単数または複数)114)のみをパケットコアネットワーク120に伝達する。選択パラメータ114は、ユーザプレーンインスタンス選択を最適化するためにセレクタ200によって使用され得る任意のネットワーク性能メトリックを指し得るが、選択パラメータ114のいくつかの例は、基地局ノードIPアドレス(eNB/gNB-IP)、外部ネットワーク(単数または複数)30の識別子または数、GTP-Uレイテンシ、転送制御プロトコル(TCP)再送信(retransmissions)、および/または時刻(ToD: time of day)を含む。
【0043】
いくつかの例では、識別器210は、セレクタ200において各候補212に関する1つまたは複数の選択パラメータ114を決定する。言い換えれば、基地局104は、特定のユーザプレーンインスタンス152に対応するKPIを以前に収集しているか、または収集する。識別器210がKPI112に基づいて選択パラメータ114を受信または決定すると、識別器210は、選択パラメータ114を特定のユーザプレーンインスタンス152に関連付ける。いくつかの構成では、識別器210は、ユーザプレーンインスタンス152をユーザプレーンインスタンス候補212として識別する前に、選択パラメータ114をユーザプレーンインスタンス152に関連付ける。この構成では、識別器210は、ユーザプレーンインスタンス152が1つまたは複数の選択パラメータ閾値を満たす場合、ユーザプレーンインスタンス152のみをユーザプレーンインスタンス候補212として識別することによって、ユーザプレーンインスタンス152の初期フィルタリングを実行するように構成され得る。
【0044】
分析器220は、制御プレーン部160からのユーザプレーンインスタンス152に対する要求Rを満たすために複数のユーザプレーンインスタンス候補212a~nのうちの1つを選択するように構成される。ここで、分析器220は、識別器210から候補212を受信し、1つのユーザプレーンインスタンス候補212を要求Rを満たすためのユーザプレーンインスタンス152として選択または推奨する選択202(例えば、特定の候補214の周りの点線ボックスとして示される)を生成する。図2A図2Eに示されるように、分析器220は、いくつかの異なる選択手法を使用して選択202(または推奨)を実行し得る。いずれの手法においても、分析器220は、概して、候補212に関連付けられた選択パラメータ(単数または複数)114a~nに基づいて選択202を行う。
【0045】
図2Bおよび図2Cを参照すると、分析器220は、候補212を特定の順序(例えば、リスト222として示される)で配置し、この順序に基づいて1つの候補212を選択202として選択することができる。1つの手法では、図2Bに示すように、分析器220は、候補212のリスト222を生成し、ラウンドロビン手法に基づいて1つの候補212を選択するように構成される。言い換えれば、コンピューティングリソースのラウンドロビンスケジューリングと同様に、分析器220は、リスト222上の各候補212を順番に巡回することによって選択202を実行する。例えば、分析器220は、第1の要求Rを受信すると、リスト222上の第1の候補212aを第1の選択202、202aとして選択する。次に、分析器220は、次の要求Rを受信すると、リスト222上の第2の候補212bを、その前のリスト222上の候補212(例えば、第1の候補212a)が前のセッションにおいて既に選択されているため、第2の選択202、202bとして順次選択する。このようにして、分析器220は、前の選択202に基づいてインスタンス152を均等に分配する。この手法は、同じ候補212または一組の候補212が、他の実行可能な候補212の不十分な利用を引き起こすように定期的に選択されないように、選択202を回転させることによって、(例えば、特定のネットワークサイトにおける)負荷のバランスをとるのに役立ち得る。言い換えれば、1つのユーザプレーンインスタンス152または複数のユーザプレーンインスタンス152をホストする能力を有するサイトは、例えば、UE102の位置に基づいて最良の候補212であるかのように見えるかもしれないが、そのサイトの近くの複数のUE102がサービスインスタンスを要求する場合、サイトにおけるコンピューティングリソースは、(例えば、他の準最適であるが許容可能なインスタンスがこれらのUE102に利用可能であっても)セレクタ200によるインスタンス152の不十分な分布に起因して、負担となる場合がある。
【0046】
図2Cを参照すると、分析器220が(例えば、リスト222内の)候補212を順序付ける場合、分析器220は、重みwを候補212に関連付け得る。いくつかの例では、重みwは、候補212に関連付けられた1つまたは複数の選択パラメータ114の分類を指す。言い換えれば、識別器210または分析器220は、候補212の単一の選択パラメータ114または候補212の2つ以上の選択パラメータ114に基づいて候補に重みwを割り当てることができる。いくつかの例では、重みwは、その選択パラメータ(単数または複数)114の関数として各候補212に割り当てられたスコアを指し得る。重みw、wa-nが各候補212に割り当てられた状態で、分析器220は、重みwによって候補212をランク付けする順序でリスト222を生成し得る。リスト222が候補212の重みwを含む場合、分析器220は、(例えば、重み関数に応じて)最大の重みまたは最小の重みを有する候補に基づいて候補212の選択202を生成する。従って、分析器220が重みwによってリスト222を順序付ける場合、分析器220は、リスト222上の最上位候補212を選択するように構成され得る。
【0047】
各候補212に適用される重みwに加えて、またはその代わりに、図2Dは、分析器220が、選択202が選択基準224に基づく手法を使用し得ることを示す。選択基準224は、概して、分析器220が候補212を選択するために1つまたは複数のルールを使用するルールベースの手法を指す。いくつかの例では、選択基準224は、選択パラメータ114のうちの1つまたは複数の最小値または最大値を選択するためのルールを指す。他の例では、選択基準224は、分析器220がその処理を使用して、各ルールの共通部分または次善の選択肢を表す候補212を決定するように、複数のルール(例えば、複合ルール)を含む。例えば、いくつかの選択パラメータ114を用いて、ルールは、候補212が特定の時刻に少なくとも特定のレイテンシ測定値(即ち、レイテンシ閾値)を有するべきであることを指定し得る。この場合、分析器220は、これらのルールのそれぞれを満たす候補212(または次善の選択肢)を決定し、そのような候補212を選択202として選択する。いくつかの構成では、選択基準224として複合ルールを用いて、各ルールに優先度が割り当てられ得る。例えば、分析器220は、それ自体を特定の時刻におけるレイテンシ測定値に制限するのではなく、候補の平均レイテンシ特性を優先し得る。ネットワーク100のリソースを負荷分散するために、および/またはレイテンシに敏感であるために、選択基準224は、多くの場合、レイテンシ測定値(例えば、GTP-Uレイテンシ)および/または負荷測定値が分析器220によって選択されるために満たすべきである閾値または値を指定するルールを含み得る。
【0048】
図2Eは、ユーザプレーンインスタンス選択に機械学習手法を使用するセレクタ200を示す。この手法では、セレクタ200は、予測器230における予測モデル232からの予測Pに基づいてユーザプレーンインスタンス152の選択202を形成する。いくつかの例では、予測器230が分析器220に取って代わる。さらに他の例では、分析器220(図示されていないが)は、予測Pが選択基準224を実際に満たすと決定するために、セレクタ200によって依然として実装され得る。予測器230は、概して、第1の段階(例えば、トレーニング段階)および第2の段階(例えば、推論段階)の2つの段階を含む。第1の段階では、予測器230は、選択基準224を満たすユーザプレーンインスタンス152を予測できるようにモデル232をトレーニングする。予測器230をトレーニングするために、予測器230はトレーニンググループ234を生成する。各トレーニンググループ234は、一組のトレーニングユーザプレーンインスタンス236と、セレクタ200が処理中に選択する一組のユーザプレーンインスタンス候補212をシミュレートするための対応する選択パラメータ(単数または複数)114とを含む。ここで、トレーニンググループ234内の各トレーニングユーザプレーンインスタンス236は、選択基準ラベル238を含む。選択基準ラベル238は、パラメータ114を有するトレーニングユーザプレーンインスタンス236が選択基準224を満たすか否かを示す。選択基準ラベル238を含むことによって、選択基準ラベル238は、トレーニンググループ234を用いてモデル232をトレーニングする間、グラウンドトゥルースとして機能する。グラウンドトルースを用いて、予測器230は、特定の選択パラメータ(単数または複数)114に関連付けられたどの候補212がどのラベル238に対応するかを学習する。いくつかの例では、モデル232が十分にトレーニングされたかどうかを判定するために、検証トレーニンググループ234、234がモデル232に渡されて、モデル232が検証トレーニンググループ234の正しいラベル238を正確に識別したかどうかを識別する。第2の段階(例えば、推論)では、予測器230がトレーニングされた後、予測器230は、パラメータ114およびラベル238の両方を有するトレーニングユーザプレーンインスタンス236をもはや使用しない。代わりに、識別器210は、1つまたは複数の候補212、それらのパラメータ(単数または複数)114、および選択基準224をトレーニング済みのモデル232に伝達して、トレーニング済みのモデル232が各候補212に関してラベル238の予測Pを生成するようにする。ここで、予測器230は、ラベル238を用いて候補212の中から候補212が選択基準224を満たすと予測することによって、選択202を形成する。
【0049】
いくつかの例では、トレーニングが完了すると(例えば、検証後)、予測器230は、異なる選択基準224に対してユーザプレーンインスタンス候補212を予測するために、新たな着信要求Rの少数に対してモデル232をテストする。いくつかの選択基準224は、特定のネットワーク設定(例えば、特定のUE102、基地局104、または外部ネットワーク30に接続するネットワーク要素のいくつかの組合せ)で使用するための最良のユーザプレーンインスタンス候補212を識別しようと試み得る。例えば、選択基準224は、基地局ノードインターネットプロトコルアドレス(eNB/gNB-IP)、進化型ユニバーサルモバイル電気通信サービス地上波無線アクセスネットワークセルグローバル識別子(ECGI)、国際モバイル機器識別子(IMEI)、または国際モバイル加入者識別子(IMSI)など、特定のタイプのネットワーク設定の識別子を含む。モデル232は、これらの識別子のうちの1つまたは複数を、レイテンシ測定値(例えば、最低レイテンシ)またはTCP再送信のレート(例えば、最低レート)などの他の選択基準224とともに使用し得る。言い換えれば、選択基準224は、異なるタイプの基準を組み合わせ得る。第1のタイプの基準は、ネットワーク性能ベースの基準(例えば、最低レイテンシ)であり得る。第2のタイプの基準は、ネットワークデバイスベースの基準であり得る(例えば、特定のタイプのネットワーク要素またはネットワーク設定に関する識別子を使用する)。第3のタイプの基準は、要求R中の現在の条件(例えば、時刻またはネットワーク機器の場所)に基づき得る。そのような複合選択基準224の例を挙げると、選択基準224と共に要求Rは、特定の時刻における所与のパケットコア識別子(例えば、ECGI/eNB-IPまたはgNB-IP)に対して最良のユーザインスタンス候補212を要求し得る。さらに、セレクタ200は、所与のパケットコア識別子およびToDに基づいて任意のUE102に対して、または特定のUE102に対して、この要求Rを満たすことを所望する場合がある。これらのタイプの複合層を用いて、ユーザプレーンインスタンス候補212の選択202は、粒度(granularity)の程度を変化させることが可能であり得る。いくつかの構成では、予測器230が、新たな着信要求Rの少数に対してモデル232をテストする場合、予測器230は、粒度の増加する順序で選択基準224を使用する。例えば、粒度の増加する順序は、(i)eNB/gNB-IP、ToD、(ii)ECGI、ToD、(iii)IMEI、ECGI/eNB-IPまたはgNB-IP、ToD、(iv)IMSI、ECGI/eNB-IPまたはgNB-IP、ToD(例えば、IMSIまたはハッシュ化されたIMSIが使用可能である場合)である。
【0050】
図3A図3Eを参照すると、制御プレーンセレクタ300は、(例えば、UE102と外部ネットワーク30との間の)通信セッションを確立する要求Rに基づいて、制御プレーンインスタンス166を推奨または選択するように構成される。制御プレーンセレクタ300は、概して、識別器310及び分析器320を含む。識別器310は、複数の制御プレーンインスタンス候補312を識別するように構成される。制御プレーンインスタンス候補312は、通信セッション中にUE102のためのパケットをルーティングするように構成された制御プレーンインスタンス166を指す。言い換えれば、制御プレーンインスタンス候補312は、選択された場合、MME/AMF IP空間の全体にサービスを提供するように構成される。
【0051】
図3A図3Eにおいて、制御プレーン部160の各サイト(例えば、サイト1~n)は、識別器310によって制御プレーンインスタンス候補312a~nとして識別されるように示されている。各制御プレーンインスタンス候補312に関して、識別器310は、1つまたは複数の選択パラメータ138、1381-iを決定する(例えば、制御プレーン機能に関して、これらはルーティング選択パラメータ138とも呼ばれる)。ここで、iは、識別器310によって決定または取得され得るルーティング選択パラメータ138のタイプの数に対応している。ルーティング選択パラメータ138は、概して、ネットワーク性能メトリックを指す。いくつかの構成では、各モビリティマネージャ(例えば、MME/AMF132)は、ネットワーク性能(例えば、セッションルーティング性能)を監視するために収集されるか、または概して定量化および保存される通信ベースのメトリックに対応する多数の主要な性能指標(KPI)136(ルーティングKPI136とも呼ばれる)を維持する。MME/AMF132がUE102から要求Rを受信すると、MME/AMF132は、そのルーティングKPI136をパケットコアネットワーク120に(例えば、セレクタ300に)伝達するように構成される。いくつかの実施形態では、セレクタ300は、ネットワーク100の1つまたは複数のモビリティマネージャ132からルーティングKPI136を周期的にストリーミングまたは取得し、受信時または識別時にルーティングパラメータ138を決定し得る。いくつかの例では、モビリティマネージャ132は、一部のルーティングKPI136(例えば、ルーティング選択パラメータ(単数または複数)138)のみをパケットコアネットワーク120に伝達する。ルーティング選択パラメータ138は、制御プレーンインスタンス選択を最適化するためにセレクタ300によって使用され得る任意のネットワーク性能メトリックを指し得るが、ルーティング選択パラメータ138のいくつかの例は、MME/AMF IPアドレス、外部ネットワーク(単数または複数)30の識別子または数、GTP-Cレイテンシ、GTP-C再送信カウント、および/または時刻(ToD)を含む。
【0052】
いくつかの例では、識別器310は、セレクタ300において各候補312に関する1つまたは複数のルーティング選択パラメータ138を決定する。言い換えれば、モビリティマネージャ132は、特定の制御プレーンインスタンス166に対応するルーティングKPI136を以前に収集しているか、または収集する。識別器310がルーティングKPI136に基づいてルーティング選択パラメータ138を受信または決定すると、識別器310は、ルーティング選択パラメータ138を特定の制御プレーンインスタンス166に関連付ける。いくつかの構成では、識別器210は、制御プレーンインスタンス166を制御プレーンインスタンス候補312として識別する前に、ルーティング選択パラメータ138を制御プレーンインスタンス166に関連付ける。この構成では、識別器310は、1つまたは複数のルーティング選択パラメータ閾値を満たす制御プレーンインスタンス166のみを制御プレーンインスタンス候補312として識別することによって、制御プレーンインスタンス166の初期フィルタリングを実行するように構成され得る。
【0053】
分析器320は、セッションマネージャ(例えば、フロントエンド制御プレーン部164からのSMF)からの制御プレーンインスタンス166に対する要求Rを満たすために複数の制御プレーンインスタンス候補312a~nのうちの1つを選択するように構成される。ここで、分析器320は、識別器310から候補312を受信し、1つの制御プレーンインスタンス候補312を要求Rを満たすための制御プレーンインスタンス166として選択または推奨する選択302(例えば、特定の候補312の周りの点線ボックスとして示される)を生成する。図3A図3Eに示されるように、分析器320は、いくつかの異なる選択手法を使用して選択302(または推奨)を実行し得る。いずれの手法においても、分析器320は、概して、候補312に関連付けられたルーティング選択パラメータ(単数または複数)138a~nに基づいて選択302を行う。
【0054】
図3Bおよび図3Cを参照すると、分析器320は、候補312を特定の順序(例えば、リスト322として示される)で配置し、この順序に基づいて1つの候補312を選択302として選択することができる。1つの手法では、図3Bに示すように、分析器320は、候補312のリスト322を生成し、ラウンドロビン手法に基づいて1つの候補312を選択するように構成される。言い換えれば、コンピューティングリソースのラウンドロビンスケジューリングと同様に、分析器320は、リスト322上の各候補312を順番に巡回することによって選択302を実行する。例えば、分析器320が第1の要求Rを受信したときにリスト322上の第1の候補312aを第1の選択302、302aとして選択すると、分析器320は、次の要求Rを受信すると、リスト322上の第2の候補312bを、その前のリスト322上の候補312(例えば、第1の候補312a)が前のセッションにおいて既に選択されているため、第2の選択302、302bとして順次選択する。このようにして、分析器320は、前の選択302に基づいてインスタンス166を均等に分配する。この手法は、同じ候補312または一組の候補312が、他の実行可能な候補312の不十分な利用を引き起こすように定期的に選択されないように、選択302を回転させることによって、(例えば、特定のネットワークサイトにおける)負荷のバランスをとるのに役立ち得る。
【0055】
図3Cを参照すると、分析器320が(例えば、リスト322内の)候補312を順序付ける場合、分析器320は、重みwを候補312に関連付け得る。いくつかの例では、重みwは、候補312に関連付けられた1つまたは複数のルーティング選択パラメータ138の分類を指す。言い換えれば、識別器310または分析器320は、候補312の単一のルーティング選択パラメータ138、または候補312の2つ以上のルーティング選択パラメータ138に基づいて候補312に重みwを割り当てることができる。いくつかの例では、重みwは、そのルーティング選択パラメータ(単数または複数)138の関数として各候補312に割り当てられたスコアを指し得る。重みw、wa-nが各候補312に割り当てられた状態で、分析器320は、重みwによって候補312をランク付けする順序でリスト322を生成し得る。リスト322が候補312の重みwを含む場合、分析器320は、(例えば、重み関数に応じて)最大の重みwまたは最小の重みwを有する候補312に基づいて候補312の選択302を生成する。従って、分析器320が重みwによってリスト322を順序付ける場合、分析器320は、リスト322上の最上位候補312を選択するように構成され得る。
【0056】
各候補312に適用される重みwに加えて、またはその代わりに、図3Dは、分析器320が、選択302が選択基準324に基づく手法を使用し得ることを示す。選択基準324は、ユーザプレーンセレクタ200の選択基準224と同様に、概して、分析器320が候補312を選択するために1つまたは複数のルールを使用するルールベースの手法を指す。いくつかの例では、選択基準324は、ルーティング選択パラメータ138のうちの1つまたは複数の最小値または最大値を選択するためのルールを指す。他の例では、選択基準324は、分析器320がその処理を使用して、各ルールの共通部分または次善の選択肢を表す候補312を決定するように、複数のルール(例えば、合成ルール)を含む。例えば、いくつかのルーティング選択パラメータ138を用いて、ルールは、候補312が特定の時刻に少なくとも特定のレイテンシ測定値(即ち、レイテンシ閾値)を有するべきであることを指定し得る。この場合、分析器320は、これらのルールのそれぞれを満たす候補312(または次善の選択肢)を決定し、そのような候補312を選択302として選択する。いくつかの構成では、選択基準324として複合ルールを用いて、各ルールに優先度が割り当てられ得る。例えば、分析器320は、それ自体を特定の時刻におけるレイテンシ測定値に制限するのではなく、候補の平均レイテンシ特性を優先し得る。ネットワーク100のリソースを負荷分散するために、および/またはレイテンシに敏感であるために、選択基準324は、多くの場合、レイテンシ測定値および/または負荷測定値が分析器320によって選択されるために満たすべきである閾値または値を指定するルールを含み得る。
【0057】
図3Eは、制御プレーンインスタンス選択に機械学習手法を使用するセレクタ300を示す。この手法では、セレクタ300は、予測器330における予測モデル332からの予測Pに基づいて制御プレーンインスタンス166の選択302を形成する。いくつかの例では、予測器330が分析器320に取って代わる。さらに他の例では、分析器320(図示されていないが)は、予測Pが選択基準324を実際に満たすと決定するために、セレクタ300によって依然として実装され得る。予測器330は、概して、第1の段階(例えば、トレーニング段階)および第2の段階(例えば、推論段階)の2つの段階を含む。第1の段階では、予測器330は、選択基準324を満たす制御プレーンインスタンス166を予測できるようにトレーニングする。予測器330をトレーニングするために、予測器330はトレーニンググループ334を生成する。各トレーニンググループ334は、一組のトレーニング制御プレーンインスタンス336と、セレクタ300が処理中に選択する一組の制御プレーンインスタンス候補312をシミュレートするための対応するルーティング選択パラメータ(単数または複数)138とを含む。ここで、トレーニンググループ334内の各トレーニング制御プレーンインスタンス336は、選択基準ラベル338を含む。選択基準ラベル338は、ルーティングパラメータ138を有するトレーニング制御プレーンインスタンス336が選択基準324を満たすか否かを示す。選択基準ラベル338を含むことによって、選択基準ラベル338は、トレーニンググループ334を用いてモデル332をトレーニングする間、グラウンドトゥルースとして機能する。グラウンドトルースを用いて、予測器330は、特定のルーティング選択パラメータ(単数または複数)138に関連付けられたどの候補312がどのラベル338に対応するかを学習する。いくつかの例では、モデル332が十分にトレーニングされたかどうかを判定するために、検証トレーニンググループ334、334がモデル332に渡されて、モデル332が検証トレーニンググループ334の正しいラベル338を正確に識別したかどうかを識別する。第2の段階(例えば、推論)では、予測器330がトレーニングされた後、予測器330は、ルーティングパラメータ138およびラベル338の両方を有するトレーニングユーザプレーンインスタンス336をもはや使用しない。代わりに、識別器310は、1つまたは複数の候補312、それらのルーティングパラメータ(単数または複数)138、および選択基準324をトレーニング済みのモデル332に伝達して、トレーニング済みのモデル332が各候補312に関してラベル338の予測Pを生成するようにする。ここで、予測器330は、候補312のうちの1つの候補312が選択基準324を満たすと予測するラベル338を用いることによって、選択302を形成する。
【0058】
いくつかの例では、トレーニングが完了すると(例えば、検証後)、予測器330は、異なる選択基準324に対して制御プレーンインスタンス候補312を予測するために、新たな着信要求Rの少数に対してモデル332をテストする。使用され得るいくつかの選択基準324は、特定のネットワーク設定(例えば、特定のUE102、セッションマネージャ(例えば、フロントエンド制御プレーン部164のSMF)、または外部ネットワーク30に接続するネットワーク要素のいくつかの組合せ)で使用するための最良の制御プレーンインスタンス候補312を識別しようと試みる。例えば、選択基準324は、MMEの識別子、AMFの識別子、国際モバイル機器識別子(IMEI)、または国際モバイル加入者識別子(IMSI)など、特定のタイプのネットワーク設定の識別子を含む。モデル332は、これらの識別子のうちの1つまたは複数を、レイテンシ測定値(例えば、最低レイテンシ)またはGTP-C再送信のレート(例えば、最低レート)などの他の選択基準324とともに使用し得る。言い換えれば、選択基準324は、異なるタイプの基準を組み合わせ得る。第1のタイプの基準は、ネットワーク性能ベースの基準(例えば、最低レイテンシ)であり得る。第2のタイプの基準は、ネットワークデバイスベースの基準であり得る(例えば、特定のタイプのネットワーク要素またはネットワーク設定に関する識別子を使用する)。第3のタイプの基準は、要求R中の現在の条件(例えば、時刻またはネットワーク機器の場所)に基づき得る。そのような複合選択基準324の例を挙げると、選択基準324と共に要求Rは、特定の時刻における所与のモビリティマネージャ識別子(例えば、MME/AMF識別子)に対して最良の制御インスタンス候補312を要求し得る。さらに、セレクタ300は、所与のモビリティマネージャ識別子およびToDに基づいて任意のUE102に対して、または特定のUE102に対して、この要求Rを満たすことを所望する場合がある。これらのタイプの複合層を用いて、ユーザプレーンインスタンス候補312の選択302は、粒度の程度を変化させることが可能であり得る。いくつかの構成では、予測器330が、新たな着信要求Rの少数に対してモデル332をテストする場合、予測器330は、粒度の増加する順序で選択基準324を使用する。例えば、粒度の増加する順序は、(i)MME/AMF、ToD、(ii)IMEI、MME/AMF、ToD、(iii)IMSI、MME/AMF、ToD(例えば、IMSIまたはハッシュ化されたIMSIが使用可能である場合)である。
【0059】
図4は、ユーザプレーンインスタンス152を選択する方法400のための動作の例示的な構成のフローチャートである。動作402において、方法400は、データ処理ハードウェア204において、制御プレーン160から、パケットコアネットワーク120内のユーザプレーンインスタンス152に対する要求Rを受信する。ユーザプレーンインスタンス152は、通信セッション中にユーザ機器102のためのパケット処理を実行するように構成される。動作404において、方法400は、ユーザ機器102と通信している基地局104に関連付けられた複数のユーザプレーンインスタンス候補212を識別する。複数のユーザプレーンインスタンス候補212は、制御プレーン160によって構成可能である。各ユーザプレーンインスタンス候補に対して、動作406において、方法400は、ユーザ機器102と通信している基地局104の一部の主要な性能指標112に対応する1つまたは複数の選択パラメータ114を決定する。動作408において、方法400は、複数のユーザプレーンインスタンス候補212の各々に対して決定された1つまたは複数の選択パラメータ114に基づいて、制御プレーン160からのユーザプレーンインスタンス152に対する要求Rを満たすために複数のユーザプレーンインスタンス候補212のうちの1つを選択する。
【0060】
図5は、制御プレーンインスタンス166を選択する方法500のための動作の例示的な構成のフローチャートである。動作502において、方法500は、データ処理ハードウェア304において、パケットコアネットワーク120のセッションマネージャ164から、パケットコアネットワーク120内の制御プレーンインスタンス166に対する要求Rを受信する。制御プレーンインスタンス166は、通信セッション中にユーザ機器102のためのパケットをルーティングするように構成される。動作504において、方法500は、パケットコアネットワーク120のモビリティマネージャ132に関連付けられた複数の制御プレーンインスタンス候補312を識別する。複数の制御プレーンインスタンス候補312は、モビリティマネージャ132の地理的領域にサービスを提供するように構成される。各制御プレーンインスタンス候補312に対して、動作506において、方法500は、ユーザ機器102と通信しているモビリティマネージャ132の一部の主要な性能指標136に対応する1つまたは複数の選択パラメータ138を決定する。動作508において、方法500は、決定された1つまたは複数の選択パラメータ138に基づいて、セッションマネージャ164からの制御プレーンインスタンス166に対する要求Rを満たすために個々の制御プレーンインスタンス候補312を選択する。
【0061】
図6は、本明細書で説明されるシステム(例えば、セレクタ200、300)および方法(例えば、方法400および方法500)を実施するために使用され得る例示的コンピューティングデバイス600の概略図である。コンピューティングデバイス600は、ラップトップ、デスクトップ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、メインフレーム、および他の適切なコンピュータなど、様々な形態のデジタルコンピュータを表すことが意図されている。本明細書に示された構成要素、それらの接続および関係、およびそれらの機能は、例示的なものに過ぎず、本明細書に記載および/または特許請求の範囲に記載される本発明の実施形態を限定するものではない。
【0062】
コンピューティングデバイス600は、プロセッサ610、メモリ620、ストレージデバイス630、メモリ620および高速拡張ポート650に接続する高速インタフェース/コントローラ640、ならびに低速バス670およびストレージデバイス630に接続する低速インタフェース/コントローラ660を含む。構成要素610、620、630、640、650、および660の各々は、様々なバスを使用して相互接続され、かつ共通マザーボード上に、または必要に応じて他の方法で搭載され得る。プロセッサ610(例えば、データ処理ハードウェア204、304)は、メモリ620またはストレージデバイス630に格納された命令を含む、コンピューティングデバイス600内で実行するための命令を処理して、高速インタフェース640に結合されたディスプレイ680などの外部入力/出力デバイス上にグラフィカルユーザインタフェース(GUI)用のグラフィカル情報を表示することができる。他の実施形態では、複数のメモリおよび複数のタイプのメモリと共に、複数のプロセッサおよび/または複数のバスが適宜使用されてもよい。また、複数のコンピューティングデバイス600が接続され、各デバイスは、(例えば、サーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして)必要な処理の一部を提供してもよい。
【0063】
メモリ620(例えば、メモリハードウェア206、306)は、コンピューティングデバイス600内に情報を非一時的に記憶する。メモリ620は、コンピュータ可読媒体、揮発性メモリユニット(単数または複数)、または不揮発性メモリユニット(単数または複数)であってもよい。非一時的メモリ620は、コンピューティングデバイス600による使用のための一時的または永続的な基準でプログラム(例えば、命令のシーケンス)またはデータ(例えば、プログラム状態情報)を格納するために使用される物理的デバイスであってもよい。不揮発性メモリの例には、これらに限定されないが、フラッシュメモリおよび読み出し専用メモリ(ROM)/プログラム可能読み出し専用メモリ(PROM)/消去可能プログラム可能読み出し専用メモリ(EPROM)/電子消去可能プログラム可能読み出し専用メモリ(EEPROM)(例えば、通常、ブートプログラムなどのファームウェアに使用される)が含まれる。揮発性メモリの例には、これらに限定されないが、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)、およびディスクまたはテープが含まれる。
【0064】
ストレージデバイス630は、コンピューティングデバイス600に大容量ストレージを提供することができる。いくつかの実施形態では、ストレージデバイス630はコンピュータ可読媒体である。様々な異なる実施形態では、ストレージデバイス630は、フロッピーディスク(登録商標)デバイス、ハードディスクデバイス、光ディスクデバイス、またはテープデバイス、フラッシュメモリまたは他の同様のソリッドステートメモリデバイス、またはストレージエリアネットワークもしくは他の構成におけるデバイスを含むデバイスのアレイであり得る。追加の実施形態では、コンピュータプログラム製品は、情報媒体に有形的に具体化される。コンピュータプログラム製品は、実行時に、上記したような1つまたは複数の方法を実行する命令を含む。情報担体は、メモリ620、ストレージデバイス630、またはプロセッサ610上のメモリなどのコンピュータ可読媒体または機械可読媒体である。
【0065】
高速コントローラ640は、コンピューティングデバイス600の帯域幅を大量に使用する処理を管理し、低速コントローラ660は、より低い帯域幅を大量に使用する処理を管理する。このような役割の配分は、例示的なものに過ぎない。いくつかの実施形態では、高速コントローラ640は、メモリ620、ディスプレイ680(例えば、グラフィックスプロセッサまたはアクセラレータを介する)、および各種拡張カード(図示せず)を受け入れる高速拡張ポート650に接続される。いくつかの実施形態では、低速コントローラ660は、ストレージデバイス630および低速拡張ポート690に接続される。様々な通信ポート(例えば、USB、ブルートゥース(Bluetooth(登録商標))、イーサネット(登録商標)、無線イーサネット(登録商標))を含む低速拡張ポート690は、キーボード、ポインティングデバイス、スキャナ、または例えばネットワークアダプタを介するスイッチまたはルータなどのネットワーキングデバイスなどの1つまたは複数の入力/出力デバイスに接続され得る。
【0066】
コンピューティングデバイス600は、図面に示されるように、いくつかの異なる形態で実施することができる。例えば、それは、標準サーバ600aとして、またはそのようなサーバ600aのグループにおいて複数回、ラップトップコンピュータ600bとして、またはラックサーバシステム600cの一部として実施することができる。
【0067】
本明細書に記載のシステムおよび技術の様々な実施形態は、デジタル電子回路および/または光回路、集積回路、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはそれらの組み合わせにおいて実現することができる。これらの様々な実施形態は、ストレージシステム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスからデータおよび命令を受信し、それらにデータおよび命令を送信するように接続された、特別または一般的な目的であってもよい、少なくとも1つのプログラム可能なプロセッサを含むプログラム可能なシステム上で実行可能および/または解釈可能な1つまたは複数のコンピュータプログラムにおける実施形態を含むことができる。
【0068】
これらのコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、またはコードとしても知られている)は、プログラマブルプロセッサ用の機械命令を含み、高水準の手続き型言語および/またはオブジェクト指向のプログラミング言語、および/またはアセンブリ言語/機械語で実施することができる。本明細書で使用する場合、「機械可読媒体」および「コンピュータ可読媒体」という用語は、任意のコンピュータプログラム製品、非一時的なコンピュータ可読媒体、機械命令を機械可読信号として受信する機械可読媒体を含む、プログラマブルプロセッサに機械命令および/またはデータを提供するために使用される装置および/またはデバイス(例えば、磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス(PLD))を指す。「機械可読信号」という用語は、機械命令および/またはデータをプログラマブルプロセッサに提供するために使用される任意の信号を指す。
【0069】
本明細書で説明するプロセスおよび論理フローは、入力データを処理して出力を生成することによって機能を実行する1つまたは複数のコンピュータプログラムを実行する1つまたは複数のプログラマブルプロセッサによって実行することができる。プロセスおよび論理フローは、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)などの特定用途論理回路によっても実行することができる。コンピュータプログラムの実行に適したプロセッサは、一例として、汎用マイクロプロセッサおよび専用マイクロプロセッサの両方、および任意の種類のデジタルコンピュータの任意の1つまたは複数のプロセッサを含む。概して、プロセッサは、読み出し専用メモリまたはランダムアクセスメモリ、あるいはその両方から命令およびデータを受信する。コンピュータの必須要素は、命令を実行するプロセッサと、命令およびデータを格納するための1つまたは複数のメモリデバイスとである。概して、コンピュータは、データを格納するための1つまたは複数の大容量ストレージデバイス(例えば、磁気ディスク、光磁気ディスク、または光ディスク)からのデータを受信するか、またはデータを転送するか、あるいはその両方を行うように動作可能に結合される。しかしながら、コンピュータはそのようなデバイスを有する必要はない。コンピュータプログラム命令およびデータを格納するのに適したコンピュータ可読媒体には、半導体メモリデバイス(例えば、EPROM、EEPROM、およびフラッシュメモリデバイス)、磁気ディスク(例えば、内蔵ハードディスクまたはリムーバブルディスク)、光磁気ディスク、およびCDROMおよびDVD-ROMディスクを含む全ての形態の不揮発性メモリ、媒体およびメモリデバイスが含まれる。プロセッサおよびメモリは、特定用途論理回路によって補完または特定用途論理回路に組み込むことができる。
【0070】
ユーザとのインタラクションを提供するために、本開示の1つまたは複数の態様は、例えば、CRT(陰極線管)、LDC(液晶ディスプレイ)モニタ、またはタッチスクリーンなどのユーザに情報を表示するためのディスプレイデバイスと、任意選択的にユーザがコンピュータに入力を提供するキーボードおよびポインティングデバイス(例えば、マウスやトラックボール)とを有するコンピュータ上で実施することができる。他の種類の装置を使用して、例えば、任意の形態の感覚フィードバック(例えば、視覚フィードバック、聴覚フィードバック、または触覚フィードバック)であり得るユーザに提供されるフィードバックとともにユーザとのインタラクションを提供することもでき、ユーザからの入力は、音響、音声、または触覚入力を含む任意の形態で受信することができる。さらに、コンピュータは、ユーザによって使用されるデバイスとの間でドキュメントを送受信することによって(例えば、ウェブブラウザから受信した要求に応答してユーザのクライアントデバイス上のウェブブラウザにウェブページを送信することによって)、ユーザとインタラクションすることができる。
【0071】
いくつかの実施形態が説明されている。それにもかかわらず、本開示の技術思想および範囲から逸脱することなく、様々な変更がなされ得ることが理解されるであろう。従って、他の実施形態も以下の特許請求の範囲内にある。
図1
図2A
図2B
図2C
図2D
図2E
図3A
図3B
図3C
図3D
図3E
図4
図5
図6