(57)【要約】      （修正有）【課題】ウェブクライアントと、ウェブサーバとの間で発生する暗号化されたデータフローを分類する方法、装置及びプログラムを提供する。【解決手段】解析装置は、トランスポート接続が開始された時刻を表す情報と、トランスポート接続のエンドポイントのアドレシングに関する情報と、トランスポート接続によって移送されたデータの量に関する情報とを決定し、各ウェブサーバが関連付けられたドメイン名を決定し、トランスポート接続がそれぞれ開始された時刻と、ウェブクライアントのアドレシングとに関する基準に従って、トランスポート接続をクラスタにグルーピングし、各クラスタについて、そのクラスタのトランスポート接続に関連付けられたドメイン名およびそのクラスタのトランスポート接続によって移送されたデータの量と、事前定義ウェブ閲覧セッションプロファイルとを比較し、比較の結果に基づき、暗号化されたデータフローを分類する。【選択図】図３
2015076879.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つのウェブクライアントと少なくとも１つのウェブサーバとの間で発生する暗号化されたデータフローを分類する方法であって、
前記暗号化されたデータフローは、前記少なくとも１つのウェブクライアントと前記少なくとも１つのウェブサーバとの間にセットアップされたトランスポート接続を介して移送され、
前記方法は解析装置によって実行される、
方法において、
前記方法は、
‐前記トランスポート接続がそれぞれ開始された時刻を表す情報と、前記トランスポート接続のエンドポイントのアドレシングに関する情報と、前記トランスポート接続によって移送されたデータの量および／またはセグメントの量に関する情報とを決定する、第１の決定ステップと、
‐いずれかのトランスポート接続のエンドポイントである各ウェブサーバが関連付けられたドメイン名を決定する、第２の決定ステップと、
‐前記トランスポート接続がそれぞれ開始された時刻と、前記トランスポート接続のエンドポイントである前記ウェブクライアントのアドレシングとに関する基準に従って、トランスポート接続をクラスタにグルーピングする、グルーピングステップと、
‐各クラスタについて、そのクラスタの前記トランスポート接続に関連付けられたドメイン名およびそのクラスタの前記トランスポート接続によって移送されたデータの量および／またはセグメントの量と、事前定義ウェブ閲覧セッションプロファイルとを比較する、比較ステップと、
‐前記比較ステップの結果に基づき、前記暗号化されたデータフローを分類する、分類ステップと
を備えることを特徴とする、方法。
【請求項２】
前記暗号化されたデータフローはＨＴＴＰＳに従い、前記トランスポート接続はＴＣＰに従うことを特徴とする、請求項１に記載の方法。
【請求項３】
前記トランスポート接続が開始された時刻は、前記解析装置が前記トランスポート接続それぞれのＳＹＮ  ＴＣＰセグメントを受信した時刻に対応することを特徴とする、請求項２に記載の方法。
【請求項４】
前記アドレシングは、アドレスおよびポートから構成され、
前記グルーピングステップは、
‐各クラスタは、同一のウェブクライアントアドレスを持つトランスポート接続のみを含み、
‐各クラスタは、各前記トランスポート接続のウェブクライアントポートに従って前記トランスポート接続を順序付けする時に、２つの連続するウェブクライアントポートの間の差が第１の事前定義閾値を超えない範囲内のウェブクライアントポートを持つトランスポート接続のみを含み、
‐各クラスタは、前記トランスポート接続が開始された時刻に従って前記トランスポート接続を順序付けする時に、２つの連続する前記トランスポート接続が開始された時刻の間の差が第２の事前定義閾値を超えない範囲内に開始されたトランスポート接続のみを含む
ように実行されることを特徴とする、請求項１〜３のいずれか一項に記載の方法。
【請求項５】
クラスタにグルーピングされたいかなるトランスポート接続も、第３の事前定義閾値を超える持続時間を有することを特徴とする、請求項１〜４のいずれか一項に記載の方法。
【請求項６】
クラスタにグルーピングされたいかなるトランスポート接続も、第４の事前定義閾値未満の持続時間を有し、前記第４の事前定義閾値は、前記第３の事前定義閾値より厳密に大きいことを特徴とする、請求項５に記載の方法。
【請求項７】
前記解析装置は、前記解析装置が前記トランスポート接続それぞれのＦＩＮ  ＡＣＫ  ＴＣＰセグメントを受信した時刻に基づいて前記トランスポート接続の持続時間を決定することを特徴とする、請求項２を引用する場合の請求項５に記載の方法、または、請求項２を引用する場合の請求項６に記載の方法。
【請求項８】
前記解析装置は、前記解析装置が前記トランスポート接続の有効なペイロードを伴う最新のＴＣＰセグメントを受信した時刻に基づいて前記トランスポート接続の持続時間を決定することを特徴とする、請求項１〜７のいずれか一項に記載の方法。
【請求項９】
前記解析装置は、クラスタのトランスポート接続に関連付けられたドメイン名が、前記事前定義ウェブ閲覧セッションプロファイルにリストされたドメイン名に一致しない時には、前記クラスタは事前定義ウェブ閲覧セッションプロファイルにマッチしないと考えることを特徴とする、請求項１〜８のいずれか一項に記載の方法。
【請求項１０】
前記解析装置は、前記クラスタに関連する情報と、前記事前定義ウェブ閲覧セッションプロファイルに関連する情報との差を表す情報が、第５の事前定義閾値未満である時には、前記クラスタは事前定義ウェブ閲覧セッションプロファイルにマッチすると考えることを特徴とする、請求項１〜９のいずれか一項に記載の方法。
【請求項１１】
事前定義ウェブ閲覧セッションプロファイルと比較されるクラスタの任意のトランスポート接続に関連付けられた各ドメインについて、
前記方法は、
‐前記クラスタのトランスポート接続の量と、前記事前定義ウェブ閲覧セッションプロファイルによって期待されるトランスポート接続の量との間の、第１の距離を決定する、第３の決定ステップと、
‐前記クラスタのトランスポート接続を介して送信されたセグメントの量と、前記事前定義ウェブ閲覧セッションプロファイルによって期待されるセグメントの量との間の、第２の距離を決定する、第４の決定ステップと、
‐前記クラスタのトランスポート接続を介して送信されたデータの量と、前記事前定義ウェブ閲覧セッションプロファイルによって期待されるデータの量との間の、第３の距離を決定する、第５の決定ステップと、
‐前記第１、第２および第３の距離の合計を決定するとともに、前記合計を第６の事前定義閾値と比較する、第６の決定ステップと
を備えることを特徴とし、かつ、
前記方法はさらに、
‐前記第１、第２および第３の距離の前記合計が前記第６の事前定義閾値未満である前記クラスタのトランスポート接続のいずれかに関連付けられたドメインの量を決定する、第７の決定ステップと、
‐前記ドメインの量が第７の事前定義閾値より大きい時に、前記クラスタは前記事前定義ウェブ閲覧セッションプロファイルにマッチすると考えることと
を備えることを特徴とする、請求項１０に記載の方法。
【請求項１２】
暗号化されたデータフローを分類する装置であって、
前記暗号化されたデータフローは、少なくとも１つのウェブクライアントと少なくとも１つのウェブサーバとの間で発生することを目的とし、かつ、前記少なくとも１つのウェブクライアントと前記少なくとも１つのウェブサーバとの間にセットアップされたトランスポート接続を介して移送されることを目的とする
装置において、
前記装置は、
‐前記トランスポート接続がそれぞれ開始された時刻を表す情報と、前記トランスポート接続のエンドポイントのアドレシングに関する情報と、前記トランスポート接続によって移送されたデータの量および／またはセグメントの量に関する情報とを決定する、第１の決定手段と、
‐いずれかのトランスポート接続のエンドポイントである各ウェブサーバが関連付けられたドメイン名を決定する、第２の決定手段と、
‐前記トランスポート接続がそれぞれ開始された時刻と、前記トランスポート接続のエンドポイントである前記ウェブクライアントのアドレシングとに関する基準に従って、トランスポート接続をクラスタにグルーピングする、グルーピング手段と、
‐各クラスタについて、そのクラスタの前記トランスポート接続に関連付けられたドメイン名およびそのクラスタの前記トランスポート接続によって移送されたデータの量および／またはセグメントの量と、事前定義ウェブ閲覧セッションプロファイルとを比較する、比較手段と、
‐前記比較手段を実施した結果に基づき、前記暗号化されたデータフローを分類する、分類手段と
を備えることを特徴とする、装置。
【請求項１３】
プログラムコード命令を含むコンピュータプログラムであって、
前記プログラムコード命令は、前記プログラムコード命令がプログラム可能な装置によって実行される時に、請求項１〜１１のいずれか一項に記載の方法を実行するために前記プログラム可能な装置にロードすることができる、
コンピュータプログラム。
【請求項１４】
プログラムコード命令を含むコンピュータプログラムを記憶する情報記憶手段であって、
前記プログラムコード命令は、前記プログラムコード命令がプログラム可能な装置によって実行される時に、請求項１〜１１のいずれか一項に記載の方法を実行するために前記プログラム可能な装置にロードすることができる、
情報記憶手段。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概して、ウェブ閲覧セッションの範囲内で、少なくとも１つのウェブクライアントと少なくとも１つのウェブサーバとの間で発生する暗号化されたデータフローを分類することに関する。
【背景技術】
【０００２】
ＨＴＴＰＳ（HyperText Transfer Protocol Secure。規範文書ＲＦＣ２８１８によって規定される）は、ウェブ閲覧セッションの範囲内で、暗号化されたＨＴＴＰ（HyperText Transfer Protocol。ＨＴＴＰ／１．１について規範文書ＲＦＣ２６１６によって規定される）データを搬送するために広く実装されている。ＨＴＴＰＳは、訪問したウェブサイトおよび関連するウェブサーバの認証を、証明書を用いて提供する。このような認証メカニズムは、「マン・イン・ザ・ミドル（Man-in-the-middle）」タイプの攻撃に対する防衛を行う。すなわち、ウェブクライアントは、ウェブサーバとウェブクライアントとの間のデータ交換を何らかの第三者が復号している場合には検出することができる。さらに、ＨＴＴＰＳは、ウェブクライアントとウェブサーバとの間の通信に対する双方向暗号化を提供し、これは盗聴および改竄に対する防衛を提供する。
【０００３】
ＨＴＴＰＳは、主に、ＳＳＬ（Secure Sockets Layer。規範文書ＲＦＣ６１０１において規定される）またはＴＬＳ（Transport Layer Security。規範文書ＲＦＣ２２４６、ＲＦＣ４３４６およびＲＦＣ５２４６において規定される）の最上部でＨＴＴＰの層をなすことにあり、これによって、ＳＳＬ／ＴＬＳによって提供されるセキュリティ能力を標準のＨＴＴＰ通信に付加する。これは、ＨＴＴＰＳの範囲内でＨＴＴＰデータ全体が暗号化されるということを意味する。したがって、要求ＵＲＬ（Uniform Resource Locator。どの特定のウェブページが要求されたかを示す）、クエリパラメータ、ヘッダ、およびクッキー（しばしばユーザに関する識別情報を含む）に暗号化が適用される。しかしながら、ウェブサーバとウェブクライアントとの間のデータをルーティングするために用いられるＩＰ（Internet Protocol。規範文書ＲＦＣ７９１において規定される）アドレスおよびＴＣＰ（Transmission Control Protocol。規範文書ＲＦＣ７９３において規定される）ポート番号は、平文で移送される。
【０００４】
データペイロードは暗号化されているので、有効なデータペイロード内容のアプリオリな知識はないが、暗号化されたデータフローが移送するデータの種類に従って、その暗号化されたデータフローを分類する方法は、多数のものが既知である。データフローを分類することにより、プロファイリングを実行することができ、適応したＱｏＳ（Quality of Service）メカニズムを適用することができ、また、データフローを分類することは、ネットワーク通信において周知の技術的目的である。ＴＣＰペイロードはＨＴＴＰＳの範囲内で暗号化されるので、第三者はＩＰヘッダおよびＴＣＰヘッダに含まれる情報のみを利用可能である。したがって、上述の方法は、暗号化されたデータフローを分類するために、ＴＣＰ／ＩＰプロトコルヘッダの関連するフィールド（セグメントサイズフィールド等）を活用しようとし、および／または、統計（転送されたバイト数等）および／または、タイミング計測（到着と到着の間の時間等）を構築しようとする。しかしながら、上述の方法のほとんどは、オフラインで実行されるよう設計されており、上述の方法は、大量のメモリおよび処理資源を必要とする。さらに、暗号化されたデータフローを分類するそのような方法は、ＩＰアドレスベースの手法に依存しているため、これらの方法の性能は改善の必要がある。実際に、ネットワークアドレス変換（ＮＡＴ）が実装されている時には、複数の通信装置が同一の公用ＩＰアドレスを共有している場合があるので、ＩＰアドレスベースの手法は、暗号化されたデータフローの不適切な分類につながる可能性がある。さらに、様々な種類のオンラインサービスに関連付けられた多数のウェブサーバが、単一のハードウェアプラットフォーム上にホスティングされ、したがって同一のＩＰアドレスを共有している場合がある。このため、分類を実行するためにＩＰアドレスに依存することは、多くの場合に、実際には別々のオンラインサービスに関する統計情報を収集して暗号化されたデータフローを誤分類することにつながる。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来技術の上述の欠点を克服することが望ましい。とくに、ウェブ閲覧セッションの範囲内で、少なくとも１つのウェブクライアントと少なくとも１つのウェブサーバとの間で発生する暗号化されたデータフローを分類できるようにする解決策を提供することが望ましい。
【０００６】
さらに、従来技術の解決策に比べて改善された性能を提供する解決策を提供することが望ましい。
【０００７】
さらに、実施容易かつ費用効率的な解決策を提供することが望ましい。
【課題を解決するための手段】
【０００８】
この目的のために、本発明は、少なくとも１つのウェブクライアントと少なくとも１つのウェブサーバとの間で発生する暗号化されたデータフローを分類する方法であって、前記暗号化されたデータフローは、前記少なくとも１つのウェブクライアントと前記少なくとも１つのウェブサーバとの間にセットアップされたトランスポート接続を介して移送される方法に関する。本方法は解析装置によって実行され、前記方法は、
‐前記トランスポート接続がそれぞれ開始された時刻を表す情報と、前記トランスポート接続のエンドポイントのアドレシングに関する情報と、前記トランスポート接続によって移送されたデータの量および／またはセグメントの量に関する情報とを決定する、第１の決定ステップと、
‐いずれかのトランスポート接続のエンドポイントである各ウェブサーバが関連付けられたドメイン名を決定する、第２の決定ステップと、
‐前記トランスポート接続がそれぞれ開始された時刻と、前記トランスポート接続のエンドポイントである前記ウェブクライアントのアドレシングとに関する基準に従って、トランスポート接続をクラスタにグルーピングする、グルーピングステップと、
‐各クラスタについて、そのクラスタの前記トランスポート接続に関連付けられたドメイン名およびそのクラスタの前記トランスポート接続によって移送されたデータの量および／またはセグメントの量と、事前定義ウェブ閲覧セッションプロファイルとを比較する、比較ステップと、
‐前記比較ステップの結果に基づき、前記暗号化されたデータフローを分類する、分類ステップと
を備える。このように、前記トランスポート接続のクラスタを作成することに依存することにより、本方法は、従来技術の解決策に比べて改善された分類性能を達成する。トランスポート接続のクラスタを作成することにより、単一のハードウェアプラットフォームが単一のドメイン名を用いて複数のウェブサーバをホスティングする状況を管理することができる。
【０００９】
特定の特徴によれば、前記暗号化されたデータフローはＨＴＴＰＳに従い、前記トランスポート接続はＴＣＰに従う。このように、本方法は、ウェブ閲覧の範囲内で広く実装されているＨＴＴＰＳおよびＴＣＰプロトコルに適用可能である。
【００１０】
特定の特徴によれば、前記トランスポート接続が開始された時刻は、前記解析装置が前記トランスポート接続それぞれのＳＹＮ  ＴＣＰセグメントを受信した時刻に対応する。
【００１１】
特定の特徴によれば、前記アドレシングは、アドレスおよびポートから構成され、
前記グルーピングステップは、
‐各クラスタは、同一のウェブクライアントアドレスを持つトランスポート接続のみを含み、
‐各クラスタは、各前記トランスポート接続のウェブクライアントポートに従って前記トランスポート接続を順序付けする時に、２つの連続するウェブクライアントポートの間の差が第１の事前定義閾値を超えない範囲内のウェブクライアントポートを持つトランスポート接続のみを含み、
‐各クラスタは、前記トランスポート接続が開始された時刻に従って前記トランスポート接続を順序付けする時に、２つの連続する前記トランスポート接続が開始された時刻の間の差が第２の事前定義閾値を超えない範囲内に開始されたトランスポート接続のみを含む
ように実行される。このように、クラスタの作成は単純であり、実質的に信頼性がある。
【００１２】
特定の特徴によれば、クラスタにグルーピングされたいかなるトランスポート接続も、第３の事前定義閾値を超える持続時間を有する。このように、解析装置は、ウェブ閲覧セッションに対応しないトランスポート接続を、そのトランスポート接続はウェブ閲覧セッションに対応するのに十分なほど長くないという理由で、容易に撤回することができる。
【００１３】
特定の特徴によれば、クラスタにグルーピングされたいかなるトランスポート接続も、第４の事前定義閾値未満の持続時間を有し、前記第４の事前定義閾値は、前記第３の事前定義閾値より厳密に大きい。このように、解析装置は、ウェブ閲覧セッションに対応しないトランスポート接続を、そのトランスポート接続はウェブ閲覧セッションに対応するには長すぎるという理由で、容易に撤回することができる。
【００１４】
特定の特徴によれば、前記解析装置は、前記解析装置が前記トランスポート接続それぞれのＦＩＮ  ＡＣＫ  ＴＣＰセグメントを受信した時刻に基づいて前記トランスポート接続の持続時間を決定する。
【００１５】
特定の特徴によれば、前記解析装置は、前記解析装置が前記トランスポート接続の有効なペイロードを伴う最新のＴＣＰセグメントを受信した時刻に基づいて前記トランスポート接続の持続時間を決定する。
【００１６】
特定の特徴によれば、前記解析装置は、クラスタのトランスポート接続に関連付けられたドメイン名が、前記事前定義ウェブ閲覧セッションプロファイルにリストされたドメイン名に一致しない時には、前記クラスタは事前定義ウェブ閲覧セッションプロファイルにマッチしないと考える。
【００１７】
特定の特徴によれば、前記解析装置は、前記クラスタに関連する情報と、前記事前定義ウェブ閲覧セッションプロファイルに関連する情報との差を表す情報が、第５の事前定義閾値未満である時には、前記クラスタは事前定義ウェブ閲覧セッションプロファイルにマッチすると考える。
【００１８】
特定の特徴によれば、事前定義ウェブ閲覧セッションプロファイルと比較されるクラスタの任意のトランスポート接続に関連付けられた各ドメインについて、
前記方法は、
‐前記クラスタのトランスポート接続の量と、前記事前定義ウェブ閲覧セッションプロファイルによって期待されるトランスポート接続の量との間の、第１の距離を決定する、第３の決定ステップと、
‐前記クラスタのトランスポート接続を介して送信されたセグメントの量と、前記事前定義ウェブ閲覧セッションプロファイルによって期待されるセグメントの量との間の、第２の距離を決定する、第４の決定ステップと、
‐前記クラスタのトランスポート接続を介して送信されたデータの量と、前記事前定義ウェブ閲覧セッションプロファイルによって期待されるデータの量との間の、第３の距離を決定する、第５の決定ステップと、
‐前記第１、第２および第３の距離の合計を決定するとともに、前記合計を第６の事前定義閾値と比較する、第６の決定ステップと
を備える。前記方法はさらに、
‐前記第１、第２および第３の距離の前記合計が前記第６の事前定義閾値未満である前記クラスタのトランスポート接続のいずれかに関連付けられたドメインの量を決定する、第７の決定ステップと、
‐前記ドメインの量が第７の事前定義閾値より大きい時に、前記クラスタは前記事前定義ウェブ閲覧セッションプロファイルにマッチすると考えることと
を備える。
【００１９】
また、本発明は、暗号化されたデータフローを分類する装置であって、前記暗号化されたデータフローは、少なくとも１つのウェブクライアントと少なくとも１つのウェブサーバとの間で発生することを目的とし、かつ、前記少なくとも１つのウェブクライアントと前記少なくとも１つのウェブサーバとの間にセットアップされたトランスポート接続を介して移送されることを目的とする、装置にも関する。前記装置は、
‐前記トランスポート接続がそれぞれ開始された時刻を表す情報と、前記トランスポート接続のエンドポイントのアドレシングに関する情報と、前記トランスポート接続によって移送されたデータの量および／またはセグメントの量に関する情報とを決定する、第１の決定手段と、
‐前記トランスポート接続の任意の１つのエンドポイントである各ウェブサーバが関連付けられたドメイン名を決定する、第２の決定手段と、
‐前記トランスポート接続がそれぞれ開始された時刻と、前記トランスポート接続のエンドポイントである前記ウェブクライアントのアドレシングとに関する基準に従って、トランスポート接続をクラスタにグルーピングする、グルーピング手段と、
‐各クラスタについて、そのクラスタの前記トランスポート接続に関連付けられたドメイン名およびそのクラスタの前記トランスポート接続によって移送されたデータの量および／またはセグメントの量と、事前定義ウェブ閲覧セッションプロファイルとを比較する、比較手段と、
‐前記比較手段を実施した結果に基づき、前記暗号化されたデータフローを分類する、分類手段と
を備える。
【００２０】
また、本発明は、通信ネットワークからダウンロード可能であり、および／または、コンピュータ可読な媒体に記憶可能でありプロセッサによって実行可能な、コンピュータプログラムにも関する。このコンピュータプログラムは、そのプログラムがプロセッサによって実行される時に、上述の方法を、その実施形態の任意の１つにおいて実施するための命令を含む。また、本発明は、そのようなコンピュータプログラムを記憶する情報記憶手段にも関する。
【００２１】
装置およびコンピュータプログラムに関連する特徴および利点は、対応する上述の方法に関してすでに説明したものと同一であるので、これらの特徴および利点はここでは繰り返さない。
【００２２】
本発明の特徴は、添付図面を参照して行われる以下の実施形態例の説明を読むことからより明確に現れるであろう。
【図面の簡単な説明】
【００２３】
【図１】本発明を実施可能な通信システムを概略的に表す図である。
【図２】通信システムの解析装置のアーキテクチャを概略的に表す図である。
【図３】ウェブ閲覧セッションの範囲内で少なくとも１つのウェブクライアントと少なくとも１つのウェブサーバとの間で発生する、暗号化されたデータフローを分類するために解析装置によって実行されるアルゴリズムを概略的に表す図である。
【発明を実施するための形態】
【００２４】
図１は、本発明を実施可能な通信システムを概略的に表す。通信システムは、少なくとも１つのウェブサーバと少なくとも１つのウェブクライアントとの間で暗号化されたデータフローが移送される経路上に配置された解析装置１３０を備える。好ましくは、この暗号化されたデータフローは、ＴＣＰトランスポートプロトコルに依存するＨＴＴＰＳデータ交換の形態である。しかしながら、本明細書に記載される分類メカニズムは、ウェブ閲覧セッションの範囲内の他の種類の暗号化されたデータフロー（コネクション指向のトランスポートプロトコルに依存するもの）に適用されてもよい。以下では、例示的に、かつ非限定的に、暗号化されたデータフローはＴＣＰトランスポートプロトコルに依存するＨＴＴＰＳデータ交換の形態であると考えよう。
【００２５】
図１に示す特定の実施形態では、解析装置１３０は通信装置１００に含まれる。通信装置１００は、第１の通信ネットワーク１０１および第２の通信ネットワーク１０２を相互接続するよう構成されている。通信装置１００は、さらに、通信装置１００を介して送信されるＴＣＰセグメントを、解析装置１３０に転送するよう構成されている。通信装置１００は典型的にはホームゲートウェイ装置であり、第２の通信ネットワーク１０２はローカルエリアネットワーク（ＬＡＮ）であり、第１の通信ネットワーク１０１はインターネットである。通信装置１００は、より多くの通信ネットワークを相互接続してもよい。通信装置１００は、ＩＰルータ、Ｗｉ−Ｆｉ（登録商標）アクセスポイントまたはこれを実装するルータであってもよい。
【００２６】
図１に示すように、第１の通信ネットワーク１０１は、１つ以上のサーバ装置を備え、第２の通信ネットワーク１０２は１つ以上のクライアント装置を備える。図１は、例示的に、第１の通信ネットワーク１０１内の３つのサーバ装置１１１、１１２、１１３と、第２の通信ネットワーク１０２内の３つのクライアント装置１２１、１２２、１２３とを示す。
【００２７】
暗号化されたデータフローを分類するために、各ＴＣＰ接続が開始された時刻を表す情報と、それらのトランスポート接続のエンドポイントのアドレシングに関する情報（ＩＰアドレスおよびＴＣＰポート）と、それらのＴＣＰ接続によって移送されたデータの量および／またはセグメントの量に関する情報とを収集することが提案される。さらに、それらのうちいずれかのＴＣＰ接続のエンドポイントである各ウェブサーバが関連付けられたドメイン名を決定することが提案される。さらに、それらの各トランスポート接続がそれぞれ開始された時刻と、ウェブクライアントのアドレシング（ＩＰアドレスおよびＴＣＰポート）とに関連する基準に従って、ＴＣＰ接続をクラスタにグルーピングすることが提案される。さらに、各クラスタについて、そのクラスタのＴＣＰ接続に関連付けられたドメイン名と、事前に定義されたウェブ閲覧セッションプロファイル（以下、「事前定義ウェブ閲覧セッションプロファイル」と表記する）を持つそれらのＴＣＰ接続により移送されたデータの量および／またはセグメントの量とを比較することが提案され、また、暗号化されたデータフローをこれに従って分類することが提案される。
【００２８】
図２は、解析装置１３０のハードウェアアーキテクチャを概略的に示す。図示のアーキテクチャによれば、解析装置１３０は、通信バス２１０によって相互接続される以下の構成要素を備える。
‐プロセッサ、マイクロプロセッサ、マイクロコントローラまたはＣＰＵ（中央処理装置）２００。
‐ＲＡＭ（ランダムアクセスメモリ）２０１。
‐ＲＯＭ（読み出し専用メモリ）２０２。
‐ＨＤＤ（ハードディスクドライブ）２０３。または、記憶手段に記憶された情報を読み取るよう構成された任意の他の装置。
‐通信インタフェースの組２０４。これによって、解析装置１３０を少なくとも１つの通信ネットワーク（たとえば第１の通信ネットワーク１０１および第２の通信ネットワーク１０２）に接続することが可能となる。
【００２９】
ＣＰＵ２００は、ＲＯＭ２０２から、ＳＤ（Secure Digital）カード等の外部メモリからまたはＨＤＤ２０３からＲＡＭ２０１にロードされた命令を、実行することができる。解析装置１３０の電源が投入されると、ＣＰＵ２００はＲＡＭ２０１から命令を読み出し、それらの命令を実行することができる。これらの命令は、ＣＰＵ２００に、後述のアルゴリズムのステップの一部または全部を実行させる１つのコンピュータプログラムを形成する。
【００３０】
後述のアルゴリズムの任意のステップおよびすべてのステップは、プログラム可能な計算機（ＰＣ（パーソナルコンピュータ）、ＤＳＰ（デジタル信号プロセッサ）、またはマイクロコントローラ、等）による命令の組またはプログラムの実行によるソフトウェアとして実装されてもよい。または、そうでなければ、機械または専用の構成要素（ＦＰＧＡ（フィールドプログラマブルゲートアレイ）またはＡＳＩＣ（アプリケーション専用集積回路））によるハードウェアとして実装されてもよい。
【００３１】
図３は、ウェブ閲覧セッションの範囲内で少なくとも１つのウェブクライアントと少なくとも１つのウェブサーバとの間で発生する暗号化されたデータフローを分類するために、解析装置１３０によって実行されるアルゴリズムを概略的に表す。
【００３２】
ステップＳ３００において、解析装置１３０は第１の通信ネットワーク１０１と第２の通信ネットワーク１０２との間を（すなわち図１に示す通信システム内の通信装置１００を介して）通過するデータフローを受信する。
【００３３】
続くステップＳ３０１において、解析装置１３０は受信したデータフローのうちからＨＴＴＰＳデータフローをフィルタリングする（フィルタリングされたＨＴＴＰＳデータフローをさらに解析するためである）。言い換えると、解析装置１３０は、ＨＴＴＰＳデータフローを搬送するＴＣＰ接続を検出する。
【００３４】
ＴＬＳデータを搬送するＴＣＰ接続は、そのＴＣＰ接続の開始者（initiator）によって発信された最初のデータセグメント内のＴＣＰペイロードの先頭数バイトに適用される単純なパターンマッチングメカニズムを用いることにより検出可能である。ＴＬＳクライアントＨｅｌｌｏメッセージ（ハンドシェイク手順の間に平文で送信される）は、特定のフォーマットを有するので容易に検出可能である。ＴＬＳクライアントＨｅｌｌｏメッセージの検出は、逆の通信方向において後続するメッセージの内容を解析することにより確認してもよい。実際に、ＴＬＳサーバは、ＴＬＳクライアントＨｅｌｌｏメッセージに応じてＴＬＳサーバＨｅｌｌｏメッセージを送信すると期待される。ＴＬＳクライアントＨｅｌｌｏメッセージおよびＴＬＳサーバＨｅｌｌｏメッセージの検出には、暗号化された通信をセットアップするためにウェブクライアントとウェブサーバとの間で交換される最初の連続する２つのデータセグメント内のＴＣＰペイロードの、先頭の連続する１１バイトを解析することしか要しない。
【００３５】
しかしながら、ＴＬＳはＨＴＴＰＳ以外のコンテキストにおいて実施されてもよく、結果として得られるＴＣＰ接続は通信装置１００を介してセットアップされてもよい。たとえば、一部のＶＰＮ（Virtual Private Network）およびファイル転送技術は、ＴＬＳに依存する。解析装置１３０によって検出された複数のＴＬＳセッションのうちでＨＴＴＰデータを搬送するＴＬＳセッションを識別するために、ＴＣＰ接続の持続時間に関する情報が用いられる。実際に、ＨＴＴＰは、ウェブサーバのパフォーマンスを最適化するために、パーシステントなＴＣＰ接続を認可する。これは、初期ＨＴＴＰデータ交換が終了すると、後にさらなるＨＴＴＰデータを搬送できるようにするために、当該ＴＣＰ接続は初期データ転送を実行するために実質的に必要な期間よりも長い期間、オープンのままに維持されるということを意味する。各ＴＣＰ接続は、典型的にはそれぞれのタイマに関連付けられ、タイマは各ＴＣＰ接続を介して何らかのデータが交換されるたびにリセットされる。タイマが満了すると、関連付けられたＴＣＰ接続は、ウェブサーバがウェブクライアントにＦＩＮ  ＴＣＰセグメントを送信することによって終了する。たとえば、アパッチＨＴＴＰサーバのリリース２．０は、１５秒に等しいデフォルトのタイマを用い、アパッチＨＴＴＰサーバのリリース２．２は、５秒に等しいデフォルトのタイマを用いる。
【００３６】
これによって、解析装置１３０は、解析装置１３０が検出したＴＣＰ接続の持続時間を監視することにより、ＨＴＴＰトラフィックを捕捉することができるようになる。この場合、ＴＬＳセッションデータを搬送しかつ事前定義閾値より長い持続時間を有するＴＣＰ接続は、ＨＴＴＰＳデータフローを搬送するＴＣＰ接続であると解析装置１３０によって考えられてもよい。
【００３７】
続くステップＳ３０２において、解析装置１３０は、ステップＳ３０１で検出されたＨＴＴＰＳデータフローを搬送するＴＣＰ接続に関する統計を蓄積する。解析装置１３０は、蓄積された統計をデータベースに記憶することが好ましい。このように、解析装置１３０は、いわゆる「ＴＣＰコンテキスト」（生成され、ステップＳ３０１において検出されたＨＴＴＰＳデータフローを搬送するＴＣＰ接続のそれぞれに関連付けられたもの）内に、ＴＣＰ接続に関連する情報を維持する。
【００３８】
各ＴＣＰコンテキストは、そのＴＣＰコンテキストが解析装置１３０によって生成される時にデフォルト値にセットされた専用のタイマが満了するまで、第１のデータベースに維持される。この専用のタイマは、解析装置１３０がヌルでないペイロードを伴うＴＣＰセグメントを受信するたびに、その専用のタイマのデフォルト値にリセットされる。このデフォルト値は、同一のウェブセッションの範囲内でウェブクライアントがＨＴＴＰリクエストを送ることを許容できるよう十分に長く選択される。このデフォルト値は、実地試験を介して定義されてもよい。
【００３９】
好適な実施形態では、ＴＣＰコンテキストは以下の情報を含む。
‐複数のＴＣＰコンテキストのうちでそのＴＣＰコンテキストを識別できるようにする、ＴＣＰコンテキストの識別子。
‐考慮中のＴＣＰ接続の第１のエンドポイントのＩＰアドレスを表す情報。
‐考慮中のＴＣＰ接続の第１のエンドポイントのＴＣＰポートを表す情報。
‐考慮中のＴＣＰ接続の第２のエンドポイントのＩＰアドレスを表す情報。
‐考慮中のＴＣＰ接続の第２のエンドポイントのＴＣＰポートを表す情報。
‐考慮中のＴＣＰ接続に関与するウェブサーバのドメイン名を表す情報。
‐考慮中のＴＣＰ接続が開始された時刻を表す情報。
‐考慮中のＴＣＰ接続内で、最新のＴＣＰセグメントが送信された時刻を表す情報。
‐考慮中のＴＣＰ接続が終了した時刻を表す情報。
‐考慮中のＴＣＰ接続内で送信されたＴＣＰセグメントの量を表す情報。
‐考慮中のＴＣＰ接続内で送信されたデータの量（たとえばバイト単位）を表す情報。
【００４０】
第１のエンドポイントのＩＰアドレス、第１のエンドポイントのＴＣＰポート、第２のエンドポイントのＩＰアドレス、および第２のエンドポイントのＴＣＰポートを表す情報は、関連するＴＣＰコンテキスト内で受信されたＴＣＰセグメントのフィールドを読み取ることによって取得される。ＨＴＴＰＳデータを搬送するものとして検出されるＴＣＰセグメントを解析装置１３０が受信すると、解析装置１３０は、ＩＰソースアドレス、ＴＣＰソースポート、ＩＰ宛先アドレスおよびＴＣＰ宛先ポートの各フィールドに含まれる情報を収集する。ＩＰソースアドレスおよびＴＣＰソースポートは、それぞれ、一方のＴＣＰ接続エンドポイントのＩＰアドレスおよびＴＣＰポートを表す情報に対応する。ＩＰ宛先アドレスおよびＴＣＰ宛先ポートは、それぞれ、他方のＴＣＰ接続エンドポイントのＩＰアドレスおよびＴＣＰポートを表す情報に対応する。
【００４１】
上述の収集された情報がすでに第１のデータベースに存在する時には、解析装置１３０は、受信したＴＣＰセグメントに従ってＴＣＰコンテキストを更新する。
【００４２】
上述の収集された情報がまだ第１のデータベースに存在しない時には、解析装置１３０は、そのＴＣＰセグメントが属するＴＣＰ接続に対するＴＣＰコンテキストを作成する。好ましくは、解析装置１３０は、ＳＹＮ  ＴＣＰセグメントまたはＳＹＮ−ＡＣＫ  ＴＣＰセグメントを受信するとＴＣＰコンテキストを作成する。したがって、解析装置１３０が、第１のデータベース内にＴＣＰコンテキストを持たないＴＣＰ接続について、ＳＹＮ  ＴＣＰセグメントでもなくＳＹＮ−ＡＣＫ  ＴＣＰセグメントでもないＴＣＰセグメントを受信した時には、解析装置１３０はそのＴＣＰセグメントを単に転送する。
【００４３】
ウェブサーバのドメイン名を表す情報は、たとえば、規範文書ＲＦＣ３９１２において規定されるＷＨＯＩＳプロトコルを用いることにより、解析装置１３０によって取得することができる。ＷＨＯＩＳプロトコルのコンテキストにおいて、解析装置１３０は、考慮中のＴＣＰ接続のエンドポイントの一方のＩＰアドレスを、ＷＨＯＩＳサーチ能力を持つサーバに提供し、このサーバがこれに応答して、その提供されたＩＰアドレスに関連付けて登録された情報の組（ドメイン名情報を含む）を提供する。この、ＩＰアドレスが提供されるエンドポイントは、ウェブサーバをホスティングしていると解析装置１３０が考えるエンドポイントである。いずれのエンドポイントがウェブサーバをホスティングしているかを決定する方法の一つは、考慮中のＴＣＰ接続について受信したＳＹＮ  ＴＣＰセグメントのＩＰ宛先アドレスまたは考慮中のＴＣＰ接続について受信したＳＹＮ−ＡＣＫ  ＴＣＰセグメントのＩＰソースアドレスを引用することである。実際に、ウェブサーバアクセスのコンテキストにおけるＴＣＰ接続は、典型的にはウェブクライアントによって開始される。
【００４４】
考慮中のＴＣＰ接続内で、解析装置１３０がＴＣＰ  ＳＹＮセグメントを検出した時刻は、考慮中のＴＣＰ接続が開始された時刻を表す情報として用いることができる。
【００４５】
第１のデータベースにＴＣＰコンテキストがすでに存在するＴＣＰ接続について、解析装置１３０がＴＣＰセグメントを受信した時には、解析装置１３０はそのＴＣＰセグメントが解析装置１３０によって受信された時刻を決定し、これに従って、考慮中のＴＣＰ接続内で最新のＴＣＰセグメントが送信された時刻を表す情報を更新する。
【００４６】
さらに、第１のデータベースにＴＣＰコンテキストがすでに存在するＴＣＰ接続について、解析装置１３０がＴＣＰセグメントを受信した時には、解析装置１３０は、そのＴＣＰコンテキストに関連付けられた第１のカウンタを１単位だけインクリメントし、これに従って、考慮中のＴＣＰ接続内で送信されたＴＣＰセグメントの量を表す情報を更新する。考慮中のＴＣＰ接続について解析装置１３０によってＴＣＰ  ＳＹＮセグメントが受信された時、したがってＴＣＰコンテキストが作成された時には、第１のカウンタは「１」にセットされる。
【００４７】
さらに、第１のデータベースにＴＣＰコンテキストがすでに存在するＴＣＰ接続について、解析装置１３０がＴＣＰセグメントを受信した時には、解析装置１３０は、そのＴＣＰコンテキストに関連付けられた第２のカウンタをインクリメントし、これに従って、考慮中のＴＣＰ接続内で送信されたデータの量を表す情報を更新する。第２のカウンタは、受信されたＴＣＰセグメントのペイロードサイズに対応する値だけインクリメントされる。考慮中のＴＣＰ接続について解析装置１３０によってＴＣＰ  ＳＹＮセグメントが受信され、したがってＴＣＰコンテキストが作成された時には、第２のカウンタはリセットされる。
【００４８】
さらに、第１のデータベースにＴＣＰコンテキストがすでに存在するＴＣＰ接続について、解析装置１３０がＦＩＮ  ＡＣＫ  ＴＣＰセグメントを受信した時には、解析装置１３０は、ＴＣＰ  ＦＩＮ  ＡＣＫセグメントが解析装置１３０によって受信された時刻を決定し、これに従って、考慮中のＴＣＰ接続が終了した時刻を表す情報を更新する。
【００４９】
さらに、第１のデータベースにＴＣＰコンテキストがすでに存在するＴＣＰ接続について、解析装置１３０が有効なペイロードを伴うＴＣＰセグメントを受信した時には、解析装置１３０は、そのＴＣＰセグメントが解析装置１３０によって受信された時刻を決定し、これに従って、考慮中のＴＣＰ接続について最新のＴＣＰセグメントが受信された時刻を表す情報を更新する。
【００５０】
続くステップＳ３０３において、解析装置１３０は、第１のデータベースにＴＣＰコンテキストが記憶されているＴＣＰ接続を、クラスタにグルーピングする。解析装置１３０によって形成される各クラスタは、それぞれ潜在的に、１つのウェブ閲覧セッションに対応すると考えられる。実際に、ウェブページにアクセスする時には、ウェブクライアントは通常、複数のウェブサーバに向けていくつかの同時ＴＣＰ接続をオープンし、これらのＴＣＰ接続は、初期データ転送の終了後、長期間アクティブに維持される。ウェブページは、通常、異なる複数のウェブサーバによってホスティングされる資源へのリフファレンスおよびリンクを含む。ウェブページの設計者は、ＨＴＴＰＳプロトコルを介してアクセスされるウェブページ内に、暗号化されていない外部資源をエンベッディングすることを避ける。これは、そのような状況はウェブブラウザ例外を生成するからである。したがって、ほとんどの場合、外部資源もＨＴＴＰＳサーバによってホスティングされる。ＨＴＴＰＳサーバによってホスティングされるウェブページにアクセスする時には、ウェブクライアントはそのウェブサーバへのＨＴＴＰＳセッションをオープンするだけでなく、要求されるウェブページが参照する外部資源をダウンロードするために他のＨＴＴＰＳサーバとのセッションもオープンする。
【００５１】
解析装置１３０は、ウェブクライアントのＩＰアドレスと、ＴＣＰポートと、考慮中のＴＣＰ接続が開始された時刻とに基づき、クラスタを作成する。エンドポイントのいずれがウェブサーバであるかを決定する方法の一つは上述されていることに留意すべきである。したがって、ウェブクライアントは、そのＴＣＰ接続の他方のエンドポイントである。
【００５２】
通信装置は、クラスタを形成するために、以下の規則を適用する。
‐各クラスタは、同一のウェブクライアントＩＰアドレスを持つＴＣＰ接続のみを含む。
‐各クラスタは、同一のＴＣＰソースポート範囲内の各ＴＣＰソースポートを持つＴＣＰ接続のみを含む。
‐各クラスタは、同一の時間範囲内で開始されたＴＣＰ接続のみを含む。
【００５３】
ＴＣＰ接続を、それぞれのＴＣＰソースポートに従ってソートする時には、「同一のＴＣＰソースポート範囲内の各ＴＣＰソースポートを持つＴＣＰ接続」とは、２つの連続するＴＣＰ接続のポート番号間の間隔が第１の事前定義閾値Ｔｈ１を超えないということを意味する。たとえば、第１の事前定義閾値Ｔｈ１は「４」にセットされる。実際に、ＴＣＰ接続を開始する時には、ＴＣＰソースポートは、通常、そのウェブクライアントにより同一のウェブ閲覧セッションについて開始された先行するＴＣＰ接続に比べて、１単位だけインクリメントされる。
【００５４】
ＴＣＰ接続を、ＴＣＰ接続が開始された時刻に従ってソートする時には、「同一の時間範囲内で開始されたＴＣＰ接続」とは、２つの連続するＴＣＰ接続が開始された時刻間の間隔が事前定義閾値Ｔｈ２を超えないということを意味する。たとえば、第２の事前定義閾値Ｔｈ２は１秒にセットされる。
【００５５】
ＴＣＰ接続のオープンに際し、要求されるフィールドには記入がされるので、クラスタの決定は実時間で行ってもよいということに留意すべきである。
【００５６】
解析装置１３０は、さらに、そのＴＣＰ接続をクラスタに含めるか否かを決定するために、ＴＣＰ接続の持続時間を考慮に入れてもよい。実際に、すでに述べたように、ウェブページアクセスのコンテキストでは、ＴＣＰ接続は、典型的には、初期データ転送の終了から長時間アクティブに維持される。したがって、解析装置１３０は、ＴＣＰ接続の持続時間が第３の事前定義閾値Ｔｈ３よりも長い時には、そのＴＣＰ接続をあるクラスタに含めることを決定してもよい。この第３の事前定義閾値Ｔｈ３は、たとえば実地試験に従って定義される。さらに、解析装置１３０は、ＴＣＰ接続の持続時間が第４の事前定義閾値Ｔｈ４よりも短い時には、そのＴＣＰ接続をあるクラスタに含めることを決定してもよい。この第４の事前定義閾値Ｔｈ４は、第３の事前定義閾値Ｔｈ３より厳密に大きい。この第４の事前定義閾値Ｔｈ４は、たとえば実地試験に従って定義される。これにより、ＨＴＴＰＳセッションのデータを、たとえばＶＰＮセッションのデータと混同することを避けることができる。
【００５７】
ＴＣＰ接続の持続時間は、そのＴＣＰ接続が開始された時刻と、そのＴＣＰ接続が終了した時刻との間の時間差により決定される（これを表す情報はそのＴＣＰ接続と関連付けられてＴＣＰコンテキストに記憶される）。一変形例では、ＴＣＰ接続の持続時間は、そのＴＣＰ接続が開始された時刻と、そのＴＣＰ接続の有効なペイロードを伴う最新のＴＣＰセグメントが解析装置により受信された時刻との間の時間差により決定される（これを表す情報はそのＴＣＰ接続と関連付けられてＴＣＰコンテキストに記憶される）。この変形例では、ＴＣＰ接続を介して有効な転送が発生する期間が考慮される。
【００５８】
解析装置１３０は、クラスタ関連情報を、いわゆる「クラスタコンテキスト」（生成され、ステップＳ３０３において形成された各クラスタに関連付けられたもの）内に維持する。
【００５９】
好適な実施形態では、クラスタコンテキストは以下の情報を含む。
‐すべてのクラスタのうちでそのクラスタを識別できるようにする、クラスタの識別子。
‐考慮中のクラスタを形成する各ＴＣＰ接続のＴＣＰコンテキストの識別子のリスト。
‐考慮中のクラスタとマッチする、事前定義ウェブ閲覧セッションプロファイルの識別子。
‐ドメイン統計のリスト。これは、考慮中のクラスタの少なくとも１つのＴＣＰ接続が関連するドメインごとの、統計のコレクションである。
【００６０】
考慮中のクラスタとマッチする、ウェブ閲覧セッションプロファイルの識別子は、クラスタコンテキストを作成する時には記入されない。すなわち、クラスタコンテキスト作成時には意味がない。後述するように、このような情報は、クラスタ特性を事前定義ウェブ閲覧セッションプロファイルと比較した後に、実質的に記入される。
【００６１】
ドメイン統計は、考慮中のクラスタを形成する各ＴＣＰ接続のＴＣＰコンテキストから決定される。好適な実施形態では、ドメイン統計は以下の情報を含む。
‐考慮中のＴＣＰ接続に関与するウェブサーバのドメイン名を表す情報。
‐そのドメイン内のサーバが関与するクラスタのＴＣＰ接続の量を表す情報。
‐そのクラスタのＴＣＰ接続を介して送信されたＴＣＰセグメントの量を表す情報。
‐そのクラスタのＴＣＰ接続を介して送信されたデータの量を表す情報。
【００６２】
続くステップＳ３０４において、解析装置１３０は、ステップＳ３０３において定義されたクラスタのうちから１つのクラスタを選択する。
【００６３】
続くステップＳ３０５において、解析装置１３０は、選択されたクラスタコンテキストを、事前定義ウェブ閲覧セッションプロファイル（好ましくは第２のデータベースに記憶される）と比較する。基本的に、任意のクラスタコンテキストにおけるものと同じ種類の情報が、各事前定義ウェブ閲覧セッションプロファイルにおいても取得可能である。事前定義ウェブ閲覧セッションプロファイルは、さらに、追加の情報（事前定義ウェブ閲覧セッションプロファイルのそれぞれを表すウェブサービスの名称およびカテゴリ等）を含んでもよい。いずれにしても、事前定義ウェブ閲覧セッションプロファイルは、それぞれ個別の識別子を備える。第２のデータベースの内容は、たとえば実地試験を介して、事前に決定される。第２のデータベースの内容は、たとえば通信ネットワークを介したデータベース更新手順を用いて、動的に変更されてもよい。
【００６４】
好適な実施形態では、解析装置１３０は、選択されたクラスタのドメイン統計において識別される各ドメインについて、そのドメインが事前定義ウェブ閲覧セッションプロファイル内に存在しているか否かをチェックする。少なくとも１つのドメインが事前定義ウェブ閲覧セッションプロファイル内に存在しない時には、解析装置１３０はそのクラスタがその事前定義ウェブ閲覧セッションプロファイルにマッチしないと考える。さらに、解析装置１３０は、事前定義ウェブ閲覧セッションプロファイル内において識別される各ドメインについて、そのドメインが選択されたクラスタのドメイン統計内に存在するか否かをチェックする。少なくとも１つのドメインが、選択されたクラスタのドメイン統計内に存在しない時には、解析装置１３０は、そのクラスタはその事前定義ウェブ閲覧セッションプロファイルにマッチしないと考える。
【００６５】
一実施形態では、対応するクラスタコンテキストに含まれる情報と、その事前定義ウェブ閲覧セッションプロファイルに含まれる情報との差を表す情報が、第５の事前定義閾値Ｔｈ５未満である時には、解析装置１３０は、選択されたクラスタがその事前定義ウェブ閲覧セッションプロファイルにマッチすると考える。第５の事前定義閾値Ｔｈ５は、実地試験を介して定義されてもよい。例示的な一実施形態では、解析装置１３０は、たとえば人工のニューラルネットワークを実装することにより、ソフトアウトプットメカニズムに依存してもよい。人工のニューラルネットワークは、各クラスタが人工のニューラルネットワークに入力され、そのクラスタとその事前定義ウェブ閲覧セッションプロファイルとの距離を表す情報がその人工のニューラルネットワークにより提供されるように、パターン認識のために構成される。最短距離に対応する事前定義ウェブ閲覧セッションプロファイルは、その最短距離が第５の事前定義閾値Ｔｈ５よりも大きい時に、クラスタがマッチすると考えられる。
【００６６】
別の実施形態では、解析装置１３０は、ドメインごとに解析を実行する。解析装置１３０は、各ドメインについて、そのクラスタのＴＣＰ接続の量と、その事前定義ウェブ閲覧セッションプロファイルによって期待されるＴＣＰ接続の量との間の、第１の距離を決定する。解析装置１３０は、さらに、そのクラスタのＴＣＰ接続を介して送信されたＴＣＰセグメントの量と、その事前定義ウェブ閲覧セッションプロファイルによって期待されるＴＣＰセグメントの量との間の、第２の距離を決定する。さらに、解析装置１３０は、そのクラスタのＴＣＰ接続を介して送信されたＴＣＰデータの量と、その事前定義ウェブ閲覧セッションプロファイルによって期待されるＴＣＰデータの量との間の、第３の距離を決定する。第１、第２および第３の距離の合計が第６の事前定義閾値Ｔｈ６未満である時には、解析装置１３０は、選択されたクラスタのドメイン特性が、その事前定義ウェブ閲覧セッションプロファイルにマッチすると考える。選択されたクラスタ内に存在するすべてのドメインが解析されると、解析装置１３０は、事前定義ウェブ閲覧セッションプロファイルとマッチすると考えられる選択されたクラスタ内に存在するドメインの量と、第７の事前定義閾値Ｔｈ７とを比較する。事前定義ウェブ閲覧セッションプロファイルとマッチすると考えられる選択されたクラスタ内に存在するドメインの量が、第７の事前定義閾値Ｔｈ７より大きい時には、解析装置１３０は、選択されたクラスタはその事前定義ウェブ閲覧セッションプロファイルにマッチすると考え、そうでなければ、解析装置１３０は、選択されたクラスタはその事前定義ウェブ閲覧セッションプロファイルにマッチしないと考える。
【００６７】
このようにして、選択されたクラスタが事前定義ウェブ閲覧セッションプロファイルの１つとマッチするか、または、第２のデータベースに記憶されたすべての事前定義ウェブ閲覧セッションプロファイルが考慮されるまで、解析装置１３０は、選択されたクラスタの特性と、第２のデータベースに記憶された事前定義ウェブ閲覧セッションプロファイルのそれぞれとを比較する。
【００６８】
続くステップＳ３０６において、解析装置１３０は、選択されたクラスタが事前定義ウェブ閲覧セッションプロファイルの１つとマッチするか否かをチェックする。選択されたクラスタが、事前定義ウェブ閲覧セッションプロファイルの１つとマッチする時には、ステップＳ３０７が実行され、そうでなければ、ステップＳ３０８が実行される。
【００６９】
ステップＳ３０７において、解析装置１３０は、選択されたクラスタを、その選択されたクラスタがマッチする事前定義ウェブ閲覧セッションプロファイルの関数として、分類する。解析装置１３０は、その事前定義ウェブ閲覧セッションプロファイルの識別子を表す情報を、選択されたクラスタに関連付けられたクラスタコンテキスト内に記憶する。したがって、解析装置１３０は、選択されたクラスタを分類する。その後、ステップＳ３０８が実行される。
【００７０】
ステップＳ３０８において、解析装置１３０は、ステップＳ３０３で形成されたクラスタがすべて解析されたか否かをチェックする。ステップＳ３０３で形成されたクラスタがすべて解析された時には、ステップＳ３０９が実行され、そうでなければ、まだ解析されていないクラスタを選択することにより、ステップＳ３０５が繰り返される。
【００７１】
ステップＳ３０９において、解析装置１３０は、ステップＳ３００で受信したＴＣＰセグメントを転送し、そのＴＣＰセグメントが第１の通信ネットワーク１０１または第２の通信ネットワーク１０２を介してルーティングを継続できるようにする。
【図１】
2015076879.tif 000003
【図２】
2015076879.tif 000004
【図３】
2015076879.tif 000005
【外国語明細書】
2015076879.tif 000006
2015076879.tif 000007
2015076879.tif 000008
2015076879.tif 000009
2015076879.tif 000010
2015076879.tif 000011
2015076879.tif 000012
2015076879.tif 000013
2015076879.tif 000014
2015076879.tif 000015
2015076879.tif 000016
2015076879.tif 000017
2015076879.tif 000018
2015076879.tif 000019
2015076879.tif 000020
2015076879.tif 000021
2015076879.tif 000022
2015076879.tif 000023
2015076879.tif 000024
2015076879.tif 000025
2015076879.tif 000026
2015076879.tif 000027
2015076879.tif 000028
2015076879.tif 000029
2015076879.tif 000030
2015076879.tif 000031