JP5896055B2 - 優先度設定装置及びコンピュータプログラム - Google Patents

優先度設定装置及びコンピュータプログラム Download PDF

Info

Publication number
JP5896055B2
JP5896055B2 JP2015034140A JP2015034140A JP5896055B2 JP 5896055 B2 JP5896055 B2 JP 5896055B2 JP 2015034140 A JP2015034140 A JP 2015034140A JP 2015034140 A JP2015034140 A JP 2015034140A JP 5896055 B2 JP5896055 B2 JP 5896055B2
Authority
JP
Japan
Prior art keywords
packet
priority
flow
delay amount
delay
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
Application number
JP2015034140A
Other languages
English (en)
Other versions
JP2015128310A (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.)
Sumitomo Electric Industries Ltd
Original Assignee
Sumitomo Electric Industries 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 Sumitomo Electric Industries Ltd filed Critical Sumitomo Electric Industries Ltd
Priority to JP2015034140A priority Critical patent/JP5896055B2/ja
Publication of JP2015128310A publication Critical patent/JP2015128310A/ja
Application granted granted Critical
Publication of JP5896055B2 publication Critical patent/JP5896055B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、優先制御方式のパケット通信に用いる優先度を設定する装置、及び、その優先度の設定処理をコンピュータに実行させるためのコンピュータプログラムに関する。
インターネットのブロードバンド化に伴い、動画や音声などのストリームデータの品質を保証するQoS(Quality of Service)の重要性が大きくなっている。
かかるQoSをサポートするネットワーク機器を使用すれば、遅延が生じると意味をなさない上記のようなトラフィックを、遅延させても特に影響のないファイル交換ソフトのパケットなどよりも優先的に送受信させることができ、ネットワークの利便性ないし使用感が向上する。
かかるQoSをサポートするパケット中継装置では、通常、優先度が異なる複数の送信キューを有しており、中継するパケットをどの優先度キューで送信するかのマッピングを所定のヘッダフィールドの値によって行っている(特許文献1参照)。
例えば、中継するパケットがIPパケットである場合には、IP−Protocol(プロトコル番号)フィールドやTCP/UDPポートフィールドの値に従って、複数の優先度キューへのマッピングが行われる。
特開2010−4310号公報
しかし、最近の通信ネットワークではWebを前提としたトラフィックが主流となっているので、上記のようなヘッダフィールドの値に基づいてマッピングする方法では、同じ優先度キューのトラフィックとなる可能性が高く(例えば、HTTPパケットの場合は、IP-Proto=6, Port=80)、ユーザの利便性がさほど向上しないことがある。
この場合、送信元や宛先のIPアドレスなどを考慮に入れて、所望のパケットの優先度を設定すればよいが、この設定をユーザ自身が行うのは極めて煩雑である。
また、QoSは通信ネットワーク全体における「ユーザエクスペリエンス」(ユーザの使用感・満足感)の向上を図る技術であるから、所望のパケットの優先度をユーザが任意に変更するのは好ましくなく、ネットワークの状態に応じて優先度が柔軟に変更されることが望ましい。
本発明は、かかる従来の問題点に鑑み、優先制御方式のパケット通信において、ネットワークの状態に応じて優先度を柔軟に変更できるようにすることを目的とする。
(1) 本発明の優先度設定装置は、優先制御方式のパケット通信に用いる優先度を自動的に設定する優先度設定装置であって、送受信ノードが同じである複数のパケットを取得する取得部と、取得された複数の前記パケットのパケット間遅延に応じて、当該パケットの優先度を設定する設定部と、を備えていることを特徴とする。
本発明の優先度設定装置によれば、設定部が、取得された複数のパケットのパケット間遅延に応じて当該パケットの優先度を設定するので、例えば、パケット間遅延が通常よりも大きいパケットの場合は、現状よりも高優先度にして品質を上げ、パケット間遅延が通常よりも小さいパケットの場合は、現状よりも低優先度に設定して品質を下げるというように、ネットワークの状態に応じて優先度を柔軟に変更することができる。
(2) 本発明の優先度設定装置において、所定のピリオドに取得された複数の前記パケットの取得時刻に基づいて、前記パケット間遅延の統計量である第1遅延量を算出する算出部を更に備えている場合には、前記設定部は、算出された前記第1遅延量と通常状態における基準遅延量との差に基づいて前記パケットの優先度を設定すればよい。
この場合、例えば、第1遅延量から基準遅延量を引いた差が所定の閾値を超えた場合に、当該パケットのパケット間遅延が大きくなったと判定でき、その閾値以下の場合はパケット間遅延がさほど激しくないと判定することができる。
なお、本明細書において、上記「ピリオド」とは、パケット間遅延の統計量(例えば平均値)を算出するのに必要となる、複数のパケットを収集するための所定時間長(例えば10秒)の単位時間のことをいう。
(3) また、本発明の優先度設定装置において、前記算出部は、前記ピリオドごとに算出した複数の前記第1遅延量の統計量である第2遅延量を算出し、算出した当該第2遅延量を前記基準遅延量として採用することが好ましい。
この場合、基準遅延量が、複数の第1遅延量の統計量(例えば平均値)である第2遅延量よりなるので、その基準遅延量を固定値に設定する場合に比べて、ネットワークの通常状態をより適切に設定することができる。
(4) もっとも、この場合、前記算出部は、前記基準遅延量との差が所定の閾値以上である前記第1遅延量については、前記第2遅延量の算出要素から除外することが好ましい。
この場合、異常値を示す第1遅延量が第2遅延量の算出要素となることによって、不正確な基準遅延量が設定されるのを未然に防止することができる。
(5) 本発明の優先度設定装置において、前記パケット間遅延は、例えば、一方のノードから他方のノードに連続して送信される同種の前記パケット間の時間差、すなわち、そのパケットを受信時刻ごとに並べた際に隣接するもの同士の時間差よりなる。
この場合、UDPなどの同報的な通信を利用する送受信ノード間のパケットの優先度を設定することができる。
(6) また、前記パケット間遅延は、一方のノードから他方への要求パケットとこれに対応する応答パケットとの間の時間差であってもよい。
この場合、HTTPのGetとResponseなどのハンドシェイクを行う送受信ノード間のパケットの優先度を設定することができる。
(7) 本発明のコンピュータプログラムは、パケット通信が可能な通信機器を、優先制御方式のパケット通信に用いる優先度を設定する装置として機能させるためのコンピュータプログラムであって、送受信ノードが同じである複数のパケットを取得するステップと、取得された複数の前記パケットのパケット間遅延に応じて、当該パケットの優先度を設定するステップと、を含むことを特徴とする。
上記の通り、本発明のコンピュータプログラムは、本発明の中継装置と実質同一の発明であり、当該装置と同じ作用効果を奏する。
なお、本発明のコンピュータプログラムは、上述の(2)〜(6)に記載された事項を含んでいてもよい。
以上の通り、本発明によれば、優先制御方式のパケット通信において、ネットワークの状態に応じて優先度を柔軟に変更することができる。
本発明に係る優先度設定装置の一例であるルータ(中継装置)を適用した通信システムの全体構成図である。 ルータの内部構成を示すブロック図である。 パケットプロセッサの処理手順を示す概略的なフローチャートである。 ルールテーブルの一例を示す図である。 フローテーブルの一例を示す図である。 フローデータのデータ構造を示す図である。 同方向に一連のフローデータの例とそのシーケンス図である。 双方向に一連のフローデータの例とそのシーケンス図である。 フローマッピングテーブルの一例を示す図である。 フロー統計データとベースラインデータのデータ構造を示す図である。 フロー統計データの更新処理を示すフローチャート(前半)である。 フロー統計データの更新処理を示すフローチャート(後半)である。
以下、図面を参照しつつ、本発明の実施形態を説明する。
〔システムの全体構成〕
図1は、本発明に係る優先度設定装置の一例であるルータ(中継装置)を適用した通信システムの全体構成図である。
図1に示すように、この通信システムは、通信事業者側の光回線終端装置であるOLT1、宅側の光回線終端装置であるONU2、ホームゲートウェイやブロードバンドルータ等よりなるルータ3、及び、複数のIP端末4などを備えている。
OLT1とONU2は光カプラを介して光ファイバによって接続されており、OLT1は広域ネットワーク6と接続されている。本実施形態の広域ネットワーク6はインターネットである。
なお、図1のシステム構成例では、FTTHを想定してONU2よりなる回線終端装置を例示しているが、その他の回線終端装置として、ADSLモデムやCATVモデムを採用することもできる。
ONU2とルータ3とは、イーサネットケーブル(注記:「イーサネット」は登録商標である。)7を介して互いに接続されている。
ルータ3は、IPパケットのルーティング機能を有する中継装置であり、1つのWANポートと1又は複数のLANポートとを有する。なお、図例では、LANポートが2つあるルータ3を例示しているが、その数は2つに限定されない。
ルータ3のLANポートには、イーサネットケーブル9を介して各種のIP端末4が接続されている。このIP端末4は、例えば、IP通信が可能なパーソナルコンピュータ(PC)、サーバコンピュータ或いはテレビなどの家電製品よりなる。
また、OLT1側の広域ネットワーク6にもIP端末4が接続されており、このIP端末4は、例えばクラウドサーバ等よりなる。
図1に示す「LAN1」は、ルータ3の一方のLANポートに接続された構内ネットワークであり、「LAN2」は、ルータ3の他方のLANポートに接続された構内ネットワークである。
これらの構内ネットワークLAN1,LAN2は、1又は複数のスイッチングハブ10を用いて多段接続することによって構成されており、当該ネットワークの終端部分にIP端末4を有する。
一方、ルータ3は、構内ネットワークLAN1,LAN2のPC等のIP端末4が行うネットワーク機器の管理及び監視の対象機器であり、そのIP端末4の制御プログラムによって操作されるエージェントプログラムが当該ルータ3にインストールされている。
このルータ3のエージェントプログラムは、ルータ3でルーティングされるIPパケットを捕捉する捕捉処理や、捕捉されたパケットを用いたQoS優先度の自動設定処理などを行う。
また、本実施形態のルータ3は、IPパケットの中継機能の他に、IPパケットの動的フィルタリング機能、NAT機能、DHCP機能、PPPoE機能及びARP機能などを備えている。
なお、「パケット」は、レイヤ3の通信で使われるPDUの呼び名として用いる場合もあるが、本明細書では、コンピュータ間の通信に使用するデータを送る単位の意味(従って、PDUと同じ。)でも使用している。従って、「IPパケット」を単に「パケット」ということがある。
〔ルータの内部構成〕
図2は、ルータ3の内部構成を示すブロック図である。
図2に示すように、ルータ3は、第1インタフェース部301、第1送受信ドライバ302、捕捉用受信バッファ303、第1送信バッファ304、第2インタフェース部305、第2送受信ドライバ306、中継用受信バッファ307、第2送信バッファ308及びパケットプロセッサ309などを備えている。
第1インタフェース部301は、WANポートを有するイーサネット仕様のトランシーバであり、第1送受信ドライバ302は、第1インタフェース部301にパケットの送受信を行わせる駆動回路よりなる。
第1送受信ドライバ302は、第1インタフェース部301から受けた受信パケットを捕捉用受信バッファ303と中継用受信バッファ307に渡し、第1送信バッファ304から受けた送信パケットを第1インタフェース部301から外部に送出する。
第2インタフェース部305は、LANポートを有するイーサネット仕様のトランシーバであり、第2送受信ドライバ306は、第2インタフェース部305にパケットの送受信を行わせる駆動回路よりなる。
第2送受信ドライバ306は、第2インタフェース部305から受けた受信パケットを捕捉用受信バッファ303と中継用受信バッファ307に渡し、第2送信バッファ308から受けた送信パケットを第2インタフェース部305から外部に送出する。
第1及び第2の送信バッファ304,308は、優先度が異なる複数のキューH,Lを有している。
この複数のキューH,Lのうち、高優先度キューHは、当該ルータ3で中継処理が行われた後の高優先度の送信パケットを格納するための送信キューであり、低優先度キューLは、当該ルータ3で中継処理が行われた後の低優先度の送信パケットを格納するための送信キューである。
なお、第1インタフェース部301、第1送受信ドライバ302、捕捉用受信バッファ303及び第1送信バッファ304は、WAN側の「送受信部」を構成している。
また、第2インタフェース部305、第2送受信ドライバ306、中継用受信バッファ307及び第2送信バッファ308は、LAN側の「送受信部」を構成している。
〔パケットプロセッサの機能部〕
パケットプロセッサ309は、中継処理部310、捕捉処理部311、分類処理部312及びデータ処理部313を備えている。
これらの処理部は、ROMやRAM等の周知の記憶装置(図示せず。)に記憶されたコンピュータプログラム(具体的には、前記エージェントプログラム)をプロセッサ309が読み出し、それを実行することによって実現される機能部である。
上記各処理部を実現する所定のコンピュータプログラムは、上記の通り、図示しない記憶装置にインストールされているが、このコンピュータプログラムは、CD−ROM、DVD−ROMなどの記録媒体に格納して販売又は譲渡することができる。
また、このコンピュータプログラムの販売又は譲渡は、サーバコンピュータからネットワーク経由でダウンロードすることによって行こともできる。
中継用受信バッファ307は、各送受信ドライバ302,306から受けたすべての受信パケットを所定量蓄積し、蓄積した受信パケットを中継処理部310に出力する。
中継処理部310は、バッファ307から入力された受信パケットに対して、所定のルーティング処理やNAT(Network Address Translation)によるアドレス情報及びポート情報の変換を行って送信パケットを生成すると、後述のフローマッピングテーブルFMT(図9)を参照してQoSの優先度のマッピングを行って送信パケットを生成し、その送信パケットを送信バッファ304,308に入力する。
すなわち、中継処理部310は、フローマッピングテーブルFMTにおいてQoSが高優先に設定されているアドレスの送信パケットの場合は、その宛先アドレスに対応するいずれかの送信バッファ304,308の高優先度キューHに入力する。
また、中継処理部310は、フローマッピングテーブルFMTにおいてQoSが低優先に設定されているアドレスの送信パケットの場合は、その宛先アドレスに対応するいずれかの送信バッファ304,308の低優先度キューLに入力する。
捕捉用受信バッファ303は、各受信ドライバ302,306から受けたすべての受信パケットを所定量蓄積し、蓄積した受信パケットを捕捉処理部311に出力する。
捕捉処理部311は、バッファ303から入力された受信パケットを受信時刻で並べ替えるなどの所定の処理を行って、すべての受信パケットを分類処理部312とデータ処理部313に送る。
分類処理部312は、捕捉処理部311から受けた受信パケットからヘッダ情報を抽出し、そのヘッダ情報にルールテーブルRTとフローテーブルFTを適用して「フローデータFD」を生成する。分類処理部312は、そのデータFDをデータバッファ315に一時的に記憶させる。
なお、分類処理部312は、フローデータFDとして分類できないデータについては、未登録データとしてデータバッファ315に記憶させる。
データ処理部313は、所定フローIdのフローデータFDについての、ピリオドごとのパケット間遅延の平均値である「第1遅延量」をデータ内容に含む「フロー統計データFSD」の更新処理と、第1遅延量の平均値である「第2遅延量」をデータ内容とする「ベースラインデータBLD」の更新処理とを行う。
更に、データ処理部313は、第1遅延量と第2遅延量とを比較して各フローIdの通信状態を推定し、これに基づいてフローマッピングテーブルFMTにおける優先度の更新処理を行う。
なお、中継処理部310は、データ処理部313が更新したフローマッピングテーブルFMTの優先度を用いて、送信パケットに対する優先度を決定する。
〔具体的な処理内容〕
図3は、パケットプロセッサ309の処理手順を示す概略的なフローチャートである。
以下、この図3と以後の図4〜図12を参照しつつ、プロセッサ309の各処理部311〜313が行う具体的な処理の内容を説明する。
図3に示すように、ルータ3のプロセッサ309は、各送受信部で受信された受信パケットに対し、パケットの捕捉(ステップS1)、ヘッダの抽出(ステップS2)、データの分類及び生成(ステップS3)及びデータの処理(S4)の順で情報処理を行う。
<パケットの捕捉>
このうち、パケットの捕捉(ステップS1)は、上述の通り捕捉処理部311が行う処理である。捕捉処理部311は、捕捉用受信バッファ303が蓄積した所定量の受信パケットを順次取り込む。
<ヘッダの抽出>
ヘッダの抽出(ステップS2)は、分類処理部312が行う処理である。
図3に示すように、分類処理部312は、捕捉処理部311から受けた各パケットから必要なレイヤL2〜L5のヘッダ情報を抽出する。
<データの分類及び生成>
データの分類及び生成(S3)は、分類処理部312が行う処理である。
図3に示すように、分類処理部312は、抽出されたパケットのヘッダ情報をキーとしてルールテーブルRTとフローテーブルFTをサーチすることにより、フローデータFD(サーチでヒットしない場合は未登録データ)を生成し、このデータFDをデータバッファ315の対応する格納領域に記憶させる。
図4は、ルールテーブルRTの一例を示す図であり、図5は、フローテーブルFTの一例を示す図である。
図4に示すように、ルールテーブルRTは、例えば番号1〜256までの「ルール」のエントリを備え、各ルールは図5のフローIdと対応している。各ルールには複数(図例では8つ)の「サブルール」が含まれており、このサブルールには「項目」とその値(Value)を定義することができる。
従って、サブルールの項目と値を適宜設定することにより、各ルールの番号(フローId)に対応するパケットの内容を定義することができる。
例えば、図4の例では、ルール1のサブルール1で「destIp」(宛先IPアドレス)の値を定義し、サブルール2で「srcIP」(送信元IPアドレス)の値を定義し、サブルール3で「destPort」(宛先ポート番号)の値を定義し、サブルール4で「srcPort」(送信元ポート番号)の値を定義するようになっている。
なお、図4では図示していないが、各ルールのサブルール5以後に所定のプロトコルとそのプロトコルで用いるコマンドなどを定義することにより、各々のルール(フローId)によってサーチしたいパケットの「種別」を定義することができる。
図5に示すように、フローテーブルFTは、フローIdに対応する処理内容が定義されたテーブルである。例えば、図5の例では、フローId=1のパケットの場合には、パケットを「フローデータとして残す」処理が行われる。
また、フローId=2の場合には、パケットを「縮退させる」処理が行われ、フローId=3の場合は「破棄する」処理が行われる。
なお、上記ルールテーブルRTとフローテーブルFTの設定は、例えば、ルータ3のユーザが、LAN側のIP端末4から各テーブルRT,FTの項目内容や設定値を含むパケットをルータ3に送信することによって行うことができる。
また、「フローデータFD」とは、例えば、一連のパケットフローの連関をチェックするフロー解析の場合に必要となる、送受信ノードが同じである同種の複数のパケットの履歴を特定するためのデータのことをいう。
分類処理部312は、ルールテーブルRTを上から順番にサーチして、各パケットから抽出したヘッダ情報がどのルールにマッチするかを判定する。
その結果、マッチしたルール(=フローId)がある場合には、そのフローIdに対して行うべき処理をフローテーブルFTから読み出し、読み出した処理を当該フローIdのパケットに対して実行する。また、分類処理部312は、マッチしたルール(=フローId)がない場合には、未登録データを生成する。
図6は、フローデータFDのデータ構造を示す図である。
図6に示すように、フローデータFDは、捕捉されたパケットの受信時刻と、当該パケットの前記フローIdとを含むデータ構造となっている。なお、これらのデータの順序は図示のものに限定されない。
上述の通り、各フローIdには、ルールテーブルRT(図4)によってパケットの送信元、宛先及び種別が割り当てられているので、当該フローIdは、パケットの送信元、宛先及び種別を識別可能な識別情報である。
<データの処理>
図3のデータの処理(S4)は、データ処理部313が行う処理である。
前述の通り、データ処理部313が行う処理には次の各処理が含まれるが、これらの詳細は後述する。
a) フロー統計データの更新処理
b) ベースラインデータの更新処理
c) 優先度の更新処理
〔フローデータの例〕
図7は、同方向に一連のフローデータFDの例とそのシーケンス図である。
図7(a)の例では、フローId=1のパケットがマルチキャストで送信されるRTP(Real-time Transport Protocol)パケットである場合を想定している。
図7(a)に示すように、タイムスタンプの値が100〜160μ秒までの間は、フローId=1のフローデータFD同士の時間間隔が一定(20μ秒)であるが、それ以後のエントリで時間間隔が大幅に遅れている。従って、この場合、サーバからの通信が輻輳していると推定できる。
図8は、双方向に一連のフローデータFDの例とそのシーケンス図である。
図8(a)の例では、フローId=2のパケットがICMPパケットのエコー要求であり、フローId=3のパケットがICMPパケットのエコー応答である場合を想定している。
図8(a)に示すように、タイムスタンプの値が100〜220μ秒までの間は、フローId=2のエコー要求とフローId=3のエコー応答の間の時間間隔が一定(20μ秒)であるが、300μ秒以後にエコー応答が来なくなっている。従って、この場合、300μ秒前後の時間帯に、何らかの理由でサーバの通信が切断したと推定できる。
〔フローマッピングテーブル〕
図9は、フローマッピングテーブルFMTの一例を示す図である。
フローマッピングテーブルFMTの定義項目には、フローIdと、当該フローIdのアドレス情報及びポート情報である「srcIp」、「srcPort」、「destIP」及び「destPort」と、「Timestamp」(受信時刻)と、QoSの「優先度」とが含まれている。
従って、中継処理部310は、送信パケットのアドレス情報とポート情報をキーとしてフローマッピングテーブルFMTをサーチすることで、送信パケットに適用すべき優先度H,Lを決定することができる。
図10は、フロー統計データFSDとベースラインデータBLDのデータ構造を示す図である。図10(a)に示すように、フロー統計データFSDのエントリは、「第1フローId」及び「第2フローId」と、1番目からn番目の「ピリオド」とを含む。
前述の通り、「ピリオド」は、パケット間遅延の平均値を算出するのに必要となる、パケット収集のための所定時間長(例えば10秒)の単位時間である。各ピリオドには、当該ピリオド中に収集されたフローId値のパケットの、パケット間遅延の平均値AVG(i)(i=1,2,……n)が格納される。
また、図10(b)に示すように、ベースラインデータBLDのエントリは、「第1フローId」及び「第2フローId」と平均値AVGbsとを含む。この平均値AVGbsは、複数の平均値AVG(i)(i=1,2,……n)の中からランダムに抽出した複数の値の平均値である。
なお、前述の通り、本明細書では、フロー統計データFSDに含まれる平均値AVG(i)を「第1遅延量」と呼び、ベースラインデータBLDに含まれる平均値AVGbsを「第2遅延量」と呼んでいる。
〔フロー統計データの更新処理〕
図11及び図12は、フロー統計データFSDの更新処理を示すフローチャートである。
図11に示すように、データ処理部313は、まず、捕捉されたパケットからアドレス情報とポート情報を抽出し(ステップS11)、フローマッピングテーブルFMTを検索して(ステップS12)、その情報にマッチするエントリ(フローId)があるか否かを判定する(ステップS13)。
上記判定の結果、マッチするフローIdがある場合には、データ処理部313は、当該フローIdを取得してフローマッピングテーブルFMTのタイムスタンプを現在時刻に更新する(ステップS14)。
また、マッチするフローIdがない場合には、データ処理部313は、フローマッピングテーブルFMTに新たなエントリを作成する(ステップS15)。
データ処理部313は、上記の処理を今回のピリオド(i)が終了するまで継続し(ステップS16)、今回のピリオド(i)が終了すると、ピリオドを1つインクリメントして(ステップS17)、図12のステップ13以降の処理を行う。
図12を参照して、データ処理部313は、フロー統計データFSDの最初のエントリ(第1フローId)を参照し(ステップS18)、第1フローIdと第2フローIdが同じ値であるか否かを判定する(ステップS19)。
ここで、フロー統計データFSDにおいて、第1フローIdと第2フローIdが同じ値である場合は、それらのフローが、一方のノードから他方のノードに連続して送信される同種のパケット(例えば、図7)であることを意味する。
また、フロー統計データFSDにおいて、第1フローIdと第2フローIdが異なる値である場合は、それらのフローが、一方のノードから他方への要求パケットとこれに対応する応答パケット(例えば、図8)であることを意味する。
上記判定の結果、第1フローIdと第2フローIdの値が同じ場合には、データ処理部313は、フローIdの値がマッチするフローデータFDを古い順で収集し(ステップS20)、そのフローデータFD間のタイムスタンプ(受信時刻)の差分値ΔT(j)を逐次算出して収集する(ステップS21)。
そして、データ処理部313は、収集した差分値ΔT(j)の合計を、フローIdの値がマッチするフローデータFDのパケット数Nで割った平均値(=AVG(i):第1遅延値)を算出し、その平均値をフロー統計データFSDの該当ピリオドに入力する(ステップS22)。
上記判定の結果、第1フローIdと第2フローIdの値が異なる場合には、データ処理部313は、第1フローIdの値がマッチするフローデータFDを古い順で収集するとともに(ステップS23)、第2フローIdの値がマッチするフローデータFDを古い順で収集する(ステップS24)。
また、データ処理部313は、第1フローIdの値とマッチするフローデータFDのタイムスタンプ値と、第2フローIdの値とマッチするフローデータFDのタイムスタンプ値との差分値ΔT(k)を逐次算出し収集する(ステップS25)。
そして、データ処理部313は、収集したΔT(k)の合計を、第1フローIdの値がマッチするフローデータFDのパケット数Nで割った平均値(=AVG(i):第1遅延値)を算出し、その平均値をフロー統計データFSDの該当ピリオドに入力する(ステップS26)。なお、この場合、フローデータFD内において、第1フローIdの値とマッチするパケット数と第2フローIDの値とマッチするパケット数が同一であると仮定している。
〔ベースラインデータの更新処理〕
データ処理部313は、新規にベースラインデータBLDを作成する場合には、フロー統計データFSDの複数のピリオドの中からランダムに複数個の値を選択し、その平均値(AVGbs:第2遅延量)を算出して、ベースラインデータBLDの該当エントリに入力する。
また、データ処理部313は、各ピリオドの終了時に学習係数αを用いたAVGbsの更新処理を行う。
すなわち、データ処理部313は、新たに追加されたピリオドのAVG(i)と既に求めたベースラインデータBLDのAVGbsとの差が所定の閾値を超えている場合には、学習係数αの値を「0」とし、その閾値以下の場合には、αの値をv(但し、vは0<v<1を満たす設定値)として、次式によってAVGbsの値を更新する。
AVGbs=(1−α)×AVGbs+α×AVG(i)
〔QoS優先度の更新処理〕
更に、データ処理部313は、各ピリオドの終了時に、次の手順にてフローマッピングテーブルFMT中の優先度の更新処理を行う。
すなわち、データ処理部313は、まず、フロー統計データFSDの各エントリの当該ピリオドの値AVG(i)と、その時点でのベースラインデータBLDの同じエントリの平均値AVGbsとを比較する。
このとき、AVG(i)がAVGbsよりも大きく、かつ、その差分が所定の閾値を超えている場合は、データ処理部313は、フローマッピングテーブルFMTにおける対応するフローIdの優先度を「高」にする。
逆に、AVG(i)がAVGbsよりも小さい場合、或いは、AVG(i)がAVGbsよりも大きいがその差分が所定の閾値以内の場合は、データ処理部313は、フローマッピングテーブルFMTにおける対応するフローIdの優先度を「低」にする。
このように、ベースラインデータBLDのAVGbs(第2遅延量)は、フロー統計データFSDにおける各ピリオドのAVG(i)(第1遅延量)が、当該フローIdのパケットにおいて普通に生じる遅延量か否かを判定するための、「基準遅延量」として使用される。
〔ルータの効果〕
以上の通り、本実施形態のルータ(優先度設定装置)3によれば、送受信ノードが同じである複数のパケットを捕捉処理部311にて取得し、データ処理部313が、パケット間遅延が通常よりも大きいフローの場合は、現状よりも高優先度にして品質を上げ、パケット間遅延が通常よりも小さいフローの場合は、現状よりも低優先度に設定して品質を下げるようになっているので、ネットワークの状態に応じて優先度を柔軟に変更することができる。
〔その他の変形例〕
上述の実施形態では、回線終端装置(図1ではONU2)とは別の装置であるルータ3に本発明を適用しているが、回線終端装置とルータ3とを一体化したホームゲートウェイの場合には、この装置に本発明を適用することにしてもよい。
また、フロー統計データFSDのピリオドごとの第1遅延量やベースラインデータBLDの第2遅延量は、例えば中央値などの平均値以外の統計量であってもよい。
また、第1遅延量の多寡を判定するための通常状態の「基準遅延量」を、複数の第1遅延量の統計量(第2遅延量)ではなく、固定値に設定することにしてもよい。
更に、上述の実施形態では、図1に示すように、イーサネットケーブル9で構内ネットワークLAN1,LAN2を構成しているが、ルータ3に無線LAN対応のインタフェースを設け、構内のIP端末4との通信を無線で行うようにしてもよい。
この場合、高優先度キューのパケットは、低優先度キューのパケットよりもコンテンションウィンドウのサイズを小さく設定することにしてもよい。
上述の実施形態では、本発明の優先度設定機能をルータ3に実装した場合を例示しているが、その機能を、構内ネットワークLAN1,LAN2に繋がるIP端末4に実装することにしてもよい。
この場合、IP端末4にて動的に決定したQoSの優先度を、例えば、人手による入力、或いは、SNMPやUPnPなどを利用したオンラインアクセスにより、ルータ3に優先度を設定することにすればよい。
今回開示した実施形態(上述の各変形例を含む。)はすべての点で例示であって制限的なものではない。本発明の権利範囲は、上述の実施形態ではなく、特許請求の範囲と均等の範囲内でのすべての変更が含まれる。
3 ルータ(優先度設定装置)
4 IP端末
309 パケットプロセッサ
310 中継処理部
311 捕捉処理部(取得部)
312 分類処理部
313 データ処理部(設定部、算出部)
FD フローデータ
FSD フロー統計データ
BLD ベースラインデータ

Claims (5)

  1. 優先制御方式のパケット通信に用いる優先度を自動的に設定する優先度設定装置であって、
    送受信ノードが同じである複数のパケットを取得する取得部と、
    取得された複数の前記パケットのパケット間遅延に応じて、当該パケットの優先度を設定する設定部と、
    所定のピリオドに取得された複数の前記パケットの取得時刻に基づいて、前記パケット間遅延の統計量である第1遅延量を算出し、複数の前記ピリオドごとに算出した前記第1遅延量の統計量である第2遅延量を算出し、算出した当該第2遅延量を基準遅延量として採用する算出部と、を備えており、
    前記設定部は、算出された前記第1遅延量と前記基準遅延量との差に基づいて前記パケットの優先度を設定することを特徴とする優先度設定装置。
  2. 前記算出部は、前記基準遅延量との差が所定の閾値以上である前記第1遅延量については、前記第2遅延量の算出要素から除外する請求項に記載の優先度設定装置。
  3. 前記パケット間遅延は、一方のノードから他方のノードに連続して送信される同種の前記パケット間の時間差である請求項1又は2に記載の優先度設定装置。
  4. 前記パケット間遅延は、一方のノードから他方への要求パケットとこれに対応する応答パケットとの間の時間差である請求項1又は2に記載の優先度設定装置。
  5. パケット通信が可能な通信機器を、優先制御方式のパケット通信に用いる優先度を設定する装置として機能させるためのコンピュータプログラムであって、
    送受信ノードが同じである複数のパケットを取得する第1ステップと、
    取得された複数の前記パケットのパケット間遅延に応じて、当該パケットの優先度を設定する第2ステップと、
    所定のピリオドに取得された複数の前記パケットの取得時刻に基づいて、前記パケット間遅延の統計量である第1遅延量を算出する第3ステップと、
    複数の前記ピリオドごとに算出した前記第1遅延量の統計量である第2遅延量を算出し、算出した当該第2遅延量を基準遅延量として採用する第4ステップと、を含み、
    前記第2ステップにおいて、算出された前記第1遅延量と前記基準遅延量との差に基づいて前記パケットの優先度を設定することを特徴とするコンピュータプログラム。
JP2015034140A 2015-02-24 2015-02-24 優先度設定装置及びコンピュータプログラム Expired - Fee Related JP5896055B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015034140A JP5896055B2 (ja) 2015-02-24 2015-02-24 優先度設定装置及びコンピュータプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015034140A JP5896055B2 (ja) 2015-02-24 2015-02-24 優先度設定装置及びコンピュータプログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2011108419A Division JP2012239138A (ja) 2011-05-13 2011-05-13 優先度設定装置及びコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2015128310A JP2015128310A (ja) 2015-07-09
JP5896055B2 true JP5896055B2 (ja) 2016-03-30

Family

ID=53838073

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015034140A Expired - Fee Related JP5896055B2 (ja) 2015-02-24 2015-02-24 優先度設定装置及びコンピュータプログラム

Country Status (1)

Country Link
JP (1) JP5896055B2 (ja)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11289344A (ja) * 1998-04-03 1999-10-19 Omron Corp データ伝送システム
JP2008219812A (ja) * 2007-03-07 2008-09-18 Daikin Ind Ltd 帯域制御装置、同帯域制御装置を備えたネットワーク及び空調管理システム、帯域制御方法並びに帯域制御プログラム
US7760642B2 (en) * 2007-03-12 2010-07-20 Citrix Systems, Inc. Systems and methods for providing quality of service precedence in TCP congestion control
JP2009188979A (ja) * 2008-01-10 2009-08-20 Hitachi Ltd 情報処理装置、及びフレームの優先度設定方法
KR101399509B1 (ko) * 2008-07-28 2014-05-27 밴트릭스 코오퍼레이션 시-변화 전송 미디어를 통한 데이터 스트리밍

Also Published As

Publication number Publication date
JP2015128310A (ja) 2015-07-09

Similar Documents

Publication Publication Date Title
US7606160B2 (en) System and method to provide routing control of information over networks
EP3535932B1 (en) Application characterization using transport protocol analysis
US7269157B2 (en) System and method to assure network service levels with intelligent routing
US9692679B2 (en) Event triggered traceroute for optimized routing in a computer network
JP4233884B2 (ja) サービス品質のプロービングを行う方法
JP5660198B2 (ja) ネットワークシステム、及びスイッチ方法
JP4774357B2 (ja) 統計情報収集システム及び統計情報収集装置
US8064348B2 (en) Gathering traffic profiles for endpoint devices that are operably coupled to a network
JP6699065B2 (ja) ネットワークパフォーマンスを測定するためのパケットサンプリング
JP6153166B2 (ja) トラヒック監視装置及びプログラム、並びに、通信装置
EP3025453B1 (en) Probe routing in a network
JP5673663B2 (ja) ループ検出装置、システム、方法およびプログラム
JP2015535669A (ja) 暗号化されたセッションのモニタリング
EP3025459B1 (en) Probe routing in a network
JP2012239138A (ja) 優先度設定装置及びコンピュータプログラム
JP5896055B2 (ja) 優先度設定装置及びコンピュータプログラム
JP2012249138A (ja) パケット捕捉装置及びコンピュータプログラム
JP2012227805A (ja) 中継装置とこれを有する通信システム及びコンピュータプログラム
JP5965365B2 (ja) 通信制御システム
JP4246238B2 (ja) トラフィック情報の配信及び収集方法
CN116346634A (zh) 网络管控***的状态感知信息处理方法、装置及电子设备
US20230198878A1 (en) Method and system for network segment performance monitoring
KR100959663B1 (ko) 고성능망 지원 웹기반의 단대단 망 성능측정 및 진단시스템 및 방법
JP5039674B2 (ja) ネットワークシステム及びQoS保証方法
Groenewegen et al. Detecting and quantifying bufferbloat in network paths

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160122

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160215

R150 Certificate of patent or registration of utility model

Ref document number: 5896055

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees