(57)【要約】【課題】柔軟に通信（フロー）を指定し制御することができる通信装置、通信方法、通信プログラムおよび通信システムを提供する。【解決手段】  通信端末１は、パケットが属するフローとフローに属するパケットに対する処理とを規定する処理規則に基づいて、受信したパケットを処理する通信処理部４０と、受信したパケットを中継元と中継先の間で中継するとともに、中継するトラフィックの特徴を抽出する通信中継特徴抽出部２０と、受信したパケットと抽出したトラフィックの特徴に基づき、処理規則として、中継元から中継先へ中継後の中継先フローを処理する中継先処理規則を作成する通信制御部１０とを備える。【選択図】図１５
2014236423.tif 000002
【特許請求の範囲】
【請求項１】
パケットが属するフローと前記フローに属するパケットに対する処理とを規定する処理規則に基づいて、受信したパケットを処理する通信処理部と、
前記受信したパケットを中継元と中継先の間で中継するとともに、前記中継するトラフィックの特徴を抽出する通信中継特徴抽出部と、
前記受信したパケットと前記抽出したトラフィックの特徴に基づき、前記処理規則として、前記中継元から前記中継先へ中継後の中継先フローを処理する中継先処理規則を作成する通信制御部と、
を備える通信装置。
【請求項２】
前記通信制御部は、前記受信したパケットが属する中継元フローを処理する前記処理規則を作成するために必要な前記トラフィックの特徴を得られない場合、前記処理規則として、前記中継元フローを前記通信処理部から前記通信中継特徴抽出部に転送する中継元処理規則を作成する、
請求項１に記載の通信装置。
【請求項３】
前記通信制御部は、前記トラフィックの特徴を含むトラフィック条件と当該トラフィック条件に適合する通信に対する処理とを規定する制御ポリシであって、前記処理規則に指定可能な条件以外の条件を指定可能な制御ポリシに基づいて、前記中継先処理規則を作成する、
請求項１または２に記載の通信装置。
【請求項４】
前記通信中継特徴抽出部は、前記受信したパケットが属するフローに応じて、前記中継先フローの数を変更する、
請求項１乃至３のいずれか一項に記載の通信装置。
【請求項５】
前記中継するトラフィックは、ＨＴＴＰおよびＨＴＴＰＳの少なくとも一方のトラフィックであり、
前記トラフィックの特徴は、ＨＴＴＰまたはＨＴＴＰＳのメッセージに基づいた、ＵＲＬ、ＵＲＩ、メソッド、ＨＴＴＰバージョン、認証情報、コンテンツ長、コンテンツタイプ、ホストヘッダ、要求元ＵＲＬ、ユーザエージェント、のいずれかもしくはそれらの組み合わせを含む、
請求項１乃至４のいずれか一項に記載の通信装置。
【請求項６】
前記通信中継特徴抽出部が行うデータ中継処理の一部あるいはすべてを、ヘッダ変換処理により行うデータ中継部をさらに備える、
請求項１乃至５のいずれか一項に記載の通信装置。
【請求項７】
前記通信処理部は前記データ中継部を包含する、
請求項６に記載の通信装置。
【請求項８】
パケットが属するフローと前記フローに属するパケットに対する処理とを規定する処理規則に基づいて、受信したパケットを処理し、
前記受信したパケットを中継元と中継先の間で中継するとともに、前記中継するトラフィックの特徴を抽出し、
前記受信したパケットと前記抽出したトラフィックの特徴に基づき、前記処理規則として、前記中継元から前記中継先へ中継後の中継先フローを処理する中継先処理規則を作成する、
通信方法。
【請求項９】
コンピュータに通信処理を実行させるための通信プログラムであって、
前記通信処理は、
パケットが属するフローと前記フローに属するパケットに対する処理とを規定する処理規則に基づいて、受信したパケットを処理し、
前記受信したパケットを中継元と中継先の間で中継するとともに、前記中継するトラフィックの特徴を抽出し、
前記受信したパケットと前記抽出したトラフィックの特徴に基づき、前記処理規則として、前記中継元から前記中継先へ中継後の中継先フローを処理する中継先処理規則を作成する、
通信プログラム。
【請求項１０】
第１の通信装置と第２の通信装置とがネットワークを介して通信可能に接続された通信システムであって、
前記第１の通信装置は、
パケットを送信する通信利用部と、
前記パケットが属するフローと前記フローに属するパケットに対する処理とを規定する処理規則に基づいて、前記通信利用部または前記第２の通信装置から受信したパケットを処理する通信処理部と、
前記受信したパケットを中継元と中継先の間で中継するとともに、前記中継するトラフィックの特徴を抽出する通信中継特徴抽出部と、
前記受信したパケットと前記抽出したトラフィックの特徴に基づき、前記処理規則として、前記中継元から前記中継先へ中継後の中継先フローを処理する中継先処理規則を作成する通信制御部と、
を備える通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置、通信方法、通信プログラムおよび通信システムに関し、特に、フローに属するパケットに対する処理を規定する処理規則に基づいてフロー制御を行う通信装置、通信方法、通信プログラムおよび通信システムに関する。
【背景技術】
【０００２】
近年、携帯電話等の通信端末の高機能化に伴い、複数の通信インタフェースを備えた通信端末が普及している。そのような通信インタフェースの一例として、３Ｇ（３ｒｄ  Ｇｅｎｅｒａｔｉｏｎ）、ＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ）、無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷｉＭＡＸ（Ｗｏｒｌｄｗｉｄｅ  Ｉｎｔｅｒｏｐｅｒａｂｉｌｉｔｙ  ｆｏｒ  Ｍｉｃｒｏｗａｖｅ  Ａｃｃｅｓｓ）（登録商標）等が挙げられる。通信網が通信に利用できるリソースは有限であるため、通信が集中すると輻輳が発生し性能劣化やサービス停止が発生する虞がある。それは特に前述したような無線通信網においてより顕著である。
【０００３】
通信端末が複数の通信インタフェースを備えている場合、通信の内容によってそれらが使用する通信インタフェースを使い分けることにより、通信網の混雑や輻輳を回避したり、よりよい通信品質を実現したりすることが可能となる。
【０００４】
非特許文献１では、オープンフロー（ＯｐｅｎＦｌｏｗ）という技術が開示されている。オープンフローは、通信をエンドツーエンドのフローとして捉え、フロー単位で経路制御等を行う技術である。フローの識別はパケット単位で行われ、パケットに含まれるアドレスフィールドやポート番号フィールド等が識別のためのキーとして用いられる。
【０００５】
通信端末内の通信制御に、例えばオープンフローのような、フローベース制御技術を適用することで、通信インタフェースの使い分け(経路制御)を細粒度で行うことができる。さらに、通信制御として、フロー粒度の通信遮断や統計情報取得、高度な通信処理(例えばＮＡＴ（Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｔｒａｎｓｌａｔｉｏｎ）やＮＡＰＴ（Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｐｏｒｔ  Ｔｒａｎｓｌａｔｉｏｎ）、以降まとめてＮＡＴと記述)等を行うことも可能である。
【０００６】
また、特許文献１では、ヘッダ変換処理によるデータ中継手法として、ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）スプライシングという技術が開示されている。その他、関連する技術が、特許文献２〜４に開示されている。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】"OpenFlow Switch Specification" Version 1.0.0. (Wire Protocol 0x01) ［平成２５年５月２７日検索］、インターネット〈URL：http://www.openflowswitch.org/documents/openflow-spec-v1.0.0.pdf〉、２００９年１２月３１日
【特許文献】
【０００８】
【特許文献１】特開２００９−１６４９４８号公報
【特許文献２】国際公開第２０１２／１１５０５８号
【特許文献３】特開２００６−１２１１９２号公報
【特許文献４】特開２００３−０１８１９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
非特許文献１に開示された技術は、フロー粒度での通信制御を行えるが、フローの識別に使うことができる情報が限定されることが問題となる。柔軟な通信制御を実現するためには、制御対象の通信（フロー）を指定するための情報として当該通信の内容を利用可能なことが望まれる。しかし、非特許文献１に開示された技術は、各パケットに含まれる規定済みの情報（アドレスフィールドやポート番号フィールド等）によってのみフローの識別を行う。非特許文献１に開示された技術において、すべてのパケットをコントローラで受信しその内容を解析することで上記問題を解決する方法は存在するが、その場合コントローラの複雑化や処理オーバヘッドの発生等の問題が生じる。すなわち、関連する技術では、各パケットに共通して含まれる情報以外の情報を用いて柔軟に通信（フロー）を指定し制御することができなかった。
【００１０】
そこで、本発明は、フローベースの通信制御において、柔軟に通信（フロー）を指定し制御することができる通信装置、通信方法、通信プログラムおよび通信システムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明に係る通信装置は、パケットが属するフローと前記フローに属するパケットに対する処理とを規定する処理規則に基づいて、受信したパケットを処理する通信処理部と、前記受信したパケットを中継元と中継先の間で中継するとともに、前記中継するトラフィックの特徴を抽出する通信中継特徴抽出部と、前記受信したパケットと前記抽出したトラフィックの特徴に基づき、前記処理規則として、前記中継元から前記中継先へ中継後の中継先フローを処理する中継先処理規則を作成する通信制御部とを備えるものである。
【００１２】
本発明に係る通信方法は、パケットが属するフローと前記フローに属するパケットに対する処理とを規定する処理規則に基づいて、受信したパケットを処理し、前記受信したパケットを中継元と中継先の間で中継するとともに、前記中継するトラフィックの特徴を抽出し、前記受信したパケットと前記抽出したトラフィックの特徴に基づき、前記処理規則として、前記中継元から前記中継先へ中継後の中継先フローを処理する中継先処理規則を作成するものである。
【００１３】
本発明に係る通信プログラムは、コンピュータに通信処理を実行させるための通信プログラムであって、前記通信処理は、パケットが属するフローと前記フローに属するパケットに対する処理とを規定する処理規則に基づいて、受信したパケットを処理し、前記受信したパケットを中継元と中継先の間で中継するとともに、前記中継するトラフィックの特徴を抽出し、前記受信したパケットと前記抽出したトラフィックの特徴に基づき、前記処理規則として、前記中継元から前記中継先へ中継後の中継先フローを処理する中継先処理規則を作成するものである。
【００１４】
本発明に係る通信システムは、第１の通信装置と第２の通信装置とがネットワークを介して通信可能に接続された通信システムであって、前記第１の通信装置は、パケットを送信する通信利用部と、前記パケットが属するフローと前記フローに属するパケットに対する処理とを規定する処理規則に基づいて、前記通信利用部または前記第２の通信装置から受信したパケットを処理する通信処理部と、前記受信したパケットを中継元と中継先の間で中継するとともに、前記中継するトラフィックの特徴を抽出する通信中継特徴抽出部と、前記受信したパケットと前記抽出したトラフィックの特徴に基づき、前記処理規則として、前記中継元から前記中継先へ中継後の中継先フローを処理する中継先処理規則を作成する通信制御部とを備えるものである。
【発明の効果】
【００１５】
本発明によれば、柔軟に通信（フロー）を指定し制御することが可能な通信装置、通信方法、通信プログラムおよび通信システムを提供することができる。
【図面の簡単な説明】
【００１６】
【図１】実施形態に係る通信システムの構成の一例を示す説明図である。
【図２】実施形態に係る通信端末１の構成例を示すブロック図である。
【図３】実施形態に係る通信制御部１０の構成例を示すブロック図である。
【図４】実施形態に係る通信処理部４０の構成例を示すブロック図である。
【図５】第１の実施形態に係る制御ポリシ記憶部１０２が記憶する制御ポリシの例を示す説明図である。
【図６Ａ】第１の実施形態に係る通信システムの動作の例を示すシーケンス図である。
【図６Ｂ】第１の実施形態に係る通信システムの動作の例を示すシーケンス図である。
【図６Ｃ】第１の実施形態に係る通信システムの動作の例を示すシーケンス図である。
【図７】第１の実施形態に係る通信制御部１０の動作の例を示すフローチャートである。
【図８Ａ】第１の実施形態に係るフローテーブル記憶部４０３が記憶するフローエントリの例を示す説明図である。
【図８Ｂ】第１の実施形態に係るフローテーブル記憶部４０３が記憶するフローエントリの例を示す説明図である。
【図９】第１の実施形態に係る通信情報記憶部３０が記憶する情報の例を示す説明図である。
【図１０】第１の実施形態に係る通信中継特徴抽出部２０の動作の例を示すフローチャートである。
【図１１】第１の実施形態に係る通信利用部７０が送信するＨＴＴＰリクエスト行およびヘッダの例を示す説明図である。
【図１２】第１の実施形態に係る通信システムの動作の例を示すシーケンス図である。
【図１３】第２の実施形態に係る通信端末１の構成例を示すブロック図である。
【図１４Ａ】第３の実施形態に係る通信システムの動作の例を示すシーケンス図である。
【図１４Ｂ】第３の実施形態に係る通信システムの動作の例を示すシーケンス図である。
【図１４Ｃ】第３の実施形態に係る通信システムの動作の例を示すシーケンス図である。
【図１５】実施形態に係る通信制御部１０の構成例を示すブロック図である。
【発明を実施するための形態】
【００１７】
（実施形態の共通部分の概要）
まず、図面を参照して、各実施形態に共通する構成および動作の概要について説明する。
【００１８】
図１は、実施形態に係る通信システムの構成の一例を示す説明図である。図１に例示する通信システムは、通信端末１と、サーバ２と、通信ネットワーク３−１〜３−３と、を備えている。実施の形態に係る通信システムは、通信端末１とサーバ２とが通信ネットワーク３−１〜３−３を介して通信可能に接続されたシステムである。なお、図１に示すこれらの構成要素の数や接続関係は一例であり、本発明はこれに限定されるものではない。
【００１９】
通信端末（第１の通信装置）１は、通信ネットワーク３−１および３−２と同時に接続し通信することができ、それらや通信ネットワーク３−３を介してサーバ２と通信を行う。通信端末１は、例えば、サーバ２のサービスを利用するクライアント端末であるが、その他、サーバ２と通信する任意の通信装置であってもよい。
【００２０】
サーバ（第２の通信装置）２は、通信端末１の通信相手であり、その一例としてＷｅｂサーバ、メールサーバ、ビデオサーバ、等が挙げられる。ただし、本発明のおけるサーバ２はこれらに限定されない。また、各実施形態の説明では通信端末１の通信相手がサーバである例を示したが、本発明はこれに限定されない。通信端末１の通信相手は通信端末１と通信する装置であればよく、その形態はサーバの他、端末、携帯電話、パーソナルコンピュータ、家電、等であってもよい。
【００２１】
通信ネットワーク３−１〜３−２は、通信端末１と接続し、通信端末１と、自ネットワーク内に接続された装置もしくは通信ネットワーク３−３など他のネットワークとの間の通信を中継する。また、通信ネットワーク３−３は、サーバ２と接続し、通信ネットワーク３−１〜３−２を介した通信端末１とサーバ２との間の通信を中継する。通信ネットワーク３−１〜３−３は有線ネットワークであっても、無線ネットワークであってもよい。有線ネットワークの一例としてＥｔｈｅｒｎｅｔ（登録商標）、専用線、が挙げられる。無線ネットワークの一例として、３Ｇ、ＬＴＥ、無線ＬＡＮ、ＷｉＭＡＸ、ＰＨＳ（Ｐｅｒｓｏｎａｌ  Ｈａｎｄｙ−ｐｈｏｎｅ  Ｓｙｓｔｅｍ）、が挙げられる。通信ネットワーク３−１〜３−３は、それぞれ別の種類のネットワークでもよいし、同じ種類のネットワークでもよい。例えば、通信ネットワーク３−１及び３−２の一方を３Ｇとし、他方を無線ＬＡＮとしてもよい。
【００２２】
図２は、実施形態に係る通信端末１の構成の一例を示す構成図である。図２に示すように、実施の形態に係る通信端末１は、通信制御部１０と、通信中継特徴抽出部２０と、通信情報記憶部３０と、通信処理部４０と、通信ＩＦ（Ｉｎｔｅｒｆａｃｅ）部５０−１〜５０−２と、内部通信ＩＦ部６０と、通信利用部７０と、を備える。なお、図２は、通信端末１の機能ブロック（処理部もしくはモジュール）の一例であり、各実施の形態の動作が実現できれば、その他の構成であってもよい（図３及び図４も同様）。
【００２３】
通信制御部１０は、通信情報記憶部３０に記憶された情報を利用し、通信処理部４０による通信処理を制御する。後述のように、通信制御部１０は、制御ポリシに基づいてフローエントリ（処理規則）を作成することで、通信処理部４０の処理を制御する。
【００２４】
通信中継特徴抽出部２０は、通信利用部７０がその通信相手先（以降、サーバ２を通信相手先の例とする）に対し送信したパケットを、サーバ２の代わりに一旦受信した後、サーバ２に送信する(中継動作)。また、通信中継特徴抽出部２０は、サーバ２が通信利用部７０に対し送信したパケットを、通信利用部７０の代わりに一旦受信した後、通信利用部７０に送信する(中継動作)。通信利用部７０と通信中継特徴抽出部２０との間の通信を中継元通信（中継元フロー、もしくは、第１のフロー）と呼称し、当該中継元通信に対応する通信中継特徴抽出部２０とサーバ２との間の通信を中継先通信（中継先フロー、もしくは、第２のフロー）と呼称する。この例では、通信中継特徴抽出部２０より通信利用部７０側が中継元であり、通信中継特徴抽出部２０よりサーバ２側が中継先である。通信中継特徴抽出部２０は、受信したパケットを中継元と中継先の間で中継する通信中継部と、中継する通信の特徴（トラフィックの特徴）を抽出する通信特徴抽出部を含むともいえる。通信中継特徴抽出部２０は、中継動作の際、中継するパケットに含まれるデータを参照し、その通信の特徴となるデータを判定・抽出し、通信情報記憶部３０に記憶させる。その際、通信中継特徴抽出部２０は、中継に係る通信の情報として以下の情報も合わせて通信情報記憶部３０に記憶させてよい。
−  当該中継動作に係る、通信利用部７０と通信中継特徴抽出部２０との間の通信（中継元通信）に関する情報（アドレス、ポート番号等）
−  当該中継動作に係る、サーバ２と通信中継特徴抽出部２０との間の通信（中継先通信）に関する情報（アドレス、ポート番号等）
【００２５】
通信情報記憶部３０は、通信制御部１０が必要としている情報や、通信中継特徴抽出部２０によって判定された通信利用部７０による通信の特徴や、その中継動作に係る情報を記憶する。通信情報記憶部３０は、通信端末１の内部の記憶部として説明するが、通信端末１の外部の記憶装置であってもよい。
【００２６】
通信処理部４０は、通信制御部１０による制御の下、通信ＩＦ部５０や内部通信ＩＦ部６０から送受信される通信（パケット）の処理を行う。後述のように、通信処理部４０は、通信制御部１０から設定されたフローエントリ（処理規則）に基づいて、受信したパケットを処理する。
【００２７】
通信ＩＦ部５０−１〜５０−２は、通信端末１の外部と接続するための外部インタフェースであり、それぞれ通信ネットワーク３−１および３−２に接続し、パケットの送受信を行う。通信ＩＦ部５０−１および５０−２は、それぞれ接続する通信ネットワーク３−１および３−２の通信プロトコルに準拠したインタフェースである。例えば、通信ＩＦ部５０−１は、通信ネットワーク３−１を介して送信／受信するパケットを、通信処理部４０との間で送信／受信（入力／出力）し、通信ＩＦ部５０−２は、通信ネットワーク３−２を介して送信／受信するパケットを、通信処理部４０との間で送信／受信（入力／出力）する。
【００２８】
内部通信ＩＦ部６０は、通信端末１の内部の機能（処理部）間を接続するための内部インタフェースであり、通信端末１外の装置との物理的な接続を伴わない、仮想的な通信インタフェースである。内部通信ＩＦ部６０は、通信利用部７０との間で送信／受信するパケットを、通信処理部４０との間で送信／受信（入力／出力）し、また、通信中継特徴抽出部２０との間で送信／受信するパケットを、通信処理部４０との間で送信／受信（入力／出力）する。内部通信ＩＦ部６０は、それを利用し通信を行う、通信利用部７０や通信中継特徴抽出部２０に対し、従来の物理通信ＩＦと同様に振る舞う。ただし、内部通信ＩＦ部６０に送受信されたパケットは物理ネットワークに送受信されることなく、通信処理部４０への入出力として扱われる。
【００２９】
通信利用部７０は、通信端末１内において通信を行うモジュールである。例えば、通信利用部７０は、通信処理部４０、通信中継特徴抽出部２０を介して、外部のサーバ２にアクセスし、サーバ２のサービスを利用するクライアント処理部である。通信利用部７０の一例として、Ｗｅｂブラウザ、メールクライアント、ビデオストリーミングアプリケーション、ＳＮＳ（Ｓｏｃｉａｌ  Ｎｅｔｗｏｒｋ  Ｓｅｒｖｉｃｅ）アプリケーション等が挙げられる。ただし、本発明のおける通信利用部７０はこれらに限定されない。
【００３０】
例えば、実施形態に係る通信端末１は、少なくとも図１５に示すように構成されていてもよい。すなわち、通信端末（通信装置）１は、通信処理部４０と、通信中継特徴抽出部２０と、通信制御部１０とを備えている。通信処理部４０は、パケットが属するフローとフローに属するパケットに対する処理とを規定する処理規則に基づいて、受信したパケットを処理する。通信中継特徴抽出部２０は、受信したパケットを中継元と中継先の間で中継するとともに、中継するトラフィックの特徴を抽出する。通信制御部１０は、受信したパケットと抽出したトラフィックの特徴に基づき、処理規則として、中継元から中継先へ中継後の中継先フローを処理する中継先処理規則を作成する。これにより、トラフィックの特徴に基づいて処理規則を作成するため、より柔軟に通信（フロー）を指定し制御することができる。
【００３１】
図３は、実施形態に係る通信端末１の通信制御部１０の構成の一例を示す構成図である。図３に示すように、通信制御部１０は、制御処理部１０１と、制御ポリシ記憶部１０２と、を備えている。
【００３２】
制御処理部１０１は、制御ポリシ記憶部１０２と通信情報記憶部３０とに記憶された情報を利用し、通信処理部４０による通信処理を制御する。
【００３３】
制御処理部１０１は、後述する通信処理部４０の制御チャネル処理部４０１との間で制御用通信（制御チャネル）を行う。制御処理部１０１は、中継元通信に関する、制御チャネルを通じて通信処理部４０から処理が必要なパケットの通知（パケット通知）を受け取ると、制御ポリシ記憶部１０２に記憶された制御ポリシと当該パケットの照合を行う。制御処理部１０１は、当該パケットの照合に成功し、適用する制御ポリシの決定に成功した場合、当該パケットが属する通信（フロー）に適用する処理を当該制御ポリシから決定する。制御処理部１０１は、当該パケットの照合に必要な情報（通信の特徴）が当該パケット通知に含まれていない場合、当該パケットのフロー（中継元フロー）に適用する処理（中継元処理規則、もしくは、第１の処理規則）を、当該フローを通信中継特徴抽出部２０に中継させること、とする。制御処理部１０１は、通信中継特徴抽出部２０により通信情報記憶部３０に設定された情報（通信の特徴）を利用し、制御ポリシ記憶部１０２に記憶された制御ポリシと、当該パケットの照合を実施する。制御処理部１０１は、当該パケットの照合に成功し、適用する制御ポリシの決定に成功した場合、当該パケットのフローに対する中継先通信（中継先フロー）に適用する処理（中継先処理規則、もしくは、第２の処理規則）を当該制御ポリシから決定する。
【００３４】
制御処理部１０１は、中継元通信（中継元フロー）もしくは中継先通信（中継先フロー）に適用する処理を決定した後、当該処理を表す０もしくは１以上のフローエントリ（中継元処理規則または中継先処理規則）を生成し、制御チャネルを通じて通信処理部４０に当該フローエントリを設定する。
【００３５】
制御ポリシ記憶部１０２は、発生した通信に適用する処理を制御処理部１０１が決定するための情報である制御ポリシのリストを記憶する。制御ポリシは、少なくとも、当該制御ポリシの適用対象である通信（トラフィック、フロー）を指定するトラフィック条件と、当該制御ポリシが適用される際に実行すべき処理と、から構成される。例えば、制御ポリシは、トラフィックの特徴（通信の特徴）を含むトラフィック条件と当該トラフィック条件に適合する通信に対する処理とを規定しているともいえる。制御ポリシは、適用される優先順位を示す優先度を含んでもよい。制御ポリシ記憶部１０２は、通信制御部１０の内部の記憶部として説明するが、その他の通信端末１の内部の記憶部であってもよいし、通信端末１の外部の記憶装置であってもよい。
【００３６】
制御ポリシのトラフィック条件は、例えば、以下の項目を含む。一つの制御ポリシに含まれるトラフィック条件は一つでも複数でもよく、それらはＡＮＤで結合（ＡＮＤ条件）されたりＯＲで結合（ＯＲ条件）されたりしてよい。また、トラフィック条件は完全一致でも部分一致でもよい。
・送信元ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレス
・送信先ＩＰアドレス
・プロトコルタイプ
・送信元ポート番号
・送信先ポート番号
・入力インタフェース
・入力インタフェース種別
・ＱｏＳ（Ｑｕｏｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）
・ＶＬＡＮ  ＩＤ（Ｖｉｒｔｕａｌ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ）
・ドメイン名
・アプリケーション
【００３７】
制御ポリシの処理は、例えば、以下の項目を含む。一つの制御ポリシに含まれる処理は一つでも複数でもよい。
・指定されたＩＦを使用して通信する。
・指定されたＩＦ群の中のいずれかを使用して通信する（ＩＦ間に優先度を設けてもよい）。
・指定されたＩＦ群のすべてを使用して通信する。
・パケット中の指定されたフィールドを指定された値に変更する。
・指定されたサーバもしくはモジュールに転送する。
・指定されたフローエントリを通信処理部４０に設定する。
・破棄する。
【００３８】
なお、前述した制御ポリシのトラフィック条件および処理は一例であり、本発明はこれらに限定されない。また、制御ポリシ記憶部１０２が記憶する制御ポリシは予め与えられておいてもよいし、制御ポリシサーバ（図示されない）等の通信端末１以外の装置から受信されてもよい。
【００３９】
図４は、実施形態に係る通信端末１の通信処理部４０の構成の一例を示す構成図である。図４に示すように、通信処理部４０は、制御チャネル処理部４０１と、パケット処理部４０２と、フローテーブル記憶部４０３と、を備えている。
【００４０】
制御チャネル処理部４０１は、通信制御部１０との間で制御用通信（制御チャネル）を行う。また、制御チャネル処理部４０１は、対応するフローエントリが存在しないパケットの通知をパケット処理部４０２から受けると、制御チャネルを用いてそのパケットを通信制御部１０に通知する（パケット通知）。パケット通知には、当該パケットの全部もしくは一部、および当該パケットが受信されたＩＦの情報が含まれる。
【００４１】
さらに、制御チャネル処理部４０１は、制御チャネルを介して通信制御部１０からフローエントリを追加、変更、または、削除するよう指示（設定）されると、指示された内容に基づきフローテーブル記憶部４０３に記憶されているフローテーブルを更新する。また、制御チャネル処理部４０１は、制御チャネルを介して通信制御部１０からパケットを出力するよう指示されると、指示された内容に基づきパケットを出力するようパケット処理部４０２に指示する。
【００４２】
フローテーブル記憶部４０３は、処理規則（フローエントリ）を含むフローテーブルを記憶する。処理規則（フローエントリ）は、制御チャネル処理部４０１によってフローテーブル記憶部４０３に記録される。フローテーブル記憶部４０３は、通信処理部４０の内部の記憶部として説明するが、その他の通信端末１の内部の記憶部であってもよいし、通信端末１の外部の記憶装置であってもよい。
【００４３】
パケット処理部４０２は、通信ＩＦ部５０−１〜５０−２や内部通信ＩＦ部６０を介して他の装置やモジュール（以降まとめてエンティティと記載）と接続され、接続されたエンティティとの間でパケットの送受信を行う。パケット処理部４０２は、他の装置からパケットを受信すると、受信したパケットに対応するフローエントリをフローテーブル記憶部４０３に記憶されているフローテーブル内から検索する。受信したパケットに対応するフローエントリがフローテーブル内に見つかった場合、パケット処理部４０２は、そのフローエントリのアクションに従って処理を行う。一方、受信したパケットに対応するフローエントリがフローテーブルに見つからなかった場合、パケット処理部４０２は、受信したパケットのフローエントリが存在しない旨を制御チャネル処理部４０１に通知する。
【００４４】
さらに、パケット処理部４０２は、他のエンティティと通信を行うためのポートを複数備え、各ポートは、それぞれ異なる通信ＩＦ部５０−１〜５０−２および内部通信ＩＦ部６０と接続される。なお、各ポートは、ポート識別子により識別される。
【００４５】
フローエントリのアクションに基づき、パケット処理部４０２が行う処理には、以下に例示する処理が挙げられる。また、パケット処理部４０２が行う処理は、１つに限定されず、０であっても、２つ以上であってもよい。ただし、フローエントリのアクションに指定される処理は、以下の処理に限定されない。
・指定されたポートからパケットを出力する。
・パケットの送信先ＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレスを指定された値に変更する。
・パケットの送信元ＭＡＣアドレスを指定された値に変更する。
・パケットの送信先ＩＰアドレスを指定された値に変更する。
・パケットの送信元ＩＰアドレスを指定された値に変更する。
・パケットの送信先ポート番号を指定された値に変更する。
・パケットの送信元ポート番号を指定された値に変更する。
・パケットにＶＬＡＮ（Ｖｉｒｔｕａｌ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）タグを追加する。
・パケットのＶＬＡＮタグを削除する。
・パケットのＶＬＡＮタグを変更する。
・パケットを破棄する。
【００４６】
制御チャネル処理部４０１およびパケット処理部４０２は、一例として、プログラムに従って動作するコンピュータのＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）によって実現することができる。また、制御チャネル処理部４０１およびパケット処理部４０２は、それぞれ、専用のハードウェアで実現されていてもよい。
【００４７】
（実施形態１）
次に、図面を参照して第１の実施形態に係る通信システムについて説明する。ここでは以下を仮定して第１の実施形態の説明を行う。ただし、本発明はこれらに限定されるものではない。
−  通信ネットワーク３−１は３Ｇネットワークであり、通信ＩＦ部５０−１は３Ｇインタフェースであり、通信ＩＦ部５０−１は通信ネットワーク３−１に接続する。
−  通信ネットワーク３−２は無線ＬＡＮネットワークであり、通信ＩＦ部５０−２は無線ＬＡＮインタフェースであり、通信ＩＦ部５０−２は通信ネットワーク３−２に接続する。
−  通信の特徴としてＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を利用する。
−  制御ポリシのトラフィック条件としてＵＲＬを利用可能である。
【００４８】
第１の実施形態における制御ポリシ記憶部１０２が記憶する制御ポリシのリストの一例を図５に示す。図５に示すように、第１の実施形態における制御ポリシは、優先度と、トラフィック条件と、実行すべき処理とを関連付けた規則である。トラフィック条件は、ポリシを適用するトラフィックを識別するための条件である。トラフィックには、通信処理部４０が処理するパケットやフローが含まれ、さらに、その他の抽象的な通信（接続やデータの流れ）が含まれる。すなわち、トラフィック条件には、フローエントリよりも抽象的な指定が可能であり、フローエントリで指定可能な条件以外の条件を指定することができる。トラフィック条件には、フローエントリで指定できない、すなわち、パケットに含まれない、トラフィックの特徴（例えば、ＵＲＬ）を指定できる。また、第１の実施形態における制御ポリシは優先度を含み、数値が小さいものが高優先であるとする。ここでは、説明の都合上、制御ポリシの優先度をその識別子として使用する。例えば、図５の上から一つ目の制御ポリシを参照する際、制御ポリシ１と記述する。本実施形態の説明において、トラフィック条件は特記がない場合ＡＮＤ結合（ＡＮＤ条件）とする。また、トラフィック条件でのＵＲＬの指定において、"＊"は任意の文字列にマッチすることを意味する。
【００４９】
第１の実施形態における通信中継特徴抽出部２０は、ＨＴＴＰ（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）通信の中継を行い、ＵＲＬを中継される通信の特徴として抽出する。
【００５０】
通信中継特徴抽出部２０は、中継対象のＨＴＴＰトラフィックを受信するため、特定のＩＰアドレス（中継待ち受け用ＩＰアドレス）および特定のポート番号（中継待ち受け用ポート番号）でのＴＣＰ接続待ち受けを行う。通信中継特徴抽出部２０は、中継待ち受け用ポート番号に接続要求があった場合、当該要求を受け付け、ＴＣＰ接続を確立する（中継元コネクション、中継元通信（中継元フロー））。中継元コネクション確立後、通信中継特徴抽出部２０は当該中継元コネクションからデータ（ＨＴＴＰリクエスト行、ＨＴＴＰヘッダ等）を読み込む。
【００５１】
通信中継特徴抽出部２０は、当該中継元コネクションから読み込みこんだデータから当該通信の特徴（本例ではＵＲＬ）を抽出し、中継元コネクションの情報（ＩＰアドレスやポート番号）とともに通信情報記憶部３０に記憶させる。通信中継特徴抽出部２０は、例えば、ＵＲＬを受信したＨＴＴＰリクエスト行やＨＴＴＰ  Ｈｏｓｔヘッダから取得できる。
【００５２】
通信中継特徴抽出部２０は、中継元コネクションから読み込んだデータや中継元コネクションの情報から、中継先のＩＰアドレスおよびポート番号を決定し、当該ＩＰアドレス・ポート番号に対しＴＣＰ接続要求を出す（中継先コネクション、中継先通信（中継先フロー））。この時、通信中継特徴抽出部２０は、中継先コネクションの情報（ＩＰアドレスやポート番号）を、対応する中継元コネクションに関する追加情報として通信情報記憶部３０に記憶させる。通信中継特徴抽出部２０は、例えば、中継元コネクションから受信したＨＴＴＰ  Ｈｏｓｔヘッダを用いて中継先のＩＰアドレスおよびポート番号を決定する。
【００５３】
通信中継特徴抽出部２０は、中継元コネクションおよび中継先コネクションの確立完了後、両コネクション間でデータの中継を行う。すなわち、通信中継特徴抽出部２０は、中継元コネクションから読み込んだデータ（中継先コネクション確立前に読み込んだものを含む）を中継先コネクションに書き込み、同様に、中継先コネクションから読み込んだデータを中継元コネクションに書き込む。
【００５４】
通信中継特徴抽出部２０は、中継元コネクションにおいて通信されるプロトコルに対応していない場合、通信の特徴の抽出処理失敗とし、その旨を通信情報記憶部３０に記憶させる。その場合、通信中継特徴抽出部２０は、中継先コネクションの確立およびデータの中継を試みてもよい。
【００５５】
第１の実施形態における制御処理部１０１は、通信処理部４０からパケット通知を受信すると、通信情報記憶部３０に記憶された情報を参照して、当該パケットが中継先コネクションに属するものか否かを判定する。
【００５６】
当該パケットが属する通信が中継先コネクションでなく中継元コネクションであり、当該中継元コネクションと制御ポリシとの照合に当該パケット通知に含まれない情報（本例ではＵＲＬ）が必要な場合、制御処理部１０１は、当該中継元コネクションに属する通信利用部７０からのパケットの送信先を通信中継特徴抽出部２０の中継待ち受け用ＩＰアドレスおよび中継待ち受け用ポート番号に変更し、内部通信ＩＦ部６０へ出力するフローエントリを通信処理部４０に設定する。同時に、逆方向のパケットのフローエントリとして、制御処理部１０１は、当該中継元コネクションに属する通信利用部７０宛てのパケットの送信元を通信利用部７０が元々使用していた送信先アドレスおよびポート番号に変更し、内部通信ＩＦ部６０へ出力するフローエントリを通信処理部４０に設定する。その際、制御処理部１０１は、中継元コネクションの情報（アドレス変換に係る情報を含む）を通信情報記憶部３０に記憶させてもよい。
【００５７】
通信処理部４０からのパケット通知で通知されたパケットが属する通信が中継先コネクションであった場合、制御処理部１０１は通信情報記憶部３０を参照して当該通信に対応する中継元コネクションの情報と通信の特徴（本例ではＵＲＬ）を取得し、それらの情報を基に制御ポリシとの照合を実施する。制御処理部１０１は、照合の結果決定された制御ポリシの処理を、当該中継先コネクションに適用する処理とし、そのためのフローエントリを作成して通信処理部４０に設定する。
【００５８】
制御処理部１０１には、通信中継特徴抽出部２０の中継待ち受け用ＩＰアドレスおよび中継待ち受け用ポート番号を予め与えられておいてよい。また、通信中継特徴抽出部２０の中継待ち受け用ＩＰアドレスおよび中継待ち受け用ポート番号は予め通信情報記憶部３０に記憶されており、制御処理部１０１および通信中継特徴抽出部２０は通信情報記憶部３０を参照して中継待ち受け用ＩＰアドレスおよび中継待ち受け用ポート番号を決定してもよい。
【００５９】
［動作の説明］
次に、本実施形態に係る通信システムの動作について、図面を参照しつつ説明する。なお、ここでは以下のアドレス等が用いられるものとして説明を行う。
−  サーバ２： １０．０．０．１ （ｅｘａｍｐｌｅ．ｃｏｍ）
−  内部通信ＩＦ部６０：１９２．１６８．２５４．１
−  通信ＩＦ部５０−１：１９２．１６８．１．１
−  通信ＩＦ部５０−２：１９２．１６８．２．１
−  通信中継特徴抽出部２０の中継待ち受け用ＩＰアドレス：１９２．１６８．２５４．２
−  通信中継特徴抽出部２０の中継待ち受け用ポート番号：８０８０
【００６０】
なお、本実施形態において、ドメイン名からのＩＰアドレスの解決はＤＮＳ等の従来技術によって行われるものとし、その説明を省略する。
【００６１】
また、ＴＣＰによる通信では、Ａｃｋ（Ａｃｋｎｏｗｌｅｄｇｅｍｅｎｔ）送信や、データ欠落に伴うデータパケットの再送が通常発生するが、特記する場合を除きそれらの図示および説明は省略する。
【００６２】
＜通信利用部７０がｈｔｔｐ：／／ｅｘａｍｐｌｅ．ｃｏｍ／ｖｉｄｅｏ／ｉｎｄｅｘ．ｈｔｍｌにアクセスした場合の動作＞
通信利用部７０が、ユーザ等の指示に基づき、ｈｔｔｐ：／／ｅｘａｍｐｌｅ．ｃｏｍ／ｖｉｄｅｏ／ｉｎｄｅｘ．ｈｔｍｌにアクセスした場合の動作について説明する。本通信は、図５に示す制御ポリシ１２によって処理されることが期待される。なお、以下の説明は、次の条件が成り立っていることを前提とする。
−  フローテーブル記憶部４０３にはフローエントリが記憶されていない。
−  通信情報記憶部３０には情報が記憶されていない。
【００６３】
図６Ａ〜図６Ｃは、本実施形態における通信システムの動作の例を示すシーケンス図である。なお、図６Ａ〜図６Ｃにおいて、通信ネットワーク３−３の図示は省略する。
【００６４】
図６Ａ〜図６Ｃに示すように、まず、通信利用部７０は、１０．０．０．１（ｅｘａｍｐｌｅ．ｃｏｍ）の８０番ポートに対し、ＴＣＰ接続要求を送信する（ステップＳ１０１）。この時、当該ＴＣＰ接続要求（ＳＹＮパケット）の送信元ＩＰアドレスは１９２．１６８．２５４．１、送信元ポート番号は１０００１、送信先ＩＰアドレスは１０．０．０．１、送信先ポート番号は８０であるとする。
【００６５】
続いて、通信処理部４０のパケット処理部４０２は当該ＴＣＰ接続要求を受信し、フローテーブル記憶部４０３を参照し、対応するフローエントリの有無を確認する（ステップＳ１０２）。ステップＳ１０２の時点において、フローテーブル記憶部４０３は空であるため、対応するフローエントリは見つからない。
【００６６】
続いて、通信処理部４０のパケット処理部４０２は、ＴＣＰ接続要求と一致するフローエントリが無いため、当該ＴＣＰ接続要求を制御チャネル処理部４０１に通知し、制御チャネル処理部４０１は対応するパケット通知を通信制御部１０に送信する（ステップＳ１０３）。当該パケット通知は、当該ＴＣＰ接続要求パケット全体を含んでもよい。しかし、一般的に当該ＴＣＰ接続要求パケットにＵＲＬ情報を含まれない。
【００６７】
続いて、通信制御部１０の制御処理部１０１はパケット通知を受信し、パケット通知により通知されたＴＣＰ接続要求に対する処理を決定する（ステップＳ１０４）。その動作の詳細は後述する。具体的には、本処理において、後述するステップＳ１４６が実行され、図８Ａの項番１および２に示すフローエントリが生成される。
【００６８】
続いて、通信制御部１０の制御処理部１０１は、ステップＳ１０４において生成されたフローエントリを通信処理部４０に設定すると同時に、対応するＴＣＰ接続要求に対し当該フローエントリに基づく処理を適用するよう指示する（ステップＳ１０５）。
【００６９】
続いて、通信処理部４０の制御チャネル処理部４０１は、通知（設定）されたフローエントリをフローテーブル記憶部４０３に記憶させる（ステップＳ１０６）。
【００７０】
続いて、通信処理部４０のパケット処理部４０２は、ステップＳ１０６で設定されたフローエントリに基づきＴＣＰ接続要求を処理する（ステップＳ１０７）。具体的には、パケットが図８Ａの項番１のフローエントリにマッチするため、当該フローエントリのアクションを実行する。すなわち、パケット処理部４０２は、ＴＣＰ接続要求の送信先ＩＰアドレスを１９２．１６８．２５４．２（中継待ち受け用ＩＰアドレス）、送信先ポート番号を８０８０（中継待ち受け用ポート番号）に変更した後、内部通信ＩＦ部６０に出力する。
【００７１】
続いて、通信中継特徴抽出部２０は、受信したＴＣＰ接続要求に対するＴＣＰ接続応答を送信する（ステップＳ１０８）。この時、当該ＴＣＰ接続応答の送信元ＩＰアドレスは１９２．１６８．２５４．２、送信元ポート番号は８０８０、送信先ＩＰアドレスは１９２．１６８．２５４．１、送信先ポート番号は１０００１となる。
【００７２】
続いて、通信処理部４０のパケット処理部４０２は、当該ＴＣＰ接続応答を受信し、フローテーブル記憶部４０３を参照し、対応するフローエントリの有無を確認する（ステップＳ１０９）。ここでは、ステップＳ１０６において記憶されたフローエントリが発見される（図８Ａの項番２）。
【００７３】
続いて、通信処理部４０のパケット処理部４０２は、ステップＳ１０９で発見したフローエントリに基づき処理する（ステップＳ１１０）。具体的には、パケットが図８Ａの項番２のフローエントリにマッチするため、当該フローエントリのアクションを実行する。すなわち、パケット処理部４０２は、ＴＣＰ接続応答の送信元ＩＰアドレスを１０．０．０．１（ＴＣＰ接続要求の当初の送信先ＩＰアドレス）に、送信元ポート番号を８０（ＴＣＰ接続要求の当初の送信先ポート番号）に変更した後、内部通信ＩＦ部６０に出力する。
【００７４】
この時点において、通信利用部７０は、接続先サーバとのＨＴＴＰ通信用ＴＣＰ接続（コネクション）の確立が完了したと認識し、当該コネクションを介してＨＴＴＰリクエスト行およびヘッダ（単にリクエストおよびヘッダとも称する）を送信する（ステップＳ１１１）。なお、当該コネクションは通信中継特徴抽出部２０にとって中継元コネクションとなる。
【００７５】
続いて、通信処理部４０のパケット処理部４０２は、当該リクエストおよびヘッダを受信し、フローテーブル記憶部４０３を参照し、対応するフローエントリの有無を確認する（ステップＳ１１２）。ここでは、ステップＳ１０６において記憶されたフローエントリが発見される（図８Ａの項番１）。
【００７６】
続いて、通信処理部４０のパケット処理部４０２は、ステップＳ１０９で発見したフローエントリに基づき処理する（ステップＳ１１３）。ステップＳ１０７と同様に、図８Ａの項番１のフローエントリに基づき、リクエストおよびヘッダの送信先ＩＰアドレス、送信先ポート番号を変更し、内部通信ＩＦ部６０に出力する。
【００７７】
続いて、通信中継特徴抽出部２０は、ＨＴＴＰリクエスト行およびヘッダを受信し、その特徴としてＵＲＬを抽出する（ステップＳ１１４）。また、通信中継特徴抽出部２０は、同時に、中継先コネクションの確立先の決定も行う。その動作の詳細は後述する。
【００７８】
続いて、通信中継特徴抽出部２０は、抽出した特徴（ＵＲＬ）と、中継先コネクションの情報を通信情報記憶部３０に記憶させる（ステップＳ１１５）。ここでは、当該中継先コネクションの送信元ＩＰアドレスは１９２．１６８．２５４．２、送信元ポート番号は１０００２、送信先ＩＰアドレスは１０．０．０．１、送信先ポート番号は８０であるとする。本例において通信情報記憶部３０に記憶される情報の例を図９に示す。図９のように、中継元コネクション情報、所要情報、中継先コネクション情報、抽出情報を関連付ける。
【００７９】
続いて、通信中継特徴抽出部２０は、ステップＳ１１４で決定された確立先に対し中継先コネクションを確立するため、ＴＣＰ接続要求を送信する（ステップＳ１１６）。このとき、通信中継特徴抽出部２０は、中継先コネクションに関し追加の情報が得られる場合、当該情報を通信情報記憶部３０に記憶させてもよい。
【００８０】
続いて、通信処理部４０のパケット処理部４０２は当該ＴＣＰ接続要求を受信し、フローテーブル記憶部４０３を参照し、対応するフローエントリの有無を確認する（ステップＳ１１７）。ステップＳ１１７の時点において、対応するフローエントリは見つからない。
【００８１】
続いて、通信処理部４０のパケット処理部４０２は、当該ＴＣＰ接続要求と一致するフローエントリが無いため、当該ＴＣＰ接続要求を制御チャネル処理部４０１に通知し、制御チャネル処理部４０１は対応するパケット通知を通信制御部１０に送信する（ステップＳ１１８）。
【００８２】
続いて、通信制御部１０の制御処理部１０１はパケット通知を受信し、パケット通知により通知されたＴＣＰ接続要求に対する処理を決定する（ステップＳ１１９）。その動作の詳細は後述する。本例では、当該ＴＣＰ接続要求は図５の制御ポリシ１２に適合すると判定され、後述するステップＳ１４８において図８Ａの項番３および４に示すフローエントリが生成される。
【００８３】
続いて、通信制御部１０の制御処理部１０１は、ステップＳ１１９において決定された処理に基づくフローエントリを通信処理部４０に設定すると同時に、対応するＴＣＰ接続要求に対し当該フローエントリに基づく処理を適用するよう指示する（ステップＳ１２０）。
【００８４】
続いて、通信処理部４０の制御チャネル処理部４０１は、通知（設定）されたフローエントリをフローテーブル記憶部４０３に記憶させる（ステップＳ１２１）。
【００８５】
続いて、通信処理部４０のパケット処理部４０２は、ステップＳ１２１で設定されたフローエントリに基づきＴＣＰ接続要求を処理する（ステップＳ１２２）。具体的には、パケットが図８Ａの項番３のフローエントリにマッチするため、当該フローエントリのアクションを実行する。すなわち、パケット処理部４０２は、ＴＣＰ接続要求の送信元ＩＰアドレスを１９２．１６８．２．１（通信ＩＦ部５０−２のＩＰアドレス）に変更した後、通信ＩＦ部５０−２に出力する。当該ＴＣＰ接続要求は、通信ＩＦ部５０−２から、通信ネットワーク３−２および通信ネットワーク３−３を介し、サーバ２に送信される。
【００８６】
続いて、サーバ２は、受信したＴＣＰ接続要求に対するＴＣＰ接続応答を送信する（ステップＳ１２３）。この時、当該ＴＣＰ接続応答の送信元ＩＰアドレスは１０．０．０．１、送信元ポート番号は８０、送信先ＩＰアドレスは１９２．１６８．２．１、送信先ポート番号は１０００２となる。当該ＴＣＰ接続応答は、サーバ２から、通信ネットワーク３−３および通信ネットワーク３−２を介し、通信端末１（通信ＩＦ部５０−２）に送信される。
【００８７】
続いて、通信処理部４０のパケット処理部４０２は、通信ＩＦ部５０−２から当該ＴＣＰ接続応答を受信し、フローテーブル記憶部４０３を参照し、対応するフローエントリの有無を確認する（ステップＳ１２４）。ここでは、ステップＳ１２１において記憶されたフローエントリが発見される（図８Ａの項番４）。
【００８８】
続いて、通信処理部４０のパケット処理部４０２は、ステップＳ１２４で発見したフローエントリに基づきＴＣＰ接続応答を処理する（ステップＳ１２５）。具体的には、パケットが図８Ａの項番４のフローエントリにマッチするため、当該フローエントリのアクションを実行する。すなわち、パケット処理部４０２は、ＴＣＰ接続応答の送信先ＩＰアドレスを１９２．１６８．２５４．２（ＴＣＰ接続要求の当初の送信元ＩＰアドレス）に変更した後、内部通信ＩＦ部６０に出力する。
【００８９】
この時点で、通信中継特徴抽出部２０とサーバ２との間のＨＴＴＰ通信用ＴＣＰ接続（中継先コネクション）の確立が完了し、通信中継特徴抽出部２０は、ステップＳ１１３において受信した通信利用部７０からのＨＴＴＰリクエストおよびヘッダを、中継先コネクションに書き込み送信する（ステップＳ１２６）。
【００９０】
続いて、通信処理部４０のパケット処理部４０２は、当該リクエストおよびヘッダを受信し、フローテーブル記憶部４０３を参照し、対応するフローエントリの有無を確認する（ステップＳ１２７）。ここでは、ステップＳ１２１において記憶されたフローエントリが発見される（図８Ａの項番３）。
【００９１】
続いて、通信処理部４０のパケット処理部４０２は、ステップＳ１２７で発見したフローエントリに基づきリクエストおよびヘッダを処理する（ステップＳ１２８）。ステップＳ１２２と同様に、図８Ａの項番３のフローエントリに基づき、リクエストおよびヘッダはアドレス変換を施された後、通信ＩＦ部５０−２から出力され、サーバ２へ送信される。
【００９２】
続いて、サーバ２は、受信したリクエストおよびヘッダに対するレスポンスおよびヘッダを、通信端末１（通信ＩＦ部５０−２）へ送信する（ステップＳ１２９）。
【００９３】
続いて、通信処理部４０のパケット処理部４０２は、通信ＩＦ部５０−２から当該レスポンスおよびヘッダを受信し、フローテーブル記憶部４０３を参照し、対応するフローエントリの有無を確認する（ステップＳ１３０）。ここでは、ステップＳ１２１において記憶されたフローエントリが発見される（図８Ａの項番４）。
【００９４】
続いて、通信処理部４０のパケット処理部４０２は、ステップＳ１３０で発見したフローエントリに基づきレスポンスおよびヘッダを処理する（ステップＳ１３１）。ステップＳ１２３と同様に、図８Ａの項番４のフローエントリに基づき、レスポンスおよびヘッダはアドレス変換を施された後、内部通信ＩＦ部６０から出力される。
【００９５】
続いて、通信中継特徴抽出部２０は、通信情報記憶部３０を参照し、受信したレスポンスおよびヘッダを中継元コネクションに書き込み送信する（ステップＳ１３２）。図９の通信情報記憶部３０の情報に基づき、受信した中継先コネクションに対応する中継元コネクションを介して、レスポンスおよびヘッダを送信する。
【００９６】
続いて、通信処理部４０のパケット処理部４０２は、当該レスポンスおよびヘッダを受信し、フローテーブル記憶部４０３を参照し、対応するフローエントリの有無を確認する（ステップＳ１３３）。ここでは、ステップＳ１０６において記憶されたフローエントリが発見される（図８Ａの項番２）。
【００９７】
続いて、通信処理部４０のパケット処理部４０２は、ステップＳ１３３で発見したフローエントリに基づき当該レスポンスおよびヘッダを処理する（ステップＳ１３４）。ステップＳ１１０と同様、図８Ａの項番２のフローエントリに基づき、当該レスポンスおよびヘッダはアドレス変換を施された後、内部通信ＩＦ部６０から出力され、通信利用部７０により受信される。
【００９８】
以降、同様に、通信中継特徴抽出部２０は、中継元コネクションから受信したデータを中継先コネクションに送信し、中継先コネクションから受信したデータを中継元コネクションに送信する。この時、中継元コネクションのパケットは、ステップＳ１０６において記憶されたフローエントリ（図８Ａの項番１および２）に基づきパケット処理部４０２により処理される。また、中継先コネクションのパケットは、ステップＳ１２１において記憶されたフローエントリ（図８Ａの項番３および４）に基づきパケット処理部４０２により処理される。
【００９９】
次に、図７を用いて、図６Ａ及び図６ＢのステップＳ１０４およびＳ１１９における通信制御部１０の制御処理部１０１の動作を説明する。
【０１００】
図７に示すように、まず、制御処理部１０１は、制御ポリシ記憶部１０２に記憶されている制御ポリシのうち最高優先度のものを選択する（ステップＳ１４１）。図５の例では、制御ポリシ１が選択される。
【０１０１】
続いて、制御処理部１０１は、選択した制御ポリシとパケット通知で通知されたパケットが属する通信（処理対象通信と記載）との照合に必要な情報がすべてあるかどうか確認する（ステップＳ１４２）。当該照合に必要な情報とは、制御ポリシのトラフィック条件に指定された項目の、処理対象通信に関する値である。例えば、制御ポリシ１１の照合に必要な情報は処理対象通信のプロトコルタイプ、送信先ＩＰアドレス、および送信先ポート番号であり、これらはパケット通知に含まれる。また、例えば、制御ポリシ１２の照合に必要な情報は処理対象通信のプロトコルタイプ、送信先ポート、およびＵＲＬであり、これらのうち前者２つはパケット通知（例えば、図６ＡのステップＳ１０３の通知）に含まれるが、ＵＲＬは含まれない。
【０１０２】
なお、制御処理部１０１は、制御ポリシとの照合に際し、パケット通知が中継先コネクションに関するものであった場合、少なくとも通信端末１側の情報（例えば送信元ＩＰアドレス、送信元ポート番号）として、中継元コネクションのものを使用する。その場合、制御処理部１０１は、当該中継先コネクションに対応する中継元コネクションの情報を通信情報記憶部３０を参照して取得し、制御ポリシとの照合に使用する。
【０１０３】
ステップＳ１４２において制御ポリシの照合に必要な情報がそろっている場合、制御処理部１０１は、選択した制御ポリシと処理対象通信との照合を行う（ステップＳ１４３）。当該照合は、選択した制御ポリシのトラフィック条件を、処理対象通信が満たすか否かを判定することで行われる。前述したとおり、パケット通知が中継先コネクションに関するものであった場合、制御処理部１０１は、中継元コネクションの情報、中継先コネクションの情報、通信中継特徴抽出部２０によって抽出された追加情報（ＵＲＬ等）、等を組み合わせて参照し、トラフィック条件の判定を行う。
【０１０４】
ステップＳ１４３において、選択した制御ポリシに処理対象通信が適合しない（条件を満たさない）と判定された場合、制御処理部１０１は、制御ポリシ記憶部１０２に記憶されている制御ポリシに、本処理において処理対象通信との照合を確認していないものがあるかどうか確認する（ステップＳ１４４）。この時、未確認の制御ポリシが存在しない場合、制御処理部１０１は、処理対象通信に適用すべき制御ポリシは存在しない、と判定し、その処理を終了する。
【０１０５】
また、ステップＳ１４４において、未確認の制御ポリシが存在する場合、制御処理部１０１は、未確認の制御ポリシの内、優先度が最も高いもの（次の優先度の制御ポリシ）を選択する（ステップＳ１４５）。その後、ステップＳ１４２以降の処理を繰り返す。
【０１０６】
また、ステップＳ１４２において制御ポリシの照合に必要な情報がそろっていない場合、制御処理部１０１は、処理対象通信を通信中継特徴抽出部２０が受信し処理できるよう、パケット転送およびＮＡＴを行うフローエントリを作成する（ステップＳ１４６）。制御処理部１０１は、通信利用部７０が送信した処理対象通信のパケットに関するフローエントリのアクションとして、"送信先ＩＰアドレスおよびポート番号を通信中継特徴抽出部２０の中継待ち受け用ＩＰアドレスおよび中継待ち受け用ポート番号に変更し、内部通信ＩＦ部６０から出力する"を設定する。また、制御処理部１０１は、当該パケットの逆方向のパケットに関するフローエントリのアクションとして、"送信元ＩＰアドレスおよびポート番号を通信利用部７０が送信先として設定していた値に戻し、内部通信ＩＦ部６０から出力する"を設定する。
【０１０７】
本例において、ステップＳ１４６において作成されるフローエントリの例を、図８Ａの項番１および２に示す。例えば、図６ＡのステップＳ１０４では、図５の制御ポリシ１２が選択されたとき、制御ポリシ照合に必要なＵＲＬがパケット通知に含まれないため、制御処理部１０１は、通信利用部７０が送信するパケットに対するフローエントリ（図８Ａの項番１）と、通信利用部７０が受信するパケットに対するフローエントリ（図８Ａの項番２）を作成する。
【０１０８】
ステップＳ１４６に続いて、制御処理部１０１は、制御ポリシ照合に必要な情報を通信情報記憶部３０に記憶させ（ステップＳ１４７）、処理を終了する。本例の場合、ＵＲＬが必要な情報であるため、制御処理部１０１は、処理対象通信を識別するための情報として端末側（通信利用部７０側）のＩＰアドレスおよびポート番号と、当該通信に関しＵＲＬの情報が必要な旨を通信情報記憶部３０に記憶させる。制御処理部１０１は、追加の情報として、サーバ側（サーバ２側）の変更前および変更後のＩＰアドレスおよびポート番号を通信情報記憶部３０に記憶させてもよい。
【０１０９】
本例において、ステップＳ１４７において通信情報記憶部３０に設定される情報の例を、図９（中継元コネクション情報および所要情報）に示す。所要情報は、制御ポリシ照合に必要な情報であり、この例ではＵＲＬとなる。
【０１１０】
また、ステップＳ１４３において、選択した制御ポリシに処理対象通信が適合する（条件を満たす）と判定された場合、制御処理部１０１は、選択した制御ポリシで指定された処理を実行するためのフローエントリを作成し（ステップＳ１４８）、処理を終了する。
【０１１１】
制御処理部１０１は、指定された処理が"指定されたＩＦを使用して通信"であった場合、例えば、通信端末１が送信するパケットについて、"送信元ＩＰアドレスを指定されたＩＦのＩＰアドレスに変更した後、指定されたＩＦから出力する"というアクションを持つフローエントリを作成し、通信端末１が受信するパケットについて、"送信先ＩＰアドレスを通信端末１が送信するパケットの当初の送信元ＩＰアドレスに変更した後、内部通信ＩＦ部６０から出力する"というアクションを持つフローエントリを作成する。
【０１１２】
制御処理部１０１は、通信に使用するＩＦが複数指定されていた場合、優先度の高いものから順に指定されたＩＦが利用可能かを調べ、最初に利用可能であったＩＦに関し、前述のようなフローエントリを作成してよい。制御処理部１０１は、ＩＦが利用可能か否かを、例えば、当該ＩＦが存在するか否か、リンクアップしているか否か、ＩＰアドレスが構成されているか否か、等によって判断してよい。
【０１１３】
制御処理部１０１は、指定された処理が"破棄する"であった場合、例えば、アクションが空のフローエントリを作成する。
【０１１４】
本例において、ステップＳ１４８において作成されるフローエントリの例を、図８Ａの項番３および４に示す。例えば、図６ＢのステップＳ１１９では、図５の制御ポリシ１２が選択されたとき、制御ポリシ照合に必要なＵＲＬが抽出されており、制御ポリシ１２に適合する。このため、制御処理部１０１は、制御ポリシ１２の処理である無線ＬＡＮを使用して通信を行うため、無線ＬＡＮを介してサーバ２へ送信するパケットに対するフローエントリ（図８Ａの項番３）と、無線ＬＡＮを介してサーバ２から受信するパケットに対するフローエントリ（図８Ａの項番３）を作成する。
【０１１５】
次に、図１０を用いて、図６ＢのステップＳ１１４における通信中継特徴抽出部２０の動作を説明する。なお、ここでは、通信中継特徴抽出部２０は図１１に示すＨＴＴＰリクエスト行およびヘッダ（ＨＴＴＰリクエストメッセージ）を通信利用部７０から受信したものとする。
【０１１６】
図１０に示すように、まず、通信中継特徴抽出部２０は、中継元コネクションの通信の特徴を抽出する（ステップＳ１６１）。通信中継特徴抽出部２０は、図９の通信情報記憶部３０の所要情報を参照し、ＵＲＬを抽出する。通信中継特徴抽出部２０は、例えば、通信の特徴としてＵＲＬを、受信したリクエスト行およびＨｏｓｔヘッダから抽出する。本例では、図１１のＨＴＴＰリクエスト行およびヘッダに基づき、抽出結果としてｈｔｔｐ：／／ｅｘａｍｐｌｅ．ｃｏｍ／ｖｉｄｅｏ／ｉｎｄｅｘ．ｈｔｍｌを得る。すなわち、図１１のＨｏｓｔヘッダ（ｅｘａｍｐｌｅ．ｃｏｍ）とリクエスト行のパス名（／ｖｉｄｅｏ／ｉｎｄｅｘ．ｈｔｍｌ）を組み合わせてＵＲＬを作成する。
【０１１７】
続いて、通信中継特徴抽出部２０は、中継先コネクションの確立先である中継先を決定し（ステップＳ１６２）、処理を終了する。通信中継特徴抽出部２０は、例えば、Ｈｏｓｔヘッダに記載されたサーバを中継先とする。図１１のＨｏｓｔヘッダ（ｅｘａｍｐｌｅ．ｃｏｍ）のアドレス（１０．０．０．１）を中継先とする。通信中継特徴抽出部２０は、ＤＮＳ（Ｄｏｍａｉｎ  Ｎａｍｅ  Ｓｙｓｔｅｍ）名がＨｏｓｔヘッダに記載されていた場合、ＤＮＳ解決を行って対応するＩＰアドレスを取得してもよい。また、通信中継特徴抽出部２０は、通信制御部１０が通信情報記憶部３０に記憶させた、中継元コネクションのアドレス変換適用前のサーバ側アドレスを中継先としてもよい。
【０１１８】
＜通信利用部７０がＤＮＳ通信を行った場合の動作＞
通信利用部７０が、ＤＮＳ通信を行った場合の動作について説明する。本通信は、図５に示す制御ポリシ１によって処理されることが期待される。なお、以下の説明は、次の条件が成り立っていることを前提とする。
−  フローテーブル記憶部４０３にはフローエントリが記憶されていない。
−  ＤＮＳサーバ（図示されない）は通信ネットワーク３−３に接続されており、そのＩＰアドレスは１０．０．５３．１である。
【０１１９】
図１２は、本実施形態における通信システムの動作の例を示すシーケンス図である。なお、図１２において、通信ネットワーク３−３の図示は省略する。
【０１２０】
図１２に示すように、まず、通信利用部７０は、１０．０．５３．１のＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）５３番ポートに対し、ＤＮＳクエリを送信する（ステップＳ１７１）。この時、当該ＤＮＳクエリの送信元ＩＰアドレスは１９２．１６８．２５４．１、送信元ポート番号は１００５３、送信先ＩＰアドレスは１０．０．５３．１、送信先ポート番号は５３であるとする。
【０１２１】
続いて、通信処理部４０のパケット処理部４０２は当該ＤＮＳクエリを受信し、フローテーブル記憶部４０３を参照し、対応するフローエントリの有無を確認する（ステップＳ１７２）。ステップＳ１７２の時点において、フローテーブル記憶部４０３は空であるため、対応するフローエントリは見つからない。
【０１２２】
続いて、通信処理部４０のパケット処理部４０２は、ＤＮＳクエリと一致するフローエントリが無いため、当該ＤＮＳクエリを制御チャネル処理部４０１に通知し、制御チャネル処理部４０１は対応するパケット通知を通信制御部１０に送信する（ステップＳ１７３）。
【０１２３】
続いて、通信制御部１０の制御処理部１０１はパケット通知を受信し、パケット通知により通知されたＤＮＳクエリに対する処理を決定する（ステップＳ１７４）。その動作は図７に示したフローチャートに基づき行われる。本例の場合、ＤＮＳクエリは図５の制御ポリシ１に適合し、図７のステップＳ１４８により図８Ｂの項番５および６に示すフローエントリが生成される。すなわち、制御処理部１０１は、制御ポリシ１の処理である無線ＬＡＮを使用して通信を行うため、無線ＬＡＮを介してＤＮＳサーバへ送信するパケットに対するフローエントリ（図８Ｂの項番５）と、無線ＬＡＮを介してＤＮＳサーバから受信するパケットに対するフローエントリ（図８Ｂの項番６）を作成する。
【０１２４】
続いて、通信制御部１０の制御処理部１０１は、ステップＳ１７４において生成されたフローエントリを通信処理部４０に設定すると同時に、対応するＤＮＳクエリに対し当該フローエントリに基づく処理を適用するよう指示する（ステップＳ１７５）。
【０１２５】
続いて、通信処理部４０の制御チャネル処理部４０１は、通知（設定）されたフローエントリをフローテーブル記憶部４０３に記憶させる（ステップＳ１７６）。
【０１２６】
続いて、通信処理部４０のパケット処理部４０２は、ステップＳ１７６で設定されたフローエントリに基づきＤＮＳクエリを処理する（ステップＳ１７７）。具体的には、パケットが図８Ｂの項番５のフローエントリにマッチするため、当該フローエントリのアクションを実行する。すなわち、パケット処理部４０２は、ＤＮＳクエリの送信元ＩＰアドレスを１９２．１６８．２．１（通信ＩＦ部５０−２のＩＰアドレス）に変更した後、通信ＩＦ部５０−２に出力する。当該ＤＮＳクエリは、通信ＩＦ部５０−２から、通信ネットワーク３−２および通信ネットワーク３−３を介し、ＤＮＳサーバに送信される。
【０１２７】
続いて、ＤＮＳサーバは、受信したＤＮＳクエリに対するＤＮＳレスポンスを送信する（ステップＳ１７８）。この時、当該ＤＮＳレスポンスの送信元ＩＰアドレスは１０．０．５３．１、送信元ポート番号は５３、送信先ＩＰアドレスは１９２．１６８．２．１、送信先ポート番号は１００５３となる。当該ＤＮＳレスポンスは、ＤＮＳサーバから、通信ネットワーク３−３および通信ネットワーク３−２を介し、通信端末１（通信ＩＦ部５０−２）に送信される。
【０１２８】
続いて、通信処理部４０のパケット処理部４０２は、通信ＩＦ部５０−２から当該ＤＮＳレスポンスを受信し、フローテーブル記憶部４０３を参照し、対応するフローエントリの有無を確認する（ステップＳ１７９）。ここでは、ステップＳ１７６において記憶されたフローエントリが発見される（図８Ｂの項番６）。
【０１２９】
続いて、通信処理部４０のパケット処理部４０２は、ステップＳ１７９で発見したフローエントリに基づきＤＮＳレスポンスを処理する（ステップＳ１８０）。具体的には、パケットが図８Ｂの項番６のフローエントリにマッチするため、当該フローエントリのアクションを実行する。すなわち、パケット処理部４０２は、ＤＮＳレスポンスの送信先ＩＰアドレスを１９２．１６８．２５４．１（ＤＮＳクエリの当初の送信元ＩＰアドレス）に変更した後、内部通信ＩＦ部６０に出力する。そうすると、通信利用部７０がＤＮＳレスポンスを受信する。
【０１３０】
このように、制御処理部１０１は、パケット通知の処理に際しパケット通知に含まれる情報のみで制御ポリシとの照合が可能な場合、通信中継特徴抽出部２０による中継を行うことなく、当該パケット通知を処理する。
【０１３１】
以上説明したように、第１の実施形態によれば、通信制御部１０は、通信利用部７０による通信（中継元通信）に適用する制御ポリシの決定を通信処理部４０からのパケット通知による情報のみからでは行えない場合、当該通信を通信中継特徴抽出部２０が中継できるよう通信処理部４０を制御する。通信中継特徴抽出部２０は、中継元通信から受信したデータを基にその通信の特徴を抽出し通信情報記憶部３０に記憶させるとともに、中継先通信を行い、中継元通信と中継先通信との間でデータの中継を行う。通信制御部１０は、通信情報記憶部３０を参照し、中継元通信の情報、抽出された通信の特徴、および中継先通信の情報を基に、当該中継先通信に適用する制御ポリシを決定し、決定された制御ポリシに基づき通信処理部４０を制御する。
【０１３２】
よって、本実施形態によれば、通信処理部４０からのパケット通知に含まれない情報を用いて、本通信システムはフロー粒度での通信制御を行うことができる。つまり、各パケットに共通して含まれる情報以外の情報を用いて、柔軟に通信（フロー）を指定し制御することができる。
【０１３３】
また、本実施形態に係る通信システムの説明では、通信中継特徴抽出部２０がＨＴＴＰを中継する例を示したが、本発明はこれに限定されるものではない。他の例として、ＨＴＴＰＳを中継してもよい。また、通信中継特徴抽出部２０は、受信したパケットが属するフローに応じて、中継先フローの数を変更してもよい。
【０１３４】
また、本実施形態に係る通信システムの説明では、通信の特徴としてＵＲＬを通信中継特徴抽出部２０が抽出し通信制御部１０が利用する例を示したが、本発明はこれに限定されるものではない。他の例として、通信の特徴として、ＵＲＩ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｉｄｅｎｔｉｆｉｅｒ）、リクエスト行に含まれるメソッド、リクエスト行に含まれるＨＴＴＰバージョン、Ａｕｔｈｏｒｉｚａｔｉｏｎヘッダで示される認証情報、Ｃｏｎｔｅｎｔ−Ｌｅｎｇｔｈで示されるコンテンツ長、Ｃｏｎｔｅｎｔ−Ｔｙｐｅヘッダで示されるコンテンツタイプ、Ｈｏｓｔヘッダ、Ｒｅｆｅｒｅｒヘッダで示される要求元ＵＲＬ、Ｕｓｅｒ−Ａｇｅｎｔヘッダで示されるユーザエージェント、のいずれかもしくはそれらの組み合わせを用いてもよい。
【０１３５】
また、本実施形態に係る通信システムの説明では、ステップＳ１４７において、制御処理部１０１が制御ポリシ照合に必要な情報を通信情報記憶部３０に記憶させる例を示したが、本発明はこれに限定されるものではない。他の例として、制御処理部１０１が制御ポリシ照合に必要な情報を通信情報記憶部３０に記憶させず、通信中継特徴抽出部２０は中継元コネクションを受け付けると、当該コネクションにおいて自身が抽出できるすべての特徴の抽出を行い、通信情報記憶部３０に記憶させてもよい。
【０１３６】
また、本実施形態に係る通信システムの説明では、制御処理部１０１が中継元コネクションのサーバ２側ＩＰアドレスおよびポート番号の変更に関する情報を通信情報記憶部３０に記憶させ、通信中継特徴抽出部２０は通信情報記憶部３０を参照することでそれらの情報を取得する例を示したが、本発明はこれに限定されるものではない。他の例として、通信処理部４０にアドレス変換処理時にアドレス変更情報をパケットに付加する機能を具備させ、制御処理部１０１は当該機能を利用するよう通信処理部４０を制御し、通信中継特徴抽出部２０はパケットに付加されたアドレス変更情報を参照するようにしてもよい。
【０１３７】
また、本実施形態に係る通信システムの説明では、通信中継特徴抽出部２０は一つの中継元コネクションに対し一つの中継先コネクションを確立する例を示したが、本発明はこれに限定されるものではない。他の例として、通信中継特徴抽出部２０は一つの中継元コネクションに対し複数の中継先コネクションを確立してもよい。例えば、ＨＴＴＰではキープアライブ拡張機能および持続的接続機能が提供されており、一ＴＣＰコネクション上で複数のリクエストを通信利用部７０は送信することが可能である。通信中継特徴抽出部２０は中継元コネクションで受信した複数のリクエストに対し、同じ中継先コネクションを利用してもよいし、リクエスト毎に中継先コネクションを確立してもよい。通信中継特徴抽出部２０が中継先コネクションを新たに確立すべきか、確立済みのものを使用すべきかの判断基準を、制御処理部１０１は制御ポリシ記憶部１０２に記憶された制御ポリシを参照して提供してもよい。例えば、ある中継元コネクションにおいて、ｈｔｔｐ：／／ｅｘａｍｐｌｅ．ｃｏｍ／ｖｉｄｅｏ／ｖｉｄｅｏ＿ａ．ｈｔｍｌおよびｈｔｔｐ：／／ｅｘａｍｐｌｅ．ｃｏｍ／ｖｉｄｅｏ／ｖｉｄｅｏ＿ｂ．ｈｔｍｌに対する２つのリクエストが送信された場合、いずれの通信も図５の制御ポリシ１２に適合するものであるため、それら２つのリクエストは同じ中継先コネクションを利用して通信されてよい。一方、ある中継元コネクションにおいて、ｈｔｔｐ：／／ｅｘａｍｐｌｅ．ｃｏｍ／ｖｉｄｅｏ／ｖｉｄｅｏ＿ａ．ｈｔｍｌおよびｈｔｔｐ：／／ｅｘａｍｐｌｅ．ｃｏｍ／ｍａｉｌ／ｍａｉｌ＿ａ．ｈｔｍｌに対する２つのリクエストが送信された場合、前者は図５の制御ポリシ１２に適合し後者は制御ポリシ１３に適合するものであり、かつそれらの処理内容は異なるものであるため、それら２つのリクエストは異なる中継先コネクションを利用する必要がある。例えば、制御処理部１０１は、中継元コネクションにおける最初のリクエストの通信の特徴が通信中継特徴抽出部２０によって抽出された時点で、当該中継元コネクションに対する中継先コネクションを共有可能な通信の特徴（例えば、ｈｔｔｐ：／／ｅｘａｍｐｌｅ．ｃｏｍ／ｖｉｄｅｏ／＊）を、通信情報記憶部３０に記憶させてもよい。通信中継特徴抽出部２０は、当該情報を参照することで、後続のリクエストについての中継先コネクションの共有可否を判断することができる。
【０１３８】
また、本実施形態に係る通信システムの説明では、通信中継特徴抽出部２０は中継元コネクションの中継先を中継元コネクションから受信した情報を基に決定する例を示したが、本発明はこれに限定されるものではない。他の例として、例えば、中継先の情報は制御ポリシ記憶部１０２に記憶される制御ポリシに含まれてもよい。通信中継特徴抽出部２０は制御ポリシ記憶部１０２を直接参照して当該情報を取得してもよいし、制御処理部１０１が当該情報を通信情報記憶部３０に記憶させ、通信中継特徴抽出部２０は通信情報記憶部３０に記憶された当該情報を参照してもよい。
【０１３９】
また、本実施形態に係る通信システムの説明では、通信中継特徴抽出部２０と通信利用部７０とが内部通信ＩＦ部６０を共用する例を示したが、本発明はこれに限定されるものではない。他の例として、内部通信ＩＦ部６０は複数存在し、通信中継特徴抽出部２０と通信利用部７０はそれぞれ別の内部通信ＩＦ部６０を利用してもよい。
【０１４０】
また、本実施形態に係る通信システムの説明では、通信制御部１０は中継元コネクションに関しＮＡＴを適用し、通信中継特徴抽出部２０は中継待ち受け用ＩＰアドレスおよび中継待ち受け用ポート番号を用いて当該コネクションの通信を送受信する例を示したが、本発明はこれに限定されるものではない。他の例として、通信制御部１０は中継元コネクションに関しＮＡＴを適用せずに、当該コネクションに属するパケットを通信中継特徴抽出部２０が利用する内部通信ＩＦ部６０へ送受信してもよい。この時、通信中継特徴抽出部２０は、当該内部通信ＩＦ部６０で受信されるパケットすべてについて、データ中継および特徴抽出の処理を行ってよい。もしくは、通信中継特徴抽出部２０は、当該内部通信ＩＦ部６０で受信されるパケットの内、データ中継および特徴抽出が必要と考えられるパケットについてのみ、当該処理を行ってもよい。通信中継特徴抽出部２０は、例えば、以下の条件のいずれかもしくは組み合わせが成立する場合に、当該処理が必要であると判断してよい。
・パケットの送信先ＩＰアドレスが、通信端末１内で利用されているもので無い場合
・パケットの送信元ＩＰアドレスが、通信利用部７０が利用する内部通信ＩＦ部６０に構成されているＩＰアドレスである場合
・パケットが、通信情報記憶部３０に記憶された中継元コネクションの情報と合致する場合
【０１４１】
また、本実施形態に係る通信システムの説明では、通信中継特徴抽出部２０が使用する中継待ち受け用ＩＰアドレスは通信利用部７０が利用するＩＰアドレスとは別の例を示したが、本発明はこれに限定されるものではない。他の例として、通信中継特徴抽出部２０は通信利用部７０が利用するＩＰアドレスと同じＩＰアドレスを中継待ち受け用ＩＰアドレスとして使用してよい。
【０１４２】
また、本実施形態に係る通信システムの説明では、通信中継特徴抽出部２０はＴＣＰによる通信を中継する例を示したが、本発明はこれに限定されるものではない。他の例として、通信中継特徴抽出部２０はＵＤＰによる通信や、ＩＣＭＰ（Ｉｎｔｅｒｎｅｔ  Ｃｏｎｔｒｏｌ  Ｍｅｓｓａｇｅ  Ｐｒｏｔｏｃｏｌ）による通信や、ＧＲＥ（Ｇｅｎｅｒｉｃ  Ｒｏｕｔｉｎｇ  Ｅｎｃａｐｓｕｌａｔｉｏｎ）による通信や、トンネリングによる通信を中継してもよい。また、その際、通信中継特徴抽出部２０は、通信の特徴として、ＧＲＥキーや、トンネリングにおけるインナーヘッダの情報を使用してもよい。
【０１４３】
また、本実施形態に係る通信システムの説明では、通信制御部１０は、中継元コネクションの制御ポリシと照合に通信の特徴が必要となる場合に通信中継特徴抽出部２０に当該コネクションの処理をさせる例を示したが、本発明はこれに限定されるものではない。他の例として、通信制御部１０は、例えば、通信の記録を収集する等の目的で、通信中継特徴抽出部２０に中継元コネクションの処理をさせてもよい。これは、通信制御部１０が中継元コネクションを通信中継特徴抽出部２０に処理させるか否かの判定条件を、通信制御部１０に与えることで実現できる。当該条件は、制御ポリシ記憶部１０２に制御ポリシの形で記憶されてもよい。また、当該条件は、通信端末１以外の装置から与えられてもよい。
【０１４４】
また、本実施形態に係る通信システムの説明では、通信端末１は一つの通信利用部７０を具備する例を示したが、本発明はこれに限定されるものでなく、通信端末１は複数の通信利用部７０を具備してもよい。また、通信制御部１０は、複数存在する通信利用部７０毎に異なる制御を行ってよい。これは、例えば、制御ポリシのトラフィック条件に通信利用部７０の種別、名称、識別子、等を加えることで実現できる。通信制御部１０は、例えば、通信利用部７０の種別、名称、識別子、を通信端末１のＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ、図示されない）から取得し利用することができる。
【０１４５】
また、本実施形態に係る通信システムの説明では、通信端末１は二つの通信ＩＦ部５０を具備する例を示したが、本発明はこれに限定されるものでなく、通信端末１は一つもしくは３以上の通信ＩＦ部５０を具備してもよい。
【０１４６】
また、本実施形態に係る通信システムの説明では、通信利用部７０が通信端末１に含まれる例を示したが、本発明はこれに限定されるものでない。他の例として、通信利用部７０は、通信端末１と通信ＩＦ部５０−１もしくは５０−２を介して通信可能な別の通信端末（図示されない）に含まれてもよい。また、当該別の通信端末は、本発明による通信端末でなくてもよく、例えばＴＣＰ／ＩＰによる通信が可能なスマートフォン、携帯電話、パーソナルコンピュータ、家電、等であってよい。通信端末１と当該別の通信端末との接続形態の一例としては、通信端末１がＷＬＡＮ  ＩＦである通信ＩＦ部５０−２上でテザリング機能を提供し、当該別の通信端末が通信端末１の通信ＩＦ部５０−２に対しＷＬＡＮ接続する例が挙げられる。
【０１４７】
また、本実施形態に係る通信システムの説明では、中継元コネクションに関し通信利用部７０側のＩＰアドレスを変換しない例を示したが、本発明はこれに限定されるものではない。例えば、中継元コネクションに関し、通信利用部７０側のＩＰアドレス（通信中継特徴抽出部２０で認識される対向側ＩＰアドレス）にＮＡＴを適用してもよい。ＮＡＴ先のＩＰアドレスには、架空のＩＰアドレス（ダミーＩＰアドレスと呼称）を使用してよい。これは、ステップＳ１４６における制御処理部１０１の処理を以下のように変更することで実現できる。「制御処理部１０１は、通信利用部７０が送信した処理対象通信のパケットに関するフローエントリのアクションとして、"送信先ＩＰアドレスおよびポート番号を通信中継特徴抽出部２０の中継待ち受け用ＩＰアドレスおよび中継待ち受け用ポート番号に変更し、送信元ＩＰアドレスをダミーＩＰアドレスに変更し、内部通信ＩＦ部６０から出力する"を設定する。また、制御処理部１０１は、当該パケットの逆方向のパケットに関するフローエントリ（送信先ＩＰアドレスはダミーＩＰアドレス）のアクションとして、"送信元ＩＰアドレスおよびポート番号を通信利用部７０が送信先として設定していた値に戻し、送信先ＩＰアドレスを通信利用部７０が送信元として設定していた値に戻し、内部通信ＩＦ部６０から出力する"を設定する。」このようなＮＡＴを行わない場合、通信端末１が具備するＩＰスタック（図示されない）の実装によっては、通信中継特徴抽出部２０が送信する中継元コネクションのパケットが、内部通信ＩＦ部６０から出力されない可能性がある。そのような場合であっても、前述のダミーＩＰアドレスへのＮＡＴを実行することで、通信中継特徴抽出部２０が送信する中継元コネクションのパケットが内部通信ＩＦ部６０から出力されるようにすることができる。
【０１４８】
（実施形態２）
次に、図面を参照して第２の実施形態について説明する。第１の実施形態に係る通信システムでは、通信中継特徴抽出部２０が中継元通信と中継先通信との間のデータ中継を行う例を示したが、本発明はこれに限定されるものではない。
【０１４９】
本実施形態に係る通信システムでは、ＴＣＰスプライシングに代表される、ヘッダ変換処理による複数通信間（複数コネクション間）のデータ中継を行うデータ中継部８０を設け、中継元通信と中継先通信との間のデータ中継の一部もしくは全部をデータ中継部８０により行う。
【０１５０】
データ中継部８０は、例えば、通信端末１のＯＳ（図示されない）の一部としてソフトウェアとして実装されてもよいし、ハードウェアとして実装されてもよい。データ中継部８０によりデータ中継を行うことで、通信中継特徴抽出部２０が中継を行うよりも転送性能や転送遅延を改善することができる。
【０１５１】
以下、本実施形態に係る通信システムの構成および動作について、第１の実施形態に係る通信システムの構成および動作と異なる部分を説明する。
【０１５２】
図１３は、本実施形態による通信端末１の構成の一例を示す構成図である。本実施形態による通信端末１は、図２を用いて説明した通信端末１の構成要素に加え、データ中継部８０を備える。
【０１５３】
データ中継部８０は、ヘッダ変換処理による複数通信間（複数コネクション間）のデータ中継を行う。データ中継部８０は、ＴＣＰ通信に関し、ヘッダ変換処理としてＴＣＰスプライシングを行う。データ中継部８０は、要求元（例えば通信中継特徴抽出部２０）から２つのＴＣＰ接続のデータ中継を要求されると、当該ＴＣＰ接続間（中継元と中継先の間）でのデータ中継を開始する。データ中継部８０は、データ中継に係る情報として、例えば以下の情報の一部もしくはすべてを受け取る。
・送信元ＩＰアドレス、送信先ＩＰアドレス
・送信元ポート番号、送信先ポート番号
・中継開始位置（シーケンス番号、Ａｃｋ番号）
・中継元コネクションで受信済のデータ
・中継先コネクションに送信済のデータ
【０１５４】
データ中継部８０は、中継対象のＴＣＰ接続からパケットを受信すると、例えば、以下のヘッダ変換処理を行った後、当該パケットを送信する（変換後の当該パケットは中継先ＴＣＰ接続のものとなる）。
・送信元ＩＰアドレスおよび送信先ＩＰアドレスを中継先のものに変換
・必要な場合、ＩＰオプションを更新
・ＩＰヘッダチェックサムを更新
・送信元ポート番号および送信先ポート番号を中継先のものに変換
・シーケンス番号およびＡｃｋ番号を中継先のものに変換
・必要な場合、ＴＣＰオプションを更新
・ＴＣＰヘッダチェックサムを更新
【０１５５】
本実施形態における通信中継特徴抽出部２０は、中継元コネクションからの通信の特徴の抽出が完了した後、中継元コネクションと中継先コネクションとの間のデータ中継をデータ中継部８０に要求する。
【０１５６】
次に、本実施形態による通信システムの動作について、第１の実施形態と特に異なる部分について説明する。例えば、図６Ａ〜図６Ｃの動作では、通信中継特徴抽出部２０等からの要求でデータ中継部８０がデータ中継を行う点が異なる。
【０１５７】
通信中継特徴抽出部２０は、図６ＣのステップＳ１２５で中継先コネクションの接続が完了した後、中継元コネクションと中継先コネクションとの間のデータ中継の開始をデータ中継部８０に要求する（ステップＳ１２６'（不図示））。その後、当該コネクション間のデータ中継は、通信中継特徴抽出部２０ではなくデータ中継部８０により行われる。
【０１５８】
以上説明したように、本発明の第２の実施形態によれば、通信中継特徴抽出部２０はデータ中継をデータ中継部８０に委譲し、データ中継部８０はヘッダ変換処理によるデータ中継を行う。
【０１５９】
よって、本実施形態によれば、第１の実施形態による効果に加え、データ中継を高速に行うことができる。
【０１６０】
また、本実施形態に係る通信システムの説明では、通信中継特徴抽出部２０は、図６ＣのステップＳ１２５完了後にデータ中継部８０に対しデータ中継の開始を要求する例を示したが、本発明はこれに限定されるものではない。他の例として、通信中継特徴抽出部２０は、中継先コネクション確立後、任意のタイミングでデータ中継部８０に対しデータ中継の開始を要求してもよい。
【０１６１】
また、本実施形態に係る通信システムの説明では、データ中継部８０が通信処理部４０とは別の構成要素である例を示したが、本発明はこれに限定されるものではない。他の例として、データ中継部８０が提供する機能を通信処理部４０が具備してもよい。これは、例えば、通信処理部４０のパケット処理部４０２にヘッダ変換処理によるデータ中継機能を具備させ、フローエントリのアクションとして当該処理を指定可能とすることで実現できる。通信中継特徴抽出部２０は、通信処理部４０に対するデータ中継開始の要求を、通信制御部１０を介して行ってもよいし、直接行ってもよい。
【０１６２】
（実施形態３）
次に、図面を参照して第３の実施形態について説明する。第１の実施形態に係る通信システムでは、通信中継特徴抽出部２０による中継先通信をも通信処理部４０で処理する例を示したが、本発明はこれに限定されるものではない。
【０１６３】
本実施形態に係る通信システムでは、通信中継特徴抽出部２０は、通信制御部１０の指示の下、中継先通信に通信処理部４０を用いず、通信ＩＦ部５０−１〜５０−２を直接利用する。通信中継特徴抽出部２０が中継先通信に関し直接通信ＩＦ部５０−１〜５０−２を利用することで、通信処理部４０の負荷を軽減することができる。
【０１６４】
以下、本実施形態に係る通信システムの構成および動作について、第１の実施形態に係る通信システムの構成および動作と異なる部分を説明する。
【０１６５】
通信利用部７０が、ユーザ等の指示に基づき、ｈｔｔｐ：／／ｅｘａｍｐｌｅ．ｃｏｍ／ｖｉｄｅｏ／ｉｎｄｅｘ．ｈｔｍｌにアクセスした場合の、本実施形態の動作について、図１４Ａ〜図１４Ｃを参照して説明する。なお、本動作における前提（構成）や、図６Ａ〜図６Ｃと同じ符号を付するステップについては、第１の実施形態と同様であるため、その説明を省略する。
【０１６６】
図１４Ａ〜図１４Ｃは、本実施形態における通信システムの動作の例を示すシーケンス図である。図１４Ａ〜図１４Ｃにおいて、ステップＳ１０１〜ステップＳ１１５は、第１の実施形態と同様である。
【０１６７】
図１４Ａ〜図１４Ｃに示すように、ステップＳ１１５に続いて、通信中継特徴抽出部２０は、中継先コネクションの処理方法を通信制御部１０に要求し問い合わせる（ステップＳ３０１）。
【０１６８】
続いて、通信制御部１０の制御処理部１０１は、通信中継特徴抽出部２０の要求を受け、要求された通信に対する処理を決定する（ステップＳ３０２）。その動作は、以下の違いを除き、図７を用いて説明した第１の実施形態における制御処理部１０１と同様である。
【０１６９】
図７のステップＳ１４８において、第３の実施形態における制御処理部１０１は、選択した制御ポリシで指定された処理を実行するためのフローエントリを作成する代わりに、通信中継特徴抽出部２０への応答を作成する。なお、この応答の内容は、フローエントリと同様の内容でもよい。すなわち、制御処理部１０１は、通信中継特徴抽出部２０への応答として、フローエントリを通知してもよい。
【０１７０】
制御処理部１０１は、指定された処理が"指定されたＩＦを使用して通信"であった場合、例えば、"指定されたＩＦを使用する"という応答を作成する。
【０１７１】
制御処理部１０１は、通信に使用するＩＦが複数指定されていた場合、優先度の高いものから順に指定されたＩＦが利用可能かを調べ、最初に利用可能であったＩＦに関し、前述のような応答を作成してよい。制御処理部１０１は、ＩＦが利用可能か否かを、例えば、当該ＩＦが存在するか否か、リンクアップしているか否か、ＩＰアドレスが構成されているか否か、等によって判断してよい。
【０１７２】
制御処理部１０１は、指定された処理が"破棄する"であった場合、例えば、"破棄する"という応答を作成する。
【０１７３】
本例では、当該中継先コネクションは制御ポリシ１２に適合すると判定され、"通信ＩＦ部５０−２を使用する"という応答が作成される。
【０１７４】
図１４Ｂにおいて、通信制御部１０の制御処理部１０１は、ステップＳ３０２で作成した応答を通信中継特徴抽出部２０に通知する（ステップＳ３０３）。
【０１７５】
続いて、通信中継特徴抽出部２０は、ステップＳ３０３で通知された処理方法により、ステップＳ１１４で決定された中継先に対ＴＣＰ接続要求を送信する（ステップＳ３０４）。本例では、通信中継特徴抽出部２０は、通信処理部４０を介さずに、直接、通信ＩＦ部５０−２を用いてＴＣＰ接続要求を送信する。なお、通信中継特徴抽出部２０は、ステップＳ３０３において"破棄する"という処理方法を通知された場合、中継処理を終了してよい。
【０１７６】
続いて、サーバ２は、受信したＴＣＰ接続要求に対するＴＣＰ接続応答を送信する（ステップＳ３０５）。当該ＴＣＰ接続応答は、通信ＩＦ部５０−２から、直接、通信中継特徴抽出部２０により受信される。
【０１７７】
この時点で、通信中継特徴抽出部２０とサーバ２との間のＨＴＴＰ通信用ＴＣＰ接続（中継先コネクション）の確立が完了し、通信中継特徴抽出部２０は、ステップＳ１１３において受信した通信利用部７０からのＨＴＴＰリクエストおよびヘッダを、中継先コネクションに書き込み、直接、通信ＩＦ部５０−２からサーバ２へ送信する（ステップＳ３０６）。
【０１７８】
続いて、サーバ２は、受信したリクエストおよびヘッダに対するレスポンスおよびヘッダを送信する（ステップＳ３０７）。当該レスポンスおよびヘッダは、通信ＩＦ部５０−２から、直接、通信中継特徴抽出部２０により受信される。
【０１７９】
ステップＳ１３２〜ステップＳ１３４は、第１の実施形態と同様である。
【０１８０】
以上説明したように、本発明の第３の実施形態によれば、通信中継特徴抽出部２０は、通信制御部１０の指示の下、中継先通信に通信処理部４０を用いず、通信ＩＦ部５０−１〜５０−２を直接利用する。
【０１８１】
よって、本発明の第３の実施形態によれば、通信処理部４０の負荷を軽減することができる。
【０１８２】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【０１８３】
上述の実施形態における各構成は、ハードウェア又はソフトウェア、もしくはその両方によって構成され、１つのハードウェア又はソフトウェアから構成してもよいし、複数のハードウェア又はソフトウェアから構成してもよい。通信端末やサーバの各機能（各処理）を、ＣＰＵやメモリ等を有するコンピュータにより実現してもよい。例えば、記憶装置に実施形態における通信方法（通信処理）を行うための通信プログラムを格納し、各機能を、記憶装置に格納された通信プログラムをＣＰＵで実行することにより実現してもよい。
【０１８４】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体（non-transitory computer readable medium）を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（tangible storage medium）を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ（Read Only Memory）、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Programmable ROM）、ＥＰＲＯＭ（Erasable PROM）、フラッシュＲＯＭ、ＲＡＭ（random access memory））を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（transitory computer readable medium）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【０１８５】
上記の実施形態の一部または全部は、以下の付記のようにも記載され得るが、以下には限られない。
【０１８６】
（付記１）
パケットが属するフローと前記フローに属するパケットに対する処理とを規定する処理規則を保持し、前記処理規則に基づいて受信したパケットを処理する通信処理部と、
前記通信処理部が保持する前記処理規則を制御する通信制御部と、
通信を中継するとともに当該通信の特徴を抽出する通信中継特徴抽出部と、を備え、
前記通信処理部は対応する処理規則を保持していないパケットを受信した際に当該パケットの情報を前記通信制御部に通知し、
前記通信制御部は前記パケットが属するフローを処理する処理規則の作成に前記通知から得られない当該通信の特徴を必要とする場合に前記フローを前記通信中継特徴抽出部に転送するよう前記通信処理部を制御し、
前記通信制御部は前記通信中継特徴抽出部が抽出した前記通信の特徴を利用して前記通信中継特徴抽出部による前記フローの中継後のフローである中継フローを処理する処理規則を作成する、
ことを特徴とした通信システム。
【０１８７】
（付記２）
通信の特徴と当該特徴に適合する通信に対する処理を規定する制御ポリシを保持する制御ポリシ記憶部をさらに備え、
前記制御ポリシは前記処理規則よりも抽象的な指定を許容し、
前記通信制御部は前記フローおよび前記中継フローに適用する処理を前記制御ポリシを参照して決定する、
ことを特徴とした付記１に記載の通信システム。
【０１８８】
（付記３）
前記通信中継特徴抽出部は、前記フローにおける通信の内容に応じて前記中継フローの数を変更する、
ことを特徴とした付記１から付記２のうちのいずれか１項に記載の通信システム。
【０１８９】
（付記４）
前記通信中継特徴抽出部は、ＨＴＴＰおよびＨＴＴＰＳの少なくとも一方の中継を行い、
前記通信中継特徴抽出部および前記通信制御部は、通信の特徴としてＵＲＬ、ＵＲＩ、メソッド、ＨＴＴＰバージョン、認証情報、コンテンツ長、コンテンツタイプ、ホストヘッダ、要求元ＵＲＬ、ユーザエージェント、のいずれかもしくはそれらの組み合わせを利用する、
ことを特徴とした付記１から付記３のうちのいずれか１項に記載の通信システム。
【０１９０】
（付記５）
ヘッダ変換処理により複数の通信間でデータ中継を行うデータ中継部をさらに備え、
前記通信中継特徴抽出部は、通信の中継の一部あるいはすべてを前記データ中継部に委譲する、
ことを特徴とした付記１から付記４のうちのいずれか１項に記載の通信システム。
【０１９１】
（付記６）
前記通信処理部は前記データ中継部を包含する、
ことを特徴とした付記１から付記５のうちのいずれか１項に記載の通信システム。
【符号の説明】
【０１９２】
１      通信端末
２      サーバ
３−１〜３−３  通信ネットワーク
１０    通信制御部
２０    通信中継特徴抽出部
３０    通信情報記憶部
４０    通信処理部
５０−１〜５０−２  通信ＩＦ部
６０    内部通信ＩＦ部
７０    通信利用部
８０    データ中継部
１０１  制御処理部
１０２  制御ポリシ記憶部
４０１  制御チャネル処理部
４０２  パケット処理部
４０３  フローテーブル記憶部
【図１】
2014236423.tif 000003
【図２】
2014236423.tif 000004
【図３】
2014236423.tif 000005
【図４】
2014236423.tif 000006
【図５】
2014236423.tif 000007
【図６Ａ】
2014236423.tif 000008
【図６Ｂ】
2014236423.tif 000009
【図６Ｃ】
2014236423.tif 000010
【図７】
2014236423.tif 000011
【図８Ａ】
2014236423.tif 000012
【図８Ｂ】
2014236423.tif 000013
【図９】
2014236423.tif 000014
【図１０】
2014236423.tif 000015
【図１１】
2014236423.tif 000016
【図１２】
2014236423.tif 000017
【図１３】
2014236423.tif 000018
【図１４Ａ】
2014236423.tif 000019
【図１４Ｂ】
2014236423.tif 000020
【図１４Ｃ】
2014236423.tif 000021
【図１５】
2014236423.tif 000022