(57)【要約】  様々な例示的な実施形態は、送信元ノードから宛先ノードに送信されたパケットを受信するステップ、パケット内の情報にアクセスすることによって、そのパケットをアクティブなフローと関連付けるステップ、そのアクティブなフローに関連するアプリケーションを識別するために、ディープパケット検査（ＤＰＩ）を実行するステップ、アプリケーション識別情報をパケットと関連付けるステップ、そのアプリケーション識別情報を含むパケットを宛先ノードに転送するステップ、およびアクティブなフローに属している、少なくとも１つのパケットに関するアプリケーション独自の処理を下流側デバイスにおいて実行するステップであって、その下流側デバイスが、そのパケットからアプリケーション識別情報を抽出することによって、そのアクティブなフローに関連するアプリケーションを識別する、ステップのうちの１つまたは複数を含む方法、ならびに関連するデバイスおよびコンピュータ可読媒体である。
2011515939.tif 000002
【特許請求の範囲】
【請求項１】
送信元ノードから宛先ノードに送信されたパケットを処理するための方法であって、
送信元ノードから宛先ノードに送信されたパケットを受信するステップと、
パケット内の情報にアクセスすることによって、パケットをアクティブなフローと関連付けるステップと、
アクティブなフローに関連するアプリケーションを識別するために、ディープパケット検査（ＤＰＩ）を実行するステップと、
アプリケーション識別情報をパケットと関連付けるステップと、
アプリケーション識別情報を含むパケットを宛先ノードに向けて転送するステップと、
アクティブなフローに属している、少なくとも１つのパケットに関するアプリケーション独自の処理を下流側デバイスにおいて実行するステップであって、下流側デバイスが、パケットからアプリケーション識別情報を抽出することによって、アクティブなフローに関連するアプリケーションを識別する、ステップとを含む、送信元ノードから宛先ノードに送信されたパケットを処理するための方法。
【請求項２】
アプリケーション識別情報をＩＰパケットのヘッダ拡張内に配置するステップをさらに含む、請求項１に記載の送信元ノードから宛先ノードに送信されたパケットを処理するための方法。
【請求項３】
独自仕様プロトコルに従って、パケットをフォーマットするステップと、
オプションで、アプリケーション識別情報をパケットの独自仕様プロトコル拡張内に配置するステップと
をさらに含む、請求項１に記載の送信元ノードから宛先ノードに送信されたパケットを処理するための方法。
【請求項４】
アプリケーション識別情報を、汎用ルーティングカプセル化（ＧＲＥ）パケットのキーフィールドまたはシーケンス番号フィールドのうちの少なくとも１つの中に配置するステップ
をさらに含む、請求項１に記載の送信元ノードから宛先ノードに送信されたパケットを処理するための方法。
【請求項５】
アクティブなフローに関連するアプリケーションを識別するためにＤＰＩを実行するステップが、署名マッチング、パターンマッチング、ステートフルモニタリング、挙動解析、および統計解析のうちの少なくとも１つを含む、請求項１に記載の送信元ノードから宛先ノードに送信されたパケットを処理するための方法。
【請求項６】
アクティブなフローに属している、少なくとも１つのパケットに関するトラフィック管理機能を実行するステップと、
アクティブなフローに属している、少なくとも１つのパケットに関連するサービスの品質を修正するステップと
をさらに含む、請求項１に記載の送信元ノードから宛先ノードに送信されたパケットを処理するための方法。
【請求項７】
ネットワーク内のトラフィックを処理するためのデバイスであって、
送信元ノードから宛先ノードに送信されたパケットを受信および転送する通信モジュールと、
パケット内に格納された情報にアクセスすることによって、パケットに関連するアクティブなフローを識別し、
アクティブなフローに関連するアプリケーションを識別するために、ディープパケット検査（ＤＰＩ）を実行し、
アプリケーション識別情報をパケットと関連付ける
ように構成されたプロセッサとを含み、アプリケーション識別情報が、アクティブなフローに関連するアプリケーションを識別するために、下流側デバイスによってパケットから抽出される、ネットワーク内のトラフィックを処理するためのデバイス。
【請求項８】
（ａ）パケットがＩＰパケットであり、アプリケーション識別情報がＩＰパケットのヘッダ拡張内に配置されるか、または
（ｂ）パケットが独自仕様プロトコルに従ってフォーマットされ、アプリケーション識別情報がパケットの独自仕様プロトコル拡張内に配置される、請求項７に記載のネットワーク内のトラフィックを処理するためのデバイス。
【請求項９】
パケットが汎用ルーティングカプセル化（ＧＲＥ）パケットであり、アプリケーション識別情報が、ＧＲＥパケット内のキーフィールドまたはシーケンス番号フィールドのうちの少なくとも１つの中に配置される、請求項７に記載のネットワーク内のトラフィックを処理するためのデバイス。
【請求項１０】
送信元ノードから宛先ノードに送信されたパケットを処理するための命令でエンコードされたコンピュータ可読媒体であって、
送信元ノードから宛先ノードに送信されたパケットを受信するための命令と、
パケット内の情報にアクセスすることによって、パケットをアクティブなフローと関連付けるための命令と、
アクティブなフローに関連するアプリケーションを識別するために、ディープパケット検査（ＤＰＩ）を実行するための命令と、
アプリケーション識別情報をパケットと関連付けるための命令と、
アプリケーション識別情報を含むパケットを宛先ノードに向けて転送するための命令と、
アクティブなフローに属している、少なくとも１つのパケットに関するアプリケーション独自の処理を下流側デバイスにおいて実行するための命令であって、下流側デバイスが、パケットからアプリケーション識別情報を抽出することによって、アクティブなフローに関連するアプリケーションを識別する命令とを含む、コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、データパケットに関連するアプリケーションに関する情報の通信に関する。
【背景技術】
【０００２】
ストリーミングビデオアプリケーション、ピアツーピアネットワーキングアプリケーション、およびその他の高帯域アプリケーションが標準になるにつれて、基礎となるネットワークアーキテクチャが負わされる負荷は急激に増大する。輻輳管理システムを設計するとき、サービスプロバイダは、ストリーミングビデオアプリケーション、ピアツーピアアプリケーション、およびその他の高帯域の使用に関してインターネットの使用を企図しなかった。結果として、多数のユーザが高帯域のアプリケーションを実行するとき、ベストエフォート型の、高いオーバーサブスクリプション率（ｈｉｇｈ−ｏｖｅｒｓｕｂｓｃｒｉｐｔｉｏｎ  ｒａｔｅ）のアーキテクチャは、しばしば輻輳を経験し、それによって、ユーザ経験に干渉する。
【０００３】
これらの問題は、特に、帯域幅がなおさらに限定される移動体ネットワークの関連で顕著である。移動体ネットワークは、音声だけのサービスからデータサービスまたは音声データ混合サービスへの漸進的な変容を経験している。ユーザごとの帯域幅要件が増大するにつれて、移動体ネットワークアーキテクチャに負わされる負担も増大する。
【０００４】
したがって、サービスプロバイダ、特に、移動体ネットワークサービスプロバイダは、いくつかのオプションのうちどれかを選択しなければならない。すなわち、ベストエフォート型のサービスを引き続き提供すること、帯域幅を増大して、本質的に、トランスポート「ユーティリティ」になること、または個々のユーザの要件に基づいて、アプリケーション独自のサービスを販売することである。ユーザはベストエフォート型のサービスに不満をいだき、一方、見境なく増大する帯域幅は、結果として、対応する収益増大を伴わずに追加のコストをサービスプロバイダにもたらすことになるため、サービスプロバイダは、初めの２つのオプションは十分でないと考えている。他方で、アプリケーション独自のサービスを販売することは、サービスプロバイダが帯域幅を急激に増大する必要をなくすと同時に、ユーザが、自らが受信することを望むサービスに関して支払うことを可能にすることになる。
【０００５】
しかし、アプリケーション独自のサービスを販売するために、サービスプロバイダは、アプリケーションに関する情報を識別および収集するために、基礎となるネットワークアーキテクチャをまず修正しなければならない。移動体ネットワークの無線部分では、無線周波数の固有の制限により帯域幅が限定されるため、アプリケーションごとのトラフィック管理の使用は特に重要である。その結果、移動体事業者は、パケットを優先度設定して転送するために、サービスのタイプ（ＴｏＳ）マーキングなど、パケットマーキングをしばしば利用する。
【０００６】
しかし、既存の移動体ネットワークアーキテクチャでは、ネットワークは、パケットの適切なマーキングに関して、エンドユーザ機器に依存する。したがって、例えば、ユーザの移動体ハンドセットは、データパケットよりも高い優先度を有するとして、音声パケットをマーキングし、それによって、移動体ネットワークを介して行われる呼の質を確実にすることが可能である。
【０００７】
これらの現在の実装形態では、ネットワークはパケットにマーキングするためにエンドユーザ機器に依存するため、移動体ネットワークは、その移動体ネットワークによってサポートされるエンドユーザ機器の関与なしに、パケットを効果的に優先度設定することができない。加えて、値はエンドユーザ機器内で事前に画定されて実装されなければならないため、移動体ネットワーク事業者は、エンドユーザ機器の挙動を修正せずに、新しいアプリケーションを画定して、マーキングする柔軟性に欠ける。さらに、現在の実装形態は、ネットワークが少数のアプリケーションだけを効果的に管理することができるように、限定された数の独自の値だけを含むパケットマーキングプロトコルに依存する。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
データパケットに関連するアプリケーションを識別して、下流側処理のためにこの情報を伝えるインラインデバイスの必要が存在する。エンドユーザ機器において、パケットがマーキングされることを必要とせずに、アプリケーション識別情報をデータパケットと関連付ける必要も存在する。加えて、ディープパケット検査（Ｄｅｅｐ  Ｐａｃｋｅｔ  Ｉｎｓｐｅｃｔｉｏｎ）（ＤＰＩ）処理がそれぞれの位置で実行されることを必要とせずに、多数のアプリケーションがネットワーク内の任意の位置において識別され得るようなパケットマーキング方式を利用する、移動体ネットワークにおけるパケットマーキングの必要が存在する。
【課題を解決するための手段】
【０００９】
本発明の前述の目的および利点は、様々な例示的な実施形態によって達成され得る目標および利点を例示し、実現され得る可能な利点を網羅または限定するようには意図されていない。したがって、様々な例示的な実施形態のこれらのおよびその他の目的ならびに利点は、両方とも、本細書で実施されるように、または当業者に明らかになり得る任意の改変に照らして修正されるように、本明細書の説明から明らかになるか、または様々な例示的な実施形態を実施することから理解され得る。したがって、本発明は、様々な例示的な実施形態の形で示され、説明される、本明細書の新規性のある方法、構成、組合せ、および改善の中に存在する。
【００１０】
インバンドＤＰＩアプリケーション認識伝播の向上機能の現在の必要に照らして、様々な例示的な実施形態の短い概要が提示される。本発明の範囲を限定するのではなく、様々な例示的な実施形態のいくつかの態様を強調および紹介するように意図されている以下の概要に何らかの簡素化および省略が行われる場合がある。当業者が本発明の概念を作り上げ、使用することを可能にするのに十分な、好ましい例示的な実施形態の詳細な説明が後の項に続く。
【００１１】
様々な例示的な実施形態において、ＤＰＩデバイスは、転送されるのに先立って、パケットがＤＰＩデバイスを通過するように、移動体ネットワークの非移動体部分内にインラインで配置される。したがって、様々な例示的な実施形態において、ＤＰＩデバイスは、着信パケットのヘッダおよび／またはデータ部分から抽出された情報に基づいて、移動体ネットワークを通過するトラフィックを識別および分類する。パケットから抽出された情報を使用して、ＤＰＩデバイスは、アプリケーション識別情報をパケットに追加し、それによって、下流側デバイスがそのアプリケーションを識別して、アプリケーション独自の処理を実行することを可能にし得る。
【００１２】
したがって、様々な例示的な実施形態において、送信元ノードから宛先ノードに送信されたパケットを処理する方法、および命令でエンコードされた関連するコンピュータ可読媒体は、送信元ノードから宛先ノードに送信されたパケットを受信するステップと、そのパケット内の情報にアクセスすることによって、そのパケットをアクティブなフローと関連付けるステップと、そのアクティブなフローに関連するアプリケーションを識別するために、ディープパケット検査（ＤＰＩ）を実行するステップと、アプリケーション識別情報をそのパケットと関連付けるステップと、そのアプリケーション識別情報を含むパケットを宛先ノードに転送するステップと、そのアクティブなフローに属している、少なくとも１つのパケットに関するアプリケーション独自の処理を下流側デバイスにおいて実行するステップであって、その下流側デバイスが、そのパケットからアプリケーション識別情報を抽出することによって、そのアクティブなフローに関連するアプリケーションを識別する、ステップとを含む。
【００１３】
様々な例示的な実施形態において、パケットはＩＰパケットであり、アプリケーション識別情報は、ＩＰパケットのヘッダ拡張内に配置される。あるいは、様々な例示的な実施形態において、パケットは、独自仕様プロトコルに従ってフォーマットされ、アプリケーション識別情報は、パケットの独自仕様プロトコル拡張内に配置される。加えて、様々な例示的な実施形態において、パケットは、汎用ルーティングカプセル化（Ｇｅｎｅｒｉｃ  Ｒｏｕｔｉｎｇ  Ｅｎｃａｐｓｕｌａｔｉｏｎ）（ＧＲＥ）パケットであり、アプリケーション識別情報は、ＧＲＥパケットのキーフィールド内またはシーケンス番号フィールド内に配置される。
【００１４】
さらに、様々な例示的な実施形態において、ネットワーク内でトラフィックを処理するためのデバイスは、送信元ノードから宛先ノードに送信されたパケットを受信および転送する通信モジュールと、パケット内に格納された情報にアクセスすることによって、そのパケットに関連するアクティブなフローを識別し、そのアクティブなフローに関連するアプリケーションを識別するために、ディープパケット検査（ＤＰＩ）を実行し、アプリケーション識別情報をそのパケットと関連付けるように構成されたプロセッサとを含み、アプリケーション識別情報は、アクティブなフローに関連するアプリケーションを識別するために、下流側デバイスによってパケットから抽出される。
【００１５】
様々な例示的な実施形態をよりよく理解するために、添付の図面が参照される。
【図面の簡単な説明】
【００１６】
【図１】ネットワークの移動体部分内でインラインＤＰＩを利用する、例示的な移動体ネットワークの概略図である。
【図２】アプリケーション情報を格納するためのフィールドを含む、例示的なＬ３パケットの概略図である。
【図３】キーフィールドおよびシーケンス番号フィールドを含む、例示的なＧＲＥパケットの概略図である。
【図４】インバンドＤＰＩアプリケーション認識伝播の向上機能を実装するための方法の例示的な実施形態の流れ図である。
【発明を実施するための形態】
【００１７】
次に、類似の番号が類似の構成要素またはステップを指す、図面を参照すると、様々な例示的な実施形態の広い態様が開示される。
【００１８】
図１は、ネットワーク１００の移動体部分内のインラインＤＰＩを利用する、例示的な移動体ネットワーク１００の概略図である。例示的な移動体ネットワーク１００は、ユーザノード１１０と、無線基地局１２０と、ネットワーク１３０と、無線ネットワークコントローラ１４０と、ディープパケット検査デバイス１５０と、パケットデータサービス提供ノード１６０とを含む。
【００１９】
様々な例示的な実施形態において、ユーザノード１１０は、移動体ネットワーク１００へのアクセスを可能にする、ユーザによって操作されるデバイスである。より詳細には、様々な例示的な実施形態において、ユーザノード１１０は、セル電話、携帯情報端末、パーソナルコンピュータもしくはラップトップコンピュータ、無線電子メールデバイス、または無線通信をサポートする任意のその他のデバイスである。さらに、様々な例示的な実施形態において、ユーザノード１１０は、１つまたは複数のアプリケーションに関係するデータパケットを生成して送信する。
【００２０】
様々な例示的な実施形態において、無線基地局１２０は、複数の無線チャネルを介して、ユーザノード１１０とデータを無線で交換するためのアンテナを含むデバイスである。さらに、無線基地局１２０は、データをネットワーク１３０内に転送するためのワイヤラインインターフェース（ｗｉｒｅ  ｌｉｎｅ  ｉｎｔｅｒｆａｃｅ）を含む。したがって、様々な例示的な実施形態において、無線基地局１２０は、３Ｇネットワーク内のノードＢ、または移動体通信用グローバルシステム（ＧＳＭ）、ユニバーサル移動体電気通信システム（ＵＭＴＳ）、ロングタームエボリューション（ＬＴＥ）、もしくはその他の無線ネットワーク内で通信している別のベーストランシーバステーションである。
【００２１】
加えて、様々な例示的な実施形態において、ネットワーク１３０は、無線基地局１２０と無線ネットワークコントローラ１４０との間に接続を提供する。ネットワーク１３０は、無線基地局１２０と無線ネットワークコントローラ１４０との間でデータおよび要求を送信することが可能な任意のネットワークであり得る点は明らかであろう。したがって、ネットワーク１３０は、複数のルータ、スイッチ、ブリッジ、およびデータパケットを受信および転送するのに適した、その他の構成要素を含み得る。
【００２２】
様々な例示的な実施形態において、無線ネットワークコントローラ１４０は、複数の無線基地局１２０を制御および管理する。したがって、無線ネットワークコントローラ１４０は、無線基地局１２０内で無線送受信機を制御することによって、無線基地局１２０内のデータの送受信を指令する。さらに、様々な例示的な実施形態において、無線ネットワークコントローラ１４０は、無線基地局１２０とパケットデータサービス提供ノード１６０との間でパケット交換データを送受信する。無線ネットワークコントローラ１４０は、基地局コントローラまたは無線基地局１２０の動作を指令して、データパケットを送受信することが可能な、別のデバイスと交換され得る点は明らかであろう。
【００２３】
様々な例示的な実施形態において、無線ネットワークコントローラ１４０は、データのフローを管理するために、ディープパケット検査デバイス１５０によってデータパケット内に挿入されたアプリケーション情報を利用する。より詳細には、様々な例示的な実施形態において、無線ネットワークコントローラ１４０は、ＤＰＩデバイス１５０によって挿入されたアプリケーション識別情報を使用して、アプリケーションを識別し、そのパケットを許可するかまたはドロップするかを決定することなど、サービスの品質処理を実行する。
【００２４】
加えて、様々な例示的な実施形態において、移動体ネットワーク１００は、無線ネットワークコントローラ１４０からパケットデータ交換ノード１６０に送信された、またはパケットデータ交換ノード１６０から無線ネットワークコントローラ１４０に送信されたパケットを傍受、「スニッフ（ｓｎｉｆｆ）」、またはそうでない場合、受信するディープパケット検査デバイス１５０を含む。より詳細には、図４を参照して下でさらに説明されるように、ＤＰＩデバイス１５０は、パケットを受信して、そのパケットに関連するアプリケーションを識別し、下流側アプリケーション独自の処理および転送を可能にするために、マーキングまたはその他の情報をパケットに追加する。
【００２５】
様々な例示的な実施形態において、ＤＰＩデバイス１５０は、無線ネットワークコントローラ１４０から受信されたかつ／または無線ネットワークコントローラ１４０に送信されたデータパケットに関連する情報を識別するために、そのパケットを審査することが可能な専門のハードウェアおよび／またはソフトウェアを含む。したがって、様々な例示的な実施形態において、ＤＰＩデバイス１５０は、フローを識別するために使用される情報を格納する記憶媒体と、解析を実行するためのプロセッサと、パケットを送受信するための通信モジュールとを含む。
【００２６】
加えて、様々な例示的な実施形態において、ＤＰＩデバイス１５０は、無線ネットワークコントローラ１４０内、パケットデータ交換ノード１６０内、または無線ネットワークコントローラ１４０とパケットデータ交換ノード１６０との間に接続性を提供するネットワーク（図示せず）の一部であるネットワーク要素内に統合される。様々な例示的な実施形態において、接続性を提供するネットワークは、複数のルータ、スイッチ、ブリッジ、およびデータパケットを受信および転送するのに適したその他の構成要素を含む。あるいは、様々な例示的な実施形態において、ＤＰＩデバイス１５０は、無線基地局１２０内もしくはネットワーク１３０の一部であるネットワーク要素内に配置されるか、または統合される。
【００２７】
様々な例示的な実施形態において、ＤＰＩデバイス１５０は、開放型システム間相互接続（ＯＳＩ）モデルのレイヤ２から７内の情報の任意の組合せを審査する。したがって、様々な例示的な実施形態において、ＤＰＩデバイス１５０は、パケットに関連するアプリケーションを識別するために、１つまたは複数のパケットの「ディープ」解析を実行する。例えば、ＤＰＩデバイス１５０は、そのパケットが電子メールに関するか、ストリーミングビデオに関するか、ウェブブラウジングに関するか、ピアツーピア転送に関するか、またはサービスプロバイダにとって関心のあるその他の当該アプリケーションに関するかを決定するために、パケットを解析することが可能である。さらに、様々な例示的な実施形態において、ＤＰＩデバイス１５０は、トラフィック管理オペレーションを実行して、次いで、そのパケットをパケットデータサービス提供ノード１６０または無線ネットワークコントローラ１４０に転送する。
【００２８】
独立型のデバイスとして例示されるが、様々な例示的な実施形態において、ＤＰＩデバイス１５０は、ルータ内に統合された構成要素である点は明らかであろう。したがって、様々な例示的な実施形態において、ＤＰＩデバイス１５０は、ルータがそのパケットを次ホップに転送する前に、そのルータによって受信されたそれぞれのパケットを解析する。
【００２９】
さらに、説明を簡単にするために、ＤＰＩデバイス１５０は、無線ネットワークコントローラ１４０およびパケットデータサービス提供ノード１６０に直接接続されるとして例示される点は明らかであろう。したがって、様々な例示的な実施形態において、１つまたは複数のスイッチ、ルータ、ブリッジ、またはその他のネットワーク要素は、ＤＰＩデバイス１５０と無線ネットワークコントローラ１４０またはパケットデータサービス提供ノード１６０との間に配置される。
【００３０】
様々な例示的な実施形態において、パケットデータサービス提供ノード１６０は、移動体ネットワーク１００と１つまたは複数のＩＰネットワーク（図示せず）との間の接続として機能する。したがって、様々な例示的な実施形態において、パケットデータサービス提供ノード１６０は、インターネットと無線ネットワークコントローラ１４０との間でパケットを転送する。パケットデータサービス提供ノード１６０は、ゲートウェイ汎用パケット無線サービスサポートノード（ＧＧＳＮ）、サービス提供ゲートウェイ汎用パケット無線サービスサポートノード（ＳＧＳＮ）、アクセスサービス提供ゲートウェイ（ＬＴＥ）、または移動体ネットワーク１００とＩＰネットワークとの間に接続を提供することが可能な任意のその他のノードと置換され得る点は明らかであろう。
【００３１】
様々な例示的な実施形態において、パケットデータサービス提供ノード１６０は、データのフローを管理するために、ディープパケット検査デバイス１５０によってデータパケット内に挿入されたアプリケーション情報を利用する。より詳細には、様々な例示的な実施形態において、パケットデータサービス提供ノード１６０は、データパケット内で見つかった情報を使用して、アプリケーションを識別し、そのパケットを許可するかまたはドロップするかを決定することなど、サービスの品質処理を実行する。
【００３２】
３Ｇ無線移動体ネットワークとして例示されるが、ネットワーク１００は、異なるタイプのネットワークであってよい点は明らかであろう。したがって、様々な例示的な実施形態において、ネットワーク１００は、異なる標準に基づいて動作しているセルラネットワーク、衛星ネットワーク、有線ネットワーク、またはアプリケーション独自の処理が所望される、いくつかのその他のタイプのネットワークである。
【００３３】
図２は、アプリケーション情報を格納するための１つまたは複数のフィールドを含む、例示的なＬ３パケット２００の概略図である。様々な例示的な実施形態において、Ｌ３パケット２００は、数あるフィールドの中でも、パケットヘッダ２１０、発信元アドレス２２０、宛先アドレス２３０、アプリケーション情報２４０、およびデータ２５０を含む。
【００３４】
様々な例示的な実施形態において、パケットヘッダ２１０は、パケット２００を発信元から宛先に転送するために使用されるにデータを含む。したがって、様々な例示的な実施形態において、パケットヘッダ２１０は発信元ＩＰアドレスおよび発信元ポートを含み得る発信元アドレスフィールド２２０を含む。さらに、様々な例示的な実施形態において、パケットヘッダ２１０は、宛先ＩＰアドレスおよび宛先ポートを含み得る宛先アドレスフィールド２３０を含む。
【００３５】
さらに、パケット２００は、様々な例示的な実施形態において、パケット２００に関連するアプリケーションを識別するアプリケーション情報２４０を含む。様々な例示的な実施形態において、アプリケーション情報２４０は、パケット２００のパケットヘッダ２１０とデータ２５０との間に挿入された追加のヘッダであり得るＩＰヘッダ拡張内に配置される。したがって、様々な例示的な実施形態において、アプリケーション情報２４０は、名称、英数字識別子、またはパケット２００に関連するアプリケーションを識別するその他の情報を示す、１つもしくは複数のタイプ長さ値（ｔｙｐｅ  ｌｅｎｇｔｈ  ｖａｌｕｅ）（ＴＬＶ）からなる。アプリケーションを識別するのに適した任意の情報は、アプリケーション情報２４０内に配置され得る点は明らかであろう。
【００３６】
さらに、説明を簡単にするために、パケットヘッダ２１０は、発信元アドレスフィールド２２０および宛先アドレス２３０だけを含むとして示される点は明らかであろう。したがって、様々な例示的な実施形態において、パケットヘッダ２１０は、プロトコル番号、トラフィッククラス、フローラベル、ペイロード長、次ヘッダ、およびホップ制限を含むが、これらに限定されない、追加のフィールドを含む。さらに、パケット２００は、ＩＰパケット、伝送制御プロトコル（ＴＣＰ）パケット、ユーザデータグラムプロトコル（ＵＤＰ）パケット、独自仕様プロトコルに従ってフォーマットされたパケット、またはアプリケーション情報を含めるために修正され得る、任意のその他のプロトコル内でフォーマットされたパケットであり得る点は明らかであろう。
【００３７】
図３は、キーフィールドおよびシーケンス番号フィールドを含む、例示的な汎用ルーティングカプセル化パケット３００の概略図である。ＧＲＥは、ネットワーク層パケットをＩＰトンネリングパケット内でカプセル化するために使用されるトンネリングプロトコルである。したがって、様々な例示的な実施形態において、ＧＲＥパケット３００は、数あるフィールドの中でも、バージョン３１０、プロトコルタイプ３２０、キー３３０、シーケンス番号３４０、およびペイロードパケット３５０を含む。
【００３８】
ＧＲＥパケット３００は、パケットが関連付けられるＧＲＥプロトコルバージョンを指定するバージョン３１０を含む。さらに、ＧＲＥパケット３００は、ペイロードパケット３５０として、カプセル化されたパケットに関して使用される、基礎となるプロトコルを指定するプロトコルタイプ３２０を含む。
【００３９】
加えて、様々な例示的な実施形態において、ＧＲＥパケット３００は、デバイスまたはカプセル化を実行する当事者によって挿入されたフィールドであるキー３３０を含む。したがって、様々な例示的な実施形態において、パケット３００を転送するのに先立って、ＤＰＩデバイス１５０は、アプリケーション情報をキー３３０内に挿入する。したがって、デバイス、または下流でパケット３００を受信する当事者は、アプリケーション情報をキー３３０から抽出して、識別されたアプリケーションに基づいて、アプリケーション独自の処理を実行することが可能である。
【００４０】
さらに、様々な例示的な実施形態において、ＧＲＥパケット３００は、デバイス、またはカプセル化を実行する当事者によって挿入されたフィールドであるシーケンス番号３４０を含む。シーケンス番号３４０は、パケットが受信デバイスに送信されている順序を確立するために使用されることが可能である。あるいは、様々な例示的な実施形態において、パケット３００を転送するのに先立って、ＤＰＩデバイス１５０は、アプリケーション情報をシーケンス番号３４０内に挿入する。したがって、デバイス、またはパケット３００を下流で受信する当事者は、アプリケーション情報をシーケンス番号３４０から抽出して、識別されたアプリケーションに基づいて、アプリケーション独自の処理を実行することが可能である。
【００４１】
様々な例示的な実施形態において、ＧＲＥパケット３００は、カプセル化されて経路指定されたパケットを格納するペイロードパケット３５０も含む。したがって、配信ヘッダ（図示せず）内に含まれた情報は、ペイロードパケット３５０内に含まれたルーティング情報を無視すると同時に、送信元ノードから宛先ノードにパケット３００を転送するために使用される。
【００４２】
図４は、インバンドＤＰＩアプリケーション認識伝播の向上機能を実装するための方法４００の例示的な実施形態の流れ図である。例示的な方法は、ステップ４１０で始まり、ＤＰＩデバイス１５０が送信元ノードから宛先ノードに送信されたパケットを傍受、「スニッフ」、またはそうでない場合、受信するステップ４２０に進む。
【００４３】
次いで、例示的な方法４００は、ＤＰＩデバイス１５０が、パケットからのヘッダ情報を使用して、パケットに関連するフローを識別し、次いで、識別されたフローに関するＤＰＩ処理を実行するステップ４３０に進む。したがって、様々な例示的な実施形態において、ＤＰＩデバイス１５０は、そのフローに関連するアプリケーションを識別するために、１つまたは複数のパケットのＯＳＩレイヤ３から７内の情報の任意の組合せを審査する。例えば、ＤＰＩデバイス１５０は、そのフローが電子メールに関するか、ストリーミングビデオに関するか、ウェブブラウジングに関するか、ピアツーピア転送に関するか、ボイスオーバＩＰ（ＶｏＩＰ）に関するか、またはサービスプロバイダにとって関心のあるその他の当該アプリケーションに関するかを決定するために、１つもしくは複数のパケットを解析することが可能である。様々な例示的な実施形態において、ＤＰＩデバイス１５０によって実行される解析は、署名およびパターンマッチング、ステートフルモニタリング（ｓｔａｔｅｆｕｌ  ｍｏｎｉｔｏｒｉｎｇ）、挙動解析、および統計解析のうち少なくとも１つを含む。
【００４４】
ステップ４３０においてＤＰＩ処理を実行した後で、例示的な方法４００は、ＤＰＩデバイス１５０がアプリケーション情報をパケットに追加するステップ４４０に進む。したがって、様々な例示的な実施形態において、ＤＰＩデバイス１５０は、そのフローに関連するアプリケーションを識別する英数字値を追加する。より詳細には、ＤＰＩデバイス１５０は、アプリケーション識別子をＩＰヘッダ拡張または独自仕様プロトコル拡張に追加することが可能である。あるいは、ＤＰＩデバイス１５０は、アプリケーション識別子をＧＲＥパケットヘッダのキーフィールドおよびシーケンス番号フィールドのうちの少なくとも１つに追加することが可能である。様々な例示的な実施形態において、ＤＰＩデバイス１５０は、下流側デバイスがアプリケーション情報を抽出することが可能であることを条件に、アプリケーション識別子をパケット内の任意のフィールドに追加する点は明らかであろう。
【００４５】
ステップ４４０において、ＤＰＩデバイス１５０がアプリケーション情報をパケットに追加した後で、例示的な方法４００は、ＤＰＩデバイス１５０がパケットを転送するステップ４５０に進む。したがって、様々な例示的な実施形態において、ＤＰＩデバイス１５０は、パケットからルーティング情報を抽出して、抽出されたルーティング情報に基づいて、そのパケットを送信する。
【００４６】
例示的な方法４００は、次いで、下流側デバイスがアプリケーション情報を含むパケットを受信して、アプリケーション独自の処理を実行するステップ４６０に進む。様々な例示的な実施形態において、下流側デバイスは、無線ネットワークコントローラ、パケットデータサービス提供ノード、またはアプリケーション独自の処理が所望される任意のその他のネットワーク要素であり得る点は明らかであろう。したがって、様々な例示的な実施形態において、下流側デバイスは、パケットを受信して、そのパケットからアプリケーション情報を抽出し、そのアプリケーション情報に対応するアプリケーションを識別する。
【００４７】
様々な例示的な実施形態において、このアプリケーション独自の処理は、トラフィック管理オペレーションを含む。したがって、下流側デバイスは、識別されたフロー内のパケットをどのように処理するかを決定するために、送信元ノードに配置された加入者に関連するサービスレベル契約にアクセスすることが可能である。この決定に基づいて、下流側デバイスは、そのパケットが先に進むことを許可するかどうか、または代わりに、そのパケットはドロップされるべきかどうかを含めて、そのパケットをどのように処理するかを決定することが可能である。あるいは、下流側デバイスは、差別化サービスコードポイント（Ｄｉｆｆｅｒｅｎｔｉａｔｅｄ  Ｓｅｒｖｉｃｅｓ  Ｃｏｄｅ  Ｐｏｉｎｔ）（ＤＳＣＰ）など、サービスの品質（ＱｏＳ）マーキングをそれらのパケットと関連付けることが可能である。
【００４８】
例えば、下流側デバイスは、そのフローがストリーミングビデオに対応し、送信元ノードに配置された加入者が、かかる転送に関する高いサービスの品質を受けるために追加料金を支払っていることを決定することが可能である。それに応じて、下流側デバイスは、そのパケットに高い優先度が与えられるべきであることを示すために、より高いＤＳＣＰ値を用いて、そのパケットにマーキングすることが可能である。あるいは、下流側デバイスは、そのフローがピアツーピア転送に関連し、加入者が基本的なレベルのサービスに関してだけ支払っていることを決定することが可能である。それに応じて、下流側デバイスは、そのパケットにより低い優先度が与えられるべきであることを示す値を用いて、フロー内のパケットにマーキングすることが可能である。
【００４９】
パケットのマーキングおよびドロップを参照して説明されているが、下流側デバイスは、任意のアプリケーション独自の処理を実行することが可能である点は明らかであろう。したがって、下流側デバイスは、例えば、パケットをドロップすること、統計を収集すること、および料金請求を管理することが可能である。ステップ４６０においてアプリケーション独自の処理を実行した後で、例示的な方法４００は、例示的な方法４００が終了するステップ４７０に進む。
【００５０】
前述の説明によれば、様々な例示的な実施形態は、フローを識別および解析して、アプリケーション情報をパケットに追加するＤＰＩデバイスを含む。さらに、様々な例示的な実施形態において、ＤＰＩデバイスは、アプリケーション情報と共に、そのパケットを下流側ノードに転送する。したがって、様々な例示的な実施形態において、下流側デバイスは、下流側デバイスが追加のＤＰＩ処理を実行する必要なしに、ハイレベルのアプリケーション独自のサービスを提供するために、アプリケーションを識別することが可能である。
【００５１】
様々な例示的な実施形態は、そのいくつかの例示的な態様を特に参照して詳細に説明されているが、本発明は、その他の実施形態が可能であり、その詳細は、様々な明白な点で修正が可能であることを理解されたい。当業者に容易に明らかであるように、本発明の趣旨および範囲に依然としてとどまりながら、改変および修正が実施されることが可能である。したがって、前述の開示、説明、および図面は、例示のためだけであり、特許請求の範囲によってだけ画定される本発明を決して限定しない。
【図１】
2011515939.tif 000003
【図２】
2011515939.tif 000004
【図３】
2011515939.tif 000005
【図４】
2011515939.tif 000006
【国際調査報告】
2011515939.tif 000007
2011515939.tif 000008
2011515939.tif 000009