(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022154278
(43)【公開日】2022-10-13
(54)【発明の名称】ネットワークコントローラー、ルーター、ネットワーク制御方法、ルーティング方法、及びコンピュータプログラム
(51)【国際特許分類】
H04L 45/42 20220101AFI20221005BHJP
H04L 47/125 20220101ALI20221005BHJP
【FI】
H04L12/717
H04L12/803
【審査請求】未請求
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2021057217
(22)【出願日】2021-03-30
(71)【出願人】
【識別番号】000208891
【氏名又は名称】KDDI株式会社
(74)【代理人】
【識別番号】100165179
【弁理士】
【氏名又は名称】田▲崎▼ 聡
(74)【代理人】
【識別番号】100175824
【弁理士】
【氏名又は名称】小林 淳一
(74)【代理人】
【識別番号】100114937
【弁理士】
【氏名又は名称】松本 裕幸
(72)【発明者】
【氏名】宮坂 拓也
(72)【発明者】
【氏名】北原 武
【テーマコード(参考)】
5K030
【Fターム(参考)】
5K030GA13
5K030LB07
5K030LC01
5K030LE03
(57)【要約】
【課題】IPエニーキャストにおいて適切な通信の割り当てを図る。
【解決手段】ネットワークコントローラーは、IPエニーキャストが適用される同一のIPアドレスが付与された各サーバーが有する計算資源が利用される状況を示す計算資源利用状況情報と、当該IPアドレス宛のリクエストが各サーバーに対応して設けられる各ルーターで受信される状況を示すリクエスト受信状況情報とに基づいて、各サーバーに対して当該IPアドレス宛の通信を割り当てる比率である通信割当比率を算出する通信割当比率算出部と、各ルーターに対して通信割当比率を設定する制御部と、を備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
IPエニーキャストが適用される同一のIPアドレスが付与された各サーバーが有する計算資源が利用される状況を示す計算資源利用状況情報と、前記IPアドレス宛のリクエストが前記各サーバーに対応して設けられる各ルーターで受信される状況を示すリクエスト受信状況情報とに基づいて、前記各サーバーに対して前記IPアドレス宛の通信を割り当てる比率である通信割当比率を算出する通信割当比率算出部と、
前記各ルーターに対して前記通信割当比率を設定する制御部と、
を備えるネットワークコントローラー。
【請求項2】
前記通信割当比率算出部は、前記各サーバーのうちエッジサーバーと前記各ルーターとの間のネットワーク的なコストを示すネットワークコスト値をさらに加味して、前記通信割当比率を算出する、
請求項1に記載のネットワークコントローラー。
【請求項3】
前記通信割当比率算出部は、前記各ルーターが受信する前記IPアドレス宛のリクエストが前記ネットワークコスト値がより小さい前記エッジサーバーに対してより多く割り当てられるように、前記通信割当比率を算出する、
請求項2に記載のネットワークコントローラー。
【請求項4】
IPエニーキャストが適用されるIPアドレス宛の通信をルーティングするルーターにおいて、
請求項1から3のいずれか1項に記載のネットワークコントローラーから通信割当比率の設定を受付け、受付けた通信割当比率に基づいて前記IPアドレス宛の通信の割り当てを行う、
ルーター。
【請求項5】
IPエニーキャストが適用されるIPアドレス宛の通信をルーティングするルーターにおいて、
同一の前記IPアドレスが付与された各サーバーが有する計算資源が利用される状況を示す計算資源利用状況情報と、前記IPアドレス宛のリクエストが自ルーターで受信される状況を示すリクエスト受信状況情報とに基づいて、前記各サーバーに対して前記IPアドレス宛の通信を割り当てる比率である通信割当比率を算出する通信割当比率算出部と、
前記通信割当比率を自ルーターに設定する制御部と、
を備えるルーター。
【請求項6】
前記通信割当比率算出部は、前記各サーバーのうちエッジサーバーと自ルーターとの間のネットワーク的なコストを示すネットワークコスト値をさらに加味して、前記通信割当比率を算出する、
請求項5に記載のルーター。
【請求項7】
前記通信割当比率算出部は、自ルーターが受信する前記IPアドレス宛のリクエストが前記ネットワークコスト値がより小さい前記エッジサーバーに対してより多く割り当てられるように、前記通信割当比率を算出する、
請求項6に記載のルーター。
【請求項8】
前記通信割当比率算出部は、自ルーターに対応して設けられる前記エッジサーバーに対して、当該エッジサーバーの地域以外の他の地域のユーザー端末から流入する前記IPアドレス宛のリクエストも考慮して、前記通信割当比率を算出する、
請求項7に記載のルーター。
【請求項9】
ネットワークコントローラーが、IPエニーキャストが適用される同一のIPアドレスが付与された各サーバーが有する計算資源が利用される状況を示す計算資源利用状況情報と、前記IPアドレス宛のリクエストが前記各サーバーに対応して設けられる各ルーターで受信される状況を示すリクエスト受信状況情報とに基づいて、前記各サーバーに対して前記IPアドレス宛の通信を割り当てる比率である通信割当比率を算出する通信割当比率算出ステップと、
前記ネットワークコントローラーが、前記各ルーターに対して前記通信割当比率を設定する制御ステップと、
を含むネットワーク制御方法。
【請求項10】
IPエニーキャストが適用されるIPアドレス宛の通信をルーティングするルーターが、同一の前記IPアドレスが付与された各サーバーが有する計算資源が利用される状況を示す計算資源利用状況情報と、前記IPアドレス宛のリクエストが自ルーターで受信される状況を示すリクエスト受信状況情報とに基づいて、前記各サーバーに対して前記IPアドレス宛の通信を割り当てる比率である通信割当比率を算出する通信割当比率算出ステップと、
前記ルーターが、前記通信割当比率を自ルーターに設定する制御ステップと、
を含むルーティング方法。
【請求項11】
ネットワークコントローラーのコンピュータに、
IPエニーキャストが適用される同一のIPアドレスが付与された各サーバーが有する計算資源が利用される状況を示す計算資源利用状況情報と、前記IPアドレス宛のリクエストが前記各サーバーに対応して設けられる各ルーターで受信される状況を示すリクエスト受信状況情報とに基づいて、前記各サーバーに対して前記IPアドレス宛の通信を割り当てる比率である通信割当比率を算出する通信割当比率算出ステップと、
前記ネットワークコントローラーが、前記各ルーターに対して前記通信割当比率を設定する制御ステップと、
を実行させるためのコンピュータプログラム。
【請求項12】
IPエニーキャストが適用されるIPアドレス宛の通信をルーティングするルーターのコンピュータに、
同一の前記IPアドレスが付与された各サーバーが有する計算資源が利用される状況を示す計算資源利用状況情報と、前記IPアドレス宛のリクエストが自ルーターで受信される状況を示すリクエスト受信状況情報とに基づいて、前記各サーバーに対して前記IPアドレス宛の通信を割り当てる比率である通信割当比率を算出する通信割当比率算出ステップと、
前記通信割当比率を自ルーターに設定する制御ステップと、
を実行させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ネットワークコントローラー、ルーター、ネットワーク制御方法、ルーティング方法、及びコンピュータプログラムに関する。
【背景技術】
【0002】
従来、共通のIP(Internet Protocol)アドレスを複数のホストで共有する技術として、IPエニーキャストが知られている(例えば、非特許文献1参照)。IPエニーキャストによれば、あるサービスを利用するユーザーは、当該サービスを提供する複数のホストのうちネットワーク的に最も近いホストと通信することができる。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】“解説「IP Anycast(アイピーエニーキャスト)」”、JPRS用語辞典、インターネット<URL:https://jprs.jp/glossary/index.php?ID=0108>
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、従来のIPエニーキャストでは、以下に示すような課題がある。
【0005】
IPエニーキャストによれば、ユーザが例えばウェブ(Web)サービス等のコンテンツを利用するために当該ユーザーから送信される当該コンテンツに共通のIPアドレス(IPエニーキャストが適用されるIPアドレス)に宛てたリクエストが、当該IPアドレスが付与された複数のサーバーのうち当該ユーザーからネットワーク的に最も近いサーバーへ自動的にルーティングされる。しかしながら、特定の地域において集中的にユーザーからのリクエストが多数発生すると、当該地域からネットワーク的に最も近いサーバーに対してリクエストが集中し、ユーザー全体として、当該リクエストに対する体感品質が劣化する可能性があった。
【0006】
また、MEC(Multi-access Edge Computing)においては、インターネットサービスプロバイダー(Internet Service Provider:ISP)やモバイルネットワークオペレーター(Mobile Network Operator:MNO)のネットワーク内において、MECに利用される複数のサーバー(エッジサーバー)が各地域に分散してネットワーク的に端末に近い位置(ネットワーク内の端末側)に配置されるが、一般的にエッジサーバーの処理能力は他のサーバー(例えばネットワーク内のコア側に配置されるサーバー等)よりも小さい。このため、特定の地域のエッジサーバーにリクエストが集中すると、当該エッジサーバーの計算資源が逼迫する可能性があり、IPエニーキャストを適用する際の課題がより顕在化する。
【0007】
本発明は、このような事情を考慮してなされたものであり、その目的は、IPエニーキャストにおいて適切な通信の割り当てを図ることにある。
【課題を解決するための手段】
【0008】
(1)本発明の一態様は、IPエニーキャストが適用される同一のIPアドレスが付与された各サーバーが有する計算資源が利用される状況を示す計算資源利用状況情報と、前記IPアドレス宛のリクエストが前記各サーバーに対応して設けられる各ルーターで受信される状況を示すリクエスト受信状況情報とに基づいて、前記各サーバーに対して前記IPアドレス宛の通信を割り当てる比率である通信割当比率を算出する通信割当比率算出部と、前記各ルーターに対して前記通信割当比率を設定する制御部と、を備えるネットワークコントローラーである。
(2)本発明の一態様は、前記通信割当比率算出部は、前記各サーバーのうちエッジサーバーと前記各ルーターとの間のネットワーク的なコストを示すネットワークコスト値をさらに加味して、前記通信割当比率を算出する、上記(1)のネットワークコントローラーである。
(3)本発明の一態様は、前記通信割当比率算出部は、前記各ルーターが受信する前記IPアドレス宛のリクエストが前記ネットワークコスト値がより小さい前記エッジサーバーに対してより多く割り当てられるように、前記通信割当比率を算出する、上記(2)のネットワークコントローラーである。
(4)本発明の一態様は、IPエニーキャストが適用されるIPアドレス宛の通信をルーティングするルーターにおいて、上記(1)から(3)のいずれかのネットワークコントローラーから通信割当比率の設定を受付け、受付けた通信割当比率に基づいて前記IPアドレス宛の通信の割り当てを行う、ルーターである。
【0009】
(5)本発明の一態様は、IPエニーキャストが適用されるIPアドレス宛の通信をルーティングするルーターにおいて、同一の前記IPアドレスが付与された各サーバーが有する計算資源が利用される状況を示す計算資源利用状況情報と、前記IPアドレス宛のリクエストが自ルーターで受信される状況を示すリクエスト受信状況情報とに基づいて、前記各サーバーに対して前記IPアドレス宛の通信を割り当てる比率である通信割当比率を算出する通信割当比率算出部と、前記通信割当比率を自ルーターに設定する制御部と、を備えるルーターである。
(6)本発明の一態様は、前記通信割当比率算出部は、前記各サーバーのうちエッジサーバーと自ルーターとの間のネットワーク的なコストを示すネットワークコスト値をさらに加味して、前記通信割当比率を算出する、上記(5)のルーターである。
(7)本発明の一態様は、前記通信割当比率算出部は、自ルーターが受信する前記IPアドレス宛のリクエストが前記ネットワークコスト値がより小さい前記エッジサーバーに対してより多く割り当てられるように、前記通信割当比率を算出する、上記(6)のルーターである。
(8)本発明の一態様は、前記通信割当比率算出部は、自ルーターに対応して設けられる前記エッジサーバーに対して、当該エッジサーバーの地域以外の他の地域のユーザー端末から流入する前記IPアドレス宛のリクエストも考慮して、前記通信割当比率を算出する、上記(7)のルーターである。
【0010】
(9)本発明の一態様は、ネットワークコントローラーが、IPエニーキャストが適用される同一のIPアドレスが付与された各サーバーが有する計算資源が利用される状況を示す計算資源利用状況情報と、前記IPアドレス宛のリクエストが前記各サーバーに対応して設けられる各ルーターで受信される状況を示すリクエスト受信状況情報とに基づいて、前記各サーバーに対して前記IPアドレス宛の通信を割り当てる比率である通信割当比率を算出する通信割当比率算出ステップと、前記ネットワークコントローラーが、前記各ルーターに対して前記通信割当比率を設定する制御ステップと、を含むネットワーク制御方法である。
【0011】
(10)本発明の一態様は、IPエニーキャストが適用されるIPアドレス宛の通信をルーティングするルーターが、同一の前記IPアドレスが付与された各サーバーが有する計算資源が利用される状況を示す計算資源利用状況情報と、前記IPアドレス宛のリクエストが自ルーターで受信される状況を示すリクエスト受信状況情報とに基づいて、前記各サーバーに対して前記IPアドレス宛の通信を割り当てる比率である通信割当比率を算出する通信割当比率算出ステップと、前記ルーターが、前記通信割当比率を自ルーターに設定する制御ステップと、を含むルーティング方法である。
【0012】
(11)本発明の一態様は、ネットワークコントローラーのコンピュータに、IPエニーキャストが適用される同一のIPアドレスが付与された各サーバーが有する計算資源が利用される状況を示す計算資源利用状況情報と、前記IPアドレス宛のリクエストが前記各サーバーに対応して設けられる各ルーターで受信される状況を示すリクエスト受信状況情報とに基づいて、前記各サーバーに対して前記IPアドレス宛の通信を割り当てる比率である通信割当比率を算出する通信割当比率算出ステップと、前記ネットワークコントローラーが、前記各ルーターに対して前記通信割当比率を設定する制御ステップと、を実行させるためのコンピュータプログラムである。
【0013】
(12)本発明の一態様は、IPエニーキャストが適用されるIPアドレス宛の通信をルーティングするルーターのコンピュータに、同一の前記IPアドレスが付与された各サーバーが有する計算資源が利用される状況を示す計算資源利用状況情報と、前記IPアドレス宛のリクエストが自ルーターで受信される状況を示すリクエスト受信状況情報とに基づいて、前記各サーバーに対して前記IPアドレス宛の通信を割り当てる比率である通信割当比率を算出する通信割当比率算出ステップと、前記通信割当比率を自ルーターに設定する制御ステップと、を実行させるためのコンピュータプログラムである。
【発明の効果】
【0014】
本発明によれば、IPエニーキャストにおいて適切な通信の割り当てを図ることができるという効果が得られる。
【図面の簡単な説明】
【0015】
【
図1】第1実施形態に係る通信システムの構成例を示すブロック図である。
【
図2】第1実施形態に係るネットワーク制御方法の手順の例を示すフローチャートである。
【
図3】第1実施形態に係るルーティングテーブル情報の例を示す図である。
【
図4】第1実施形態に係る通信割当比率算出方法の説明図である。
【
図5】第2実施形態に係る通信システムの構成例を示すブロック図である。
【
図6】第2実施形態に係るルーター200の構成例を示すブロック図である。
【
図7】第2実施形態に係るルーティング方法の手順の例を示すフローチャートである。
【
図8】第2実施形態に係るルーティングテーブル情報の例を示す図である。
【
図9】第2実施形態に係る通信割当比率算出方法の説明図である。
【発明を実施するための形態】
【0016】
以下、図面を参照し、本発明の実施形態について説明する。本実施形態では、通信システムの一例として、MEC(Multi-access Edge Computing)を含む通信システムを挙げて説明する。
【0017】
[第1実施形態]
図1は、第1実施形態に係る通信システムの構成例を示すブロック図である。
図1に示される通信システム1は、ネットワークコントローラー10を備える。ネットワークコントローラー10は、コアネットワークNWに接続される。
【0018】
通信システム1は、3つの地域A,B,Cにそれぞれ分散して配置されるルーター20a,20b,20c及びサーバー30a,30b,30cを備える。サーバー30a,30b,30cは、MECに利用されるサーバー(エッジサーバー)である。サーバー30a,30b,30cには、共通のIPアドレス「10.0.0.1/32」が付与されている。IPアドレス「10.0.0.1/32」は、IPエニーキャストが適用されるIPアドレスである。IPアドレス「10.0.0.1/32」は、例えば、あるWebサービスに共通のIPアドレスである。
【0019】
ルーター20a,20b,20cは、コアネットワークNWに接続される。サーバー30aは、ルーター20aに接続される。サーバー30bは、ルーター20bに接続される。サーバー30cは、ルーター20cに接続される。なお、
図1中には、IPアドレス「10.0.0.1/32」にアクセスするユーザー端末として、地域Aに存在するユーザーが利用するユーザー端末40のみを図示している。地域Aのユーザー端末40は、ルーター20aに接続される。
【0020】
以下、サーバー30a,30b,30cを特に区別しないときは「サーバー30」と称する。また、ルーター20a,20b,20cを特に区別しないときは「ルーター20」と称する。
【0021】
ネットワークコントローラー10は、通信割当比率算出部11と、制御部12とを備える。
【0022】
ネットワークコントローラー10の各機能は、ネットワークコントローラー10がCPU(Central Processing Unit:中央演算処理装置)及びメモリ等のコンピュータハードウェアを備え、CPUがメモリに格納されたコンピュータプログラムを実行することにより実現される。なお、ネットワークコントローラー10として、汎用のコンピュータ装置を使用して構成してもよく、又は、専用のハードウェア装置として構成してもよい。例えば、ネットワークコントローラー10は、コアネットワークNWに接続されるサーバコンピュータを使用して構成されてもよい。また、ネットワークコントローラー10の各機能はクラウドコンピューティングにより実現されてもよい。また、ネットワークコントローラー10は、単独のコンピュータにより実現するものであってもよく、又はネットワークコントローラー10の機能を複数のコンピュータに分散させて実現するものであってもよい。
【0023】
通信割当比率算出部11は、各サーバー30a,30b,30cの計算資源利用状況情報と、各ルーター20a,20b,20cのリクエスト受信状況情報とに基づいて、通信割当比率を算出する。通信割当比率は、各サーバー30a,30b,30cに対して、IPエニーキャストが適用される同一のIPアドレス宛の通信を割り当てる比率である。
図1のIPアドレスの例では、通信割当比率は、各サーバー30a,30b,30cに対してIPアドレス「10.0.0.1/32」宛の通信を割り当てる比率である。通信割当比率は、ルーター20a,20b,20c毎に求められる。例えば、ルーター20aの通信割当比率は、ルーター20aが、各サーバー30a,30b,30cに対してIPアドレス「10.0.0.1/32」宛の通信をルーティングする比率である。
【0024】
サーバー30の計算資源利用状況情報は、当該サーバー30が有する計算資源が利用される状況を示す情報である。計算資源は、例えばCPUやメモリーやストレージ等である。サーバー30の計算資源利用状況情報は、本実施形態の一例として、当該サーバー30がユーザーへ提供するサービスについて現在受け入れることができる最大セッション数(現在受入れ可能最大セッション数)である。現在受入れ可能最大セッション数は、現在のサーバー30の計算資源の利用率が少ないほど多くなり、当該利用率が多いほど少なくなる。
【0025】
ルーター20のリクエスト受信状況情報は、IPエニーキャストが適用される同一のIPアドレス宛のリクエストが当該ルーター20で受信される状況を示す情報である。
図1のIPアドレスの例では、ルーター20のリクエスト受信状況情報は、IPアドレス「10.0.0.1/32」宛のリクエストがルーター20で受信される状況を示す情報である。ルーター20のリクエスト受信状況情報は、本実施形態の一例として、当該ルーター20が単位時間当たりに受信したIPアドレス「10.0.0.1/32」宛のリクエスト数(IPフロー数)である。
【0026】
通信割当比率算出部11は、各サーバー30a,30b,30cの計算資源利用状況情報と各ルーター20a,20b,20cのリクエスト受信状況情報とに加えてさらに、各サーバー30a,30b,30cと各ルーター20a,20b,20cとの組み合わせ毎にサーバー30とルーター20との間のネットワーク的なコストを示すネットワークコスト値にも基づいて、通信割当比率を算出してもよい。ネットワークコスト値は、例えば、OSPF(Open Shortest Path First)コスト値であってもよく、又はBGP(Border Gateway Protocol)のMED(Multi-Exit-Discriminator)値であってもよい。
【0027】
制御部12は、通信割当比率算出部11が算出した結果の各ルーター20a,20b,20cの通信割当比率を各ルーター20a,20b,20cに設定する。これにより、各ルーター20a,20b,20cは、自己の通信割当比率に従って、各サーバー30a,30b,30cに対してIPアドレス「10.0.0.1/32」宛の通信をルーティングする。
【0028】
次に
図2を参照して第1実施形態に係るネットワーク制御方法を説明する。
図2は、第1実施形態に係るネットワーク制御方法の手順の例を示すフローチャートである。
【0029】
(ステップS1) サーバー30は、自己に割り当てられた計算資源量(例えば、CPUコア数、メモリー量、ストレージ量等)の現在の利用状況(例えば、利用率)に基づいて、現在受入れ可能最大セッション数を算出する。各サーバー30a,30b,30cは、自己の現在受入れ可能最大セッション数をネットワークコントローラー10へ通知する。これにより、ネットワークコントローラー10は、各サーバー30a,30b,30cの現在受入れ可能最大セッション数を取得する。なお、各サーバー30a,30b,30cの現在受入れ可能最大セッション数は、定期的に、最新の値に更新される。
【0030】
(ステップS2) ルーター20は、自己が単位時間当たりに受信するIPアドレス「10.0.0.1/32」宛のリクエスト数(IPフロー数)を測定する。各ルーター20a,20b,20cは、自己の測定結果の単位時間当たりリクエスト数をネットワークコントローラー10へ通知する。これにより、ネットワークコントローラー10は、各ルーター20a,20b,20cの単位時間当たりリクエスト数を取得する。なお、各ルーター20a,20b,20cの単位時間当たりリクエスト数は、定期的に、最新の値に更新される。
【0031】
(ステップS3) ルーター20は、自己と各地域A,B,Cのサーバー30a,30b,30cとの間のネットワークコスト値をネットワークコントローラー10へ通知する。これにより、ネットワークコントローラー10は、各サーバー30a,30b,30cと各ルーター20a,20b,20cとの組み合わせ毎に、ネットワークコスト値を取得する。
【0032】
(ステップS4) 通信割当比率算出部11は、ルーター20a,20b,20c毎に通信割当比率を算出する。通信割当比率算出部11は、例えば、各サーバー30a,30b,30cの現在受入れ可能最大セッション数と、各ルーター20a,20b,20cの単位時間当たりリクエスト数と、各サーバー30a,30b,30cと各ルーター20a,20b,20cとの組み合わせ毎のネットワークコスト値とに基づいて、ルーター20a,20b,20c毎に、各サーバー30a,30b,30cに対してIPアドレス「10.0.0.1/32」宛の通信を割り当てる比率(通信割当比率)を算出する。
【0033】
(ステップS5) 制御部12は、ステップS4で算出された各ルーター20a,20b,20cの通信割当比率を各ルーター20a,20b,20cに設定する。
【0034】
ネットワークコントローラー10による各ルーター20a,20b,20cの通信割当比率の算出及び各ルーター20a,20b,20cへの通信割当比率の設定は、定期的に実行される。
【0035】
図3は、第1実施形態に係るルーティングテーブル情報の例を示す図である。
図3の例は、地域Aのルーター20aのルーティングテーブル情報であって、ルーター20aの通信割当比率が反映された結果である。
図3のルーティングテーブル情報には、IPアドレス「10.0.0.1/32」宛の通信のルーティング先として、地域Aのサーバー30a(サーバー(A))と、地域Bのサーバー30b(サーバー(B))と、地域Cのサーバー30c(サーバー(C))とが登録されている。そして、ルーター20aの通信割当比率として、サーバー(A)に対して80%が設定され、サーバー(B)に対して10%が設定され、サーバー(C)に対して10%が設定されている。これにより、ルーター20aは、地域Aのユーザー端末40から受信するIPアドレス「10.0.0.1/32」宛の通信(IPフロー)のうち、80%を地域Aのサーバー30aへ転送し、10%を地域Bのサーバー30bへ転送し、10%を地域Cのサーバー30cへ転送する。これにより、IPエニーキャストにおいて適切な通信の割り当てを図ることができる。
【0036】
(通信割当比率算出方法)
図4を参照して第1実施形態に係る通信割当比率算出方法を説明する。
図4は、第1実施形態に係る通信割当比率算出方法の説明図である。
図4において、Fiは、n台のルーターのうちi番ルーターが自己の配下のユーザー端末から受信する単位時間当たりリクエスト数である。fjは、m台のサーバーのうちj番サーバーの現在受入れ可能最大セッション数である。Ci,jは、i番ルーターとj番サーバーとの間のネットワークコスト値である。ネットワークコスト値が小さいほど、i番ルーターとj番サーバーとの間のネットワーク的な距離が近い。ri,jは、i番ルーターが自己の配下のユーザー端末からのリクエストをj番サーバーに割り当てる比率(割当比率)である。
【0037】
本通信割当比率算出方法では、ネットワークコスト値Ci,jが小さいサーバーにできる限り多くのリクエストを割り当てるように、割当比率ri,jを求める。具体的には、次の(2a)式及び(2b)式の制約条件の下で、次の(1)式の目的関数の値を最小化するように、割当比率ri,jを求める。
【0038】
【0039】
【0040】
(2a)式の制約条件は、あるサーバーへ転送される通信(IPフロー)の数が当該サーバーの現在受入れ可能最大セッション数を超えないことである。
(2b)式の制約条件は、ユーザーからの全てのリクエストをいずれかのサーバーへ割り当てることである。
【0041】
上述した第1実施形態によれば、各サーバー30a,30b,30cの計算資源利用状況情報と、IPエニーキャストが適用される同一のIPアドレス宛のリクエストに関する各ルーター20a,20b,20cのリクエスト受信状況情報とに基づいて算出された各ルーター20a,20b,20cの通信割当比率に従って、各ルーター20a,20b,20cにおいて当該IPアドレス宛の通信が各サーバー30a,30b,30cへ転送されるので、IPエニーキャストにおいて適切な通信の割り当てを図ることができる。これにより、特定の地域のサーバーにリクエストが集中することを防ぎ、ユーザー全体として、当該リクエストに対する体感品質の向上を図る効果が得られる。
【0042】
また、エッジサーバーと各ルーターとの間のネットワークコスト値をさらに加味して通信割当比率が算出されることにより、ユーザーからネットワーク的にできる限り近いエッジサーバーが当該ユーザーにサービスを提供すると共に、特定の地域のエッジサーバーにリクエストが集中して当該エッジサーバーの計算資源が逼迫することを防止する効果が得られる。
【0043】
また、ユーザー側には特に機能や手順の追加や変更がないので、ユーザー側の端末やアプリケーションのバージョンアップなどを実施しなくても適用可能である。これは、通信事業者やコンテンツプロバイダーが本実施形態を円滑に適用することに寄与する。
【0044】
なお、
図1の例では、IPエニーキャストが適用されるIPアドレス「10.0.0.1/32」が付与された全サーバー30がエッジサーバーであるが、当該IPアドレス「10.0.0.1/32」が付与されるサーバーはエッジサーバーに限定されない。例えば、一部のサーバー30のみがエッジサーバーであってもよく、又は全サーバー30が非エッジサーバーであってもよい。
【0045】
また、一部のサーバー30のみがエッジサーバーである場合、少なくともエッジサーバーに対してはネットワークコスト値を加味したり、又はエッジサーバーに関するネットワークコスト値を非エッジサーバーに関するネットワークコスト値よりも大きな重み付けを行ったりすることが好ましい。これは、ユーザーからネットワーク的にできる限り近いエッジサーバーが当該ユーザーにサービスを提供することが好ましいからである。
【0046】
[第2実施形態]
図5は、第2実施形態に係る通信システムの構成例を示すブロック図である。
図5において
図1の各部に対応する部分には同一の符号を付け、その説明を省略する。第2実施形態に係る通信システム1aでは、ネットワークコントローラー10を備えず、各地域A,B,Cのルーター200(200a,200b,200c)が、それぞれに自己のルーティングテーブル情報に設定する通信割当比率を算出する。以下、ルーター200a,200b,200cを特に区別しないときは「ルーター200」と称する。
【0047】
図6は、第2実施形態に係るルーター200の構成例を示すブロック図である。
図6において、ルーター200は、通信割当比率算出部201と、制御部202と、ルーティングテーブル情報203とを備える。
【0048】
ルーター200の各機能は、ルーター200がCPU及びメモリ等のコンピュータハードウェアを備え、CPUがメモリに格納されたコンピュータプログラムを実行することにより実現される。なお、ルーター200として、汎用のコンピュータ装置を使用して構成してもよく、又は、専用のハードウェア装置として構成してもよい。
【0049】
通信割当比率算出部201は、各サーバー30a,30b,30cの計算資源利用状況情報と、自ルーター200のリクエスト受信状況情報とに基づいて、自ルーター200のルーティングテーブル情報203に設定する通信割当比率を算出する。
【0050】
通信割当比率算出部201は、各サーバー30a,30b,30cの計算資源利用状況情報と自ルーター200のリクエスト受信状況情報とに加えてさらに、各サーバー30a,30b,30cと自ルーター200との組み合わせ毎にサーバー30と自ルーター200との間のネットワークコスト値にも基づいて、自ルーター200のルーティングテーブル情報203に設定する通信割当比率を算出してもよい。
【0051】
制御部202は、通信割当比率算出部201が算出した結果の通信割当比率を、自ルーター200のルーティングテーブル情報203に設定する。これにより、ルーター200は、自己の通信割当比率に従って、各サーバー30a,30b,30cに対してIPアドレス「10.0.0.1/32」宛の通信をルーティングする。
【0052】
次に
図7を参照して第2実施形態に係るルーティング方法を説明する。
図7は、第2実施形態に係るルーティング方法の手順の例を示すフローチャートである。
【0053】
(ステップS11) サーバー30は、自己に割り当てられた計算資源量(例えば、CPUコア数、メモリー量、ストレージ量等)の現在の利用状況(例えば、利用率)に基づいて、現在受入れ可能最大セッション数を算出する。各サーバー30a,30b,30cは、自己の現在受入れ可能最大セッション数を、全てのルーター200a,200b,200cへ通知する。これにより、全てのルーター200a,200b,200cは、各サーバー30a,30b,30cの現在受入れ可能最大セッション数を取得する。なお、各サーバー30a,30b,30cの現在受入れ可能最大セッション数は、定期的に、最新の値に更新される。
【0054】
(ステップS12) ルーター200は、自己が単位時間当たりに受信するIPアドレス「10.0.0.1/32」宛のリクエスト数(IPフロー数)を測定する。これにより、ルーター200は、自ルーター200の単位時間当たりリクエスト数を取得する。なお、ルーター200の単位時間当たりリクエスト数は、定期的に、最新の値に更新される。
【0055】
(ステップS13) ルーター200は、自己と各地域A,B,Cのサーバー30a,30b,30cとの間のネットワークコスト値を取得する。
【0056】
(ステップS14) 通信割当比率算出部201は、自ルーター200の通信割当比率を算出する。通信割当比率算出部201は、例えば、各サーバー30a,30b,30cの現在受入れ可能最大セッション数と、自ルーター200の単位時間当たりリクエスト数と、各サーバー30a,30b,30cと自ルーター200との組み合わせ毎のネットワークコスト値とに基づいて、各サーバー30a,30b,30cに対してIPアドレス「10.0.0.1/32」宛の通信を割り当てる比率(通信割当比率)を算出する。
【0057】
(ステップS15) 制御部202は、ステップS14で算出された自ルーター200の通信割当比率を自ルーター200のルーティングテーブル情報203に設定する。
【0058】
ルーター200による自ルーター200の通信割当比率の算出及び自ルーター200のルーティングテーブル情報203への通信割当比率の設定は、定期的に実行される。
【0059】
図8は、第2実施形態に係るルーティングテーブル情報の例を示す図である。
図8の例は、地域Aのルーター200aのルーティングテーブル情報203であって、ルーター200aが算出した自己の通信割当比率が反映された結果である。
図8のルーティングテーブル情報203には、IPアドレス「10.0.0.1/32」宛の通信のルーティング先として、地域Aのサーバー30a(サーバー(A))と、地域Bのサーバー30b(サーバー(B))と、地域Cのサーバー30c(サーバー(C))とが登録されている。そして、ルーター200aの通信割当比率として、サーバー(A)に対して80%が設定され、サーバー(B)に対して10%が設定され、サーバー(C)に対して10%が設定されている。これにより、ルーター200aは、地域Aのユーザー端末40から受信するIPアドレス「10.0.0.1/32」宛の通信(IPフロー)のうち、80%を地域Aのサーバー30aへ転送し、10%を地域Bのサーバー30bへ転送し、10%を地域Cのサーバー30cへ転送する。これにより、IPエニーキャストにおいて適切な通信の割り当てを図ることができる。
【0060】
(通信割当比率算出方法)
図9を参照して第2実施形態に係る通信割当比率算出方法を説明する。
図9は、第2実施形態に係る通信割当比率算出方法の説明図である。
図9において、Fiは、i番ルーターが自己の配下のユーザー端末から受信する単位時間当たりリクエスト数である。fjは、m台のサーバーのうちj番サーバーの現在受入れ可能最大セッション数である。Ci,jは、i番ルーターとj番サーバーとの間のネットワークコスト値である。ネットワークコスト値が小さいほど、i番ルーターとj番サーバーとの間のネットワーク的な距離が近い。Fotheriは、i番ルーターの地域以外の他の地域のユーザー端末からi番ルーターに流入する単位時間当たりのリクエスト数である。例えば、地域Aのルーター200aにおいては、Fotheriは、地域A以外の他の地域B,Cのユーザー端末からルーター200aに流入する単位時間当たりのリクエスト数である。ri,jは、i番ルーターが自己の配下のユーザー端末からのリクエストをj番サーバーに割り当てる比率(割当比率)である。
【0061】
本通信割当比率算出方法では、ネットワークコスト値Ci,jが小さいサーバーにできる限り多くのリクエストを割り当てるように、割当比率ri,jを求める。また、i番ルーターに対応して設けられるi番サーバー(エッジサーバー)に対して、当該i番サーバーの地域以外の他の地域のユーザー端末から流入するリクエストも考慮して、割当比率ri,jを求める。具体的には、次の(4)式の制約条件の下で、次の(3)式の目的関数の値を最小化するように、割当比率ri,jを求める。
【0062】
【0063】
【0064】
(4)式の制約条件の一つ目は、i番ルーターに対応して設けられるi番サーバー以外の他のサーバーへ転送される通信(IPフロー)の数「ri,jFi」が当該サーバーの現在受入れ可能最大セッション数「fj」を超えないことである。
(4)式の制約条件の二つ目は、i番ルーターに対応して設けられるi番サーバーへ転送される通信(IPフロー)の数「ri,iFi」とi番サーバーの地域以外の他の地域のユーザー端末から流入するリクエスト数「Fotheri」との合計がi番サーバーの現在受入れ可能最大セッション数「fi」を超えないことである。
(4)式の制約条件の三つ目は、ユーザーからの全てのリクエストをいずれかのサーバーへ割り当てることである。
【0065】
上述した第2実施形態によれば、各サーバー30a,30b,30cの計算資源利用状況情報と、IPエニーキャストが適用される同一のIPアドレス宛のリクエストに関するルーター200のリクエスト受信状況情報とに基づいて算出された当該ルーター200の通信割当比率に従って、当該ルーター200において当該IPアドレス宛の通信が各サーバー30a,30b,30cへ転送されるので、IPエニーキャストにおいて適切な通信の割り当てを図ることができる。これにより、特定の地域のサーバーにリクエストが集中することを防ぎ、ユーザー全体として、当該リクエストに対する体感品質の向上を図る効果が得られる。
【0066】
また、エッジサーバーとルーターとの間のネットワークコスト値をさらに加味して当該ルーターの通信割当比率が算出されることにより、ユーザーからネットワーク的にできる限り近いエッジサーバーが当該ユーザーにサービスを提供すると共に、特定の地域のエッジサーバーにリクエストが集中して当該エッジサーバーの計算資源が逼迫することを防止する効果が得られる。
【0067】
また、ユーザー側には特に機能や手順の追加や変更がないので、ユーザー側の端末やアプリケーションのバージョンアップなどを実施しなくても適用可能である。これは、通信事業者やコンテンツプロバイダーが本実施形態を円滑に適用することに寄与する。
【0068】
なお、
図5の例では、IPエニーキャストが適用されるIPアドレス「10.0.0.1/32」が付与された全サーバー30がエッジサーバーであるが、当該IPアドレス「10.0.0.1/32」が付与されるサーバーはエッジサーバーに限定されない。例えば、一部のサーバー30のみがエッジサーバーであってもよく、又は全サーバー30が非エッジサーバーであってもよい。
【0069】
また、一部のサーバー30のみがエッジサーバーである場合、少なくともエッジサーバーに対してはネットワークコスト値を加味したり、又はエッジサーバーに関するネットワークコスト値を非エッジサーバーに関するネットワークコスト値よりも大きな重み付けを行ったりすることが好ましい。これは、ユーザーからネットワーク的にできる限り近いエッジサーバーが当該ユーザーにサービスを提供することが好ましいからである。
【0070】
上述したように第1実施形態及び第2実施形態によれば、IPエニーキャストにおいて適切な通信の割り当てを図ることができるという効果が得られる。
【0071】
なお、これにより、例えばIPエニーキャストが適用される通信システムにおける総合的なサービス品質の向上を実現することができることから、国連が主導する持続可能な開発目標(SDGs)の目標9「レジリエントなインフラを整備し、持続可能な産業化を推進するとともに、イノベーションの拡大を図る」に貢献することが可能となる。
【0072】
以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【0073】
また、上述した各装置の機能を実現するためのコンピュータプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行するようにしてもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、DVD(Digital Versatile Disc)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【0074】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよい。
【符号の説明】
【0075】
1,1a…通信システム、10…ネットワークコントローラー、11…通信割当比率算出部、12…制御部、20a,20b,20c,200,200a,200b,200c…ルーター、30a,30b,30c…サーバー、NW…コアネットワーク