JP4099108B2 - ネットワーク及びサーバの負荷低減ルータ - Google Patents
ネットワーク及びサーバの負荷低減ルータ Download PDFInfo
- Publication number
- JP4099108B2 JP4099108B2 JP2003164770A JP2003164770A JP4099108B2 JP 4099108 B2 JP4099108 B2 JP 4099108B2 JP 2003164770 A JP2003164770 A JP 2003164770A JP 2003164770 A JP2003164770 A JP 2003164770A JP 4099108 B2 JP4099108 B2 JP 4099108B2
- Authority
- JP
- Japan
- Prior art keywords
- server
- congestion
- router
- client
- packet
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Description
【発明の属する技術分野】
本発明はネットワーク及びサーバの負荷低減ルータに関し、更に詳しくは、インターネット、イントラネット上に設置されたクライアントサーバ型サービスの利用に際し、サーバの輻輳によりサーバへのアクセスが遅延するような状況において、ユーザがサーバへの不用意なアクセスリトライを行なうことによるネットワークの輻輳を避けると共に、サーバの負荷を軽減し、サーバ輻輳状態を早期に復旧させるルータに関する。
【0002】
【従来の技術】
ルータ(router)とは、ネットワークパケットをネットワーク層でルーティングする装置のことである。データリンク層では隣接ノード間若しくは同一セグメント上でしかデータの伝達ができないが、ルータはデータリンク層でのデータ転送機能を組み合わせて、ネットワーク上のあらゆるノード間同士でのデータ転送を担当する。ルータは、通常、ルーティングできるプロトコルが固定的に決まっている。図28はルータの概念図である。図において、NW1〜NW3はネットワーク、C1〜C3は各ネットワーク間を接続する回線、R1〜R3は各回線C1〜C3に接続されるルータである。ルータR1〜R3と回線C1〜C3の間には回線インタフェースINTが設けられている。ルータR1〜R3は、ネットワークを結ぶため、複数の回線インタフェースINTを持っており、回線インタフェースINTから受信したパケットを宛先に応じて、適切な回線C1〜C3へ出力する。
【0003】
図29は、従来のルータの概念を示す図である。このルータは、クライアントとサーバの間に配置され、クライアントとサーバ相互間のデータの送受信を制御する機能を持つ。図において、1はLANフレームを受信するLANフレーム受信部、2は該LANフレーム受信部1の出力を受けて帯域制御や迂回経路を設定するトラフィックエンジニアリング制御部、3は該トラフィックエンジニアリング制御部2の出力を受けてルーティング処理を行なうルーティング処理部、4は該ルーティング処理部3の出力を受けてLANフレームを送信するLANフレーム送信部である。
【0004】
図30はLANフレーム受信部、LANフレーム送信部、ルーティング処理部の説明図である。図28,図29と同一のものは、同一の符号を付して示す。回線インタフェースINTからのパケットをLANフレーム受信部1で受信する。この受信したパケットはルーティング処理部3に入る。該ルーティング処理部3は、ルータ間の制御メッセージのやりとりにてルーティング情報を交換しあい、「どの回線の先にどのような経路があるか」というルーティング情報を持っている。5はルーティング情報を記憶するルーティング情報データベースである。LANフレーム受信部1で受信したパケットは、ルーティング処理部3で宛先に応じた出側回線インタフェースINTを決定し、出側回線のLANフレーム送信部4へパケットを送信する。
【0005】
図31はトラフィックエンジニアリング制御部の説明図である。図28,図29と同一のものは、同一の符号を付して示す。通常のルータでは、ルーティング情報に従ってパケットを転送する。トラフィックエンジニアリング機能を備えたルータでは、例えばパケットの宛先アドレスに対する出力インタフェースが複数あるような場合、次のような制御を実施する。
・帯域を均等分散させるために、パケット毎に出力インタフェースを振り分ける。
・複数ある出力インタフェース候補の中から、特定のインタフェースのみに出力する。
・出力するインタフェースの帯域を制御し、各インタフェースを指定した分の帯域だけ使用するように出力インタフェースの振り分けを制御する。トラフィックエンジニアリング制御部2の上記のような動作は、コマンド入力により設定される。以降、ルータがパケットを受信すると、ルーティング処理部で経路を検索し、トラフィックエンジニアリング制御部2と連携して出力インタフェースを決定し、パケットを回線に出力する。
【0006】
現在のWWWやFTP等のクライアントサーバ型のネットワークシステムにおいて、特定のサーバへの要求が集中することにより、当該サーバの処理輻輳が発生してサーバからクライアントへの応答が遅延した場合、クライアント側が処理を中断してサーバへのアクセスリトライを行なうことで、更にサーバへの要求が増え、ネットワークシステム内のトラフィックが増大すると共に、サーバ負荷も上昇し、サーバのさらなる処理輻輳が発生してしまうという問題がある。
【0007】
サーバの処理輻輳を解消するため、サーバを複数設置してサーバの負荷を分散することにより、サーバの処理能力を向上させ、サーバ側の輻輳を解消する手法が広く用いられている。しかしながら、このサーバ追加による解決方法は、サーバ設置者へのコスト負担が増加する。更に、現実のネットワークにおいては、既に複数のサーバが存在しており、それぞれのサーバの処理輻輳を解消するには、各サーバ毎に追加用サーバを個々に導入する必要があるため、ネットワーク全体では追加するサーバ数が更に増加し、サーバ追加に対するコストが増大する。
【0008】
また、例えばチケット抽選システムやネットワークを利用したマルチユーザゲームアプリケーション等、サーバの用途によってはデータの一貫性保持のために分散処理が困難なものも存在し、サーバの台数を増やして負荷分散する方法をとることができない分野もある。
【0009】
利用途中における切断の発生を防止して、ユーザのサービスの向上を図る技術がある(例えば特許文献1参照)。また、トラフィックの輻輳を検出して過大なトラフィックが流れないようにする制御する技術がある(例えば特許文献2参照)。また、サーバ/クライアントシステムにおいて、サーバが輻輳時にクライアントの要求を抑止する技術がある(例えば特許文献3参照)。更に、サーバ/クライアントシステムにおいて、受け付け/アクセス制御/サービスとサーバの機能分割を実施し、クライアントの要求を抑止する技術がある(例えば特許文献4参照)。
【0010】
【特許文献1】
特開2001−320423号公報(第4頁、第5頁、図1)
【特許文献2】
特開2001−345861号公報(第3頁、第4頁、図1)
【特許文献3】
特開2001−67314号公報(第4頁、第5頁、図1)
【特許文献4】
特開2002−141936号公報(第5、第6頁、図1)
【0011】
【発明が解決しようとする課題】
特許文献1に記載の発明は、サービス構成要素に「開始」、「継続」、「終了」の識別子を与え、輻輳中は「開始」要求をリジェクトすることにより、利用中ユーザのサービス向上を行なう。しかしながら、本方式はサービス構成要素に識別を与える必要があるため、コンテンツに対しての加工が必要であり、既に運用中のサービスにそのまま本方式を適用することができないという問題がある。
【0012】
特許文献2に記載の発明は、ネットワークの輻輳時にパケットのキュー長をダイナミックに変更し、ネットワークの負荷を下げる。また、プロキシサーバの機能も具備し、特定のWWWサーバへのアクセスを禁止することができる。しかしながら、サーバの輻輳を検出することで、当該サーバへのアクセスを制御する機能は具備していない。
【0013】
特許文献3に記載の発明は、サーバがクライアント(ユーザ端末)に対して、リトライ抑止を制御する。しかしながら、サーバが輻輳中で非常に処理負荷が高い状況において個々のクライアントに対して要求を抑止する制御を実施すると、サーバ自体の負荷が更に上昇し、ネットワークの負荷に対して輻輳を解除するまでの時間が非常に長くなってしまう。また、サーバ/クライアントのアプリケーションがこの方式に対応している必要がある。
【0014】
特許文献4に記載の発明は、サービス提供サーバと受け付けサーバ、アクセス制御サーバで役割を分担し、アクセス制御サーバがルータに対してフィルタリング設定を実施する。しかしながら、この方法ではサーバ側に機能を盛り込む必要があり、ネットワークに接続された不特定多数のサーバに対して輻輳を回避することは困難である。また、アクセス制御サーバがクライアントを収容するルータを認識することと、ルータでフィルタ関連の処理を実施するためのコマンド等をサーバが把握しておく必要があり、管理が煩雑となる。
【0015】
以上、説明したように、輻輳しているサーバに対してユーザがアクセスリトライを繰り返すことでさらなるサーバ輻輳が発生している状態において、従来技術では、クライアント/サーバのアプリケーションに特別な機能を持たない限り、サーバへのリトライを抑止してサーバ負荷を減少することはできず、ネットワークに不要なトラフィックが流入していた。
【0016】
本発明はこのような課題に鑑みてなされたものであって、ルータに収容される全てのサーバに対して、サーバ側に特殊な機能を盛り込むことなく、自動的にサーバの輻輳を検出することができ、クライアントを収容するルータと連携することで、サーバ及びネットワーク全体の輻輳回避が容易に実現できるネットワーク及びサーバの負荷低減ルータを提供することを目的としている。
【0017】
【課題を解決するための手段】
本発明では、ネットワークトラフィック自体を動的に制御できるルータにて、クライアントの流入トラフィックを制御することにより、既存のサーバ/クライアント自体には輻輳制御用に特に処理を必要としない方式であり、既存のサーバ/クライアントのままで当該サーバに対するユーザ要求自体をネットワーク内へ流入するのを制御でき、ネットワーク負荷を下げると共に、輻輳中のサーバの処理効率向上を可能とする。
【0018】
また、ルータにて制御するため、ネットワークを含めたシステム全体の追加投入コストやシステム構築の変更等が非常に少なくて済むというメリットがある。これは、通常のサーバでIPパケットの監視を実施するにはネットワークの転送速度を悪化させないよう、サーバに対してネットワーク処理を高速に実現するためのハードウェアを追加する必要があるが、本来、ネットワークの転送速度を悪化させることなくIPパケットの内容を高速に検査しているルータにおいて本制御を実現するには更に特殊なハードウェアを追加する必要がなく、ルータのIPパケット転送処理部への処理追加のみで実現できるためである。
【0019】
また、クライアント/サーバ間での制御では、そのソフトウェアが適用されたクライアント/サーバ自体の輻輳回避しかできないが、当機能を具備したルータを導入することにより、クライアント毎の優先度に従ってトラフィックエンジニアリング(Traffic Engineering)制御を行なうことで、ネットワーク全体としての輻輳回避も可能となる。図1は本発明の原理ブロック図である。図29と同一のものは、同一の符号を付して示す。図において、1はLANフレームを受信するLANフレーム受信部、2は該LANフレーム受信部1の出力を受けて帯域制御や迂回回路を設定するトラフィックエンジニアリング制御部、3は該トラフィックエンジニアリング制御部2の出力を受けてルーチング処理を行なうルーティング処理部、4は該ルーティング処理部3の出力を受けてLANフレームを送信するLANフレーム送信部である。
【0020】
10はLANフレーム受信部1、トラフィックエンジニアリング制御部2、LANフレーム送信部4と接続され、サーバの輻輳を検出すると共に、サーバの輻輳を検出したら、サーバの輻輳制御を行なうサーバ輻輳制御手段である。
【0021】
このように構成すれば、サーバの輻輳を検出したサーバ輻輳手段10は、サーバの輻輳制御を行なって、サーバの輻輳を低減することができる。
(1)請求項1記載の発明は、サーバとクライアントが設置されるネットワークシステム上のルータであって、LANフレームを受信するLANフレーム受信部と、該LANフレーム受信部の出力を受けて帯域制御や迂回経路を設定するトラフィックエンジニアリング制御部と、該トラフィックエンジニアリング制御部の出力を受けてルーティング処理を行なうルーティング処理部と、該ルーティング処理部の出力を受けてLANフレームを送信するLANフレーム送信部とを具備するものにおいて、前記各構成要素と接続され、サーバの輻輳を検出すると共に、サーバの輻輳を検出したら、サーバの輻輳制御を行なうサーバ輻輳制御手段を設け、サーバ宛のパケットの応答遅延を監視してサーバの輻輳を自動的に検出するサーバ輻輳監視手段と、サーバの輻輳/輻輳解除検出時に輻輳原因となっているパケットの廃棄/中継を、クライアントを収容するルータに対して要求する輻輳原因パケット廃棄要求手段とを前記サーバ輻輳制御手段内に設けたことを特徴とする
【0022】
このように構成すれば、サーバ側に機能を持つことなく、ルータに収容された全てのサーバの輻輳回避を行なうと同時に、サーバ輻輳時のクライアントからのリトライによるネットワーク輻輳を回避することができる。
(2)請求項2記載の発明は、サーバを収容しているルータで、輻輳しているサーバのサービスを特定する輻輳サービス特定手段と、クライアントを収容しているルータで、輻輳しているサーバのサービスに関するパケットのみを廃棄する輻輳原因パケット廃棄手段を前記サーバ輻輳制御手段内に設けたことを特徴とする。
【0023】
このように構成すれば、輻輳原因となっているパケットを、宛先サーバのアドレスやプロトコルで識別するだけでなく、WebページのURLやFTP(File Transfer Protocol:TCP/IPで用いられるファイル転送プロトコル)のディレクトリ等の輻輳しているサービスに関するパケットのみの廃棄を可能とすることができる。
(3)請求項3記載の発明は、クライアント−サーバ間のパケットを監視し、サーバ−クライアント間のパケット通信量や最終通信時刻等の統計情報を記録する通信統計記録手段と、サーバ輻輳時に、クライアントを収容するルータに対してパケット廃棄を要求する時に、新たに通信を開始するクライアントや通信量が規定量を超えているクライアントのパケット通信を制限するクライアントを決定する通信制御クライアント決定手段とを前記サーバ輻輳制御手段内に設けたことを特徴とする。
【0024】
このように構成すれば、特定のクライアントのみの通信を規制することを可能とし、パケットを無作為に廃棄することによるサービス中断を防止し、輻輳原因となっている通信を効果的に規制することができる。
(4)請求項4記載の発明は、サーバの輻輳検出時に、輻輳原因となるパケットを廃棄すると同時に、クライアントに対してサーバ輻輳を通知するサーバ輻輳通知手段を前記サーバ輻輳制御手段内に設けたことを特徴とする。
【0025】
このように構成すれば、ユーザが通信タイムアウトを持たずサーバ輻輳及び輻輳に関する情報を認識することを可能とし、ユーザの利便性を向上させることができる。
【0026】
この発明において、サーバ輻輳の履歴を管理するサーバ輻輳履歴管理手段を前記サーバ輻輳制御手段内に設け、前記サーバ輻輳通知手段により輻輳履歴情報をクライアントに通知することを特徴とする。
【0027】
このように構成すれば、サーバ輻輳通知手段により輻輳履歴情報をクライアントに通知することで、サーバ側に特殊な機能を必要とせずにユーザの利便性を向上させることができる。
【0028】
また、この発明において、優先/非優先にすべきクライアントの持つクラスを事前に設定し、そのクラスに応じたパケットに対する挙動を決定する通信優先度決定手段を前記サーバ輻輳制御手段内に設けたことを特徴とする。
【0029】
このように構成すれば、トラフィックエンジニアリング制御(帯域制御や適切な迂回経路やウェイトによる適切な破棄を実施すること)を用いた優先接続等の制御を可能とする。
【0030】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態例を詳細に説明する。図2は本発明の一実施の形態例のネットワーク構成を示す図である。図1と同一のものは、同一の符号を付して示す。図において、11はLANフレーム受信部1及びLANフレーム送信部4と接続されるサーバ輻輳監視手段、12はLANフレーム送信部4及びサーバ輻輳監視手段11と接続される輻輳原因パケット廃棄要求手段、13はLANフレーム受信部1と接続される輻輳原因パケット廃棄手段である。
【0031】
14はLANフレーム受信部1と接続される通信統計統計記録手段、15は輻輳原因パケット廃棄手段13及び通信統計記録手段14及び輻輳原因パケット廃棄要求手段12と接続される通信規制クライアント決定手段、16は輻輳原因パケット廃棄手段13、LANフレーム送信部4及び輻輳原因パケット廃棄要求手段12と接続されるサーバ輻輳通知手段、17はサーバ輻輳監視手段11と接続されるサーバ輻輳履歴管理手段、18はサーバ輻輳監視手段11と接続される輻輳サービス特定手段、19はトラフィックエンジニアリング制御部2、輻輳原因パケット廃棄手段13及び通信規制クライアント決定手段15と接続される通信優先度決定手段である。以下、これらの構成要素について詳しく説明する。
(サーバ輻輳監視手段11)
当該ルータに接続されているサーバについて、クライアントからの要求に対するサーバからの応答の遅延時間を監視し、サーバの輻輳状態を検出するものである。
(輻輳原因パケット廃棄要求手段12)
サーバ輻輳検出時に、クライアントを収容しているルータに対して、輻輳原因となっているパケットの廃棄を要求する。本機能は、クライアントを収容しているルータのフィルタ機能を利用して、コマンドラインインタフェース等を使用して、輻輳しているサーバのIPアドレスやTCPポート番号等によるフィルタの登録/削除を行なうことで実現可能である。
【0032】
また、クライアントを収容しているルータに輻輳原因パケット廃棄手段13を持つことで、例えば輻輳しているサーバの特定URL宛パケットのみを廃棄する等、きめ細かな指定も可能である。
【0033】
また、クライアントを収容しているルータの特定方法として、ルータが本来の中継機能のために持っているOSPF/BGP等の経路情報を利用することで、クライアントを収容するルータを自動的に認識することも可能である。ここで、OSPFとはOpen Shortest Path Firstの略であり、BGPとはBorder Gateway Protocolの略であり、双方共にインターネットの経路制御プロトコルである。
(輻輳原因パケット廃棄手段13)
サーバを収容するルータの輻輳原因パケット廃棄要求手段12からの要求を受けて、指定されたパケットの廃棄/中継を制御する。
(通信統計記録手段14)
クライアント−サーバ間の通信を監視し、サーバからクライアント宛のパケット通信量やクライアントからサーバ宛の最終通信時刻等の統計情報を記録する。
(通信規制クライアント決定手段15)
サーバ輻輳時に、通信統計記録手段14で収集された情報を参照し、サーバ輻輳及びネットワーク輻輳を回避するために通信を規制するクライアントを決定する。最終通信時刻が閾値よりも古いクライアントを規制対象とすることで、通信を継続しているクライアントを規制対象から外すことが可能である。
【0034】
また、サーバからクライアント宛の通信量が閾値よりも大きいクライアントのみを規制対象とすることで、大量の画像や音楽データ等を長時間ダウンロードし続ける等、サーバやネットワーク負荷の原因となっているクライアントのみに限定して規制をかけることも可能である。
(サーバ輻輳通知手段16)
サーバ輻輳時に、パケットを廃棄するだけでなく、クライアントに対してサーバ輻輳を通知する。通知方法としては、各プロトコルに従った相手ビジーに相当するエラー通知パケットをサーバの代わりにクライアントに送信する方法がある。また、例えばHTTP(Hyper Text Transfer Protocol:WWWで用いるプロトコル)であれば、サーバの輻輳度合いを表示するWebページのHTML(Hyper Text Markup Langage:Webページで使用される言語体系)イメージをクライアントに送信することも可能である。
【0035】
更に、サーバ輻輳履歴管理手段17のサーバ輻輳履歴をクライアントに送信することで、どのくらいの時間をおいてサーバにアクセスすれば輻輳状態が回避されている可能性が高いか等をユーザが判断することが可能となる。
(サーバ輻輳履歴管理手段17)
サーバ輻輳監視手段11が監視しているサーバの輻輳情報を履歴管理する。
(輻輳サービス特定手段18)
サーバ輻輳監視手段11の一部として、HTTPのURLや、FTP(File Transfer Protocol:ファイル転送プロトコル)のディレクトリ等の単位でサーバの応答遅延時間を監視することで、サーバ単位ではなくサーバの部位単位で輻輳を監視し、輻輳検出時は、輻輳原因パケット廃棄要求手段12に対して、輻輳部位の識別情報を渡し、クライアントを収容するルータの輻輳原因パケット廃棄手段13に通知する。
(通信優先度決定手段19)
クライアントを収容しているルータに対して事前にクライアントの優先度を設定しておくことで、輻輳原因パケット廃棄手段13でそのクライアントが廃棄対象となった場合でも、単なる廃棄ではなく帯域制御やベストエフォート(Best Effort)な経路への迂回等のトラフィックエンジニアリングサービスを決定し、トラフィックエンジニアリング制御部2へ処理要求を行ないネットワーク全体の輻輳を回避する。
(a)第1の実施の形態例(請求項2に対応)の動作概要
サーバを収容するルータ(出側ルータ)のサーバ輻輳監視手段11は、サーバ宛のパケットに対するサーバからの応答の遅延時間を常時監視し、遅延時間が予め決められた輻輳閾値を超えた場合にサーバ輻輳と見なす。輻輳原因パケット廃棄要求手段12は、サーバ輻輳時に、クライアントを収容しているルータ(入側ルータ)を特定し、当該ルータに対して輻輳を検出したサーバのIPアドレス及びTCPのポート番号等を指定してフィルタの設定要求を行なう。
【0036】
サーバ輻輳を検出したサーバ輻輳監視手段11は、当該サーバの監視を継続し、応答遅延時間が輻輳解除閾値を切った時点で、サーバ輻輳解除と見なす。輻輳原因パケット廃棄要求手段12は、サーバ輻輳解除時に、輻輳時に入側ルータに設定したフィルタを解除する。
【0037】
これにより、サーバ側に機能を持つことなく、ルータに収容された全てのサーバの輻輳回避を行なうと同時に、サーバ輻輳時のクライアントからのリトライによるネットワーク輻輳を回避若しくは低減することが可能となる。
(b)第2の実施の形態例(請求項3に対応)の動作概要
出側ルータの輻輳サービス特定手段18は、サーバ輻輳監視手段11の一部として、WebページのURLやFTPのディレクトリ等の単位で、サーバの応答遅延時間を監視し、サーバ輻輳時は、輻輳原因パケット廃棄要求手段12により、輻輳サービスの識別情報と共にサーバの輻輳を入側ルータの輻輳原因パケット廃棄手段13に通知する。
【0038】
入側ルータの輻輳原因パケット廃棄手段13は、宛先IPアドレス、TCP(Transfer Control Protocol)ポート番号、輻輳しているURL等のフィルタの条件で、輻輳原因となっているパケットの廃棄を行なう。
【0039】
これにより、通常のルータではサポートされていないような特殊なフィルタリング条件を使用して、パケット廃棄を行なうことが可能となり、例えば同一サーバで実現されている特定のURLのサービスのみが輻輳している場合に、当該URL宛のパケットのみを廃棄する等、きめ細かな輻輳制御を行ない、サーバの輻輳を効率よく回避することが可能となる。
(c)第3の実施の形態例(請求項4に対応)の動作概要
入側ルータ又は出側ルータにおいて、通信統計記録手段14は、クライアント−サーバ間の通信を監視し、送信元IPアドレス、宛先IPアドレス、TCPポート番号等で特定されるサーバ輻輳の監視単位に、パケット通信量や最終通信時刻等の統計情報を記録する。
【0040】
サーバ輻輳時、出側ルータの輻輳原因パケット廃棄要求手段12又は入側ルータの輻輳原因パケット廃棄手段13が、通信規制クライアント決定手段15に問い合わせて、通信を規制するクライアントを決定し、決定したクライアントに対してのみパケット廃棄を行なう。
【0041】
通信規制クライアント決定手段15は、クライアント決定時に、通信統計記録手段14に問い合わせて最終通信時刻を参照し、最終通信時刻と輻輳時の時刻との差分が、予め決められた閾値時間以上のものや、パケット通信量が規定量を超えているものを通信規制の対象と決定する。
【0042】
これにより、パケットを無作為に廃棄することによるサービス中断を防止し、輻輳原因となっている通信を効果的に規制することが可能となる。
(d)第4の実施の形態例(請求項5に対応)の動作概要
サーバ輻輳時に、出側ルータの輻輳原因パケット廃棄要求手段12又は入側ルータの輻輳原因パケット廃棄手段13は、サーバ輻輳通知手段16にサーバ輻輳通知を要求する。
【0043】
サーバ輻輳通知手段16は、サーバに成り代わり、各プロトコルに従ったエラー通知パケット又はHTTPのWebページのHTMLイメージ等をクライアントに送信することで、クライアントにサーバ輻輳及び輻輳に関する情報を通知する。
【0044】
これにより、ユーザが通信タイムアウトを待たずサーバ輻輳及び、どのくらいの時間にサーバにアクセスすれば輻輳が解除されているか等の輻輳に関する情報を認識することができ、ユーザの利便性を向上させることが可能となる。
(e)第5の実施の形態例
出側ルータのサーバ輻輳履歴管理手段17は、サーバ輻輳監視手段11により認識したサーバの輻輳具合を履歴管理する。本情報は、ルータの運用コマンド等を使用してネットワーク管理者が読み出すことが可能であり、また、前記サーバ輻輳通知手段16により、サーバ輻輳時にクライアントに通知することで、サーバ利用者が参照することも可能である。
【0045】
これにより、サーバの集中管理が可能となり、また、サーバ側に特別な機能を必要とせずに、サーバの輻輳履歴をユーザが認識することが可能となる。
(f)第6の実施の形態例
入側ルータの通信優先度決定手段19は、サーバを収容するルータの輻輳原因パケット廃棄要求手段12からの要求を受けて輻輳原因パケット廃棄手段13によって決定した廃棄対象のクライアントのうち、送信元IPアドレス、宛先IPアドレス、TCPポート番号等で事前に設定された優先度条件に合致するクライアントがあるか検索を行なう。
【0046】
優先度条件に合致するクライアントに対しては、トラフィックエンジニアリングを利用して使用帯域の制限や、ベストエフォート経路への迂回等を実施することにより、サーバ輻輳の回避と共に、ネットワーク内の負荷についても輻輳を回避することが可能となる。
【0047】
以下に、本発明を利用し、クライアントサーバ型のアプリケーションとして広く用いられているWebサーバの輻輳を検出し、Webサーバの輻輳及びネットワークの輻輳を低減する例を説明する。
【0048】
図3は本発明の第1の実施の形態例のネットワーク構成を示す図である。クライアントC1はルータR1に接続され、クライアントC2はルータR2に接続され、サーバS1とサーバS2はルータR3に接続されている。ルータR1とルータR3の間、及びルータR2とルータR3の間には更に複数のルータを経由していてもよい。このネットワーク構成における第1の実施の形態例について、図4を用いて説明する。
【0049】
図4は本発明の第1の実施の形態例の動作を示すシーケンス図である。図3と同一のものは、同一の符号を付して示す。C1,C2はクライアント、R1,R2,R3はルータ、S1,S2はサーバである。図3のルータR1とR2は、図2のサーバ輻輳監視手段11、輻輳原因パケット廃棄手段13を具備し、ルータR3は図2のサーバ輻輳監視手段11、輻輳原因パケット廃棄要求手段12及び輻輳原因パケット廃棄手段13を具備する。
(輻輳の検出方法)
クライアントC1がサーバS1へアクセスする状況において、クライアントC1からサーバS1へのパケットを中継し、サーバS1と接続するルータR3はLANフレーム受信部1で要求メッセージ101のIPパケットを受信し、サーバ輻輳監視手段11へ受信したIPパケットの内容を通知する。更に、ルータR3では、サーバS1からクライアントC1に対する応答メッセージ101についてもLANフレーム受信部1で受信し、サーバ輻輳監視手段11へIPパケットの内容を通知する。
【0050】
サーバ輻輳監視手段11は、IPパケットがHTTPであるかどうかを判別する。プロトコルの判別は、IPパケット内のポート番号(HTTPであればTCPの80番、FTPであればTCPの21番)を参照することで可能である。サーバ輻輳監視手段11は、更にHTTPのIPパケットがHTTPの要求メッセージか応答メッセージであるかを判別し、要求メッセージ101と応答メッセージ101のレスポンス時間を測定する。
【0051】
HTTPはテキスト形式でプロトコルメッセージのやりとりをするため、HTTPのパケットの内容を参照すれば、要求メッセージと応答メッセージを判別することができる。本発明の対象となるようなキャリア網で使用されるルータでは、ネットワークプロセッサ(Network Processor:ネットワーク処理に特化し、パケット転送動作をプログラム可能なプロセッサ。通常、IPパケットの転送処理をGigabit Ether等のワイヤスピードにて実施可能である)にてIPパケットの転送をハードウェア的に行なう方法がほとんどであり、この場合、ネットワークプロセッサ部のプログラムを追加することでIPパケットの転送能力を悪化させることなく実現することができる。IPパケットの転送をASIC(特定用途向けIC)でハードウェア的に実現しているルータであれば、ASICへのロジックを追加することで実現することができる。
【0052】
サーバ輻輳監視手段11は、クライアントのIPアドレスとサーバのIPアドレスの組み合わせに対応するHTTPのレスポンス時間のデータとして「サーバ輻輳状態監視データ」を作成する。図5はサーバ輻輳状態監視データの例を示す図である。この図は、クライアントC1とクライアントC2がサーバS1に要求を行ない、クライアントC1がサーバS2へ要求を行なっている状態でのレスポンス時間のデータを表している。図では、監視対象サーバと、要求発生クライアントと、要求時刻と、現在時刻と、要求送信後の経過時刻と、輻輳検出閾値をそれぞれ示している。この図は、クライアントC1とクライアントC2がサーバS1に要求を行ない、クライアントC1がサーバS2へ要求を行なっている状態でのレスポンス時間のデータを表している。
【0053】
また、このデータはサーバの輻輳を検出することが目的であるため、一つのサーバに対して全てのクライアントに対する「サーバ輻輳状態監視データ」のエントリを作成せず、サーバ毎にクライアント−サーバ間の通信をサンプリングしてレスポンス時間を測定してもよい。
【0054】
サーバ輻輳監視手段11は、図5のレスポンス時間を監視し、クライアントC1からサーバS1に送信した要求に対するサーバS1からの応答が、予め輻輳検出閾値として設定していた時間内になかった場合、サーバS1が輻輳状態であると判定する。図3に示すように、ネットワークに複数のサーバが存在する場合、全サーバに同一の閾値を適用して監視してもよいし、サーバ毎に異なる閾値を設定してもよい。ちなみに、図5の場合は、要求送信後経過時間レスポンスが500msecであるのに対して、閾値は1000msecであり、輻輳は生じていない。
【0055】
ここでは、サーバの輻輳状態を判定する基準として要求に対するレスポンス時間を用いたが、予めネットワーク負荷に対するサーバの負荷の対応が分かっていれば、サーバの応答時間ではなく、規定時間内にサーバS1宛にルータR3を通過するパケット数等を用いてもよい。通常、ルータは統計情報として、転送したパケット数やサイズを収集しているため、ルータに特殊な装置を追加することなく、またIPパケットの転送速度を悪化させることなく実現することができる。
【0056】
サーバ輻輳監視手段11がサーバの輻輳を検出していない状態では、サーバ輻輳監視手段11は、受信した要求メッセージ101をルーティング処理部3へ通知し、ルーティング処理部3はIPルーティング処理を実行の上、LANフレーム送信部4からサーバS1へ要求101を送信する。これにより、クライアントC1はサーバS1へのアクセスができる。
(輻輳時の動作)
ルータR3のサーバ輻輳監視手段11において、クライアントC1からサーバS1への要求102に対する輻輳を検出すると、ルータR3のサーバ輻輳監視手段11はクライアントC1へ棄却メッセージ102を送信する。更にルータR3のサーバ輻輳監視手段11は、ルータR3の輻輳原因パケット廃棄要求手段12へ通知する。通知する情報として、HTTP要求がタイムアウトしたIPパケットのIPSA(IP Source Address)とIPDA(IP Destination Address)を通知すれば、この情報より、クライアントC1のIPアドレス、サーバS1のIPアドレスが分かる。
【0057】
ルータR3の輻輳原因パケット廃棄要求手段12は、クライアントC1を接続しているルータR1へ輻輳通知メッセージ103を送信する。輻輳通知メッセージは、本発明の機能を具備するルータ間でやりとりするメッセージで、アクセスを規制するサーバのIPアドレスを格納している。
【0058】
ルータR3からルータR1へ輻輳通知メッセージ103を送信するにあたり、IPパケットとしてR3からR1へ送信するが、元々のクライアントC1からサーバS1へのIPパケット情報にはルータR1のIPアドレスは含まれないので、ルータR3にはルータR1のIPアドレスは、転送しているIPパケットの情報からだけでは分からない。
【0059】
この場合には、ルータR3からルータR1への輻輳通知メッセージ103をIPパケットとして送信する際には、IPDAとして既判明であるクライアントC1のIPアドレスを設定し、ルータR3が保持するOSPF/BGP等のルーティング情報を元にクライアントC1へ向けて適切な経路にて送信する。
【0060】
また、ネットワークで用いるルーティングプロトコルによっては、ルータR1のIPアドレスが分かる場合がある。例えば、OSPFの場合、クライアントC1が属するネットワークプレフィクスを広報しているルータのループバックアドレスがルータR1のIPアドレスであると、ルータR3にて知ることができる。この場合は、ルータR3からルータR1のIPアドレスを直接指定して輻輳通知メッセージを送信すると、ルータR1の処理を省略することかできる。
【0061】
図6はこの例における輻輳通知メッセージの例を示す図である。図に示すように、輻輳通知メッセージはIPヘッダと、メッセージ識別子と、サーバIPアドレスとから構成されている。IPヘッダは、IPDAとしてクライアントC1のアドレスを設定し、IPSAとしてルータR3のIPアドレスを設定する。メッセージ識別子は、輻輳通知メッセージを表す識別子である。サーバIPアドレスは、輻輳が発生したサーバS1のIPアドレスを示す。
【0062】
輻輳通知メッセージ103を送信したルータR3の輻輳原因パケット廃棄要求手段12は、どのクライアントに対して、どのサーバに対する輻輳通知メッセージを送ったか、輻輳通知メッセージ管理データとして保持しておく。
【0063】
ここで、ルータはOSPFやBGPをはじめとするダイナミックルーティングプロトコルにより、自分が接続するネットワークの接続状況(トポロジー)を把握している。このため、図7の輻輳通知メッセージ管理データに登録しているクライアントが属するネットワークが(切断された等の理由により)到達不可能になったこと、或いは再び到達可能になったことを、ルーティング情報により知ることができる。
【0064】
ネットワークのルーティング情報の変化を元に、図7に示す輻輳通知メッセージ管理データに登録してあるクライアントの有効/無効を制御することで、後に説明する輻輳解除通知をネットワーク的に到達不可能なクライアントに向けて送信することがなくなり、ネットワークに無駄なトラフィックを発生させることもない。図7には、輻輳通知メッセージ管理データが、監視対象サーバと、要求発生クライアントと、輻輳通知状態と、クライアント状態から構成されていることが示されている。
【0065】
クライアントC1宛の輻輳通知メッセージ103を受信したルータR1では、OSPF/BGP等のルーティングプロトコルにより保持しているルーティング情報を参照し、ルータR1の輻輳原因パケット廃棄手段13において、受信したのは自分が接続するクライアントC1に対する輻輳通知メッセージであることを検出する。
【0066】
ルータR1は、受信した輻輳通知メッセージ103がクライアントC1宛の場合、自分の先に更にルータが存在しないため、クライアントC1へは輻輳通知メッセージを転送せずに、自分で終端する。更に、ルータR1では輻輳通知メッセージ103の内容を確認して、サーバS1へのアクセスが規制されていることを認識し、ルータR1内の輻輳原因パケット廃棄手段13へサーバS1のIPアドレスを通知する。
【0067】
ルータR1の輻輳原因パケット廃棄手段13は、保持している図8に示す「アクセス規制サーバデータ」に、サーバS1のIPアドレスを登録する。以降、クライアントC1からサーバS1に対する要求104は、ルータR1の輻輳原因パケット廃棄手段13において棄却され、ネットワーク内にサーバS1への要求が流れ込むことはない。
【0068】
ルータR3がサーバS1の輻輳を検出している状況において、異なるクライアントC2からのサーバS1に対する要求105があった場合、ルータR3の輻輳原因パケット廃棄手段13は要求を棄却すると共に、ルータR3の輻輳原因パケット廃棄手段13はクライアントC2のIPアドレスをIPDAとして輻輳通知メッセージ106を送信することによってルータR2の輻輳原因パケット廃棄手段13へサーバS1の輻輳を通知し、以後、クライアントC2からサーバS1に対する要求はルータR3によって棄却される。
【0069】
以上、ルータR3が入側のルータR1へのフィルタを設定するために専用の制御メッセージを送信する方法を説明したが、これ以外にもルータR3がルータR1にテルネット(telnet)で接続され、既存のコマンドラインインタフェースにてフィルタを設定するという例もある。ルータR3がOSPF/BGP等のダイナミックルーティングプロトコルにより、ネットワークのトポロジ情報を保持している場合であれば、クライアントC1を収容しているルータR1のIPアドレスを知ることができる。
【0070】
このように、ルータ同士が交換しているルーティング情報を利用することで、ネットワーク内のルータは互いに認識しあい、IPアドレスに関する情報を取得できるので、ルータR3はルータR1のIPアドレスにテルネットすることで、ルータR1のフィルタ設定を実施することができる。また、SNMP(Simple Network Management Protocol)プロトコルによって定義変更が可能なルータであれば、ルータR3からルータR1へSNMPセットリクエストを送信してルータR1へ設定を実施することも可能である。
【0071】
なお、ルータR3においてはサーバ毎に輻輳の状況を監視するため、サーバS1が輻輳状態でクライアントからS1に対する要求が規制されている状態であっても、サーバS2の輻輳は検出されておらず、ルータR1,R2においてアクセスを規制することはないため、クライアントC1,C2からサーバS2に対する要求108,109が転送され、クライアントからサーバS2に対する通信には影響がない。
(輻輳解除時の動作)
ルータR3においてサーバS1の輻輳を検出すると、ルータR3のサーバ輻輳監視手段11はサーバの輻輳状態が解除されたかを監視し始め、サーバの輻輳状態を知るために、定期的にサーバへ要求メッセージ110の送信を行なう。サーバの輻輳状態を知るのに、サーバが提供しているサービスに対してプロトコルレイヤ上、低位レイヤのリクエストであるping(ICMP Echo Request)を用いると、輻輳しているサービスとは関係なく、サーバから即時に応答がきてしまう可能性があり、アプリケーションレベルでの輻輳を検出できない。
【0072】
このため、サーバの提供しているアプリケーションの輻輳状態が分かる要求を送信するほうがよく、具体的にはHTTPでWebページの取得要求を行なう。取得要求としては、例えばサーバ輻輳監視手段11でレスポンスを監視していた、クライアントC1からサーバS1に対する要求メッセージを参照し、同じURLに対する取得要求をルータR3のサーバ輻輳監視手段11がサーバS1に対して送信する。
【0073】
ルータR3のサーバ輻輳監視手段11においてサーバS1の輻輳解除を検出すると、保持している図7の輻輳通知メッセージ管理データを参照し、サーバS1に関する輻輳通知を過去に送信しているクライアントC1とクライアントC2に対し、サーバS1の輻輳が解除されたという輻輳解除通知メッセージ111,112を送信する。
【0074】
図9は輻輳解除通知メッセージの例を示す図である。図に示すように、IPヘッダと、メッセージ識別子と、サーバIPアドレスとを示している。IPヘッダは、IPDAとして、クライアントC1のIPアドレスを設定する。また、IPSAとして、ルータR3のIPアドレスを設定する。メッセージ識別子は、輻輳解除通知メッセージを表す識別子である。サーバIPアドレスは、輻輳が解消したサーバS1のIPアドレスである。
【0075】
輻輳解除通知メッセージ111,112を受信したルータR1及びルータR2では、輻輳原因パケット廃棄要求手段12において、サーバS1へのアクセス規制が解除されたことを認識し、更にルーティング情報を参照することで受信した輻輳解除通知メッセージが自分に接続されているクライアントに対する輻輳解除通知メッセージであることを検出し、ルータR1及びR2は受信した輻輳解除通知メッセージ111,112をクライアントに転送しないようにする。
【0076】
以降、クライアントC1及びC2からサーバS1に対する要求113,114は、ルータR1及びR2の輻輳原因パケット廃棄手段13において棄却されることはなくなり、クライアントC1及びクライアントC2からサーバS1へ再びアクセスすることが可能となる。
【0077】
以上説明したような方法で、ネットワークに接続されているサーバにて輻輳状態が発生した場合、サーバを接続するルータとクライアントを接続するルータが保持する情報を交換して連携することにより、輻輳しているサーバに対する要求がネットワークに対して流入せず、サーバとネットワークの輻輳を回避することができる。
【0078】
以下、本発明の第2の実施の形態例について説明する。図10は本発明の第2の実施の形態例のネットワーク構成を示す図である。図において、クライアントC1はルータR1に接続され、サーバS1はルータR3に接続され、ルータR1とルータR3の間には更に複数のルータを経由してもよい。このネットワーク構成における第2の実施の形態例において、図11を用いて説明する。
【0079】
図11は本発明の第2の実施の形態例の動作を示すシーケンス図である。図10のルータR1は図2中の輻輳原因パケット廃棄手段13を具備し、ルータR3は、サーバ輻輳監視手段11、輻輳原因パケット廃棄要求手段12、輻輳原因パケット廃棄手段13及び輻輳サービス特定手段18を具備する。
【0080】
クライアントC1がサーバS1へアクセスする状況において、クライアントC1からサーバS1へのパケットを中継し、サーバS1と接続するルータR3はLANフレーム受信部1で要求メッセージ201のIPパケットを受信し、サーバ輻輳監視手段11へ受信したIPパケットの内容を通知する。更に、ルータR3では、サーバS1からクライアントC1に対する応答メッセージ201についてもLANフレーム受信部1で受信し、サーバ輻輳監視手段11へIPパケットの内容を通知する。
【0081】
ルータR3のサーバ輻輳監視手段11は、受信した要求メッセージと応答メッセージの内容をルータR3の輻輳サービス特定手段18に通知する。輻輳サービス特定手段18では、IPパケット内の各プロトコル毎の情報を精査し、サーバの輻輳を監視する。具体的にはHTTPの場合、サーバの負荷が同一であっても、URLによって要求に対する応答の時間が異なる。
【0082】
例えば、各種データベースへのアクセスが必要なURLや各種情報をユーザにあわせて検索・加工して表示するURLではサーバの負荷が低い状況であっても応答に一定の時間がかかる。一方では、単純なディスクアクセスのみでよいURLではサーバの負荷が低い状況においては応答時間は短い。
【0083】
このような状況において、サーバのIPアドレス単位に応答時間を測定する方法では、サーバの輻輳状態を正確に監視できない場合がある。このため、ルータR3の輻輳サービス特定手段18では、URL毎にサーバの応答時間を監視することで、サーバの輻輳状態を正確に監視する。
【0084】
URL毎に応答を監視するには、ルータR3の輻輳サービス特定手段18において、転送するIPパケット内のTCP(Transmission Control Protocol:ネットワークのトランスポート層の通信プロトコル)のプロトコルを判定し、更にTCPパケット内を検査し、HTTPプロトコルの内容を判定する必要があるが、第1の実施の形態例で説明したように、ルータのネットワークプロセッサのプログラム処理を追加することで、ルータに更に特殊な装置を追加することなく、かつIPパケットの転送速度を悪化させることなく実現することができる。
【0085】
図12はURL毎のサーバ輻輳状態監視データの例を示す図である。図に示すように、監視対象URL、要求発生クライアント、要求時刻、現在時間、要求送信後の経過時間及び輻輳検出閾値より構成されている。同図は、クライアントC1がサーバS1に要求を行なっている状態でのレスポンス時間のデータを表している。
【0086】
輻輳サービス特定手段18では、サーバS1のURL単位に輻輳を監視しており、URL単位に輻輳検出閾値を設定可能であるため、サーバの応答時間がURL単位に異なる場合においても、サーバのIPアドレス単位に応答時間を測定するよりも、正確にサーバの輻輳を検出することができる。
【0087】
ルータR3で特定のURLのみが輻輳しているのを検出すると(202)、ルータR3はルータR1へ特定のURLに対する要求のみを廃棄するメッセージを送信する(203)。ルータR1において、URL指定の輻輳通知を受信すると、ルータR1の輻輳原因パケット廃棄手段13は特定のURLに対する要求のみを廃棄することができる(204)。
【0088】
通常、ルータはフィルタリング機能を有しており、特定のIPパケットを選択的に廃棄することができる。廃棄するパケットを選択するのは、前述の通りルータが具備するネットワークプロセッサの機能を利用することにより、IPパケット転送能力を悪化させることなく、IPパケットが廃棄対象のURL宛の要求であるかチェックすることが可能である。
【0089】
図13はURL指定の輻輳通知メッセージの例を示す図である。図に示すように、IPヘッダと、メッセージ識別子と、サーバのURLから構成されている。IPヘッダは、IPDAとして、クライアントC1のIPアドレスを設定し、IPSAとして、ルータR3のIPアドレスを設定する。メッセージ識別子は、輻輳通知メッセージを表す識別子である。サーバIPアドレスは、輻輳が発生したサーバのURLである。
【0090】
特定のURLが輻輳し、クライアントからの要求が規制されている状況においても、同一サーバの異なるURL宛の要求は規制されず、クライアントからの通信が可能である(205)。このような動作により、サーバの特定URLのサービスが輻輳している場合においても、きめ細かくトラフィックを制御することができ、サーバの輻輳を効率よく回避することが可能となる。
【0091】
図14は本発明の第3の実施の形態例のネットワーク構成を示す図である。クライアントC1及びC2はルータR1に接続され、サーバS1はルータR3に接続されている。ルータR1とルータR3の間には更に複数のルータを経由してもよい。このネットワーク構成における第3の実施の形態例について図15を用いて説明する。図15は本発明の第3の実施の形態例の動作を示すシーケンス図である。
【0092】
図14のルータR1は、図2のブロック図中の輻輳原因パケット廃棄手段13、通信統計記録手段14、通信規制クライアント決定手段15とを具備し、ルータR3はサーバ輻輳監視手段11及び輻輳原因パケット廃棄要求手段12を具備する。
【0093】
クライアントC1からサーバS1への要求を中継するルータR1において、ルータR1の通信統計記録手段14は、クライアントからサーバに対する通信を監視し、送信元IPアドレス、宛先IPアドレス、TCPポート番号、転送時刻、転送データ量の統計情報を記録する(301)。記録する統計情報の例を図16に示す。図16はクライアント要求状態監視データの例を示す図である。図に示すように、要求発生クライアントと、監視対象サーバと、TCPポート番号と、転送データ量と、要求時刻と、現在時刻とから構成されている。
【0094】
一般的に、ルータはIPパケットを転送するという機能を実現するため、IPパケット内の送信元IPアドレス、宛先IPアドレスを参照し、大半のルータがフィルタリング機能としてTCPのポート番号を参照する機能を有する。更に統計機能として転送したデータ量の統計情報を保持しているものがほとんどである。このため、通信統計記録手段14はルータのIPパケットの転送性能を悪化させることなく、図16の情報をメモリ領域に保持するのみで、既存のルータに容易に追加することができる。
【0095】
第1の実施の形態例で説明したルータR3のサーバ輻輳監視手段11がサーバS1の輻輳状態を検出すると(302)、ルータR3の輻輳原因パケット廃棄要求手段12は、ルータR1の輻輳原因パケット廃棄手段13へサーバS1宛の要求を規制するように通知する(303)。
【0096】
クライアントC1からサーバS1への要求をルータR1が受信すると、ルータR1の輻輳原因パケット廃棄手段13は、クライアントC1からの要求を転送するか棄却するかをルータR1の通信規制クライアント決定手段15へ問い合わせる。
【0097】
通信規制クライアント決定手段15は、通信統計記録手段14が記録している統計情報を参照し、応答を棄却するクライアントを決定し、棄却対象のクライアントC1からの要求は棄却し(304)、棄却対象外のクライアントC2からの要求は転送する(305)。
【0098】
規制するクライアントを決定する方法として、例えば最終通信時刻と、現在時刻との差分が大きいクライアントからの要求を規制する方法がある。この方法を使用すると、クライアントC1がWebサービスを利用していた際にサーバの輻輳が検出されても、クライアントC1の通信は棄却されることなく継続され、新しくWebサービスを利用しようとしていたクライアントC2かの要求が棄却される。
【0099】
ランダムに通信を規制する方法では、サーバ輻輳時にWebサービスを利用していたクライアントの通信が途中で規制され、サービスが途中で異常終了してしまう状況が発生するが、本実施の形態例の方法では、サービスを利用していたクライアントの通信が継続され、新規にサービスを利用しようとするクライアントの通信を規制するため、サーバが効率的にWebサービスを提供することができる。
【0100】
また、規制するクライアントを決定する方法として、例えば通信データ量が多いクライアントからの要求を規制する方法もある。ある特定ユーザが大量のデータを長時間にわたりダウンロードする等、サーバ及びネットワークの輻輳の原因となっている場合には、クライアントの通信をランダムに規制するのではなく、転送データ量の多いクライアントの通信を規制することで特定のユーザがサーバ資源やネットワーク資源を占有することを回避して効率的にサーバ及びネットワークを使用することができる。
【0101】
図17は本発明の第4の実施の形態例のネットワーク構成を示す図である。クライアントC1、C2はルータR1に接続され、サーバS1はルータR3に接続されている。ルータR1とルータR3の間には更に複数のルータを経由してもよい。このネットワーク構成の動作を図18に示すシーケンス図を用いて説明する。図18は本発明の第4の実施の形態例の動作を示すシーケンス図である。
【0102】
図17のルータR3は、図2に示すブロック図中のサーバ輻輳監視手段11、サーバ輻輳通知手段16を具備し、ルータR1はサーバ輻輳通知手段16を具備する。
【0103】
クライアントC1からルータR1に対して要求401を送信する。この要求401はサーバS1まで伝わり、サーバS1はこの要求401に対する応答401を返送する。この返送応答401は、クライアントC1に伝わる。クライアントC1からサーバS1への要求を中継するルータR3において、クライアントC1からサーバS1に対する要求402のレスポンス時間の情報から、第1の実施の形態例で説明したルータR3のサーバ輻輳監視手段11にてサーバS1が輻輳状態と判定された場合、ルータR3のサーバ輻輳監視手段11は、ルータR3のサーバ輻輳通知手段16にサーバS1が輻輳していることを通知する。
【0104】
ルータR3のサーバ輻輳通知手段16は、HTML形式でサーバが輻輳しているというメッセージのドキュメントを作成し、クライアントC1からHTTPリクエストに対する応答として、クライアントC1へ送信する(402)。
【0105】
更に、ルータR3の輻輳原因パケット廃棄要求手段12は、ルータR1のサーバ輻輳通知手段16へサーバS1の応答時間Taを付加した輻輳通知メッセージを通知する(403)。ルータR1のサーバ輻輳通知手段16は、輻輳しているサーバの一覧とその応答時間を保持しておく。
【0106】
図19はサーバの応答時間付き輻輳通知メッセージの例を示す図である。IPヘッダには、IPDAとして、クライアントC1のIPアドレスを設定し、IPSAとして、ルータR3のIPアドレスを設定する。メッセージ識別子は、輻輳通知メッセージを表わす識別子である。サーバIPアドレスは、輻輳が発生したサーバS1のIPアドレスである。サーバ応答時間は、現時点でのサーバS1の応答時間である。
【0107】
図20はサーバの応答時間付きアクセス規制サーバデータの例を示す図である。このデータは、ルータR1のサーバ輻輳通知手段16が管理する、サーバの応答時間付きアクセス規制サーバデータの例を示す。図には、アクセス規制サーバ(サーバS1のIPアドレス)と、対応する応答時間が示されている。
【0108】
以降、ルータR1のサーバ輻輳通知手段16がサーバの輻輳解除通知を受信するまで、ルータR1に接続されているクライアントC1から輻輳しているサーバS1に対しての要求を受信すると、ルータR1のサーバ輻輳通知手段16は、図20のサーバの応答時間付きアクセス規制サーバデータ内の応答時間Taを表示するHTML形式のドキュメントを生成し、現在のサーバ輻輳状態として、要求を行なったクライアントC1へ送信する(404)。
【0109】
この状況において、異なるクライアントC2からサーバS1に対する要求があった場合にも、サーバS1の応答時間TaをHTML形式のWebページとして生成し、クライアントC2へ通知する(405)。
【0110】
ルータR3のサーバ輻輳監視手段11は、サーバS1の輻輳状態を検出すると、第1の実施の形態例で説明した方法により、サーバS1の輻輳状態を定期的に監視する(406)。サーバS1の応答時間が設定した閾値以上変化した場合、ルータR1のサーバ輻輳通知手段16へ最新の応答時間を通知する(407)。ルータR1のサーバ輻輳通知手段16は、保持しているサーバS1の応答時間を更新する。ルータR1が、クライアントC1からの要求を棄却する際には、サーバ輻輳通知手段16が最新の応答時間Tbをクライアントへ通知する(408)。
【0111】
ルータR3のサーバ輻輳監視手段11がサーバS1の輻輳解除を検出すると(409)、ルータR1のサーバ輻輳通知手段16へ輻輳解除を通知する(410)。ルータR1のサーバ輻輳通知手段16は、管理している図20のデータから、サーバS1のエントリを削除する。以降、クライアントC1からサーバS1に対する要求は転送される。
【0112】
以上説明した方法で、サーバ輻輳時に本発明のルータによってクライアントからの要求が規制された場合、要求を発生させた利用者にサーバの輻輳度合いに関する情報が通知されるので、ユーザはサーバの輻輳状態を認識することができ、時間をおいてリトライする(輻輳しない状況での無意味なリトライをやめる)のを促すことができ、サーバが輻輳している状況を緩和させることができる。
【0113】
図21は本発明の第5の実施の形態例のネットワーク構成を示す図である。クライアントC1はルータR1に接続され、クライアントC2はルータR2に接続され、サーバS1はルータR3に接続されている。ルータR1とルータR3の間、及びルータR2とルータR3の間には更に複数のルータを経由してもよい。ルータR3は、図2のブロック図のサーバ輻輳履歴管理手段17を具備する。
(サーバ輻輳時における履歴の記録)
クライアントC1がサーバS1へアクセスする状況において、ルータR3におけるサーバ輻輳監視手段11が、サーバS1が輻輳状態に陥ったと判定した場合を考える。サーバS1の輻輳が検出されると、ルータR3の輻輳原因パケット廃棄要求手段12によってクライアントC1に対してサーバS1の輻輳検出閾値等の情報を付加した輻輳通知メッセージが送信される。
【0114】
図22は輻輳通知メッセージ例を示す図である。IPヘッダは、IPDAとして、クライアントC1のIPアドレスを設定し、IPSAとして、ルータR3のIPアドレスを設定する。メッセージ識別子は、輻輳通知メッセージを表わす識別子である。サーバIPアドレスは、輻輳が発生したサーバS1のIPアドレスを示し、輻輳検出閾値はサーバS1が輻輳検出するための閾値である。
【0115】
通知を受け取ったルータR1では、「サーバ輻輳履歴データ」を参照し、過去にクライアントC1とサーバS1間の通信において輻輳が発生したかどうかを判定する。クライアントC1−サーバS1用の「サーバ輻輳履歴データ」が存在しない、つまりはじめての輻輳発生であれば、新規に「サーバ輻輳履歴データ」を作成し、受信した輻輳通知メッセージの情報を元にクライアントC1のIPアドレス、サーバS1のIPアドレス、輻輳検出閾値を「サーバ輻輳履歴データ」内に設定する。
【0116】
図23はサーバ輻輳履歴データの構成例を示す図である。この図は、クライアントC1−サーバS1間のサーバ輻輳履歴データを示している。図に示すように、監視対象サーバと、要求発生クライアントと、輻輳検出閾値と、検出種別と、検出時刻から構成されている。
【0117】
次に、ルータR1が輻輳通知メッセージを受信した時刻を輻輳時刻として「サーバ輻輳履歴データ」内に記録する。2回目以降の輻輳発生時は、この輻輳時刻のみを「サーバ輻輳履歴データ」に追加していく。
(サーバ輻輳解除時における履歴の記録)
クライアントC1がサーバS1へアクセスする状況において、ルータR3のサーバ輻輳監視手段11がサーバS1の輻輳を検出後、サーバS1の輻輳解除を検出した場合を考える。ルータR3がサーバS2の輻輳解除を検出すると、サーバ輻輳監視手段11によってクライアントC1に対し輻輳解除通知メッセージが送信されるが、通知を受け取ったルータR1では、初回の輻輳時に生成されたクライアントC1−サーバS1用の「サーバ輻輳履歴データ」内に輻輳解除時刻を記録する。
【0118】
以降は、サーバで輻輳解除が検出される度にサーバ輻輳履歴管理手段17が該当クライアント−サーバ間のデータ内に輻輳解除時刻を追加する。図23にサーバ輻輳解除時におけるルータR1の「サーバ輻輳履歴データ」の例を示す。以上により、ルータR1ではサーバS1の情報や輻輳/輻輳解除時刻が「サーバ輻輳履歴データ」に記録される。
【0119】
また、サーバ輻輳履歴データの情報をルータR1のサーバ輻輳通知手段16を用いてクライアントC1側へ転送することにより、クライアント側からの要求に応じてサーバS1の輻輳情報(クライアントC1とサーバS2のIPアドレス、輻輳発生/輻輳解除の回数・時刻、設定された輻輳閾値等)をクライアント側の画面に表示することができる。
【0120】
このように、アクセス対象となるサーバの履歴をユーザに提示することにより、そのサーバで輻輳発生が頻発する時間帯や輻輳の程度をユーザが知ることが可能になり、影響を受けない時間帯でのアクセスをユーザに促すことで未然にサーバの輻輳発生を防ぐことが可能となる。
【0121】
図24は本発明の第6の実施の形態例のネットワーク構成を示す図である。図のルータR1は、図2のブロック図中の通信優先度決定手段19を具備する。クライアントC1とクライアントC2とクライアントC3はルータR1に接続され、サーバS1はルータR3に接続されている。ルータR1とルータR3の間には更に複数のルータを経由してもよく、例えばR1−R2−R3のルートと、R1−R4−R3の2種類のルートが存在しているものとする。
【0122】
また、従来のトラフィックエンジニアリング技術により、R1−R2−R3のルート上には帯域保証されたパス(Path)1が設定されており、一方のR1−R4−R3のルート上には帯域保証のないベストエフォート(Best Effort)なパス(Path)2が設定されているものとする。
【0123】
ここで、ルータR1のコマンドライン上等でフィルタ条件を設定することにより、ルータR1に入ってきたパケットが事前に設定されたフィルタ条件に合致すると、Path1やPath2のルート上へとパケットを転送することがトラフィックエンジニアリング機能を備えたルータでは可能となっている。設定できるフィルタ条件としては、IPヘッダ内のIPDA/IPSA/TOS/プロトコル種別、TCPヘッダ内のポート番号等から任意のパラメータを指定可能である。
【0124】
図25はルータR1におけるフィルタ条件設定の入力例を示す図である。▲1▼のコマンドは、クライアントC1(IPアドレス=XX.XX.XX.XX)からサーバS1(IPアドレス=YY.YY.YY.YY)宛のパケットを許容する条件に対し、“list−1”という名前を付与している。▲2▼のコマンドは、クライアントC2(IPアドレス=ZZ.ZZ.ZZ.ZZ)からサーバS1(IPアドレス=YY.YY.YY.YY)宛のパケットを許容する条件に対し“list−2”という名前を付与している。
【0125】
▲3▼のコマンドは、条件“list−1”の内容に合致するパケットがルータR1に流れ込んだ場合は、Path1のルート上にパケットを転送するよう設定を行なっている。▲4▼のコマンドは、条件“list−2”の内容に合致するパケットがルータR1に流れ込んだ場合は、Path2のルート上にパケットを転送するよう設定を行なっている。上記の設定が入力されると、ルータR1では、図26に示すような「フィルタ条件データ」が作成される。
【0126】
図26はルータR1におけるフィルタ条件データを示す図である。図に示すように、送信元IPアドレスと、送信元マスクと、送信先IPアドレスと、送信先マスクと、プロトコル種別と、TOS値と、送信元ポート番号と、送信先ポート番号と、対応Pathから構成されている。
【0127】
既存のトラフィックエンジニアリング技術を用いた上記の条件で、クライアントC1とクライアントC2がサーバS1へアクセスする状況にある場合、サーバS1の輻輳時にルータR1の通信優先度決定手段19がクライアントの優先度に従ってサーバS1宛のパケットの振る舞いを決定することができる。
【0128】
先ず、ルータR3のサーバ輻輳監視手段11がサーバS1の輻輳を検出すると、輻輳原因パケット廃棄要求手段12がルータR1に対して輻輳通知メッセージを送信する。そして、通知を受けたルータR1の輻輳原因パケット廃棄手段13により廃棄対象となるクライアント(C1及びC2)が決定されるが、その際に輻輳原因パケット廃棄手段13は通信優先度決定手段19に問い合わせを行ない、ルータR1が保持しているフィルタ条件データと比較する。
【0129】
Path1のような帯域保証されたパスと関連付けられたクライアントC1は高優先、Path2のようなベストエフォートなパスと関連付けられたパスは中優先とみなし、これらは転送すべきパケットとして廃棄対象から外す。この結果、サーバS1が輻輳状態にある場合でも、クライアントC1及びC2からのパケットについてはルータR1で一律破棄を行なうのではなく、クライアントC1からのパケットは帯域保証されたPath1ルートに流し、クライアントC2からのパケットはベストエフォートなPath2ルートに継続して流すことが可能となる。
【0130】
但し、ルータR1配下に存在するC1とC2以外のクライアントは低優先とみなし廃棄対象となるため、例えばクライアントC3がサーバS1との通信を行おうとした場合は、ルータR1においてパケットは一律破棄される。
【0131】
また、優先クライアントの使用するパスについて、ルータの持つトラフィックエンジニアリング機能を利用し事前に迂回経路を設定しておけば、優先クライアントのパス上でノード/リンク障害が起きた場合でも、クライアント側で特に意識することなくサーバへ向けた転送を継続することができる。
【0132】
例えば、図27に示すように、ルータR1とルータR3間にルータR5を経由するもう1本のパス“Path”3がされているとすると、ルータR1においてトラフィックエンジニアリング機能によりPath1の迂回経路としてPath3を設定しておけば、Path1で障害が発生した場合でも、瞬時にPath3へ切り替えることが可能であり、優先すべきクライアントについてパケットロスの影響なく通信可能となる。但し、迂回経路を設定しない場合は、OSPF等のルーティングプロトコルの優先経路に従ったベストエフォートな経路に従ったルートで転送される。
【0133】
このように、サーバの輻輳時に全クライアントのパケットを無作為に破棄するのではなく、トラフィックエンジニアリング機能を備えたルータの持つ、フィルタ条件に従ったパス選択機能と連携させることで、クライアント毎のパケットの扱いをルータ側できめ細かく制御することが可能となる。
【0134】
例えば、あるWebサイトを有するサーバで輻輳が発生した場合でも、ISPと優先サービスを契約した顧客に対してはアクセスを拒否することなく安定したサービスを料金に応じて段階的に提供するが、契約外の通常の顧客に対してはアクセス拒否を行なうといったサービスの差別化を、ルータを保有するISP(インターネットサービス事業者)側で提供することが可能となる。
【0135】
例えば、ルータが100台あり、各ルータに10台ずつのサーバが接続されているネットワークがあり、この合計1000台のサーバ輻輳回避及びこのネットワークの輻輳回避を行なう場合、1000台のサーバに対して、輻輳回避に関する機能追加が必要であり、仮にルータと制御サーバの性能が同じだと仮定すると、1台の制御サーバで10台の処理サーバの輻輳制御ができるとした場合、100台の制御サーバが必要となる。
【0136】
ハードルーティングが可能なルータの場合、安定状態ではCPUは空いているので、専用のプロセッサを積む必要はなく、制御サーバでできる程度の輻輳制御であれば、特にコストを上げずに既存のルータで実現できるため、100台の制御サーバの費用+1000台の処理サーバに機能を盛り込むための費用が浮くことになる。
【0137】
本発明によれば、以下に示すような効果が得られる。
1.サーバ側に特別な機能を持つことなく、本発明のルータに接続されたサーバの輻輳回避が可能である。
2.サーバ輻輳時のクライアントからのリトライによるネットワーク輻輳回避が可能である。
3.サーバを収容しているルータと、クライアントを収容しているルータが連携することで、WebページのURLやFTPのディレクトリ等の単位で輻輳制御を行ない、特定のサービスのみが輻輳している場合には、当該サービスのパケットのみを廃棄することで、サーバの輻輳を効果的に回避することが可能となる。
4.クライアント/サーバに特別な機能を持つことなく、パケットを無作為に廃棄することによるサービス中断を防止し、輻輳原因となっている通信を効果的に規制することが可能となる。
5.サーバ輻輳時に、ユーザが通信タイムアウトを持たずに、サーバ輻輳及びどのくらいの時間にサーバにアクセスすれば空いているか等の輻輳に関する情報を認識することで、ユーザの利便性を向上させることが可能となる。
6.サーバ側に特別な機能を持つことなく、ルータに収容されている全てのサーバの輻輳履歴を集中管理することが可能となる。
7.ISP等の多数のサーバが接続されたネットワークにおいて、従来技術のようにアクセス制御サーバが全サーバの輻輳を監視し、クライアントが接続された多数のルータに対してフィルタを設定するためには、サーバ数、ネットワーク規模に応じた多数のアクセス制御サーバが必要となるが、本発明ではルータのみの導入で輻輳制御が実現可能である。
8.ハードルーティングを行なうルータの場合、安定動作中のCPUは殆ど動作していないが、アクセス制御サーバと同様の処理をルータのソフトウェアで実現することで、ルータのCPUを有効利用し、ISP等の大規模ネットワークにおける全体のコストを低く抑えることが可能である。
9.本発明の輻輳制御をルータのハード機能で実現することにより、アクセス制御サーバのソフトウェアで実現する場合に比較して、けた違いに多数のサーバを1台のルータで制御することが可能である。
10.ルータ側にクライアント毎の優先度を設定しておくことにより、輻輳したサーバへの通信を行なうクライアントに対し、入側ルータでの廃棄対象とするか、帯域制御により回線帯域を制限するか、迂回経路を使用するか、等の提供サービスの差別化を行なうことが可能である。
【0138】
(付記1) サーバとクライアントが設置されるネットワークシステム上のルータであって、
LANフレームを受信するLANフレーム受信部と、該LANフレーム受信部の出力を受けて帯域制御や迂回経路を設定するトラフィックエンジニアリング制御部と、該トラフィックエンジニアリング制御部の出力を受けてルーティング処理を行なうルーティング処理部と、該ルーティング処理部の出力を受けてLANフレームを送信するLANフレーム送信部とを具備するものにおいて、
前記各構成要素と接続され、サーバの輻輳を検出すると共に、サーバの輻輳を検出したら、サーバの輻輳制御を行なうサーバ輻輳制御手段
を設けたことを特徴とするネットワーク及びサーバの負荷低減ルータ。
【0139】
(付記2) サーバ宛のパケットの応答遅延を監視してサーバの輻輳を自動的に検出するサーバ輻輳監視手段と、
サーバの輻輳/輻輳解除検出時に、輻輳原因となっているパケットの廃棄/中継を、クライアントを収容するルータに対して要求する輻輳原因パケット廃棄要求手段とを前記サーバ輻輳制御手段内に設けたことを特徴とする付記1記載のネットワーク及びサーバの負荷低減ルータ。
【0140】
(付記3) サーバを収容しているルータで、輻輳しているサーバのサービスを特定する輻輳サービス特定手段と、クライアントを収容しているルータで、輻輳しているサーバのサービスに関するパケットのみを廃棄する輻輳原因パケット廃棄手段を前記サーバ輻輳制御手段内に設けたことを特徴とする付記2記載のネットワーク及びサーバの負荷低減ルータ。
【0141】
(付記4) クライアント−サーバ間のパケットを監視し、サーバ−クライアント間のパケット通信量や最終通信時刻等の統計情報を記録する通信統計記録手段と、サーバ輻輳時に、クライアントを収容するルータに対してパケット廃棄を要求する時に、新たに通信を開始するクライアントや通信量が規定量を超えているクライアントのパケット通信を制限するクライアントを決定する通信制御クライアント決定手段とを前記サーバ輻輳制御手段内に設けたことを特徴とする付記2記載のネットワーク及びサーバの負荷低減ルータ。
【0142】
(付記5) サーバの輻輳検出時に、輻輳原因となるパケットを廃棄すると同時に、クライアントに対してサーバ輻輳を通知するサーバ輻輳通知手段を前記サーバ輻輳制御手段内に設けたことを特徴とする付記2記載のネットワーク及びサーバの負荷低減ルータ。
【0143】
(付記6) サーバ輻輳の履歴を管理するサーバ輻輳履歴管理手段を前記サーバ輻輳制御手段内に設け、前記サーバ輻輳通知手段により輻輳履歴情報をクライアントに通知することを特徴とする付記5記載のネットワーク及びサーバの負荷低減ルータ。
【0144】
(付記7) 優先/非優先にすべきクライアントの持つクラスを事前に設定し、そのクラスに応じたパケットに対する挙動を決定する通信優先度決定手段を前記サーバ輻輳制御手段内に設けたことを特徴とする付記2記載のネットワーク及びサーバの負荷低減ルータ。
【0145】
【発明の効果】
以上、説明したように、本発明によれば、以下のような効果が得られる。
(1)請求項1記載の発明によれば、サーバの輻輳を検出したサーバ輻輳制御手段10は、サーバの輻輳制御を行なって、サーバの輻輳を低減することができる。
(2)請求項2記載の発明によれば、サーバ側に機能を持つことなく、ルータに収容された全てのサーバの輻輳回避を行なうと同時に、サーバ輻輳時のクライアントからのリトライによるネットワーク輻輳を回避することができる。
(3)請求項3記載の発明によれば、輻輳原因となっているパケットを、宛先サーバのアドレスやプロトコルで識別するだけでなく、WebページのURLやFTP(File Transfer Protocol:TCP/IPで用いられるファイル転送プロトコル)のディレクトリ等の輻輳しているサービスに関するパケットのみの廃棄を可能とすることができる。
(4)請求項4記載の発明によれば、特定のクライアントのみの通信を規制することを可能とし、パケットを無作為に廃棄することによるサービス中断を防止し、輻輳原因となっている通信を効果的に規制することができる。
(5)請求項5記載の発明によれば、ユーザが通信タイムアウトを持たずサーバ輻輳及び輻輳に関する情報を認識することを可能とし、ユーザの利便性を向上させることができる。
【0146】
このように、本発明によれば、ルータに収容される全てのサーバに対して、サーバ側に特殊な機能を盛り込むことなく、自動的にサーバの輻輳を検出することができ、クライアントを収容するルータと連携することで、サーバ及びネットワーク全体の輻輳回避が容易に実現することができるネットワーク及びサーバの負荷軽減ルータを提供することができる。
【図面の簡単な説明】
【図1】本発明の原理ブロック図である。
【図2】本発明の第1一実施の形態例を示すブロック図である。
【図3】本発明の第1の実施の形態例のネットワーク構成を示す図である。
【図4】本発明の第1の実施の形態例の動作を示すシーケンス図である。
【図5】サーバ輻輳状態監視データの例を示す図である。
【図6】輻輳通知メッセージの例を示す図である。
【図7】輻輳通知メッセージ管理データの例を示す図である。
【図8】アクセス規制サーバデータの例を示す図である。
【図9】輻輳解除通知メッセージの例を示す図である。
【図10】本発明の第2の実施の形態例のネットワーク構成を示す図である。
【図11】本発明の第2の実施の形態例の動作を示すシーケンス図である。
【図12】URL毎のサーバ輻輳状態監視データの例を示す図である。
【図13】URL指定の輻輳通知メッセージの例を示す図である。
【図14】本発明の第3の実施の形態例のネットワーク構成を示す図である。
【図15】本発明の第3の実施の形態例を示すシーケンス図である。
【図16】クライアント要求状態監視データの例を示す図である。
【図17】本発明の第4の実施の形態例のネットワーク構成を示す図である。
【図18】本発明の第4の実施の形態例の動作を示すシーケンス図である。
【図19】サーバの対応時間付き輻輳通知メッセージの例を示す図である。
【図20】サーバの応答時間付きアクセス規制サーバデータの例を示す図である。
【図21】本発明の第5の実施の形態例のネットワーク構成を示す図である。
【図22】第5の実施の形態例における輻輳通知メッセージ例を示す図である。
【図23】サーバ輻輳履歴データの構成例を示す図である。
【図24】本発明の第6の実施の形態例のネットワーク構成を示す図である。
【図25】ルータR1におけるフィルタ条件設定の入力例を示す図である。
【図26】ルータR1におけるフィルタ条件データを示す図である。
【図27】転送ルートの障害切り替え動作例を示す図である。
【図28】ルータの概念図である。
【図29】従来のルータの概念を示すブロック図である。
【図30】LANフレーム受信部、LANフレーム送信部、ルーティング処理部の説明図である。
【図31】トラフィックエンジニアリング制御部の説明図である。
【符号の説明】
1 LANフレーム受信部
2 トラフィックエンジニアリング制御部
3 ルーティング処理部
4 LANフレーム送信部
10 サーバ輻輳制御手段
Claims (4)
- サーバとクライアントが設置されるネットワークシステム上のルータであって、LANフレームを受信するLANフレーム受信部と、該LANフレーム受信部の出力を受けて帯域制御や迂回経路を設定するトラフィックエンジニアリング制御部と、該トラフィックエンジニアリング制御部の出力を受けてルーティング処理を行なうルーティング処理部と、該ルーティング処理部の出力を受けてLANフレームを送信するLANフレーム送信部とを具備するものにおいて、
前記各構成要素と接続され、サーバの輻輳を検出すると共に、サーバの輻輳を検出したら、サーバの輻輳制御を行なうサーバ輻輳制御手段を設け、
サーバ宛のパケットの応答遅延を監視してサーバの輻輳を自動的に検出するサーバ輻輳監視手段と、サーバの輻輳/輻輳解除検出時に輻輳原因となっているパケットの廃棄/中継を、クライアントを収容するルータに対して要求する輻輳原因パケット廃棄要求手段とを前記サーバ輻輳制御手段内に設けたことを特徴とするネットワーク及びサーバの負荷低減ルータ。 - サーバを収容しているルータで、輻輳しているサーバのサービスを特定する輻輳サービス特定手段と、クライアントを収容しているルータで、輻輳しているサーバのサービスに関するパケットのみを廃棄する輻輳原因パケット廃棄手段とを前記サーバ輻輳制御手段内に設けたことを特徴とする請求項1記載のネットワーク及びサーバの負荷低減ルータ。
- クライアント−サーバ間のパケットを監視し、サーバ−クライアント間のパケット通信量や最終通信時刻等の統計情報を記録する通信統計記録手段と、サーバ輻輳時に、クライアントを収容するルータに対してパケット廃棄を要求する時に、新たに通信を開始するクライアントや通信量が規定量を超えているクライアントのパケット通信を制限するクライアントを決定する通信制御クライアント決定手段とを前記サーバ輻輳制御手段内に設けたことを特徴とする請求項1記載のネットワーク及びサーバの負荷低減ルータ。
- サーバの輻輳検出時に、輻輳原因となるパケットを廃棄すると同時に、クライアントに対してサーバ輻輳を通知するサーバ輻輳通知手段を前記サーバ輻輳制御手段内に設けたことを特徴とする請求項1記載のネットワーク及びサーバの負荷低減ルータ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003164770A JP4099108B2 (ja) | 2003-06-10 | 2003-06-10 | ネットワーク及びサーバの負荷低減ルータ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003164770A JP4099108B2 (ja) | 2003-06-10 | 2003-06-10 | ネットワーク及びサーバの負荷低減ルータ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005005836A JP2005005836A (ja) | 2005-01-06 |
JP4099108B2 true JP4099108B2 (ja) | 2008-06-11 |
Family
ID=34091454
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003164770A Expired - Fee Related JP4099108B2 (ja) | 2003-06-10 | 2003-06-10 | ネットワーク及びサーバの負荷低減ルータ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4099108B2 (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006345406A (ja) | 2005-06-10 | 2006-12-21 | Ntt Docomo Inc | 携帯通信端末、記憶媒体 |
JP4616728B2 (ja) * | 2005-08-19 | 2011-01-19 | 株式会社日立製作所 | パケット転送システム |
JP4537937B2 (ja) * | 2005-11-02 | 2010-09-08 | 日本電信電話株式会社 | 輻輳制御方法、輻輳制御プログラム、および、輻輳制御システム |
WO2007091305A1 (ja) * | 2006-02-08 | 2007-08-16 | Fujitsu Limited | ワーム対策プログラム、ワーム対策装置、ワーム対策方法 |
US7782759B2 (en) * | 2006-04-21 | 2010-08-24 | Microsoft Corporation | Enabling network devices to run multiple congestion control algorithms |
JP2007312277A (ja) * | 2006-05-22 | 2007-11-29 | Nippon Telegr & Teleph Corp <Ntt> | VoIPネットワークにおける呼制御信号の輻輳制御方法、VoIPゲートウェイ装置およびプログラム |
JP5392003B2 (ja) * | 2009-03-30 | 2014-01-22 | 富士通株式会社 | 中継装置、状態通知方法、および、コンピュータプログラム |
JP5190498B2 (ja) * | 2010-09-15 | 2013-04-24 | 株式会社東芝 | 中継装置、中継システム、及び中継プログラム |
WO2012133300A1 (ja) * | 2011-03-29 | 2012-10-04 | 日本電気株式会社 | 仮想デスクトップシステム、ネットワーク処理装置、管理方法、及び管理プログラム |
CN102752792B (zh) * | 2011-12-26 | 2015-08-19 | 华为技术有限公司 | 监测移动终端上网业务质量的方法、设备及系统 |
JP6324026B2 (ja) * | 2013-11-07 | 2018-05-16 | 三菱電機株式会社 | 通信装置、制御装置、ネットワークシステムおよびネットワーク監視制御方法 |
-
2003
- 2003-06-10 JP JP2003164770A patent/JP4099108B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2005005836A (ja) | 2005-01-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Savage et al. | Detour: Informed Internet routing and transport | |
US9258323B1 (en) | Distributed filtering for networks | |
JP3923863B2 (ja) | リクエストルータ装置 | |
US8072901B1 (en) | Technique for efficient probing to verify policy conformance | |
US6154776A (en) | Quality of service allocation on a network | |
US7990847B1 (en) | Method and system for managing servers in a server cluster | |
US7058015B1 (en) | Distributed solution for regulating network traffic | |
EP1511220B1 (en) | Non-intrusive method for routing policy discovery | |
US6801503B1 (en) | Progressive and distributed regulation of selected network traffic destined for a network node | |
JP2009522877A (ja) | 任意のデータフロー用の高信頼性、高スループット、高パフォーマンス転送及びルーティングメカニズム | |
CN111245740B (zh) | 配置业务的服务质量策略方法、装置和计算设备 | |
JP4099108B2 (ja) | ネットワーク及びサーバの負荷低減ルータ | |
US20050138038A1 (en) | Dynamic links in content-based networks | |
Cisco | access-list (IPX extended) to ipx broadcast-fastswitching | |
Cisco | Configuring Novell IPX | |
Cisco | General Commands | |
Cisco | Configuring IP Services | |
Cisco | Configuring IP Services | |
Cisco | Configuring IP Services | |
Cisco | Configuring IP Services | |
Cisco | Configuring Novell IPX | |
Cisco | Global Configuration Mode Commands | |
Cisco | Configuring Novell IPX | |
Cisco | Configuring Novell IPX | |
Cisco | Configuring Novell IPX |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060328 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071130 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071211 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080208 Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20080208 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080311 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080314 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110321 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110321 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120321 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130321 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140321 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |