(57)【要約】本明細書で説明されるシステム、方法、およびソフトウェアは、衛星プラットフォームの衛星のデータ通信のサービス品質を管理するための拡張機能を提供する。一実装形態では、衛星は、衛星プラットフォームの第２のシステムに送信される複数のパケットを取得する。取得されると、衛星はパケットのそれぞれに関連付けられたサービス品質に基づいて、複数のパケットの送信に優先順位を付け、優先順位に基づいて複数のパケットを送信する。【選択図】図１
2020527908.tif 000002
【特許請求の範囲】
【請求項１】
衛星プラットフォームの衛星を介して通信されるデータパケットを管理する方法であって、
前記衛星プラットフォームの少なくとも１つの他のシステムに送信される複数のデータパケットを取得する工程と、
前記複数のデータパケットのそれぞれに関連付けられたサービス品質に基づいて、送信のために前記複数のデータパケットに優先順位を付ける工程と、
前記優先順位付けに基づいて前記複数のデータパケットを送信する工程と、
を含む方法。
【請求項２】
前記複数のデータパケットを取得する工程が、前記衛星プラットフォームの少なくとも１つの他の衛星から前記複数のデータパケットの第１のサブセットを受信し、前記衛星で実行する仮想ノードから前記複数のデータパケットの第２のサブセットを識別することを含む、請求項１に記載の方法。
【請求項３】
前記複数のデータパケットを取得する工程が、前記衛星プラットフォームの地上制御システムから前記複数のデータパケットの第３のサブセットを受信することをさらに含む、請求項２に記載の方法。
【請求項４】
前記複数のデータパケットのそれぞれに関連付けられたサービス品質に基づいて送信のために前記複数のデータパケットに優先順位を付ける工程が、前記複数のデータパケットのそれぞれに関連付けられたパケットタイプに基づいて前記複数のデータパケットに優先順位を付けることを含む、請求項１に記載の方法。
【請求項５】
前記パケットタイプが、前記衛星プラットフォームの第２の衛星の仮想ノードを構成する構成パケットタイプ、または前記衛星プラットフォームの第２のシステムと状態情報を交換する状態情報パケットタイプを含む、請求項４に記載の方法。
【請求項６】
前記少なくとも１つの他のシステムが、地上制御システムまたは二次衛星を含む、請求項１に記載の方法。
【請求項７】
前記衛星プラットフォームの他の１つ以上のシステムから第２の複数のデータパケットを受信する工程と、
前記第２の複数のデータパケットのそれぞれに関連付けられたサービス品質に基づいて処理するために前記第２の複数のデータパケットに優先順位を付ける工程と、
をさらに含む、請求項１に記載の方法。
【請求項８】
１つ以上の非一時的なコンピュータ可読ストレージメディアと、
前記１つ以上の非一時的なコンピュータ可読ストレージメディアに動作可能に結合された処理システムと、
衛星を介して通信されるデータパケットを管理するために前記１つ以上の非一時的なコンピュータ可読ストレージメディアに格納されたプログラム命令であって、前記処理システムによる読み取りおよび実行時に、前記処理システムに対して少なくとも、
衛星プラットフォームの少なくとも１つの他のシステムに送信される複数のデータパケットを取得することであって、該衛星プラットフォームが複数の衛星を含むものを取得する工程と、
前記複数のデータパケットのそれぞれに関連付けられたサービス品質に基づいて、送信のために前記複数のデータパケットに優先順位を付ける工程と、
前記優先順位付けに基づいて前記複数のデータパケットを送信する工程とを指示するプログラム命令と、を備える衛星。
【請求項９】
前記複数のデータパケットを取得する工程が、前記衛星プラットフォームの少なくとも１つの他の衛星から前記複数のデータパケットの第１のサブセットを受信し、前記衛星で実行する仮想ノードから前記複数のデータパケットの第２のサブセットを識別することを含む、請求項８に記載の衛星。
【請求項１０】
前記複数のデータパケットを取得する工程が、前記衛星プラットフォームの地上制御システムから前記複数のデータパケットの第３のサブセットを受信することをさらに含む、請求項９に記載の衛星。
【請求項１１】
前記複数のデータパケットのそれぞれに関連付けられたサービス品質に基づいて送信のために前記複数のデータパケットに優先順位を付ける工程が、前記複数のデータパケットのそれぞれに関連付けられたパケットタイプに基づいて前記複数のデータパケットに優先順位を付けることを含む、請求項８に記載の衛星。
【請求項１２】
前記パケットタイプが、前記衛星プラットフォームの第２の衛星の仮想ノードを構成する構成パケットタイプ、または前記衛星プラットフォームの第２のシステムと状態情報を交換する状態情報パケットタイプを含む、請求項１１に記載の衛星。
【請求項１３】
前記少なくとも１つの他のシステムが、地上制御システムまたは前記複数の衛星の二次衛星を含む、請求項８に記載の衛星。
【請求項１４】
前記プログラム命令が、前記処理システムに、
前記衛星プラットフォームの他の１つ以上のシステムから第２の複数のデータパケットを受信する工程と、
前記第２の複数のデータパケットのそれぞれに関連付けられたサービス品質に基づいて処理するために前記第２の複数のデータパケットに優先順位を付ける工程と、をさらに指示する、請求項８に記載の衛星。
【請求項１５】
前記プログラム命令が、複数の仮想ノードを実行するように前記処理システムにさらに指示するものであって、前記複数のデータパケットのそれぞれに関連付けられたサービス品質に基づいて送信のために前記複数のデータパケットに優先順位を付ける工程が、前記複数のデータパケットのそれぞれについて前記複数の仮想ノードのソース仮想ノードに基づいて前記複数のデータパケットに優先順位を付けることを含む、請求項８に記載の衛星。
【請求項１６】
仮想ノードを実行する衛星を動作させる方法であって、
前記仮想ノードのそれぞれに関連付けられた第１のサービス品質に基づいて、前記仮想ノードに第１のリソースを割り当てる工程と、
サービス品質変更イベントを識別する工程と、
前記サービス品質変更イベントに応じて、前記仮想ノードのそれぞれに関連付けられた第２のサービス品質に基づいて、前記仮想ノードに第２のリソースを割り当てる工程と、を含む方法。
【請求項１７】
前記第１のリソースおよび前記第２のリソースが、処理リソース、センサリソース、およびデータ通信リソースを含む、請求項１６に記載の方法。
【請求項１８】
前記仮想ノードが、仮想マシンまたはコンテナを含む、請求項１６に記載の方法。
【請求項１９】
前記サービス品質変更イベントを識別する工程が、第１の地理的領域から第２の地理的領域への前記衛星の動きを識別することを含む請求項１６に記載の方法。
【請求項２０】
前記サービス品質変更イベントを識別する工程が、少なくとも１つの構成パケットを受信することを含むものであって、前記少なくとも１つの構成パケットが、前記仮想ノードの１つの仮想ノードにタスクを提供する、請求項１６に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
［関連出願の相互参照］
この出願は、２０１７年７月１９日に出願された「ＱＵＡＬＩＴＹ  ＯＦ  ＳＥＲＶＩＣＥ  ＭＡＮＡＧＥＭＥＮＴ  ＩＮ  Ａ  ＳＡＴＥＬＬＩＴＥ  ＰＬＡＴＦＯＲＭ」と題する米国特許出願第１５／６５４０８２号明細書の利益および優先権を主張し、その全体が参照により本明細書に組み込まれる。
【背景技術】
【０００２】
衛星を軌道に配備すると、軍事および民間の観測動作、通信動作、航海動作、気象動作、研究動作など、さまざまな宇宙ベースの動作を提供できる。衛星には、目的のタスクを実行するために使用されるさまざまなセンサや通信機器を含めることができる。例えば、気象衛星には、地球の画像を撮影するために使用できる１つ以上のカメラまたはイメージングセンサ、および画像を地球上の制御システムに通信するために使用できる通信機器が含まれ得る。これらの特殊な動作を実行するように衛星を構成することはできるが、衛星は、特に多数のセンサを備えた衛星全体の使用を必要としない可能性のある組織、または衛星での連続動作を必要としない可能性のある組織にとっては、製作して軌道に投入するのに費用がかかる。その結果、組織は衛星の使用を避け、有望な衛星技術の使用を制限する場合がある。
【発明の概要】
【発明を解決するための手段】
【０００３】
本明細書で開示される技術は、衛星プラットフォームにおけるサービス品質の管理の強化を提供する。一実装形態では、衛星プラットフォームの衛星を介して通信されるデータパケットを管理する方法は、衛星プラットフォームの他のシステムに送信される複数のデータパケットを取得することを含み、ここで、システムは他の衛星および／または制御システムを含み得る。本方法は、複数のデータパケットのそれぞれに関連付けられたサービス品質に基づいて送信するために複数のデータパケットに優先順位を付け、優先順位に基づいて複数のデータパケットを送信することをさらに含む。
【０００４】
この発明の概要は、以下の技術開示でさらに説明されている概念の選択を簡略化された形式で紹介するために提供されている。この発明の概要は、特許請求される主題の主要な特徴または本質的な特徴を特定することを意図するものではなく、特許請求される主題の範囲を制限するために使用されるべきではないことを理解されるべきである。
【図面の簡単な説明】
【０００５】
本開示の多くの態様は、以下の図面を参照してよりよく理解することができる。これらの図面に関連していくつかの実装形態が説明されているが、本開示は本明細書に開示された実装形態に限定されない。それとは反対に、その意図は、すべての代替物、変更物、および同等物を網羅することである。
【０００６】
【図１】一実装形態による衛星環境を示している。
【０００７】
【図２】一実装形態による仮想ノードのプラットフォームを提供できる衛星の拡大図を示している。
【０００８】
【図３】一実装形態によるデータパケット通信を管理するための衛星の動作を示している。
【０００９】
【図４】一実装形態によるデータパケットの優先順位付けの管理の概要を示している。
【００１０】
【図５】一実装形態による構成を衛星プラットフォームに配備する動作シナリオを示している。
【００１１】
【図６】一実装形態による状態情報の通信の動作シナリオを示している。
【００１２】
【図７Ａ】一実装形態による地理的位置に基づいて仮想ノードのサービス品質を変更する動作シナリオを示している。
【図７Ｂ】一実装形態による地理的位置に基づいて仮想ノードのサービス品質を変更する動作シナリオを示している。
【図７Ｃ】一実装形態による地理的位置に基づいて仮想ノードのサービス品質を変更する動作シナリオを示している。
【００１３】
【図８】一実装形態による衛星コンピューティングシステムを示している。
【発明を実施するための形態】
【００１４】
本明細書で開示されるさまざまな例は、衛星ハードウェアおよびソフトウェア技術の強化を提供する。特に、本明細書で開示された例は、ソフトウェアアプリケーションを軌道衛星プラットフォームに配備するためのシステムおよび方法を提供し、ここで、ソフトウェアアプリケーションのそれぞれは、同じ衛星に配備された１つ以上の他のアプリケーションとリソースを共有できる仮想ノードとして実行される。これらの仮想ノードは、いくつかの例では完全なオペレーティングシステム仮想マシンを含むことができ、さらに仮想コンテナを含むことができる。これらのコンテナには、ホストシステムからのリソースの効率的な管理を提供できる、Ｄｏｃｋｅｒコンテナ、Ｌｉｎｕｘ（登録商標）コンテナ、Ｊａｉｌ、または別の同様のタイプの仮想封じ込めノードが含まれる場合がある。コンテナが使用するリソースには、ホストコンピューティングシステムからのカーネルリソースが含まれる場合があり、さらに、ホストで実行される他のコンテナまたはプロセスと共有できるリポジトリおよび他の承認済みリソースが含まれる場合がある。しかしながら、ホスト衛星のコンテナ間でリソースを共有できるが、コンテナは、独自の識別子スペース（名前スペース）、ファイルシステム構造、およびネットワークインターフェースによりオペレーティングシステムにプライベートアクセスできるようにプロビジョニングされる。
【００１５】
本実施例では、衛星プラットフォームを提供するために、複数の衛星を配備することができ、ここで、組織はアプリケーションを生成し、アプリケーションを衛星に配備して所望の動作を実行することができる。動作には、軍事および民間の観測動作、通信動作、航海動作、気象動作、および研究動作が含まれ得る。アプリケーションを開発するために、組織が開発ツールを使用してソフトウェアアプリケーションを開発できるようにする地上制御システムの一部として開発プラットフォームが提供される場合がある。ツールを使用して開発されると、アプリケーションは、物理衛星プラットフォームを複製する仮想または物理テスト環境で実行できる。このテスト環境により、ユーザはソフトウェアアプリケーションを１つ以上のテスト衛星にアップロードし、アプリケーションを物理衛星クラスタに配備する前にアプリケーションの動作を監視できる。いくつかの実装形態では、アプリケーションの開発時に、提供される開発ツールにアプリケーションプログラミングインターフェース（ＡＰＩ）または他の何らかのコマンド構造が含まれ得、アプリケーションが物理衛星によって提供されるさまざまなセンサおよびインターフェースを要求してアクセスできるようにする。したがって、各ソフトウェアアプリケーションは異なる動作を実行してもよいが、それらは同様のコマンドを使用してカメラ、アンテナなどのセンサと相互作用してもよい。
【００１６】
開発ツールおよびテスト環境を使用してアプリケーションを開発すると、次に軌道衛星プラットフォームの１つ以上の衛星にアプリケーションを配備できる。いくつかの実装形態では、地上制御システムを１つ以上の衛星へのアップリンクとして使用して、１つ以上の衛星のそれぞれにアプリケーションを提供することができる。他の実装形態では、プラットフォームの衛星に対して単一のアップリンクを作成することができ、ここで、衛星はプラットフォームの他の所望の衛星にアプリケーションを配信するように構成される。当該環境に配備されると、アプリケーションは割り当てられた衛星で実行できる。
【００１７】
いくつかの実装形態では、衛星プラットフォーム内でさまざまな仮想ノードを配備および管理する際に、各衛星がサービス品質動作を使用でき、各仮想ノード（アプリケーション）に適切なサービス品質が提供されることが確保される。特に、各衛星は、他の衛星のほか、地上制御システムにも転送される際に、さまざまな通信パケットに優先順位を付けるように構成できる。例えば、衛星は、構成パケット（例えば、衛星によって監視される対象のオブジェクトを定義するパケット）が衛星プラットフォームの衛星間で交換される他のデータパケットよりも優先され得るように構成されてもよい。これらの他のデータパケットには、仮想ノードのアプリケーションに処理済みおよび未処理のデータ（画像、データ計算など）、ヘルスチェック情報などを提供できる状態情報パケットを含めることができる。
【００１８】
加えて、または衛星間のデータ通信を優先する代わりのいくつかの例では、衛星はさらに、各仮想ノードで利用可能になるサービス品質を管理するように構成されてもよい。このサービス品質は、各仮想ノードによって提供される料金に基づいて決定されてもよく、衛星の地理的位置に基づいて決定されてもよく、または他のいずれか同様の方法で決定されてもよい。例えば、地球上の特定の地域を監視するために、組織によって仮想ノードが配備される場合がある。その結果、衛星の軌道が特定の地理的地域と一致する場合、アプリケーションの仮想ノードに第１のサービス品質が提供され、ここで、サービス品質は処理リソース、センサリソース、通信リソースなどを提供することができる。しかし、衛星の軌道が対象の地理的領域と一致しない場合、アプリケーションの仮想ノードには第２のサービス品質が提供され得、ここで、第２のサービス品質には、アプリケーション用に下げた処理リソース、センサリソースなどが含まれる場合がある。したがって、リソースが仮想ノードに必要でない場合、リソースは衛星で実行している他の仮想ノードに提供され得るか、衛星の電力リソースを節約するために使用され得る。
【００１９】
サービス品質変更イベントとして地理的位置を使用することは、仮想ノードに動的なサービス品質を提供する一例であるが、各ノードのサービス品質は他の方法で変更できることを理解していただきたい。例えば、特定のタスクを提供するように仮想ノードを構成するために、構成パケットが衛星に配信される場合がある。タスクに基づいて、仮想ノードのサービス品質を上げたり下げたりして、所望の動作を提供でき、それに応じてリソースを仮想ノードに割り当てることができる。
【００２０】
図１は、一実装形態による衛星環境１００を示している。衛星環境１００は、衛星（ＳＡＴ）１１０〜１１３、衛星（ＳＡＴ）１２０〜１２３、地球１９０、地上制御システム１７０、および打ち上げシステム１８０を含む。衛星１１０〜１１３および衛星１２０〜１２３は、無線通信リンク１３０〜１３２を介して通信する。地上制御システム１７０は、無線通信リンク１３５を使用して衛星１１０〜１１３および衛星１２０〜１２３と通信する。
【００２１】
本明細書で説明するように、複数の衛星１１０〜１１３および１２０〜１２３を打ち上げ、さまざまなソフトウェアアプリケーション用の軌道プラットフォームとして配備することができる。アプリケーションを生成するために、組織がソフトウェアアプリケーションを生成できるようにするさまざまなツールおよびＡＰＩを含めることができる、設計プラットフォーム１７５が提供される。いくつかの実装形態では、設計プラットフォーム１７５は、各衛星で利用可能である選択可能な機能およびインターフェース要素をユーザに提供してもよい。特定の組織の開発者は、機能と使用可能なインターフェース要素を使用して、所望の動作を実行するソフトウェアアプリケーションを生成できる。例えば、開発者は、衛星のカメラを使用して関連オブジェクトの動きを追跡するアプリケーションを生成できる。
【００２２】
アプリケーションが開発されると、アプリケーションは検証プラットフォーム１７６に提供され、アプリケーションを衛星プラットフォームに配備する前にアプリケーションを検証およびテストするために使用できる。検証プラットフォーム１７６は、物理的または仮想的なテストベッドを備えてもよく、ここで、アプリケーションは、１つ以上のテスト衛星に配備されて、アプリケーションの機能を決定することができる。いくつかの実装形態では、機能のテストに加えて、検証プラットフォームはアプリケーションにテストをさらに適用して、アプリケーションが物理プラットフォームでの動作を承認されていることを確保することができる。これらのテストには、これらに限定されないが、アプリケーションが同じ衛星で実行され得る他のアプリケーションに対して悪意がないことの確保、アプリケーションが衛星の飛行構造または動作を変更しないことの確保、データが他の衛星と地上制御システムの間で適切に通信されることの確保、またはアプリケーションの動作を検証するための他のいずれかの同様のテストを含めることができる。
【００２３】
アプリケーションの開発および検証に加えて、可用性プラットフォーム１７７は地上制御システム１７０の一部として使用され、軌道クラスタのアプリケーションをスケジューリングすることができる。このスケジューリングは、アプリケーションの動作に適用される衛星、各衛星、処理、通信、アプリケーションのセンサリソースの動作時間、または衛星プラットフォームの他のいずれかの同様のスケジューリングの決定に使用できる。少なくとも１つの実装形態では、可用性プラットフォーム１７７は、ソフトウェアアプリケーションの配備要件に関するユーザ入力を受信することができ、ここで、配備要件は、対象の地球上の地理的領域、対象の動作時間、センサ要件、処理要件、セキュリティ要件、コスト制約、またはそれらの組み合わせを含む他のいずれかの同様の配備要件を含むことができる。さらに、可用性プラットフォーム１７７は、衛星プラットフォームのリソースの可用性情報を識別でき、衛星プラットフォームの配備要件および可用性情報に基づいてソフトウェアアプリケーションの配備のための配備オプションを決定できる。配備オプションが識別されると、ソフトウェアアプリケーションの開発者に提供することができ、ここで、開発者はオプションを使用して、プラットフォームでのアプリケーションの配備を選択することができる。いくつかの実装形態では、軌道上の現在の衛星を使用してアプリケーションを実装できるが、開発者に提供されるオプションは、プラットフォームに追加の衛星を追加して、所望の動作を提供するオプションも提供できることを理解していただきたい。
【００２４】
可用性プラットフォーム１７７を介して配備オプションが選択されると、地上制御システム１７０は、１つ以上の衛星とのアップリンクを開始して、衛星にアプリケーションを提供するほか、衛星のスケジューリング情報も更新することができる。所望の衛星にアップロードされると、アプリケーションは、可用性プラットフォーム１７７で決定されたスケジューリングに基づいて実行を開始できる。いくつかの実装形態では、地上制御システム１７０からのアップリンクは、必要な衛星にアプリケーションを提供することのみを担当する場合がある。他の実装形態では、地上制御システム１７０は、アプリケーションを衛星の第１のサブセットに供給でき、次いで、衛星プラットフォームの１つ以上の他の衛星にアプリケーションを配布することができる。例えば、地上制御システム１７０は、衛星１２０に第１のアプリケーションを提供することができ、次に、衛星１２０はアプリケーションをピアグループの他の衛星に供給することができる。特に、衛星１２０は、同じピアグループにある衛星１１０にアプリケーションを提供し、衛星１１０が地上制御システム１７０からの通信を直接受信することなくアプリケーションの動作を提供できるようにする。加えて、衛星に初期構成を提供するのと同様に、地上制御システム１７０をさらに使用して、衛星プラットフォームで動作する各アプリケーションに更新を供給でき、さらに各衛星のスケジューリング情報を更新することができる。
【００２５】
また、衛星環境１００には、打ち上げシステム１８０が示されており、それは、軌道衛星１１０〜１１３および１２０〜１２３を備える軌道に衛星（サット）１８１を輸送するために使用され得る。衛星１８１には、アプリケーションが衛星の仮想ノードとして実行できるようにするハードウェアおよびソフトウェア構成が含まれている。いくつかの実装形態では、衛星１８１は、アプリケーションなしで打ち上げシステム１８０を使用して打ち上げることができ、代わりに、地上制御システム１７０からのアップリンクで提供されるアプリケーションをロードおよび実行するために使用できるベースオペレーティングシステムまたはハイパーバイザを提供することができる。他の実装形態では、衛星１８１は、衛星のオペレーティングシステムまたはハイパーバイザを介して実行可能なアプリケーションの第１のセットで構成されてもよい。したがって、軌道に到達すると、アプリケーションはアプリケーションの動作を提供するために実行を開始できる。これらのアプリケーションは、地上制御システム１７０からのアップリンクで提供される情報に基づいて、さらに追加、削除、および変更することができる。
【００２６】
いくつかの実装形態では、衛星プラットフォームは、各アプリケーションに割り当てられたサービス品質に基づいて、さまざまなアプリケーションの動作を管理できる。このサービス品質は、各仮想ノードに関連付けられたリソース（処理、センサ、通信など）を管理するために使用でき、ここで、サービス品質は、アプリケーションの価格設定ティアに基づくことができ、対象のオブジェクトは、アプリケーション、または他の何らかの同様のサービス品質の割り当てによって監視されている。例えば、地球上に対象オブジェクトのない仮想ノードには第１のサービス品質が割り当てられ得るが、仮想ノードに対して対象オブジェクトが定義されると、仮想ノードのサービス品質が変更されて、オブジェクトを監視するための適切なリソースを提供することができる。
【００２７】
いくつかの実装形態では、サービス品質を仮想ノードに割り当てることに加えて、またはその代わりに、衛星と地上制御システムの間の通信は、データパケットに関連付けられたサービス品質に基づいて優先順位付けされ得る。例えば、地上制御システムとの通信および／または地上制御システムからの構成の受信に使用されるデータパケットには、当該環境内で送信される他のパケットよりも高いサービス品質が提供され得る。このようにして、衛星のそれぞれは、パケットのタイプの識別子についてパケットを検査し、パケットのタイプに基づいてパケットに優先順位を付けてもよい。
【００２８】
図２は、一実装形態による仮想ノードのプラットフォームを提供できる衛星１１０の拡大図２００を示している。衛星１１０は、仮想化実行セグメント２０１、制御セグメント２０２、およびインターフェースセグメント２０３を含み、これらはさまざまな通信リンクを使用して結合され得る。仮想化実行セグメント２０１は、仮想化実行システムを表し、仮想ノード２４１〜２４４用の仮想化ユーザスペース２４０、オペレーティングシステムまたはハイパーバイザ２３５、オペレーティングシステムおよび仮想ユーザスペースを格納するストレージシステム２３２、ならびに処理システム２３０を含む。制御セグメント２０２は、飛行制御システム２１１および推進ナビゲーション２１０をさらに含む。インターフェースセグメント２０３は、ユーザセンサ２２０および通信インターフェース２２１をさらに含み、ここで、通信インターフェース２２１は、地上通信および衛星間通信に使用され得る。ユーザセンサ２２０は、イメージングセンサ、温度センサ、光センサ、または仮想ノード２４１〜２４４と相互作用することができる他の何らかの類似のセンサを含み得る。
【００２９】
本明細書で説明するように、組織は、衛星プラットフォームの１つ以上の衛星の仮想ノードとして配備できるアプリケーションを生成することができる。これらのアプリケーションは、地上制御システムから提供される場合もあれば、衛星１１０の通信インターフェース２２１を介して別の衛星から提供される場合もある。アプリケーションが提供されると、ストレージシステム２３２に格納され、処理システム２３０によって実行されるオペレーティングシステム／ハイパーバイザ２３５は、アプリケーションの実行のためのプラットフォームを提供し得る。ここで、衛星１１０に提供される各アプリケーションは、仮想ノード２４１〜２４４の別個の仮想ノードとして実行され、ここで、仮想ノードは、ストレージシステム２３２の基礎となるオペレーティングシステムからのリソースを共有できる完全なオペレーティングシステム仮想マシンまたはコンテナを含み得る。
【００３０】
仮想ノードの実行を管理するために、オペレーティングシステム／ハイパーバイザ２３５は、処理システム２３０の処理リソースを各ノードに、ユーザセンサ２２０を各ノードに、および衛星１１０の他の同様のリソースを割り当てるために使用されるスケジュールを管理し得る。特に、スケジュールを使用すると、各アプリケーションが、定義された時間期間中に処理システム２３０から処理リソースを受信し、定義された時間期間中にユーザセンサ２２０へのアクセスを受信するようにスケジューリングされることを確保できる。いくつかの実装形態では、アプリケーションの１つ以上が、衛星１１０で同じ時間期間中に実行され得る。これらのアプリケーションは、ユーザセンサ２２０の異なるセンサを使用できるか、ユーザセンサ２２０のセンサの使用を時分割で共有できるか、またはユーザセンサ２２０の動作でユーザからの同じデータを使用できる。センサを割り当てるために、オペレーティングシステム２３５は、各動作仮想ノードに必要なユーザセンサへの通信リンクを提供し、スケジューリングに基づいて必要なセンサへの通信リンクを割り当て解除または削除することを担当できる。例えば、イメージングデバイスは、仮想ノード２４１によって最初の時間期間中にアクセスされてもよく、ここで、仮想ノード２４１は、オペレーティングシステム２３５によって提供されるアドレス指定情報に基づいてセンサにアクセスしてもよい。時間期間が終了すると、オペレーティングシステム２３５は、いくつかの例では、仮想ノードのアドレス指定アクセスを削除し、センサのアクセスを第２の仮想ノードに割り当てることにより、仮想ノード２４１がセンサにアクセスできないようにすることができる。
【００３１】
いくつかの実装形態では、オペレーティングシステム２３５は、通信インターフェース２２１と連携して、他の衛星および地上制御システムとの通信に優先順位を付けることができる。特に、衛星から転送される各パケットについて、パケットは、パケットに関連付けられたサービス品質を決定するために検査され得る。これらのパケットには、別の衛星または地上制御システムに転送される他の衛星から受信されたパケット、他の衛星に送信される地上制御システムからのパケット、および衛星にローカルな仮想ノードによって生成されたパケットが含まれ得る。パケットが送信用に識別されると、パケットのサービス品質が決定され、サービス品質に基づいてパケットが送信され得る。いくつかの実装形態では、衛星は、パケットタイプ識別子情報（ヘッダーフラグなど）についてパケットを検査する場合がある。フラグが識別されると、パケットは識別されたフラグに基づいて送信用のキューに配置され得る。同様の動作は、他の衛星および／または地上制御システムから受信したパケットに対しても実行でき、ここで、パケットはパケットの優先順位に基づいて処理キューに配置することができる。
【００３２】
いくつかの例では、パケット送信動作に加えて、またはパケット送信動作の代わりに、オペレーティングシステム２３５をさらに使用して、各仮想ノードに割り当てられたサービス品質を管理することができる。サービス品質の管理の際に、オペレーティングシステム２３５は、軌道の衛星の位置に基づいて、仮想ノードに割り当てられた特定のタスクに基づいて、仮想ノードの支払いティアに基づいて、または他の何らかの同様のサービス品質の定義で各仮想ノードにリソースを割り当ててもよい。例えば、仮想ノードは特定の地域の監視専用にすることができる。その結果、仮想ノードには、衛星の軌道が対象領域を網羅する場合に第１のリソースが提供され得るが、衛星が対象領域外に移動する場合には第２のリソースが提供され得る。このようにして、衛星は、対象領域の外に移動するこの例では、サービス品質変更イベントを識別し、仮想ノードに提供されるリソースを変更することができる。
【００３３】
仮想化実行セグメント２０１で提供される仮想ノード動作に加えて、衛星１１０は制御セグメント２０２をさらに含む。仮想化実行セグメント２０１およびインターフェースセグメント２０３に通信可能にリンクされ得る、制御セグメント２０２は、衛星１１０の衛星のロジスティック制御要素を担当する。動作には、衛星のソーラパネルの配備の管理、地球または太陽に関する衛星の位置決めの管理、または他のいずれか同様の動作が含まれ得る。少なくとも一例では、飛行制御システム１１１は、オペレーティングシステム２３５からの要求を監視し、衛星がオペレーティングシステム２３５からの要求に対応できるかどうかを決定することができる。例えば、仮想ノード２４１は、ユーザセンサを移動する要求を生成することができ、これは、推進およびナビゲーション２１０を使用した移動も必要とする。要求に応じて、飛行制御システム２１１は、移動ができないと決定でき、推進およびナビゲーション２１０を使用して衛星の移動を防止することができる。さらに、いくつかの実装形態では、飛行制御システム２１１は、移動が許可されていないことを示す通知をオペレーティングシステム２３５および仮想ノード２４１に提供することができる。
【００３４】
図２の例では別個のシステムとして示されているが、いくつかの例では、飛行制御システムが実装され、処理システム２３０およびストレージシステム２３２に格納され得ることを理解していただきたい。しかしながら、飛行制御システムは別個のストレージシステムに格納され、オペレーティングシステム２３５およびその対応する仮想ノードとは異なる処理システムを使用し得ることも理解していただきたい。
【００３５】
図３は、一実装形態によるデータパケット通信を管理するための衛星の動作を示している。図３の動作は、図１の衛星環境１００のシステムおよびオブジェクトに関連して、以下の段落で括弧付きで参照されている。特に、図３の例には衛星１２１への参照が提供されているが、衛星プラットフォームの他の衛星によって同様の動作が提供され得ることを理解していただきたい。
【００３６】
図３に示すように、衛星は、衛星プラットフォームの他の１つ以上のシステムへの送信のために複数のデータパケットを取得する（３０１）ように指示されている。これらのパケットは、地上制御システム１７０から取得されても、衛星プラットフォームの他の衛星から取得されても、または衛星の仮想ノードを介してローカルで生成されてもよい。例えば、衛星１２１による送信のためのパケットは、衛星１１１、１２０、または１２２から受信することができ、地上制御システム１７０から受信することができ、または衛星１２１で実行する仮想ノードによって生成することができる。パケットが送信のために取得されると、衛星１２１は、複数のデータパケットの各データパケットに関連付けられたサービス品質に基づいて、送信のために複数のデータパケットに優先順位を付ける（３０２）ことができる。優先順位付けされると、複数のデータパケットは、優先順位付けに基づいて送信され得る（３０３）。例えば、各パケットには、データパケット内に含まれる情報のタイプに基づいてサービス品質が提供され得る。一例として、衛星プラットフォーム内で特定の動作を構成するために使用されるパケットは、衛星１２１によって送信される他のパケットよりも優先される場合がある。有利なことに、この優先順位付けは、構成が衛星プラットフォームにとって時間依存な場合に、アプリケーション構成の配信を支援するために使用することができる。例えば、開発者または管理者が対象のオブジェクトの観察を必要とする場合、地上制御システムからのアップリンクを介して衛星プラットフォームに構成が提供されると、衛星は、衛星によって通信されている他のパケットよりも構成パケットを優先する場合がある。
【００３７】
前の例は優先順位付けの一例を提供するが、構成パケットの優先順位付けに加えて、またはその代わりに、優先順位付けの他の例を実装できることを理解していただきたい。この優先順位付けには、衛星によるセンサ観測の状態データの優先順位付け、衛星間のヘルスチェックパケットの優先順位付け、または他の何らかの同様の優先順位付けが含まれ得る。いくつかの実装形態では、パケットの優先順位を決定する際に、衛星はパケット検査を実行して、パケットのヘッダー内の属性を識別することができ、ここで、属性には、他のパケットに対するパケットの優先順位を示す値またはフラグが含まれ得る。
【００３８】
さらに、図３の例では送信用のパケットに優先順位を付けるものとして示されているが、受信したパケットに対して同様の動作を実行できることを理解していただきたい。特に、通信インターフェースを介してパケットが受信されると、衛星は各パケットに関連付けられた優先順位を決定することができる。優先順位が決定されると、パケットは対応するキューに配置され得、優先順位の高いパケットは優先順位の低いパケットとは異なる方法で処理される。これらのキューには、処理システム、メモリ、処理コア、または他の何らかの同様の処理リソースによって、クロックサイクルの一部が割り当てられ得る。
【００３９】
図４は、一実装形態によるデータパケットの優先順位付けの管理の概要を示している。図４は、仮想化スペース４３０、優先順位付け動作４２０、通信インターフェース４１０、およびパケット４５０〜４５２を含む。
【００４０】
動作中、仮想化スペース４３０は、仮想ノード４４１〜４４４のプラットフォームを提供し、ここで、仮想ノード４４１〜４４４は、オペレーティングシステム／ハイパーバイザ４３５を介して実行する仮想マシンおよび／またはコンテナを含む。衛星に配備されているさまざまな組織のアプリケーションを表す仮想ノードの実行中に、仮想ノードは、他の衛星および／または地上制御システムとの通信を必要とする場合がある。これらの通信を提供する際に、パケットは仮想化スペース４３０から優先順位付け動作４２０に提供される。仮想化スペースからのパケットに加えて、優先順位付け動作４２０は、通信インターフェース４１０からデータパケット４５１をさらに受信する。これらのデータパケットには、他の衛星からのパケットのほか、衛星プラットフォームの地上制御システムからのパケットも含まれる場合がある。データパケットには、他の衛星に転送される構成情報、１つ以上の他の衛星で取得されたアプリケーションデータ（処理済みまたは未処理）、ヘルスチェック情報、または他の何らかの同様の情報が含まれる場合がある。
【００４１】
優先順位付け動作４２０によってパケットが取得されると、優先順位付け動作４２０は、衛星プラットフォームの少なくとも１つの他のシステムへの送信のために優先順位付けされたパケット４５２を生成し得る。この少なくとも１つの他のシステムは、いくつかの実装形態では１つ以上の他の衛星または地上制御システムを備えてもよい。少なくとも一例では、送信のためにデータパケットに優先順位を付ける際に、優先順位付け動作４２０は、取得されたデータパケットのそれぞれでパケットタイプを識別することができる。例えば、各データパケットのヘッダーでは、パケットはパケットのタイプを示すタグまたはフラグを含むことができ、ここで、パケットタイプは構成パケット、地上制御システム宛のパケット、衛星プラットフォームで動作するアプリケーションの状態パケット、ヘルスチェックパケット、または他の何らかの同様のパケットタイプを示すことができる。各パケットの識別子に基づいて、より時間依存のパケットが時間依存でない他のパケットよりも先に優先順位を付され、送信され得るように、パケットに優先順位を付けることができる。
【００４２】
図４の例は、衛星プラットフォームの他のシステムに送信されるパケットの優先順位付けの例を示しているが、衛星を介して受信され処理されるパケットにも同様の動作が適用される場合があることを理解していただきたい。特に、衛星４１０による処理のためにパケットが通信インターフェース４１０で受信されると、パケットは、パケットのタイプならびに／あるいはパケットに関連付けられた仮想ノードまたはアプリケーションに基づいて優先順位付けされ得る。例えば、より高いサービス品質に関連付けられたアプリケーションをターゲットとするパケットは、他のアプリケーションのパケットよりも高い処理キューに配置される場合がある。
【００４３】
図５は、一実装形態による構成を衛星プラットフォームに配備する動作シナリオ５００を示している。動作シナリオ５００は、地上システム５３０、地球５４０、対象の領域５４１、衛星（ＳＡＴ）５１０〜５１４、およびセンシングウィンドウ５２０を含む。本実装形態では５つの衛星で示されているが、衛星プラットフォームの一部として任意の数の衛星を配備できることを理解していただきたい。
【００４４】
図示のように、衛星５１０〜５１４は地球５４０の周りを周回し、そこで実行されるアプリケーションにセンシング動作を提供する。衛星の仮想ノードとして動作するアプリケーションを構成および／または更新するために、地上システム５３０が提供され、ここで、地上システム５３０は、衛星５１０〜５１４に新しいアプリケーションを提供でき、衛星５１０〜５１４の既存のアプリケーションに更新を提供でき、または衛星５１０〜５１４の既存のアプリケーションにタスク構成を提供できる。ここで、対象の領域５４１は、地球５４０の対象のオブジェクトまたは領域を示すために図示されている。この対象の領域は、管理者が定義することも、自動プロセスで定義することも、他のいずれかの同様の方法で定義することもできる。例えば、衛星から取得したデータに基づいて、アプリケーションの管理者は、対象の領域５４１からの追加データを必要とする場合がある。
【００４５】
対象の領域が識別されると、地上システム５３０は、地上制御システム５３０のアップリンクウィンドウ内の構成情報を、アップリンクを介して衛星に提供してもよい。本実施例では、アップリンクウィンドウの衛星は衛星５１１である。構成情報が衛星５１１に提供されると、衛星５１１は、対象の領域５４１に関連する軌道を備える他の衛星に構成を転送する必要がある場合がある。ここで、関連する軌道は、対象の領域５４１のセンシングデータを提供するためにセンシングウィンドウ５２０内に到達する衛星を含む。その結果、衛星５１１は、構成を衛星５１２に提供し、次に、構成を衛星５１３に転送して、次の衛星が同じ構成を確実に受信するようにできる。
【００４６】
対象の領域５４１の構成情報を転送する際、衛星５１１〜５１３は、送信された通信のサービス品質を識別し、サービス品質に基づいて衛星からの出口パケットに優先順位を付けるように構成され得る。図５に示すような、いくつかの実装形態では、各衛星を使用して、クラスタ内のアプリケーションを構成するために使用される出口パケットに優先順位を付けることができる。一例として、地上システム５３０から構成情報が衛星５１１で受信されると、衛星５１１は、パケット内の情報に基づいて構成パケットに優先順位を付けることができる（例えば、パケットが制御パケットを含むことを示すヘッダーフラグ）。優先順位が付けられると、他のいずれかのデータパケットと一緒に構成パケットが優先順位に基づいて衛星５１２に転送され得る。データパケットを送信するための優先順位を決定する際に、環境の他の衛星によって同様の動作を実行することもできる。
【００４７】
ここで、構成に関連付けられた衛星がパケットを受信した場合、対応する仮想ノードに構成を提供できる。このようにして、仮想ノードは、ノードの必要な機能を更新して機能を提供することができる。例えば、対象の領域５４１については、衛星が対象の領域からデータを検索することができるセンシングウィンドウ５２０にある間に、衛星のセンサから画像データを要求および受信するように仮想ノードを更新することができる。
【００４８】
図６は、一実装形態による状態情報の通信の動作シナリオ６００を示している。動作シナリオ６００は、地上システム６３０、地球６４０、対象の領域６４１、衛星６１０〜６１４、およびセンシングウィンドウ６２０を含む。本実装形態では５つの衛星で示されているが、衛星プラットフォームの一部として任意の数の衛星を配備できることを理解していただきたい。
【００４９】
動作中、仮想ノードは衛星（ＳＡＴ）６１０〜６１４に配備され、衛星でさまざまな動作を提供する。これらの仮想ノードは、衛星プラットフォームのさまざまな顧客のためにさまざまな動作を分離および管理するために使用される。仮想ノードの実行中、ノードは、衛星のセンサからの処理済みデータおよび未処理データ、ヘルスチェック通信、または他の何らかの同様の状態情報を送信するために、状態情報の通信を要求する場合がある。例えば、衛星６１０〜６１４の衛星が対象のオブジェクトを識別した場合、状態情報が衛星から地上システム６３０に通信され、管理者または他の職員に対象のオブジェクトを通知することができる。
【００５０】
本実装形態では、衛星６１１は、地上システム６３０に提供される状態情報を識別する。識別されると、状態情報は衛星６１２〜６１３を介して地上システムに転送される。状態情報を地上システム６３０に転送する際に、送信のためのデータパケットは、衛星により通信される他のパケットよりも優先される場合がある。例えば、衛星６１１でデータパケットが生成されるとき、パケットのサービス品質を示すためにパケットのヘッダー内にフラグが生成されてもよい。送信されると、衛星６１２〜６１３は、データパケットにパケット検査を提供し、ヘッダーのフラグに基づいてパケットに優先順位を付けることができる。したがって、衛星６１２〜６１３により通信される他のデータパケットに関して、衛星６１１からの状態情報パケットは、より高いサービス品質を提供され得る（例えば、送信キューでより高くに置かれ、異なる送信キューに割り当てられるなど）。
【００５１】
これは、衛星と地上制御システムの間のパケットに優先順位を付ける一例であるが、他のパケットに優先順位を付けたり、さまざまなサービスを提供したりできることを理解していただきたい。いくつかの実装形態では、衛星プラットフォームの要素間で通信されるパケットのヘッダーには、パケットに関連付けられたサービス品質を示すさまざまな値が含まれる場合がある。例えば、衛星のアプリケーションノードの動作の構成に使用されるパケットには、第１のサービス品質値が与えられ得、地上制御システムに配信されるパケットには、第２のサービス品質値が提供され得、および他のすべてのパケットには、第３のサービス品質値が提供され得る。他の例では、パケットのタイプに基づいてパケットに優先順位を付けることに加えて、またはその代わりに、アプリケーションに基づいてパケットに優先順位を付けることができる。例えば、複数の衛星全体で仮想ノードとして動作する第１のアプリケーションには、同じ衛星全体で動作する他のアプリケーションとは異なるサービス品質が提供され得る。この構成の結果、第１のアプリケーションのパケットは、他のアプリケーションとは異なる送信の優先順位が付けられる場合がある。
【００５２】
図７Ａ〜図７Ｃは、一実装形態による地理的位置に基づいて仮想ノードのサービス品質を変更する動作シナリオを示している。図７Ａ〜図７Ｃは、第１の動作ウィンドウ７０５、第２の動作ウィンドウ７０６、および衛星７１０を含む。衛星７１０はさらに、オペレーティングシステム／ハイパーバイザ７３５を備えた仮想化スペース７３０、および仮想ノード７４１〜７４３を含む。仮想ノード７４１〜７４３は衛星に配備され、さまざまな組織にさまざまな動作を提供する。
【００５３】
最初に図７Ａを参照すると、衛星７１０は、第１の動作ウィンドウ７０５に配置され、ここで、第１の動作ウィンドウ７０５は、地球の地理的位置または地域に対応し得る。第１の動作ウィンドウ７０５では、仮想ノード７４３に第１のサービス品質（ＱｏＳ）７１０を提供することができる。このサービス品質は、仮想ノードで利用できる処理リソース（クロックサイクル、処理コアなど）、仮想ノードへのセンサの可用性、仮想ノードの通信優先順位などを定義できる。例えば、第１の動作ウィンドウ７０５は、衛星が太平洋上にあり、アプリケーションが大西洋をターゲットとするときなど、仮想ノード７４３の機能にとって対象ではない地理的領域に対応し得る。結果として、仮想ノード７４３に提供される第１のＱｏＳ７１０は、衛星７１０で動作する他の仮想ノードよりも低くなり得る。
【００５４】
図７Ｂに目を向けると、衛星７１０がその軌道７５０を横断すると、衛星は第２の動作ウィンドウ７０６に移動する。第２の動作ウィンドウ７０６は、異なるＱｏＳ（第２のＱｏＳ７１１）に対応する衛星軌道の一部を表す。大西洋の監視オブジェクトをタスクとする仮想ノード７４３の例に戻ると、衛星の軌道が対象の地理的領域を監視する場所に衛星を配置すると、仮想ノード７４３に異なるＱｏＳが提供され得る。これには、仮想ノードへの追加の処理リソース、衛星のセンサへの追加アクセス、衛星間および地上制御通信のより高い優先順位、またはサービス品質に対する他の何らかの同様の変更の提供が含まれ得る。したがって、各仮想ノードに単一のサービス品質を提供するのではなく、衛星の軌道の衛星の位置に基づいて、仮想ノードに複数のサービス品質設定を提供することができる。
【００５５】
図７Ｃを参照すると、衛星７１０が軌道７５０を横断し、第１の動作ウィンドウ７０５に再び入ると、仮想ノード７４３は再び第１のＱｏＳ７１０に戻る。これにより、仮想ノードに動的なサービス品質が提供され、衛星の他の仮想ノードに追加のリソースを割り当てたり、衛星の電力リソースを節約したりできる。したがって、図７Ａ〜図７Ｃには図示されていないが、リソースが仮想ノード７４３から割り当てられるか、または取り除かれると、仮想ノード７４１〜７４２もサービス品質に変更が加えられる可能性がある。これらの変更は、仮想ノード７４３と同じ動作ウィンドウで発生する可能性があるが、仮想ノード７４３のサービス品質の状態変更とは無関係の可能性もある。例えば、仮想ノード７４１に割り当てられたサービス品質は、衛星の軌道中に異なる間隔で変更され、仮想ノードに所望の機能を提供することができる。
【００５６】
サービス品質の変更を引き起こすイベントとして作用する地理的な動きとして示されているが、各仮想ノードに割り当てられるサービス品質は動的であり、地上システムおよび／またはプラットフォームの他の衛星からの指示に基づいている可能性があることを理解していただきたい。一例として、対象のオブジェクトが第１の衛星によって識別されると、第１の衛星はタスク構成を第２の衛星に転送して、対象のオブジェクトに関する追加情報を提供することができる。第２の衛星のこのタスクを使用して、アプリケーションをサポートする仮想ノードに関連付けられたサービス品質を変更し、対象のオブジェクトを監視することができる。その結果、第２の衛星が対象のオブジェクトを観測できる観測ウィンドウ中に、サービス品質が向上する可能性がある。
【００５７】
図８は、一実装形態による衛星コンピューティングシステム８００を示している。コンピューティングシステム８００は、衛星について本明細書で開示されるさまざまな動作アーキテクチャ、プロセス、シナリオ、およびシーケンスが実装され得る任意のコンピューティングシステムまたはシステム群を表している。コンピューティングシステム８００は、図１〜図７の衛星の一例であるが、他の例も存在し得る。コンピューティングシステム８００は、通信インターフェース８０１、センサ８０２、および処理システム８０３を含む。処理システム８０３は、通信インターフェース８０１およびセンサ８０２にリンクされている。センサ８０２は、イメージングセンサ、熱センサ、光センサ、または他の何らかの同様のタイプのセンサを備えてもよい。処理システム８０３は、処理回路８０５、およびオペレーティングソフトウェア８０７を格納するメモリデバイス８０６を含む。コンピューティングシステム８００は、明確にするために示されていないバッテリー、ソーラパネル、およびエンクロージャなどの他の周知のコンポーネントを含むことができる。
【００５８】
通信インターフェース８０１は、ネットワークカード、ポート、無線周波数（ＲＦ）、処理回路およびソフトウェア、またはいくつかの他の通信デバイスなどの通信リンクを介して通信するコンポーネントを含む。通信インターフェース８０１は、無線リンクを介して通信するように構成され得る。通信インターフェース８０１は、時分割多重（ＴＤＭ）、インターネットプロトコル（ＩＰ）、無線プロトコル、通信シグナリング、またはそれらの組み合わせを含む他の何らかの通信フォーマットを使用するように構成されてもよい。いくつかの実装形態では、通信インターフェース８０１は、衛星プラットフォームの１つ以上の他の衛星と通信し、地上制御システムと通信してもよい。
【００５９】
処理回路８０５は、メモリデバイス８０６からオペレーティングソフトウェア８０７を検索して実行するマイクロプロセッサおよび他の回路を含む。メモリデバイス８０６は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報を記憶するための任意の方法または技術で実施される揮発性および不揮発性、取り外し可能および取り外し不能媒体を含み得る。メモリデバイス８０６は、単一のストレージデバイスとして実装され得るが、複数のストレージデバイスまたはサブシステムにまたがって実装されてもよい。メモリデバイス８０６は、オペレーティングソフトウェア８０７を読み取るためのコントローラなどの追加の要素を備えてもよい。記憶媒体の例には、ランダムアクセスメモリ、読み取り専用メモリ、磁気ディスク、光ディスク、フラッシュメモリのほか、それらの任意の組み合わせまたは変形形態、または他のいずれかのタイプの記憶媒体も含まれる。いくつかの実装形態では、記憶媒体は非一時的なストレージメディアであり得る。場合によっては、ストレージメディアの少なくとも一部は一時的なものであり得る。ストレージメディアは伝播された信号ではないことを理解していただきたい。
【００６０】
処理回路８０５は、通常、メモリデバイス８０６と通信インターフェース８０１の一部およびセンサ８０２も保持することができる回路基板上に搭載される。オペレーティングソフトウェア８０７は、コンピュータプログラム、ファームウェア、または何らかの他の形態の機械可読プログラム命令を含む。オペレーティングソフトウェア８０７は、サービス品質（ＱｏＳ）モジュール８０８、オペレーティングシステムモジュール８０９、およびノード８１０を含むが、任意の数のソフトウェアモジュールが同じ動作を提供してもよい。オペレーティングソフトウェア８０７は、ユーティリティ、ドライバ、ネットワークインターフェース、アプリケーション、または他の何らかのタイプのソフトウェアをさらに含み得る。処理回路８０５によって実行されると、オペレーティングソフトウェア８０７は、本明細書で説明されるようにコンピューティングシステム８００を動作させるように処理システム８０３に指示する。
【００６１】
少なくとも１つの実装形態では、オペレーティングシステムモジュール８０９は、衛星に対するさまざまな動作をサポートするコンテナまたは仮想マシンを表す、ノード８１０のプラットフォームを提供する。特に、異なる顧客のアプリケーション間で分離およびセキュリティを提供するために、各アプリケーションは、個別の名前スペース、ストレージ、およびセンサと通信システムへのアクセスを提供する仮想ノードとして衛星に配備できる。本実装形態では、ノード８１０の動作を提供する際に、各ノードの実行および衛星プラットフォームの他のシステムとの通信に提供されるサービス品質を管理するＱｏＳモジュール８０８が提供される。
【００６２】
一例では、ＱｏＳモジュール８０８を使用して、衛星コンピューティングシステム８００の軌道に基づいて、ノード８１０のそれぞれに異なるサービス品質を識別および割り当てることができる。例えば、衛星が第１の地理的位置を周回するとき、ＱｏＳモジュール８０８は、ノードに第１のサービス品質を提供し得る。このサービス品質には、処理リソース、センサリソース、通信リソースなどが含まれ得る。衛星が軌道を横断するとき、衛星は第２の地理的位置を周回する場合がある。地理的位置のこの変化に基づいて、ＱｏＳモジュール８０８を使用して、ノードに異なるサービス品質を提供することができる。その結果、各ノードに割り当てられるサービス品質は、軌道での衛星の現在の位置に基づいて動的になる場合がある。これにより、いくつかの場所ではノードにより高いサービス品質を提供し、一方、軌道の他の場所ではより低いサービス品質を提供できる。
【００６３】
他の例では、衛星で実行されているノードにさまざまなサービス品質を割り当てることに加えて、またはその代わりに、他の衛星および／または地上制御システムとの通信にサービス品質を配置することもできる。いくつかの実装形態では、これには、衛星コンピューティングシステム８００によって送信されるパケットの識別、各パケットに関連付けられたサービス品質に基づいた送信のためのパケットの優先順位付け、および送信に基づいたパケットの送信が含まれ得る。優先順位を識別する際、いくつかの例では、パケットは、送信される他のパケットに関連してパケットのサービス品質を定義するために使用されるタグまたはサービス品質値を含んでもよい。これらの値は、パケットが構成パケット、ヘルスチェックパケット、衛星のアプリケーションノード間の状態パケット、地上制御システム宛のパケット、または他の同様のパケットのタイプの表示に対応するかどうかを示すことができる。パケットのサービス品質が識別されると、パケットは送信用のキューに配置され得る。これらのキューにより、優先順位の高いパケットが、サービス品質の低いパケットよりも速く送信されることが確保され得る。
【００６４】
前の例では送信用パケットの優先順位付けとして説明されたが、地上制御システムおよび／またはプラットフォームの他の衛星から受信したパケットに同様の動作を適用できることを理解していただきたい。特に、パケットが受信されると、パケットは、パケットに関連付けられたサービス品質を決定するために検査され得る。サービス品質が決定されると、ＱｏＳモジュール８０８を使用して、衛星コンピューティングシステム８００で処理するためにパケットを対応するキューに入れることができる。例えば、地上制御システムから受信した構成パケットには、衛星コンピューティングシステムで受信した他のパケットよりも高いサービス品質が提供され得る。その結果、構成パケットが識別されると、パケットが処理キュー（クロックサイクル、処理コアなどの独自の処理リソースが提供される）に配置され得、リソースが衛星コンピューティングシステム８００によって受信された他のパケットより先に提供されるようになり得る。
【００６５】
いくつかの実装形態では、送信または受信後の処理のためにパケットの優先順位を付ける際に、パケットの送信元または宛先仮想ノードに基づいてパケットに優先順位を付けることができる。例えば、第１の仮想ノードには、衛星で実行される他の仮想ノードよりも高いサービス品質が提供され得る。この構成の結果、第１の仮想ノードに通信が必要な場合、パケットは衛星の他の仮想ノードよりも先に優先順位を付され得る。いくつかの例では、パケットを送信および受信するためのこのサービス品質は、衛星の軌道に基づいて動的である場合がある。したがって、軌道の第１の期間では、仮想ノードにデータパケット通信の第１のサービス品質を提供することができ、一方、軌道の第２の期間では、仮想ノードにデータパケット通信の第２のサービス品質を提供することができる。
【００６６】
含まれる説明および図は、最良のオプションを作成および使用する方法を当業者に教示するための特定の実装形態を示している。本発明の原理を教示する目的で、いくつかの従来の態様は簡略化または省略されている。当業者は、本発明の範囲内に入るこれらの実装形態からの変形形態を理解するであろう。当業者はまた、上記の特徴をさまざまな方法で組み合わせて複数の実装形態を形成できることを理解するであろう。結果として、本発明は、上記の特定の実装形態に限定されず、特許請求の範囲およびそれらの同等物によってのみ限定される。
【図１】
2020527908.tif 000003
【図２】
2020527908.tif 000004
【図３】
2020527908.tif 000005
【図４】
2020527908.tif 000006
【図５】
2020527908.tif 000007
【図６】
2020527908.tif 000008
【図７Ａ】
2020527908.tif 000009
【図７Ｂ】
2020527908.tif 000010
【図７Ｃ】
2020527908.tif 000011
【図８】
2020527908.tif 000012
【国際調査報告】
2020527908.tif 000013
2020527908.tif 000014
2020527908.tif 000015