(57)【特許請求の範囲】
【請求項１】
取得するコンテンツの種別を条件として当該条件に優先度を関連付けた優先条件を格納する優先条件記憶手段と、
送信元情報と宛先情報に優先度を関連付けた優先度情報を格納する優先度記憶手段と、
コンテンツ取得要求を受信したときに、当該コンテンツ取得要求から取得するコンテンツの種別を抽出し、前記優先条件記憶手段に格納された優先条件の条件に合致する前記優先条件を検索する優先条件検索手段と、
前記コンテンツ取得要求の送信元情報と宛先情報から当該コンテンツ取得要求に対する応答パケットの送信元情報と宛先情報を特定し、応答パケットの送信元情報と宛先情報に前記優先条件検索手段が検索した前記優先条件の優先度を関連付けて優先度記憶手段に登録する優先度設定手段と、
パケットを受信したときに、当該パケットの送信元情報と宛先情報に合致する前記優先度情報を前記優先度記憶手段から検索し、検索した優先度情報の優先度に基づいて優先処理を行いパケットを転送する優先処理手段と、を有し、
前記優先条件は、前記コンテンツの種別がブラウザで表示されるものの優先度を高くしたことを特徴とする中継装置。
【請求項２】
前記コンテンツ取得要求は、ＨＴＴＰリクエストであって、前記取得するコンテンツの種別はＲｅｑｕｅｓｔ−ＵＲＩフィールドの値の拡張子を指定したものであることを特徴とする請求項１記載の中継装置。
【請求項３】
当該中継装置はパケットの送信元情報あるいは宛先情報を変換してパケットを送信するものであって、
変換前のパケットの送信元情報と宛先情報に、当該パケットの変換後のパケットに応答するパケットの送信元情報と宛先情報を関連付けた追跡情報を格納する追跡情報記憶手段を有し、
前記優先度設定手段は、前記コンテンツ取得要求の送信元情報と宛先情報を前記変換前のパケットの送信元情報と宛先情報として持つ追跡情報を前記追跡情報記憶手段から検索し、当該追跡情報の前記応答するパケットの送信元情報と宛先情報を前記応答パケットの送信元情報と宛先情報とすることを特徴とする請求項１又は２記載の中継装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、優先度を付けてパケットを転送する技術に関する。
【背景技術】
【０００２】
コンピュータネットワークにおいて、重要な通信の中継性能を担保する方法として、ＱｏＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）と呼ばれる技術が存在する。ＱｏＳを実現する方法としては、ＩＰヘッダにＴＯＳ値、ＤＳＣＰ値と呼ばれる優先度を設定する方法や中継装置に優先すべき通信の条件（例えば、送信元アドレス、宛先アドレス、送信元ポート番号、宛先ポート番号など）をあらかじめ設定する方法がある。
【０００３】
特許文献１には、宛先ポート番号に特定ポート番号を持つパケットを監視して、優先度を設定する発明が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−０８７３００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
例えば、ＨＴＴＰ通信を考えた場合、ユーザがブラウザを操作してＷＥＢを閲覧するコンテンツデータもＯＳのアップデートなどバックグラウンドでダウンロードされるアップデートデータのいずれも優先度が同じＨＴＴＰパケットで転送される。中継トラフィックの輻輳により応答の遅延が発生する場合、システム側起因の通信（上記のアップデートデータなど）に比べてＷＥＢ閲覧等に起因した通信（上記のコンテンツデータなど）における遅延ほうがユーザにとってストレスが大きい。そのため、ＷＥＢ閲覧等に起因した通信を優先的に転送することでユーザにとってストレスの少ない転送処理ができる。
【０００６】
しかしながら、従来の優先度を設定する方法では、優先度を決定するのは送信端末であるため、中継装置側で優先度を決定することはできない。また、中継装置に優先すべき通信の条件を設定する方法では、ユーザの実施する通信は多岐に渡るため、あらかじめすべてを設定しておくことは不可能である。
【０００７】
また、特許文献１の方法では、同一ポートを使用するアプリケーションは同じ優先度となるため、例えば、ＷＥＢ閲覧時の体感速度に影響する文書ファイルや画像ファイルと体感速度に影響の少ない圧縮ファイルが同じポート番号を使用して送信される場合、いずれの通信も同じの優先度となってしまい、ユーザにとってストレスの少ない転送処理はできない。
【０００８】
本発明は、上記に鑑みてなされたものであり、ユーザにとってストレスの少ない優先度で転送処理を行うことを目的とする。
【課題を解決するための手段】
【０００９】
本発明に係る中継装置は、取得するコンテンツの種別を条件として当該条件に優先度を関連付けた優先条件を格納する優先条件記憶手段と、送信元情報と宛先情報に優先度を関連付けた優先度情報を格納する優先度記憶手段と、コンテンツ取得要求を受信したときに、当該コンテンツ取得要求から取得するコンテンツの種別を抽出し、前記優先条件記憶手段に格納された優先条件の条件に合致する前記優先条件を検索する優先条件検索手段と、前記コンテンツ取得要求の送信元情報と宛先情報から当該コンテンツ取得要求に対する応答パケットの送信元情報と宛先情報を特定し、応答パケットの送信元情報と宛先情報に前記優先条件検索手段が検索した前記優先条件の優先度を関連付けて優先度記憶手段に登録する優先度設定手段と、パケットを受信したときに、当該パケットの送信元情報と宛先情報に合致する前記優先度情報を前記優先度記憶手段から検索し、検索した優先度情報の優先度に基づいて優先処理を行いパケットを転送する優先処理手段と、を有し、前記優先条件は、前記コンテンツの種別がブラウザで表示されるものの優先度を高くしたことを特徴とする。
【００１０】
上記中継装置において、前記コンテンツ取得要求は、ＨＴＴＰリクエストであって、前記取得するコンテンツの種別はＲｅｑｕｅｓｔ−ＵＲＩフィールドの値の拡張子を指定したものであることを特徴とする。
【００１１】
上記中継装置において、当該中継装置はパケットの送信元情報あるいは宛先情報を変換してパケットを送信するものであって、変換前のパケットの送信元情報と宛先情報に、当該パケットの変換後のパケットに応答するパケットの送信元情報と宛先情報を関連付けた追跡情報を格納する追跡情報記憶手段を有し、前記優先度設定手段は、前記コンテンツ取得要求の送信元情報と宛先情報を前記変換前のパケットの送信元情報と宛先情報として持つ追跡情報を前記追跡情報記憶手段から検索し、当該追跡情報の前記応答するパケットの送信元情報と宛先情報を前記応答パケットの送信元情報と宛先情報とすることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、ユーザにとって応答速度が速いことが望まれる情報のパケットを高い優先度で転送処理を行うことができる。
【図面の簡単な説明】
【００１３】
【図１】本実施の形態における中継装置の構成を示す機能ブロック図である。
【図２】優先条件テーブルに格納されるデータの例を示す図である。
【図３】接続追跡テーブルに格納されるデータの例を示す図である。
【図４】優先度テーブルに格納されるデータの例を示す図である。
【図５】図１の中継装置がＬＡＮ側からＷＡＮ側へパケットを転送するときの処理の流れを示すフローチャートである。
【図６】図１の中継装置がＷＡＮ側からＬＡＮ側へパケットを転送するときの処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下、本発明の実施の形態について図面を用いて説明する。
【００１５】
図１は、本実施の形態における中継装置の構成を示す機能ブロック図である。
【００１６】
図１に示す中継装置１は、下流ネットワークの端末２と上流ネットワークのＷＥＢサーバ３との間でパケットを転送する装置であり、端末２がＨＴＴＰ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ）によりコンテンツの取得要求を送信したときに、端末２が送信した上りのＨＴＴＰパケットを解析して対応する下りのＨＴＴＰパケットの優先度を決定し、下りのＨＴＴＰパケットを決定した優先度に基づいて転送する。以下、本実施の形態における中継装置１について説明する。
【００１７】
中継装置１は、ＨＴＴＰ構文解析処理部１１、優先度設定機能部１２、優先条件テーブル１３、接続追跡テーブル１４、優先度テーブル１５、優先処理部１６、中継処理部１７、およびＬ２ＳＷ（レイヤ２スイッチ）１８を備える。中継装置１が備える各部は、演算処理装置、記憶装置等を備えたコンピュータにより構成して、各部の処理がプログラムによって実行されるものとしてもよい。このプログラムはが備える各部は、が備える記憶装置に記憶されており、磁気ディスク、光ディスク、半導体メモリ等の記録媒体に記録することも、ネットワークを通して提供することも可能である。以下、各部について説明する。
【００１８】
ＨＴＴＰ構文解析処理部１１は、ＬＡＮ側（端末２側）からＷＡＮ側（ＷＥＢサーバ３側）へ向かう上りパケットのうちＨＴＴＰパケットを中継処理部１７から受け取り、ＨＴＴＰパケットの送信元情報と宛先情報を取得するとともに、ＨＴＴＰパケットのヘッダ情報を解析してＲｅｑｕｅｓｔ−ＵＲＩや各ヘッダフィールドなどのＨＴＴＰヘッダ情報を抽出し、送信元情報、宛先情報、ＨＴＴＰヘッダ情報を優先度設定機能部１２に渡す。
【００１９】
優先度設定機能部１２は、ＨＴＴＰ構文解析処理部１１から受け取ったＨＴＴＰヘッダ情報に合致する条件を持つエントリを優先条件テーブル１３から検索し、合致する条件を持つエントリが存在する場合は、ＨＴＴＰ構文解析処理部１１から受け取った送信元情報、宛先情報に基づいて応答パケット情報を生成し、そのエントリの優先度を応答パケット情報に関連付けて優先度テーブル１５に格納する。応答パケット情報は、ＨＴＴＰ構文解析処理部１１から受け取った送信元情報、宛先情報をもつパケットに対する応答として期待されるパケットの送信元情報と宛先情報であり、接続追跡テーブル１４を参照して特定する。
【００２０】
優先条件テーブル１３は、ＨＴＴＰヘッダ情報に優先度を関連付けたテーブルである。図２に優先条件テーブル１３に格納されるデータの例を示す。本実施の形態における優先条件テーブル１３は、Ｒｅｑｕｅｓｔ−ＵＲＩやＵｓｅｒ−Ａｇｅｎｔなどのヘッダフィールド名と正規表現で表現した値を組とした条件に優先度を関連付けている。図２の例では、取得するコンテンツの種別で優先度を設定する例として、Ｒｅｑｕｅｓｔ−ＵＲＩの値がｊｐｇファイル，ｈｔｍｌファイルなどブラウザで表示されるコンテンツの種別のエントリの優先度を最高値Ｎに設定し、ｔａｒファイルやｚｉｐファイルなどの圧縮ファイルは優先度を低めの２に設定している。また、Ｒｅｑｕｅｓｔ−ＵＲＩで指定されるコンテンツの種別以外にも、コンテンツを取得する手段で優先度を設定する例として、Ｕｓｅｒ−Ａｇｅｎｔの値がブラウザなどユーザが操作するものを示すエントリの優先度を最高値Ｎに設定している。
【００２１】
なお、優先条件テーブル１３の各エントリは予め初期値を保持しておいてもよく、サーバなどから配信されるものでも、ユーザが自ら設定するものでもよい。また、本実施の形態では、優先度が大きいものほど高い優先度を持ち、最高優先度をＮ（Ｎは自由に設定可能）、最低優先度を１とする。優先条件テーブル１３のエントリに記載がないものは最低優先度とする。
【００２２】
接続追跡テーブル１４は、パケットの中継を実施するにあたり、ＮＡＴ変換やルーティングを管理するためのテーブルであり、ＬＡＮ側からＷＡＮ側に送信された送信パケットに対する返信として期待される応答パケットの情報が記載される。図３に接続追跡テーブル１４に格納されるデータの例を示す。図３に示す例は、端末２（ＩＰアドレス「１９２．１６８．１．２」）が１００００番ポートからＷＥＢサーバ３（ＩＰアドレス「１０．１０．１０．２」）の８０番ポートにＨＴＴＰリクエストを送信したときに追加されるエントリである。中継装置１において、送信元アドレスが中継装置１のＷＡＮ側ＩＰアドレスである「１０．１０．１０．１」に、送信元ポート番号が１０００１にＮＡＴ変換されたため、期待される応答パケットの宛先アドレス（図３のＷＡＮ側宛先アドレス）が「１０．１０．１０．１」、宛先ポート番号（図３のＷＡＮ側宛先ポート番号）が１０００１番ポートとなっている。なお、この接続追跡テーブル１４のエントリは、ＨＴＴＰリクエストを送信する前のＴＣＰセッションを確立する際に追加される。
【００２３】
優先度テーブル１５は、パケットを転送する際に、どのパケットを優先的に中継するかを判定するためのテーブルであり、パケットの送信元情報と宛先情報に優先度が関連付けられている。図４に優先度テーブル１５に格納されるデータの例を示す。図４に示す例は、送信元情報として、送信元ＩＰアドレス、送信元ポート番号、宛先情報として、宛先ＩＰアドレス、宛先ポート番号を記載し、これらのパケット情報に優先度とライフタイムが関連付けられている。ＴＯＳ値やＤＳＣＰ値などが同じ優先度の下りパケットについて、パケットの送信元情報、宛先情報が合致するエントリが優先度テーブルに存在する場合は、エントリ中の優先度が高いパケットを優先的に転送する。ライフタイムは、エントリの有効期間を示す値である。エントリが生成されたとき、エントリが更新されたときに最大値が設定される。ライフタイムは、定期的にデクリメントされ、０となったときにエントリが削除される。
【００２４】
優先処理部１６は、ＷＡＮ側からＬＡＮ側に送信された下りパケットについて、パケットの送信元情報、宛先情報が合致するエントリを優先度テーブル１５から検索し、合致したエントリの優先度に基づいて優先処理を行う。優先処理部１６は、パケットがＨＴＴＰパケットであるか否かにかかわらず、パケットの送信元情報、宛先情報のみから優先度を検索する。
【００２５】
中継処理部１７は、２つのＬ２ＳＷ１８に保持されたパケットを取得して、ＬＡＮ側からＷＡＮ側へ、ＷＡＮ側からＬＡＮ側へパケットを転送する。ＬＡＮ側からＷＡＮ側へ転送する上りパケットのうちＨＴＴＰパケットをＨＴＴＰ構文解析処理部１１に渡す。ＷＡＮ側からＬＡＮ側へ転送する下りパケットは、転送するパケットがＨＴＴＰパケットであるか否かにかかわらず優先処理部１６に渡す。
【００２６】
２つのＬ２ＳＷ１８は、ＬＡＮ側、ＷＡＮ側それぞれから送信されたパケットを一時的に保持する。
【００２７】
次に、本実施の形態における中継装置の処理について説明する。
【００２８】
まず、中継装置１が端末２からＨＴＴＰリクエストを受信したときに、対応するＨＴＴＰレスポンスのパケットに優先度を設定する処理について説明する。
【００２９】
図５は、中継装置１が端末２側からＷＥＢサーバ３側へパケットを転送するときの処理の流れを示すフローチャートである。
【００３０】
中継処理部１７は、端末２側のＬ２ＳＷから取得したパケットがＨＴＴＰパケットの場合は、そのＨＴＴＰパケットをＨＴＴＰ構文解析処理部１１に渡す。
【００３１】
ＨＴＴＰ構文解析処理部１１は、受け取ったＨＴＴＰパケットのヘッダを解析し、Ｒｅｑｕｅｓｔ−ＵＲＩや各ヘッダフィールド名とその値などのＨＴＴＰヘッダ情報を取得し、ＨＴＴＰパケットの送信元情報と宛先情報、およびＨＴＴＰヘッダ情報を優先度設定機能部１２に渡す（ステップＳ１０１）。
【００３２】
優先度設定機能部１２は、優先条件テーブル１３からＨＴＴＰヘッダ情報に合致するエントリを検索する（ステップＳ１０２）。具体的には、Ｒｅｑｕｅｓｔ−ＵＲＩやヘッダフィールド名とその値が合致するエントリを優先条件テーブル１３から検索する。複数のエントリが合致する場合は、合致するエントリのうち最も優先度の高いエントリを選択する。
【００３３】
合致するエントリが存在しない場合は（ステップＳ１０３のＮＯ）、ステップＳ１０９に進み、中継処理部１７にＨＴＴＰパケットを受け渡して処理を終了する。
【００３４】
合致するエントリが存在する場合は（ステップＳ１０３のＹＥＳ）、優先度設定機能部１２は、ＨＴＴＰ構文解析処理部１１から受け取った送信元情報、宛先情報に合致するエントリを接続追跡テーブル１４から検索し、端末２が送信したＨＴＴＰリクエストに対するＨＴＴＰレスポンスの応答パケット情報を特定する（ステップＳ１０４）。具体的には、ＨＴＴＰ構文解析処理部１１から受け取った送信元ＩＰアドレス、宛先ＩＰアドレス、送信元ポート番号、宛先ポート番号の全てが、接続追跡テーブル１４のＬＡＮ側送信元ＩＰアドレス、ＬＡＮ側宛先ＩＰアドレス、ＬＡＮ側送信元ポート番号、ＬＡＮ側宛先ポート番号に合致するエントリを検索し、そのエントリのＷＡＮ側送信元ＩＰアドレス、ＷＡＮ側宛先ＩＰアドレス、ＷＡＮ側送信元ポート番号、ＷＡＮ側宛先ポート番号を対応するＨＴＴＰレスポンスの応答パケット情報とする。なお、中継装置１がＮＡＴ処理など送信元情報や宛先情報を変換する処理を行わない場合は、ＨＴＴＰ構文解析処理部１１から受け取った送信元情報、宛先情報それぞれを宛先情報、送信元情報としたものが応答パケット情報となる。
【００３５】
そして、優先度設定機能部１２は、優先度テーブル１５から応答パケット情報に合致するエントリを検索する（ステップＳ１０５）。この処理は、優先度テーブル１５にすでに応答パケット情報が登録されているか否か調べる処理である。
【００３６】
合致するエントリが存在する場合は（ステップＳ１０６のＹＥＳ）、当該エントリの優先度をステップＳ１０２で検索したエントリの優先度で更新する（ステップＳ１０７）。このときライフタイムも最大値に更新する。
【００３７】
合致するエントリが存在しない場合は（ステップＳ１０６のＮＯ）、応答パケット情報とステップＳ１０２で検索したエントリの優先度をひも付けて優先度テーブル１５に格納する（ステップＳ１０８）。
【００３８】
そして、ＨＴＴＰパケットを中継処理部１７に受け渡して処理を終了する（ステップＳ１０９）。
【００３９】
続いて、ＷＥＢサーバ３がＨＴＴＰレスポンスを返したときの処理について説明する。
【００４０】
図６は、中継装置１がＷＥＢサーバ３側から端末２側へパケットを転送するときの処理の流れを示すフローチャートである。
【００４１】
中継処理部１７は、ＷＥＢサーバ３側Ｌ２ＳＷ１８内の中継処理待ちバッファを確認し（ステップＳ２０１）、バッファに中継処理待ちパケットが存在しない場合は（ステップＳ２０２のＮＯ）、ステップＳ２０１に戻りパケットの到着を待つ。
【００４２】
バッファに中継処理待ちパケットが存在する場合（ステップＳ２０２のＹＥＳ）、優先度テーブル１５のエントリを確認し、中継処理待ちパケットの優先度をチェックする（ステップＳ２０３）。具体的には、中継処理待ちパケットの送信元ＩＰアドレス、宛先ＩＰアドレス、送信元ポート番号、宛先ポート番号が合致するエントリを優先度テーブルから検索し、送信元情報、宛先情報が合致したエントリの優先度を取得する。合致するエントリが存在しない場合は、最低の優先度とする。
【００４３】
そして、中継処理待ちパケットの中で最高優先度のパケットを取り出し（ステップＳ２０４）、中継処理部１７で取り出したパケットを処理（ＮＡＴなど）して端末２に送信する（ステップＳ２０５）。なお、最高優先度のパケットが複数存在している場合は、最高優先度のパケットをＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）で処理する。
【００４４】
以上説明したように、本実施の形態によれば、優先度設定機能部１２がＬＡＮ側から送信されたＨＴＴＰパケットのＨＴＴＰヘッダ情報に合致するエントリを優先条件テーブル１３から検索して優先度を取得するとともに、ＨＴＴＰパケットの送信元情報、宛先情報から対応するＨＴＴＰレスポンスの応答パケット情報を特定して、応答パケット情報に優先度を関連付けて優先度テーブル１５に格納し、優先処理部１６がＷＡＮ側から送信されたパケットの送信元情報、宛先情報が合致するエントリを優先度テーブル１５から検索して優先度を取得し、パケットの優先処理を行うことにより、ＨＴＴＰリクエストにより要求されたファイルの種別に応じて優先度を設定できるので、ユーザストレスの少ない優先度でパケットの転送処理を行うことが可能となる。また、下りパケットについては、送信元情報と宛先情報のみを用いて優先度を決めているので、下りパケットを詳細に解析する必要が無く、中継速度の低下を抑制できる。
【００４５】
本実施の形態によれば、優先条件テーブル１３にＲｅｑｕｅｓｔ−ＵＲＩで指定したコンテンツの種別だけでなく、Ｕｓｅｒ−Ａｇｅｎｔの条件も指定することにより、ユーザが操作しているアプリケーションとシステムによるダウンロードとを区別でき、ユーザ操作の対象となっている情報のパケットに高い優先度を設定可能となる。
【００４６】
この結果、ユーザにとって応答速度が速いことが望まれる情報の下りパケットが優先的に転送される。ＨＴＴＰメッセージは、ＴＣＰにより送受信されるが、ＴＣＰの下りパケットが優先的に端末に転送されることにより、当該パケットに対応するＡＣＫを伝達する上りパケットも迅速にＷＥＢサーバ側へ送出される。これに伴い、ＴＣＰの帯域制御が有効に機能して、当該ＴＣＰセッションのスループットが向上し、ＷＥＢサーバから端末側へより迅速にコンテンツが配信され、ユーザは遅延によるストレスなくコンテンツを受信視聴できるようになる。
【符号の説明】
【００４７】
１…中継装置
１１…ＨＴＴＰ構文解析処理部
１２…優先度設定機能部
１３…優先条件テーブル
１４…接続追跡テーブル
１５…優先度テーブル
１６…優先処理部
１７…中継処理部
１８…Ｌ２ＳＷ
２…端末
３…ＷＥＢサーバ
【図１】
0005851904.tif 000002
【図２】
0005851904.tif 000003
【図３】
0005851904.tif 000004
【図４】
0005851904.tif 000005
【図５】
0005851904.tif 000006
【図６】
0005851904.tif 000007