説明

通信システムおよび通信装置

【課題】帯域設定に要していた負荷を低減する。
【解決手段】第1の通信装置において、第1の自律帯域制御部は、フロー毎に、帯域変更要求値と物理回線の余剰帯域とから第1の変更帯域を求める。第1の送信部は、第1の変更帯域を隣接装置へ送信する。第2の通信装置において、第2の自律帯域制御部は、受信した第1の変更帯域を自装置に対する帯域変更要求値とし、フロー毎に、第1の変更帯域と余剰帯域とから第2の変更帯域を求める。第2の送信部は、第2の変更帯域を隣接装置へ送信する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報通信を行う通信システムおよび通信装置に関する。
【背景技術】
【0002】
データセンターは、インターネットへの接続回線や保守・運用サービスなどを提供する施設であり、インターネットの普及に伴って、需要はますます増大している。
データセンターには、多数のラックにサーバ、ストレージおよびL2(Layer 2)スイッチ等が設置されており、L2スイッチでは、サーバやストレージからのトラフィックを束ねて上位に送る役割を担っている。
【0003】
一方、近年のクラウドコンピューティングの発展に伴い、物理サーバ内の仮想サーバ(VM:Virtual Machine)数が増大し、データセンター内のネットワークでは、通信制御が複雑化している。このような状況において、VMの増加に対しても、データ転送量を高品質に支えるデータセンターの構築が求められている。
【0004】
従来の帯域設定技術として、要求帯域比で余剰帯域を割り当てる技術が提案されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2003−69627号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
データセンター内の運用管理システムでは、VMに帯域を割り当てる帯域設定制御を行っている。しかし、VM数が増加すると、増加したVM毎に帯域を割り当てる帯域設定が複雑化し、負荷が高まることになる。
【0007】
運用管理システムで帯域設定の負荷が高まると、遅延時間が増大して迅速な帯域設定を行えず、データセンター内のネットワークに対して、通信品質の劣化を生じさせるといった問題があった。
【0008】
本発明はこのような点に鑑みてなされたものであり、運用管理システムで帯域設定に要していた負荷を軽減させて通信品質の向上を図った通信システムを提供することを目的とする。
【0009】
また、本発明の他の目的は、運用管理システムで帯域設定に要していた負荷を軽減させて通信品質の向上を図った通信装置を提供することである。
【課題を解決するための手段】
【0010】
上記課題を解決するために、通信システムが提供される。通信システムは、フロー毎に、帯域変更要求値と物理回線の余剰帯域とから第1の変更帯域を求める第1の自律帯域制御部と、前記第1の変更帯域を隣接装置へ送信する第1の送信部と、を備える第1の通信装置と、受信した前記第1の変更帯域を自装置に対する前記帯域変更要求値とし、フロー毎に、前記第1の変更帯域と前記余剰帯域とから第2の変更帯域を求める第2の自律帯域制御部と、前記第2の変更帯域を隣接装置へ送信する第2の送信部と、を備える第2の通信装置とを有する。
【発明の効果】
【0011】
帯域設定に要していた負荷を軽減することが可能になる。
【図面の簡単な説明】
【0012】
【図1】通信システムの構成例を示す図である。
【図2】データセンターの構成例を示す図である。
【図3】フローの設定例を示す図である。
【図4】通信装置の構成例を示す図である。
【図5】変更要求値データベースの格納状態の一例を示す図である。
【図6】ポート単位変更値データベースの格納状態の一例を示す図である。
【図7】装置設定値データベースの格納状態の一例を示す図である。
【図8】課金情報データベースの格納状態の一例を示す図である。
【図9】制御フレームのフォーマットを示す図である。
【図10】制御フレームのフォーマットを示す図である。
【図11】制御フレームのフォーマットを示す図である。
【図12】アルゴリズムフィールドの設定例を示す図である。
【図13】自律帯域制御の動作を示すフローチャートである。
【図14】通信装置の構成例を示す図である。
【図15】通信装置の構成例を示す図である。
【図16】スケジューリング処理部の構成例を示す図である。
【図17】バーストトラフィックのスケジューリング処理の動作を示すフローチャートである。
【図18】スケジューリング処理部の構成例を示す図である。
【図19】余剰帯域のスケジューリング処理の動作を示すフローチャートである。
【発明を実施するための形態】
【0013】
以下、本発明の実施の形態を図面を参照して説明する。図1は通信システムの構成例を示す図である。通信システム1は、通信装置1−1(第1の通信装置)および通信装置1−2(第2の通信装置)を備える。
【0014】
通信装置1−1は、自律帯域制御部1a−1(第1の自律帯域制御部)と送信部1b−1(第1の送信部)を備える。通信装置1−2は、自律帯域制御部1a−2(第2の自律帯域制御部)と送信部1b−2(第2の送信部)を備える。
【0015】
通信装置1−1において、自律帯域制御部1a−1は、フロー毎に、帯域変更要求値と物理回線の余剰帯域とから、自装置の帯域として設定すべき変更帯域(第1の変更帯域)B1を自律的に求める。送信部1b−1は、変更帯域B1を隣接装置へ送信する。
【0016】
通信装置1−2において、自律帯域制御部1a−2は、受信した変更帯域B1を自装置に対する帯域変更要求値とする。そして、フロー毎に、変更帯域B1と余剰帯域とから、自装置の帯域として設定すべき変更帯域(第2の変更帯域)B2を自律的に求める。送信部1b−2は、変更帯域B2を隣接装置へ送信する。
【0017】
このように、通信システム1では、通信装置1−1が帯域変更要求値に応じて自律的に変更帯域B1を求める。そして、変更帯域B1を隣接装置へ送信し、変更帯域B1を受信した通信装置1−2では、変更帯域B1を自己に対する帯域変更要求値とみなし、同様にして自律的に変更帯域B2を求める構成とした。
【0018】
これにより、複数の通信装置の帯域設定を運用管理システム側で実行するのではなく、各通信装置が自律的に帯域設定を実行することにより、運用管理システムで帯域設定に要していた負荷を軽減させることができ、通信品質の向上を図ることが可能になる。
【0019】
次にデータセンターの構成例について説明する。図2はデータセンターの構成例を示す図である。データセンター100は、サーバラック101、ストレージラック102、ラック間スイッチ103およびルータ104を備える。
【0020】
サーバラック101には、複数のサーバを含むサーバ群101aおよびトップオブラックスイッチ101bが搭載され、サーバ群101a内の各サーバとトップオブラックスイッチ101bとが接続する。
【0021】
ストレージラック102には、複数のストレージを含むストレージ群102aおよびトップオブラックスイッチ102bが搭載され、ストレージ群102a内の各ストレージとトップオブラックスイッチ102bとが接続する。
【0022】
ラック間スイッチ103は、トップオブラックスイッチ101b、102bおよびルータ104と接続する。なお、ルータ104は、ルーティング機能の他にファイアウオール等のセキュリティ機能を有している。
【0023】
データセンター100内のルータ104は、インターネット110と接続し、インターネット110にはエンドユーザの端末機器120が接続している。
上記のトップオブラックスイッチ101b、102bは、L2スイッチであり、サーバ、ストレージからのトラフィックを束ねて上位に送る役割を担っている。また、L2スイッチは、QoS(Quality of Service)による通信帯域を保証して、各種フロー(ユーザ単位、VLAN(Virtual Local Area Network)単位、サービス単位などのまとまり)毎のトラフィックを確保する。
【0024】
一方、サーバ群101a内の各サーバにはVMが設けられ、さらに、運用管理システムの役割を担うサーバ(サーバ101a−1とする)が少なくとも1台は配置される。
サーバ101a−1では、複数のVMに帯域を割り当てる帯域設定制御が従来行われているが、VM数が増加すると、増加したVM毎に帯域を割り当てる帯域設定が複雑化し、負荷が高まることになる。
【0025】
このように、一極集中で帯域設定を行うと、帯域設定されるVMの数が増大するほど負荷が高まり遅延時間も増大して、パフォーマンス能力が低下する。このため、データセンター100内のL2ネットワークの通信品質が劣化することになる。
【0026】
本技術はこのような点に鑑みてなされたものであり、運用管理システムで帯域設定に要していた負荷を低減させて通信品質の向上を図った通信システムおよび通信装置を提供するものである。
【0027】
次に図1の通信装置1−1、1−2をL2ネットワーク内のスイッチ(L2スイッチ)に適用した場合を例に挙げて、自律帯域制御について詳しく説明する。
図3はフローの設定例を示す図である。L2ネットワーク内には、スイッチsw1〜sw7が配置される。
【0028】
スイッチ間の物理回線による接続構成は、スイッチsw1は、スイッチsw2、sw3に接続し、スイッチsw2は、スイッチsw1、sw4、sw5に接続し、スイッチsw3は、スイッチsw1に接続する。
【0029】
スイッチsw4は、スイッチsw2、sw6、sw7に接続し、スイッチsw5は、スイッチsw2に接続し、スイッチsw6は、スイッチsw4に接続し、スイッチsw7は、スイッチsw4に接続する。
【0030】
また、スイッチsw1〜sw7に対するフロー配置としては、フローf1は、スイッチsw1、sw2、sw3、sw5を流れている。フローf2は、スイッチsw2、sw4、sw5、sw7を流れている。フローf3は、スイッチsw2、sw4、sw5、sw6を流れている。フローf4は、スイッチsw1、sw2、sw4、sw6を流れている。
【0031】
なお、フローf1〜f4の末端には、図には示さないが、サーバやルータまたはL3スイッチ等のレイヤ2を終端する装置が配置される。
(前提条件)
まず、自律帯域制御を行う際の前提条件について説明する。フローはVLAN−ID(Identifier)などでユーザや用途別に識別され、利用者はフロー毎に最大帯域(PIR:Peak Information Rate)を設定している状態にあるとする。
【0032】
また、スイッチsw2は、ポートB、C、Dを有し、スイッチsw5は、ポートp1、p2、p3およびポートAを有している。スイッチsw5のポートp1、p2、p3には、それぞれフローf1、f2、f3が設定され、ポートAには、フローf1、f2、f3の3本が設定されている。
【0033】
スイッチsw2のポートBは、スイッチsw5のポートAと接続されているため、フローf1、f2、f3が設定される。さらに、ポートCには、フローf1、f3、f4が設定され、ポートDには、フローf2、f3、f4が設定されている。
【0034】
ここで、ネットワーク全体でN本のフローが設定されている場合、各フローの設定帯域をB1、B2、・・・、Bk、・・・、Bnと表す。また、帯域変更要求値をΔB1、ΔB2、・・・、ΔBk、・・・、ΔBnと表す。
【0035】
さらに、バーストトラフィック用の帯域をBbとし、物理回線の余剰帯域をBrと表す。なお、バーストトラフィックとは、消費帯域が設定帯域を超えるトラフィックのことをいう。
【0036】
システムのバックアップ時などは大きなサイズのファイル転送が行われ、一時的に大きな帯域を消費するため、バーストトラフィックが発生しやすい。通常は、バーストトラフィックを格納するためのバッファ容量を固定的に確保してバーストトラフィックに対応する。
【0037】
(スイッチsw5にて帯域の変更要求の発生)
スイッチsw5のポートp1、p2、p3にて帯域の変更要求が発生したとする。帯域を減少する要求については、減少分の帯域を、余剰帯域Brに追加する処理を行うことでよい。
【0038】
一方、帯域を増加する要求については、ポートAの使用帯域について検討することになる。スイッチsw5において、フローf1、f2、f3の増加分の合計が、ポートAの物理帯域を超えるような場合には、スイッチsw5は、自律的にポートAでの帯域調整を実行する。
【0039】
具体例を挙げながら説明する(以下、“M”はMbpsの単位を表す)。帯域増加前における、フローf1の設定帯域B1、フローf2の設定帯域B2およびフローf3の設定帯域B3はそれぞれ、B1=100M、B2=200M、B3=400Mであったとする。
【0040】
また、バーストトラフィックBbおよび余剰帯域Brについては、Bb=50M、Br=250Mであったとする。
一方、帯域増加要求として、フローf1の帯域増加要求値ΔB1、フローf2の帯域増加要求値ΔB2およびフローf3の帯域増加要求値ΔB3がそれぞれ、ΔB1=100M、ΔB2=200M、ΔB3=300Mであったとする。
【0041】
フローf1〜f3の帯域増加要求値の合計は、600M(=100M+200M+300M)であるから、余剰帯域Br=250Mとの差分をとると、350Mの不足となる。したがって、帯域増加要求をそのまま受け入れることはできないので、帯域調整を行うことになる。
【0042】
上記の判別方法を一般化すると、以下のように表現される。帯域増加要求に対して、現在設定されている帯域を調整するか否かを判別する判別指標をDとすると、判別指標Dは、以下の式(1)で表される。
【0043】
D=Br−(ΣΔBi)・・・(1)
すなわち、判別指標Dは、余剰帯域から各フローの帯域増加要求値の総和を減算した値である。D≧0ときは、帯域増加要求分を受け入れ可能であるから、現状の帯域に加算して反映する。
【0044】
また、D<0のときは、帯域増加要求分が余剰帯域を超過することになるので、超過分を帯域増加要求の比率に応じて分配して帯域調整を行う。
ここで、フローfkのΔBk(対象変更要求値)における、帯域調整後の変更帯域をΔBkaとすると、変更帯域ΔBkaは以下の式(2)で算出される。
【0045】
ΔBka=ΔBk+D×(ΔBk/ΣΔBi)・・・(2)
式(2)を用いて、上記の例のフローf1〜f3の帯域調整後の変更帯域を算出すると、フローf1の変更帯域ΔB1aについては、ΔB1a=41.6M[=ΔB1+D×(ΔB1/(ΔB1+ΔB2+ΔB3))=(100M+(−350)×(100M/(100M+200M+300M))]となる。
【0046】
フローf2の変更帯域ΔB2aについては、ΔB2a=83.3M[=ΔB2+D×(ΔB2/(ΔB1+ΔB2+ΔB3))=(200M+(−350)×(200M/(100M+200M+300M))]となる。
【0047】
フローf3の変更帯域ΔB3aについては、ΔB3a=125M[=ΔB3+D×(ΔB3/(ΔB1+ΔB2+ΔB3))=(300M+(−350)×(300M/(100M+200M+300M))]となる。
【0048】
上記の結果についてまとめると、スイッチsw5のポートAにおける、フローf1に関する帯域調整後の変更帯域は41.6Mである。また、スイッチsw5のポートAにおける、フローf2に関する帯域調整後の変更帯域は83.3Mである。さらに、スイッチsw5のポートAにおける、フローf3に関する帯域調整後の変更帯域は125Mである。
【0049】
なお、一般的に最終的な変更帯域は、スイッチ内で同一フローが通る各ポートの変更帯域の最小値を採用する。
例えば、あるスイッチに対して、フローf1がポートp1〜pmを通っており、ポートp1での変更帯域がΔB1a(p1)、ポートp2での変更帯域がΔB1a(p2)、ポートpmでの変更帯域がΔB1a(pm)であったとする。
【0050】
この場合、ΔB1a(p1)、ΔB1a(p2)、・・・、ΔB1a(pm)の中で、ΔB1a(p1)が最小値であった場合には、フローf1が通るポートp1〜pmの変更帯域には、ΔB1a(p1)を設定することになる。
【0051】
上記の内容をフローf1〜fn、ポートp1〜pmとして一般化して表現すると、min(ΔB1a(p1)、 ΔB1a(p2)、・・・、ΔB1a(pm))、min(ΔB2a(p1)、 ΔB2a(p2)、・・・、ΔB2a(pm))、min(ΔBna(p1)、ΔBna(p2)、・・・、ΔBna(pm))となる。
【0052】
(変更帯域を隣接装置に送信する)
決定した変更帯域を新たな帯域変更要求値として、制御フレームに変更帯域の情報を挿入し、VLAN内の隣接装置に対して制御フレームをマルチキャストする。
【0053】
この例では、スイッチsw2は、ポートBでスイッチsw5からの帯域変更要求値を受信するので、ポートBより変更要求を受けて、ポートC、Dにて上記と同様な使用帯域の検討を行うことになる。
【0054】
このように、各ポートで自律帯域調整を行い、各フローの最小変更帯域値を帯域調整後の帯域値として設定する。その後、次段スイッチに送信・展開する。なお、末端のサーバまたはルータ等では、制御フレームを処理しないため廃棄される。
【0055】
次に通信装置の構成例について説明する。図4は通信装置の構成例を示す図である。通信装置10は、例えば、L2スイッチ等に適用可能であり、トラフィック計測部11、トラフィック予測部12、フレーム受信部13、制御フレーム解析部14、自律帯域制御部15、帯域設定部16、制御フレーム生成部17およびフレーム送信部18を備える。
【0056】
また、自律帯域制御部15は、帯域変更要求判別部15a、帯域調整部15bおよび最小値検出部15cを含む。さらに、通信装置10は、データベースとして、変更要求値データベースDB1、ポート単位変更値データベースDB2、装置設定値データベースDB3および課金情報データベースDB4を備える。
【0057】
トラフィック計測部11は、トラフィックの流量を計測し、計測データをトラフィック予測部12に渡す。トラフィック予測部12は、自己回帰和分移動平均(ARIMA:Auto-Regressive Integrated Moving Average)モデルに代表される時系列分析を行う。
【0058】
そして、トラフィック流量が現在の設定帯域を超えると予測されるときには、そのトラフィック流量に対応する帯域値を帯域変更要求値とし、該帯域変更要求値を自律帯域制御部15に渡す。また、該帯域変更要求値を変更要求値データベースDB1に格納する。
【0059】
フレーム受信部13は、隣接装置からのフレームを受信し、帯域変更要求値が含まれる制御フレームを抽出して、制御フレーム解析部14に渡す。制御フレーム解析部14は、制御フレームからVLAN−IDおよび帯域変更要求値の情報を抽出し、変更要求値データベースDB1に格納する。
【0060】
帯域変更要求判別部15aは、上述の式(1)の判別指標Dを算出し、判別式D≧0かどうかを判定する。D≧0であれば、帯域変更要求値をそのままポート単位変更値データベースDB2に格納する。D<0であれば、帯域調整部15bに変更帯域ΔBkaの計算を指示する。
【0061】
帯域調整部15bは、帯域変更要求判別部15aからの指示にもとづき、上述の式(2)を用いて変更帯域ΔBkaを計算し、計算結果をポート単位変更値データベースDB2に格納する。
【0062】
最小値検出部15cは、ポート単位変更値データベースDB2から各ポートの変更帯域ΔBkaを取得し、フロー毎に(VLAN毎に)最小値を検出し、検出した最小値を装置設定値データベースDB3に格納する。また、帯域設定部16に帯域設定の指示を行う。
【0063】
帯域設定部16は、自律帯域制御部15からの帯域設定指示にもとづき、装置設定値データベースDB3より帯域設定値(ΔB)を取得し、自装置に帯域設定を行って反映させる。また、変更帯域をタイムスタンプとともに課金情報データベースDB4に格納する。
【0064】
制御フレーム生成部17は、帯域設定部16からの指示にもとづき、VLAN−IDおよび帯域設定値(変更帯域)を格納した制御フレームを生成する。フレーム送信部18は、制御フレームを一般のトラフィックのフレームと同様に送信して、隣接装置へ展開する。
【0065】
次に各データベースについて説明する。図5は変更要求値データベースの格納状態の一例を示す図である。変更要求値データベースDB1は、ポート、VLAN−ID、帯域変更要求値ΔBkの各属性を有して、属性毎に情報を登録する。例えば、VLAN1のフローが通るポートBに関する帯域変更要求値ΔBは、41.66667Mであることが登録されている。
【0066】
図6はポート単位変更値データベースの格納状態の一例を示す図である。ポート単位変更値データベースDB2は、ポート、VLAN−ID、初期帯域、変更分の各属性を有して、属性毎に情報を登録する。なお、初期帯域は、帯域変更要求値を反映させる前の帯域値であり、変更分は、変更帯域ΔBkaに該当する。
【0067】
例えば、VLAN1のフローが通るポートBに関する初期帯域は100Mであり、変更帯域ΔBkaは、41.66667Mであることが登録されている。
図7は装置設定値データベースの格納状態の一例を示す図である。装置設定値データベースDB3は、VLAN−ID、初期帯域、変更分の各属性を有して、属性毎に情報を登録する。
【0068】
図7では、帯域変更前の登録状態を示している。VLAN1のフローに関する初期帯域(帯域設定値)は100M、変更分は0であり、VLAN2のフローに関する初期帯域(帯域設定値)は200M、変更分は0であり、VLAN3のフローに関する初期帯域(帯域設定値)は400M、変更分は0と登録されている。また、バーストトラフィックは50M、余剰帯域は250Mであることが、初期帯域の属性に登録されている。
【0069】
図8は課金情報データベースの格納状態の一例を示す図である。課金情報データベースDB4は、VLAN−ID、タイムスタンプ(帯域使用時間帯)T1〜Tnの各属性を有して、属性毎に情報を登録する。
【0070】
例えば、VLAN1のフローに関し、タイムスタンプT1の時間帯では100Mの帯域が使用され、タイムスタンプT2の時間帯では141Mの帯域が使用されたことが登録されている。このように、ある時間帯において、どれだけ帯域を使用していたかの情報を管理しておくことで、課金に反映させることができる。
【0071】
次に制御フレームのフォーマット構成例について説明する。図9〜図11は制御フレームのフォーマットを示す図である。制御フレームF1〜F3は、Ethernet(登録商標)のフレームフォーマットに従っており、L2スイッチでの転送が可能である。
【0072】
図9の制御フレームF1は、8byteのプリアンブル/SFD(Start Frame Delimiter)、宛先アドレス(6byte)、送信元アドレス(6byte)、TYPE(2byte)、VLANタグ(2byte)、帯域設定値(6byte)、データ(38〜1492byte)および4byteのFCS(Frame Check Sequence)の各フィールドを備える。なお、データにはパディングも含まれる。
【0073】
VLAN単位のフローでは、VLANタグフィールドにVLANタグ値(VLAN−ID)を格納して、フローが識別される。また、帯域設定値フィールドには、変更帯域値が格納される。
【0074】
図10の制御フレームF2は、プリアンブル/SFD(8byte)、宛先アドレス(6byte)、送信元アドレス(6byte)、Type(2byte)、Time(4byte)、Duration(3byte)、VLANタグ(2byte)、帯域設定値(6byte)、データ(31〜1485byte)およびFCS(4byte)の各フィールドを備える。なお、データにはパディングも含まれる。
【0075】
制御フレームF2は、変更帯域を設定する時間指定が行える拡張フレームフォーマットである。新たなフィールドとして、TimeフィールドおよびDurationフィールドが設けられている。Timeフィールドは、変更帯域設定の開始時間を格納するフィールドである。Durationフィールドは、変更帯域設定の継続時間を格納するフィールドである。
【0076】
図11の制御フレームF3は、プリアンブル/SFD(8byte)、宛先アドレス(6byte)、送信元アドレス(6byte)、Type(2byte)、VLANタグ(2byte)、アルゴリズム(1byte)、データ(43〜1497byte)およびFCS(4byte)の各フィールドを備える。なお、データにはパディングも含まれる。
【0077】
制御フレームF3は、アルゴリズムフィールドを有している。アルゴリズムフィールドは、キューに格納されているデータを読み出す際のスケジューリングを行うスケジューラ(後述)に対して、どのようなアルゴリズムでスケジューリングを行うかを指定するものである。
【0078】
図12はアルゴリズムフィールドの設定例を示す図である。例えば、初期動作時には、設定値(10進)を1にして、RR(Round Robin)のアルゴリズムを該当スケジューラに指定する。
【0079】
また、自律帯域制御時には、設定値(10進)を2にして、DRR(Deficit Round Robin)のアルゴリズムを該当スケジューラに指定する。さらに、障害発生や緊急動作時等には、設定値(10進)を4にして、SP(Strict Priority)のアルゴリズム(キューの優先度の高いものから優先的に送信するアルゴリズム)を該当スケジューラに指定する。
【0080】
このように、自律帯域制御時(通常運用時)はDRRのアルゴリズムを指定する情報を制御フレームF3に格納して隣接装置へ送信する。また、リンクダウンなどの隣接装置の異常を検出したときには、管理系などの優先度の高いトラフィックを守るために、SPのアルゴリズムを指定する情報を制御フレームF3に格納して送信する。
【0081】
次に自律帯域制御に関する動作についてフローチャートを用いて説明する。図13は自律帯域制御の動作を示すフローチャートである。
〔S1〕フレーム受信部13は、帯域設定値が格納されている制御フレームを受信したか否かを判断する。受信した場合はステップS5へ行き、受信しない場合はステップS2へ行く。
【0082】
〔S2〕トラフィック計測部11は、フロー毎にトラフィック流量を計測する。
〔S3〕トラフィック予測部12は、計測値からトラフィック流量を予測する。
〔S4〕トラフィック予測部12は、トラフィック流量が現在の設定帯域を超えるか否かを判断する。超える場合はステップS5へ行き、超えない場合はステップS1へ戻る。
【0083】
〔S5〕帯域変更要求判別部15aは、式(1)にもとづき、判別指標Dを計算する。この場合、帯域設定値が格納された制御フレームを受信したときには、格納されている帯域設定値を帯域変更要求値とみなして、該帯域変更要求値と余剰帯域とにもとづき、判別指標Dの計算を行う。
【0084】
また、トラフィック流量が現在の設定帯域を超えるときには、該トラフィック流量の帯域を帯域変更要求値とみなして、該帯域変更要求値と余剰帯域とにもとづき、判別指標Dの計算を行う。
【0085】
〔S6〕帯域変更要求判別部15aは、判別指標Dが0に等しいまたは0よりも大きい場合は(D≧0)、ステップS9へ行く、また、判別指標Dが0よりも小さい場合は、ステップS7へ行く。
【0086】
〔S7〕帯域調整部15bは、式(2)にもとづき、変更帯域ΔBkaを算出する。
〔S8〕最小値検出部15cは、各ポートの変更帯域ΔBkaから最小値を検出する。
〔S9〕帯域設定部16は、自装置への帯域設定処理を行う。
【0087】
〔S10〕制御フレーム生成部17は、フロー識別子(VLAN−IDなど)および帯域設定値を格納した制御フレームを生成し、フレーム送信部18は、制御フレームを隣接装置へ送信する。
【0088】
以上説明したように、通信装置(スイッチ)間で上記のような自律帯域制御を行うことで、運用管理システムが従来行っていた各通信装置に対する帯域設定をオフロード(負荷の軽減)することが可能になり、運用管理システムのリソースを別の処理に割り当てることが可能になる。
【0089】
また、運用管理システムの負荷が減少することで、運用管理システムが配置されている同一物理サーバ上にVNを追加することも可能になる。さらに、運用管理システムと通信装置との間で、帯域設定に関するやりとりを減少することができるので、設定に要していた遅延時間が減少し、迅速に帯域設定の最適化をネットワーク全体に対して行うことが可能になる。
【0090】
さらにまた、通信装置では、制御フレームで送信された帯域設定値を自己の帯域変更要求値とみなして自律帯域制御を行う場合と、自装置で計測したトラフィック流量が現在の設定帯域を超えるときには、該トラフィック流量の帯域値を帯域変更要求値とみなして自律帯域制御を行う場合との2つの判断で自律的な帯域制御を行う構成とした。これにより、帯域制御の精度が向上するので、信頼性を向上させることが可能になる。
【0091】
次にスイッチ機能を含めた通信装置の構成について説明する。図14、図15は通信装置の構成例を示す図である。通信装置2は、CPU(Central Processing Unit)2a、スイッチ制御部20、入力I/F(インタフェース)部25−1〜25−n、出力I/F部26−1〜26−nおよびメモリM1、M2を備える。
【0092】
メモリM1には、トラフィック予測プログラム12−1、帯域変更要求判別プログラム15a−1、帯域調整プログラム15b−1および最小値検出プログラム15c−1を含む。
【0093】
トラフィック予測プログラム12−1は、図4のトラフィック予測部12におけるトラフィック予測処理のプログラムであり、帯域変更要求判別プログラム15a−1は、図4の帯域変更要求判別部15aにおける帯域変更要求判別処理のプログラム(式(1)の計算プログラム)である。
【0094】
帯域調整プログラム15b−1は、図4の帯域調整部15bにおける帯域調整処理のプログラム(式(2)の計算プログラム)であり、最小値検出プログラム15c−1は、図4の最小値検出部15cにおける最小値検出処理のプログラムである。これらのプログラムは、CPU2aで呼び出されて実行される。なお、図4の制御フレーム解析部14、帯域設定部16および制御フレーム生成部17の機能などもCPU2aで実行される。
【0095】
また、メモリM2には、図4の変更要求値データベースDB1、ポート単位変更値データベースDB2、装置設定値データベースDB3および課金情報データベースDB4が含まれる。
【0096】
入力I/F部25−1〜25−nは、図4のフレーム受信部13を含み、出力I/F部26−1〜26−nは、図4のフレーム送信部18を含む。
スイッチ制御部20は、スイッチ21およびスケジューリング処理部22−1〜22−nを備える。スケジューリング処理部22−1は、入力キューqi−1−1〜qi−1−m、カウンタC1−1〜C1−m、スケジューラ22a−1および出力キューqo−1を含む。
【0097】
スケジューリング処理部22−2は、入力キューqi−2−1〜qi−2−m、カウンタC2−1〜C2−m、スケジューラ22a−2および出力キューqo−2を含む。同様に、スケジューリング処理部22−nは、入力キューqi−m−1〜qi−m−m、カウンタCm−1〜Cm−m、スケジューラ22a−mおよび出力キューqo−nを含む。
【0098】
スイッチ制御部20において、スイッチ21は、宛先解決されたフレームを各出力ポートから、VLAN−IDなどの識別子にもとづき出力し、出力されたフレームは入力キューに分類されて格納される。
【0099】
入力キューの後段には、トラフィック計測部11の役割を担うカウンタが設けられており、カウントされたトラフィック量がCPU2aへ送信される。CPU2aでは、トラフィック予測プログラム12−1を読み出して、受信したトラフィック量にもとづきトラフィック予測を行う。また、スケジューラ22a−1〜22a−mは、CPU2aからのスケジューリング指示にもとづき、各入力キューからフレームを読み出す。
【0100】
このようにスイッチ制御部20では、フレームを複数の入力キューに分けて格納し、指示されたスケジューリングにもとづき、各入力キューからフレームを読み出す構成とした。これにより、単一のフローだけが物理回線の帯域を大きく消費してしまうといったことを防止することができ、帯域を確保して通信の品質を高めることが可能になる。
【0101】
次にバーストトラフィックの帯域制御について説明する。図16はスケジューリング処理部の構成例を示す図である。バーストトラフィックに対応したスケジューリング処理を行う構成例を示している。
【0102】
スケジューリング処理部22−1aは、入力キューqi−1〜qi−3、カウンタC1−1〜C1−3、切替部22d、22e、22f、スケジューラ22a−1、22b−1、22c−1および出力キューqo−1を備える。
【0103】
入力キューqi−1〜qi−3は、図15のスイッチ21から出力されたフレームをキューイングする。スケジューラ22a−1は、CPU2aから通知されたスケジューリング指示(例えば、キュー単位の読み出し比率や、どのアルゴリズムを使用するかの指示など)にもとづき、入力キューqi−1〜qi−3からフレームを読み出す。
【0104】
カウンタC1−1〜C1−3は、入力キューqi−1〜qi−3から出力されるフレームをカウントし、カウント値をトラフィック計測値としてCPU2aへ送信する。
切替部22d、22e、22fは、CPU2aからの切替指示にもとづき、入力キューqi−1〜qi−3からのフレーム出力を、スケジューラ22a−1からスケジューラ22b−1へ切り替えるかどうかのON/OFF切替を行う。
【0105】
スケジューラ22b−1は、バーストトラフィックの帯域に対応したスケジューラであり、CPU2aからのスケジューリング指示にもとづき、バーストトラフィック対応のスケジューリングを行う。
【0106】
スケジューラ22c−1は、CPU2aからのスケジューリング指示にもとづき、スケジューラ22a−1、22b−1から出力されたフレームのスケジューリングを行う。出力キューqo−1は、スケジューラ22c−1からの出力フレームをキューイングする。
【0107】
次にバーストトラフィックが発生したときの動作について説明する。バーストトラフィックの発生は、カウンタC1−1〜C1−3にて計測されたカウンタ値にもとづいて、カウンタ値が設定帯域を超えるトラフィックであるか否かによってCPU2aで判断される。
【0108】
設定帯域を超える場合は、CPU2aは、バーストトラフィック分の帯域が割り当てられているスケジューラ22b−1を起動し、かつ該当の切替部をONにする。例えば、CPU2aが、カウンタC1−1のカウンタ値からバーストトラフィックを認識したとする。CPU2aは、切替部22dをONにして、入力キューqi−1からの出力フレームのスケジューリングを、スケジューラ22a−1からスケジューラ22b−1へ切り替える。
【0109】
スケジューラ22b−1は、バーストトラフィック分の帯域で入力キューqi−1からの出力フレームを読み出し処理する。CPU2aは、カウンタC1−1のカウンタ値からバーストトラフィックが無くなったことを認識すると、切替部22dをOFFに設定する。その後、入力キューqi−1からの出力フレームのスケジューリングは、スケジューラ22b−1から元のスケジューラ22a−1へ切り替わる。
【0110】
図17はバーストトラフィックのスケジューリング処理の動作を示すフローチャートである。
〔S11〕カウンタC1−1〜C1−3は、フロー毎にトラフィック流量を計測し、CPU2aへ通知する。
【0111】
〔S12〕CPU2aは、計測結果が設定帯域を超えるか否かを判断する。超える場合はステップS13へ行き、超えない場合はステップS11へ戻る。
〔S13〕CPU2aは、バーストトラフィック用のスケジューラ22b−1を起動し、該当の切替回路をONにする。
【0112】
〔S14〕スケジューラ22b−1は、バーストトラフィックが発生しているキューからフレーム読み出しを行う。
〔S15〕CPU2aは、計測結果が設定帯域を超えるか否かを判断する。超える場合はステップS14へ行き、超えない場合はステップS16へ行く。
【0113】
〔S16〕CPU2aは該当の切替回路をOFFにし、スケジューラ22b−1から元のスケジューラ22a−1に切り替える。
以上説明したように、バーストトラフィック分の帯域を、バーストトラフィック用に特化したスケジューラでスケジューリング処理する構成とした。これにより、バーストトラフィック分の帯域を柔軟に与えることができ、かつバーストトラフィックを速やかに読み出すことができ、フレームドロップを抑制することが可能になる。
【0114】
次に余剰帯域のスケジューリング処理について説明する。図18はスケジューリング処理部の構成例を示す図である。スケジューリング処理部22−1bは、入力キューqi−1〜qi−3、カウンタC1−1〜C1−3、切替部22d、22e、22f、スケジューラ22a−1、22b−1、22c−1、22d−1、上限帯域設定部31〜33および出力キューqo−1を備える。
【0115】
図16の構成に対して、新たに上限帯域設定部31〜33とスケジューラ22d−1が設けられている、図16のスケジューラ22a−1では設定帯域(最低帯域)と余剰帯域を同時に処理していたが、図18ではスケジューラ22a−1は設定帯域用であり、各フローの設定帯域分までを読み出す。また、スケジューラ22a−1の入力段には、上限帯域設定部31〜33を配置して、設定帯域以上を読み出さないように制御している。
【0116】
一方、スケジューラ22d−1は、キューqi−1〜qi−3から余剰帯域分のデータの読み出しスケジューリングを独立して行う余剰帯域用のスケジューラである。余剰帯域用のスケジューラ22d−1で余剰帯域のみの制御を行う。
【0117】
図19は余剰帯域のスケジューリング処理の動作を示すフローチャートである。
〔S21〕入力I/F部25−1〜25−nは、アルゴリズムフィールドを持つ制御フレームを受信する。
【0118】
〔S22〕CPU2aは、余剰帯域用のスケジューラ22d−1にアルゴリズムを設定する。
〔S23〕スケジューラ22d−1は、指定されたアルゴリズムにもとづき、キューから余剰帯域分のフレーム読み出し処理を行う。
【0119】
以上説明したように、余剰帯域に特化したスケジューラを設けて、余剰帯域分のスケジューリングを設定帯域用スケジューラとは独立して行う構成とした。ここで、設定帯域と余剰帯域とを共にスケジューリングしていたスケジューラでは、あるフローに対する出力比率の変更が生じたとき、設定帯域の比率が変わってしまう。このため、他のフローの出力比率にも影響が出てしまい、例えば、他のフローの出力が当初の設定帯域よりも下回ってしまうといったことが起きるおそれがあった。
【0120】
これに対し、余剰帯域を独立してスケジューリングするスケジューラを設けておくことで、あるフローに対する出力比率の変更が生じたときは、余剰帯域側の比率を変更して対応することができる。このため、当初の設定帯域を確保することができ、安定した帯域制御を行うことが可能になる。また、各フローに与えている余剰帯域分の管理が容易となるので、課金情報などにも反映しやすくなる。
【0121】
以上、実施の形態を例示したが、実施の形態で示した各部の構成は同様の機能を有する他のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。
【符号の説明】
【0122】
1 通信システム
1−1、1−2 通信装置
1a−1、1a−2 自律帯域制御部
1b−1、1b−2 送信部
B1、B2 変更帯域

【特許請求の範囲】
【請求項1】
フロー毎に、帯域変更要求値と物理回線の余剰帯域とから第1の変更帯域を求める第1の自律帯域制御部と、前記第1の変更帯域を隣接装置へ送信する第1の送信部と、を備える第1の通信装置と、
受信した前記第1の変更帯域を自装置に対する前記帯域変更要求値とし、フロー毎に、前記第1の変更帯域と前記余剰帯域とから第2の変更帯域を求める第2の自律帯域制御部と、前記第2の変更帯域を隣接装置へ送信する第2の送信部と、を備える第2の通信装置と、
を有することを特徴とする通信システム。
【請求項2】
前記第1および第2の自律帯域制御部は、
前記余剰帯域からフロー毎の前記帯域変更要求値の総和を減算して、帯域調整を行うか否かの判別指標を算出し、
前記判別指標にもとづき前記帯域調整を行うことを認識した場合は、前記帯域変更要求値の総和と対象フローの帯域変更要求値である対象変更要求値との比率に、前記判別指標を乗算し、乗算結果に前記対象変更要求値を加算して、前記第1および第2の変更帯域を求める、
ことを特徴とする請求項1記載の通信システム。
【請求項3】
前記第1および第2の通信装置は、受信データのトラフィック流量を計測するトラフィック計測部と、計測結果にもとづき前記トラフィック流量が現在の設定帯域を超えるか否かを予測するトラフィック予測部とをさらに備え、
前記第1および第2の自律帯域制御部は、前記トラフィック流量が現在の設定帯域を超えると予測された場合は、前記トラフィック流量の帯域を前記帯域変更要求値とし、フロー毎に、前記帯域変更要求値と前記余剰帯域とから変更帯域を求める、
ことを特徴とする請求項1記載の通信システム。
【請求項4】
前記第1および第2の通信装置は、複数のキューと、第1のスケジューラと、第2のスケジューラとをさらに備え、
バーストトラフィックが発生しない場合は、前記第1のスケジューラは、あらかじめ設定された帯域で前記複数のキューからデータを読み出し、
前記バーストトラフィックが発生した場合は、前記第2のスケジューラは、前記バーストトラフィックに対応した帯域で、前記バーストトラフィックが発生した前記キューからデータを読み出す、
ことを特徴とする請求項1記載の通信システム。
【請求項5】
前記第1および第2の通信装置は、前記余剰帯域分のデータの読み出しスケジューリングを独立して行う余剰帯域用スケジューラをさらに備えることを特徴とする請求項1記載の通信システム。
【請求項6】
他装置で決定された変更帯域情報を受信して、前記変更帯域情報を自装置に対する帯域変更要求値とし、フロー毎に、前記帯域変更要求値と物理回線の余剰帯域とから、自装置の変更帯域を求める自律帯域制御部と、
前記変更帯域を前記変更帯域情報として隣接装置へ送信する送信部と、
を有することを特徴とする通信装置。
【請求項7】
前記自律帯域制御部は、
前記余剰帯域からフロー毎の前記帯域変更要求値の総和を減算して、帯域調整を行うか否かの判別指標を算出し、
前記判別指標にもとづき前記帯域調整を行うことを認識した場合は、前記帯域変更要求値の総和と対象フローの帯域変更要求値である対象変更要求値との比率に、前記判別指標を乗算し、乗算結果に前記対象変更要求値を加算して、前記変更帯域を求める、
ことを特徴とする請求項6記載の通信装置。
【請求項8】
受信データのトラフィック流量を計測するトラフィック計測部と、計測結果にもとづき前記トラフィック流量が現在の設定帯域を超えるか否かを予測するトラフィック予測部とをさらに備え、
前記自律帯域制御部は、前記トラフィック流量が現在の設定帯域を超えると予測された場合は、前記トラフィック流量の帯域を前記帯域変更要求値とし、フロー毎に、前記帯域変更要求値と前記余剰帯域とから変更帯域を求める、
ことを特徴とする請求項6記載の通信装置。
【請求項9】
複数のキューと、第1のスケジューラと、第2のスケジューラとをさらに備え、
バーストトラフィックが発生しない場合は、前記第1のスケジューラは、あらかじめ設定された帯域で前記複数のキューからデータを読み出し、
前記バーストトラフィックが発生した場合は、前記第2のスケジューラは、前記バーストトラフィックに対応した帯域で、前記バーストトラフィックが発生した前記キューからデータを読み出す、
ことを特徴とする請求項6記載の通信装置。
【請求項10】
前記余剰帯域分のデータの読み出しスケジューリングを独立して行う余剰帯域用スケジューラをさらに備えることを特徴とする請求項6記載の通信装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate