"データ通信システムによるデータを通信する方法であって、異なるタイプのデータに異なる優先レベルを割り当てることによって、前記データを優先順位付けするステップであって、前記優先順位付けは、データ通信システムのネットワーク通信プロトコルスタックのトランスポートレイヤにおいてと、前記データ通信システムのネットワーク通信プロトコルスタックのトランスポートレイヤの上位においての少なくとも一方において実行される、前記優先順位付けするステップと、前記ネットワークの帯域幅状態を決定するため、ネットワークを解析するステップと、前記ネットワークの帯域幅状態が第1ネットワーク状態タイプを有すると判断されると、前記異なる優先レベルの第1優先レベルが割り当てられた前記データの第1部分のみを前記ネットワークを介し選択的に通信するステップと、前記ネットワークの帯域幅状態が前記第1ネットワーク状態タイプと異なる第2ネットワーク状態タイプを有すると判断されるときに限って、前記第1優先レベルと異なる第2優先レベルが割り当てられた前記データの第2部分を前記ネットワークを介し選択的に通信するステップと、を有する方法。前記データの優先順位は、前記データのタイプ、カテゴリ及びグループの1以上に少なくとも部分的に基づく、請求項1記載の方法。前記ネットワークの帯域幅状態に1以上の利用可能な優先順位を関連付けるステップをさらに有する、請求項1記載の方法。前記優先順位付けするステップは、前記データのメッセージコンテンツを決定し、該メッセージコンテンツに少なくとも部分的に基づき、前記データに優先順位を割り当てるステップを含む、請求項1記載の方法。前記優先順位付けするステップは、ユーザにより規定されたルールに少なくとも部分的に基づき、前記データに優先順位を割り当てるステップを含む、請求項1記載の方法。前記解析するステップは、前記ネットワークの帯域幅、遅延及びジッタの1以上に少なくとも部分的に基づき、前記ネットワークの帯域幅状態を決定するステップを含む、請求項1記載の方法。前記解析するステップは、ユーザにより規定されたルールに少なくとも部分的に基づき、前記ネットワークの帯域幅状態を決定するステップを含む、請求項1記載の方法。システムのトランスポートレイヤにおいて又は前記トランスポートレイヤの上位において実現される、データを通信するシステムであって、異なるタイプのデータに異なる優先レベルを割り当てるよう構成されるデータ優先順位付けコンポーネントであって、前記優先順位付けは、データ通信システムのネットワーク通信プロトコルスタックのトランスポートレイヤにおいてと、前記データ通信システムのネットワーク通信プロトコルスタックのトランスポートレイヤの上位においての少なくとも一方において実行される、前記データ優先順位付けコンポーネントと、ネットワークの帯域幅状態を決定するよう構成されるネットワーク解析コンポーネントと、a前記ネットワークの帯域幅状態が第1ネットワーク状態タイプを有すると判断されると、前記異なる優先レベルの第1優先レベルが割り当てられた前記データの第1部分のみを前記ネットワークを介し選択的に通信し、b前記ネットワークの帯域幅状態が前記第1ネットワーク状態タイプと異なる第2ネットワーク状態タイプを有すると判断されるときに限って、前記第1優先レベルと異なる第2優先レベルが割り当てられた前記データの第2部分を前記ネットワークを介し選択的に通信するよう構成されるデータ通信コンポーネントと、を有するシステム。前記データの優先順位に少なくとも部分的に基づき、他のデータに関して前記データを整理するよう構成されるデータ整理コンポーネントをさらに有する、請求項8記載のシステム。従って、戦術データネットワークにおいてQoSを提供するシステム及び方法が必要とされる。戦術データネットワークのエッジ上でQoSを提供するシステム及び方法が必要とされる。さらに、戦術データネットワークにおける適応的でコンフィギュラブルなQoSシステム及び方法が必要とされる。本発明の特定の実施例は、データを通信する方法であって、データに優先順位を割り当てることによって、前記データを優先順位付けするステップと、前記ネットワークの状態を決定するため、ネットワークを解析するステップと、前記データの優先順位と前記ネットワークの状態とに少なくとも部分的に基づき、前記データを通信するステップとを有する方法を提供する。本発明の特定の実施例は、データ優先順位付けコンポーネントと、ネットワーク解析コンポーネントと、データ通信コンポーネントとを有するデータを通信するシステムを提供する。データ優先順位付けコンポーネントは、データに優先順位を割り当てるよう構成される。ネットワーク解析コンポーネントは、ネットワークの状態を決定するよう構成される。データ通信コンポーネントは、前記データの優先順位と前記ネットワークの状態とに少なくとも部分的に基づき、前記データを通信するよう構成される。本発明の特定の実施例は、コンピュータ上で実行される命令セットを含むコンピュータ可読媒体を提供し、命令セットは、データ優先順位付けルーチンと、ネットワーク解析ルーチンと、データ通信ルーチンとを有する。データ優先順位付けルーチンは、データに優先順位を割り当てるよう構成される。ネットワーク解析ルーチンは、ネットワークの状態を決定するよう構成される。データ通信ルーチンは、前記データの優先順位と前記ネットワークの状態とに少なくとも部分的に基づき、前記データを通信するよう構成される。本発明によると、戦術データネットワークにおいてQoSを提供するシステム及び方法、戦術データネットワークのエッジ上でQoSを提供するシステム及び方法、並びに戦術データネットワークにおける適応的でコンフィギュラブルなQoSシステム及び方法を提供することができる。上記概要と、本発明の特定の実施例の以下の詳細な説明は、添付した図面と共に参照されるときより良好に理解されるであろう。本発明を説明するため、特定の実施例が図面に示される。しかしながら、本発明は添付した図面に示される構成及び装置に限定されるものでないことが理解されるべきである。図1は、本発明の実施例により動作する戦術通信ネットワーク環境100を示す。ネットワーク環境100は、複数の通信ノード110と、1以上のネットワーク120と、ノード及びネットワークを接続する1以上のリンク130と、ネットワーク環境100の各コンポーネントの通信を実現する1以上の通信システム150とを有する。以下の説明は、複数のネットワーク120と複数のリンク130とを有するネットワーク環境100を想定するが、他の環境もまた可能であり想定されることが理解されるべきである。通信ノード110は、無線、送信機、衛星、受信機、ワークステーション、サーバ及び/又は他の計算若しくは処理装置などであり、及び/又はそれらを含むかもしれない。ネットワーク120は、例えば、ノード110の間でデータを送信するハードウェア及び/又はソフトウェアであるかもしれない。ネットワーク120は、例えば、1以上のノード110を含むかもしれない。リンク130は、ノード110及び/又はネットワーク120の間の送信を可能にする有線及び/又は無線接続であるかもしれない。通信システム150は、例えば、ノード110、ネットワーク120及びリンク130の間のデータ送信を実現するため使用されるソフトウェア、ファームウェア及び/又はハードウェアを含むかもしれない。図1に示されるように、通信システム150は、ノード110、ネットワーク120及び/又はリンク130に関して実現されてもよい。特定の実施例では、すべてのノード110は通信システム150を含む。特定の実施例では、1以上のノード110は通信システム150を含む。特定の実施例では、1以上のノード110は通信システム150を含まないかもしれない。通信システム150は、ネットワーク環境100などの戦術通信ネットワーク上の通信を確保するのに役立つためのデータの動的管理を提供する。図2に示されるように、特定の実施例では、システム150は、OSIの7レイヤプロトコルモデルにおけるトランスポートレイヤの一部として及び/又は上位において動作する。システム150は、トランスポートレイヤなどにわたされる戦術ネットワークにおける優先順位の高いデータに優先度を提供するかもしれない。システム150は、LAN、WANWideAreaNetworkなどの単一ネットワークにおける通信又は複数のネットワーク間の通信を実現するのに利用されるかもしれない。図3において、マルチネットワークシステムの一例が示される。システム150は、例えば、追加的な帯域幅をネットワークに追加するのでなく、利用可能な帯域幅を管理するのに利用されるかもしれない。特定の実施例では、システム150は、各種実施例においてハードウェアコンポーネントとソフトウェアコンポーネントの両方を有してもよいが、ソフトウェアシステムである。システム150は、例えば、ネットワークハードウェアに依存しないかもしれない。すなわち、システム150は、各種ハードウェア及びソフトウェアプラットフォーム上で機能するよう構成されるかもしれない。特定の実施例では、システム150は、ネットワークの内部のノード上でなく、ネットワークのエッジ上で動作する。しかしながら、システム150は、ネットワークのチョークポイントchokepointなど、ネットワークの内部においても動作可能である。システム150は、ルール及びモード又はプロファイルを利用して、ネットワークにおける利用可能な帯域幅の最適化、情報優先順位の設定及びデータリンクの管理などのスループット管理機能を実行するかもしれない。帯域幅の最適化とは、ここに記載される技術が1以上のネットワークにおいてデータを通信するための帯域幅の使用の効率性を高めるのに利用可能であることを意味する。帯域幅使用の最適化は、機能的に冗長なメッセージの削除、メッセージストリーム管理若しくはシーケンス化、及びメッセージ圧縮などを含むかもしれない。情報優先順位の設定は、IPベース技術より詳細な単位によりメッセージタイプを区別すること、選択されたルールベースシーケンス化アルゴリズムを介しメッセージをデータストリームにシーケンス化することなどを含むかもしれない。データリンク管理は、例えば、ルール、モード及び/又はデータトランスポートの変化に影響を与えるネットワーク測定結果のルールベースの解析を含むかもしれない。モード又はプロファイルは、特定のネットワーク健全性状態の動作要求に関するルールセットを含むかもしれない。システム150は、無線による新たなモードの定義及びスイッチを含む、動的なモードの無線on-the-flyリコンフィギュレーション又は再設定を提供する。通信システム150は、不安定な帯域幅制限のあるネットワークなどにおけるサービスの優先順位及びグレードの変更に適応するよう構成されるかもしれない。システム150は、ネットワークにおけるレスポンス能力の向上と通信遅延の低下に役立つように、改良されたデータフローのための情報を管理するよう構成されるかもしれない。さらに、システム150は、通信の利用性、生存性及び信頼性を向上させるようアップグレード可能かつスケーラブルなフレキシブルアーキテクチャを介し相互互換性を提供するかもしれない。システム150は、所定の予測可能なシステムリソース及び帯域幅などを利用しながら、動的に変化する環境に自律的に適応可能なデータ通信アーキテクチャをサポートする。特定の実施例では、システム150は、ネットワークを利用するアプリケーションに対する透過性を維持しながら、帯域幅制限された戦術通信ネットワークにスループット管理を提供する。システム150は、低減された複雑さにより複数のユーザ及び環境におけるスループット管理をネットワークに提供する。上述されるように、特定の実施例では、システム150は、OSIの7レイヤモデルの第4レイヤトランスポートレイヤにある及び/又はの上位にあるホストノード上で実行され、特殊なネットワークハードウェアを必要としない。システム150は、第4レイヤインタフェースに透過的に動作するかもしれない。すなわち、アプリケーションは、トランスポートレイヤの標準的なインタフェースを利用し、システム150の動作に気付かないかもしれない。例えば、アプリケーションがソケットをオープンするとき、システム150は、プロトコルスタックの当該ポイントにおいてデータをフィルタリングするかもしれない。システム150は、アプリケーションがシステム150に固有のインタフェースでなくネットワーク上の通信装置におけるオペレーティングシステムにより提供されるTCP/IPソケットインタフェースなどを利用することを可能にすることによって、透過性を実現する。システム150のルールは、XMLeXtensibleMarkupLanguageにより記述されるか、及び/又はカスタムDLLDynamicLinkLibraryを介し提供されるかもしれない。特定の実施例では、システム150は、ネットワークのエッジ上でQoSを提供する。システムのQoS能力は、ネットワークのエッジ上でコンテンツベース、ルールベースデータ優先順位付けを提供する。優先順位付けは、例えば、区別及び/又はシーケンス化を含むかもしれない。システム150は、例えば、ユーザコンフィギュラブルな区別ルールに基づきメッセージをキューに区別するかもしれない。これらのメッセージは、ユーザにより設定されたシーケンス化ルールスタベーション、ラウンドロビン、相対頻度などにより規定される順序によりデータストリームにシーケンス化される。エッジ上のQoSを利用して、従来のQoSアプローチにより区別できないデータメッセージは、メッセージコンテンツなどに基づく区別されてもよい。ルールは、例えば、XMLにより実現されてもよい。特定の実施例では、XMLを超える能力を収容し、及び/又は極端に低い遅延要求をサポートするため、システム150は、例えば、DLLにカスタムコードを設けることを可能にする。ネットワーク上の入力及び/又は出力データは、システム150を介しカスタマイズされるかもしれない。優先順位付けは、クライアントアプリケーションを大容量低優先順位データなどからプロテクトする。システム150は、アプリケーションが特定の動作シナリオ又は制約をサポートするようデータを受信することを確実にするのに供する。特定の実施例では、ホストが帯域幅制限のある戦術ネットワークとのインタフェースとしてのルータを有するLANに接続されると、システムは、プロキシによりQoSとして知られるコンフィギュレーションにより動作するかもしれない。このコンフィギュレーションでは、ローカルなLAN宛のパケットはシステムをバイパスし、LANにすぐに向かう。システムは、ネットワークのエッジ上のQoSを帯域幅制限のある戦術リンクに向かうパケットに適用する。特定の実施例では、システム150は、命令されたプロファイルスイッチングを介し複数の動作シナリオ及び/又はネットワーク環境の動的サポートを提供する。プロファイルは、ユーザ又はシステムが指名されたプロファイルに変更を加えることを可能にする名称又は他の識別子を含むかもしれない。プロファイルはまた、例えば、機能冗長性ルール識別子、区別ルール識別子、アーカイブインタフェース識別子、シーケンス化ルール識別子、送信前インタフェース識別子、送信後インタフェース識別子、トランスポート識別子、及び/又は他の識別子などの1以上の識別子を含むかもしれない。機能冗長性ルール識別子は、古いデータ又は実質的に同様のデータなどから機能冗長性を検出するルールを規定する。区別ルール識別子は、例えば、処理のためメッセージをキューに区別するルールを規定する。アーカイブインタフェース識別子は、例えば、アーカイブシステムとのインタフェースを規定する。シーケンス化ルール識別子は、キューフロントのサンプルと、データストリームのデータのシーケンス化とを制御するシーケンス化アルゴリズムを特定する。送信前インタフェース識別子は、例えば、暗号化及び圧縮などの特別な処理を提供する送信前処理のためのインタフェースを特定する。送信後インタフェース識別子は、例えば、解読及び伸張などの処理を提供する送信後処理のためのインタフェースを特定する。トランスポート識別子は、選択されたトランスポートのネットワークインタフェースを規定する。プロファイルはまた、例えば、キューサイジング情報などの他の情報を含むかもしれない。キューサイジング情報は、例えば、各キューに専用のメモリ及びセカンダリストレージの大きさとキューの個数を特定する。特定の実施例では、システム150は、帯域幅を最適化するためのルールベースアプローチを提供する。例えば、システム150は、各メッセージに優先順位とデータストリーム上の適切な相対頻度とを割当てるよう、メッセージをメッセージキューに区別するためのキュー選択ルールを利用するかもしれない。システム150は、機能冗長性ルールを利用して、機能的に冗長なメッセージを管理するかもしれない。メッセージは、それが例えば、ネットワーク上でまだ送信されていない前のメッセージと十分異なるものでない場合ルールにより規定されるように、機能的に冗長である。すなわち、すでに送信がスケジューリングされたが、まだ送信されていない古いメッセージと十分異なるものでない新たなメッセージが提供された場合、この新たなメッセージは排除されてもよい。なぜなら、古いメッセージが機能的に等価な情報を搬送し、さらにキューにおいて前にあるためである。さらに、機能冗長性は、古いメッセージが送信される前に到着した新しいメッセージと実質的に重複したメッセージを含むかもしれない。例えば、ノードは、フォルトトレラントfaulttolerantであるため、2つの異なるパスにより送信されたメッセージなど、基礎となるネットワークの特性により特定のメッセージの同一のコピーを受信するかもしれない。他の例として、新たなメッセージは、まだ送信されていない古いメッセージに優先するデータを含むかもしれない。この状況では、システム150は、古いメッセージを排除し、新たなメッセージのみを送信するようにしてもよい。システム150はまた、データストリームの優先順位ベースメッセージシーケンスを決定するための優先順位シーケンス化ルールを含むようにしてもよい。さらに、システム150は、圧縮及び/又は暗号化などの送信前及び送信後の特別な処理を提供するため、送信処理ルールを有してもよい。特定の実施例では、データ完全性及び信頼性を保護するのに役立つように、フォルトトレラント機能を提供する。例えば、システム150は、ユーザにより規定されたキュー選択ルールを利用して、メッセージをキューに区別するようにしてもよい。キューは、例えば、ユーザにより規定されるコンフィギュレーションに従ってサイジングされる。コンフィギュレーションは、例えば、キューが使用するメモリの最大量を規定する。さらに、コンフィギュレーションは、ユーザがキューのオーバフローのために利用可能なセカンダリストレージの位置及び大きさを規定することを可能にするかもしれない。キューのメモリが充填された後、メッセージはセカンダリストレージにキュー処理されるかもしれない。セカンダリストレージがまたフルになると、システム150は、キューの最も古いメッセージを削除し、エラーメッセージを記録し、最も新しいメッセージをキュー処理する。この動作モードに対してアーカイブ処理が可能である場合、キュー解除されたメッセージは、当該メッセージがネットワーク上で送信されなかったという表示と共にアーカイブ化されてもよい。システム150のキューのためのメモリ及びセカンダリストレージは、例えば、特定のアプリケーションについてリンク毎に設定されてもよい。ネットワーク利用可能期間の間の時間が長いことは、ネットワークの停止をサポートするためより大きなメモリ及びセカンダリストレージとなることに対応するかもしれない。システム150は、例えば、キューが適切にサイジングされ、停止時間が安定状態をアーカイブし、最終的なキューのオーバフローを回避するのに役立つよう十分なものとなることを保証するのに役立つようなサイジングを特定するのに供するためなどのネットワークモデリング及びシミュレーションアプリケーションと統合されてもよい。さらに、特定の実施例では、システム150は、入力シェイピングと出力ポリシングデータを測定する機能を提供する。ポリシングとシェイピング機能は、ネットワークにおけるタイミングミスマッチに対処するのに役立つ。シェイピングは、ネットワークバッファが低優先順位データの後に高優先順位データがキューされることによるフラッディングを防ぐのに役立つ。ポリシングは、アプリケーションデータ利用者が低優先順位データにより圧倒されることを防ぐのに役立つ。ポリシングとシェイピングは、有効リンクスピードとリンク比率という2つのパラメータにより決定される。システム150は、例えば、リンク比率と乗算された有効リンクスピードより大きくないデータストリームを構成するかもしれない。これらのパラメータは、ネットワークの変更に従って動的に変更されるかもしれない。システムはまた、データ測定に関するアプリケーションレベルの結果をサポートするため、検出されたリンクスピードへのアクセスを提供するかもしれない。システム150により提供される情報は、所与のネットワークシナリオに対して何れのリンクスピードが適切であるか決定するのに役立つ他のネットワーク動作情報と組み合わされてもよい。図4は、本発明の実施例による図1のデータ通信システム150及び/又は図5のデータ通信システム550などのデータ通信システムにより利用されるデータ優先順位及びネットワーク状態のいくつかの例を示す。これらの例は低待機幅無線ネットワークを介した軍用機の間のデータ通信に関して提供されるが、当該データ通信システムは、データ通信ネットワーク120及び/若しくは520などの広範なデータ通信ネットワーク、並びに/又はデータ通信環境100及び/若しくは500などの広範なデータ通信環境において機能するかもしれない。データには、優先順位が割り当てられ、及び/又は関連付けされるかもしれない。例えば、データ優先順位は、図4に示されるように、高い、やや高い、普通、やや低い又は低いを含むかもしれない。他の例として、データ優先順位は、図4に示されるように、KEEPPILOTALIVE、KILLENEMY又はINFORMATIONALを含むかもしれない。データ優先順位は、少なくとも部分的にはデータのタイプ、カテゴリ及び/又はグループに基づくかもしれない。例えば、データのタイプは、図4に示されるように、位置データ、近くの脅威に対するエミッタデータ、次の発射データ、トップテン発射リストデータ、数百マイル離れた脅威に対する発射データ、衛星通信からの状況認識SAデータSATCOM、一般的な状態データを含むかもしれない。さらに、データは、図4に示されるように、KEEPPILOTALIVE、KILLENEMY又はINFORMATIONALなどの各カテゴリにグループ化されるかもしれない。例えば、位置データや近くの脅威に対するエミッタデータなどのKEEPPILOTALIVEデータは、パイロットの健康と安全に関するものであるかもしれない。他の例として、次の発射データ、トップテン発射リストデータ及び数百マイル離れた脅威に対する発射データなどのKILLENEMYは、戦闘システムに関するものであるかもしれない。他の例として、SATCOMからのSAデータや一般状態データなどのINFORMATIONALデータは、非戦闘システムに関するものであるかもしれない。上述されるように、データタイプ、カテゴリ及び/又はグループは、データ優先順位と同一及び/又は類似しているかもしれない。例えば、位置データや近くの脅威に対するエミッタデータなどのKEEPPILOTALIVEデータは、KEEPPILOTALIVEの優先順位に関連付けされ、それは、KILLENEMYに係る次の発射データ、トップテン発射リストデータ及び数百マイル離れた脅威に対する発射データなどのKILLENEMYデータより重要である。他の例として、次の発射データ、トップテン発射リストデータ及び数百マイル離れた脅威に対する発射データなどのKILLENEMYデータは、KILLENEMYの優先順位に関連付けされ、それは、INFORMATIONALの優先順位に係るSATCOMからのSAデータや一般状態データなどのINFORMATIONALデータより重要である。ネットワークについて、状態が決定されるかもしれない。例えば、ネットワーク状態は、BANDWIDTHCHALLENGED、BANDWIDTHCONSTRAINED、DESIGNPOINTBANDWIDTH又はMAXIMUMBANDWIDTHを含むかもしれない。これらの用語は、列記される順序により、観察されたパフォーマンスの増加を示し、障害のないリンクに関する損傷量の減少、機能の低いリンクの置換による不足量の減少、及び/又は機能要求に関する不足量の減少としてみなすことができる。ネットワーク状態は、ネットワークの動作状態に関するかもしれない。例えば、MAXIMUMBANDWIDTHのネットワーク状態は、帯域幅のすべてがデータ伝送に利用可能であることを示すかもしれない。他の例として、DESIGNPOINTBANDWIDTHのネットワーク状態は、一部の帯域幅が利用されているが、正常に機能するのに必要とされる量の帯域幅がまだ利用可能であることを示すかもしれない。他の例として、BANDWIDTHCHALLENGEDは、設計よりシステムにより使用されている帯域幅が大きいことを示すかもしれない。この点で、問題が生じ始めるかもしれない。他の例として、BANDWIDTHCONSTRAINEDは、帯域幅の大部分が使用されており、ほとんど又は全く帯域幅が残っていないことを示すかもしれない。この点で、BANDWIDTHCONSTRAINEDネットワークを使用するシステムは、破綻し始める。これらの例は帯域幅に関して与えられるが、ネットワーク状態は、遅延及び/又はジッタなどの広範な他のネットワーク特性を含むかもしれない。ネットワーク状態は、少なくとも部分的にネットワーク環境に基づき変化するかもしれない。例えば、帯域幅は、高度、距離及び/又は天候により影響を受けるかもしれない。航空機が接近し、空がクリアである場合、例えば、ネットワーク状態は、MAXIMUMBANDWIDTHかDESIGNPOINTBANDWIDTHであるかもしれない。他方、航空機が離れていて、空が曇りである場合、例えば、ネットワーク状態は、BANDWIDTHCONSTRAINED又はBANDWIDTHCHALLENGEDであるかもしれない。データは、少なくとも部分的にデータ優先順位及び/又はネットワーク状態に基づきネットワークを介し通信されるかもしれない。例えば、ネットワークの状態がBANDWIDTHCHALLENGEDである場合、位置データや近くの脅威に対するエミッタデータなどの高い優先順位に係るデータのみがネットワークを介し通信されるかもしれない。他の例として、ネットワークの状態がBANDWIDTHCONSTRAINEDである場合、次の発射データなどのやや高い及びトップテン発射リストデータなどの普通の優先順位に係るデータがまた、ネットワークを介し通信されるかもしれない。すなわち、高い、やや高い及び普通の優先順位に係るデータは、ネットワーク状態が図4に示されるようにBANDWIDTHCONSTRAINEDである場合、ネットワークを介し通信されるかもしれない。特定の実施例では、データはまた、例えば、高い、その後にやや高い、その後に普通などの優先順位により通信されるかもしれない。他の例として、ネットワークの状態がDESIGNPOINTBANDWIDTHである場合、数百マイル離れた脅威に対するエミッタデータやSATCOMからのSAデータなどのやや低い優先順位を有するデータがまた、ネットワークを介し通信されるかもしれない。すなわち、高い、やや高い、普通及びやや低いの優先順位に係るデータは、図4に示されるように、ネットワーク状態がDESIGNPOINTBANDWIDTHである場合、ネットワークを介し通信されるかもしれない。特定の実施例では、データはまた、例えば、高い、その後にやや高い、その後に普通、その後にやや低いなどの優先順位により通信されるかもしれない。他の例として、ネットワークの状態がMAXIMUMBANDWIDTHである場合、一般状態データなどの低い優先順位に係るデータがまた、ネットワークを介し通信されるかもしれない。すなわち、高い、やや高い、普通、やや低い及び低いの優先順位に係るデータは、図4に示されるように、ネットワーク状態がMAXIMUMBANDWIDTHである場合、ネットワークを介し通信されるかもしれない。特定の実施例では、データは、例えば、高い、その後にやや高い、その後に普通、その後にやや低い、その後に低いなどの優先順位により通信されるかもしれない。図5は、本発明の実施例によるデータ通信環境500内で動作するデータ通信システム550を示す。図1のデータ通信環境100などのデータ通信環境500は、ノード110などの1以上のノード510と、ノード510、ネットワーク520及びデータ通信システム150などのデータ通信システム550を接続し、データ通信環境500のコンポーネントを介した通信を実現するリンク130などの1以上のリンク530とを含む。特定の実施例では、データ通信システム550は、データを受信、格納、整理、優先順位付け、処理、送信及び/又は通信するよう構成される。データ通信システム550により受信、格納、整理、優先順位付け、処理、送信及び/又は通信されるデータは、例えば、パケット、セル、フレーム及び/又はストリームなどのデータブロックを含むかもしれない。例えば、データ通信システム550は、ノード510からデータのパケットを受信するかもしれない。他の例として、データ通信システム550は、ノード510からデータストリームを処理するかもしれない。データ通信システム550は、データ優先順位付けコンポーネント560と、ネットワーク解析コンポーネント570と、データ通信コンポーネント580とを有する。特定の実施例では、データ優先順位付けコンポーネント560は、区別コンポーネント562と、シーケンス化コンポーネント566と、データ整理コンポーネント568とを有する。区別コンポーネント562は、図1に関して説明されたように、区別ルール識別子563と、機能冗長性ルールセット565とを有するかもしれない。シーケンス化コンポーネント566は、図1に関して説明されたように、シーケンス化ルール識別子567を有するかもしれない。特定の実施例では、ネットワーク解析コンポーネント570は、ネットワーク解析ルール識別子572と、ネットワーク解析データ574とを有するかもしれない。データ優先順位付けコンポーネント560は、ネットワーク520を介した通信についてデータを優先順位付けする。より詳細には、データ優先順位付けコンポーネント560は、少なくとも部分的に区別、シーケンス化及び/又は機能冗長性などの優先順位付けルール及び/又はアルゴリズムに基づきデータを優先順位付けするかもしれない。例えば、図4に示されるように、位置データと近くの脅威に対するエミッタデータは高い優先順位に係り、次の発射データはやや高い優先順位に係り、トップテン発射リストデータは普通の優先順位に係り、数百マイル離れた脅威に対するエミッタデータとSATCOMからのSAデータはやや低い優先順位に係り、一般状態データは低い優先順位に係るかもしれない。特定の実施例では、データの優先順位は、少なくとも部分的にはメッセージコンテンツに基づくかもしれない。例えば、データ優先順位は、少なくとも部分的には、ビデオ、オーディオ、遠隔測定データ及び/又は位置データなどのデータのタイプに基づくかもしれない。他の例として、データ優先順位は、少なくとも部分的には、送信アプリケーション及び/又は送信ユーザに基づくかもしれない。例えば、司令官からの通信は、より下位の階級の将校からの通信より高い優先順位が割当てられるかもしれない。特定の実施例では、データの優先順位は、少なくとも部分的にはソースアドレス及び/又はトランスポートプロトコルなどのデータに係る及び/又は含まれるプロトコル情報に基づく。プロトコル情報は、例えば、上述されたプロトコル情報と同様のものであってもよい。例えば、データ通信システム550は、データのブロックのソースアドレスに基づきデータのブロックの優先順位を決定するかもしれない。他の例では、データ通信システム550は、データのブロックを通信するのに使用されるトランスポートプロトコルに基づき、データのブロックの優先順位を決定するかもしれない。特定の実施例では、データ優先順位付けコンポーネント560は、後述される区別コンポーネント562と、シーケンス化コンポーネント566と、データ整理コンポーネント568とを有するかもしれない。区別コンポーネント562は、データを区別する。特定の実施例では、区別コンポーネント562は、少なくとも部分的に区別ルール識別子563に基づきデータを区別するかもしれない。特定の実施例では、区別コンポーネント562は、ネットワーク520を介した通信のため、データをデータ整理コンポーネント568に追加するかもしれない。例えば、区別コンポーネント562は、図1に関して上述されたように、少なくとも部分的には区別ルール識別子563に基づきデータ整理コンポーネント568にデータを付加するかもしれない。特定の実施例では、区別コンポーネント562は、上述されるように、少なくとも部分的にはメッセージコンテンツ及び/又はプロトコル情報に基づきデータを区別するかもしれない。区別ルール識別子563は、図1に関して上述されるように、キュー選択などの1以上の区別ルール及び/又はアルゴリズムを特定する。特定の実施例では、区別ルール及び/又はアルゴリズムは、ユーザにより規定されてもよい。特定の実施例では、区別ルール及び/又はアルゴリズムは、図1に関して上述されるように、XMLにより記述されてもよく、又は1以上のDLLに与えられてもよい。特定の実施例では、区別コンポーネント562は、データ整理コンポーネント568からデータを削除及び/又は保留するかもしれない。例えば、区別コンポーネント562は、図1に関して上述されたように、少なくとも部分的に機能冗長性ルール識別子565に基づき、データ整理コンポーネント568からデータを削除するかもしれない。機能冗長性ルール識別子565は、図1に関して上述されたように、1以上の機能冗長性ルール及び/又はアルゴリズムを特定する。特定の実施例では、機能冗長性ルール及び/又はアルゴリズムは、ユーザにより規定されてもよい。特定の実施例では、機能冗長性ルール及び/又はアルゴリズムは、図1に関して上述されるように、XMLにより記述されてもよく、又は1以上のDLLに与えられてもよい。シーケンス化コンポーネント566は、データをシーケンス化する。特定の実施例では、シーケンス化コンポーネント566は、少なくとも部分的にシーケンスルール識別子567に基づきデータをシーケンス化するかもしれない。特定の実施例では、シーケンス化コンポーネント566は、ネットワーク520を介した通信のため、データ整理コンポーネント568からデータを選択及び/又は削除するかもしれない。例えば、シーケンス化コンポーネント566は、図1に関して上述されるように、少なくとも部分的にシーケンス化ルール識別子567に基づきデータ整理コンポーネント568からデータを削除するかもしれない。シーケンス化ルール識別子567は、図1に関して説明されたように、スタベーション、ラウンドロビン及び相対頻度などの1以上のシーケンス化ルール及び/又はアルゴリズムを特定する。特定の実施例では、シーケンス化ルール及び/又はアルゴリズムは、ユーザにより規定されてもよい。特定の実施例では、シーケンス化ルール及び/又はアルゴリズムは、図1に関して上述されるように、XMLにより記述されてもよく、又は1以上のDLLに与えられてもよい。データ整理コンポーネント568は、データを格納及び/又は整理する。特定の実施例では、データ整理コンポーネント568は、KEEPPILOTALIVE、KILLENEMY及びINFORMATIONALなどの優先順位に少なくとも部分的に基づき、データを格納及び/又は整理するかもしれない。データ整理コンポーネント568は、例えば、Q1,Q2,Q3,Q4及びQ5などの1以上のキューを有するかもしれない。例えば、位置データや近くの脅威に対するエミッタデータなどの高い優先順位に係るデータはQ1に格納され、次の発射データなどのやや高い優先順位に係るデータはQ2に格納され、トップテン発射リストデータなどの普通の優先順位に係るデータはQ3に格納され、数百マイル離れた脅威に対するエミッタデータやSATCOMからのSAデータなどのやや低い優先順位に係るデータはQ4に格納され、一般状態データなどの低い優先順位に係るデータはQ5に格納されるかもしれない。あるいは、データ整理コンポーネント568は、例えば、1以上のツリー、テーブル、リンク付けリスト及び/又はデータを格納及び/又は整理するための他のデータ構造などを含むかもしれない。ネットワーク解析コンポーネント570は、ネットワーク520を解析する。特定の実施例では、ネットワーク解析コンポーネント570は、少なくとも部分的にネットワーク解析ルール識別子572に基づきネットワーク520を解析する。ネットワーク解析ルール識別子572は、ラウンドトリップピング、ピアツーピア解析及び/又は測定されたスループットなどの1以上のネットワーク解析ルール及び/又はアルゴリズムを特定する。例えば、ラウンドトリップピングは、ピングpingがエンドノードまで往復するのにかかる時間を計測することによって、ネットワーク遅延を解析するかもしれない。他の例として、ピアツーピア解析は、最も遅いリンクが最初及び最後であると仮定するかもしれない。この結果、ネットワークパフォーマンスは、リンクスピードデータを要求する遠くのエンドにメッセージを送信し、その後このデータと現在のリンクスピードの知識を利用して現在のスループット又はパフォーマンスを評価することによって、評価されるかもしれない。他の例として、測定されたスループットは、データのブロックをセグメント化し、ネットワークの遠くのエンドにこれらを送信するかもしれない。遠くのエンドは、それが受信する各データブロックを記録する。このタイミング情報を利用し、送信されたデータブロックのサイズを知ることによって、ネットワークするープットが経時的に近似できる。特定の実施例では、1以上のネットワーク解析ルール及び/又はアルゴリズムは、ルールドリブンな時間インターバルに関するネットワークの健全性の状態を、当該状態に対するルールドリブンな反応により決定するかもしれない。例えば、ネットワーク安定性を参照する解析ルールは、データ欠落が妥当なレベルを超えるときに出力データをオフにするかもしれず、又はラウンドトリップパケット回数が妥当なレベルを超える場合、データをより低いレートで測定するかもしれない。特定の実施例では、ネットワーク解析ルール及び/又はアルゴリズムは、ユーザにより規定されてもよい。特定の実施例では、ネットワーク解析ルール及び/又はアルゴリズムは、XMLにより記述されてもよく、又は1以上のDLLに与えられてもよい。特定の実施例では、ネットワーク解析コンポーネント570は、ネットワーク520の状態を決定する。より詳細には、ネットワーク解析コンポーネント570は、帯域幅、遅延及び/又はジッタなどのネットワーク520の1以上の特性に少なくとも部分的に基づき、ネットワーク520の状態を決定するかもしれない。例えば、図4に示されるように、ネットワーク解析コンポーネント570は、ネットワーク520の状態が、MAXIMUMBANDWIDTH、DESIGNPOINTBANDWIDTH、BANDWIDTHCONSTRAINED又はBANDWIDTHCHALLENGEDであることを決定するかもしれない。特定の実施例では、ネットワーク解析コンポーネント570は、2つのノード間のパスなど、ネットワーク520の1以上のパスを解析する。ノードAにおけるネットワーク解析コンポーネントは、ネットワーク解析データを生成する。より詳細には、ノードAにおけるネットワーク解析コンポーネント570は、ネットワーク解析ルール識別子572に少なくとも部分的に基づき、ネットワーク解析データを生成する。ネットワーク解析データは、パケット、セル、フレーム及び/又はストリームなどのデータのブロックを含むかもしれない。ノードAは、ネットワーク520を介しネットワーク解析データをノードBに送信する。ノードBは、ノードAからネットワーク解析データを受信する。ノードBにおけるネットワーク解析コンポーネント570は、ノードAからのネットワーク解析データを処理する。より詳細には、ノードBにおけるネットワーク解析コンポーネント570は、ネットワーク解析ルール識別子572に少なくとも部分的に基づき、ネットワーク解析データを処理する。例えば、ノードBにおけるネットワーク解析コンポーネントは、タイムスタンプをネットワーク解析データに追加するかもしれない。ノードBは、処理されたネットワーク解析データをネットワーク520を介しノードAに送信する。ノードAは、ノードBから処理されたネットワーク解析データを受信する。ノードAにおけるネットワーク解析コンポーネント570は、ネットワーク解析ルール識別子572に少なくとも部分的に基づきネットワーク520を解析する。特定の実施例では、ノードAにおけるネットワーク解析コンポーネント570は、帯域幅、遅延及び/又はジッタなどのネットワーク520の1以上の特性に少なくとも部分的に基づき、ネットワーク520の状態を決定するかもしれない。例えば、図4に示されるように、ネットワーク解析コンポーネント570は、ネットワーク520の状態が、MAXIMUMBANDWIDTH、DESIGNPOINTBANDWIDTH、BANDWIDTHCONSTRAINED又はBANDWIDTHCHALLENGEDであることを決定するかもしれない。特定の実施例では、ノードAにおけるネットワーク解析コンポーネント570は、ノードAからノードBまでのパスなどのネットワーク520における1以上のパスを解析する。データ通信コンポーネント580は、データを通信する。特定の実施例では、データ通信コンポーネント580は、例えば、ノード510及び/又はノード510上で実行されるアプリケーションから、ネットワーク520及び/又はノード510とネットワーク520とを接続するリンクを介し、データを受信する。特定の実施例では、データ通信コンポーネント580は、例えば、ノード510及び/又はノード510上で実行されるアプリケーションに、ネットワーク520及び/又はノード510とネットワーク520とを接続するリンクを介し、データを送信する。特定の実施例では、データ通信コンポーネント580は、データ優先順位付けコンポーネント560と通信する。より詳細には、データ通信コンポーネント580は、データを区別コンポーネント562に送信し、シーケンス化コンポーネント566からデータを受信する。あるいは、データ通信コンポーネント580は、データ整理コンポーネント568と通信するかもしれない。特定の実施例では、データ通信コンポーネント580は、ネットワーク解析コンポーネント570と通信する。特定の実施例では、データ優先順位付けコンポーネント560及び/又はネットワーク解析コンポーネント570は、データ通信コンポーネント580の1以上の機能を実行するかもしれない。特定の実施例では、データ通信コンポーネント580は、少なくとも部分的にデータ優先順位及び/又はネットワーク状態に基づきデータを通信するかもしれない。動作について、データは、データ通信システム550により受信される。より詳細には、データは、データ通信システム550のデータ通信コンポーネント580により受信されてもよい。データは、例えば、ノード510及び/又はノード510上で実行されるアプリケーションなどから受信されるかもしれない。例えば、データは、ネットワーク520を介し及び/又はノード510とネットワーク520とを接続するリンクを介し受信されるかもしれない。例えば、データは、戦術データネットワークを介し無線からデータ通信システム550において受信されるかもしれない。他の例として、データは、プロセス間通信機構により同一のシステム上で実行されるアプリケーションによりデータ通信システム550に提供されるかもしれない。上述されるように、データは、例えば、データのパケット、セル、フレーム及び/又はストリームなどのデータのブロックを含むかもしれない。特定の実施例では、データ通信システム550は、データのすべてを受信するとは限らないかもしれない。例えば、データの一部はバッファに格納され、データ通信システム550は、ヘッダ情報とバッファへのポインタしか受信しないかもしれない。他の例として、データ通信システム550は、オペレーティングシステムのプロトコルスタックにフックされ、アプリケーションがデータをトランスポートレイヤインタフェースソケットなどを介しオペレーティングシステムにわたすろ、オペレーティングシステムは、その後にデータへのアクセスをデータ通信システム550に提供するかもしれない。データは、データ通信システム550により優先順位付けされる。特定の実施例では、データは、少なくとも部分的にデータ通信順位付けルールに基づき、データ通信システム550のデータ優先順位付けコンポーネント560により優先順位付けされるかもしれない。特定の実施例では、データは、区別コンポーネント562により区別されるかもしれない。例えば、データは、少なくとも部分的にキュー選択ルール及び/又は機能冗長性ルールに基づき、データ整理コンポーネント568に追加、削除及び/又は保留されるかもしれない。他の例として、データは、少なくとも部分的に上述されるように、メッセージコンテンツ及び/又はプロトコル情報に基づき、区別コンポーネント562により区別されるかもしれない。特定の実施例では、データは、シーケンス化コンポーネント566によりシーケンス化されるかもしれない。例えば、データは、スタベーション、ラウンドロビン及び相対頻度などのシーケンス化ルールに少なくとも部分的に基づき、データ整理コンポーネント568から削除及び/又は保留されるかもしれない。特定の実施例では、データは、データ整理コンポーネント568に格納、整理及び/又は優先順位付けされるかもしれない。特定の実施例では、データ整理コンポーネント568は、キュー、ツリー、テーブル、リンク付けリスト及び/又はデータを格納、整理及び/又は優先順位付けするための他のデータ構造を含むかもしれない。特定の実施例では、データ通信システム550は、データを優先順位付けするかもしれない。特定の実施例では、データ通信システム550は、データのブロックの優先順位を決定するかもしれない。例えば、データのブロックがデータ通信システム550により受信されると、データ通信システム550のデータ優先順位付けコンポーネント560が、当該データブロックの優先順位を決定するかもしれない。他の例として、データブロックは、データ通信システム550のキューに格納されてもよく、データ優先順位付けコンポーネント560は、データブロック及び/又はキューに対して決定された優先順位に基づき、キューからデータブロックを抽出するかもしれない。特定の実施例では、データブロックの優先順位は、データブロックの優先順位は、少なくとも部分的にはメッセージコンテンツに基づくかもしれない。例えば、データ優先順位は、ビデオ、オーディオ、遠隔測定データ及び/又は位置データなどのデータのタイプに少なくとも部分的に基づくかもしれない。他の例として、データ優先順位は、送信アプリケーション及び/又は送信ユーザに少なくとも部分的に基づくかもしれない。例えば、司令官からの通信は、より下位の階級の将校からの通信より高い優先順位を割り当てられるかもしれない。特定の実施例では、データブロックの優先順位は、ソースアドレス及び/又はトランスポートプロトコルなど、データに係る及び/又は含まれるプロトコル情報に少なくとも部分的に基づくかもしれない。プロトコル情報は、例えば、上述されたプロトコル情報と同様のものであるかもしれない。例えば、データ通信システム550は、データブロックのソースアドレスに基づき、データブロックの優先順位を決定するかもしれない。他の例として、データ通信システム550は、データブロックを通信するのに使用されるトランスポートプロトコルに基づき、データブロックの優先順位を決定するかもしれない。データ通信システム550によるデータの優先順位付けは、例えば、QoSを提供するのに利用されるかもしれない。例えば、データ通信システム550は、戦術データネットワークを介し受信されるデータの優先順位を決定するかもしれない。この優先順位は、例えば、データのソースアドレスに基づくかもしれない。例えば、データ通信システム550が属する小隊と同じ小隊のメンバーの無線からのデータのソースIPアドレスには、異なる作戦エリアの異なる部隊のユニットから発信されたデータより高い優先順位が付与されるかもしれない。この優先順位は、データ通信システム550による以降の通信のため、データが配置されるべき複数のキューの何れかを決定するのに利用されるかもしれない。例えば、より高い優先順位のデータを保持するためのキューに、より高い優先順位のデータが配置され、次に通信すべきデータを決定するのに、データ通信システム550は、このより高い優先順位のキューをまず参照するかもしれない。データは、少なくとも部分的に1以上のルールに基づき優先順位付けされるかもしれない。上述されるように、ルールはユーザにより規定されるかもしれない。特定の実施例では、ルールは、XMLにより記述されてもよく、及び/又はカスタムDLLを介し提供されてもよい。ルールは、例えば、1つのプロトコルを利用して受信されたデータが他のプロトコルを利用したデータより優先されることを規定するかもしれない。例えば、命令データは、他のプロトコルを使用して送信される位置遠隔測定データに対する優先順位をルールを介し与える特定のプロトコルを利用するかもしれない。他の例として、ルールは、第1アドレス範囲からの位置遠隔測定データが第2アドレス範囲からの位置遠隔測定データに対して優先順位が与えられるかもしれないことを規定するかもしれない。第1アドレス範囲は、例えば、航空機上で実行されるデータ通信システム550を有する航空機と同じ飛行隊の他の航空機のIPアドレスを表すかもしれない。第2アドレス範囲は、例えば、異なる作戦エリアにいて、このためデータ通信システム550が実行される航空機にあまり関心のない他の航空機のIPアドレスなどを表すかもしれない。特定の実施例では、データ通信システム550はデータを排除しない。すなわち、データが低い優先順位であっても、データ通信システム550により排除されない。むしろ、データは、受信されるより上位の優先順位のデータのデータ量に潜在的には依存して、ある期間遅延されるかもしれない。特定の実施例では、データ通信システム550は、モード又はプロファイルインジケータを有する。モード又はプロファイルインジケータは、例えば、データ通信システム550の現在のモード又はプロファイルを表すかもしれない。上述されるように、データ通信システム550は、ルール及びモード又はプロファイルを利用して、ネットワーク520における利用可能な帯域幅の最適化、情報優先順位の設定及びデータリンク530の管理など、スループット管理機能を実行するかもしれない。異なるモードは、例えば、ルール、アルゴリズム、モード及び/又はデータトランスポートなどの変化に影響を与えるかもしれない。モード又はプロファイルは、特定のネットワークの健全性状態に対する動作要求に関するルールセットを含むかもしれない。データ通信システム550は、新たなモード無線on-the-flyの定義及びスイッチングなどを含むモードの動的な再設定を提供するかもしれない。特定の実施例では、データ通信システム550は、他のアプリケーションに透過である。例えば、データ通信システム550により実行される処理、整理及び/又は優先順位付けは、1以上のノード510又は他のアプリケーション若しくはデータソースに透過であるかもしれない。他の例として、データ通信システム550と同一のシステム又はデータ通信システム550に接続されるノード510上で実行されるアプリケーションは、データ通信システム550により実行されるデータの優先順位付けを認識しなくてもよい。ネットワーク520は、データ通信システム550により解析される。より詳細には、ネットワーク520は、少なくとも部分的にネットワーク解析ルールに基づき、データ通信システム550のネットワーク解析コンポーネント570により解析されてもよい。特定の実施例では、ネットワーク解析コンポーネント570は、ネットワーク520の状態を決定する。より詳細には、ネットワーク解析コンポーネント570は、少なくとも部分的に帯域幅、遅延及び/又はジッタなどのネットワーク520の1以上の特性に基づき、ネットワーク520の状態を決定するかもしれない。例えば、図4に示されるように、ネットワーク解析コンポーネント570は、ネットワーク520の状態がMAXIMUMBANDWIDTH、DESIGNPOINTBANDWIDTH、BANDWIDTHCONSTRAINED及び/又はBANDWIDTHCHALLENGEDであることを決定するかもしれない。特定の実施例では、ネットワーク解析コンポーネント570は、ノードAからノードBまでのパスなどのネットワーク520における1以上のパスを解析する。データは、データ通信システム550により通信される。より詳細には、データは、データ通信システム550のデータ通信コンポーネント580により通信されてもよい。データは、例えば、ノード510及び/又はノード510上で実行されるアプリケーションに通信されるかもしれない。データは、例えば、ネットワーク520及び/又はノード510とネットワーク520とを接続するリンクを介し通信されるかもしれない。例えば、データは、戦術データネットワークを介しデータ通信システム550により無線に通信されるかもしれない。他の例として、データは、プロセス間通信機構により同一システム上で実行されるアプリケーションにデータ通信システム550により提供されてもよい。上述されるように、データは、例えば、データのパケット、セル、フレーム及び/又はストリームなどのデータのブロックを含むかもしれない。特定の実施例では、データは、少なくも部分的にデータ優先順位及び/又はネットワーク状態に基づき、データ通信システム550により通信される。例えば、図4に示されるように、ネットワーク520の状態がBANDWIDTHCHALLENGEDである場合、位置データや近くの脅威に対するエミッタデータなどの高い優先順位に係るデータのみがネットワーク520を介し通信されるかもしれない。他の例として、ネットワーク520の状態がBANDWIDTHCONSTRAINEDである場合、次の発射データなどのやや高い優先順位と、トップテン発射リストデータなどの普通の優先順位に係るデータがまた、ネットワーク520を介し通信されるかもしれない。すなわち、高い、やや高い及び普通の優先順位に係るデータが、図4に示されるように、ネットワーク状態がBANDWIDTHCONSTRAINEDである場合、ネットワーク520を介し通信されてもよい。特定の実施例では、データはまた、例えば、高い、その後にやや高い、その後に普通などの優先順位の順序で通信されるかもしれない。他の例として、ネットワーク520の状態がDESIGNPOINTBANDWIDTHである場合、数百マイル離れた脅威に対するエミッタデータ及びSATCOMからのSAデータなどのやや低い優先順位に係るデータがまた、ネットワーク520を介し通信されるかもしれない。すなわち、高い、やや高い、普通及びやや低いの優先順位に係るデータが、図4に示されるように、ネットワーク状態がDESIGNPOINTBANDWIDTHである場合、ネットワーク520を介し通信されてもよい。特定の実施例では、データはまた、例えば、高い、その後にやや高い、その後に普通、その後にやや低いなどの優先順位の順序で通信されるかもしれない。他の例として、ネットワーク520の状態がMAXIMUMBANDWIDTHである場合、一般状態データなどの低い優先順位に係るデータがまた、ネットワーク520を介し通信されるかもしれない。すなわち、高い、やや高い、普通、やや低い及び低いの優先順位に係るデータが、図4に示されるように、ネットワーク状態がMAXIMUMBANDWIDTHである場合、ネットワーク520を介し通信されてもよい。特定の実施例では、データはまた、例えば、高い、その後にやや高い、その後に普通、その後にやや低い、その後に低いなどの優先順位の順序で通信されるかもしれない。上述されるように、データ通信システム550のコンポーネント、要素及び/又は機能は、ハードウェア、ファームウェア及び/又はソフトウェアの命令セットの各種形式により単独で又は組み合わせて実現可能である。特定の実施例は、汎用コンピュータ又は他の処理装置上で実行するため、メモリ、ハードディスク、DVD又はCDなどのコンピュータ可読媒体上の命令セットとして提供されるかもしれない。図6は、本発明の実施例によるデータ通信方法600のフロー図を示す。本方法600は、以下で詳細に説明される以下の各ステップを含む。ステップ610において、データが受信される。ステップ620において、データは優先順位付けされる。ステップ630において、ネットワークが解析される。ステップ640において、データは通信される。本方法600は、上述したシステムの要素を参照して説明されるが、他の実現形態もまた可能であることが理解されるべきである。ステップ610において、データが受信される。データは、上述されるように、図5のデータ通信システム550などにより受信されるかもしれない。他の例として、データは、ノード510及び/又はノード510上で実行されるアプリケーションから受信されるかもしれない。他の例として、データは、例えば、ネットワーク520及び/又はノード510とネットワーク520とを接続するリンクを介し受信されるかもしれない。データは、例えば、データのパケット、セル、フレーム及び/又はストリームなどのデータのブロックなどを含むかもしれない。特定の実施例では、データ通信システム550は、データのすべてを受信するとは限らないかもしれない。ステップ620において、データは優先順位付けされる。優先順位付けされるデータは、例えば、ステップ610において受信されるデータであるかもしれない。データは、例えば、上述されるように、図5のデータ通信システム550などにより優先順位付けされるかもしれない。他の例として、データは、少なくとも部分的にデータ優先順位付けルールに基づき、データ通信システム550のデータ優先順位付けコンポーネント560により優先順位付けされるかもしれない。特定の実施例では、データ優先順位は、データタイプ、送信アプリケーション及び/又は送信ユーザなどのメッセージコンテンツに少なくとも部分的に基づくかもしれない。特定の実施例では、データ優先順位は、ソースアドレス及び/又はトランスポートプロトコルなど、データに係る及び/又は含まれるプロトコル情報に少なくとも部分的に基づくかもしれない。特定の実施例では、データ優先順位付けコンポーネント560は、例えば、QoSを提供するのに利用されるかもしれない。特定の実施例では、データの優先順位付けは他のアプリケーションに透過である。ステップ630において、ネットワークが解析される。ネットワークは、例えば、上述されるように、図5のデータ通信システム550などにより解析されてもよい。他の例として、ネットワークは、少なくとも部分的にネットワーク解析ルールに基づき、データ通信システム550のネットワーク解析コンポーネント570により解析されてもよい。特定の実施例では、ネットワーク解析コンポーネント570は、ネットワーク520の状態を決定する。より詳細には、ネットワーク解析コンポーネント570は、帯域幅、遅延及び/又はジッタなどのネットワーク520の1以上の特性に少なくとも部分的に基づき、ネットワーク520の状態を決定するかもしれない。特定の実施例では、ネットワーク解析コンポーネント570は、ノードAからノードBへのパスなど、ネットワーク520の1以上のパスを解析する。ステップ640において、データが通信される。通信されるデータは、例えば、ステップ610において受信されたデータであってもよい。データは、例えば、上述されるような図5のデータ通信システム550により通信されるかもしれない。他の例として、データは、ノード510及び/又はノード510上で実行されるアプリケーションに通信されるかもしれない。他の例として、データは、ネットワーク520及び/又はノード510とネットワーク520とを接続するリンクを介し通信されるかもしれない。特定の実施例では、データは、上述されるように、少なくとも部分的にデータ優先順位及び/又はネットワーク状態に基づき通信されるかもしれない。データ優先順位は、例えば、ステップ620において決定されるデータ優先順位であるかもしれない。ネットワーク状態は、例えば、ステップ630において決定されるネットワーク状態であるかもしれない。本方法600の各ステップの1以上は、例えば、ハードウェア、ファームウェア及び/又はソフトウェアによる命令セットとして単独で又は組み合わせて実現可能である。特定の実施例は、汎用コンピュータ又は他の処理装置上で実行するため、メモリ、ハードディスク、DVD又はCDなどのコンピュータ可読媒体にある命令セットとして提供されるかもしれない。本発明の特定の実施例は、リストされた順序と異なる順序により各ステップを実行してもよく、及び/又はこれらのステップの1以上を省略してもよい。例えば、いくつかのステップは、本発明の特定の実施例においては実行されないかもしれない。さらなる例として、特定のステップは、上記以外の異なる時間的順序により同時を含み実行されてもよい。図7は、本発明の実施例によるデータ優先順位付けシステム700を示す。本システム700は、区別コンポーネント710と、シーケンス化コンポーネント720と、データ整理コンポーネント730とを有する。区別コンポーネント710は、キュー選択ルール及び/又は機能冗長性ルールなどの区別ルール715を有するかもしれない。シーケンス化コンポーネント720は、スタベーション、ラウンドロビン及び/又は相対頻度などのシーケンス化ルール725を有する。データ整理コンポーネント730は、例えば、キュー、ツリー、テーブル、リスト及び/又はデータを格納及び/又は整理するための他のデータ構造を含む。システム700のコンポーネントは、データ優先順位付けコンポーネント760と総称されるかもしれず、例えば、上述されるように、図5のデータ優先順位付けコンポーネント560のコンポーネントと同様であるかもしれない。データが、データ優先順位付けコンポーネント760において受信される。データは、戦術データネットワークなどのネットワークを介し及び/又はアプリケーションプログラムなどから受信されるかもしれない。他の例として、データは、上述されるように、図5のデータ通信コンポーネント580から受信されるかもしれない。データは、例えば、セル、フレーム、パケット及び/又はストリームなどのデータのブロックを含むかもしれない。データ優先順位付けコンポーネント760は、データを優先順位付けする。特定の実施例では、データ優先順位付けコンポーネント760は、区別ルール715及び/又はシーケンス化ルール725などのデータ優先順位付けルールに少なくとも部分的に基づき、データを優先順位付けするかもしれない。特定の実施例では、データはデータ優先順位付けコンポーネント760の区別コンポーネント710において受信される。区別コンポーネント710は、データを区別する。特定の実施例では、区別コンポーネント710は、キュー選択ルール及び/又は機能冗長性ルール765などの区別ルール715に少なくとも部分的に基づき、データを区別するかもしれない。特定の実施例では、区別ルール及び/又は機能冗長性ルールは、ユーザにより規定されてもよい。特定の実施例では、区別コンポーネント710は、データタイプ、送信アドレス及び/又は送信アプリケーションなどのメッセージコンテンツ及び/又はソースアドレス及び/又はトランスポートプロトコルなどのプロトコル情報に少なくとも部分的に基づき、データを区別するかもしれない。特定の実施例では、区別コンポーネント710は、例えば、キュー選択ルールなどに少なくとも部分的に基づき、データをデータ整理コンポーネント730に追加してもよい。例えば、区別コンポーネント710は、ビデオデータを第1キューに、オーディオデータを第2キューに、遠隔測定データを第3キューに、位置データを第4キューに追加してもよい。特定の実施例では、区別コンポーネント710は、例えば、機能冗長性ルールなどに少なくとも部分的に基づき、データ整理コンポーネント730からデータを削除及び/又は保留するかもしれない。例えば、区別コンポーネント710は、第4キューから古い及び/又は冗長な位置データを削除するかもしれない。特定の実施例では、区別されたデータが通信されるかもしれない。例えば、区別されたデータは、上述されるように、図5のデータ通信コンポーネント580に送信されてもよい。他の例として、区別されたデータは、戦術データネットワークなどのネットワークを介し及び/又はアプリケーションプログラムに通信されてもよい。特定の実施例では、データが、データ優先順位付けコンポーネント760のシーケンス化コンポーネント720において受信される。シーケンス化コンポーネント720は、データをシーケンス化する。特定の実施例では、シーケンス化コンポーネント720は、スタベーション、ラウンドロビン及び/又は相対頻度などのシーケンス化ルール725に少なくとも部分的に基づき、データをシーケンス化するかもしれない。特定の実施例では、シーケンス化ルール725は、ユーザにより規定されてもよい。特定の実施例では、シーケンス化コンポーネント720は、例えば、シーケンス化ルール735に少なくとも部分的に基づき、データを選択及び/又は削除する。例えば、シーケンス化コンポーネント720は、第4キューから位置データを削除し、その後に第2キューからオーディオデータを削除し、その後に第3キューから遠隔測定データを削除し、その後に第1キューからビデオデータを削除するかもしれない。特定の実施例では、シーケンス化されたデータが通信されるかもしれない。例えば、シーケンス化されたデータは、上述されるように、図5のデータ通信コンポーネント580に送信されるかもしれない。他の例として、シーケンス化されたデータは、戦術データネットワークなどのネットワークを介し及び/又はアプリケーションプログラムに通信されてもよい。特定の実施例では、区別コンポーネント710、シーケンス化コンポーネント720及び/又はデータ整理コンポーネント730を有するデータ優先順位付けコンポーネント700は、上述されるように、QoSを提供するのに利用されるかもしれない。特定の実施例では、区別コンポーネント710、シーケンス化コンポーネント720及び/又はデータ整理コンポーネント730を有するデータ優先順位付けコンポーネント700は、上述されるように、他のアプリケーションに透過であってもよい。上述されるように、データ優先順位付けコンポーネント700のコンポーネント、要素及び/又は機能は、例えば、ハードウェア、ファームウェア及び/又はソフトウェアの命令セットとして各種形式により単独で又は組み合わせて実現可能である。特定の実施例は、汎用コンピュータ又は他の処理装置上での実行のため、メモリ、ハードディスク、DVD又はCDなどのコンピュータ可読媒体にある命令セットとして提供されてもよい。図8は、本発明の実施例によるデータ優先順位付け方法800のフロー図を示す。本方法800は、以下でより詳細に説明される以下の各ステップを含む。ステップ810において、データが受信される。ステップ820において、データが優先順位付けされる。ステップ830において、データが通信される。本方法800は、上述したシステムの各要素を参照して説明されるが、他の実現形態もまた可能であることが理解されるべきである。ステップ810において、データが受信される。上述されるように、データは、戦術データネットワークなどのネットワークを介し及び/又はアプリケーションプログラムなどから受信されるかもしれない。他の例として、データは、上述されるように、図5のデータ通信コンポーネント580から受信されてもよい。ステップ820において、データが区別される。区別されるデータは、例えば、ステップ810において受信されたデータであってもよい。データは、上述されるように、例えば、図7の区別コンポーネント710により区別されてもよい。ステップ830において、データがシーケンス化される。シーケンス化されるデータは、例えば、ステップ810において受信されたデータ及び/又はステップ820において区別されたデータであってもよい。データは、上述されるように、例えば、図7のシーケンス化コンポーネント720によりシーケンス化されてもよい。ステップ840において、データが通信される。通信されるデータは、ステップ810において受信されたデータ、ステップ820において区別されたデータ及び/又はステップ830においてシーケンス化されたデータなどであってもよい。データは、戦術データネットワークなどのネットワークを介し及び/又はアプリケーションプログラムなどから受信されるかもしれない。他の例として、データは、上述されるように、図5のデータ通信コンポーネント580に通信されてもよい。本方法800の各ステップの1以上は、例えば、ハードウェア、ファームウェア及び/又はソフトウェアの命令セットとして各種形式により単独で又は組み合わせて実現可能である。特定の実施例は、汎用コンピュータ又は他の処理装置上での実行のため、メモリ、ハードディスク、DVD又はCDなどのコンピュータ可読媒体にある命令セットとして提供されてもよい。本発明の特定の実施例は、列記された順序以外の異なる順序により各ステップを実行してもよく、及び/又はこれらのステップの1以上を省略してもよい。例えば、一部のステップは、本発明の特定の実施例では実行されないかもしれない。さらなる例として、特定のステップは上記リストされた以外の時間的順序により同時を含めて実行されてもよい。本発明の一実施例では、データを通信する方法は、データに優先順位を割り当てることによって、前記データを優先順位付けするステップと、前記ネットワークの状態を決定するため、ネットワークを解析するステップと、前記データの優先順位と前記ネットワークの状態とに少なくとも部分的に基づき、前記データを通信するステップとを有する。本発明の一実施例では、データ通信システムは、データ優先順位付けコンポーネントと、ネットワーク解析コンポーネントと、データ通信コンポーネントとを有する。データ優先順位付けコンポーネントは、データに優先順位を割り当てるよう構成される。ネットワーク解析コンポーネントは、ネットワークの状態を決定するよう構成される。データ通信コンポーネントは、前記データの優先順位と前記ネットワークの状態とに少なくとも部分的に基づき、前記データを通信するよう構成される。本発明の一実施例では、コンピュータ可読媒体は、コンピュータ上で実行される命令セットを有する。命令セットは、データ優先順位付けルーチンと、ネットワーク解析ルーチンと、データ通信ルーチンとを有する。データ優先順位付けルーチンは、データに優先順位を割り当てるよう構成される。ネットワーク解析ルーチンは、ネットワークの状態を決定するよう構成される。データ通信ルーチンは、前記データの優先順位と前記ネットワークの状態とに少なくとも部分的に基づき、前記データを通信するよう構成される。以上、本発明の特定の実施例では、適応的なスループットデータ管理のためのシステム及び方法を提供する。特定の実施例は、適応的なスループットデータ管理の技術的効果を提供する。"