TCP/IPデータ通信リンクを介してACARSメッセージを送信するためのシステムおよび方法
本発明によるACARSメッセージングシステム(300)は、航空機(102)にとってTCP/IPサブネットワークが利用可能である場合に展開される。ACARSメッセージ(304)は、ASN.1の表記(616、634)へとコード化され、プロトコルのTCP/IPスイートに準拠するように翻訳される。無線サブネットワーク(204、206)は、ACARSメッセージトラフィック用のTCP/IPデータリンク(108)を確立するための最初のアクセスポイントを提供する。このシステムは、従来のACARSメッセージを伝達する民間のネットワークの代わりに、低コストで高帯域幅のTCP/IPネットワークを使用して、ACARSメッセージを送信することができる。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般にデータ通信システムに関する。より詳細には、本発明は、TCP/IPネットワークを使用してACARS(「Aircraft Communications Addressing and Reporting System」)メッセージを処理および送信するためのデータ通信システムに関する。
【背景技術】
【0002】
ACARSとは、民間および業務用の航空機によって利用されるアドレス可能なデジタルデータ通信システムである。ACARSは、フライトオペレータが自分のそれぞれの航空隊内の航空機と通信できるようにするために開発された。ACARSは、航空機とそのフライトオペレータとの間で、日常的な報告、データ、および簡単なメッセージを送信するために使用される。ACARSメッセージは、航空機のVHF音声チャネルが混雑するのを避けるために、AMチャネルを使用して送信される。従来のACARSメッセージングは、ARINC 618およびARINC 620の規格によって記述および規定されている。
【0003】
現在、ACARSメッセージは、VHFチャネルやSATCOMリンクなどの高価で相対的に遅いレガシーデータリンクを横断している。このような通信パスは、フライト中の通信には適しているが、航空機が着陸した後の通信にとっては望ましくない可能性がある。これまでは、ACARSメッセージは、航空機が着陸した後でさえ、(米国では)ARINCおよび(ヨーロッパでは)SITAなどの民間企業によって提供されている可能性のある既存のシステムおよびプロトコルを介して送信しなければならなかった。ほとんどの民間航空機の通信は着陸後に行われるため、ACARSメッセージングは、航空会社にとって、とりわけ非常に大きな航空隊を有する航空会社にとって、非常に高くつく可能性がある。
【発明の開示】
【発明が解決しようとする課題】
【0004】
したがって、航空機にとって着陸後に利用可能なより高速でより安価なデータ通信システムを利用できるACARSメッセージングシステムを有することが望ましいであろう。たとえば、ACARSメッセージングシステムにとっては、インターネット、TCP/IPベースの通信、および802.11リンク等の無線リンクなど、既存のデータ通信テクノロジーを活用することが有利であろう。さらに、本発明のその他の望ましい特性および特徴については、以降の詳細な説明および添付の特許請求の範囲を、添付の図面ならびに前述の技術分野および背景技術と併せて理解すれば、明らかになるであろう。
【課題を解決するための手段】
【0005】
航空機の着陸後にACARSメッセージを送信するためのシステムは、従来のACARSメッセージを、プロトコルのTCP/IPスイートに対応するフォーマットへと翻訳する機内に搭載された処理ロジックを含む。この翻訳によって、このシステムは、インターネットや、航空会社によって保持されているLANアーキテクチャーなどの高速のネットワークを使用して、ACARSメッセージコンテンツを送信することができる。この翻訳はまた、ARINCおよびSITAによって保持されている従来の高価なネットワークを迂回する方法でのACARSメッセージコンテンツの送信を容易にする。
【0006】
本発明の上記およびその他の態様は、メッセージコンテンツを含むACARSメッセージを入手するステップと、そのACARSメッセージをASN.1のフォーマットへとコード化するステップと、そのコード化されたメッセージを、メッセージコンテンツを含む(TCP/IPに準拠した)ACARS−IPメッセージへと翻訳するステップと、TCP/IPデータリンクを介して航空機とメッセージ処理サーバとの間でACARS−IPメッセージを送信するステップとを含むACARSメッセージングの方法による1つの形態で実行することができる。
【0007】
本発明のより完全な理解は、詳細な説明および特許請求の範囲を以降の図面と併せて考察しながら参照することによって得ることができ、それらの図面においては、同様の参照番号は、それらの図面を通じて類似した要素を指している。
【発明を実施するための最良の形態】
【0008】
以降の詳細な説明は、本質的に例示的なものにすぎず、本発明や、本発明の応用および使用を限定することを意図するものではない。さらに、前述の技術分野、背景技術、発明の開示、あるいは以降の詳細な説明に提示されているいかなる明示された理論や暗示された理論によっても拘束される意図はまったくない。
【0009】
本明細書では、機能的および/または論理的なブロックコンポーネントならびにさまざまな処理ステップという観点から、本発明について説明することができる。そのようなブロックコンポーネントは、指定された機能を実行するように構成されている任意の数のハードウェアコンポーネント、ソフトウェアコンポーネント、および/またはファームウェアコンポーネントによって実現することができるという点を理解されたい。たとえば本発明の一実施形態は、1つまたは複数のマイクロプロセッサやその他のコントロールデバイスのコントロール下でさまざまな機能を実行できるさまざまな集積回路コンポーネント、たとえばメモリ要素、デジタル信号処理要素、ロジック要素、ルックアップテーブルなどを採用することができる。さらに本発明は、任意の数のデータ送信プロトコルと共に実施することができ、本明細書に記載されているシステムは、本発明の1つの例示的な応用例にすぎないということを当業者なら理解できるであろう。
【0010】
説明を簡潔にするために、ACARSメッセージの作成、経路指定、および処理、TCP/IPデータの送信、信号伝達、ネットワークのコントロール、ならびにシステム(およびシステムの個々のオペレーティングコンポーネント)のその他の機能的な側面に関連する従来の技術については、本明細書では詳しくは説明しないかもしれない。さらに、本明細書に含まれるさまざまな図に示されている結び付ける線は、さまざまな要素どうしの間における機能的な関係および/または物理的な結び付きの例を表すことを意図している。実際の実施形態においては、多くの代替または追加の機能的な関係や物理的なつながりが存在する可能性があるという点に留意されたい。
【0011】
本発明によるACARSメッセージングシステムは、航空機にとって利用可能な既存のTCP/IPネットワークのデータリンクを活用するように設計されており、したがって航空機は、ACARSメッセージコンテンツを地上のピアへ通信することができる。簡単に言えば、本発明は、ACARSメッセージがインターネットなどのTCP/IPネットワークを横断できるようにする発信元および/または送信先のサブシステムによって実行されるアプリケーションプロトコルおよび処理に関する。ユーザの観点からは、たとえ実際にはACARSメッセージコンテンツが低コストで高帯域幅の商用ネットワークを横断していても、ACARSメッセージの通信は、従来のデータリンクを横断しているように見える。注目すべきことに、ARINCやSITAは、(SATCOM/VHFを介した無線から地上へのトランザクションおよび地上から無線へのトランザクションとは異なり)ACARSメッセージングシステムによって処理されるACARSのトラフィック内に含まれる必要はなく、ACARSメッセージコンテンツは、データサービスプロバイダーによって提供されるいかなる処理も伴わずに、TCP/IPネットワークを介して航空機から地上の終端システムへ(および、その逆の方向へ)直接転送することができる。
【0012】
図1は、本発明によるシステムを展開できるACARSメッセージングシステム環境100を示す図である。この環境100は一般に、着陸したばかりの、あるいは着陸する寸前の航空機102、たとえば民間航空会社の航空機を含む。いったん着陸すると、航空機102は、インターネットなどの適切なTCP/IPネットワーク104との通信を確立することができる。この点に関連して、航空機102は、TCP/IPデータリンクを確立するように構成されている機内に搭載されたデータ通信要素を含むことが好ましい。本明細書に記載されている本発明の例示的な実施形態においては、メッセージ処理サーバ106は、TCP/IPネットワーク104との通信を確立することができる。典型的な環境100においては、メッセージ処理サーバ106は、目的地の空港に設置された地上のユニットである。
【0013】
実際の面では、TCP/IPネットワーク104は、TCP/IPのトラフィックをデータの送信元からデータの送信先へと経路指定する目的で相互接続された任意の数の物理的なデータリンクを含むことができる。この点に関連して、ACARSメッセージングシステムは、以降でさらに詳細に説明するように、ACARSメッセージコンテンツの通信を容易にするために、航空機102とメッセージ処理システム106との間にTCP/IPデータリンク108を確立することができる。航空機の航空隊を取り扱うために、メッセージ処理システム106は、複数のTCP/IP接続(各航空機ごとに1つの接続)をサポートするように構成されている。本明細書で使用される際、「TCP/IPデータリンク」とは、プロトコルのTCP/IPスイートに準拠してデータを移送できる任意の通信リンクを指す。TCP/IPデータリンク108は、1つまたは複数のコンポーネントを含むことができ、これらのコンポーネントには、任意の数の無線のTCP/IPデータリンク、および任意の数の有線のTCP/IPデータリンクが含まれる。
【0014】
図2は、実用的なACARSメッセージングシステムの展開を示す概略図である。図2においては、航空機102は、破線によって概略的に示されている。航空機102は、機内に搭載されたCMU(「communications management unit」)200、および機内に搭載されたデータ通信要素、たとえばTWLU(「terminal area wireless LAN unit」)202を含むことができる。実際の面では、CMU 200は、LRU(「line replaceable unit」)ハードウェアコンポーネントであり、従来のACARSメッセージングと、本明細書に記載の改良されたACARSメッセージング機能とを含む複数の航空機通信機能をサポートする処理ロジックを含む。CMU 200は、少なくとも1つのACARSルータコンポーネントを含み、このACARSルータコンポーネントは、ACARSメッセージの処理および経路指定を実行する。ACARSルータコンポーネントはまた、ACARSメッセージのコード化および翻訳に関連するTCP/IPスタックおよび処理ロジックを含む。実際の実装形態においては、ACARSルータコンポーネントは、1つまたは複数の物理的なモジュール、カード、あるいはデバイスと共に実現することができる(この場合には、このようなモジュール、カード、あるいはデバイスは、同時処理を容易にするために、お互いに通信するように、また独立したタスクを実行するように構成されることが好ましい)。
【0015】
例示的な実施形態においては、CMU 200は、適切なデータリンク、たとえば10Base−Tイーサネットデータリンクを用いてTWLU 202に結合される。TWLU 202(これもLRUとすることができる)は、航空機102と、目的地の空港によって保持されているLANなどの地上のシステムとの間における無線データ通信をサポートするハードウェアおよび処理ロジックを含む。実際の実施形態においては、TWLU 202は、航空機102と、地上のネットワークに関連付けられている無線アクセスポイント206との間に無線データリンク204を確立する。例示的な実施形態においては、無線データリンク204は、TCP/IPデータリンクである。実際の面では、無線データリンク204は、802.11(a、b、あるいはg)データリンク、Bluetoothデータリンク、HomeRFデータリンク、HiperLANデータリンク、GPRS、無線電信、UMTS、SATCOMなどとして実現することができる。本明細書に記載されている民間航空機の例のために、無線アクセスポイント206は、目的地の空港に設置されている地上のユニットとすることができる。無線アクセスポイント206は、TCP/IPネットワーク104に接続され、したがって、航空機102とメッセージ処理サーバ106との間にTCP/IPデータリンク108が確立される。
【0016】
図3は、本発明によるACARSメッセージングシステム300を示す簡略化された概略図である。図3は、CMU 200およびメッセージ処理サーバ106に関連付けられている機能要素、データ要素、および処理ロジックを示している。一般にCMU 200は、ACARSルータ302、ACARSメッセージ304、ASN.1エンコーダ306、およびTCP/IPトランスレータ308という要素を含むことができる。一般にメッセージ処理サーバ106は、TCP/IPトランスレータ310、ASN.1デコーダ312、ACARSメッセージ組み立てロジック314、およびメッセージコンテンツ抽出ロジック316という要素を含むことができる。説明を簡単にするために、図3は、ACARSダウンリンクメッセージ、すなわちCMU 200からメッセージ処理サーバ106へ送信されるACARSメッセージの処理および操作を対象とする。実際の実施形態においては、ACARSメッセージングシステム300は、双方向のメッセージの通信用に構成され、そのようなものとして、CMU 200およびメッセージ処理サーバ106は双方とも、逆方向のACARSアップリンクメッセージをサポートする機能要素、データ要素、および処理ロジックを含むことができる。
【0017】
CMU 200を参照すると、ACARSルータ302は、ACARSメッセージ304の作成および処理を含んで、着信および発信のACARSメッセージトラフィックを処理する。従来のACARSメッセージの構成および特徴は、当業者にはよく知られており、したがって、本明細書では詳しくは説明しない。このような従来のACARSメッセージは、ARINCの規格に準拠するメッセージ、たとえばA618メッセージ、A619メッセージ、およびA620メッセージを含むことができる。ASN.1エンコーダ306は、ACARSメッセージを、ASN.1に準拠するフォーマットへコード化し、変換し、および/または翻訳するように構成されている。ASN.1は、データの言語の実装および物理的な表示を問わずに、用途を問わずに、ならびにデータの複雑さを問わずに、プロトコルによって送信されるデータを記述するのに使用される正規の表記である。ASN.1は、CMU 200とメッセージ処理サーバ106との間でACARSのコンテンツをやり取りするための明確な方法を提供する。TCP/IPトランスレータ308は、コード化されたACARSメッセージを、プロトコルのTCP/IPスイートに準拠した対応するACARS−IPメッセージへと翻訳し、変換し、および/またはフォーマット設定するように機能する。「ACARS−IPメッセージ」という用語は、本明細書では、そのようなメッセージを従来のACARSメッセージから区別するために使用される。
【0018】
上述のように、ACARS−IPメッセージは、適切なTCP/IPデータリンクを介して、航空機とメッセージ処理サーバ106との間で送信することができ、そのようなTCP/IPデータリンクは、1つまたは複数の無線のTCP/IPデータリンクを含むことができる。メッセージ処理サーバ106を参照すると、ACARS−IPメッセージは、TCP/IPトランスレータ310によって受信され、処理される。トランスレータ310は、ACARS−IPメッセージを、ASN.1デコーダ312によって処理できる対応するデータへと翻訳し、変換し、および/またはフォーマット設定するように機能する。ASN.1デコーダは、このデータをデコードし、変換し、および/または翻訳して、ASN.1エンコーダ306によって実行されたASN.1のコード化を取り除くように構成されている。ACARSメッセージ組み立てロジック314は、デコードされたデータを処理して、従来のACARSフォーマットを有する受信されたACARSメッセージを組み立てることができる。その後、メッセージコンテンツ抽出ロジック316は、任意の適切な方法でさらに処理または操作するために、受信されたACARSメッセージから有用なコンテンツのうちの任意のものを抽出することができる。A620メッセージを「再び組み立てる」代わりに、適切な処理のために任意の数のプロセスに生のデータを投入することもできる。
【0019】
本明細書に記載されている例示的な実施形態は、A618メッセージ、A619メッセージ、およびA620メッセージを取り扱う。A618メッセージは、航空機102と、DSP(「data service provider」)などの地上のシステムとの間で送信されるメッセージである。ACARSメッセージングシステム300は、航空機102の着陸後にA618メッセージを送信するために利用されることが好ましい。従来のACARSメッセージング技術は、フライト中にA618メッセージを送信するために利用することができる。A619メッセージは、CMU 200と、航空機102上のその他のLRUとの間で送信される「内部の」メッセージである。A620メッセージは、DSPなどの地上のシステムと、終端システム(実際の民間航空機の展開においては、終端システムは、航空会社によって保持される)との間で送信されるメッセージである。
【0020】
図4は、CMU 400の一部を示す簡略化されたソフトウェアアーキテクチャーの図である。CMU 400は、航空機102のその他の外部のLRU 402と、ACARSメッセージングをサポートするレガシーサブネットワーク404と、本明細書に記載されているようなTCP/IPサブネットワーク406と、航空機のコックピット内のディスプレイおよび入力デバイスとして機能するMCDU(「multifunction control and display unit」)408と通信するように構成されている。上述のように、CMU 400は、(1つまたは複数の)TCP/IPサブネットワーク406を介して送信するためにACARSメッセージをコード化および翻訳することに関連する処理ロジックを含むことができる。CMU 400はまた、着信および発信のACARSメッセージトラフィックを処理するACARSルータ410と、ACARSルータ410に結合されているA619プロトコルハンドラ412と、ACARSルータ410に結合されているA618プロトコルハンドラ414とを含む。
【0021】
従来のACARSメッセージングプロセスは、下記のように実行することができる。LRU 402は、A619プロトコルハンドラ412と通信し、A619プロトコルハンドラ412は、ACARSルータ410によって処理するために適切なA619メッセージを作成する。次いでACARSルータ410は、そのメッセージをA618プロトコルハンドラ414へ伝達し、A618プロトコルハンドラ414は、適切なA618メッセージを作成する。そしてそのA618メッセージは、(1つまたは複数の)レガシーサブネットワーク404へ回送される。これとは対照的に、本発明によるACARSメッセージングプロセスは、下記のように実行することができる。航空機のパイロットは、その航空機に搭載されているMCDU 408へメッセージを(たとえば、キーボードへ打ち込むことによって)入力することができる。次いでそのメッセージは、A619プロトコルハンドラ412を迂回する方法でACARSルータ410へ伝達される。同様に、(1つまたは複数の)TCP/IPサブネットワーク406を介して送信されるメッセージは、ACARSルータ410への通過中にA618プロトコルハンドラ414を迂回することができる。したがって、本発明の技術を利用して、従来のA619およびA618のACARSメッセージ処理を回避することができる。
【0022】
図5は、ACARSメッセージングシステムによって処理される例示的なシーケンスを示すメッセージシーケンス線図であり、図6は、ACARSメッセージングプロセス600を示す流れ図である。本発明によるACARSメッセージングシステムのオペレーションについて、図5および図6と関連させて説明する。図5においては、時間が縦のスケールによって表されており、時間は上から下へと進む。図5は、実際の実施形態においてはCMU内で実現できるACARSルータ502と、TWLU 504と、メッセージ処理サーバ506とによって実行される処理または経路指定を示している。プロセス600および例示的なメッセージシーケンス線図は、次のことを前提としている。(1)CMUが初期設定されており、使用可能であること。(2)航空機が着陸しているか、またはその他の形で無線アクセスポイントの付近におり、それによってTCP/IP接続を確立できること。(3)地上の終端システム、たとえばメッセージ処理サーバが、TCP/IP接続を探してCMUからモニタリングを行っていること。(4)地上のネットワークインフラストラクチャーが整備されており、正常に機能していること。
【0023】
図5を参照すると、アイテム1は、本明細書に記載されているようなACARSメッセージの処理をトリガーする任意のイベントを表している。このイベントは、航空機の着陸および着陸のイベントをACARSルータ502へ通知すること、指定された量のメッセージデータが利用できること、適切なTCP/IP接続が利用できることなどに相当することができる。このイベントによって、ACARSルータ502は、TCP/IPネットワーク接続を確立する準備を行うことができる。たとえばACARSルータ502は、メッセージ処理サーバ506の地上のIPアドレスおよび/またはホストネームを処理することができる。図6を参照すると、ACARSメッセージングプロセス600は、メッセージ処理サーバのIPアドレスを入手することによって開始することができる(タスク602)。このIPアドレスは、TCP/IPネットワークへの接続にとって必要である。送信先のホストネームおよびIPアドレスは、CMU用に保存されているAMI(「aircraft modifiable information」)から解明することができる。TCP/IPポートの数は、個別の実装形態に応じて、AMIを介して設定できるようにすることもでき、あるいは一定に保つこともできる。所与の航空会社にとって、メッセージ処理サーバ506のIPアドレスは、1つの空港から別の空港へと変更することもでき、あるいは空港にかかわらずに一定に維持することもできる。
【0024】
アイテム2は、データリンク層のレベルにおける無線接続が確立された旨のTWLU 504からACARSルータ502への表示を表している。すなわち、TCP/IPネットワーク上で実行されるネットワーキングプロトコルは、データをやり取りできるようになっている。この時点で、ACARSメッセージングプロセス600は、航空機とメッセージ処理サーバ506との間にTCP/IPデータリンクを確立することができる(タスク604)。この点に関連して、シーケンス線図のアイテム3は、所与のIPアドレスにおいてメッセージ処理サーバ506とのTCP/IP接続を確立する試みを表している。実際の実施形態においては、最初の試みは、経路指定情報がやり取りされるために、および/または不安定な無線データリンクのために失敗するかもしれないが、安定した接続が確実に確立されるように複数回の試みを行うこともできる。
【0025】
ACARSメッセージングプロセス600は、ハンドシェイクメッセージを、ASN.1に準拠したハンドシェイクメッセージへとコード化する(タスク606)。実際の面では、ハンドシェイクメッセージは、航空機用の少なくとも1つの航空機登録番号を含むコンテンツを含み、この航空機登録番号によって、メッセージ処理サーバ506は、航空機を識別することができる。ハンドシェイクメッセージ内に含むことができるその他の情報としては、テールID、フライト番号、およびメッセージ処理サーバ506が発信元の航空機やCMUのIDを判別する上で役に立つことができるその他の任意のデータが含まれる。そしてコード化されたハンドシェイクメッセージは、TCP/IPに準拠したACARS−IPハンドシェイクメッセージへと翻訳またはその他の形でフォーマット設定することができ(タスク608)、このACARS−IPハンドシェイクメッセージもまた、少なくとも航空機登録番号を含む。シーケンス線図のアイテム4、およびプロセス600のタスク610は双方とも、TCP/IPデータリンクを介したCMUからメッセージ処理サーバ506へのACARS−IPハンドシェイクメッセージの送信を表している。この送信の意図は、CMUとメッセージ処理サーバ506との間に通信セッションを確立することである。
【0026】
ハンドシェイクメッセージに応答して、メッセージ処理サーバ506は、同様の手順を実行して、ACARS−IP応答ハンドシェイクメッセージを作成して送信することができる。例示的な実施形態においては、ACARS−IP応答ハンドシェイクメッセージは、メッセージ処理サーバ506を識別する一意のトークン/文字列の識別子を含む。シーケンス線図のアイテム5は、メッセージ処理サーバ506からCMUへのACARS−IP応答ハンドシェイクメッセージの送信を表している。ACARSメッセージングプロセス600を参照すると、CMUが応答ハンドシェイクメッセージを受信しなかった場合には(クエリータスク612)、プロセス600は、終了するか、または別のハンドシェイクメッセージを送信することができる。応答ハンドシェイクメッセージが受信された場合には、プロセス600は継続し、TCP/IP接続を利用して、航空機とメッセージ処理サーバ506との間で任意の数のダウンリンクメッセージおよび/または任意の数のアップリンクメッセージを送信できるようになる。いったんTCP/IP接続が確立されると、アップリンクメッセージおよびダウンリンクメッセージを同時に送信することができる。したがってプロセス600は、ダウンリンクメッセージおよびアップリンクメッセージを処理するための別々のサブプロセスを示している。
【0027】
ダウンリンクメッセージに関しては、プロセス600が継続し、メッセージキューや、ACARSメッセージのその他のソースから次のACARSダウンリンクメッセージを入手する(タスク614)。本発明によるACARSメッセージングシステムは、下記のように低コストのTCP/IPネットワークを利用するように構成することができる。航空機が依然としてフライト中であるか、あるいはその他の事情で本明細書に記載されているようにTCP/IP接続を確立することができない間には、従来のACARSダウンリンクメッセージに、それらの重要性および/または時間に対する配慮に従って優先順位を付けることができる。この点に関連して、決定的に重要なメッセージ、および遅延が許されないメッセージを、従来のACARSメッセージング技術を使用して処理および送信することができる。その一方で、さほど重要ではないメッセージ、およびすぐに送達する必要のないメッセージには、1つまたは複数のACARS−IPダウンリンクメッセージとして後で送信するために優先順位を付けてキューに入れることができる。機内に搭載されたメッセージキュー(これは、データストレージ要素として実現することができる)は、着陸後にTCP/IPデータリンクを介して後で送信するために、それらのメッセージを保存することができる。
【0028】
いったんTCP/IPデータリンクが確立されると、ACARSルータは、TCP/IPサブネットワークを使用する準備が整った旨を通知される。この時点で、ダウンリンクメッセージとアップリンクメッセージとを含むACARSメッセージトラフィックが生じることができる。シーケンス線図は、アイテム6によって表されているダウンリンクメッセージの例示的な処理(適切にフォーマット設定されたACARS−IPダウンリンクメッセージを、TCP/IPデータリンクを介してメッセージ処理サーバ506へ送信すること)を示している。
【0029】
ACARSメッセージングプロセス600を再び参照すると、メッセージコンテンツを含むACARSダウンリンクメッセージは、そのメッセージコンテンツを含むASN.1準拠メッセージへとコード化されることが好ましい(タスク616)。さらにプロセス600は、コード化されたメッセージを、そのメッセージコンテンツを含むACARS−IPダウンリンクメッセージへと翻訳し、変換し、あるいはその他の形でフォーマット設定する(タスク618)。実際の実施形態においては、ACARSルータ502は、TCP/IPデータリンクを介してメッセージ処理サーバ506へ送信するために、ACARSのテキストメッセージおよびパラメータをASN.1のPDU(「protocol data unit」)へと処理してカプセル化する(タスク620)。上述のように、TCP/IPデータリンクは、1つまたは複数の無線データリンクを含むことができ、タスク620は、インターネットを介してACARS−IPダウンリンクメッセージを送信することができる。
【0030】
ACARS−IPダウンリンクメッセージは、メッセージ処理サーバ506において受信され(タスク622)、メッセージ処理サーバ506は、受信したメッセージの処理を取り扱う。簡単に言えば、メッセージ処理サーバ506は、TCP/IPパケットを任意の適切なフォーマットへと変換するように機能する。一実施形態においては、メッセージ処理サーバ506は、TCP/IPパケットを、レガシーACARSメッセージングシステムによって認識できるフォーマットへと変換する。あるいは、さまざまなフォーマットを利用するその他のプロセスやシステム(たとえば、データベース、統計分析ルーチン、自動応答システム、Eメール、メモリデバイスなど)に生のデータを投入することもできる。この点に関連して、ACARSメッセージングプロセス600は、受信されたACARS−IPメッセージのASN.1のデコード(タスク624)、および受信されたACARSメッセージの組み立て(タスク626)を実行することができる。プロセス600は、受信されたACARSメッセージを、従来のACARSフォーマットに再び準拠するように組み立てることができる。最終的に、プロセス600は、受信されたメッセージからACARSメッセージコンテンツを抽出し(タスク628)、および/またはシステムの必要性および要件に従ってACARSメッセージの処理を実行する(タスク630)。
【0031】
シーケンス線図はまた、アップリンクメッセージの例示的な処理を示しており、これは、アイテム7によって表されている。上述のように、実際の実施形態は、アップリンクメッセージおよびダウンリンクメッセージを任意の時点で送信することができ、図5に示されているタイミングは、メッセージングプロセスを説明するのに有用な簡略化されたシナリオを表しているにすぎない。
【0032】
完全を期すために、ACARSメッセージングプロセス600は、同時にアップリンクメッセージを送信する可能性を含む。アップリンクメッセージの処理は、メッセージキューから、あるいはメッセージ処理サーバ506に関連付けられている任意の適切なソースから次のACARSアップリンクメッセージを入手することによって、開始することができる(タスク632)。その後、プロセス600は、ACARSアップリンクメッセージをASN.1準拠メッセージへとコード化することに進む(タスク634)。さらにプロセス600は、そのコード化されたメッセージを、所望のメッセージコンテンツを含むACARS−IPアップリンクメッセージへと翻訳し、変換し、あるいはその他の形でフォーマット設定する(タスク636)。実際の実施形態においては、メッセージ処理サーバ506は、タスク634およびタスク636の最中に1つまたは複数のASN.1のPDUを作成する。その後、ACARS−IPアップリンクメッセージは、確立されたTCP/IPデータリンクを介して航空機へ送信することができる(タスク638)。
【0033】
ACARS−IPアップリンクメッセージは、最終的にはACARSルータ502によって受信され、ACARSルータ502は、受信されたメッセージの処理を取り扱う。簡単に言えば、ACARSルータ502は、TCP/IPパケットを任意の適切なフォーマットへと変換するように機能する。一実施形態においては、ACARSルータ502は、TCP/IPパケットを、レガシーACARSメッセージングシステムによって認識できるフォーマットへと変換する。あるいは、さまざまなフォーマットを利用するその他のプロセスやシステム(たとえば、データベース、統計分析ルーチン、自動応答システム、Eメール、メモリデバイスなど)に生のデータを投入することもできる。この点に関連して、ACARSメッセージングプロセス600は、受信されたACARS−IPアップリンクメッセージのASN.1のデコード(タスク640)、および受信されたACARSアップリンクメッセージの組み立て(タスク642)を実行することができる。プロセス600は、受信されたACARSアップリンクメッセージを、従来のACARSフォーマットに再び準拠するように組み立てることができる。最終的に、プロセス600は、受信されたメッセージからACARSメッセージコンテンツを抽出し(タスク644)、および/またはシステムの必要性および要件に従ってACARSメッセージの処理を実行する(タスク646)。たとえばそのメッセージは、送信先に応じて、航空機のフライト管理システムなど、航空機に搭載されたその他の終端システムへ転送することができる。
【0034】
それぞれのアップリンクメッセージまたはダウンリンクメッセージが処理されると、上述のように次のメッセージを処理することができる。この点に関連して、図6は、任意の数のメッセージを繰り返し処理することを容易にするループとして、ダウンリンクとアップリンクの分岐を示している。
【0035】
例示的な実装形態
以降は、本発明の実際の実施形態と共に利用できる例示的なACARSメッセージングアプリケーションプロトコルのハイレベルな設計である。この例は、本発明の1つの可能な実際の実装形態を反映しているだけであり、本発明は、この具体的な実施形態やいかなる特定の実装形態にも限定されるものではないという点を理解されたい。CMU上でのシステム設計のアプローチは、従来のACARSスタックを迂回し、ACARS「ユーザテキスト」を地上の終端システムへ直接送信することである。このアプローチを採用する理由は、不要なACARSの処理(ARINC 618/620)を迂回し、メッセージごとのACARSの無線−地上間のACKに対する必要性を軽減し(これによって、ACARSプロトコルのロックステップの制限も軽減し)、いかなる地上の終端システムによっても理解できるフォーマットで「ユーザテキスト」を提供することである。このアプローチには、ARINCやSITAのネットワーク上のデータサービスプロバイダーによる処理は不要である。
【0036】
この意図は、地上の終端システムに十分な情報を提供して、メッセージを、あたかもデータサービスプロバイダーからA620のフォーマットで受信したかのように表示することである(以降の表1を参照されたい)。地上の終端システムは、A620のフォーマットで表示するようにデータをアレンジすることを担当するか、あるいは地上の終端システムは、情報のうちの任意のものまたはすべてを任意のフォーマットで表示することができる。
【0037】
A620ダウンリンクメッセージの例−例示的なA620 ACARSダウンリンクメッセージについて、以降で説明する。この意図は、A620メッセージを定式化して厳密に見た目どおりに表示するために地上の終端システムが使用できる情報を提供することである。実際の面では、CMUは、下に示されているACARSメッセージを一字一句そのまま地上の終端システムへ送信することはしない。この例示的なダウンリンクメッセージは、次のようにフォーマット設定される。
【0038】
【数1】
【0039】
例示的なA620メッセージの分解−表1は、例示的なA620 ACARSメッセージを分解し、どのようにして地上の終端システム上ですべての必要な情報を得ることができるかについての説明を提供する。列1の「620ダウンリンクACARSメッセージ」は、A620 ACARSメッセージ内のフィールド名を定義する。列2の「源」は、その情報をどこから得ることができるかについて記載している。「GND」は、演繹的に地上の終端システムがこの情報を知っていることを意味している。「CMU」は、この情報が、本明細書に記載されているACARSメッセージングプロトコルの交換中にCMUによって提供されることを意味している。「T−CMU」は、情報が、(本明細書に記載されているACARSメッセージングプロトコルの交換を使用することを通じて)CMUによって提供される情報から地上で翻訳されることを意味している。列3の「説明」は、情報を地上でどのようにして投入することができるかに関する指示を提供する。最後の列の「例」は、情報をA620 ACARSメッセージの例へと再び対応付ける。
【0040】
【表1】
【0041】
SMIは、ACARSメッセージのラベルおよびサブラベルをそのSMIに対応付けることによって、地上の終端システム上で決定することができるという点に留意されたい。この対応付けは、ARINC 620−4仕様の付属書類Cにおいて提供される。さらに、ACARSメッセージのラベルおよびサブラベルは、(上述のACARSメッセージングプロトコルの交換を介して)CMUによって提供される。
【0042】
A620ダウンリンクメッセージングプロトコル−以降は、CMUによって作成して地上へ送信できるPDUのハイレベルな組み立てである。
【0043】
【表2】
【0044】
【表3】
【0045】
実際の実施形態においては、信頼できる移送システム(すなわち、TCP/IP接続)のおかげで、地上から受信されるすべてのPDUに対してCMUによってACK(「acknowledgement」)PDUを送信する必要はない。
【0046】
A618アップリンクメッセージの例−部分的なA618アップリンクメッセージの一例について、以降で説明する。このメッセージは、従来のACARSメッセージの「STX」フィールドの後のすべての部分を含む。上述のように、CMU内のACARSスタックは迂回され、これによって、ACARSメッセージ内の完全なA618ヘッダの必要性がなくなる。それでもなお、航空機上のその他の終端システム(たとえば、プリンタやフライト管理システムなどのLRU)が、フォーマット設定されたヘッダを待っている場合には、問題が表面化する可能性がある。したがって、ACARSメッセージをCMUへ送信する前に、表4(以降を参照されたい)に記載されているようなヘッダを投入することが、地上の終端システムの役割である。このヘッダは、常に必要というわけではなく、その必要性は、ラベルおよびサブラベルごとにARINC仕様620−4の付属書類Cを参照することによって、判断することができる。したがって、ある場合には、地上がユーザテキストのみをACARSメッセージとして提供することが予想され、その他の場合には、部分的なA618ヘッダがACARSメッセージのユーザテキストに添付されるであろう。例示的なアップリンクメッセージは、次のようにフォーマット設定される。
【0047】
【数2】
【0048】
例示的なA618メッセージの分解−表4は、任意選択で投入されたヘッダと任意選択のサブラベルとを有する部分的なA618 ACARSメッセージの分解を提供する。列1の「アップリンクACARSメッセージフィールド」は、ACARSメッセージ内のフィールド名を定義する。列2の「説明」は、情報を地上でどのようにして投入することができるか、およびそうした情報が任意選択であるかどうかに関する指示を提供する。最後の列の「例」は、情報をA618 ACARSメッセージの例へと再び対応付ける。CMUは、ACARSメッセージがこのフォーマットであることを要求している。
【0049】
【表4】
【0050】
A618アップリンクメッセージングプロトコル−以降は、地上の終端システムによって作成して航空機上のCMUへ送信できるPDUのハイレベルな組み立てである。
【0051】
【表5】
【0052】
【表6】
【0053】
実際の実施形態においては、信頼できる移送システム(すなわち、TCP/IP接続)のおかげで、CMUから受信されるすべてのPDUに対して地上の終端システムによってACK PDUを送信する必要はない。
【0054】
ASN.1の表記
上述のように、ASN.1は、データの言語の実装および物理的な表示を問わずに、プロトコルによって送信されるデータを記述するのに使用される正規の表記である。ASN.1を使用することの実際の利点は、フリーウェアのASN.1コンパイラが存在することである。ASN.1コンパイラは、ASN.1のテキストをCのソースコードへと変換する。生成されたCのコードは、内部の(Cのソースコードの)表示と、データをピアへ送信するために使用される対応するBasic Encoding Rulesフォーマットとの間で値を変換するための同等のデータ構造およびルーチンを含む。
【0055】
TCPは、ストリーム指向のプロトコルであり、つまり、1つのPDUの終わりと、次のPDUの始まりとの間に組み込まれた区別がまったく存在しない。したがって所与のアプリケーションは、受信したオクテットストリームからPDUを解読しなければならない。ASN.1でコード化されたオクテットストリームは、ストリームの最初の数オクテット内にサイズフィールドを提供することによって、PDUどうしの間に区別を提供する。したがって、ASN.1でコード化されたPDUをTCP/IPソケットから読み取る際には、アプリケーションは、最初の数バイトを処理してパケットの全体のサイズを解釈し、そして解釈を完了する前に完全なPDUを読み取らなければならない。
【0056】
以降は、上述のような1つの例示的なACARSメッセージングプロトコルを記述するASN.1のテキストである。実際のアプリケーションに関するASN.1の表記は、やり取りするデータ、サポートする新しいアプリケーションプロトコル、およびその他の実装形態の具体的な詳細に応じて、さまざまなものとなるであろう。
【0057】
【数3−1】
【0058】
【数3−2】
【0059】
【数3−3】
【0060】
ダウンリンクメッセージ用のACARSの肯定応答のシミュレート
本発明の実際の実施形態によるACARSメッセージングシステムを利用する際には、送信中に従来のARINC/SITAネットワークが迂回される。したがって、通常のACARS Network ACK(A618)は失われる。しかし外部のLRUおよび内部のCMUコンポーネントは、ACARSトランザクションを完了するために、A618 ACARS Network ACKが受信されるのを依然として待っている。この問題は、ダウンリンクACARSメッセージが、上述のようにその後の送信用として保存される(キューに入れられる)か、またはサブネットワークがダウンしたときの送信用として保存される場合に、さらに複雑になる。とりわけ、(1)いつ外部のLRUへのACARS Network ACKをシミュレートして、CMUの内部コンポーネントに知らせ、(2)ACARSメッセージおよび無関係なACARS Network ACKの経路変更を防止するかという問題を解決すべきである。
【0061】
ACARSダウンリンクメッセージの処理−以降は、どのようにしてACARSメッセージングシステムの例示的な実施形態によってACARSダウンリンクメッセージを処理できるかについての概要である。この概要は、シミュレートされたACKの機能の説明に関する背景知識を提供する。
【0062】
ステップ1−AMI(「aircraft modifiable information」)は、(ラベルによって決定される)それぞれのダウンリンクメッセージのタイプごとに、およびそれぞれの発信元(発信元となるLRUやCMU)ごとに、GateLifetimeという新しい属性を定義する。この属性は、ACARSメッセージがCMUのストレージデバイス上で老朽化できる時間増分の数を最長時間まで表す。たとえばGateLifetimeは、最長で48時間までの30分単位の増分の数とすることができる。実際の面では、ストレージデバイスは、CMUの適切なカードに結合されたマスストレージメモリデバイスである。0が定義されている場合には、メッセージは、すぐに送信されることになる(時間の経過は許されない)。このフィールドがTIME_MAXに設定されている場合には、メッセージが削除されることはない(老朽化は、まったく生じない。メッセージは、地上のメッセージサーバへ送信されるまで、CMUのストレージデバイス上に常駐することになる)。このフィールドは、AMIにおける従来のMessage Lifetimeフィールドとは異なる。
【0063】
ステップ2−それぞれのダウンリンクメッセージごとに、ACARS経路指定機能は、下記のことを実行する。
(a)SubnetworkプリファレンスバイトおよびSubnetwork_Availableフラグを使用して、TCP/IPデータリンクを介してメッセージを転送することができるかどうかを判断する。このSubnetwork_Availableフラグは、ACARSメッセージを地上へ転送する能力が利用可能になった場合に、およびその能力が失われた場合に、ACARSメッセージング機能によってACARS経路指定機能へ報告される。
【0064】
(b)ACARSメッセージがどのくらいの期間にわたって老朽化するかを決定する。これは、AMIからのGateLifetimeパラメータおよびMessage Lifetimeパラメータから計算される。この決定は、単純にこれらの2つのライフタイム値のうちの短い方を選択することができる。
【0065】
ステップ3−ACARSメッセージング機能は、下記のことを実行する。
(a)サブネットワークが利用可能でない場合に、ACARS経路指定機能からダウンリンクACARSメッセージを受信する。所与のライフタイムパラメータがゼロよりも大きい場合には、メッセージは、所与の優先順位スキームに従ってCMUのストレージデバイス上に保存される。所与のライフタイムパラメータがゼロである場合には、ACARS経路指定機能は、ACARSダウンリンクメッセージを送信できない旨を通知される。
【0066】
(b)サブネットワークが利用可能である場合に、ACARS経路指定機能からダウンリンクACARSメッセージを受信する。サブネットワークが利用可能になるとすぐに、ACARSルータは、ストレージデバイス上のあらゆるACARSメッセージを優先順位に従って地上のシステムへダウンロードすることを開始する。ACARS経路指定機能からの任意の受信されたACARSメッセージが、すべての保存されているメッセージよりも高い優先順位である場合には、ACARS経路指定機能からのそのACARSメッセージは、次に送信される。ACARS経路指定機能からの任意の受信されたACARSメッセージが、あらゆる保存されているメッセージよりも低い優先順位である場合には、そのメッセージを保存し、ストレージデバイスからTCP/IPデータリンクを介してより高い優先順位のメッセージの送信を継続する。サブネットワークが利用不能になった場合には、それぞれの保存されているメッセージのライフタイムをチェックする。所与のACARSダウンリンクメッセージに関してライフタイムがゼロに等しい場合(または有効期限が切れている場合)には、そのメッセージを破棄する。
【0067】
ACARS Network ACKをシミュレートすることに関する目的/要件−本明細書に記載されているようなACARSメッセージングシステムの実際の実装形態においては、下記の点を考慮すべきである。
【0068】
1.外部のLRUおよび内部のCMUコンポーネントが一度に複数のACARSメッセージを送信できるようにACARS Network ACKをシミュレートすること。
2.GateLifetime属性がゼロである場合には、メッセージが地上のサーバによって実際に受信されるまで、ACARS Network ACKをシミュレートしないこと。
【0069】
3.サブネットワークが起動している場合には、ACARSメッセージをすぐに送信し、ACARS Network ACKをシミュレートすること。
4.ACARSメッセージを送信することができず(たとえば、サブネットワークがダウンしていて)、かつGateLifetime属性がゼロである場合には、そのACARSメッセージを破棄し、ACARS NAKをACARSルータへ返す。このシナリオによって、ACARSルータは、希望に応じてACARSメッセージを経路変更することができるであろう。
【0070】
5.ACARSメッセージを送信することができず(たとえば、サブネットワークがダウンしていて)、かつGateLifetime属性がゼロよりも大きい場合には、ACARS Network ACKをすぐにシミュレートし、そのACARSメッセージを、後で送信するためにストレージデバイス上に保存する。
【0071】
6.ACARSメッセージを送信することができず(たとえば、サブネットワークがダウンしていて)、かつGateLifetime属性がゼロよりも大きい場合には、GateLifetime属性の有効期限が切れたときに、ACARSメッセージを削除する。これによって、経路変更および複数の無関係なACARS Network ACKが防止される。
【0072】
ACARS Network ACKをシミュレートするための使用事例−このセクションは、我々の示された目的および要件ごとに使用事例を提供する。下記のことが、関係者を規定する。
【0073】
1.外部のLRU−CMUから分離されたLRUが、429/A619を介して通信を行う。
2.ACARSスタック−CMU上に常駐するACARSの実装形態。
【0074】
3.AM−ACARSメッセージング機能が、CMU上に常駐し、TCP/IPを介して通信を行う。
4.メッセージサーバ−TCP/IPネットワークに接続された、AMピアである地上のサーバ。
【0075】
たとえこれらの使用事例のすべてが、外部のLRUとの対話を規定するとしても、CMUから発信されたあらゆるACARSメッセージは同じように機能することになるという点に留意されたい。この点に関連して、外部のCMU関係者を任意の内部のCMU関係者と単純に入れ替えても、これらの使用事例は、依然として同じように機能する。
【0076】
事例1:ダウンリンクが成功し、ACKがシミュレートされる場合−図7は、シミュレートされたACK手順を示すメッセージシーケンス線図である。このシナリオは、次の前提条件を前提としている。(1)サブネットワークが起動していること、および(2)GateLifetime属性=「Don’t Care」であること。サブネットワークが起動しているため、GateLifetimeパラメータは無関係である。この例においては、ACARSメッセージは、優先順位の処理のためにCMUのMSD(「mass storage device」)702の中を横断する。ACARSメッセージが地上のメッセージサーバ704へ実際に送信されるとすぐに、「ACARS ACK」がシミュレートされる。
【0077】
事例2:経路変更のためにACARSメッセージを返す場合−図8は、このシナリオを示すメッセージシーケンス線図である。このシナリオは、次の前提条件を前提としている。(1)サブネットワークがダウンしていること、および(2)GateLifetime属性がゼロであること(すぐに送信を行うこと)。サブネットワークがダウンしていて、GateLifetime属性がゼロであるため、ACARSメッセージング機能708は、すぐに「ACARS NAK」メッセージ710をACARSルータに返す。この時点では、シミュレートされた「ACARS ACK」は、まったく不要である。メッセージは、従来のACARS Network ACKを待っている別のサブネットワーク(SATCOM、VHFなど)へ経路変更することができる。
【0078】
事例3:遅延したダウンリンクが成功し、ACKがシミュレートされる場合−図9は、このシナリオを示すメッセージシーケンス線図である。この事例には、次の前提条件が当てはまる。(1)サブネットワークがダウンしていること、および(2)GateLifetime属性がゼロよりも大きいこと(サブネットワークが利用不能である場合には、メッセージをMSD 702上に保存すること)。GateLifetime属性がゼロよりも大きいため、システムは、すぐにACARS Network ACK 706をシミュレートし、ACARSメッセージが首尾よく送信されるのを待つ必要はない。保存されたACARSメッセージは、後で(ただし、GateLifetimeパラメータの有効期限が切れる前に)首尾よく送信される。
【0079】
事例4:ダウンリンクが不成功となり、ACKがシミュレートされる場合−図10は、このシナリオを示すメッセージシーケンス線図である。この事例には、次の前提条件が当てはまる。(1)サブネットワークがダウンしていること、(2)GateLifetime属性がゼロよりも大きいこと(サブネットワークが利用不能である場合には、メッセージをMSD 702上に保存すること)、および(3)サブネットワークが、GateLifetime属性によって規定されている期間内には復活しないこと。GateLifetime属性がゼロよりも大きいため、システムは、すぐにACARS Network ACK 706をシミュレートし、ACARSメッセージが首尾よく送信されるのを待つ必要はない。GateLifetimeパラメータの有効期限が切れているとみなされると、そのACARSメッセージは、MSD 702から削除される。この場合には、そのACARSメッセージは、メッセージサーバ704へ送達されず、そのメッセージを確実に送信するためには、その他の手段を講じることができる。
【0080】
ACARSルータのための処理
以降の実装形態に関する注釈は、本明細書に記載されているACARSメッセージシステムの実際の一実施形態を参照する。もちろん、システムの実際の実装形態は、特定の展開の必要性および要件に従ってさまざまなものとすることができる。
【0081】
ダウンリンクACARSメッセージ
1.メッセージは、いくつかの内部の方法によって、サブネットワークでの送信に値すると判断される。
【0082】
2.さらなる処理のためにメッセージが転送される前に、ACARSルータ上でA619の処理が行われる。そのようなさらなる処理としては、たとえばA619ヘッダの除去、およびA619アプリケーションのACKを含むことができる。
【0083】
3.ACARSメッセージは、セグメント化されない。
4.適切な場合には、ACARSルータの処理の前にACARSメッセージを暗号化することができる。
【0084】
5.サブネットワークに値するメッセージは、すぐに処理され、送信される。キューに入れる必要はなく、ストレージデバイスへ直ちに転送される。キューの状態は、ACARSルータに結合されているストレージデバイス上で保持される。ストレージデバイスは、サブネットワーク行きのACARSメッセージを保存するためのハードディスクとして機能するため、電力の遷移や、その他の電力の途絶によって、これらのACARSメッセージが失われる結果にはならない。
【0085】
6.転送されるダウンリンクACARSメッセージのパラメータには、ユーザテキスト、ラベル、サブラベル、メッセージシーケンス番号、およびフライト識別子が含まれる。ユーザテキストパラメータは暗号化することができるが、その他のパラメータは暗号化されないということが前提となる。
【0086】
アップリンクACARSメッセージ
1.航空機に搭載された終端システム(たとえば、フライト管理システム)行きのメッセージに関しては、そのメッセージがACARSルータによって受信された後で、A619の処理を行うことができる。そのような処理としては、たとえばA619ヘッダを付加すること、およびA619アプリケーションのACKを受信することを含むことができる。
【0087】
2.ACARSメッセージは、セグメント化された形態では(複数のブロックでは)受信されない。真の送信先が、Character Oriented Protocol 429を介したLRUであり、メッセージテキストが、220オクテット(1ブロック)よりも大きい場合には、メッセージテキストを適切なサイズのブロックへと操作するためには、何らかの事後処理を実行する必要が生じるであろう。この「事後処理」は、ACARSルータの任意の適切な処理要素によって実行することができ、そのような処理の場所は、実装形態によって決まる。
【0088】
3.ACARSメッセージは、暗号化された形態で受信することができる。暗号化されている場合には、それらのメッセージは、ACARSルータによって復号される。
4.ACARSルータへ転送されるアップリンクACARSメッセージのパラメータには、ユーザテキスト、ラベル、およびサブラベルが含まれる。ユーザテキストパラメータは暗号化することができるが、その他のパラメータは暗号化されないということが前提となる。
【0089】
5.サブネットワークを介して地上のシステムから受信されるいかなるメッセージも、航空機に搭載されたACARSスタックおよび地上のデータサービスプロバイダーが迂回されるため、A618 ACARS ACKを必要としない。
【0090】
メッセージ処理用の地上のサーバのための処理
1.メッセージ処理サーバは、航空機ごとに1つのTCP/IP接続をサポートする。
2.航空機は、サブネットワークが利用可能なときに、メッセージ処理サーバへのTCP/IP接続を開始する。
【0091】
3.メッセージ処理サーバは、(任意の一時点における空港ゲートの航空機の数に応じて)複数のTCP/IP接続をサポートする。
4.メッセージ処理サーバは、より詳細に上述したようにACARSメッセージングプロトコルを実施する。
【0092】
5.メッセージ処理サーバは、より詳細に上述したようにPDUを投入および解釈する。
6.適切な場合には、メッセージ処理サーバは、テキストフィールドの暗号化および復号処理を実行する。その他のフィールドを暗号化する必要はない。
【0093】
7.メッセージテキストは、セグメント化されない。CMUは、Bit Oriented Protocolと共に使用するために(ARINC 619を通じて)3296オクテットまでのテキストフィールドをサポートすることができる。
【0094】
8.Downlink−ACARS−MSG PDUのテキストフィールドは、複数の補足的なアドレスを含むことができる。メッセージ処理サーバは、これらのメッセージを適切なものとして配信するか、または複数の補足的なアドレスを有するメッセージを認めない。
【0095】
9.ラベルQAからQTを有するダウンリンクACARSメッセージは、送信先へ送達する前にメッセージの特定のフォーマット設定を提供する上で、ARINC/SITAデータサービスプロバイダーに依存している。本明細書に記載されているACARSメッセージングシステムは、サブネットワークが使用されているときにデータサービスプロバイダーに依存しないため、メッセージ処理サーバが、この同じタイプのフォーマット設定を提供する。メッセージ処理サーバは、このフォーマット設定が適切であるかどうかを判断し、適切でない場合には、余分な処理を差し控え、テキストがその生のフォーマットで見える旨をエンドユーザに警告するにとどめる。
【0096】
10.メッセージ処理サーバは、航空機への失われた接続を管理すること(潔く接続を解除するか、またはTCP/IP接続のタイムアウトのいずれか)が必要となる。
前述の詳細な説明において、少なくとも1つの例示的な実施形態を提示したが、膨大な数の変形形態が存在するということを理解されたい。1つまたは複数の例示的な実施形態は、例にすぎず、本発明の範囲、適用可能性、あるいは構成をいかなる形であれ限定することを意図するものではないということも理解されたい。それどころか、前述の詳細な説明は、1つまたは複数の例示的な実施形態を実施するための便利な案内図を当業者に提供する。添付の特許請求の範囲およびその適法な均等物において示されている本発明の範囲から逸脱することなく、要素の機能および構成においてさまざまな変更を行うことができるということを理解されたい。
【図面の簡単な説明】
【0097】
【図1】IPを介したACARSメッセージング用のシステム環境を示す図である。
【図2】IPを介した実用的なACARSメッセージングシステムの展開を示す概略図である。
【図3】本発明によるACARSメッセージングシステムを示す簡略化された概略図である。
【図4】ACARSメッセージを処理する通信管理ユニットを示す簡略化されたソフトウェアアーキテクチャーの図である。
【図5】IPを介してACARSメッセージングシステムによって処理される例示的なシーケンスを示すメッセージシーケンス線図である。
【図6A】ACARSメッセージングプロセスを示す流れ図である。
【図6B】ACARSメッセージングプロセスを示す流れ図である。
【図7】シミュレートされた肯定応答手順を示すメッセージシーケンス線図である。
【図8】ACARSメッセージの経路変更に関連する手順を示すメッセージシーケンス線図である。
【図9】遅延したダウンリンクメッセージに対応するシミュレートされた肯定応答を示すメッセージシーケンス線図である。
【図10】不成功のダウンリンクメッセージに対応するシミュレートされた肯定応答を示すメッセージシーケンス線図である。
【技術分野】
【0001】
本発明は、一般にデータ通信システムに関する。より詳細には、本発明は、TCP/IPネットワークを使用してACARS(「Aircraft Communications Addressing and Reporting System」)メッセージを処理および送信するためのデータ通信システムに関する。
【背景技術】
【0002】
ACARSとは、民間および業務用の航空機によって利用されるアドレス可能なデジタルデータ通信システムである。ACARSは、フライトオペレータが自分のそれぞれの航空隊内の航空機と通信できるようにするために開発された。ACARSは、航空機とそのフライトオペレータとの間で、日常的な報告、データ、および簡単なメッセージを送信するために使用される。ACARSメッセージは、航空機のVHF音声チャネルが混雑するのを避けるために、AMチャネルを使用して送信される。従来のACARSメッセージングは、ARINC 618およびARINC 620の規格によって記述および規定されている。
【0003】
現在、ACARSメッセージは、VHFチャネルやSATCOMリンクなどの高価で相対的に遅いレガシーデータリンクを横断している。このような通信パスは、フライト中の通信には適しているが、航空機が着陸した後の通信にとっては望ましくない可能性がある。これまでは、ACARSメッセージは、航空機が着陸した後でさえ、(米国では)ARINCおよび(ヨーロッパでは)SITAなどの民間企業によって提供されている可能性のある既存のシステムおよびプロトコルを介して送信しなければならなかった。ほとんどの民間航空機の通信は着陸後に行われるため、ACARSメッセージングは、航空会社にとって、とりわけ非常に大きな航空隊を有する航空会社にとって、非常に高くつく可能性がある。
【発明の開示】
【発明が解決しようとする課題】
【0004】
したがって、航空機にとって着陸後に利用可能なより高速でより安価なデータ通信システムを利用できるACARSメッセージングシステムを有することが望ましいであろう。たとえば、ACARSメッセージングシステムにとっては、インターネット、TCP/IPベースの通信、および802.11リンク等の無線リンクなど、既存のデータ通信テクノロジーを活用することが有利であろう。さらに、本発明のその他の望ましい特性および特徴については、以降の詳細な説明および添付の特許請求の範囲を、添付の図面ならびに前述の技術分野および背景技術と併せて理解すれば、明らかになるであろう。
【課題を解決するための手段】
【0005】
航空機の着陸後にACARSメッセージを送信するためのシステムは、従来のACARSメッセージを、プロトコルのTCP/IPスイートに対応するフォーマットへと翻訳する機内に搭載された処理ロジックを含む。この翻訳によって、このシステムは、インターネットや、航空会社によって保持されているLANアーキテクチャーなどの高速のネットワークを使用して、ACARSメッセージコンテンツを送信することができる。この翻訳はまた、ARINCおよびSITAによって保持されている従来の高価なネットワークを迂回する方法でのACARSメッセージコンテンツの送信を容易にする。
【0006】
本発明の上記およびその他の態様は、メッセージコンテンツを含むACARSメッセージを入手するステップと、そのACARSメッセージをASN.1のフォーマットへとコード化するステップと、そのコード化されたメッセージを、メッセージコンテンツを含む(TCP/IPに準拠した)ACARS−IPメッセージへと翻訳するステップと、TCP/IPデータリンクを介して航空機とメッセージ処理サーバとの間でACARS−IPメッセージを送信するステップとを含むACARSメッセージングの方法による1つの形態で実行することができる。
【0007】
本発明のより完全な理解は、詳細な説明および特許請求の範囲を以降の図面と併せて考察しながら参照することによって得ることができ、それらの図面においては、同様の参照番号は、それらの図面を通じて類似した要素を指している。
【発明を実施するための最良の形態】
【0008】
以降の詳細な説明は、本質的に例示的なものにすぎず、本発明や、本発明の応用および使用を限定することを意図するものではない。さらに、前述の技術分野、背景技術、発明の開示、あるいは以降の詳細な説明に提示されているいかなる明示された理論や暗示された理論によっても拘束される意図はまったくない。
【0009】
本明細書では、機能的および/または論理的なブロックコンポーネントならびにさまざまな処理ステップという観点から、本発明について説明することができる。そのようなブロックコンポーネントは、指定された機能を実行するように構成されている任意の数のハードウェアコンポーネント、ソフトウェアコンポーネント、および/またはファームウェアコンポーネントによって実現することができるという点を理解されたい。たとえば本発明の一実施形態は、1つまたは複数のマイクロプロセッサやその他のコントロールデバイスのコントロール下でさまざまな機能を実行できるさまざまな集積回路コンポーネント、たとえばメモリ要素、デジタル信号処理要素、ロジック要素、ルックアップテーブルなどを採用することができる。さらに本発明は、任意の数のデータ送信プロトコルと共に実施することができ、本明細書に記載されているシステムは、本発明の1つの例示的な応用例にすぎないということを当業者なら理解できるであろう。
【0010】
説明を簡潔にするために、ACARSメッセージの作成、経路指定、および処理、TCP/IPデータの送信、信号伝達、ネットワークのコントロール、ならびにシステム(およびシステムの個々のオペレーティングコンポーネント)のその他の機能的な側面に関連する従来の技術については、本明細書では詳しくは説明しないかもしれない。さらに、本明細書に含まれるさまざまな図に示されている結び付ける線は、さまざまな要素どうしの間における機能的な関係および/または物理的な結び付きの例を表すことを意図している。実際の実施形態においては、多くの代替または追加の機能的な関係や物理的なつながりが存在する可能性があるという点に留意されたい。
【0011】
本発明によるACARSメッセージングシステムは、航空機にとって利用可能な既存のTCP/IPネットワークのデータリンクを活用するように設計されており、したがって航空機は、ACARSメッセージコンテンツを地上のピアへ通信することができる。簡単に言えば、本発明は、ACARSメッセージがインターネットなどのTCP/IPネットワークを横断できるようにする発信元および/または送信先のサブシステムによって実行されるアプリケーションプロトコルおよび処理に関する。ユーザの観点からは、たとえ実際にはACARSメッセージコンテンツが低コストで高帯域幅の商用ネットワークを横断していても、ACARSメッセージの通信は、従来のデータリンクを横断しているように見える。注目すべきことに、ARINCやSITAは、(SATCOM/VHFを介した無線から地上へのトランザクションおよび地上から無線へのトランザクションとは異なり)ACARSメッセージングシステムによって処理されるACARSのトラフィック内に含まれる必要はなく、ACARSメッセージコンテンツは、データサービスプロバイダーによって提供されるいかなる処理も伴わずに、TCP/IPネットワークを介して航空機から地上の終端システムへ(および、その逆の方向へ)直接転送することができる。
【0012】
図1は、本発明によるシステムを展開できるACARSメッセージングシステム環境100を示す図である。この環境100は一般に、着陸したばかりの、あるいは着陸する寸前の航空機102、たとえば民間航空会社の航空機を含む。いったん着陸すると、航空機102は、インターネットなどの適切なTCP/IPネットワーク104との通信を確立することができる。この点に関連して、航空機102は、TCP/IPデータリンクを確立するように構成されている機内に搭載されたデータ通信要素を含むことが好ましい。本明細書に記載されている本発明の例示的な実施形態においては、メッセージ処理サーバ106は、TCP/IPネットワーク104との通信を確立することができる。典型的な環境100においては、メッセージ処理サーバ106は、目的地の空港に設置された地上のユニットである。
【0013】
実際の面では、TCP/IPネットワーク104は、TCP/IPのトラフィックをデータの送信元からデータの送信先へと経路指定する目的で相互接続された任意の数の物理的なデータリンクを含むことができる。この点に関連して、ACARSメッセージングシステムは、以降でさらに詳細に説明するように、ACARSメッセージコンテンツの通信を容易にするために、航空機102とメッセージ処理システム106との間にTCP/IPデータリンク108を確立することができる。航空機の航空隊を取り扱うために、メッセージ処理システム106は、複数のTCP/IP接続(各航空機ごとに1つの接続)をサポートするように構成されている。本明細書で使用される際、「TCP/IPデータリンク」とは、プロトコルのTCP/IPスイートに準拠してデータを移送できる任意の通信リンクを指す。TCP/IPデータリンク108は、1つまたは複数のコンポーネントを含むことができ、これらのコンポーネントには、任意の数の無線のTCP/IPデータリンク、および任意の数の有線のTCP/IPデータリンクが含まれる。
【0014】
図2は、実用的なACARSメッセージングシステムの展開を示す概略図である。図2においては、航空機102は、破線によって概略的に示されている。航空機102は、機内に搭載されたCMU(「communications management unit」)200、および機内に搭載されたデータ通信要素、たとえばTWLU(「terminal area wireless LAN unit」)202を含むことができる。実際の面では、CMU 200は、LRU(「line replaceable unit」)ハードウェアコンポーネントであり、従来のACARSメッセージングと、本明細書に記載の改良されたACARSメッセージング機能とを含む複数の航空機通信機能をサポートする処理ロジックを含む。CMU 200は、少なくとも1つのACARSルータコンポーネントを含み、このACARSルータコンポーネントは、ACARSメッセージの処理および経路指定を実行する。ACARSルータコンポーネントはまた、ACARSメッセージのコード化および翻訳に関連するTCP/IPスタックおよび処理ロジックを含む。実際の実装形態においては、ACARSルータコンポーネントは、1つまたは複数の物理的なモジュール、カード、あるいはデバイスと共に実現することができる(この場合には、このようなモジュール、カード、あるいはデバイスは、同時処理を容易にするために、お互いに通信するように、また独立したタスクを実行するように構成されることが好ましい)。
【0015】
例示的な実施形態においては、CMU 200は、適切なデータリンク、たとえば10Base−Tイーサネットデータリンクを用いてTWLU 202に結合される。TWLU 202(これもLRUとすることができる)は、航空機102と、目的地の空港によって保持されているLANなどの地上のシステムとの間における無線データ通信をサポートするハードウェアおよび処理ロジックを含む。実際の実施形態においては、TWLU 202は、航空機102と、地上のネットワークに関連付けられている無線アクセスポイント206との間に無線データリンク204を確立する。例示的な実施形態においては、無線データリンク204は、TCP/IPデータリンクである。実際の面では、無線データリンク204は、802.11(a、b、あるいはg)データリンク、Bluetoothデータリンク、HomeRFデータリンク、HiperLANデータリンク、GPRS、無線電信、UMTS、SATCOMなどとして実現することができる。本明細書に記載されている民間航空機の例のために、無線アクセスポイント206は、目的地の空港に設置されている地上のユニットとすることができる。無線アクセスポイント206は、TCP/IPネットワーク104に接続され、したがって、航空機102とメッセージ処理サーバ106との間にTCP/IPデータリンク108が確立される。
【0016】
図3は、本発明によるACARSメッセージングシステム300を示す簡略化された概略図である。図3は、CMU 200およびメッセージ処理サーバ106に関連付けられている機能要素、データ要素、および処理ロジックを示している。一般にCMU 200は、ACARSルータ302、ACARSメッセージ304、ASN.1エンコーダ306、およびTCP/IPトランスレータ308という要素を含むことができる。一般にメッセージ処理サーバ106は、TCP/IPトランスレータ310、ASN.1デコーダ312、ACARSメッセージ組み立てロジック314、およびメッセージコンテンツ抽出ロジック316という要素を含むことができる。説明を簡単にするために、図3は、ACARSダウンリンクメッセージ、すなわちCMU 200からメッセージ処理サーバ106へ送信されるACARSメッセージの処理および操作を対象とする。実際の実施形態においては、ACARSメッセージングシステム300は、双方向のメッセージの通信用に構成され、そのようなものとして、CMU 200およびメッセージ処理サーバ106は双方とも、逆方向のACARSアップリンクメッセージをサポートする機能要素、データ要素、および処理ロジックを含むことができる。
【0017】
CMU 200を参照すると、ACARSルータ302は、ACARSメッセージ304の作成および処理を含んで、着信および発信のACARSメッセージトラフィックを処理する。従来のACARSメッセージの構成および特徴は、当業者にはよく知られており、したがって、本明細書では詳しくは説明しない。このような従来のACARSメッセージは、ARINCの規格に準拠するメッセージ、たとえばA618メッセージ、A619メッセージ、およびA620メッセージを含むことができる。ASN.1エンコーダ306は、ACARSメッセージを、ASN.1に準拠するフォーマットへコード化し、変換し、および/または翻訳するように構成されている。ASN.1は、データの言語の実装および物理的な表示を問わずに、用途を問わずに、ならびにデータの複雑さを問わずに、プロトコルによって送信されるデータを記述するのに使用される正規の表記である。ASN.1は、CMU 200とメッセージ処理サーバ106との間でACARSのコンテンツをやり取りするための明確な方法を提供する。TCP/IPトランスレータ308は、コード化されたACARSメッセージを、プロトコルのTCP/IPスイートに準拠した対応するACARS−IPメッセージへと翻訳し、変換し、および/またはフォーマット設定するように機能する。「ACARS−IPメッセージ」という用語は、本明細書では、そのようなメッセージを従来のACARSメッセージから区別するために使用される。
【0018】
上述のように、ACARS−IPメッセージは、適切なTCP/IPデータリンクを介して、航空機とメッセージ処理サーバ106との間で送信することができ、そのようなTCP/IPデータリンクは、1つまたは複数の無線のTCP/IPデータリンクを含むことができる。メッセージ処理サーバ106を参照すると、ACARS−IPメッセージは、TCP/IPトランスレータ310によって受信され、処理される。トランスレータ310は、ACARS−IPメッセージを、ASN.1デコーダ312によって処理できる対応するデータへと翻訳し、変換し、および/またはフォーマット設定するように機能する。ASN.1デコーダは、このデータをデコードし、変換し、および/または翻訳して、ASN.1エンコーダ306によって実行されたASN.1のコード化を取り除くように構成されている。ACARSメッセージ組み立てロジック314は、デコードされたデータを処理して、従来のACARSフォーマットを有する受信されたACARSメッセージを組み立てることができる。その後、メッセージコンテンツ抽出ロジック316は、任意の適切な方法でさらに処理または操作するために、受信されたACARSメッセージから有用なコンテンツのうちの任意のものを抽出することができる。A620メッセージを「再び組み立てる」代わりに、適切な処理のために任意の数のプロセスに生のデータを投入することもできる。
【0019】
本明細書に記載されている例示的な実施形態は、A618メッセージ、A619メッセージ、およびA620メッセージを取り扱う。A618メッセージは、航空機102と、DSP(「data service provider」)などの地上のシステムとの間で送信されるメッセージである。ACARSメッセージングシステム300は、航空機102の着陸後にA618メッセージを送信するために利用されることが好ましい。従来のACARSメッセージング技術は、フライト中にA618メッセージを送信するために利用することができる。A619メッセージは、CMU 200と、航空機102上のその他のLRUとの間で送信される「内部の」メッセージである。A620メッセージは、DSPなどの地上のシステムと、終端システム(実際の民間航空機の展開においては、終端システムは、航空会社によって保持される)との間で送信されるメッセージである。
【0020】
図4は、CMU 400の一部を示す簡略化されたソフトウェアアーキテクチャーの図である。CMU 400は、航空機102のその他の外部のLRU 402と、ACARSメッセージングをサポートするレガシーサブネットワーク404と、本明細書に記載されているようなTCP/IPサブネットワーク406と、航空機のコックピット内のディスプレイおよび入力デバイスとして機能するMCDU(「multifunction control and display unit」)408と通信するように構成されている。上述のように、CMU 400は、(1つまたは複数の)TCP/IPサブネットワーク406を介して送信するためにACARSメッセージをコード化および翻訳することに関連する処理ロジックを含むことができる。CMU 400はまた、着信および発信のACARSメッセージトラフィックを処理するACARSルータ410と、ACARSルータ410に結合されているA619プロトコルハンドラ412と、ACARSルータ410に結合されているA618プロトコルハンドラ414とを含む。
【0021】
従来のACARSメッセージングプロセスは、下記のように実行することができる。LRU 402は、A619プロトコルハンドラ412と通信し、A619プロトコルハンドラ412は、ACARSルータ410によって処理するために適切なA619メッセージを作成する。次いでACARSルータ410は、そのメッセージをA618プロトコルハンドラ414へ伝達し、A618プロトコルハンドラ414は、適切なA618メッセージを作成する。そしてそのA618メッセージは、(1つまたは複数の)レガシーサブネットワーク404へ回送される。これとは対照的に、本発明によるACARSメッセージングプロセスは、下記のように実行することができる。航空機のパイロットは、その航空機に搭載されているMCDU 408へメッセージを(たとえば、キーボードへ打ち込むことによって)入力することができる。次いでそのメッセージは、A619プロトコルハンドラ412を迂回する方法でACARSルータ410へ伝達される。同様に、(1つまたは複数の)TCP/IPサブネットワーク406を介して送信されるメッセージは、ACARSルータ410への通過中にA618プロトコルハンドラ414を迂回することができる。したがって、本発明の技術を利用して、従来のA619およびA618のACARSメッセージ処理を回避することができる。
【0022】
図5は、ACARSメッセージングシステムによって処理される例示的なシーケンスを示すメッセージシーケンス線図であり、図6は、ACARSメッセージングプロセス600を示す流れ図である。本発明によるACARSメッセージングシステムのオペレーションについて、図5および図6と関連させて説明する。図5においては、時間が縦のスケールによって表されており、時間は上から下へと進む。図5は、実際の実施形態においてはCMU内で実現できるACARSルータ502と、TWLU 504と、メッセージ処理サーバ506とによって実行される処理または経路指定を示している。プロセス600および例示的なメッセージシーケンス線図は、次のことを前提としている。(1)CMUが初期設定されており、使用可能であること。(2)航空機が着陸しているか、またはその他の形で無線アクセスポイントの付近におり、それによってTCP/IP接続を確立できること。(3)地上の終端システム、たとえばメッセージ処理サーバが、TCP/IP接続を探してCMUからモニタリングを行っていること。(4)地上のネットワークインフラストラクチャーが整備されており、正常に機能していること。
【0023】
図5を参照すると、アイテム1は、本明細書に記載されているようなACARSメッセージの処理をトリガーする任意のイベントを表している。このイベントは、航空機の着陸および着陸のイベントをACARSルータ502へ通知すること、指定された量のメッセージデータが利用できること、適切なTCP/IP接続が利用できることなどに相当することができる。このイベントによって、ACARSルータ502は、TCP/IPネットワーク接続を確立する準備を行うことができる。たとえばACARSルータ502は、メッセージ処理サーバ506の地上のIPアドレスおよび/またはホストネームを処理することができる。図6を参照すると、ACARSメッセージングプロセス600は、メッセージ処理サーバのIPアドレスを入手することによって開始することができる(タスク602)。このIPアドレスは、TCP/IPネットワークへの接続にとって必要である。送信先のホストネームおよびIPアドレスは、CMU用に保存されているAMI(「aircraft modifiable information」)から解明することができる。TCP/IPポートの数は、個別の実装形態に応じて、AMIを介して設定できるようにすることもでき、あるいは一定に保つこともできる。所与の航空会社にとって、メッセージ処理サーバ506のIPアドレスは、1つの空港から別の空港へと変更することもでき、あるいは空港にかかわらずに一定に維持することもできる。
【0024】
アイテム2は、データリンク層のレベルにおける無線接続が確立された旨のTWLU 504からACARSルータ502への表示を表している。すなわち、TCP/IPネットワーク上で実行されるネットワーキングプロトコルは、データをやり取りできるようになっている。この時点で、ACARSメッセージングプロセス600は、航空機とメッセージ処理サーバ506との間にTCP/IPデータリンクを確立することができる(タスク604)。この点に関連して、シーケンス線図のアイテム3は、所与のIPアドレスにおいてメッセージ処理サーバ506とのTCP/IP接続を確立する試みを表している。実際の実施形態においては、最初の試みは、経路指定情報がやり取りされるために、および/または不安定な無線データリンクのために失敗するかもしれないが、安定した接続が確実に確立されるように複数回の試みを行うこともできる。
【0025】
ACARSメッセージングプロセス600は、ハンドシェイクメッセージを、ASN.1に準拠したハンドシェイクメッセージへとコード化する(タスク606)。実際の面では、ハンドシェイクメッセージは、航空機用の少なくとも1つの航空機登録番号を含むコンテンツを含み、この航空機登録番号によって、メッセージ処理サーバ506は、航空機を識別することができる。ハンドシェイクメッセージ内に含むことができるその他の情報としては、テールID、フライト番号、およびメッセージ処理サーバ506が発信元の航空機やCMUのIDを判別する上で役に立つことができるその他の任意のデータが含まれる。そしてコード化されたハンドシェイクメッセージは、TCP/IPに準拠したACARS−IPハンドシェイクメッセージへと翻訳またはその他の形でフォーマット設定することができ(タスク608)、このACARS−IPハンドシェイクメッセージもまた、少なくとも航空機登録番号を含む。シーケンス線図のアイテム4、およびプロセス600のタスク610は双方とも、TCP/IPデータリンクを介したCMUからメッセージ処理サーバ506へのACARS−IPハンドシェイクメッセージの送信を表している。この送信の意図は、CMUとメッセージ処理サーバ506との間に通信セッションを確立することである。
【0026】
ハンドシェイクメッセージに応答して、メッセージ処理サーバ506は、同様の手順を実行して、ACARS−IP応答ハンドシェイクメッセージを作成して送信することができる。例示的な実施形態においては、ACARS−IP応答ハンドシェイクメッセージは、メッセージ処理サーバ506を識別する一意のトークン/文字列の識別子を含む。シーケンス線図のアイテム5は、メッセージ処理サーバ506からCMUへのACARS−IP応答ハンドシェイクメッセージの送信を表している。ACARSメッセージングプロセス600を参照すると、CMUが応答ハンドシェイクメッセージを受信しなかった場合には(クエリータスク612)、プロセス600は、終了するか、または別のハンドシェイクメッセージを送信することができる。応答ハンドシェイクメッセージが受信された場合には、プロセス600は継続し、TCP/IP接続を利用して、航空機とメッセージ処理サーバ506との間で任意の数のダウンリンクメッセージおよび/または任意の数のアップリンクメッセージを送信できるようになる。いったんTCP/IP接続が確立されると、アップリンクメッセージおよびダウンリンクメッセージを同時に送信することができる。したがってプロセス600は、ダウンリンクメッセージおよびアップリンクメッセージを処理するための別々のサブプロセスを示している。
【0027】
ダウンリンクメッセージに関しては、プロセス600が継続し、メッセージキューや、ACARSメッセージのその他のソースから次のACARSダウンリンクメッセージを入手する(タスク614)。本発明によるACARSメッセージングシステムは、下記のように低コストのTCP/IPネットワークを利用するように構成することができる。航空機が依然としてフライト中であるか、あるいはその他の事情で本明細書に記載されているようにTCP/IP接続を確立することができない間には、従来のACARSダウンリンクメッセージに、それらの重要性および/または時間に対する配慮に従って優先順位を付けることができる。この点に関連して、決定的に重要なメッセージ、および遅延が許されないメッセージを、従来のACARSメッセージング技術を使用して処理および送信することができる。その一方で、さほど重要ではないメッセージ、およびすぐに送達する必要のないメッセージには、1つまたは複数のACARS−IPダウンリンクメッセージとして後で送信するために優先順位を付けてキューに入れることができる。機内に搭載されたメッセージキュー(これは、データストレージ要素として実現することができる)は、着陸後にTCP/IPデータリンクを介して後で送信するために、それらのメッセージを保存することができる。
【0028】
いったんTCP/IPデータリンクが確立されると、ACARSルータは、TCP/IPサブネットワークを使用する準備が整った旨を通知される。この時点で、ダウンリンクメッセージとアップリンクメッセージとを含むACARSメッセージトラフィックが生じることができる。シーケンス線図は、アイテム6によって表されているダウンリンクメッセージの例示的な処理(適切にフォーマット設定されたACARS−IPダウンリンクメッセージを、TCP/IPデータリンクを介してメッセージ処理サーバ506へ送信すること)を示している。
【0029】
ACARSメッセージングプロセス600を再び参照すると、メッセージコンテンツを含むACARSダウンリンクメッセージは、そのメッセージコンテンツを含むASN.1準拠メッセージへとコード化されることが好ましい(タスク616)。さらにプロセス600は、コード化されたメッセージを、そのメッセージコンテンツを含むACARS−IPダウンリンクメッセージへと翻訳し、変換し、あるいはその他の形でフォーマット設定する(タスク618)。実際の実施形態においては、ACARSルータ502は、TCP/IPデータリンクを介してメッセージ処理サーバ506へ送信するために、ACARSのテキストメッセージおよびパラメータをASN.1のPDU(「protocol data unit」)へと処理してカプセル化する(タスク620)。上述のように、TCP/IPデータリンクは、1つまたは複数の無線データリンクを含むことができ、タスク620は、インターネットを介してACARS−IPダウンリンクメッセージを送信することができる。
【0030】
ACARS−IPダウンリンクメッセージは、メッセージ処理サーバ506において受信され(タスク622)、メッセージ処理サーバ506は、受信したメッセージの処理を取り扱う。簡単に言えば、メッセージ処理サーバ506は、TCP/IPパケットを任意の適切なフォーマットへと変換するように機能する。一実施形態においては、メッセージ処理サーバ506は、TCP/IPパケットを、レガシーACARSメッセージングシステムによって認識できるフォーマットへと変換する。あるいは、さまざまなフォーマットを利用するその他のプロセスやシステム(たとえば、データベース、統計分析ルーチン、自動応答システム、Eメール、メモリデバイスなど)に生のデータを投入することもできる。この点に関連して、ACARSメッセージングプロセス600は、受信されたACARS−IPメッセージのASN.1のデコード(タスク624)、および受信されたACARSメッセージの組み立て(タスク626)を実行することができる。プロセス600は、受信されたACARSメッセージを、従来のACARSフォーマットに再び準拠するように組み立てることができる。最終的に、プロセス600は、受信されたメッセージからACARSメッセージコンテンツを抽出し(タスク628)、および/またはシステムの必要性および要件に従ってACARSメッセージの処理を実行する(タスク630)。
【0031】
シーケンス線図はまた、アップリンクメッセージの例示的な処理を示しており、これは、アイテム7によって表されている。上述のように、実際の実施形態は、アップリンクメッセージおよびダウンリンクメッセージを任意の時点で送信することができ、図5に示されているタイミングは、メッセージングプロセスを説明するのに有用な簡略化されたシナリオを表しているにすぎない。
【0032】
完全を期すために、ACARSメッセージングプロセス600は、同時にアップリンクメッセージを送信する可能性を含む。アップリンクメッセージの処理は、メッセージキューから、あるいはメッセージ処理サーバ506に関連付けられている任意の適切なソースから次のACARSアップリンクメッセージを入手することによって、開始することができる(タスク632)。その後、プロセス600は、ACARSアップリンクメッセージをASN.1準拠メッセージへとコード化することに進む(タスク634)。さらにプロセス600は、そのコード化されたメッセージを、所望のメッセージコンテンツを含むACARS−IPアップリンクメッセージへと翻訳し、変換し、あるいはその他の形でフォーマット設定する(タスク636)。実際の実施形態においては、メッセージ処理サーバ506は、タスク634およびタスク636の最中に1つまたは複数のASN.1のPDUを作成する。その後、ACARS−IPアップリンクメッセージは、確立されたTCP/IPデータリンクを介して航空機へ送信することができる(タスク638)。
【0033】
ACARS−IPアップリンクメッセージは、最終的にはACARSルータ502によって受信され、ACARSルータ502は、受信されたメッセージの処理を取り扱う。簡単に言えば、ACARSルータ502は、TCP/IPパケットを任意の適切なフォーマットへと変換するように機能する。一実施形態においては、ACARSルータ502は、TCP/IPパケットを、レガシーACARSメッセージングシステムによって認識できるフォーマットへと変換する。あるいは、さまざまなフォーマットを利用するその他のプロセスやシステム(たとえば、データベース、統計分析ルーチン、自動応答システム、Eメール、メモリデバイスなど)に生のデータを投入することもできる。この点に関連して、ACARSメッセージングプロセス600は、受信されたACARS−IPアップリンクメッセージのASN.1のデコード(タスク640)、および受信されたACARSアップリンクメッセージの組み立て(タスク642)を実行することができる。プロセス600は、受信されたACARSアップリンクメッセージを、従来のACARSフォーマットに再び準拠するように組み立てることができる。最終的に、プロセス600は、受信されたメッセージからACARSメッセージコンテンツを抽出し(タスク644)、および/またはシステムの必要性および要件に従ってACARSメッセージの処理を実行する(タスク646)。たとえばそのメッセージは、送信先に応じて、航空機のフライト管理システムなど、航空機に搭載されたその他の終端システムへ転送することができる。
【0034】
それぞれのアップリンクメッセージまたはダウンリンクメッセージが処理されると、上述のように次のメッセージを処理することができる。この点に関連して、図6は、任意の数のメッセージを繰り返し処理することを容易にするループとして、ダウンリンクとアップリンクの分岐を示している。
【0035】
例示的な実装形態
以降は、本発明の実際の実施形態と共に利用できる例示的なACARSメッセージングアプリケーションプロトコルのハイレベルな設計である。この例は、本発明の1つの可能な実際の実装形態を反映しているだけであり、本発明は、この具体的な実施形態やいかなる特定の実装形態にも限定されるものではないという点を理解されたい。CMU上でのシステム設計のアプローチは、従来のACARSスタックを迂回し、ACARS「ユーザテキスト」を地上の終端システムへ直接送信することである。このアプローチを採用する理由は、不要なACARSの処理(ARINC 618/620)を迂回し、メッセージごとのACARSの無線−地上間のACKに対する必要性を軽減し(これによって、ACARSプロトコルのロックステップの制限も軽減し)、いかなる地上の終端システムによっても理解できるフォーマットで「ユーザテキスト」を提供することである。このアプローチには、ARINCやSITAのネットワーク上のデータサービスプロバイダーによる処理は不要である。
【0036】
この意図は、地上の終端システムに十分な情報を提供して、メッセージを、あたかもデータサービスプロバイダーからA620のフォーマットで受信したかのように表示することである(以降の表1を参照されたい)。地上の終端システムは、A620のフォーマットで表示するようにデータをアレンジすることを担当するか、あるいは地上の終端システムは、情報のうちの任意のものまたはすべてを任意のフォーマットで表示することができる。
【0037】
A620ダウンリンクメッセージの例−例示的なA620 ACARSダウンリンクメッセージについて、以降で説明する。この意図は、A620メッセージを定式化して厳密に見た目どおりに表示するために地上の終端システムが使用できる情報を提供することである。実際の面では、CMUは、下に示されているACARSメッセージを一字一句そのまま地上の終端システムへ送信することはしない。この例示的なダウンリンクメッセージは、次のようにフォーマット設定される。
【0038】
【数1】
【0039】
例示的なA620メッセージの分解−表1は、例示的なA620 ACARSメッセージを分解し、どのようにして地上の終端システム上ですべての必要な情報を得ることができるかについての説明を提供する。列1の「620ダウンリンクACARSメッセージ」は、A620 ACARSメッセージ内のフィールド名を定義する。列2の「源」は、その情報をどこから得ることができるかについて記載している。「GND」は、演繹的に地上の終端システムがこの情報を知っていることを意味している。「CMU」は、この情報が、本明細書に記載されているACARSメッセージングプロトコルの交換中にCMUによって提供されることを意味している。「T−CMU」は、情報が、(本明細書に記載されているACARSメッセージングプロトコルの交換を使用することを通じて)CMUによって提供される情報から地上で翻訳されることを意味している。列3の「説明」は、情報を地上でどのようにして投入することができるかに関する指示を提供する。最後の列の「例」は、情報をA620 ACARSメッセージの例へと再び対応付ける。
【0040】
【表1】
【0041】
SMIは、ACARSメッセージのラベルおよびサブラベルをそのSMIに対応付けることによって、地上の終端システム上で決定することができるという点に留意されたい。この対応付けは、ARINC 620−4仕様の付属書類Cにおいて提供される。さらに、ACARSメッセージのラベルおよびサブラベルは、(上述のACARSメッセージングプロトコルの交換を介して)CMUによって提供される。
【0042】
A620ダウンリンクメッセージングプロトコル−以降は、CMUによって作成して地上へ送信できるPDUのハイレベルな組み立てである。
【0043】
【表2】
【0044】
【表3】
【0045】
実際の実施形態においては、信頼できる移送システム(すなわち、TCP/IP接続)のおかげで、地上から受信されるすべてのPDUに対してCMUによってACK(「acknowledgement」)PDUを送信する必要はない。
【0046】
A618アップリンクメッセージの例−部分的なA618アップリンクメッセージの一例について、以降で説明する。このメッセージは、従来のACARSメッセージの「STX」フィールドの後のすべての部分を含む。上述のように、CMU内のACARSスタックは迂回され、これによって、ACARSメッセージ内の完全なA618ヘッダの必要性がなくなる。それでもなお、航空機上のその他の終端システム(たとえば、プリンタやフライト管理システムなどのLRU)が、フォーマット設定されたヘッダを待っている場合には、問題が表面化する可能性がある。したがって、ACARSメッセージをCMUへ送信する前に、表4(以降を参照されたい)に記載されているようなヘッダを投入することが、地上の終端システムの役割である。このヘッダは、常に必要というわけではなく、その必要性は、ラベルおよびサブラベルごとにARINC仕様620−4の付属書類Cを参照することによって、判断することができる。したがって、ある場合には、地上がユーザテキストのみをACARSメッセージとして提供することが予想され、その他の場合には、部分的なA618ヘッダがACARSメッセージのユーザテキストに添付されるであろう。例示的なアップリンクメッセージは、次のようにフォーマット設定される。
【0047】
【数2】
【0048】
例示的なA618メッセージの分解−表4は、任意選択で投入されたヘッダと任意選択のサブラベルとを有する部分的なA618 ACARSメッセージの分解を提供する。列1の「アップリンクACARSメッセージフィールド」は、ACARSメッセージ内のフィールド名を定義する。列2の「説明」は、情報を地上でどのようにして投入することができるか、およびそうした情報が任意選択であるかどうかに関する指示を提供する。最後の列の「例」は、情報をA618 ACARSメッセージの例へと再び対応付ける。CMUは、ACARSメッセージがこのフォーマットであることを要求している。
【0049】
【表4】
【0050】
A618アップリンクメッセージングプロトコル−以降は、地上の終端システムによって作成して航空機上のCMUへ送信できるPDUのハイレベルな組み立てである。
【0051】
【表5】
【0052】
【表6】
【0053】
実際の実施形態においては、信頼できる移送システム(すなわち、TCP/IP接続)のおかげで、CMUから受信されるすべてのPDUに対して地上の終端システムによってACK PDUを送信する必要はない。
【0054】
ASN.1の表記
上述のように、ASN.1は、データの言語の実装および物理的な表示を問わずに、プロトコルによって送信されるデータを記述するのに使用される正規の表記である。ASN.1を使用することの実際の利点は、フリーウェアのASN.1コンパイラが存在することである。ASN.1コンパイラは、ASN.1のテキストをCのソースコードへと変換する。生成されたCのコードは、内部の(Cのソースコードの)表示と、データをピアへ送信するために使用される対応するBasic Encoding Rulesフォーマットとの間で値を変換するための同等のデータ構造およびルーチンを含む。
【0055】
TCPは、ストリーム指向のプロトコルであり、つまり、1つのPDUの終わりと、次のPDUの始まりとの間に組み込まれた区別がまったく存在しない。したがって所与のアプリケーションは、受信したオクテットストリームからPDUを解読しなければならない。ASN.1でコード化されたオクテットストリームは、ストリームの最初の数オクテット内にサイズフィールドを提供することによって、PDUどうしの間に区別を提供する。したがって、ASN.1でコード化されたPDUをTCP/IPソケットから読み取る際には、アプリケーションは、最初の数バイトを処理してパケットの全体のサイズを解釈し、そして解釈を完了する前に完全なPDUを読み取らなければならない。
【0056】
以降は、上述のような1つの例示的なACARSメッセージングプロトコルを記述するASN.1のテキストである。実際のアプリケーションに関するASN.1の表記は、やり取りするデータ、サポートする新しいアプリケーションプロトコル、およびその他の実装形態の具体的な詳細に応じて、さまざまなものとなるであろう。
【0057】
【数3−1】
【0058】
【数3−2】
【0059】
【数3−3】
【0060】
ダウンリンクメッセージ用のACARSの肯定応答のシミュレート
本発明の実際の実施形態によるACARSメッセージングシステムを利用する際には、送信中に従来のARINC/SITAネットワークが迂回される。したがって、通常のACARS Network ACK(A618)は失われる。しかし外部のLRUおよび内部のCMUコンポーネントは、ACARSトランザクションを完了するために、A618 ACARS Network ACKが受信されるのを依然として待っている。この問題は、ダウンリンクACARSメッセージが、上述のようにその後の送信用として保存される(キューに入れられる)か、またはサブネットワークがダウンしたときの送信用として保存される場合に、さらに複雑になる。とりわけ、(1)いつ外部のLRUへのACARS Network ACKをシミュレートして、CMUの内部コンポーネントに知らせ、(2)ACARSメッセージおよび無関係なACARS Network ACKの経路変更を防止するかという問題を解決すべきである。
【0061】
ACARSダウンリンクメッセージの処理−以降は、どのようにしてACARSメッセージングシステムの例示的な実施形態によってACARSダウンリンクメッセージを処理できるかについての概要である。この概要は、シミュレートされたACKの機能の説明に関する背景知識を提供する。
【0062】
ステップ1−AMI(「aircraft modifiable information」)は、(ラベルによって決定される)それぞれのダウンリンクメッセージのタイプごとに、およびそれぞれの発信元(発信元となるLRUやCMU)ごとに、GateLifetimeという新しい属性を定義する。この属性は、ACARSメッセージがCMUのストレージデバイス上で老朽化できる時間増分の数を最長時間まで表す。たとえばGateLifetimeは、最長で48時間までの30分単位の増分の数とすることができる。実際の面では、ストレージデバイスは、CMUの適切なカードに結合されたマスストレージメモリデバイスである。0が定義されている場合には、メッセージは、すぐに送信されることになる(時間の経過は許されない)。このフィールドがTIME_MAXに設定されている場合には、メッセージが削除されることはない(老朽化は、まったく生じない。メッセージは、地上のメッセージサーバへ送信されるまで、CMUのストレージデバイス上に常駐することになる)。このフィールドは、AMIにおける従来のMessage Lifetimeフィールドとは異なる。
【0063】
ステップ2−それぞれのダウンリンクメッセージごとに、ACARS経路指定機能は、下記のことを実行する。
(a)SubnetworkプリファレンスバイトおよびSubnetwork_Availableフラグを使用して、TCP/IPデータリンクを介してメッセージを転送することができるかどうかを判断する。このSubnetwork_Availableフラグは、ACARSメッセージを地上へ転送する能力が利用可能になった場合に、およびその能力が失われた場合に、ACARSメッセージング機能によってACARS経路指定機能へ報告される。
【0064】
(b)ACARSメッセージがどのくらいの期間にわたって老朽化するかを決定する。これは、AMIからのGateLifetimeパラメータおよびMessage Lifetimeパラメータから計算される。この決定は、単純にこれらの2つのライフタイム値のうちの短い方を選択することができる。
【0065】
ステップ3−ACARSメッセージング機能は、下記のことを実行する。
(a)サブネットワークが利用可能でない場合に、ACARS経路指定機能からダウンリンクACARSメッセージを受信する。所与のライフタイムパラメータがゼロよりも大きい場合には、メッセージは、所与の優先順位スキームに従ってCMUのストレージデバイス上に保存される。所与のライフタイムパラメータがゼロである場合には、ACARS経路指定機能は、ACARSダウンリンクメッセージを送信できない旨を通知される。
【0066】
(b)サブネットワークが利用可能である場合に、ACARS経路指定機能からダウンリンクACARSメッセージを受信する。サブネットワークが利用可能になるとすぐに、ACARSルータは、ストレージデバイス上のあらゆるACARSメッセージを優先順位に従って地上のシステムへダウンロードすることを開始する。ACARS経路指定機能からの任意の受信されたACARSメッセージが、すべての保存されているメッセージよりも高い優先順位である場合には、ACARS経路指定機能からのそのACARSメッセージは、次に送信される。ACARS経路指定機能からの任意の受信されたACARSメッセージが、あらゆる保存されているメッセージよりも低い優先順位である場合には、そのメッセージを保存し、ストレージデバイスからTCP/IPデータリンクを介してより高い優先順位のメッセージの送信を継続する。サブネットワークが利用不能になった場合には、それぞれの保存されているメッセージのライフタイムをチェックする。所与のACARSダウンリンクメッセージに関してライフタイムがゼロに等しい場合(または有効期限が切れている場合)には、そのメッセージを破棄する。
【0067】
ACARS Network ACKをシミュレートすることに関する目的/要件−本明細書に記載されているようなACARSメッセージングシステムの実際の実装形態においては、下記の点を考慮すべきである。
【0068】
1.外部のLRUおよび内部のCMUコンポーネントが一度に複数のACARSメッセージを送信できるようにACARS Network ACKをシミュレートすること。
2.GateLifetime属性がゼロである場合には、メッセージが地上のサーバによって実際に受信されるまで、ACARS Network ACKをシミュレートしないこと。
【0069】
3.サブネットワークが起動している場合には、ACARSメッセージをすぐに送信し、ACARS Network ACKをシミュレートすること。
4.ACARSメッセージを送信することができず(たとえば、サブネットワークがダウンしていて)、かつGateLifetime属性がゼロである場合には、そのACARSメッセージを破棄し、ACARS NAKをACARSルータへ返す。このシナリオによって、ACARSルータは、希望に応じてACARSメッセージを経路変更することができるであろう。
【0070】
5.ACARSメッセージを送信することができず(たとえば、サブネットワークがダウンしていて)、かつGateLifetime属性がゼロよりも大きい場合には、ACARS Network ACKをすぐにシミュレートし、そのACARSメッセージを、後で送信するためにストレージデバイス上に保存する。
【0071】
6.ACARSメッセージを送信することができず(たとえば、サブネットワークがダウンしていて)、かつGateLifetime属性がゼロよりも大きい場合には、GateLifetime属性の有効期限が切れたときに、ACARSメッセージを削除する。これによって、経路変更および複数の無関係なACARS Network ACKが防止される。
【0072】
ACARS Network ACKをシミュレートするための使用事例−このセクションは、我々の示された目的および要件ごとに使用事例を提供する。下記のことが、関係者を規定する。
【0073】
1.外部のLRU−CMUから分離されたLRUが、429/A619を介して通信を行う。
2.ACARSスタック−CMU上に常駐するACARSの実装形態。
【0074】
3.AM−ACARSメッセージング機能が、CMU上に常駐し、TCP/IPを介して通信を行う。
4.メッセージサーバ−TCP/IPネットワークに接続された、AMピアである地上のサーバ。
【0075】
たとえこれらの使用事例のすべてが、外部のLRUとの対話を規定するとしても、CMUから発信されたあらゆるACARSメッセージは同じように機能することになるという点に留意されたい。この点に関連して、外部のCMU関係者を任意の内部のCMU関係者と単純に入れ替えても、これらの使用事例は、依然として同じように機能する。
【0076】
事例1:ダウンリンクが成功し、ACKがシミュレートされる場合−図7は、シミュレートされたACK手順を示すメッセージシーケンス線図である。このシナリオは、次の前提条件を前提としている。(1)サブネットワークが起動していること、および(2)GateLifetime属性=「Don’t Care」であること。サブネットワークが起動しているため、GateLifetimeパラメータは無関係である。この例においては、ACARSメッセージは、優先順位の処理のためにCMUのMSD(「mass storage device」)702の中を横断する。ACARSメッセージが地上のメッセージサーバ704へ実際に送信されるとすぐに、「ACARS ACK」がシミュレートされる。
【0077】
事例2:経路変更のためにACARSメッセージを返す場合−図8は、このシナリオを示すメッセージシーケンス線図である。このシナリオは、次の前提条件を前提としている。(1)サブネットワークがダウンしていること、および(2)GateLifetime属性がゼロであること(すぐに送信を行うこと)。サブネットワークがダウンしていて、GateLifetime属性がゼロであるため、ACARSメッセージング機能708は、すぐに「ACARS NAK」メッセージ710をACARSルータに返す。この時点では、シミュレートされた「ACARS ACK」は、まったく不要である。メッセージは、従来のACARS Network ACKを待っている別のサブネットワーク(SATCOM、VHFなど)へ経路変更することができる。
【0078】
事例3:遅延したダウンリンクが成功し、ACKがシミュレートされる場合−図9は、このシナリオを示すメッセージシーケンス線図である。この事例には、次の前提条件が当てはまる。(1)サブネットワークがダウンしていること、および(2)GateLifetime属性がゼロよりも大きいこと(サブネットワークが利用不能である場合には、メッセージをMSD 702上に保存すること)。GateLifetime属性がゼロよりも大きいため、システムは、すぐにACARS Network ACK 706をシミュレートし、ACARSメッセージが首尾よく送信されるのを待つ必要はない。保存されたACARSメッセージは、後で(ただし、GateLifetimeパラメータの有効期限が切れる前に)首尾よく送信される。
【0079】
事例4:ダウンリンクが不成功となり、ACKがシミュレートされる場合−図10は、このシナリオを示すメッセージシーケンス線図である。この事例には、次の前提条件が当てはまる。(1)サブネットワークがダウンしていること、(2)GateLifetime属性がゼロよりも大きいこと(サブネットワークが利用不能である場合には、メッセージをMSD 702上に保存すること)、および(3)サブネットワークが、GateLifetime属性によって規定されている期間内には復活しないこと。GateLifetime属性がゼロよりも大きいため、システムは、すぐにACARS Network ACK 706をシミュレートし、ACARSメッセージが首尾よく送信されるのを待つ必要はない。GateLifetimeパラメータの有効期限が切れているとみなされると、そのACARSメッセージは、MSD 702から削除される。この場合には、そのACARSメッセージは、メッセージサーバ704へ送達されず、そのメッセージを確実に送信するためには、その他の手段を講じることができる。
【0080】
ACARSルータのための処理
以降の実装形態に関する注釈は、本明細書に記載されているACARSメッセージシステムの実際の一実施形態を参照する。もちろん、システムの実際の実装形態は、特定の展開の必要性および要件に従ってさまざまなものとすることができる。
【0081】
ダウンリンクACARSメッセージ
1.メッセージは、いくつかの内部の方法によって、サブネットワークでの送信に値すると判断される。
【0082】
2.さらなる処理のためにメッセージが転送される前に、ACARSルータ上でA619の処理が行われる。そのようなさらなる処理としては、たとえばA619ヘッダの除去、およびA619アプリケーションのACKを含むことができる。
【0083】
3.ACARSメッセージは、セグメント化されない。
4.適切な場合には、ACARSルータの処理の前にACARSメッセージを暗号化することができる。
【0084】
5.サブネットワークに値するメッセージは、すぐに処理され、送信される。キューに入れる必要はなく、ストレージデバイスへ直ちに転送される。キューの状態は、ACARSルータに結合されているストレージデバイス上で保持される。ストレージデバイスは、サブネットワーク行きのACARSメッセージを保存するためのハードディスクとして機能するため、電力の遷移や、その他の電力の途絶によって、これらのACARSメッセージが失われる結果にはならない。
【0085】
6.転送されるダウンリンクACARSメッセージのパラメータには、ユーザテキスト、ラベル、サブラベル、メッセージシーケンス番号、およびフライト識別子が含まれる。ユーザテキストパラメータは暗号化することができるが、その他のパラメータは暗号化されないということが前提となる。
【0086】
アップリンクACARSメッセージ
1.航空機に搭載された終端システム(たとえば、フライト管理システム)行きのメッセージに関しては、そのメッセージがACARSルータによって受信された後で、A619の処理を行うことができる。そのような処理としては、たとえばA619ヘッダを付加すること、およびA619アプリケーションのACKを受信することを含むことができる。
【0087】
2.ACARSメッセージは、セグメント化された形態では(複数のブロックでは)受信されない。真の送信先が、Character Oriented Protocol 429を介したLRUであり、メッセージテキストが、220オクテット(1ブロック)よりも大きい場合には、メッセージテキストを適切なサイズのブロックへと操作するためには、何らかの事後処理を実行する必要が生じるであろう。この「事後処理」は、ACARSルータの任意の適切な処理要素によって実行することができ、そのような処理の場所は、実装形態によって決まる。
【0088】
3.ACARSメッセージは、暗号化された形態で受信することができる。暗号化されている場合には、それらのメッセージは、ACARSルータによって復号される。
4.ACARSルータへ転送されるアップリンクACARSメッセージのパラメータには、ユーザテキスト、ラベル、およびサブラベルが含まれる。ユーザテキストパラメータは暗号化することができるが、その他のパラメータは暗号化されないということが前提となる。
【0089】
5.サブネットワークを介して地上のシステムから受信されるいかなるメッセージも、航空機に搭載されたACARSスタックおよび地上のデータサービスプロバイダーが迂回されるため、A618 ACARS ACKを必要としない。
【0090】
メッセージ処理用の地上のサーバのための処理
1.メッセージ処理サーバは、航空機ごとに1つのTCP/IP接続をサポートする。
2.航空機は、サブネットワークが利用可能なときに、メッセージ処理サーバへのTCP/IP接続を開始する。
【0091】
3.メッセージ処理サーバは、(任意の一時点における空港ゲートの航空機の数に応じて)複数のTCP/IP接続をサポートする。
4.メッセージ処理サーバは、より詳細に上述したようにACARSメッセージングプロトコルを実施する。
【0092】
5.メッセージ処理サーバは、より詳細に上述したようにPDUを投入および解釈する。
6.適切な場合には、メッセージ処理サーバは、テキストフィールドの暗号化および復号処理を実行する。その他のフィールドを暗号化する必要はない。
【0093】
7.メッセージテキストは、セグメント化されない。CMUは、Bit Oriented Protocolと共に使用するために(ARINC 619を通じて)3296オクテットまでのテキストフィールドをサポートすることができる。
【0094】
8.Downlink−ACARS−MSG PDUのテキストフィールドは、複数の補足的なアドレスを含むことができる。メッセージ処理サーバは、これらのメッセージを適切なものとして配信するか、または複数の補足的なアドレスを有するメッセージを認めない。
【0095】
9.ラベルQAからQTを有するダウンリンクACARSメッセージは、送信先へ送達する前にメッセージの特定のフォーマット設定を提供する上で、ARINC/SITAデータサービスプロバイダーに依存している。本明細書に記載されているACARSメッセージングシステムは、サブネットワークが使用されているときにデータサービスプロバイダーに依存しないため、メッセージ処理サーバが、この同じタイプのフォーマット設定を提供する。メッセージ処理サーバは、このフォーマット設定が適切であるかどうかを判断し、適切でない場合には、余分な処理を差し控え、テキストがその生のフォーマットで見える旨をエンドユーザに警告するにとどめる。
【0096】
10.メッセージ処理サーバは、航空機への失われた接続を管理すること(潔く接続を解除するか、またはTCP/IP接続のタイムアウトのいずれか)が必要となる。
前述の詳細な説明において、少なくとも1つの例示的な実施形態を提示したが、膨大な数の変形形態が存在するということを理解されたい。1つまたは複数の例示的な実施形態は、例にすぎず、本発明の範囲、適用可能性、あるいは構成をいかなる形であれ限定することを意図するものではないということも理解されたい。それどころか、前述の詳細な説明は、1つまたは複数の例示的な実施形態を実施するための便利な案内図を当業者に提供する。添付の特許請求の範囲およびその適法な均等物において示されている本発明の範囲から逸脱することなく、要素の機能および構成においてさまざまな変更を行うことができるということを理解されたい。
【図面の簡単な説明】
【0097】
【図1】IPを介したACARSメッセージング用のシステム環境を示す図である。
【図2】IPを介した実用的なACARSメッセージングシステムの展開を示す概略図である。
【図3】本発明によるACARSメッセージングシステムを示す簡略化された概略図である。
【図4】ACARSメッセージを処理する通信管理ユニットを示す簡略化されたソフトウェアアーキテクチャーの図である。
【図5】IPを介してACARSメッセージングシステムによって処理される例示的なシーケンスを示すメッセージシーケンス線図である。
【図6A】ACARSメッセージングプロセスを示す流れ図である。
【図6B】ACARSメッセージングプロセスを示す流れ図である。
【図7】シミュレートされた肯定応答手順を示すメッセージシーケンス線図である。
【図8】ACARSメッセージの経路変更に関連する手順を示すメッセージシーケンス線図である。
【図9】遅延したダウンリンクメッセージに対応するシミュレートされた肯定応答を示すメッセージシーケンス線図である。
【図10】不成功のダウンリンクメッセージに対応するシミュレートされた肯定応答を示すメッセージシーケンス線図である。
【特許請求の範囲】
【請求項1】
ACARSメッセージングの方法であって、
メッセージコンテンツを含むACARSメッセージを入手するステップ(614、632)と、
前記ACARSメッセージを、前記メッセージコンテンツを含むASN.1準拠メッセージへとコード化するステップ(616、634)と、
前記ASN.1準拠メッセージを、前記メッセージコンテンツを含むACARS−IPメッセージへと翻訳するステップ(618、636)であって、前記ACARS−IPメッセージが、プロトコルのTCP/IPスイートに準拠しているステップと、
TCP/IPデータリンク(108)を介して航空機(102)とメッセージ処理サーバ(106)との間で前記ACARS−IPメッセージを送信するステップ(620、638)とを含む方法。
【請求項2】
前記ACARS−IPメッセージが、ダウンリンクメッセージである請求項1に記載の方法。
【請求項3】
フライト中のACARSダウンリンクメッセージに優先順位を付けるステップと、
前記優先順位を付けるステップに応答して、1つまたは複数のACARS−IPダウンリンクメッセージとして送信するために前記フライト中のACARSダウンリンクメッセージのうちの1つまたは複数をキューに入れるステップ(614)とをさらに含む請求項1に記載の方法。
【請求項4】
前記ACARS−IPメッセージが、アップリンクメッセージである請求項1に記載の方法。
【請求項5】
前記送信するステップが、少なくとも1つの無線のTCP/IPデータリンク(204)を介して前記ACARS−IPメッセージを送信する請求項1に記載の方法。
【請求項6】
前記送信するステップが、インターネット(104)を介して前記ACARS−IPメッセージを送信する請求項1に記載の方法。
【請求項7】
前記ACARS−IPメッセージを送信するステップが、前記航空機(102)の着陸後に行われる請求項1に記載の方法。
【請求項8】
前記TCP/IPデータリンク(108)を確立するステップをさらに含む請求項1に記載の方法。
【請求項1】
ACARSメッセージングの方法であって、
メッセージコンテンツを含むACARSメッセージを入手するステップ(614、632)と、
前記ACARSメッセージを、前記メッセージコンテンツを含むASN.1準拠メッセージへとコード化するステップ(616、634)と、
前記ASN.1準拠メッセージを、前記メッセージコンテンツを含むACARS−IPメッセージへと翻訳するステップ(618、636)であって、前記ACARS−IPメッセージが、プロトコルのTCP/IPスイートに準拠しているステップと、
TCP/IPデータリンク(108)を介して航空機(102)とメッセージ処理サーバ(106)との間で前記ACARS−IPメッセージを送信するステップ(620、638)とを含む方法。
【請求項2】
前記ACARS−IPメッセージが、ダウンリンクメッセージである請求項1に記載の方法。
【請求項3】
フライト中のACARSダウンリンクメッセージに優先順位を付けるステップと、
前記優先順位を付けるステップに応答して、1つまたは複数のACARS−IPダウンリンクメッセージとして送信するために前記フライト中のACARSダウンリンクメッセージのうちの1つまたは複数をキューに入れるステップ(614)とをさらに含む請求項1に記載の方法。
【請求項4】
前記ACARS−IPメッセージが、アップリンクメッセージである請求項1に記載の方法。
【請求項5】
前記送信するステップが、少なくとも1つの無線のTCP/IPデータリンク(204)を介して前記ACARS−IPメッセージを送信する請求項1に記載の方法。
【請求項6】
前記送信するステップが、インターネット(104)を介して前記ACARS−IPメッセージを送信する請求項1に記載の方法。
【請求項7】
前記ACARS−IPメッセージを送信するステップが、前記航空機(102)の着陸後に行われる請求項1に記載の方法。
【請求項8】
前記TCP/IPデータリンク(108)を確立するステップをさらに含む請求項1に記載の方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6A】
【図6B】
【図7】
【図8】
【図9】
【図10】
【図2】
【図3】
【図4】
【図5】
【図6A】
【図6B】
【図7】
【図8】
【図9】
【図10】
【公表番号】特表2008−512061(P2008−512061A)
【公表日】平成20年4月17日(2008.4.17)
【国際特許分類】
【出願番号】特願2007−530285(P2007−530285)
【出願日】平成17年8月31日(2005.8.31)
【国際出願番号】PCT/US2005/030886
【国際公開番号】WO2006/026632
【国際公開日】平成18年3月9日(2006.3.9)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.イーサネット
2.Bluetooth
【出願人】(500575824)ハネウェル・インターナショナル・インコーポレーテッド (1,504)
【Fターム(参考)】
【公表日】平成20年4月17日(2008.4.17)
【国際特許分類】
【出願日】平成17年8月31日(2005.8.31)
【国際出願番号】PCT/US2005/030886
【国際公開番号】WO2006/026632
【国際公開日】平成18年3月9日(2006.3.9)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.イーサネット
2.Bluetooth
【出願人】(500575824)ハネウェル・インターナショナル・インコーポレーテッド (1,504)
【Fターム(参考)】
[ Back to top ]