説明

データネットワーク上での複数のフローを備える通信セッションの管理

本発明は、通信セッションが、第1プロトコルを使用する親フローと呼ばれる第1データフローを備え、前記親フローが、前記セッションのための第2プロトコルを使用する子フローと呼ばれる第2データフローを設定するために適したデータを含む、データネットワーク上で通信セッションを管理するための方法であって:子フローが設定されることを可能にするデータを求めて親フローを検索する段階(13)と、前記データを使用して、親キーと呼ばれるシグネチャを生成し(15)、記憶する段階(17)と、データネットワーク上で第2プロトコルを使用するデータフローを監査する段階(19)と、フローの各々のためにシグネチャを作成する段階(21)と、フローの各々の前記シグネチャを親キーと比較する段階(23)と、比較の結果が肯定である場合、当該データフローがセッションの子フローであると判定する段階(25)と含む方法に関する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通信セッションが、第1プロトコルを使用する親フローと呼ばれる第1データフローを備え、前記親フローが、前記セッションのための第2プロトコルを使用する子フローと呼ばれる第2データフローを確立することを可能にするデータを備える、データネットワーク上で通信セッションを管理するための方法およびシステムに関する。また本発明は、管理方法を実施するためのコンピュータプログラム製品にも関する。
【背景技術】
【0002】
現在のネットワークアプリケーションは一般に、それらのタスクを遂行するために複数のセッションおよびプロトコルを使用する。
【0003】
例えば、ビデオ会議で生成されたビデオコールの間に、RTPセッション(リアルタイムプロトコル)はSIP(セッション開始プロトコル)によって開始され、RTPセッションのパラメータは、SIPセッションによって交換される情報によって決まる。
【0004】
例えばファイヤーウォール等のネットワーク監視デバイスは、異なるプロトコルのセッションの間でリンクを確立するためにステートマシンを使用する。
【0005】
ステートマシンの動作は各々の新しいネットワークアプリケーションのために定義されなければならないことから、この解決法には、これらのデバイスの複雑性が増すという欠点がある。さらに、異なるフローを処理することは大量のリソースを消費する可能性があり、そのことがこれらのデバイスを通じて利用可能な帯域幅を制限し、または高価な機械の開発もしくは監視されるデータ量の制限を必要とする。
【発明の概要】
【発明が解決しようとする課題】
【0006】
したがって、ハードウェアおよび実装リソースに関して、マルチプロトコルネットワークアプリケーションをより効率的に監視する管理方法およびシステムを持つことが有利であると思われる。
【課題を解決するための手段】
【0007】
上記の欠点のうちの1つまたは複数を克服するために、通信セッションが、第1プロトコルを使用する親フローと呼ばれる第1データフローを備え、前記親フローが、前記セッションのための第2プロトコルを使用する子フローと呼ばれる第2データフローを確立することを可能にするデータを備える、データネットワーク上で通信セッションを管理するための方法は:
・子フローを確立することを可能にするデータを求めて親フローを検索する段階と、
・これらのデータを使用して、親キーと呼ばれるシグネチャを生成し、記憶する段階と、
・データネットワーク上で第2プロトコルを使用するデータフローを監査する段階と、
・フローの各々のためにシグネチャを作成する段階と、
・フローの各々のシグネチャを親キーと比較する段階と、
・比較の結果が肯定である場合、対応するデータフローがセッションの子フローであると判定する段階とを備える。
【0008】
コンピュータによって行われる迅速で単純なオペレーションである、適切なシグネチャを用いて各フローを定義すること、および単純なシグネチャの比較を実行することによって、この方法は有利にも、ステートマシンを定義することを必要とせずに、関連したフローを簡単にグループ化することを可能にする。
【0009】
単独で、または組み合わせて使用されてもよい本発明の特定の機能または利点は以下の通りである:
・セッションは判定された複数の子フローを備え、データフローは、子フローのセットが判定されるまで監査される。
・子フローは、セッションのために第3プロトコルを使用する第3データフローを確立することを可能にするデータを備え、これらのデータからシグネチャが生成され、第3プロトコルを使用するデータフローは、セッションに対応するデータフローが判定されるまで監査される。
・本方法は、第2プロトコルを使用するフローの各々のために、親キーが生成され、記憶される親フローを各々が備える複数のセッションを監視し、フローがセッションの1つのうちの子フローであるかどうかを判定するために、シグネチャが親キーの各々と比較される。
【0010】
この方法は、多数の親フロー、子フロー、および1つまたは複数の親フローの間のインヘリタンス、任意のレベルインヘリタンスを備えた1つまたは複数の子フローを定義する任意の種類のツリー構造に有利に適用されるということに留意されたい。
【0011】
本発明の第2の態様で、コンピュータプログラム製品は、前記プログラムがコンピュータ上で実行される場合に上記の方法の段階を実行するための、コンピュータ可読媒体上に記憶されたプログラム符号を備える。
【0012】
本発明の第3の態様で、通信セッションが、第1プロトコルを使用する親フローと呼ばれる第1データフローを備え、前記親フローが、前記セッションのための第2プロトコルを使用する子フローと呼ばれる第2データフローを確立することを可能にするデータを備える、データネットワーク上で通信セッションを管理するためのシステムは:
・子フローを確立することを可能にするデータを求めて親フローを検索するための第1フローアナライザと、
・これらのデータを使用する親キーと呼ばれるシグネチャを生成するための第1シグネチャジェネレータと、
・シグネチャを記憶するためのメモリと、
・データネットワーク上で第2プロトコルを使用するデータフローを監査するための第2フローアナライザと、
・これらのフローの各々のための第2シグネチャジェネレータと、
・これらのフローの各々のシグネチャを親キーと比較するためのコンパレータと、
・コンパレータの結果が肯定である場合、シグネチャに対応するフローに、セッションの子フローとしてタグ付けするタガー(tagger)とを備える。
【0013】
本発明の特定の実施形態で、システムはデータネットワークによって接続された少なくとも2つのデバイス:少なくともメモリとシグネチャコンパレータとタガーとを含む第1デバイスと、少なくとも第1フローアナライザと第1シグネチャジェネレータと、生成されたシグネチャを第1デバイスに送信するためのインターフェースとを含む第2デバイスを備える。このシステムはまた、データネットワークによって第1デバイスに接続され、少なくとも第2フローアナライザと第2シグネチャジェネレータと生成されたシグネチャを第1デバイスに送信するためのインターフェースとを含む少なくとも1つの第3デバイスを含む。
【0014】
本発明は、単に例としてのみ示される以下の説明を読むことによって、また添付の図面を参照することによって、よりよく理解されるであろう。
【図面の簡単な説明】
【0015】
【図1】データネットワークの概略図である。
【図2】本発明の1つの実施形態による方法の流れ図である。
【図3】本発明の1つの実施形態による管理システムの概略図である。
【図4】本発明の第2実施形態による管理システムの概略図である。
【発明を実施するための形態】
【0016】
図1を参照すると、デジタルデータネットワーク1は、多数のデバイス3を相互接続する。管理システム5は、デバイス3の間で交換されるデータフローを捕獲するために、このネットワークに接続される。
【0017】
システム5は、ネットワーク1の中を移動する通信セッションを監視する。「セッション」またはアプリケーションセッションは、所与のネットワークアプリケーションによって生成されるデータ交換のセットである。
【0018】
例えば、よく知られているように、第1デバイスがFTPプロトコルを使用してファイルを第2デバイスに移動させようとする場合、第1デバイスおよび第2デバイスはポート21でのTCPプロトコルを使用した第1の交換から始まり、次いで、様々であるが1024より大きいポート番号で、TCPプロトコルを使用するFTP-DATAを使用して実際のファイルを転送することに同意する。これらの交換のすべてが、一緒にセッションを構成する。
【0019】
ポート21での第1TCP交換およびFTP-DATAを使用する転送は、以下ではサブセッションまたは単にデータフローと呼ばれる。
【0020】
第1サブセッションは、2つのデバイス間のデータ交換を可能にすることから親サブセッションまたは親フローと呼ばれ、これによって第2サブセッションを確立することが可能となり、したがって第2サブセッションは子サブセッションまたは子フローと呼ばれる。
【0021】
セッションを監視するために、システム5は図2に描いた以下の方法を適用する。
【0022】
転送されたデータを分析することによって、システムは段階11で、アプリケーションセッションが親フローの形で確立されているということを検出する。
【0023】
次いで段階13で、システム5は、子フローを確立するために使用するデータを検索する中で親フローを分析する。例えばFTPセッションでは、システム5はファイル転送が生じるポート番号を判定するために、送信されたパケットを分析することになる。
【0024】
一旦これらのデータが集められると、システム5は段階15で、親キーと呼ばれるシグネチャを生成するためにこれらのデータを使用する。例えばFTPセッションのために、システム5は、ソースデバイスおよび受信デバイスのIPアドレス、ならびにポート番号からシグネチャを生成する。このシグネチャは、例えばこれらのデータのためのハッシュ値である。
【0025】
段階17で、親キーはシステム5によって記憶される。
【0026】
次いでシステム5は、段階19で、例えばフローが子フローと互換性のあるプロトコルを使用することから、子フローに対応する可能性のあるフローを監視する。
【0027】
段階21で、システム5はこれらのフローの各々のためにシグネチャを計算する。このシグネチャの計算は、親キーの計算と同様である。例えばFTPセッションのために、システム5は2つのデバイスのIPアドレスおよびポート番号のためのハッシュキーを計算する。
【0028】
このシグネチャは、段階23で親キーと比較される。
【0029】
比較の結果が肯定である場合、対応するフローはシステム5が探している子フローであり、これが段階25である。
【0030】
明快であるにするために、以下の説明は、1つの親フローと1つの子フローに限定されている。しかしながら、本方法は多数の親フローと子フローに対して容易に一般化される。
【0031】
したがって、セッションが1つの親フローと多数の子フローから構成されている場合、システムは必要なだけ多くの親キーを計算し、すべての子フローが見つけ出されるまで、すべてのフローを監視する。
【0032】
反対に複数のセッション、したがって複数の親フローは、並行して監視されてもよい。
【0033】
次いで、対応する親キーが存在するまで、フローシグネチャの比較がすべての親キーについて行われ、したがって関連セッションを定義する。対応するキーが存在しない場合、それは、フローが監視されたセッションのうちのいずれにも属さないということを意味する。
【0034】
この方法は、子フローが他のフローを確立するためのデータを含み、その子フローであるこの他のフローのために親フローとして動作するということを意味する、多数のレベルのインヘリタンスを備えるセッションにも容易に適用されることが可能である。子フローによって運ばれる接続データに基づいて、システムは、可能性のある子フローのシグネチャが比較される親キーを定義する。
【0035】
本方法の正確な実装は、所望の技術的特性および処理システムの能力によって、異なる形態をとってもよい。
【0036】
例えば、親キーのセットは、セッション名である属性を有する順序付けられたインデックスのベクトルに対応してもよい。一旦フローのシグネチャが計算されると、次いで検索および1つまたは複数の親キーとの比較、ならびにフローのセッションへの割当ては、インデックスに基づいてオペレーションに対応し、これは、リソースおよび速度の点で非常に効率的なコンピュータオペレーションである。このことはまた、多数のセッションについての管理オペレーションのプールを可能にする。
【0037】
したがって管理システム5は、図3に描かれているように:
・子フローを確立することを可能にするデータを求めて親フローを検索するための第1フローアナライザ31と、
・これらのデータを使用して、親キーと呼ばれるシグネチャを生成するための第1シグネチャジェネレータ33と、
・シグネチャを記憶するためのメモリ35と、
・データネットワーク上で第2プロトコルを使用するデータフローを監査するための第2フローアナライザ37と、
・これらのフローの各々のための第2シグネチャジェネレータ39と、
・これらのフローの各々のシグネチャを親キーと比較するためのコンパレータ41と、
・コンパレータの結果が肯定である場合、シグネチャに対応するフローに、セッションの子フローとしてタグ付けするためのタガー43とを備える。
【0038】
この管理システムは、専用の電子回路として、またはプログラムがコンピュータ上で実行される場合にこの管理方法の段階を実施する、コンピュータ可読媒体に記憶されたプログラム符号を備えるコンピュータプログラムを用いて特にコンピュータをプログラムすることによって、実装されることが可能である。特に、このコンピュータは、ネットワークを介した伝送をコンピュータが聞くことができるようにするネットワークインターフェース、キーおよびシグネチャを生成するためのプロセッサに接続されたランダムアクセスメモリ、ならびに、例えばシグネチャの作成規則が記憶されたハードディスクドライブであってもよい不揮発性メモリを含む。
【0039】
本システムの1つの特に興味深い実施形態は、これを図4の複数の分散型デバイスに分割することから成る。フローに近接して取り付けられた第1デバイスシリーズ50はアナライザ31、37およびシグネチャジェネレータ33、39を含む。次に各々は、シグネチャコンパレータ41およびタガー43とともに、インターフェース52に接続された通信インターフェース56に加えて、シグネチャを記憶するための不揮発性メモリ35を含む集中型デバイス54を備えた通信インターフェース52を含む。タガー43はまた、フローが作り出される場所に近接するフローにタグ付けするために、第1デバイス50の中で見出されてもよい。
【0040】
本発明は、図面および上の説明の中で描かれ、述べられてきた。多くの変更実施形態が可能である。
【0041】
特に、この管理システムは、フローを監査し、親フローと子フローの両方のためにシグネチャを生成することができる単一のフローアナライザおよび単一のシグネチャジェネレータだけを備えてもよい。またはスピードを高めるために、プロトコルの種類が存在するだけ、多くのフローアナライザおよびシグネチャジェネレータが存在してもよい。
【0042】
特許請求項において、「備える」という言葉は他の要素を除外するものではなく、また不定冠詞「a」は複数を除外するものではない。
【符号の説明】
【0043】
1 デジタルネットワーク
3 デバイス
5 管理システム
21 ポート
31 第1フローアナライザ
33 第1シグネチャジェネレータ
35 不揮発性メモリ
37 第2フローアナライザ
39 第2シグネチャジェネレータ
41 コンパレータ
43 タガー
50 第1デバイス
52 インターフェース
54 集中型デバイス

【特許請求の範囲】
【請求項1】
通信セッションが、第1プロトコルを使用する親フローと呼ばれる第1データフローを備え、前記親フローが、前記セッションのための第2プロトコルを使用する子フローと呼ばれる第2データフローを確立することを可能にするデータを備える、データネットワーク上で通信セッションを管理するための方法であって、
前記子フローを確立することを可能にするデータを求めて前記親フローを検索する段階(13)と、
前記データを使用して、親キーと呼ばれるシグネチャを生成し(15)、記憶する段階(17)と、
前記データネットワーク上で第2プロトコルを使用するデータフローを監査する段階(19)と、
前記フローの各々のためにシグネチャを作成する段階(1)と、
フローの各々の前記シグネチャを前記親キーと比較する段階(23)と、
前記比較の結果が肯定である場合、対応するデータフローが前記セッションの前記子フローであると判定する段階(25)とを備える方法。
【請求項2】
前記セッションは判定された複数の子フローを備え、前記データフローは、前記子フローのセットが判定されるまで監査される請求項1に記載の方法。
【請求項3】
前記子フローは、前記セッションのための第3プロトコルを使用する第3データフローを確立することを可能にするデータを備え、シグネチャは前記データを使用して生成され、前記第3プロトコルを使用するデータフローは、前記セッションに対応する前記データフローが判定されるまで監査される請求項1または2に記載の方法。
【請求項4】
前記方法は、前記第2プロトコルを使用する前記フローの各々のために、親キーが生成され、記憶される親フローを各々が備える複数のセッションを監視し、前記シグネチャは、前記フローが前記セッションのうちの1つの前記子フローであるかどうかを判定するために、前記親キーの各々と比較される請求項1から3のいずれか一項に記載の方法。
【請求項5】
プログラムがコンピュータ上で実行される場合に、請求項1から4のいずれかによる方法のステップを実行するために、コンピュータ可読媒体に記憶されたプログラム符号を備えるコンピュータプログラム製品。
【請求項6】
通信セッションが、第1プロトコルを使用する親フローと呼ばれる第1データフローを備え、前記親フローが、前記セッションのための第2プロトコルを使用する子フローと呼ばれる第2データフローを確立することを可能にするデータを備える、データネットワーク上で通信セッションを管理するためのシステムであって、
前記子フローを確立することを可能にするデータを求めて前記親フローを検索するための第1フローアナライザ(31)と、
これらのデータを使用する親キーと呼ばれるシグネチャを生成するための第1シグネチャジェネレータ(33)と、
前記シグネチャを記憶するためのメモリ(35)と、
前記データネットワーク上で前記第2プロトコルを使用するデータフローを監査するための第2フローアナライザ(37)と、
前記フローの各々のための第2シグネチャジェネレータ(39)と、
前記フローの各々の前記シグネチャを前記親キーと比較するためのコンパレータ(41)と、
前記コンパレータの結果が肯定である場合、前記シグネチャに対応する前記フローに、前記セッションの前記子フローとしてタグ付けするタガー(43)とを備えるシステム。
【請求項7】
少なくとも前記メモリと前記シグネチャコンパレータと前記タガーとを含む第1デバイスと、少なくとも前記第1フローアナライザと前記第1シグネチャジェネレータと前記生成された信号を前記第1デバイスに送信するためのインターフェースとを含む第2デバイスの、データネットワークによって接続された少なくとも2つのデバイスを備える請求項6に記載のシステム。
【請求項8】
前記データネットワークによって前記第1デバイスに接続され、少なくとも前記第2フローアナライザと前記第2シグネチャジェネレータと前記生成されたシグネチャを前記第1デバイスに送信するためのインターフェースとを含む少なくとも第3のデバイスを備える請求項7に記載のシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公表番号】特表2013−504915(P2013−504915A)
【公表日】平成25年2月7日(2013.2.7)
【国際特許分類】
【出願番号】特願2012−528417(P2012−528417)
【出願日】平成22年9月1日(2010.9.1)
【国際出願番号】PCT/FR2010/051823
【国際公開番号】WO2011/030045
【国際公開日】平成23年3月17日(2011.3.17)
【出願人】(512059866)
【Fターム(参考)】