特許第6404752号(P6404752)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ NECプラットフォームズ株式会社の特許一覧

特許6404752ルータ、通信機、通信システム、通信方法、およびプログラム
<>
  • 特許6404752-ルータ、通信機、通信システム、通信方法、およびプログラム 図000002
  • 特許6404752-ルータ、通信機、通信システム、通信方法、およびプログラム 図000003
  • 特許6404752-ルータ、通信機、通信システム、通信方法、およびプログラム 図000004
  • 特許6404752-ルータ、通信機、通信システム、通信方法、およびプログラム 図000005
  • 特許6404752-ルータ、通信機、通信システム、通信方法、およびプログラム 図000006
  • 特許6404752-ルータ、通信機、通信システム、通信方法、およびプログラム 図000007
  • 特許6404752-ルータ、通信機、通信システム、通信方法、およびプログラム 図000008
  • 特許6404752-ルータ、通信機、通信システム、通信方法、およびプログラム 図000009
  • 特許6404752-ルータ、通信機、通信システム、通信方法、およびプログラム 図000010
  • 特許6404752-ルータ、通信機、通信システム、通信方法、およびプログラム 図000011
  • 特許6404752-ルータ、通信機、通信システム、通信方法、およびプログラム 図000012
  • 特許6404752-ルータ、通信機、通信システム、通信方法、およびプログラム 図000013
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6404752
(24)【登録日】2018年9月21日
(45)【発行日】2018年10月17日
(54)【発明の名称】ルータ、通信機、通信システム、通信方法、およびプログラム
(51)【国際特許分類】
   H04L 12/803 20130101AFI20181004BHJP
   H04L 12/70 20130101ALI20181004BHJP
   G06F 13/00 20060101ALI20181004BHJP
【FI】
   H04L12/803
   H04L12/70 100Z
   G06F13/00 357Z
【請求項の数】7
【全頁数】20
(21)【出願番号】特願2015-55669(P2015-55669)
(22)【出願日】2015年3月19日
(65)【公開番号】特開2016-178398(P2016-178398A)
(43)【公開日】2016年10月6日
【審査請求日】2016年7月15日
【前置審査】
(73)【特許権者】
【識別番号】000227205
【氏名又は名称】NECプラットフォームズ株式会社
(74)【代理人】
【識別番号】100109313
【弁理士】
【氏名又は名称】机 昌彦
(74)【代理人】
【識別番号】100124154
【弁理士】
【氏名又は名称】下坂 直樹
(72)【発明者】
【氏名】花島 洋平
【審査官】 大石 博見
(56)【参考文献】
【文献】 特開2014−017717(JP,A)
【文献】 特開2003−218917(JP,A)
【文献】 特開2015−082715(JP,A)
【文献】 特開2012−089923(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/803
G06F 13/00
H04L 12/70
(57)【特許請求の範囲】
【請求項1】
ネットワークに接続してBorder Gateway Protocol(BGP)に基づいてルータ機能を実行し、前記ネットワークに接続される通信機から前記通信機の処理量に連動して変化する通信トラフィック量、消費電力量、または発熱量のいずれかであるパラメータが所定の値を超過したか否かの情報をルーティング機能の独自属性として含む信号を受信するルータ部と、
前記信号に基づいて、前記所定の値を超過した通信機があると判断し、前記所定の値を超過していない通信機に前記所定の値を超過した通信機のサーバと同一アドレスの別のサーバが存在すると判断すると、前記所定の値を超過した通信機に属するサーバについて前記ルータ部のルーティングテーブルのパス属性の優先度を下げ、前記BGPにより前記ネットワークに接続される他の全てのルータに対して前記パス属性を送信することで前記別のサーバに接続する制御部とを備えることを特徴とするルータ。
【請求項2】
複数のクライアントが1つのサーバに接続していて、前記複数のクライアントの一部を前記別のサーバに接続することを特徴とする請求項1に記載のルータ。
【請求項3】
請求項1または請求項2に記載のルータと、
前記所定の値を超過したか否かの情報を含む信号を前記ルータに通知するパラメータ監視部とを備えることを特徴とする通信機。
【請求項4】
ルータ装置と
前記ルータ装置に接続されるクライアントと、
請求項3に記載の通信機とを備えることを特徴とする通信システム。
【請求項5】
前記ルータ装置は請求項1または請求項2に記載のルータを含むことを特徴とする請求項4に記載の通信システム。
【請求項6】
ネットワークに接続してBorder Gateway Protocol(BGP)に基づいてルータ機能を実行し、前記ネットワークに接続される通信機の処理量に連動して変化する通信トラフィック量、消費電力量、または発熱量のいずれかのパラメータが所定の値を超過した通信機があると判断し、前記所定の値を超過していない通信機に前記所定の値を超過した通信機のサーバと同一アドレスの別のサーバが存在すると判断すると、前記所定の値を超過した通信機に属するサーバについてルーティングテーブルのパス属性の優先度を下げ、前記BGPにより前記ネットワークに接続される他の全てのルータに対して前記パス属性を送信することで前記別のサーバに接続することを特徴とするルータの通信方法。
【請求項7】
Border Gateway Protocol(BGP)に基づいてルータ機能を実行し、ネットワークに接続される通信機の処理量に連動して変化する通信トラフィック量、消費電力量、または発熱量のいずれかのパラメータが所定の値を超過した通信機があると判断し、前記所定の値を超過していない通信機に前記所定の値を超過した通信機のサーバと同一アドレスの別のサーバが存在すると判断すると、前記所定の値を超過した通信機に属するサーバについてルーティングテーブルのパス属性の優先度を下げ、前記BGPにより前記ネットワークに接続される他の全てのルータに対して前記パス属性を送信することで前記別のサーバに接続することをコンピュータに実行させるルータのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ルータ、通信機、通信システム、通信方法、およびプログラムに関するものである。
【背景技術】
【0002】
通信ネットワークにおいて、特定のデータセンタにアクセスが集中すると、そのデータセンタの消費電力は大きくなる。各データセンタの電力設計は当初は余裕をもっているが、機器の交換、増設などで装置をフル稼働させたり、電力供給元の都合による電力供給源等で電力不足に陥ってしまう場合がある。このような事態を避けるためには、消費電力の大きいデータセンタのサーバの負荷を、他のデータセンタのサーバへ負荷を分散することが有効である。
【0003】
一般的な負荷分散の方法として、特許文献1に示されるロードバランサを用いたり、特許文献2の0013欄に紹介されるラウンドロビンDNS(Domain Name Server)による方法がある。
【0004】
まず、ロードバランサを用いた負荷分散の場合を図11を用いて説明する。ロードバランサA631とロードバランサB632がネットワーク610に接続されている。通常ロードバランサはデータセンタ内のサーバの負荷分散に用いられるため、データセンタ内にロードバランサが設置される。ここでは、ロードバランサA631にデータセンタ1(611)が接続され、ロードバランサB632にデータセンタ2(621)が接続されている。
【0005】
そして、データセンタ1(611)にはサーバA1(612)とサーバB1(613)が設置され、データセンタ2(621)にはサーバA2(622)とサーバB2(623)が設置されている。サーバA1(612)とサーバA2(622)は同機能で、互いにバックアップ関係にある。同様に、サーバB1(613)とサーバB2(623)は同機能で、互いにバックアップ関係にある。
【0006】
ここでロードバランサA631およびロードバランサB632をデータセンタ間の負荷分散に使用し、例えばクライアントA(641)からサーバAへの接続を行った場合、次の経路の何れかが選択される。
【0007】
第1の経路は、クライアントA(641)−ルータC(633)−ロードバランサA(631)−サーバA1(612)である。第2の経路は、クライアントA(641)−ルータC(633)−ロードバランサB(632)−ロードバランサA(631)−サーバA1(612)である。
【0008】
第3の経路は、クライアントA(641)−ルータC(633)−ロードバランサA(631)−ロードバランサB(632)−サーバA2(622)である。第4の経路は、クライアントA(641)−ルータC(633)−ロードバランサB(632)−サーバA2(622)である。どの経路が選択されるかは、各サーバの負荷状況に基づいたロードバランサの判断により変化する。
【0009】
また、ラウンドロビンDNSは、クライアントが特定のDNSを接続先に指定する毎に事前に設定されたサーバに順番に接続することにより、サーバの負荷分散を図る方法である。
【先行技術文献】
【特許文献】
【0010】
【特許文献1】特許第4612961号公報
【特許文献2】特開2004−260332号公報
【発明の概要】
【発明が解決しようとする課題】
【0011】
しかし、上記のロードバランサを用いた負荷分散の例で示した4つの経路の内の2つは、2つのロードバランサ間の中継を必要とするので、クライアントと接続先のサーバとは最短の経路とはならない。何れのルートを選択するかは、各データセンタの負荷状況により変化するので、常に最短の経路が選択されるとは限らない。
【0012】
また、データセンタ内にロードバランサを設置せず、ネットワーク上の任意の地点にロードバランサC(635)を設置しても、必ずロードバランサを経由するためクライアントと接続先サーバとは最短経路をとることはできない。
【0013】
ここで、ディザスタリカバリ(disaster recovery)の観点から、データセンタ同士は地理的に遠く離れた場所に設置されることが多い。このため、ロードバランサ間の経路は長距離に及ぶことがある。その結果、ネットワーク中継ポイントの増加によるネットワークトラフィックの増大や、通信経路の長大化に伴う通信経路上における通信障害の発生可能性の増大を招く。
【0014】
一方、ラウンドロビンDNSでは、クライアントとサーバの接続経路は、ロードバランサを用いる場合のロードバランサ間の経路のように、遠回りの通信経路をとることは無い。しかし、クライアントが特定のDNSを接続先に指定する毎に事前に設定されたサーバに順番に接続するので、負荷の大小を判断して接続先サーバを選択することは出来ない。
【0015】
本発明のルータは、データセンタの負荷を分散させるように接続先サーバを選択して、クライアントとサーバを最短経路で接続することを目的とする。
【課題を解決するための手段】
【0016】
上記の目的を達成するために、本発明のルータは、ネットワークに接続してルータ機能を実行し、ネットワークに接続される通信機から前記通信機の処理量に連動して変化するパラメータが所定の値を超過したか否かの情報を含む信号を受信するルータ部と、前記信号に基づいて、前記所定の値を超過した通信機があると判断し、前記所定の値を超過していない通信機に前記所定の値を超過した通信機のサーバと同一アドレスの別のサーバが存在すると判断すると、前記別のサーバに接続する様に前記ルータ部を操作する制御部とを備える。
【発明の効果】
【0017】
本発明によれば、ルータは、データセンタの負荷を分散させるように接続先サーバを選択して、クライアントとサーバを最短経路で接続することが可能となる。
【図面の簡単な説明】
【0018】
図1】第1の実施形態の構成例を示す図である。
図2】第1の実施形態の動作を説明する図である。
図3】第1の実施形態の動作を説明する図である。
図4】第1の実施形態の動作を説明する図である。
図5】第1の実施形態の動作を説明する図である。
図6】第1の実施形態の動作を説明する図である。
図7】第1の実施形態の動作を説明する図である。
図8】第2の実施形態の構成例を示す図である。
図9】第2の実施形態の構成例を示す図である。
図10】第3の実施形態の構成例を示す図である。
図11】関連技術の構成例を示す図である。
図12】変形例を説明する図である。
【発明を実施するための形態】
【0019】
[第1の実施形態]
次に、本発明の実施の形態について図面を参照して詳細に説明する。
[構成の説明]
図1に第1の実施形態の構成を示す。
【0020】
本実施形態の通信機100はデータセンタ101とルータ201から構成される。
【0021】
データセンタ101は、サーバA102、サーバB103、電力分電盤104、電力監視部105、通信部106から構成される。
【0022】
サーバA102、サーバB103は、サーバーソフトウェアを稼動させているコンピュータ機器である。サーバA102およびサーバB103は後述のルータ201のルータ部203と接続されている。本実施形態では、サーバは2台としたが1台であっても3台以上であっても良い。
【0023】
次に、電力分電盤104はデータセンタ101の各機器に電力を供給し、データセンタ全体の消費電力を計測して値を出力する電気回路である。そして、電力監視部105は、電力分電盤104の消費電力を常時監視する電子回路である。この電力監視部105は、データセンタ101の消費電力が予め電力監視部105に設定された消費電力閾値を超過した(アラーム)か否かを示す信号を、通信部106に通知する。
【0024】
そして、通信部106は、電力監視部105から通知された信号をルータ201の通信部204に常時または一定時間間隔で送信する通信回路であり、後述のルータ201の通信部204と接続されている。
【0025】
次に、ルータ201はネットワークモニタ202とルータ部203から構成される。
【0026】
ネットワークモニタ202は、通信部204と記憶部205およびルータ制御部206から構成される。
【0027】
通信部204は、データセンタ101の通信部106から送られる信号を受信し、ルータ制御部206に出力する通信回路である。そして、記憶部205はメモリであり、後述のサーバ電力情報と名付ける情報を記憶する。
【0028】
ルータ制御部206は、ルータ201を制御するCPU(Central Processing Unit;中央処理装置)である。また、ルータ部203はネットワーク110に接続され、ネットワークのルータ機能を実現するネットワーク通信機器である。本実施形態におけるネットワークプロトコルはインターネットプロトコル(Internet Protocol;IP)としているが、他のネットワークプロトコルであっても良い。
[動作の説明]
次に、本実施形態の動作について、図面を参照して詳細に説明する。
【0029】
はじめに、通信機100のサーバ電力情報(後述)を伝達する動作を図を参照して説明する。まず、データセンタ1の動作を図1を参照して説明する。
【0030】
図1に示す電力分電盤104は常にデータセンタ全体の消費電力を示しており、電力監視部105は、電力分電盤104の消費電力を常時監視している。この電力監視部105は、アラームの有無を示す信号を通信部106に通知する。
【0031】
そして、通信部106は、電力監視部105から通知された信号をルータ201の通信部204に常時または一定時間間隔で送信している。
【0032】
次に、ルータ201の動作を説明する。ルータ201は、図2に示す動作と図3に示す動作を並行して行っている。
【0033】
まず、図2におけるステップS101で、ルータ201の通信部204は、データセンタ101の通信部105から送られる信号を受信し、ルータ制御部206へ伝送する(S101)。次に、ルータ制御部206はステップS101で受信した信号がアラーム有りかアラーム無しかを判断する(S102)。ステップS102でアラーム無しの信号であると判断されると(S102でN)、ステップS101に戻る。ステップS102でアラーム有りと判断されると(S102でY)、ルータ制御部206はサーバ電力情報と名づける情報を生成し、記憶部205に記憶する(S103)。
【0034】
このサーバ電力情報は、サーバ102およびサーバ103のIPアドレス、ルータ201のIPアドレス、ステップS101で受信した信号から得るアラームの有無を関連づけたものである。そして、サーバ電力情報のうち、サーバ102並びにサーバ103のIPアドレス、およびルータ201のIPアドレスは、管理者により予め記憶部205に記憶されている。ここで、記憶部205に記憶されるサーバ電力情報の例を図7に示す。尚、図7におけるゲートウェイルータアドレスは、サーバが接続されるルータのIPアドレスである。
【0035】
ステップS103でルータ制御部206がサーバ電力情報を生成すると、ルータ制御部206はステップS103で生成したサーバ電力情報を、ルータ部203の通信機能を使用してネットワーク110の各ルータに送信する(S104)。ステップS104に続いてステップS101に戻る。
【0036】
次に、ルータ201が、図2に示す動作と並行して行う動作を、図3を参照して説明する。
【0037】
図3においてステップS105では、通信機100はルータ部203の通信機能により他のルータのサーバ電力情報を受信し、ルータ制御部206に転送する(S105)。続いて、ルータ制御部206は、ステップS105で受取った他のルータのサーバ電力情報を記憶部205に記憶する(S106)。そして、ステップS105に戻る。
【0038】
以上が、通信機100がサーバ電力情報を伝達する動作の説明である。
【0039】
次に、ネットワークにおけるサーバ電力情報の伝達の動作について、図4に示すネットワークの例を用いて説明する。
【0040】
図4では、データセンタ1(111)とルータA131から構成される通信機1(401)と、データセンタ2(121)とルータB132から構成される通信機2(402)の、通信機2台がネットワーク110に接続されている。
【0041】
また、ネットワーク110にはルータC133とルータD134が接続され、ルータC133にはクライアントA141とクライアントB142が接続され、ルータD134にはクライアントC143とクライアントD144が接続されている。
【0042】
通信機、ルータ、クライアントの台数は、ハードウェアおよびソフトウェアの制限の範囲内で、任意の台数を接続することが出来る。
【0043】
通信機1(401)、通信機2(402)ともに、上記で図2および図3を用いて説明した動作を行っている。
【0044】
通信機1(401)は、サーバA1(112)とサーバB1(113)のサーバ電力情報をネットワーク上の他のルータに対して送信する。ネットワーク110に接続されるルータの内、送信元以外のルータでネットワークモニタを有するルータ(図3では通信機2(402)のルータB132)は、通信機1(401)から送信されたサーバ電力情報を受信する。そして前述のように、サーバ電力情報を受信した通信機2(402)のネットワークモニタの記憶部に、通信機2(402)のサーバ電力情報と共に通信機1(401)から受信したサーバ電力情報が記憶される。
【0045】
同様に、通信機1(401)の記憶部には、通信機2(402)から受信したサーバ電力情報が、通信機1(401)のサーバ電力情報と共に記憶される。
【0046】
このようにして、ネットワーク上の通信機は、ネットワークに接続される全部のサーバに対するサーバ電力情報を、各通信機の記憶部に共有する。
【0047】
尚、ルータC133とルータD134にはサーバ電力情報を受信するネットワークモニタを備えていないため、サーバ電力情報を受信したり記憶する機能は無い。
【0048】
以上が、電力情報伝達の動作の説明である。
【0049】
次に、ネットワークのルーティングについて説明する。
【0050】
図4において、ネットワーク内の全てのルータは、BGP(Border Gateway Protocol)に従った動作をする。尚、ルータが後述のメトリック(Metric)の設定を変更出来れば、他のダイナミックルーティングプロトコルも使用可能である。
【0051】
データセンタ1(111)のサーバA1(112)とデータセンタ2(121)のサーバA2(122)は同一機能のサーバであり、管理者によって同一のIPアドレスが付与され、ここではIPアドレスを10.1.1.1であるとする。同様に、サーバB1(113)とサーバB2(123)は同一機能のサーバであり、管理者によって同一のIPアドレスが付与され、ここではIPアドレスを10.1.2.1であるとする。
【0052】
同一IPアドレスが付与されたサーバがネットワーク110に複数存在することになるが、ルーティングにより通信相手は一意に決まる。そして、使用されていないサーバは待機状態となる。
【0053】
尚、同一のIPアドレスが与えられたサーバ同士は、同期が必要な作業を行うサーバであればトンネル接続で同期するなど、一般的な同期方法によって同期をとる。
【0054】
また、データセンタ1(111)に接続されているルータA131のIPアドレスは、192.168.100.1であり、データセンタ2(121)に接続されているルータB132のIPアドレスは192.168.200.1であるとする。
【0055】
そして、BGPを実行するために、ルータA131およびルータB132が他のルータに対して通知するBGPエントリの例を、それぞれ図5の表301、および表302に示す。表301および表302において、Networkの項目は図1に示すルータ201に接続しているサーバ102およびサーバ103のIPアドレス、Next-hopはルータ部203のIPアドレスを示す。また、Metricは優先的に使用される接続経路の選択に使われる値で、Metricの値が低い方が優先的に使用される。これらのBGPエントリの初期状態は、予め管理者がルータ201の設定ソフトウェア等を利用して、ルータ部203に設定されている。
【0056】
図5の表301および表302を参照すると、サーバA131のIPアドレスである10.1.1.1と接続する通信経路はNext-hopのIPアドレスが192.168.100.1であるルータA131を経由する経路の他にもう一つの経路が示されている。もう一つの経路は、IPアドレスが192.168.200.1であるルータB132を経由する経路である。
【0057】
また、表301、表302からルータA131を経由する経路のMetricが100で、ルータB132を経由する経路のMetricは200である。ここで、各ルータがルーティングテーブルを作成する際、途中経路の長短などによるMetric変動程度では接続先サーバが変動しない様に、サーバ毎のBGPエントリのMetricは充分大きな差をつけて設定する。
【0058】
この様にBGPエントリを設定すると、サーバA(IPアドレス10.1.1.1)への接続経路としては、Metricの小さい方が選択されるので、ルータA131に接続されているサーバA1(112)に接続される。
【0059】
図5の表301および表302のBGPエントリは、ネットワークの各ルータに通知され、各ルータは通知されたBGPエントリに基づいてルーティングテーブルを作成する。
【0060】
ここで例えば、クライアントA141とクライアントB142がサーバAに接続し、クライアントC143がサーバBに接続する際は、Metricが小さい方の通信経路が選択される結果、図5の表303のように接続先が選択される。
【0061】
図5の表301、表302のBGPエントリは、各データセンタは過負荷になって消費電力が超過する様なことがない平常時の、初期状態におけるBGPエントリの例である。
【0062】
次に、データセンタの消費電力が閾値を超過した以降、他のデータセンタと負荷分散をしてデータセンタの消費電力の平準化を行う動作を図6を用いて説明する。
【0063】
まず、図1に示すデータセンタ101の電力監視部105は電力分電盤104の消費電力が予め設定された消費電力の閾値以上か否かを判断する(S201)。ステップS201で閾値以上であると判断されると(S201でY)ステップS202にすすみ、ステップS201で閾値以上でないと判断されると(S201でN)、ステップS201に戻る。
【0064】
ステップS202では、電力監視部105はデータセンタ101の消費電力が閾値以上になったことを、通信部106に信号として通知し、通信部106はルータ201の通信部204に信号を送信する。この信号を受信した通信部204は閾値を超過したことをアラーム有りとしてルータ制御部206に通知する。(S202)。
【0065】
ステップS202でルータ制御部206がアラーム有りを受信すると、ルータ制御部206は記憶部205のサーバ電力情報を参照して、バックアップ可能なデータセンタ(バックアップセンタ)の有無を判断する(S203)。
【0066】
ステップS203で、ルータ制御部206がバックアップセンタの有無を判断する方法は次の通りである。即ち、ルータ制御部206は記憶部205のサーバ電力情報を参照し、サーバ電力情報の全部がアラーム有りであればルータ制御部206は、バックアップセンタが無いと判断する。また、1つでもアラーム無しのサーバ電力情報があれば、バックアップセンタが有ると判断する。
【0067】
ステップS203でバックアップセンタは無いと判断されると(S203でN)、ステップS201に戻る。ここで、ステップ203でバックアップセンタが無い状態は、全てのデータセンタがアラーム有りになっている。すると、データセンタは特定の経路の接続を切断するなど、データセンタが保有する一般的な機能に従って消費電力を低減する。そして、データセンタの消費電力が低下し、いずれかのサーバ電力情報がアラーム無しの状態になるまで、ステップS201からステップS203のループで待機する。
【0068】
ステップS203でバックアップセンタが有ると判断されると(S203でY)、ルータ制御部206は記憶部205の情報を参照し、各データセンタの消費電力が平準化する様に通信経路を変更する。変更の方法は、変更後の通信経路で接続される様に、ルータ制御部206がBGPエントリの属性(アトリビュート)の値を書き換えることで行う。(S204)
ここで、通信経路の変更ルールについて説明する。図7に示す記憶部205の電力サーバ情報の例では通信機1(401)のデータセンタ1(111)にあるサーバA1とサーバB1についての電力情報がアラーム有りになっている。そして、サーバA1の代替としてアラーム無しのサーバA2があり、サーバB1の代替としてアラーム無しのサーバB2がある。
【0069】
そこで、サーバA1かサーバB1のどちらかを代替サーバに変更することで、データセンタの消費電力の平準化を行う。ここでは、サーバのIPアドレスが大きい値であるサーバを代替経路に変更するルールであるとする。
【0070】
ここで、複数の代替サーバが存在する場合に、上記ではサーバのIPアドレスの大きい方を代替経路に変更するルールとしたが、サーバのIPアドレスの小さい方を代替サーバに変更しても良い。このように、どのサーバを代替サーバにするかを選択するルールは多様に考えられる。
【0071】
上述のルールに従ってルータ制御部206は、サーバのIPアドレスがサーバA1より大きい値であるサーバB1を代替サーバのサーバB2に変更するために、ルータ制御部206はBGPエントリの属性を書き換える(S204)。
【0072】
次に、ステップS204でルータ制御部206がBGPエントリを書き換える方法について、説明する。図5の表301はサーバ変更前のBGPエントリである。
【0073】
変更後のサーバB2がサーバBとしての接続先として選択されるためには、BGPエントリにおける変更後の属性(アトリビュート)の内のMetricが他の経路のMetricより相対的に小さくなる様に書き換える。ここで、各ルータがルーティングテーブルを作成する際、途中経路の長短などによるMetric変動程度では接続先サーバが変動しない様に、サーバ毎のBGPエントリのMetricは充分大きな差をつけて設定する。
【0074】
そこで、サーバB2に対応するBGPエントリである表302のNetworkの10.1.2.1に対応するMetricである200が相対的に充分小さくなる様に、サーバB1に対応する表301のNetworkの10.1.2.1に対応するmetricを200より充分大きく設定する。そこで、ルータA131のルータ制御部206は表301のNetworkの10.1.2.1に対応するmetricを100から250に書き換えて、新しく表304のBGPエントリを作成する。ここで、ルータ制御部206がMetricを書き換えた後の値を250としたが、200より充分大きい他の値でも良い。
【0075】
このようにして、ステップ204でルータA131が新たに他のルータに通知するBGPエントリとして表304が生成される(S204)。ステップS204に続いて、ルータA131は表304のBGPエントリをネットワーク110の各ルータに通知する(S205)。そして、各ルータのルーティングテーブルは表301の情報から表304の情報に基づいて更新されるので、サーバB(IPアドレス:1.10.2.1)の接続経路はルータB132を経由する経路となる。そして、サーバB2(121)がサーバBとして使用される(S206)。
【0076】
ステップS206でルータBの接続先が変更される前は、サーバAとサーバBの処理をデータセンタ1(111)で行っていた。しかし、ステップS206でサーバAの処理はデータセンタ1(111)、サーバBの処理はデータセンタ2(121)に分散された。その結果、データセンタ1(111)の負荷が低減してデータセンタ1(111)の消費電力が低下する(S207)。
【0077】
ステップS207の後、ステップS201に戻る。
【0078】
ここで例えば、クライアントA141とクライアントB142がサーバAに接続し、クライアントC143がサーバBに接続する際は、Metricが小さい方の通信経路が選択される結果、図5の表305のように接続先が選択される。図5の表303と表305を比較して分かる様に、クライアントC143の接続先がデータセンタ1(111)のサーバB1からデータセンタ2(121)のサーバB2に変更になっている。つまり、データセンタ1(111)の負荷の一部がデータセンタ2(121)に振り替えられて、データセンタ間で負荷の分散が行われた。
【0079】
そして、負荷の分散前も負荷の分散後も、クライアントとサーバの通信経路はロードバランサを用いた負荷分散で生じるロードバランサ間の経路のような、遠回りの経路を取ることなく、最短経路で接続されている。
【0080】
以上のようにすることで、本実施形態に示す通信機100は、データセンタの負荷を分散させるように接続先サーバを選択して、クライアントとサーバを最短経路で接続することが可能となる。
[第2の実施形態]
[構成の説明]
第2の実施形態は通信システムである。
【0081】
第1の実施形態に示した通信機の動作説明に用いた図4に示す通信システムでは、通信機に含まれるルータであるルータA131およびルータB132にネットワークモニタを備えていた。しかし、図4に示す通信システムでは、クライアント側ルータであるルータC133およびルータD134にはネットワークモニタを備えていない。
【0082】
ここで、クライアント側ルータにもネットワークモニタ202を備えていれば、クライアント側ルータにおいてもサーバ電力情報が共有される。そこで、図8に示す様に第2の実施形態に示す通信システムのクライアント側ルータは、クライアント側ルータ(ルータE135、ルータF136)にネットワークモニタを有する。
【0083】
このクライアント側ルータの構成を図9に示す。クライアント側ルータ451は、ネットワークモニタ452とルータ部203から構成される。そして、ネットワークモニタ452は、図1に示す通信機100のネットワークモニタ202と比較すると、通信部204が削除されていることと、ルータ部203の接続先がサーバではなくクライアントである点が異なる。
【0084】
尚、通信機、ルータ、クライアントの台数は、ハードウェアおよびソフトウェアの制限の範囲内で、任意の台数を接続することが出来る。
[動作の説明]
次に第2の実施形態の通信システムの動作について、図8を参照して説明する。
【0085】
まず、通信機1(401)、通信機2(402)のサーバ電力情報を伝達する動作については第1の実施形態で説明した通信機のサーバ電力情報を伝達する動作と同じである。
【0086】
そして、第1の実施形態の図4に示す通信システムでは、クライアント側ルータ(図4のルータC133とルータD134)にはサーバ電力情報を受信するネットワークモニタを備えていないため、サーバ電力情報を受信したり記憶する機能は無い。
【0087】
しかし、図8に示す第2の実施形態の通信システムでは、クライアント側ルータ(ルータE135とルータF136)にサーバ電力情報を受信するネットワークモニタを備える。そのため、ルータE135およびルータF136には、それぞれの記憶部にネットワーク上の全部のサーバ電力情報を受信して記憶する機能がある。
【0088】
サーバ電力情報がネットワーク上のネットワークモニタを備えるルータに通知される方法については、第1の実施形態で説明した通りである。
【0089】
以上が本実施形態に示す通信システムにおける、サーバ電力情報を伝達する動作である。
【0090】
次に、本実施形態に示す通信システムにおける、ネットワークのルーティングについて説明する。
【0091】
通信機1(401)のデータセンタ1(111)が初期状態である時、ルータA131がネットワーク110に存在する他のルータに対して通知するBGPエントリの例を図5の表301に示す。また、通信機2(402)のデータセンタ2(121)が初期状態である時、ルータB132が、ネットワーク110に存在する他のルータに対して通知するBGPエントリの例を、図5の表302に示す。
【0092】
BGPエントリの詳細、およびBGPエントリが各ルータに通知される方法については、第1の実施形態で説明した通りである。
【0093】
次に、通信機1(401)のデータセンタ1(111)の消費電力が閾値以上となると、ルータA131は図5の表304に示すBGPエントリを、ネットワーク110上に存在する他のルータに対して通知する。BGPエントリを表302から表304に変更する動作については、第1の実施形態で説明した通りである。
【0094】
そして、ネットワーク110に接続される全部のルータは、表304のBGPエントリを基にそれぞれのルーティングテーブルを更新する。
【0095】
ここで、第1の実施形態に示した通信システムにおいて、クライアントA141とクライアントB142がどちらもサーバAに接続する場合を考える。
【0096】
第1の実施形態では、表304のBGPエントリに基づいてつくられたルータC133のルーティングテーブルに従って、クライアントA141とクライアントB142は、どちらもサーバA1(112)に接続する。
【0097】
サーバの負荷分散の観点では、クライアントA141はサーバA1(112)へ接続し、クライアントB142はサーバA2(122)へ接続することが望ましい。しかし、第1の実施形態のルータC133はネットワークモニタを備えないのでサーバ電力情報を保有せず、ルータC133はサーバ電力情報に基づいたルーティングは出来ない。
【0098】
尚、ここでは同一の論理サーバであって異なる物理サーバは、常に同期している必要は無い処理であるとする。
【0099】
次に、第2の実施形態の通信システムにおいて、クライアントA141とクライアントB142がどちらもサーバAに接続する場合を説明する。
【0100】
図8においてクライアントA141とクライアントB142が接続されているルータE135の記憶部には、前述のようにネットワーク110の全てのサーバについて、サーバ電力情報が記憶されている。ルータE135のルータ部には、BGPエントリを基に作成したルーティングテーブルがある。しかし、ルータE135は管理者が予めルーティング方法を設定したルーティングルールに基づく、ポリシーベースルーティングを行う。即ち、ルータE135に複数のクライアントから同一のサーバへのアクセス要求がある場合、片方のクライアントを本来のルーティングテーブルの接続先とは別の接続先にトンネル接続するルーティングルールが予め決められている。トンネル接続するクライアントは、ここではIPアドレスが大きい方とするが、選択方法は予め任意に決めておくことが出来る。
【0101】
以上の結果、クライアントA141はサーバA1に接続し(図8の黒矢印)、クライアントB142はサーバA2に接続する(図8の白抜き矢印)。この結果、データセンタ1(111)の負荷が低減して、データセンタ2(121)に負荷が分散する。
【0102】
以上のように、第2の実施形態の通信システムは、クライアント側のルータにネットワークモニタを備えることで、クライアントが接続するサーバの選択を、第1の実施形態の通信システムより適切に行うことが可能となる。
【0103】
[第3の実施形態]
次に第3の実施形態について、図10を参照して説明する。
【0104】
本発明のルータ500は、ネットワークに接続してルータ機能を実行し、ネットワークに接続される通信機から前記通信機の処理量に連動して変化するパラメータが所定の値を超過したか否かの情報を含む信号を受信するルータ部501を備える。また、ルータ500は制御部502を備え、制御部502は前記信号に基づいて、前記所定の値を超過した通信機があるかどうかを判断する。更に、制御部502は前記所定の値を超過した通信機があると判断すると、前記所定の値を超過していない通信機に前記所定の値を超過した通信機のサーバと同一アドレスの別のサーバが存在するかどうかを判断する。そして、制御部502は、前記所定の値を超過していない通信機に前記所定の値を超過した通信機のサーバと同一アドレスの別のサーバが存在すると判断すると、前記別のサーバに接続する様に前記ルータ部を操作する。
【0105】
以上のようにすることで、本実施形態に示すルータ500は、データセンタの負荷を分散させるように接続先サーバを選択して、クライアントとサーバを最短経路で接続することが可能となる。
【0106】
以上、本発明の好適な実施形態を説明したが、上記実施形態に限定されるものではなく、次のように拡張または変形できる。
【0107】
第1の実施形態および第2の実施形態において、データセンタの負荷の状態の監視はデータセンタ全体の電力消費量で監視している。しかし、データセンタの負荷の状態の監視は、データセンタ全体の通信トラフィック量を監視することなどでも良い。
【0108】
また、第2の実施形態に示した通信システムにおいて、クライアント側ルータは、ネットワークモニタ付きのルータと、ネットワークモニタのない一般的なルータとが混在していてもネットワークとして成立する。
【0109】
或いは、第1の実施形態および第2の実施形態において、電力監視部105は、通信部106に対して伝える信号は、アラームの有無を示す信号であったが、電力消費量の値も信号に乗せて通信部106に伝えることも出来る。そして、この信号は通信部106から通信部204を経由してルータ制御部206に伝えられ、この信号の情報を基にルータ制御部206はサーバ電力情報を生成して、サーバ電力情報を記憶部205に記憶する。電力消費量の値を加えたサーバ電力情報の例を図12に示す。
【0110】
更に、ネットワーク110の各ルータは、サーバ電力情報として各データセンタの電力消費量の値を保有する。そして、第2の実施形態のポリシーベースルーティングのルールは、IPアドレスが大きい方のサーバにトンネル接続することを示したが、例えば次のルールに設定する。即ち、あるサーバがアラーム状態でありバックアップサーバが2つ以上ある場合、クライアント側ルータは消費電力の最も小さいバックアップサーバに対してトンネル接続をする、というルールとしておく。
【0111】
このようにすると、クライアントは複数のバックアップサーバの内、最も小さい消費電力のバックアップサーバに接続する。従って、新たに接続されるバックアップサーバのデータセンタはバックアップデータセンタの中で最も消費電力に余裕があるため、通信機100は効果的に負荷の分散を可能とする。従って、クライアント側ルータが消費電力アラームの有無を根拠にデータセンタの負荷を分散させる方法に比べて、サーバの接続されるデータセンタの消費電力を根拠として負荷を分散させることで、より効果的に負荷の分散が可能となる。
【0112】
また、第1の実施形態および第2の実施形態において、データセンタの負荷の状態の監視はデータセンタ全体の電力消費量で監視しているが、別の変形例として電力監視部に代えてデータセンタの温度監視部とすることも考えられる。データセンタに温度センサを設置し、温度センサの表示温度を温度監視部が監視し、所定の温度を超過したらアラーム有りの信号を発信する。このようにして、データセンタの負荷の状態を監視することも可能である。
【0113】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【0114】
(付記1)
ネットワークに接続してルータ機能を実行し、ネットワークに接続される通信機から前記通信機の処理量に連動して変化するパラメータが所定の値を超過したか否かの情報を含む信号を受信するルータ部と、
前記信号に基づいて、前記所定の値を超過した通信機があると判断し、前記所定の値を超過していない通信機に前記所定の値を超過した通信機のサーバと同一アドレスの別のサーバが存在すると判断すると、前記別のサーバに接続する様に前記ルータ部を操作する制御部とを備えることを特徴とするルータ。
【0115】
(付記2)
前記ルータ機能はルーティングテーブルに基づいて実行され、前記操作は前記所定の値を超過した通信機に属するサーバについて前記ルータ部の前記ルーティングテーブルのパス属性の優先度を下げる操作であることを特徴とする付記1に記載のルータ。
【0116】
(付記3)
複数のクライアントが1つのサーバに接続していて、前記操作は前記複数のクライアントの一部を前記別のサーバに接続する様に前記ルータ部を操作することであることを特徴とする付記1に記載のルータ。
【0117】
(付記4)
前記パラメータは、通信トラフィック量、消費電力量、または発熱量のいずれかであることを特徴とする付記1乃至付記3の何れかに記載のルータ。
【0118】
(付記5)
付記1乃至付記4のいずれかに記載のルータと、
前記所定の値を超過したか否かの情報を含む信号を前記ルータに通知するパラメータ監視部とを備えることを特徴とする通信機。
【0119】
(付記6)
ルータ装置と
前記ルータ装置に接続されるクライアントと、
付記5に記載の通信機とを備えることを特徴とする通信システム。
【0120】
(付記7)
前記ルータ装置は付記1乃至付記4のいずれかに記載のルータを含むことを特徴とする付記6に記載の通信システム。
【0121】
(付記8)
処理量に連動して変化するパラメータが所定の値を超過した通信機があると判断し、前記所定の値を超過していない通信機に前記所定の値を超過した通信機のサーバと同一アドレスの別のサーバが存在すると判断すると、前記別のサーバに接続することを特徴とするルータの通信方法。
【0122】
(付記9)
前記ルータはルーティングテーブルを使用し、前記別のサーバの接続は前記所定の値を超過した通信機に属するサーバの前記ルーティングテーブルのパス属性の優先度を下げることを特徴とする付記8に記載のルータの通信方法。
【0123】
(付記10)
複数のクライアントが1つのサーバに接続していて、前記別のサーバの接続は前記複数のクライアントの一部の接続であることを特徴とする付記8に記載のルータの通信方法。
【0124】
(付記11)
前記パラメータは、通信トラフィック量、消費電力量、または発熱量のいずれかであることを特徴とする付記8乃至付記10のいずれかに記載のルータの通信方法。
【0125】
(付記12)
処理量に連動して変化するパラメータが所定の値を超過した通信機があると判断し、前記所定の値を超過していない通信機に前記所定の値を超過した通信機のサーバと同一アドレスの別のサーバが存在すると判断すると、前記別のサーバに接続することを特徴とするルータのプログラム。
【0126】
(付記13)
前記ルータはルーティングテーブルを使用し、前記別のサーバの接続は前記所定の値を超過した通信機に属するサーバの前記ルーティングテーブルのパス属性の優先度を下げることを特徴とする付記12に記載のルータのプログラム。
【0127】
(付記14)
複数のクライアントが1つのサーバに接続していて、前記別のサーバの接続は前記複数のクライアントの一部の接続であることを特徴とする付記12に記載のルータのプログラム。
【0128】
(付記15)
前記パラメータは、通信トラフィック量、消費電力量、または発熱量のいずれかであることを特徴とする付記12乃至付記14のいずれかに記載のルータのプログラム。
【符号の説明】
【0129】
100 通信機
101 データセンタ
102 サーバA
103 サーバB
104 電力分電盤
105 電力監視部
106 通信部
110 ネットワーク
111 データセンタ1
112 サーバA1
113 サーバB1
121 データセンタ2
122 サーバA2
123 サーバB2
131 ルータA
132 ルータB
133 ルータC
134 ルータD
135 ルータE
136 ルータF
141 クライアントA
142 クライアントB
143 クライアントC
144 クライアントD
201 ルータ
202 ネットワークモニタ
203 ルータ部
204 通信部
205 記憶部
206 ルータ制御部
301 表301
302 表302
303 表303
304 表304
305 表305
401 通信機1
402 通信機2
451 ルータ
452 ネットワークモニタ
500 ルータ
501 ルータ部
502 制御部
610 ネットワーク
611 データセンタ1
612 サーバA1
613 サーバB1
621 データセンタ2
622 サーバA2
623 サーバB2
631 ロードバランサA
632 ロードバランサB
633 ルータC
635 ロードバランサC
641 クライアントA
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12