(57)【特許請求の範囲】
【請求項１】
複数のクライアントと、サーバとを備え、このサーバとこの複数のクライアントとを接続するＡＴＭスイッチとを備えたＡＴＭ通信網において、
前記クライアントは、前記サーバに向かう一連のセルの先頭にＯＡＭ（Ｏｐｅｒａｔｉｏｎ  Ａｎｄ  Ｍａｉｎｔｅｎａｎｃｅ）セルを付与する手段と、自身が送受信可能なレート情報を前記ＯＡＭセルに書き込む手段とを備え、
前記ＡＴＭスイッチは、前記一連のセルが通過するルートの残余帯域を管理する手段と、前記一連のセルが一時蓄積されるバッファの現在のキュー長を監視する手段と、この残余帯域を管理する手段およびこの現在のキュー長を監視する手段により得られた残余帯域の値および現在のキュー長および前記ＯＡＭセルに書き込まれたレート情報にしたがって輻輳を発生させずに前記サーバから前記クライアントに向けて一連のセルを転送できる帯域を推定する手段と、前記サーバから前記クライアントに向けて転送される一連のセルを一時蓄積する手段と、前記推定する手段により推定された帯域が所定の値よりも小さいときには前記一時蓄積する手段にセルを一時蓄積することにより新たに生じる仮想空帯域を前記推定された帯域に加算して前記推定された帯域を更新する手段と、前記推定された帯域または前記更新する手段により更新された帯域の情報を前記ＯＡＭセルに書き込む手段と
を備えたことを特徴とするＡＴＭ通信網。
【請求項２】
前記一時蓄積する手段は、当該一時蓄積する手段に蓄積されたセルをその到着帯域よりも小さい帯域により読み出す手段を備えた請求項１記載のＡＴＭ通信網。
【請求項３】
前記サーバは、前記ＯＡＭセルに書き込まれた前記推定された帯域または前記更新する手段により更新された帯域の情報を読み取る手段と、この推定された帯域または前記更新する手段により更新された帯域の情報および前記クライアントから要求されたデータのサイズ情報にしたがって輻輳を発生させずにクライアントにセルを転送するための送信レートを設定する手段と、一連のセルの先頭と最後尾にＯＡＭセルを付与する手段と、この先頭および最後尾のＯＡＭセルに前記送信レートの情報を書き込む手段とを備えた請求項１記載のＡＴＭ通信網。
【請求項４】
前記ＡＴＭスイッチは、サーバからクライアントに向かう一連のセルの先頭ＯＡＭセルを受信する手段と、このＯＡＭセルに書き込まれた前記送信レートの情報を読み取る手段と、この読み取る手段により読み取られた前記送信レートの情報にしたがって帯域を確保あるいは前記一時蓄積する手段にセルを蓄積する手段と、最後尾ＯＡＭセルを受信する手段と、このＯＡＭセルに書き込まれた前記送信レートの情報を読み取る手段と、帯域を確保している場合にはこの読み取る手段により読み取られた前記送信レートの情報にしたがってその帯域を解放する手段とを備えた請求項３記載のＡＴＭ通信網。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はＡＴＭ（Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｔｒａｎｓｆｅｒ  Ｍｏｄｅ）に利用する。本発明はＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）トラヒックをＡＴＭ通信網上で効率よく転送するために利用する。
【０００２】
【従来の技術】
従来のクライアント・サーバモデルを図８を参照して説明する。図８は従来のクライアント・サーバモデルの構成例を示す図である。クライアント３０−１〜３０−３（以下、単にクライアント３０と記す）からサーバ２０への通信とサーバ２０からクライアント３０ヘの通信は、クライアント３０からサーバ２０への要求、そして、それに対するサーバ２０からクライアント３０への応答というように互いに密接した関係にあるという特徴を有する。
【０００３】
また、図９はクライアント・サーバモデルにおける情報の流れを示す図であるが、図９に示すように、サーバ２０からクライアント３０への通信は、そのデータ量がクライアント３０からサーバ２０へのデータ量に比べて著しく多いため、輻輳を発生しやすいという特徴がある。このようなトラヒックをクライアント・サーバタイプのトラヒックという。
【０００４】
【発明が解決しようとする課題】
このようなクライアント・サーバモデルに対し、従来のＡＴＭ通信網では、クライアントとサーバとの間の通信を互いに全く独立なものと考えてきた。そのため、クライアント・サーバモデルにおけるクライアント・サーバタイプのトラヒックの特徴を利用したＡＴＭ通信網は全く提案されていない。
【０００５】
すなわち、従来のＡＴＭ通信網では、サーバからクライアントへの通信を開始する際に、網内の輻輳状態の情報が何もないので、輻輳を発生させたり、冗長な制御、例えば、輻輳が起こらないような低いレートで送信を開始したり、または帯域を確保するために１ＲＴＴ（Ｒｏｕｎｄ  Ｔｒｉｐ  Ｔｉｍｅ）時間、送信を開始するのを待つなどの制御を行い、効率の悪い通信を行っている。
【０００６】
本発明は、このような背景に行われたものであって、クライアント・サーバモデルの特徴を利用した制御を行うことができるＡＴＭ通信網を提供することを目的とする。本発明は、クライアント・サーバタイプのトラヒックにおける輻輳を発生させることなく効率よくセルの転送を行うことができるＡＴＭ通信網を提供することを目的とする。本発明は、複数のリンクを経由するコネクションでボトルネックにより長時間サーバのポートが保留されることのないＡＴＭ通信網を提供することを目的とする。
【０００７】
【課題を解決するための手段】
本願出願人は、特願平９−３２６４７６号（本願出願時に未公開、以下、先願という）の「ＡＴＭ通信網」により、クライアント・サーバモデルの特徴を利用し、輻輳を発生させることなく、効率よくデータを転送する技術を提案している。しかし、先願では、サーバからクライアントに向けて複数のリンクを経由してセルを転送する際に、その経由する複数のリンクの中で、帯域の最も小さいリンクに配慮してセルの送出レートを決定していた。したがって、サーバのポートは小さい帯域で長時間保留されることもあった。
【０００８】
本願発明は、この点についてさらに配慮したものであり、先願技術とは、サーバとクライアントとの間にバッファを設け、実際の空帯域が小さい場合には、そのバッファにセルを一時蓄積することにより発生する仮想的な空帯域を実際の空帯域に加算することにより、所定の値よりも小さい帯域によりセルが転送されることを回避することができる。したがって、サーバとバッファとの間、あるいは、バッファ間またはバッファとクライアントとの間は、所定の値以上の帯域によりセルを転送することができる。これにより、サーバのポートが小さい帯域で長時間保留されるといった事態を回避することができる。これにより、最も転送の効率が高く、かつ、ＱｏＳのよいセル転送を実現することができる。
【０００９】
すなわち、本発明は、複数のクライアントと、サーバとを備え、このサーバとこの複数のクライアントとを接続するＡＴＭスイッチとを備えたＡＴＭ通信網である。
【００１０】
ここで、本発明の特徴とするところは、前記クライアントは、前記サーバに向かう一連のセルの先頭にＯＡＭセルを付与する手段と、自身が送受信可能なレート情報を前記ＯＡＭセルに書き込む手段とを備え、前記ＡＴＭスイッチは、前記一連のセルが通過するルートの残余帯域を管理する手段と、前記一連のセルが一時蓄積されるバッファの現在のキュー長を監視する手段と、この残余帯域を管理する手段およびこの現在のキュー長を監視する手段により得られた残余帯域の値および現在のキュー長および前記ＯＡＭセルに書き込まれたレート情報にしたがって輻輳を発生させずに前記サーバから前記クライアントに向けて一連のセルを転送できる帯域を推定する手段と、前記サーバから前記クライアントに向けて転送されるセルを一時蓄積する手段と、前記推定する手段により推定された帯域が所定の値よりも小さいときには前記一時蓄積する手段にセルを一時蓄積することにより新たに生じる仮想空帯域を前記推定された帯域に加算して前記推定された帯域を更新する手段と、前記推定された帯域または前記更新する手段により更新された帯域の情報を前記ＯＡＭセルに書き込む手段とを備えたところにある。
【００１１】
これにより、所定の値よりも小さい帯域でサーバとクライアントとの間のセル転送が行われることを回避することができるので、サーバのポートが小さい帯域で長時間保留されることを回避することができる。
【００１２】
前記一時蓄積する手段は、当該一時蓄積する手段に蓄積されたセルをその到着帯域よりも小さい帯域により読み出す手段を備えることが望ましい。
【００１３】
これにより、前記一時蓄積する手段に蓄積されたセルを、実際にセルを転送可能な帯域に合わせて送出することができる。
【００１４】
前記サーバは、前記ＯＡＭセルに書き込まれた前記推定された帯域または前記更新する手段により更新された帯域の情報を読み取る手段と、この推定された帯域または前記更新する手段により更新された帯域の情報および前記クライアントから要求されたデータのサイズ情報にしたがって輻輳を発生させずにクライアントにセルを転送するための送信レートを設定する手段と、一連のセルの先頭と最後尾にＯＡＭセルを付与する手段と、この先頭および最後尾のＯＡＭセルに前記送信レートの情報を書き込む手段とを備えることが望ましく、さらに、前記ＡＴＭスイッチは、サーバからクライアントに向かう一連のセルの先頭ＯＡＭセルを受信する手段と、このＯＡＭセルに書き込まれた前記送信レートの情報を読み取る手段と、この読み取る手段により読み取られた前記送信レートの情報にしたがって帯域を確保あるいは前記一時蓄積する手段にセルを蓄積する手段と、最後尾ＯＡＭセルを受信する手段と、このＯＡＭセルに書き込まれた前記送信レートの情報を読み取る手段と、帯域を確保している場合にはこの読み取る手段により読み取られた前記送信レートの情報にしたがってその帯域を解放する手段とを備えることが望ましい。
【００１５】
これにより、ＡＴＭスイッチは、サーバからクライアントに向かうセルの先頭に付与されたＯＡＭセルに書き込まれた送信レートの情報にしたがって帯域を確保し、さらに、セルの最後尾のＯＡＭセルに書き込まれた送信レート情報にしたがって確保した帯域を解放することにより、セルの通過中だけ必要な帯域を確保することができるので、帯域の有効利用を図ることができる。
【００１６】
【発明の実施の形態】
本発明実施例を図１ないし図７を参照して説明する。図１は本発明実施例の全体構成を示す図である。図２は本発明実施例のＡＴＭスイッチの要部ブロック構成図である。図３は本発明実施例のクライアントからサーバに向かうＯＡＭセルの構成を示す図である。図４は本発明実施例のＡＴＭスイッチの動作を示すフローチャートである。図５は本発明実施例のサーバの要部ブロック構成図である。図６は本発明実施例のサーバの動作を示すフローチャートである。図７は本発明実施例のサーバからクライアントに向かうＯＡＭセルの構成を示す図である。
【００１７】
本発明は、図１に示すように、クライアント３０と、サーバ２０とを備え、このサーバ２０とこのクライアント３０とを接続するＡＴＭスイッチ１０−１〜１０−５とを備えたＡＴＭ通信網である。
【００１８】
ここで、本発明の特徴とするところは、クライアント３０は、サーバ２０に向かう一連のセルの先頭にＯＡＭセルを付与して自身が送受信可能なレート情報をそのＯＡＭセルに書き込み、ＡＴＭスイッチ１０−１〜１０−５は、図２に示すように、前記一連のセルが通過するルートの残余帯域を管理する残余帯域管理部３と、前記一連のセルが一時蓄積されるバッファ（図示せず）の現在のキュー長を監視するキュー長監視部２と、この残余帯域管理部３およびこのキュー長監視部２により得られた残余帯域の値および現在のキュー長および前記ＯＡＭセルに書き込まれたレート情報にしたがって輻輳を発生させずにサーバ２０からクライアント３０に向けて一連のセルを転送できる帯域を推定する制御部４と、サーバ２０からクライアント３０に向けて転送されるセルを一時蓄積するバッファ８とを備え、制御部４は、推定された帯域が所定の値よりも小さいときにはバッファ８にセルを一時蓄積することにより新たに生じる仮想帯域を前記推定された帯域に加算して前記推定された帯域を更新し、情報書き込み部５は、前記推定された帯域または前記更新された帯域の情報を前記ＯＡＭセルに書き込むところにある。
【００１９】
バッファ８は、当該バッファ８に蓄積されたセルをその到着帯域よりも小さい帯域により読み出す速度変換を行う。
【００２０】
サーバ２０は、図５に示すように、前記ＯＡＭセルに書き込まれた前記推定された帯域または前記更新された帯域の情報を読み取る情報読み取り部１２と、この推定された帯域または前記更新された帯域の情報およびクライアント３０から要求されたデータのサイズ情報にしたがって輻輳を発生させずにクライアント３０にセルを転送するための送信レートを設定する送信データサイズ管理部１５および判定部１３と、一連のセルの先頭と最後尾にＯＡＭセルを付与し、この先頭および最後尾のＯＡＭセルに前記送信レートの情報を書き込む送信部１４とを備える。
【００２１】
さらに、ＡＴＭスイッチ１０−１〜１０−５は、図２に示すように、サーバ２０からクライアント３０に向かう一連のセルの先頭ＯＡＭセルおよび最後尾ＯＡＭセルを受信してこのＯＡＭセルに書き込まれた前記送信レートの情報を読み取るセル識別部６と、このセル識別部６により先頭ＯＡＭセルから読み取られた前記送信レートの情報にしたがって帯域を確保あるいはバッファ８にセルを蓄積する帯域確保部７とを備え、セル識別部６が最後尾ＯＡＭセルを受信すると、帯域確保部７は、帯域を確保している場合にはこの読み取られた前記送信レートの情報にしたがってその帯域を解放する。
【００２２】
次に、本発明実施例の動作を説明する。図９を参照して既に説明したように、クライアント・サーバタイプのトラヒックの特徴は、クライアントからサーバヘの要求に対し、サーバはクライアントに応答を返すというように、クライアントからサーバへの通信とサーバからクライアントへの通信は常に一対になっている。このとき、サーバからクライアントへの送信データ量は、クライアントからサーバへの送信データ量に比べて著しく多い。そのため、網はサーバからクライアントヘの通信によって輻輳になる可能性が高い。つまり、ＡＴＭスイッチがクライアントからサーバへのデータを受信したならば、その後、サーバからクライアントへのデータも受信するということである。
【００２３】
よって、ＡＴＭスイッチがクライアントからサーバヘのデータを受信したときに、それに網内の輻輳情報を付与し、サーバがその情報を利用してデータを送信するならば、サーバからクライアントヘの通信が輻輳を発生させる可能性を低く抑えることができ、網を効率よく運用できるようになる。
【００２４】
まず、図１に示すクライアント３０からサーバ２０へデータを送信する場合には、図３に示すように、通常のデータの最初にＯＡＭセルを付与する。そのＯＡＭセルには、それに続くトラヒックがクライアント・サーバタイプのトラヒックであり、かつそれはクライアント３０からサーバ２０への通信であることを示す識別子ＣＬＩＥＮＴと、初期値としてクライアント３０が送受信可能なレートの情報を含む帯域情報が含まれる。
【００２５】
次にこのＯＡＭセルがＡＴＭスイッチ１０−１に到着したならば、図２に示すセル識別部１が、そのセルをＯＡＭセルであると判断し、含まれている識別子ＣＬＩＥＮＴを読み取って、それに続くデータがクライアント・サーバタイプのトラヒックであり、かつそれはクライアント３０からサーバ２０への通信であると判断する。そして、制御部４は、ＯＡＭセルに書き込まれている帯域情報と、逆方向のサーバ２０からクライアント３０ヘの一連のセルが通過するルートの残余帯域の値と、この一連のセルが一時蓄積されるバッファ（図示せず）におけるキュー長の値とを、それぞれ、クライアント３０からサーバ２０に向かう一連のセルが通過するルートの残余帯域を管理している残余帯域管理部３およびこの一連のセルが一時蓄積されるバッファ（図示せず）のキュー長を監視しているキュー長監視部２の値を参照することにより推定し、輻輳を発生させずにサーバ２０からクライアント３０に向けて一連のセルを転送できる帯域の情報を算出する。制御部４では、図４に示すように、現在のＯＡＭセル中に書き込まれた帯域が当該ノード（ＡＴＭスイッチ１０−１）の空帯域よりも小さい場合には（Ｓ１）、上流ノード（ＡＴＭスイッチ１０−２）にＯＡＭセルを送る（Ｓ２）。また、現在のＯＡＭセル中に書き込まれた帯域が当該ノード（ＡＴＭスイッチ１０−１）の空帯域よりも大きく、このときの帯域があるしきい値Ｂｔｈよりも小さいときには（Ｓ１）、当該ＡＴＭスイッチ１０−１で下り方向のセルをバッファ８にバッファリングすることにより、仮想的に下り方向の空帯域を増加させる。このようにして得られた空帯域により、当該ＡＴＭスイッチ１０−１における空帯域情報が算出される。情報書き込み部５では、算出した値とＯＡＭセルの帯域情報に含まれる値とを比較し、算出した値の方が小さいならば、その値をＯＡＭセルの帯域情報に書き込み転送する（Ｓ３）。
【００２６】
サーバ２０では、図５に示すセル識別部１１が、そのセルをＯＡＭセルであると判断し、含まれている識別子ＣＬＩＥＮＴを読みとって、それに続くデータがクライアント・サーバタイプのトラヒックであり、かつそれはクライアント３０からサーバ２０ヘの通信であると判断する。そして、ＯＡＭセルに書き込まれている帯域情報を情報読み取り部１２で読み取り、クライアント３０に要求されたデータのサイズを送信データサイズ管理部１５で調べ、それをあるあらかじめ設定した時間Ｔで割った値Ｃ（セル／Ｓ）を判定部１３に送る。判定部１３では、図６に示すようなアルゴリズムで送信レートを決定し、そのレートで送信を開始する。
【００２７】
図６に示す送信レート決定アルゴリズムでは、ＯＡＭセルに書き込まれていた値がＣ（要求されたデータサイズ（ｃｅｌｌ）／ある時間Ｔ（ｓｅｃｏｎｄ））以上であれば（Ｓ４）、送信レートをα×Ｃ（ただし、０＜α≦１）とする（Ｓ５）。ＯＡＭセルに書き込まれていた値がＣ未満であり、かつ、前記下限値ＬＢ以上であれば（Ｓ６）、送信レートをα×（ＯＡＭセルに書き込まれていた値）とする（Ｓ７）。ＯＡＭセルに書き込まれていた値がＣ未満であり、かつ、前記下限値ＬＢ未満であればデータを送信しない（Ｓ８）。
【００２８】
図７に示すように、送信データの最初にＯＡＭセルを付与し、そのＯＡＭセルには、それに続くトラヒックがクライアント・サーバタイプのトラヒックであり、かつそれはサーバ２０からクライアント３０への通信であることを示す識別子ＳＥＲＶＥＲ１と、送信レートを情報として保持する帯域情報が含まれる。また、送信データの最後にも、ＯＡＭセルが付与され、そのＯＡＭセルには、それが送信データの最後である識別子ＳＥＲＶＥＲ２と、送信レートを情報として保持する帯域情報が含まれる。
【００２９】
次に識別子ＳＥＲＶＥＲ１を持つＯＡＭセルがＡＴＭスイッチ１０に到着したならば、図２に示すセル識別部６が、そのセルをＯＡＭセルであると判断し、含まれている識別子ＳＥＲＶＥＲ１を読み取って、それに続くデータがクライアント・サーバタイプのトラヒックであり、かつそれはサーバ２０からクライアント３０への通信であると判断する。そして、そのＯＡＭセルに含まれている帯域情報に等しい帯域を帯域確保部７が確保する。このとき、実際に帯域が確保できない場合には、バッファ８にセルを一時蓄積することにより、仮想的に帯域を確保する。また、識別子ＳＥＲＶＥＲ２を持つＯＡＭセルがＡＴＭスイッチ１０に到着したときに、帯域確保部７が帯域を確保しているならば、帯域確保部７は、到着したＯＡＭセルの帯域情報に等しい値を確保している帯域から解放する。
【００３０】
図１の例では、クライアント３０は、自己が送受信可能なレートとして５０Ｍｂｐｓ（ＭｂｐｓはＭと図示）をＯＡＭセルに書き込んで、ＡＴＭスイッチ１０−１に転送する。ＡＴＭスイッチ１０−１では、ＯＡＭセルに書き込まれた５０Ｍｂｐｓのレート情報と、残余帯域管理部３およびキュー長監視部２の情報とにしたがって３０Ｍｂｐｓのレートを算出し、その旨をＯＡＭセルに書き込んでＡＴＭスイッチ１０−２に転送する。以下、同様にして、ＯＡＭセルが先頭に書き込まれたデータはサーバ２０に到達する。サーバ２０では、到着したＯＡＭセルに書き込まれていた情報にしたがってセルの転送帯域を算出する。
【００３１】
このとき、従来であれば、クライアント３０とサーバ２０との間に介在するリンクの中で、ボトルネックとなる最低の帯域である１０Ｍｂｐｓのリンクにしたがって、サーバ２０はセル転送帯域を１０Ｍｂｐｓ以下に決定せざるを得ないが、本発明では、ＡＴＭスイッチ１０−４に備えられたバッファ８に向け、サーバ２０は４０Ｍｂｐｓの転送帯域によりセルを転送することができる。したがって、サーバ２０はセル転送のためのポートを長時間にわたり保留することなく、セルの転送を速やかに完了することができる。
【００３２】
このとき、バッファ８にセルを一時蓄積することになったＡＴＭスイッチ１０−４および１０−２では、バッファ８を用いて速度変換を行うことにより、下流のリンクの帯域にセル転送帯域を適合させることができる。これにより、複数のリンクを経由する場合もボトルネックとなるリンクによりサーバのポートが長時間保留されることなく、円滑な通信を行うことができる。
【００３３】
【発明の効果】
以上説明したように、本発明によれば、クライアント・サーバモデルの特徴を利用したセル転送制御を行うことができる。すなわち、クライアント・サーバタイプのトラヒックにおける輻輳を発生させることなく効率よくセルの転送を行うことができる。特に、複数のリンクを経由するコネクションでもボトルネックにより長時間サーバのポートが保留されることのないＡＴＭ通信網を実現することができる。
【図面の簡単な説明】
【図１】本発明実施例の全体構成を示す図。
【図２】本発明実施例のＡＴＭスイッチの要部ブロック構成図。
【図３】本発明実施例のクライアントからサーバに向かうＯＡＭセルの構成を示す図。
【図４】本発明実施例のＡＴＭスイッチの動作を示すフローチャート。
【図５】本発明実施例のサーバの要部ブロック構成図。
【図６】本発明実施例のサーバの動作を示すフローチャート。
【図７】本発明実施例のサーバからクライアントに向かうＯＡＭセルの構成を示す図。
【図８】クライアント・サーバモデルの通信網を示す図。
【図９】クライアント・サーバタイプのトラヒックを示す図。
【符号の説明】
１、６、１１  セル識別部
２  キュー長監視部
３  残余帯域管理部
４  制御部
５  情報書き込み部
６  セル識別部
７  帯域確保部
８  バッファ
１０、１０−１〜１０−５  ＡＴＭスイッチ
１２  情報読み取り部
１３  判定部
１４  送信部
１５  送信データサイズ管理部
２０  サーバ
３０、３０−１〜３０−３  クライアント
【図１】
0003556520.tif 000002
【図２】
0003556520.tif 000003
【図３】
0003556520.tif 000004
【図４】
0003556520.tif 000005
【図５】
0003556520.tif 000006
【図６】
0003556520.tif 000007
【図７】
0003556520.tif 000008
【図８】
0003556520.tif 000009
【図９】
0003556520.tif 000010