JP4849270B2 - コンピュータ装置 - Google Patents

コンピュータ装置 Download PDF

Info

Publication number
JP4849270B2
JP4849270B2 JP2008031400A JP2008031400A JP4849270B2 JP 4849270 B2 JP4849270 B2 JP 4849270B2 JP 2008031400 A JP2008031400 A JP 2008031400A JP 2008031400 A JP2008031400 A JP 2008031400A JP 4849270 B2 JP4849270 B2 JP 4849270B2
Authority
JP
Japan
Prior art keywords
packet
packet length
data
reception
cpu
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.)
Active
Application number
JP2008031400A
Other languages
English (en)
Other versions
JP2009194504A (ja
Inventor
秀彦 花岡
健 冨▲高▼
一夫 森岡
昭浩 佐田
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.)
Iwatsu Electric Co Ltd
Original Assignee
Iwatsu Electric Co Ltd
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 Iwatsu Electric Co Ltd filed Critical Iwatsu Electric Co Ltd
Priority to JP2008031400A priority Critical patent/JP4849270B2/ja
Publication of JP2009194504A publication Critical patent/JP2009194504A/ja
Application granted granted Critical
Publication of JP4849270B2 publication Critical patent/JP4849270B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、受信側のCPU負荷が高くなったときに特定のパケットを優先的に受信処理することのできるコンピュータ装置およびパケット受信制御方法に関する。
従来のコンピュータ装置99のIPパケットの受信処理手順について図10を用いて説明する。この図において、コンピュータ装置99は、通信回線を通して伝送されてきた自装置宛てのデータパケットD1〜D4をイーサネット(登録商標)コントローラ(以下、伝送コントローラという。)10で受信する(ステップS1)。この受信データはCPUから制御できる受信データバッファ14に順次コピーされる(ステップS2)。
また、伝送コントローラ10は、受信のたびにハードウェアによる割込み信号を発生させて割込みドライバ11を起動し、受信したパケットを受信データバッファ14に転送したことをCPUへ伝える(ステップS3)。割込み信号によって起動された割込みドライバ11は、オペレーティングシステム(以下、OSという。)12に受信イベント通知1を発生させる(ステップS4)。以降は、イーサネット(登録商標)データ受信ドライバ(以下、受信ドライバという。)13、IPスタック15、アプリケーション16に対して順次受信イベント通知が行われ(ステップS5〜ステップS7)、アプリケーション16によって受信データバッファ14からデータが読み出される(ステップS8)。
以上の処理において、ステップS1〜ステップS3まではハードウェアで行われ、CPUの処理能力に関係なく実行される。このため、CPUの処理能力限界に近い場合、ステップS4以降の途中でステップS1〜ステップS3までの処理が行われることになる。
このとき、ステップS4以降の処理が完了しないうちに、ステップS1〜ステップS3の処理を繰り返し行われると、受信したパケットのデータが受信データバッファ14に蓄積されていく。ステップS4以降の処理で受信データバッファ14からデータを取り出す処理が遅れると、受信データバッファ14がオーバフローし、伝送コントローラ10が受信データバッファ14にコピーできなかったデータは廃棄されることになる。
このように、輻輳時などCPUの負荷が高い状態にあるときに、重要なデータが廃棄される可能性がある。たとえば、VoIPの音声パケットとそれ以外のパケットが混在するとき、音声パケットが廃棄されると音声品質が悪くなるという問題が生じる。
受信装置において特定のパケットを優先的に処理する技術として、特許文献1には、パケット簡易検査手段によって、特定ポート番号を持つパケットを監視して該当するパケットのIPアドレスを抽出し、次に、パケット詳細検査手段によって、抽出されたIPアドレスを持つパケットを監視し、該当するパケットを、TCP/UDPレベルにおいて解析して、データ通信時のポート番号の情報を取得し、このポート番号を持つパケットの優先度を高優先度に設定することによって、データ通信時のポート番号が不定でも、QoS保証するパケット伝送装置が記載されている。
また、特許文献2では、パケット受信部とパケット処理部との間にパケット入力制限処理部を設け、パケット処理部の輻輳判定時には、パケット入力制限処理部を動作させて、パケットタイプをイーサネット(登録商標)ヘッダ、IPヘッダ、およびTCP/UDPヘッダで判定し、指定されたタイプのパケットを優先的にパケット処理部に通過させることによって、輻輳の発生時にパケット受信部からパケット処理部に引き継ぐパケットを特定のパケットに絞り込むことにより、優先されるべき特定のパケットの通過を確保して輻輳を早期に解消することのできるパケット処理装置が提案されている。
特開2003−87300号公報 特開2006−238039号公報
しかしながら、上記の各特許文献の技術は、特定のポートや各種ヘッダのパケットタイプを監視することによるCPUの処理負荷が大きく、この負荷の軽減が望まれている。
また、特許文献2では、パケットの優先受信処理を行う機能のみしか利用されないキューの上限値で輻輳判定を行っているため、コンピュータ装置が他の機能と平行して処理を行っているような場合、他の機能に影響を与える虞がある。
本発明は、上述のかかる事情に鑑みてなされたものであり、CPU使用率に応じて受信ドライバから上位レベルへのイベント通知を制御することによって、CPUに負担をかけずに音声データなど特定のデータの優先受信処理を実行することのできるコンピュータ装置およびパケット受信制御方法を提供することを目的とする。
上記目的を達成するため、本発明はCPUの機能ブロックにCPUの使用率(負荷)を測定し、そのCPU使用率を受信ドライバから参照させるためのインタフェースを持たせ、受信ドライバは定期的にCPUの使用率を読み込んで、指定したCPU負荷の上限以上になったときに、パケット長が設定された閾値以下であるショートパケットのみを受信し、閾値より大きいロングパケットを廃棄するという処理を実行させるようにした。
これにより、CPU負荷が高くなったときでもショートパケット以外のパケットを廃棄し、ショートパケットの伝送品質を担保する。特に音声データとそれ以外のデータの混在する通信システムにおいては、音声データをショートパケットで送信し、それ以外のデータをロングパケットで送信することによって、CPU負荷が高くなったときでも音声データの品質を確保することができる。
具体的には、本発明に係わるコンピュータ装置は、CPUを有しデータ処理を実行する演算処理部と、伝送パケットの受信処理を行う受信処理部とを有し、受信処理部で受信したデータをイベント通知によって演算処理部へ渡すコンピュータ装置であって、受信処理部は、演算処理部に対して受信データを渡すか否かを判定するための閾値となるパケット長を保存し、データ受信時に受信データのパケット長と閾値とを比較して閾値以下のパケット長の受信データのみを演算処理部に渡すことを特徴とする。演算処理部には、CPUの使用率を測定するCPU使用率測定手段を設け、当該使用率に応じて、閾値の設定や変更を行う。
本発明では、伝送コントローラのステータスレジスタを読むことで取得することのできるパケット長によって受信データをフィルタリングし、イベント通知を減らして演算処理部の負荷を軽減する。なお、CPU使用率は、CPUのアイドル時間に基づいて決めても良いし、特定のタスクの起動周期等によって判定をしても良い。「コンピュータ装置」は、いわゆる汎用のコンピュータのほか、通信データを中継するルータなどの専用の装置も含む。
また、本発明に係わるコンピュータ装置の演算処理部は、CPU使用率が予め備える基準値を超えたときに、輻輳状態にあることを前記受信処理部へ通知し、前記受信処理部は、受信したデータをもとに受信データのパケット長リストを作成し、当該通知を受けたときに、該パケット長リストを参照して現在の閾値として設定されているパケット長よりも小さいパケット長を新たな閾値として設定することを特徴とする。
本発明では、受信データからそのパケット長の履歴を保存しておいて、CPUの負荷が高くなったときに、順次小さいパケット長に閾値を更新していく。
なお、複数回線の伝送データを処理するコンピュータ装置においては、回線の優先度に基づいて、優先度が高くなるに伴って順に小さいパケット長を回線ごとに割付け、CPU使用率が高くなるに従って、優先度の低い回線から順にその回線のパケット長を前記閾値として設定すると良い。
また、本発明に係わるコンピュータ装置では、演算処理部は、CPU使用率の測定処理における上限となる第1の基準値と下限となる第2の基準値とを有し、CPU使用率が第1の基準値以上になったときに、パケット長リストに基づいて、現在の閾値となっているパケット長よりも小さいパケット長を新たな閾値として設定し、CPU使用率が第2の基準値以下になったときにパケット長リストに基づいて、現在の閾値となっているパケット長よりも大きいパケット長を新たな閾値として設定し、受信処理部は、受信処理を実行する伝送コントローラを有し、該伝送コントローラは演算処理部により設定された閾値に基づいて、設定されている閾値よりも大きいパケット長のデータを受信したときは該データの廃棄処理を実行し、閾値以下のパケット長のデータを受信したときは該データを演算処理部から読み込み可能な受信データバッファへ転送すると共に割込み信号を発生させて受信を通知することを特徴とする。
本発明では、伝送コントローラ(ハードウェア)と演算処理部のソフトウェアとで機能分担をし、ソフトウェアから伝送コントローラに閾値を設定するようにして、伝送コントローラでは、この閾値と受信データのパケット長とを比較して廃棄処理や割込み信号の制御を実行する。ここで、廃棄とは、全部廃棄のほか、何回かに1回定期的に廃棄するといういわゆる間引き処理も含む。
なお、演算処理部において、CPUの実行するタスクの優先度に基づいて、高優先度のタスクに対しては小さいパケット長を割り付け、CPUの負荷が高くなるに従って、優先度の低いタスクから順にそのタスクのパケット長を閾値として設定することによって、高負荷時のタスクの優先制御も可能となる。
本発明に係わるパケット受信制御方法は、UDPパケットとTCPパケットの混在する伝送データを受信処理するコンピュータ装置のパケット受信制御方法であって、UDPパケットにはTCPパケットに比べて、相対的に小さいパケット長を割り付け、CPU使用率が予め定められた基準値以上になったときは、受信ドライバの処理により、UDPパケットのパケット長を閾値として当該閾値よりも大きいパケット長のデータは廃棄し、該閾値以下のパケット長は受信処理することを特徴とする。
特にコンピュータ装置をVoIPルータとして機能させる場合、トラフィックの増加等によって輻輳状態に陥ったときでも、本発明により音声パケットの品質の低下を防止することができる。
本発明によれば、データの優先度に基づいて優先度の高いデータについては小さなパケット長を設定し、受信データのパケット長とCPU使用率に応じて定まる閾値とを比較して、閾値以下のパケットのみを受信して上位層へイベント通知を行うので、CPU使用率が高くなったときでも優先度の高いデータを確実に処理しつつ、CPUの負荷を軽減することができる。また、音声データについては、音声以外のデータに比べてパケット長を小さく設定することによって、音声の途切れを生じさせることなく、輻輳状態を回避することができる。
さらに複数の音声回線を扱うルータ等のコンピュータ装置にあっては、重要な回線のパケット長を短く設定することによって、輻輳状態になったときでも重要な回線の音声品質を維持することができる。
図1は、本発明の第1の実施の形態によるコンピュータ装置1の機能説明図である。図10の従来構成との主な違いは、アプリケーションプログラムとして実現されるCPU使用率測定手段17を設け、当該手段17によって計算されたCPU使用率データを受信ドライバ13から読み込み可能にしたことである。このコンピュータ装置1は、たとえば図2に示すように、スイッチングHUB51を介して、複数のVoIP電話機52や汎用コンピュータ等で構成される端末装置53と接続して用いられる。
次に、上記の構成におけるコンピュータ装置1の動作を説明する。
コンピュータ装置1のCPU使用率測定手段17は周期的に起動し、CPUの使用率を計算する。CPU使用率の計算方法としては、たとえばアイドル状態で動作するプログラムの一定時間内の動作時間を測定し、プログラムが動作する時間が短くなるほどCPU使用率が上がってくると判断することができる。
一方、端末装置53やVoIP電話機52から送信されるデータは、コンピュータ装置1の伝送コントローラ10で受信される。なお、VoIP電話機同士は、端末装置間で伝送されるパケット長(パケットサイズ)よりも小さいパケット長で通信されるように設定されている。
伝送コントローラ10には、図1に示すように、伝送データが入力される。ここで、伝送データDs1〜Ds3は、VoIP電話機52からのショートパケット、伝送データDLは端末装置53からのロングパケットを表している。
伝送コントローラ10は、伝送データの受信ごとに、このデータを受信データバッファ14へDMA転送し、割込み信号を発生する。割込みドライバ11は、この割込み信号を受けるとOS12へ受信イベント通知を行い、さらにOS12は、受信ドライバ13に受信イベント通知を行う。
以下、図3を用いて受信ドライバ13の処理を説明する。
受信ドライバ13は、OS12からの受信イベント通知によって起動すると、CPU使用率測定手段17によって計算されたCPU使用率データ18を読み込み(ステップS11)、予め設定された基準値より大きいか否かを判定する(ステップS12)。判定の結果、CPU使用率データが基準値より大きい場合は(ステップS12で「YES」)、次に、受信データのパケット長が予め設定された閾値より大きいか否かを判定し、大きい場合はその受信データを廃棄して、受信イベント通知は発生させない(ステップS14)。この廃棄の仕方としては、直前の受信データのリンクチェーンを次のショートパケットへつなげるという処理によって実現できる。なお、閾値は、VoIP電話機52から送信される音声パケットのパケット長を設定しても良いし、端末装置53から送られてくるデータのパケット長と音声パケットのパケット長の中間の値を設定するようにしても良い。
ステップS12で、CPU使用率が基準値以下の場合、または、ステップS13で受信データが閾値以下の場合は、IPスタック15に受信イベント通知を発生する(ステップS13)。
これによりCPUの負荷が高くなりCPU使用率が一定値以上になると、端末装置53からのデータは廃棄され、VoIP電話機52からの音声パケットが優先的に受信されるようになる。
(閾値の設定方法)
以下、パケット廃棄の判定条件となる閾値の設定方法について説明する。
まず図4に示すシステム構成を構築する。すなわち、コンピュータ装置1にスイッチングHUB51を介してVoIP電話機52と接続し、定サイズパケット送信装置60を両スイッチングHUB51に接続して、定サイズパケット送信装置60からロングパケットを送信しコンピュータ装置1で中継されたデータを受信する。なお、定サイズパケット送信装置としては、米国スパイレント・コミュニケーションズ社の提供するスマートビット(SmartBits,登録商標)などがある。
この構成において、コンピュータ装置1のCPU処理能力の上限になるように定サイズパケット送信装置60からのパケットの送信量を調整する。たとえば、VoIPルーティングの処理にCPU処理能力の20%を割り当てる場合は、音声パケット以外のパケットに対しては80%が上限になるように調整する。すなわち、CPU使用率測定手段17は、音声パケット以外のパケットによるタスクの占有割合をCPU使用率データとして保存するようにして、この値が80%を超えると、受信ドライバ13が廃棄処理を実行するように設定する。また、VoIP電話機52のパケット長を測定して、このパケット長を閾値として保存する。なお、パケット長が予め決まっているような場合は、その値を閾値として直接設定する。以上の手順で調整を行い、また閾値を登録して運用を開始する。
受信データバッファに格納できないパケットデータは、これまでデータの種別(たとえば音声パケットか否か)によらずハードウェアで無作為に廃棄されていたが、本実施の形態によれば、CPUが受信ドライバ内で、パケット長をもとに廃棄/非廃棄の判定をするので、判定処理にCPU負荷をかけることなく、音声パケットの廃棄を起こしにくいコンピュータ装置を実現することができる。
以上は、音声パケットとそれ以外のパケットの混在する通信システムにおいて、音声パケットを相対的に小さいパケット長として、CPUが高負荷になったときに、パケット長に基づいて音声パケットを優先して受信処理する方式であるが、データの用途やプロトコルの違いによってパケット長を割り付けて受信制御を行うようにしても良い。なお、ロングパケットの設定がされていても条件によっては短いパケット長でデータが送出される場合もあり得るが、このよう場合でもロングパケットを制限することによって総合的にCPU負荷を軽減することができる。
次に本発明の第2の実施の形態を説明する。第1の実施の形態は、受信ドライバから上位のプログラムへのイベント通知を減らすことによってCPU負荷の削減を行ったが、本実施の形態は、伝送コントローラの機能として閾値となるパケット長を読み込んで、その閾値以下のパケットのみを受信してソフトウェアへ渡し、閾値を超えるパケットは廃棄して割込み信号を発生させないようにしたものである。
本実施の形態によるコンピュータ装置の伝送コントローラ20は、図5に示すようにDMA機能やPCIバスなどCPUとのインタフェース機能を実行するバスインタフェース28、送信処理を行う送信回路群22、受信処理を行う受信回路群21、受信したMAC制御フレームの認識やMAC制御フレームの送信などの制御手順を実行するフロー制御手段23、物理媒体からのステーション管理データ信号を処理するステーション管理手段24、MACのステータスの表示やバスインタフェース28を通して設定された動作条件を保存するコントロール・ステータスレジスタ群25、受信の可否判定のためのパケット長を保存する閾値保存手段26、受信したデータのパケット長をチェックして廃棄するか否かを判定するパケット長チェック/廃棄処理手段27、および、物理媒体とのインタフェースである媒体インタフェース29で構成されている。
ここで、送信回路群22は、送信用FIFO、プリアンブル・ジャム発生器、CRC発生器、パリティチェッカ、バックオフ制御回路などから構成され、受信回路群21は、受信用FIFO、アドレス識別用ARCブロック、CRC発生器・検査器、パリティ発生器などから構成され、ループバック処理、キャリア検出多重アクセス・衝突検出などを行う。本実施の形態による伝送コントローラ20の特徴とするところは、従来の伝送コントローラの機能に対し、バスインタフェース28を通してコントロール・ステータスレジスタ群25にアクセスして、閾値26をソフトウェア設定可能にしたことと、パケット長チェック/廃棄処理手段27を追加したことである。伝送コントローラ20以外の構成は、図1と同様である。
次に、上記の構成を有するコンピュータ装置1の動作を説明する。
CPU使用率測定手段17は、CPU使用率データを計算すると、その計算結果が予め定めた基準値以上か否かを判定し、基準値以上の場合は、コントロール・ステータスレジスタ群25に廃棄処理の閾値となるパケット長を設定する。
CPU負荷の状態チェックは、第1の実施の形態では、受信ドライバが行っていたが、伝送コントローラ20内に廃棄処理機能を組み込んだ場合、ロングパケットについては割込みが発生しないため、CPU使用率測定手段17がコントロール・ステータスレジスタ群25および閾値26の設定を行う。
パケット長チェック/廃棄処理手段27は、閾値26がセットされると、この値と受信データのパケット長とを比較して、受信データのパケット長の方が大きければ、FIFOのデータを廃棄し、コントール・ステータスレジスタ群25にパケットを廃棄したことを伝えると共に上位のバスインタフェース28に割込みが発生しないようにする。一方、受信データのパケット長が閾値以下の場合は、その受信データをバスインタフェース28へ渡すと共に割込み信号を発生する。バスインタフェース28に渡された受信データは、受信データバッファ14へDMA転送される。割込み信号は、割込みドライバ11によって処理され、以降OS12、受信ドライバ13、IPスタック16、アプリケーション16に対して順次受信イベント通知がなされ、アプリケーション16によって受信データバッファ14から受信データが読み出される。
本実施の形態によれば、伝送コントローラに受信の閾値となるパケット長をCPUから書き込み可能にし、このパケット長よりも大きいパケットの割込みを発生させずに廃棄する一方、このパケット長以下のパケットのみを受信してCPUに対して割込み信号を発生させるので、第1の実施の形態に比べて、より下位のレベルでイベント発生を制限できCPU負荷の軽減効果が大きい。
次に本発明の第3の実施の形態を説明する。本実施の形態は第2の実施の形態の伝送コントローラ20のパケット廃棄処理を廃棄実行フラグにセットすることによってイネーブルにし、また、CPU使用率測定手段17で、CPU使用率にしたがって廃棄実行フラグのセット/リセットを行わせるようにしたものである。
以下、図6を用いて本実施の形態によるコンピュータ装置1の動作を説明する。本実施の形態では、受信ドライバ13は、受信パケットごとにパケット長を記憶し、パケット長リストを作成する。図7はパケット長リストの例である。受信データのパケット長を大きさ順に並べた一覧に対して、現在閾値となっているパケット長の位置が識別可能になっている。
そして、CPU使用率測定手段17は、定周期で起動され、CPU使用率を計算し(ステップS21)、その値が予め定めた第1の基準値(上限)よりも大きいか、小さいかを判定する(ステップS22)。その結果、第1の基準値よりも大きい場合は、次に廃棄実行フラグがONしているか否かをチェックし(ステップS23)、ONしていなければ、廃棄実行フラグをONにする(ステップS24)。その後、パケット長リストから現在受信しているデータのパケット長のうち、2番目に大きいパケット長を抽出して(ステップS25)、そのパケット長を伝送コントローラ20のパケット廃棄判定の閾値として設定する(ステップS26)。
一方、ステップS22で、CPU使用率が基準値以下の場合は、次にCPU使用率が第2の基準値(下限)より小さいか否かを判定し(ステップS27)、小さい場合は、次に廃棄実行フラグがONか否かを判定する(ステップS28)。そして、ステップS28の判定の結果、廃棄実行フラグがONの場合は、パケット長リストに記憶されている最大パケット長が閾値設定されているか否かをチェックし(ステップS29)、設定されている場合は、廃棄実行フラグをOFFにして終了する(ステップS31)。一方、ステップS29で最大パケット長が閾値として設定されていない場合は、パケット長リストから、過去に受信したパケットのうち、現在閾値の次に大きいパケット長を抽出して(ステップS30)、その抽出したパケット長を新たな閾値として設定する(S26)。ステップS27、ステップS28で「NO」の場合は、そのまま終了する。
伝送コントローラ20は、廃棄実行フラグがセットされることによってパケット長チェック/廃棄処理手段27をイネーブル状態にして、CPU使用率測定手段17によって設定された閾値をもとに廃棄処理を実行する。
以下、図8を用いてパケット長チェック/廃棄処理手段27の処理手順を詳述する。パケット長チェック/廃棄処理手段27は、データ受信によって起動され、まず、廃棄実行フラグがONか否かを判定し(ステップS41)、ONの場合は、閾値を入力する(ステップS42)。そして、受信データのパケット長が閾値より大きいか否かを判定して(ステップS43)、大きい場合は、その受信データを廃棄する(ステップS44)。一方、ステップS41の処理で廃棄実行フラグがOFFであり、またはステップS43の処理で受信データのパケット長が閾値以下の場合は、その受信データをバスインタフェース28へ渡すと共に割込み信号を発生させる(ステップS45)。
バスインタフェース28に受信データが渡された後の処理は、第2の実施の形態と同様である。
なお、パケット長リストに替えて、図9に示すように過去の受信パケット長と共に現在の受信データのパケット長ごとに受信割合を計算した受信履歴テーブルで管理することによって、CPU負荷の軽減に効果的なパケット長を迅速に選択することができる。たとえば、CPU使用率が基準値を15%超過したような場合、現在閾値からパケット長の受信割合が合計15%以上になるところのパケット長を抽出して新たな閾値として設定したり、CPU使用率をもとに一定の重み付けをして抽出したパケット長を新閾値を設定するようにしても良い。
本実施の形態によれば、受信パケットのパケット長のリストをとって、CPU負荷によって、自動的に閾値を変更して廃棄処理を実行するので、予め受信データのパケット長を調べておく必要が無い。また、たとえば上限基準値を80%、下限基準値を60%に設定するなど、両基準値をCPUの負荷変動(ジッタ)を考慮して定めておくことによって、僅かなCPU負荷の変動によって廃棄実行のON/OFFを繰り返すことを防止することができる。
なお、上記実施形態の構成を用いて回線ごとの伝送データの品質を定めたサービスとして提供することができる。すなわち、品質「高」の場合はパケット長「小」、品質「低」の場合はパケット長「大」、としてVoIP電話機あるいは端末装置に割り付けることによって、パケット長のみによって輻輳時に高品質として契約された回線のデータを優先して伝送することが可能となる。
または、UDPの場合はショートパケット、TCPの場合はロングパケットとして、輻輳時はロングパケットを廃棄してイベント通知の発生を抑制するようにしても良い。TCPのリカバリ処理を長周期にしておけば、瞬時的な輻輳状態のときは、音声パケットを優先して、確実に中継処理すると共に、TCPのリカバリ処理によって端末装置のデータも確実に伝送することができる。
本発明は、たとえば、VoIP通信機能を有する端末、ルータ、スイッチングHUBなどに適用することができる。
また、制御装置、特にリアルタイム性を要求され、複数のデータを扱う制御装置に適用すると有効である。
本発明の第1の実施の形態によるコンピュータ装置の機能説明図である。 図1の利用形態の説明図である。 図1の受信ドライバの処理手順を示すフローチャートである。 本発明の第1の実施の形態による閾値の設定方法である。 本発明の第2の実施の形態によるコンピュータ装置の伝送コントローラの機能ブロック図である。 本発明の第3の実施の形態によるコンピュータ装置のCPU使用率測定手段17の処理手順を示すフローチャートである。 本発明の第3の実施の形態によるパケット長リストのデータ構成の説明図である。 本発明の第3の実施の形態によるパケット長チェック/廃棄処理手段27の処理手順を示すフローチャートである。 本発明の第3の実施の形態による受信履歴テーブルのデータ構成の説明図である。 従来技術によるコンピュータ装置の機能説明図である。
符号の説明
1,99 コンピュータ装置
2 演算処理部
3 受信処理部
10,20 伝送コントローラ
11 割込みドライバ
12 OS(オペレーティングシステム)
13 受信ドライバ
14 受信データバッファ
15 IPスタック
16 アプリケーション
17 CPU使用率測定手段
18 CPU使用率データ
21 受信回路群
22 送信回路群
23 フロー制御手段
24 ステーション管理手段
25 コントロール・ステータスレジスタ群
26 閾値
27 パケット長チェック/廃棄処理手段
28 バスインタフェース
29 媒体インタフェース
51 スイッチングHUB
52 VoIP電話機
53 端末装置
60 定サイズパケット送信装置

Claims (1)

  1. CPUを有しデータ処理を実行する演算処理部と、伝送パケットの受信処理を行う受信処理部とを備え、前記受信処理部は、前記演算処理部に対して受信データを渡すか否かを判定するための閾値となるパケット長を保存し、データ受信時に受信データのパケット長と前記閾値とを比較して前記閾値以下のパケット長の受信データのみをイベント通知によって前記演算処理部へ渡し、前記演算処理部は、CPU使用率に応じて、前記閾値を設定または変更するコンピュータ装置において、
    前記コンピュータ装置は複数回線の伝送データを処理するコンピュータ装置であって、回線の優先度に基づいて、優先度が高くなるに伴って順に小さいパケット長を割付け、CPU使用率が高くなるに従って、優先度の低い回線から順にその回線のパケット長を前記閾値として設定することを特徴とするコンピュータ装置。
JP2008031400A 2008-02-13 2008-02-13 コンピュータ装置 Active JP4849270B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008031400A JP4849270B2 (ja) 2008-02-13 2008-02-13 コンピュータ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008031400A JP4849270B2 (ja) 2008-02-13 2008-02-13 コンピュータ装置

Publications (2)

Publication Number Publication Date
JP2009194504A JP2009194504A (ja) 2009-08-27
JP4849270B2 true JP4849270B2 (ja) 2012-01-11

Family

ID=41076156

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008031400A Active JP4849270B2 (ja) 2008-02-13 2008-02-13 コンピュータ装置

Country Status (1)

Country Link
JP (1) JP4849270B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5760325B2 (ja) * 2010-03-29 2015-08-05 富士通株式会社 通信装置および通信方法
JP5804503B2 (ja) * 2011-09-07 2015-11-04 Necプラットフォームズ株式会社 通信装置、優先制御方法、プログラム
US20150261721A1 (en) * 2014-03-13 2015-09-17 Lantiq Deutschland Gmbh Flow control between processing devices
CN113051203A (zh) * 2021-03-01 2021-06-29 惠州Tcl移动通信有限公司 移动终端usb传输控制方法、装置、终端设备及介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3622701B2 (ja) * 2001-08-01 2005-02-23 日本電気株式会社 Voipシステム及びそれに用いるサービス品質制御方法
US7065191B2 (en) * 2002-04-04 2006-06-20 General Instrument Corporation Method and system for budgeting resources dedicated to processing non-voice data traffic
JP3896056B2 (ja) * 2002-09-02 2007-03-22 日本電信電話株式会社 フレーム処理方法及びフレーム処理装置
JP4146375B2 (ja) * 2004-03-19 2008-09-10 日本電信電話株式会社 処理制御装置、処理制御方法及び処理制御プログラム
JP2007110574A (ja) * 2005-10-17 2007-04-26 Matsushita Electric Ind Co Ltd パケット受信装置

Also Published As

Publication number Publication date
JP2009194504A (ja) 2009-08-27

Similar Documents

Publication Publication Date Title
CN107204931B (zh) 通信装置和用于通信的方法
JP4703063B2 (ja) ネットワーク輻輳を緩和する方法およびシステム
JP3970138B2 (ja) イーサネットスイッチにおける輻輳制御装置
US10003544B2 (en) Method and apparatus for priority flow and congestion control in ethernet network
US7660252B1 (en) System and method for regulating data traffic in a network device
US9819590B2 (en) Method and apparatus for notifying network abnormality
JP5233504B2 (ja) 経路制御装置およびパケット廃棄方法
EP2095580B1 (en) Method and apparatus for policing bandwidth usage of a home network
US20070183332A1 (en) System and method for backward congestion notification in network
CN113206800B (zh) 一种报文缓存方法、装置以及网络设备
CN102934403A (zh) 控制网络上的数据传输
CN101547159A (zh) 一种避免网络拥塞的方法和设备
WO2016202092A1 (zh) 基于多层队列流控反压的传送方法及装置
JP4849270B2 (ja) コンピュータ装置
CN116233018A (zh) 报文处理方法、装置、电子设备及存储介质
CN114448896B (zh) 一种网络优化方法和装置
WO2022042282A1 (zh) 一种无损流量拥塞自适应方法、系统和网络设备
KR20030044531A (ko) 라우터의 폭주 방지 장치 및 방법
CN108243117B (zh) 一种流量监控方法、装置及电子设备
CN117014379A (zh) 码率控制方法、装置、电子设备和存储介质
CN113556213A (zh) 超时重传时间rto确定方法及相关装置
US20050223056A1 (en) Method and system for controlling dataflow to a central system from distributed systems
JP3394478B2 (ja) Redによる輻輳回避装置及びその方法
JP2004056322A (ja) ネットワーク管理装置及びコンピュータプログラム
CN115462050A (zh) 一种拥塞控制方法、网络设备及系统

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20091203

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110511

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110525

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110720

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: 20110921

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111004

R150 Certificate of patent or registration of utility model

Ref document number: 4849270

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141028

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250