JP2005051811A - ネットワークシステムとその通信帯域制御方法 - Google Patents

ネットワークシステムとその通信帯域制御方法 Download PDF

Info

Publication number
JP2005051811A
JP2005051811A JP2004285645A JP2004285645A JP2005051811A JP 2005051811 A JP2005051811 A JP 2005051811A JP 2004285645 A JP2004285645 A JP 2004285645A JP 2004285645 A JP2004285645 A JP 2004285645A JP 2005051811 A JP2005051811 A JP 2005051811A
Authority
JP
Japan
Prior art keywords
bandwidth
communication
node
amount
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2004285645A
Other languages
English (en)
Inventor
Hisao Kikuchi
久雄 菊池
Hideki Sotooka
秀樹 外岡
Tsutomu Matsuno
強 松野
Seiichi Tamura
清一 田村
Yoshiaki Adachi
芳昭 足達
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Hitachi Information and Control Systems Inc
Original Assignee
Hitachi Ltd
Hitachi Information and Control Systems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd, Hitachi Information and Control Systems Inc filed Critical Hitachi Ltd
Priority to JP2004285645A priority Critical patent/JP2005051811A/ja
Publication of JP2005051811A publication Critical patent/JP2005051811A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】
サブネット内の発生帯域情報に基づく動的な帯域制御を可能とする。
【解決手段】
ネットワーク1にそれぞれ通信アプリケーションプログラム27で動作する複数のノード2が接続されたネットワークシステムにおいて、ノード2のそれぞれが、通信帯域を制御するために必要な通信属性を通信アプリケーションプログラム27から取得する送信レート制御モジュール25と、取得された通信属性を記憶する帯域情報管理テーブル26と、前記自ノードの帯域情報をネットワークに接続された他のノード全部に配信する帯域情報送信モジュール24と、他ノードの帯域情報送信モジュール24により配信された帯域情報を受信して帯域情報管理テーブル26に記憶する帯域情報受信モジュール23とを有し、送信レート制御モジュール25は、帯域情報管理テーブル26に記憶された帯域情報に基づき現在の帯域量を求めて帯域制御する。
【選択図】図2

Description

この発明は、ネットワークシステムとその通信帯域制御方法に係り、特に通信プロトコルとしてIP(Internet Protocol)を用いるIPネットワークにおけるネットワークシステムとその通信帯域制御方法に関する。
インターネット・イントラネットの進展とパーソナルコンピュータをはじめとするハードウェアの高性能化により、インターネット,イントラネット上でのマルチメディアアプリケーションは当然のこととなってきている。
インターネット・イントラネットのネットワーク媒体としては主にイーサネット、上位プロトコルとしては、IP(Internet Protocol)が使用されている。
イーサネットおよびIPプロトコルは帯域共有型のネットワークであり、データの種別に依らず、常に最大の帯域を使用して通信が行われる、ベストエフォート(最大努力)のネットワークである。
従って、IPネットワークにおいては、WEBアプリケーションやマルチメディアアプリ―ケーションのトラフィックも、社内業務システムなどのようなミッションクリティカルな通信も区別なく対等なものとして扱われ、同一のネットワーク上の帯域を共有することになる。
この結果、ファイル転送により帯域が圧迫されて、ミッションクリティカルな業務アプリケーションのデータが遅延したり、WEBアプリケーションなどの通信データにより帯域が確保されず、音声など遅延時間の保証が必要なデータ転送にゆらぎが発生するなどの問題がある。
これらは、いずれもIPネットワークがアプリケーションや通信のデータ種別によらず、1つの共有帯域をベストエフォートで使用することにより発生する。
これらの対応策としては、通信品質の保証が必要なデータ転送用のネットワークセグメントとその他のネットワークセグメントを分離するなどして、十分な帯域を確保することにより解決することもできるが、追加の投資が必要となり現実には容易ではない。
上述の背景から、アプリケーションやデータ種別毎に使用する帯域制御することによりIPネットワークの帯域を効率よく使用する帯域制御技術のニーズが高まっている。
現在、帯域制御については以下の標準的な技術がある。
1.RSVP(Resource Reservation Protocol)
RSVPは、TCP/IPの上位プロトコルとして動作し、端末上のアプリケーションおよび、ルータに実装されるシグナリングのプロトコルである。End to Endの通信において、要求元の端末のアプリケーションから目的とする端末に対して、必要な通信帯域を予約するPATHと呼ばれるメッセージを発行する。PATHメッセージは、通常のメッセージと同様にルーティングされて目的の端末に送達される。このとき、PATHメッセージを中継する全てのルータが、要求された帯域を確保可能ならば、PATHメッセージを目的の端末まで転送し、帯域が確保できたことを表すRESVメッセージを要求の端末まで送り返す。確保できなければ、拒否のメッセージを要求した端末に送り返す。上記の動作により、要求元から目的の端末まで、経路上の全てのルータ上で帯域の確保を行う。
上記の通り、RSVPは、帯域予約のプロトコルであり、実装までは規定されていない。また、通信経路上のルータ装置で帯域の管理を行うため、要求端末と目的端末とが同一セグメント(サブネットワーク)上にある場合の帯域制御はできないものとなっている。そのため、RSVPを拡張した形で、SBM(Subnet Bandwidth Manager)と呼ばれるプロトコルも標準化されている。SBMでは、DSBM(Designated SBM) と呼ばれる、帯域管理サーバをサブネット内に実装する。端末のアプリケーションから送出されるPATHメッセージは、宛先がサブネット内ならば、DSBMに転送される。DSBMは、受け取ったPATHメッセージで要求されている帯域が確保可能か否かを判断し、応答である
RESVメッセージを返す。つまり、サブネット内の帯域管理をDSBMで行う方式となっている。
2.DiffServ(Differentiated Services)
DiffServは、優先制御型のプロトコルである。端末のアプリケーションでは、データの重要度に従って分類した優先度クラスに対応して、IPプロトコルヘッダ一部(DSフィールド)に優先度を埋め込み、ルータなどの中継装置が優先度を認識して、優先度の高いパケットを優先して転送する。
優先度を低く設定されたパケットはルータなどの中継装置内でバッファリングされるため、パケットが遅延するか、廃棄されてしまうが、バッファが大量のパケットであふれることのないように、TCP/IPのウィンドウサイズを変更するなどして、端末からの送信を低速にするなどのフロー制御も実施されている。
また、優先度の設定については、IEEE802.1pによりデータリンクレベル(Ethernet)での優先制御も可能としている。
ネットワークにおいて、効率的なデータ送信を行うには、その時点でのネットワークの帯域量に余裕があるときには、高い帯域量で送信し、余裕が少ないときは、帯域量を小さくして送信するように、送信するときのネットワークの帯域量に応じた帯域制御を行うことが望ましい。
DiffServ(IPプロトコルのDSフィールド使用、またはIEEE802.1pの優先度を使用)は、予めデータの優先度を定めておき、優先度の高いパケットを優先して転送するから、通信フロー毎に帯域使用量に基づいて帯域量(時間当りの送信データ量)をきめることが困難である。
一方、RSVPは、帯域予約の観点で設計されており、送信側ノードから受信側ノードまでの帯域確保の処理は実現されるものの、フロー毎の帯域情報(ここでいう帯域情報は、帯域制御のために必要な情報を意味する)は、ルータもしくはDSBMに集中して管理されることとなるから、サブネット内の帯域制御(通信量制御)に適用する場合、サブネット内にDSBMサーバを配置する必要がある。
サブネットワークの通信容量をできるだけ効率よく利用するには、サブネットワーク上にどのようなデータフローが発生しているか(ネットワークの帯域量)を把握し、通信品質を保証すべき通信と、品質を保証せず帯域の空きを使って通信するものを分離して管理,制御する必要がある。ルータなどの中継装置があれば、ルータを通過するパケットを監視することで、フロー毎の帯域情報を取得し、容易に現在の帯域量を把握できるが、すべてのデータパケットが通過するルータが設けられていないサブネット内の帯域制御に適用できる技術は知られていない。
そして、サブネット内では、全ての端末が同位であり、ネットワークを流れるパケットから帯域情報を取得するには、専用の端末にて全パケットを監視(キャプチャー)する必要がある。10Base5やリピータハブなどのサブネットが1つのセグメントで実現されていれば、全パケットの監視による帯域情報の取得も可能であるが、スイッチングハブなどでサブネットを複数のセグメントに分割したネットワークにおいては、セグメント内で閉じた通信は他のセグメントに転送しないというスイッチングハブの機能により、サブネット内の全パケット収集を1つの端末で実現することはできない。
通信品質を保証すべき通信の帯域量を高い精度で制御するには、前述のように、帯域量を把握することに加え、実際に帯域制御を実施しているときのネットワークを流れる帯域量との差異を極小化することも必要になってくる。
ネットワークを流れるパケットは、アプリケーションの通信データ(実効通信データ)と、回復プロトコルの再送データを含む各種プロトコル制御データに分類される。特に、後者は前者のオーバーヘッドとして必然的に発生するが、その量は、通信品質に大きく依存することが知られている。これは、例えばネットワークの通信品質の劣化によりデータの損失が発生し、その回復のための再送データが発生することからも明らかである。
従って、限られたネットワークの帯域をできるだけ効率よく利用するには、後者の特に回復プロトコルの再送データにより、実効通信データの帯域が圧迫されることがないように通信品質を制御することが必須となってくる。即ち、実際にネットワークを流れる帯域量が、実効通信データの帯域量に等しくなるように通信品質を制御することが必須であるといえる。
特に、無線LANやモバイル環境下では、通信品質が使用場所などに依存して低下したりするので、その時々の品質に応じた品質補正が必要になる。
本発明は上記に鑑みなされたもので、その目的は、サブネット内の帯域制御において、特別なハードウェアを用いることなく、サブネット内の発生帯域情報に基づく帯域制御を可能とすることにある。
さらに、本発明の他の目的は、通信品質が不均質で劣化するようなネットワーク環境においても、それに依存して発生する再送データを含む各種プロトコルの制御データの帯域量を、データの通信粒度や回復強度を変更するなどして調整し、データの実効通信帯域や品質補正を制御し、より高精度な帯域制御を可能とすることにある。
上記の目的を達成するには、サブネットの各ノードが、サブネット内の発生帯域情報を把握する必要がある。そのためには、各ノードが自ノードの帯域情報を採取して保持するとともにそれを他のノードすべてに送信し、各ノードは受信した他のノードの帯域情報を自ノードの帯域情報に併せて保持するようにすればよい。そうすれば、各ノードが、他のノードの帯域情報と自ノードの帯域情報を用いてその時点でのネットワークの帯域量がどのような数値になっているか、帯域量の内訳(例えば、通信品質を保証すべき通信と、品質を保証せず帯域の空きを使って通信するものの割合)がどうなっているかを把握できる。各ネットワークは、把握したネットワークの帯域量に基づいて、送信するデータの帯域量を制御すればよい。
本発明においては、ネットワークに接続された各ノードに、通信帯域を制御するために必要な通信属性を通信アプリケーションプログラムから取得する帯域情報取得手段を設け、取得した通信属性を自ノードの帯域情報として保持する帯域情報記憶手段を設けた。また、帯域情報記憶手段に保持された自ノードの帯域情報を他ノードすべてに送信する帯域情報送信手段と、他ノードから送信された帯域情報を受信して前記帯域情報記憶手段に格納する帯域情報受信手段を設けた。
さらに、帯域情報記憶手段に保持された自ノードおよび他ノードの帯域情報に基づいてその時点でのネットワークの帯域量を求め、求めた帯域量に基づいて送信するデータの帯域量を制御する帯域量計算手段を設けた。
すなわち、本発明は、前記課題を達成するために、ネットワークに複数のノードが接続されたネットワークシステムの通信帯域を制御する通信帯域制御方法において、前記複数のノードそれぞれが、通信帯域を制御するために必要な通信属性を通信アプリケーションプログラムから取得し、取得した通信属性を自ノードの帯域情報として記憶するとともにネットワークに接続された全てのノードに配信し、他ノードから配信された帯域情報を該他ノードの帯域情報として記憶し、前記記憶された自ノードの帯域情報と他ノードの帯域情報に基づいて現在の帯域量を求め、求められた帯域量をネットワークの帯域量とみなして帯域判定し、帯域制御することを特徴とする。
ここでいう通信属性はすなわち帯域情報であり、IPアドレス,ポート番号,帯域量,データ種別,動作アプリケーションの数とプロセスIDのリストなどをまとめていう。
さらに、本発明においては、ネットワーク通信環境が無線環境であったり、モバイル機器の使用場所に依存するなどして通信品質が不均質な場合にも高精度な帯域制御が可能なように、前記で求めた帯域量と実効通信データの帯域量が等しくなるように通信品質を調整可能とする通信品質補正手段を備えている。
すなわち、各ノードは、自ノードにおいて観測可能な通信データパケット量とその通信品質と通信品質を制御するために必要な通信品質属性を取得する通信品質取得手段と、前記取得した自ノードの通信データパケットから、アプリケーション通信データを通信する際に発生する再送データを含む各種プロトコル制御データが占める帯域量を除く、実効通信データの帯域量を前記取得した通信品質をもとに算出し、それが前記帯域量計算手段が求めた帯域量と等しくなるように前記取得した通信品質属性を決定する通信品質補正手段とを設けたものである。
また、通信品質属性を調整した結果得られる通信品質が、一定の水準に達しない場合には、通信品質が劣化しているものとみなして、前記所定の水準の通信品質が得られる実効通信帯域量を求め、帯域制御をするものである。
ここでいう通信品質属性は、アプリケーションプログラムの通信データを前記帯域量計算手段が求めた帯域量に従って送信する際の、データ通信粒度を決定するデータパケット長や通信タイミングなどの制御パラメータと、データ回復強度を決定する再送や誤り訂正処理の制御パラメータを含み、前記通信品質補正手段は、前記帯域量計算手段が求めた帯域量を実効通信データの帯域量として保証可能な、データの通信粒度と回復強度を決定し、通信品質を制御するものである。
上記構成によれば、通信アプリケーションプログラムの動作数を通信属性毎に取得してネットワークに接続されたすべてのノードに配信することにより、実際にLANのパケットを監視することなく、各ノードがそれぞれLAN内の帯域量を推定することが可能となる。
さらに、各ノードがそれぞれ上記算出した帯域量にしたがってデータ通信を行う場合に、自ノードで観測可能な、例えばTCP/IPプロトコルなどの通信データの入出力情報などから得られる、通信データパケット量,データ損失や誤り訂正情報などの通信品質をもとに、実効通信データの帯域量を算出し、それが帯域制御量に等しくなるように、通信データの品質を調整することが可能となる。
すなわち、決定した帯域量を遵守しながらも、データ通信粒度を調整したり、回復強度を変更するなどして、それに伴って発生する再送トラフィックを含む各種プロトコルの制御トラフィックの帯域量を調整することにより、一定の水準の通信品質をもち、また、上記推定した帯域量の精度を高めることが可能となる。
従って、各ノードは、当該ノードの帯域情報と配信された他ノードの帯域情報に基づいて全体の帯域量を高精度に把握することが可能となり、通信毎に、把握しているネットワーク全体の帯域量に基づいて帯域制御を行うことができる。
なお、サブネットがスイッチングハブなどで複数のセグメントに分割されている場合でも、自ノードの帯域情報をブロードキャストで他のノードに配信することにより、帯域情報をすべてのノードに配信することができる。
好ましくは、ネットワークにそれぞれ通信アプリケーションプログラムで動作する複数のノードが接続されたネットワークシステムにおいて、
前記複数のノードのそれぞれが、通信帯域を制御するために必要な通信属性を前記通信アプリケーションプログラムから取得する帯域情報取得手段と、前記帯域情報取得手段によって取得された通信属性を自ノードの帯域情報として記憶する帯域情報記憶手段と、前記自ノードの帯域情報をネットワークに接続された他のノード全部に配信する帯域情報配信手段と、他ノードの前記帯域情報配信手段により配信された帯域情報を受信して前記帯域情報記憶手段に他ノードの帯域情報として記憶する帯域情報受信手段と、前記帯域情報記憶手段に記憶された自ノードの帯域情報と他ノードの帯域情報に基づいて現在の帯域量を求める帯域量計算手段と、を有してなり、前記帯域量計算手段は、求めた帯域量をネットワークの帯域量とみなして帯域判定し、帯域制御するものであることを特徴とするネットワークシステム(ネットワークシステム(1))として構成した。
また、前記ネットワークシステム(1)において、
さらに、前記の各ノードは、自ノードにおいて観測可能な通信データパケット量とその通信品質と通信品質を制御するために必要な通信品質属性を取得する通信品質取得手段と、前記取得した自ノードの通信データパケットから、アプリケーション通信データを通信する際に発生する再送データを含む各種プロトコル制御データが占める帯域量を除く、実効通信データの帯域量を前記取得した通信品質をもとに算出し、該算出結果が前記帯域量計算手段が求めた帯域量と等しくなるように前記取得した通信品質属性を決定する通信品質補正手段とを有してなり、
前記通信品質補正手段は、前記帯域量計算手段が求めた帯域量を実効通信データの帯域量として保証可能な通信品質を決定し、通信品質を制御するものであることを特徴とするネットワークシステム(ネットワークシステム(2))として構成する。
また、ネットワークシステム(2)において、
前記通信品質属性は、アプリケーションプログラムの通信データを前記帯域量計算手段が求めた帯域量に従って送信する際の、データ通信粒度を決定するデータパケット長や通信タイミングなどの制御パラメータと、データ回復強度を決定する再送や誤り訂正処理の制御パラメータを含み、前記通信品質補正手段は、前記帯域量計算手段が求めた帯域量を実効通信データの帯域量として保証可能な、データの通信粒度と回復強度を決定し、通信品質を制御するものであることを特徴とするネットワークシステムとして構成した。
また、前記ネットワークシステム(2)において、
前記通信品質補正手段は、前記通信品質取得手段より取得した通信品質属性を調整した結果から得られる通信品質が、一定の水準に達しない場合には、通信品質が劣化しているものとみなして、前記所定の水準の通信品質が得られる実効通信帯域量を求め、帯域制御するものであることを特徴とするネットワークシステムとして構成した。
また、ネットワークに複数のノードが接続されたネットワークシステムの通信帯域を制御する通信帯域制御方法において、
前記複数のノードそれぞれが、通信帯域を制御するために必要な通信属性を通信アプリケーションプログラムから取得し、取得した通信属性を自ノードの帯域情報として記憶するとともにネットワークに接続された全てのノードに配信し、他ノードから配信された帯域情報を該他ノードの帯域情報として記憶し、前記記憶された自ノードの帯域情報と他ノードの帯域情報に基づいて現在の帯域量を求め、求められた帯域量をネットワークの帯域量とみなして帯域判定し、帯域制御すること、を特徴とする通信帯域制御方法として構成した(通信帯域制御方法(5))。
また、前記通信帯域制御方法(5)において、
さらに、前記の各ノードは、自ノードにおいて観測可能な通信データパケット量とその通信品質と通信品質を制御するために必要な通信品質属性を取得し、前記取得した自ノードの通信データパケットから、アプリケーション通信データを通信する際に発生する再送データを含む各種プロトコル制御データが占める帯域量を除く、実効通信データの帯域量を前記取得した通信品質をもとに算出し、該算出結果が前記帯域量と等しくなるように前記取得した通信品質属性を決定して通信品質を制御することを特徴とする通信帯域制御方法として構成した(通信帯域制御方法(6))。
また、前記通信帯域制御方法(5)において、
前記通信品質属性は、アプリケーションプログラムの通信データを前記帯域量に従って送信する際の、データ通信粒度を決定するデータパケット長や通信タイミングなどの制御パラメータと、データ回復強度を決定する再送や誤り訂正処理の制御パラメータを含み、前記帯域量を実効通信データの帯域量として保証可能な、データの通信粒度と回復強度を決定し、通信品質を制御することを特徴とする通信帯域制御方法として構成した。
また、前記通信帯域制御方法(5)において、
前記取得した通信品質属性を調整した結果から得られる通信品質が、一定の水準に達しない場合には、通信品質が劣化しているものとみなして、前記所定の水準の通信品質が得られる実効通信帯域量を求め、帯域制御することを特徴とする通信帯域制御方法として構成した。
また、前記通信帯域制御方法(5)又は(6)において、
自ノードの帯域情報の他ノードへの配信をブロードキャスト通信により配信することを特徴とする帯域制御方法として構成した。
また、前記通信帯域制御方法(5)又は(6)において、
記憶された自ノードの帯域情報と他ノードの帯域情報に基づいて求められた帯域量から通信品質を保証すべき通信が発生したことを検出し、通信品質を保証しない通信の送信レートを減少させることにより通信品質を保証すべき通信の通信帯域を確保することを特徴とする通信帯域制御方法として構成した。
また、前記通信帯域制御方法(5)又は(6)において、
帯域情報としてアプリケーションプログラムを特定するための識別子を合わせて格納するように構成されていることを特徴とする通信帯域制御方法として構成した。
本発明によれば、サブネット内の帯域制御において、スイッチングハブなどのセグメントが複数に分離された形態のネットワークであっても、特別なハードウェアを用いることなく、サブネット内の発生帯域情報に基づいて通信ごとに送信可能帯域量を求めることが可能となるので、送信可能帯域量やデータの種別に応じた帯域制御が実現できる。
さらに、その通信品質が不均質で劣化するようなネットワーク環境においても、それに依存して発生する再送データを含む各種プロトコルの制御データの帯域量を、データの通信粒度や回復強度を変更するなどして調整することにより、データの実効通信帯域や品質補正が可能となるので、より高精度な帯域制御が実現できる。
以下、本発明の実施の形態を図面に従って詳細に説明する。
図1に、本発明の第一の実施の形態のシステム構成を示す。IPネットワーク1は、スイッチ機能を有する機器(スイッチングハブ3)で構成されており、複数のノード2がネットワーク1を介してIP通信を行うようになっている。
図2にIP通信を行っているノード2内の機能構成を示す。ノード2は、通信アプリケーションプログラム27と、擬似ソケットライブラリ30と、オペレーティングシステム28と、帯域情報管理テーブル26と、帯域情報送信モジュール24と、帯域情報受信モジュール23と、ネットワークインターフェースカード20と、を含んで形成されている。上記擬似ソケットライブラリ30,オペレーティングシステム28,帯域情報管理テーブル26,帯域情報送信モジュール24、及び帯域情報受信モジュール23は、いずれもソフトウェアで構成されている。
上記擬似ソケットライブラリ30と、帯域情報管理テーブル26と、帯域情報送信モジュール24と、帯域情報受信モジュール23が、本発明により新たに付加された部分である。
通信アプリケーションプログラム27は、データの送受信を行うプログラムである。
擬似ソケットライブラリ30は、通信アプリケーションプログラム27とオペレーティングシステム28及び帯域情報管理テーブル26に接続され、帯域情報取得手段と帯域量計算手段を兼ねた送信レート制御モジュール25と、さらには、通信品質取得手段と通信品質補正手段を兼ねた品質制御モジュール31を実装している。
擬似ソケットライブラリ30は、通信アプリケーションプログラム27からの送信内容を取得するために、オペレーティングシステム28に含まれるソケットライブラリ29とまったく同一のアプリケーションインターフェース(API)をもつが、この擬似ソケットライブラリ30は、ユーザの要求内容を横取り(フック)するのみで、その他の機能は全て、オペレーティングシステム28に含まれるソケットライブラリ29を呼び出すことにより実現している。前記送信レート制御モジュール25は、通信アプリケーションプログラム27からの送信パラメータを元に帯域情報を作成し、作成した帯域情報を帯域情報管理テーブル26に出力する。
また品質制御モジュール31は、前記送信レート制御モジュール25がソケットライブラリ29を呼び出す際の制御パラメータを前記オペレーティングシステム28などから得られる各種通信品質状況に応じて、決定する。
オペレーティングシステム28は、通信アプリケーションプログラム27と前記擬似ソケットライブラリ30に接続され、その機能として、ソケットライブラリ29に加え、
IPプロトコルを処理するためのIPプロトコル処理モジュール22と、ネットワークを制御するためのネットワーク制御ドライバ21が実装されている。オペレーティングシステム28はまた、ネットワークインターフェースカード20を介して前記ネットワーク1に接続されている。
帯域情報記憶手段である帯域情報管理テーブル26は、擬似ソケットライブラリ30,帯域情報送信モジュール24、及び帯域情報送信モジュール24に接続され、送信レート制御モジュール25から入力された帯域情報を格納する。また、帯域情報受信モジュール23から入力された他のノードの帯域情報を格納する。
帯域情報配信手段である帯域情報送信モジュール24は、前記帯域情報管理テーブル
26に接続されるとともに、オペレーティングシステム28,ネットワークインターフェースカード20を介して前記ネットワーク1に接続されている。帯域情報送信モジュール24は、帯域情報管理テーブル26に格納された自ノードの帯域情報をソケットライブラリ29を介してネットワーク1にブロードキャストする。送信レート制御モジュール25と帯域情報送信モジュール24の送信は、ほぼ同一タイミングでおこなわれる。
帯域情報受信手段である帯域情報受信モジュール23は、前記帯域情報管理テーブル
26に接続されるとともに、オペレーティングシステム28,ネットワークインターフェースカード20を介して前記ネットワーク1に接続している。帯域情報受信モジュール
23は、他のノードの帯域情報送信モジュール24が送信した帯域情報を受信し、帯域情報管理テーブル26に出力する。
ネットワークインターフェースカード20は、これらの構成をネットワーク1に接続してデータの送受信を行う。
図3に帯域情報管理テーブル26の構成の例を示す。帯域情報管理テーブル26は、自ノード用の情報を記憶する自ノードテーブル261と他ノード用の情報を記憶する他ノードテーブル262から構成される。他ノードテーブル262は、図示された自ノードテーブル261と構成は同一であり、他ノードの数に合わせてその数だけ設定される。帯域情報管理テーブル26には、通信データのフローならびにデータの種別を特定するための情報として、IPアドレス263,ポート番号264,帯域量265,種別266,動作アプリケーションの数267とプロセスIDのリスト268を記憶する。
IPアドレス(通信相手を指定するもの)263,ポート番号(通信内容を識別するもの)264,帯域量265,種別266はユーザの設定によりあらかじめ格納される値である。種別266は、IPアドレス263とポート番号264により特定される通信の帯域を確保することにより通信品質を保証することを指示する「QoS」か、ベストエフォートで通信するかを識別する「BE」が設定される。
動作アプリケーションの数267とプロセスIDのリスト268は、動的(通信毎)に送信レート制御モジュール25により設定される値であり、動作アプリケーションの数
267は、IPアドレス263とポート番号264により特定される通信を現在行っているプロセスの数であり、プロセスIDのリスト268はそのプロセスの識別子(番号)を格納する。
図4,図5,図6に、送信レート制御モジュール25の処理フローを示す。帯域量計算手段を兼ねている送信レート制御モジュール25は、擬似ソケットライブラリ30の関数として実装される。従って、処理自体は、通信アプリケーションプログラム27の要求に従って実行される。ソケットライブラリの関数としては、通信の開始時点で発行される図4の関数connect(2501),通信の終了時点で発行される図5の関数close(2505)、実際のデータ転送を行う図6の関数send(2509)がある。これら関数が、通信アプリケーションプログラム27から呼び出されることを利用して、関数connect(2501)ではデータ通信フローの発生を、関数close(2505)では通信データフローの消滅を、関数send(2509)ではデータ送信要求を検出して、帯域情報の取得と、帯域制御を行う。
関数connect(2501)では、connect(2501)で指定されたIPアドレスとポート番号をキーにして、帯域情報管理テーブル26の自ノードテーブル261に設定されたIPアドレス263とポート番号264を検索(処理2502)し、エントリが検索できたならば、そのエントリのアプリケーション数に1を加え、プロセスIDのリストに自プロセス(通信アプリケーションプログラム27のプロセス番号)を追加する(処理2503)。さらに、変更したテーブルを全てのノードに通知する必要があるため、帯域情報送信モジュール24にイベント(送信の指示)を送る(処理2504)。
関数close(2505)では、関数connect(2501)の処理とは逆に、検索(処理2502)にて見つけたエントリのアプリケーション数から1を減算し、プロセスIDのリストから自プロセス(通信アプリケーションプログラム27のプロセス番号)を削除し(処理2507)、帯域情報送信モジュール24にイベントを送る(処理2508)。
関数send(2509)では、実際に送信するデータのレートを調整する処理を行う。レートは、単位時間に許される最大データ量、つまり帯域量に従い、あるデータサイズ毎にディレイをすることによって、単位時間当たりのデータ量を調整する。送信可能帯域量は、種別がQoSの場合とBEの場合で異なり、考え方は以下の通りである。(1)QoSでは、設定された帯域量を送信可能帯域量として扱う(2)BEでは、BEとして割り当てられている帯域量からQoSとして使用されている帯域量を引いた帯域量を送信可能帯域量として扱う。
つまり以下のように計算する。
送信可能帯域量=BE設定帯域量/動作アプリケーションの数−QoS使用帯域量
BE設定帯域量=帯域情報管理テーブル26に設定された種別がBEの帯域量
QoS使用帯域量=QoS設定帯域量×動作アプリケーションの数
上記により、関数send(2509)では、種別がBEの場合には、配信された全てのノードの帯域情報管理テーブルから各々の通信パスに対する動作アプリケーションの数を求め(処理2510)、求めた動作アプリケーションの数に基づいて送信可能な帯域量を求め(処理2512)、種別がQoSの場合には、設定された帯域量を送信可能帯域量として処理する(処理2511)。求めた送信可能帯域量に従い、送信のレート、つまり送信頻度の調節を行う(処理2513)。このレート送信頻度などの具体的な調整は、後述の品質制御モジュール31にて実施している。詳細な方法は後述する。なお、図4〜図6は、TCP/IPベースの通信の処理を元にしているが、UDP/IPにおいては、関数
connect に相当する処理と関数sendに相当する処理を、関数sendtoに実装する方法を採っている。
図7に、帯域情報送信モジュール24の処理フローを示す。本モジュールは、起動されるとタイマー242および、送信レート制御モジュール25からの帯域情報送信要求イベント待ち(処理244)となる。つまり、タイマーによる周期と、通信アプリケーションプログラム27が通信を開始する場合の処理が行われる。タイマーによる周期実行を行うのは、自ノードテーブルの帯域情報(帯域情報管理テーブル)の送信をブロードキャストで行う(処理245)ため、メッセージが1回の送信にて送達しない可能性があり、そのリカバリのためである。
図8に、帯域情報受信モジュール23の処理フローを示す。本モジュールは、起動されると帯域情報受信待ち(処理232)となる。他ノードの帯域情報を受信すると、受信した内容をノード番号をインデックスとした帯域情報管理テーブル26にセットする。
上記実施の形態によれば、通信アプリケーションプログラムの動作数を通信属性毎に取得してネットワークに接続されたすべてのノードに配信することにより、実際にLANのパケットを監視することなく、各ノードがそれぞれLAN内の帯域量を推定することが可能となる。ここでいう通信属性はすなわち帯域情報であり、IPアドレス,ポート番号,帯域量,データ種別,動作アプリケーションの数とプロセスIDのリストなどをまとめていう。したがって、各ノードがそれぞれ通信毎に、その時点でのネットワーク帯域量に基づいて帯域制御することが可能となる。
なお、スイッチングハブなどで複数のセグメントに分割されたサブネットであっても、帯域情報をブロードキャストで他のノードに配信することで、各ノードが他のノードの帯域情報を入手することができる。
次に、本発明の第2の実施の形態を説明する。第2の実施の形態では、通信品質が不均質で劣化するようなネットワーク環境において、データ通信時の通信粒度や回復強度などを調整することにより、それに依存して発生する再送データを含むプロトコル制御データ量を変更し、高精度に帯域制御を実施可能とするものである。
図9に、品質制御モジュール31の処理フローを示す。本モジュールは、前記送信レート制御モジュール25が決定した、送信可能帯域量に従い、実効通信データ量がそれに等しくなるように、データ通信時の通信粒度や回復強度などを変更し、それに依存して発生する再送データを含むプロトコル制御データの帯域を変更するものである。
本モジュールは、起動されると、まずポリシーを参照し、規定のデフォルト制御パラメータや制御ポリシーを取得する(処理3101)。このポリシーは図示していないが、事前にそれを管理するノードで定義され、制御に先だって配布され、各ノードはそれに従って制御処理を実施するものである。
そして、ポリシーを取得した後、送信レート制御モジュール25が決定した送信可能帯域量をパラメータなどから取得し(処理3102)、まず規定のパラメータでソケットライブラリを呼び出し、送信する(処理3103)。例えば、帯域量が5Kバイト/秒で規定のパケットサイズが500バイトであれば、ディレイは100ミリ秒と決定される。そして、TCP/IPプロトコルの通信データの入出力情報などから得られる、通信データパケット量とデータ損失情報などの通信品質を観測する(処理3104)。なお、前記
(処理3104)では、他の通信品質属性として、例えば再送回数や時間間隔などのデータ回復強度のための制御パラメータをも同様に取得する。
そして、前記(処理3101)でポリシから取得した、通信品質水準と比較するなどして(処理3105)、その水準に達していれば、実効通信データの帯域量を算出し(処理3106)、前記(処理3102)で取得した、送信レート制御モジュール25が決定した送信可能帯域量と比較する(処理3107)。比較した結果が等しければ、前記(処理3103)と同様に規定のパラメータでソケットライブラリを呼び出し、送信する(処理3108)。
例えば、前記(処理3101)で取得したポリシーは、“品質水準は再送データの発生がN回以下、その品質に達している場合にはパケットサイズ1Kバイトで送信する”であるとするならば、前記(処理3108)では、ソケットライブラリを呼び出す際のパラメータを、パケットサイズは500バイトから1Kバイトに、ディレイは100ミリ秒を
200ミリ秒に変更し、送信する。即ち前記(処理3108)では、送信可能な帯域量5Kバイト/秒を遵守するように、データの粒度を変更しデータを送信する。
そして、残り通信データがあれば、前記(処理3108)の通信状況を観測すべく(処理3104)から繰り返し実施し、なくなれば処理を終了する(処理3109)。
さて、前記(処理3107)で、実効通信帯域量に等しくない場合には、実効通信データの帯域量の調整(処理3121)を実施することとなる。
例えば、前記(処理3101)で取得したポリシーは、“通信品質が一定水準以上でありながら帯域量が等しくない場合には、再送が成功する確率を向上させるためにパケットサイズ400バイトで送信する。データ回復強度の再送時間間隔を2倍の値に変更する”であるとするならば、前記(処理3121)では、ソケットライブラリを呼び出す際のパラメータを、パケットサイズは500バイトから400バイトに、ディレイは100ミリ秒を80ミリ秒に、さらに再送時間間隔を2倍の値に変更し、送信する。即ち前記(処理3121)では、送信可能な帯域量5Kバイト/秒を遵守するように、データの粒度と回復の強度を変更しデータを送信する。
そして前記と同様に、残り通信データがあれば、前記(処理3121)の通信状況を観測すべく(処理3104)から繰り返し実施し、なくなれば処理を終了する(処理3109)。
前記処理は通信品質が一定水準に達している場合の処理であるが、もし、前記(処理
3105)で、通信品質が一定水準に達しない場合には、規定の通信品質を満たす帯域量を求め(処理3120)前記、実効通信データの帯域量の調整(処理3121)を実施することとなる。
すなわち、この場合の状態は、不均質に品質状態が劣化し、送信レート制御モジュール25が決定した送信可能帯域量を、再送データが圧迫していると判断している状態であり、規定の水準の通信品質が得られる実効通信帯域量を求め、その帯域量に従ってデータを送信する。
例えば、前記(処理3101)で取得したポリシーは、“通信品質が再送データの発生がN回以下とならない場合には、誤り訂正処理を2倍の強度のものに、再送時間間隔を2倍の値に変更し、その結果得られる実効通信帯域量とする”であるとするならば、前記
(処理3121)では、ソケットライブラリを呼び出す際のパラメータを、誤り訂正処理を2倍の強度のものに、さらに再送時間間隔を2倍の値に変更し送信する。
そして前記と同様に、残り通信データがあれば、前記(処理3121)の通信結果状況を観測すべく(処理3104)から繰り返し実施することとなるが、この場合通信品質が一定水準に回復するまで求めた帯域量で送信する。
第2の実施の形態によれば、各ノードがそれぞれ算出した帯域量にしたがってデータ通信を行う場合に、自ノードで観測可能な、例えばTCP/IPプロトコルなどの通信データの入出力情報などから得られる、通信データパケット量と通信品質をもとに、実効通信データの帯域量を算出し、それが帯域制御量に等しくなるように、通信データの品質を調整することが可能となる。
すなわち、第1の実施の形態により決定した帯域量を遵守しながらも、データ通信粒度や回復強度を変更するなどして、それに依存して発生する再送データを含む各種プロトコル制御データの帯域量を調整することにより、一定の水準の通信品質をもち、また、上記帯域量の精度を高めることが可能となる。
本発明が適用されるネットワークの例を示すシステム全体構成図である。 本発明の実施の形態の構成を示すブロック図である。 図2に示す帯域情報管理テーブルの構成を示す図である。 図2に示す送信レート制御モジュールの動作を示すフローチャートである。 図2に示す送信レート制御モジュールの他の動作を示すフローチャートである。 図2に示す送信レート制御モジュールの他の動作を示すフローチャートである。 図2に示す帯域情報送信モジュールの動作を示すフローチャートである。 図2に示す帯域情報受信モジュールの動作を示すフローチャートである。 図2に示す品質制御モジュールの動作を示すフローチャートである。
符号の説明
1…ネットワーク、2…ノード、3…スイッチングハブ、20…ネットワークインターフェースカード、21…ネットワーク制御ドライバ、22…IPプロトコル処理モジュール、23…帯域情報受信モジュール、24…帯域情報送信モジュール、25…送信レート制御モジュール、26…帯域情報管理テーブル、27…通信アプリケーションプログラム、28…オペレーティングシステム、29…ソケットライブラリ、30…疑似ソケットライブラリ、261…自ノードテーブル、262…他ノードテーブル、263…IPアドレス、264…ポート番号、265…帯域量、266…種別、267…動作アプリケーションの数、268…動作アプリケーションのプロセスIDのリスト。

Claims (6)

  1. ネットワークにそれぞれ通信アプリケーションプログラムで動作する複数のノードが接続されたネットワークシステムにおいて、
    前記複数のノードのそれぞれが、通信帯域を制御するために必要な通信属性を前記通信アプリケーションプログラムから取得する帯域情報取得手段と、前記帯域情報取得手段によって取得された通信属性を自ノードの帯域情報として記憶する帯域情報記憶手段と、前記自ノードの帯域情報をネットワークに接続された他のノード全部に配信する帯域情報配信手段と、他ノードの前記帯域情報配信手段により配信された帯域情報を受信して前記帯域情報記憶手段に他ノードの帯域情報として記憶する帯域情報受信手段と、前記帯域情報記憶手段に記憶された自ノードの帯域情報と他ノードの帯域情報に基づいて現在の帯域量を求める帯域量計算手段と、を有してなり、前記帯域量計算手段は、求めた帯域量をネットワークの帯域量とみなして帯域判定し、帯域制御するものであることを特徴とするネットワークシステム。
  2. 請求項1記載のネットワークシステムにおいて、
    通信品質属性として、アプリケーションプログラムの通信データを前記帯域量計算手段が求めた帯域量に従って送信する際の、データ通信粒度を決定するデータパケット長や通信タイミングなどの制御パラメータと、データ回復強度を決定する再送や誤り訂正処理の制御パラメータを含み、前記帯域量計算手段が求めた帯域量を実効通信データの帯域量として保証可能な、データの通信粒度と回復強度を決定し、通信品質を制御する通信品質補正手段を有することを特徴とするネットワークシステム。
  3. ネットワークに複数のノードが接続されたネットワークシステムの通信帯域を制御する通信帯域制御方法において、
    前記複数のノードそれぞれが、通信帯域を制御するために必要な通信属性を通信アプリケーションプログラムから取得し、取得した通信属性を自ノードの帯域情報として記憶するとともにネットワークに接続された全てのノードに配信し、他ノードから配信された帯域情報を該他ノードの帯域情報として記憶し、前記記憶された自ノードの帯域情報と他ノードの帯域情報に基づいて現在の帯域量を求め、求められた帯域量をネットワークの帯域量とみなして帯域判定し、帯域制御すること、を特徴とする通信帯域制御方法。
  4. 請求項3記載の通信帯域制御方法において、
    自ノードの帯域情報の他ノードへの配信をブロードキャスト通信により配信することを特徴とする帯域制御方法。
  5. 請求項3記載の通信帯域制御方法において、
    記憶された自ノードの帯域情報と他ノードの帯域情報に基づいて求められた帯域量から通信品質を保証すべき通信が発生したことを検出し、通信品質を保証しない通信の送信レートを減少させることにより通信品質を保証すべき通信の通信帯域を確保することを特徴とする通信帯域制御方法。
  6. 請求項3記載の通信帯域制御方法において、
    帯域情報としてアプリケーションプログラムを特定するための識別子を合わせて格納するように構成されていることを特徴とする通信帯域制御方法。
JP2004285645A 2000-07-25 2004-09-30 ネットワークシステムとその通信帯域制御方法 Pending JP2005051811A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004285645A JP2005051811A (ja) 2000-07-25 2004-09-30 ネットワークシステムとその通信帯域制御方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2000223665 2000-07-25
JP2004285645A JP2005051811A (ja) 2000-07-25 2004-09-30 ネットワークシステムとその通信帯域制御方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2001036296A Division JP3639792B2 (ja) 2000-07-25 2001-02-14 ネットワークシステムとその通信帯域制御方法

Publications (1)

Publication Number Publication Date
JP2005051811A true JP2005051811A (ja) 2005-02-24

Family

ID=34276977

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004285645A Pending JP2005051811A (ja) 2000-07-25 2004-09-30 ネットワークシステムとその通信帯域制御方法

Country Status (1)

Country Link
JP (1) JP2005051811A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007142880A (ja) * 2005-11-18 2007-06-07 Kyocera Corp データ再送制御方法、システム及びデータ再送制御装置
US11785053B2 (en) * 2019-04-04 2023-10-10 Cisco Technology, Inc. Systems and methods for determining secure network paths

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007142880A (ja) * 2005-11-18 2007-06-07 Kyocera Corp データ再送制御方法、システム及びデータ再送制御装置
JP4684084B2 (ja) * 2005-11-18 2011-05-18 京セラ株式会社 データ再送制御方法、システム及びデータ再送制御装置
US11785053B2 (en) * 2019-04-04 2023-10-10 Cisco Technology, Inc. Systems and methods for determining secure network paths

Similar Documents

Publication Publication Date Title
JP3639792B2 (ja) ネットワークシステムとその通信帯域制御方法
US20220417151A1 (en) Packet transmission system and method
JP6319608B2 (ja) 伝送制御方法、装置およびシステム
JP4796157B2 (ja) ネットワーク通信における資源配分を実施するためのシステム及び方法
KR101021566B1 (ko) 우선 순위와 예약 대역폭 프로토콜을 활용하여 네트워크에서비스 품질(QoS)을 제공하는 메커니즘
US20070008884A1 (en) Immediate ready implementation of virtually congestion free guarantedd service capable network
Oh et al. Constraint-based proactive scheduling for MPTCP in wireless networks
KR20090054528A (ko) 사용자를 위한 서비스 품질 관리 방법 및 이를 수행하기위한 시스템
US20050254420A1 (en) Method for calculating a transmission window size
CN108234314B (zh) 业务调度方法和装置
JP2022545179A (ja) データパケット通信を管理するためのシステムおよび方法
JP2018511275A (ja) Tcpトンネル及びネイティブtcp情報に基づくバンドリングシナリオにおけるパケットのスケジューリングのための方法及びシステム
CN112099871B (zh) 一种服务质量配置方法及装置
JP2007013449A (ja) シェーパー制御方法、データ通信システム、ネットワークインタフェース装置及びネットワーク中継装置
US7499436B2 (en) Mobile communication system using resource reservation protocol
KR100653454B1 (ko) 홈네트워크 환경에서 서비스 별 서비스품질 보장을 위한동적 트래픽 관리 장치 및 그 방법
CN112235833B (zh) 数据流参数动态配置方法、会话管理功能实体
JP2005051811A (ja) ネットワークシステムとその通信帯域制御方法
KR20030031898A (ko) 기지국 프로세서에서의 무선 채널 할당
US12034558B2 (en) Content distribution system, multicast unicast / multicast multicast converter, multicast unicast converter, content distribution method and content distribution program
JP2004343462A (ja) ネットワーク計測制御システム
US20070109969A1 (en) Method of ensuring the quality of service in a network
JPH11331257A (ja) 異ネットワーク間接続方法およびルータ装置
JP4260613B2 (ja) 通信システム及び端末
CN112714071B (zh) 一种数据发送方法及装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060301

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20060512

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060512

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070921

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071016

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071213

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080603