複雑な分散システム向けのLINXプロセス間通信サービス
LINXは、透過的で信頼性のある高パフォーマンスなプロセス間通信 (IPC) サービスを提供します。これにより、複雑な分散システムの概念化、モデル化、パーティション化、拡張を容易にします。ダイレクト・メッセージパッシングを利用した LINX は、DSP やマイクロコントローラから64ビットCPUまで拡張できる唯一の IPC テクノロジーです。LINXは、基礎のプロセッサ、オペレーティングシステム、インターコネクトには依存しません。信頼/非信頼メディア両方でコントロールプレーン及びデータプレーン・アプリケーションをサポートし、TIPCよりも20%高いパフォーマンスを実現します。また、LINXは、あらゆるネットワーク・トポロジをサポートします。単一ブレード上の単一プロセッサから、マルチラックシステムの何百というプロセッサを使った複雑なクラスタ・トポロジの大規模ネットワークまで対応できます。
透過的でスケーラブルなIPCサービス
LINXは、複数のオペレーティングシステム、CPU、インターネクトにまたがって分散するアプリケーション・プロセスが、あたかも同一オペレーティングシステム上の同一CPUで実行しているかのように、シームレスに通信できるようにします。LINX サービスは、基礎のハードウェア、オペレーティングシステム、物理インターコネクト、ネットワーク・トポロジに依存しません。こうした一貫性と透過性により、分散型アプリケーションのパーティション化や開発が容易になり、アプリケーション・コードをほとんど変更することなく再構成、拡張できるようになります。他のサプライヤ製ソフトウェア・コンポーネントの統合も容易にできるようになります。また長期的には、システム全体の可用性を高め、システムのデバッグや保守を容易に行えるようにします。
システム全体をカバーする高パフォーマンスIPCソリューション
従来、分散システムの設計者は、ローカル(同一ノード上の複数プロセス)とリモート(異なるノードの複数のプロセス)間のIPCを処理するために、いくつかのIPCテクノロジーを組み合わせて利用していました。例えば、設計者の多くは、オペレーティングシステムに本来備わっているIPCサービスを使ってローカルIPCのパフォーマンスを最大化し、一方でTCPのような標準的で汎用性の高いIPCテクノロジーを使ってシステム全体のリモート・プロセス間通信を処理します。システム全体のリモート・プロセス間通信は、それほど頻繁に発生しないため、遅延やスループットの要件も寛容になります。
LINXは、システム全体をカバーする高パフォーマンスIPCソリューションを提供するため、複数のIPCサービスを同一システム内で使用する必要がなくなります。CPU(マルチコア・デバイスを含む)、OS、インターコネクトのすべての境界を超えた、ローカル/リモート両方のIPCには、高パフォーマンスと汎用性が必要です。LINXは、高パフォーマンスで軽量なダイレクト・メッセージパッシング・テクノロジーを利用して、こうしたIPC要件を満たす高パフォーマンスと汎用性を提供します。LINXはUDPやTCPなどのベアラ・プロトコルのトランスポートとしても動作できるため、DSPと効率的に連携します。
TIPC や TCP/UDP/ソケットよりも高速
LINXは、競合するメッセージベースのIPCプロトコルに比べて、格段に高いパフォーマンスを実現します。例えば、LINXは、ローカルIPC向けTCP/UDP/ソケットに比べて90%、リモートIPC向けTCPに比べて50%も高速です。また、ローカルIPC向けTICPに比べて遅延を25%低減、スループットを20%向上、リモートIPC向けTICPに比べて遅延を10%低減、スループットを25%向上させています。LINXは、トラフィック適用アルゴリズムを特長としています。これによりシステムは、低トラフィック時の遅延を最小化し、高トラフィック時のスループットを最大化できるようになります。
TIPC や TCP/UDP/ソケットよりもスケーラブル
LINXは、接続に革新的なアドレスマップを採用し、柔軟性やスケーラビリティを大幅に向上させています。競合IPCモデルでは、システム内の各ノードで、システム全体のアドレスマップを保持しなくてはなりません。一方、LINXでは、ノードはローカル接続に必要なアドレスのみ保存します。この結果、LINXのノードはコード・ストレージやデータ・ストレージのために極めて小さなメモリしか利用する必要がなく、再構成が容易にできます。これにより、LINXシステムは、省フットプリントのDSPやマイクロコントローラ・ノードを含む、複雑なクラスタ・トポロジ(すなわち、ブリッジやゲートウェイによって接続されるクラスタ群)による超大規模ネットワークへの拡張が可能です。
高信頼性と高可用性
LINXは、指定した接続に対して監視機能や障害レポート機能を提供することにより、分散システムの可用性を高めます。また、エンドポイント間の物理CPUインターコネクトと論理接続の両方に対して、冗長リンクの内蔵サポートを提供します。
サポートされるプラットフォーム
Linux: PowerPC, Intel, ARM/Xscale, MIPS
OSE: PowerPC, ARM/Xscale, MIPS
OSEck: Freescale MSCxxxx, TI C64x+, その他