コンテンツへスキップ

NEW  近日公開:フリートに質問すると答えが返ってくる — AIのためのMCPサーバー。  詳細を見る →

ブログ

ホワイトペーパー | クラウド時代の高度なネットワーキング

· 約11分で読了
ホワイトペーパー | クラウド接続世界のための高度なネットワーキング

要約

一般にTCP/IPと呼ばれるインターネットプロトコルスイートは、インターネットの中心にあるコンピュータネットワーキングモデルおよび通信プロトコル群を表しています。TCP/IPプロトコルの主な設計目標は、ネットワーク間の相互接続の構築を可能にすることでしたが、今後何千億ものデバイスが接続されると予想されるIoT(モノのインターネット)市場での利用を考えると、その欠点が明らかになってきます。

本技術文書では、クラウド接続世界におけるTCP/IPネットワーキングのこうした欠点について論じます。

クラウド接続世界は、市場規模とデバイス数の両面において、これまでのどの市場とも異なる機会をもたらします。今後生じるセキュリティ、スケール、実装のしやすさといった課題に対応するためには、ネットワーキング技術の進化が不可欠です。

TCP/IP ≠ エンドツーエンド

IoTにとっての根本的な課題は、TCP/IPベースのインターネット接続がエンドツーエンドの信頼の連鎖を確保する能力をほとんど持たないという点です。最も重大な限界は、その連鎖上にある各独立ネットワークが、それぞれ独立した予測不可能な脆弱性のポイントとなることです。

インターネットプロトコル(IP)アドレスは、街の住所のようなもので、ネットワークインターフェースを一意に識別する手段を提供します。IPアドレスは物理デバイスを表すものだとよく誤解されますが、仕様が明確に意図しているのは、IPアドレスがネットワークインターフェースを表すということであり、そのインターフェースは別のネットワークと結び付けられ、そこで何らかのルーティング方式によってエンドツーエンドの接続性が管理されるという点に注意する必要があります。

クラウド接続世界には、エンドツーエンドの信頼の連鎖を確保できる、安全な直接接続技術が必要です。

Remote.Itの安全な接続は、標準のlocalhostインターフェースを使ってあらゆるTCP/IPスタックに接続する、小さな移植可能なCコードによって実現されます。このソフトウェアは、Linuxプラットフォーム上ではユーザー空間のデーモンとして動作するほか、LwIPやuIP [1] など、あらゆるTCP/IPスタックに移植できます。利用例として、PC上のlocalhostインターフェースを使えば、ユーザーは同じPC上のWebサーバーに安全に接続できます。ユーザーはブラウザに127.0.0.1のようなlocalhostアドレスを入力します。127.0.0.1アドレスを使った接続が安全なのは、Webサーバーとブラウザの間でやり取りされる情報がそのPCの外に出ることがないためです。Remote.Itを使うと、ユーザーはリモートデバイスからでも127.0.0.1というlocalhostアドレスを使ったままWebサーバーに接続できます。これにより、Remote.It接続とlocalhostインターフェースを使って、Webサーバーとリモートのユーザーデバイスとの間でデータを安全かつ直接やり取りできます。Remote.Itの直接接続は、TLSで保護されたトンネルを使ってlocalhostインターフェースを拡張するもので、例えばCPU間のプロセス間通信に保護されたバスが使われるのと同じように、ホスト間通信を実現します。Remote.It接続は、PC、モバイルデバイス、センサー、あらゆる種類のIoT(モノのインターネット)デバイスなど、どのようなタイプの機器同士でも確立できます。

Remote.Itのソフトウェアと安全な接続は、サイバーセキュリティ攻撃に対する第一線の防御を提供します。NSA(米国家安全保障局)は、ICS(産業用制御システム)の利用者に対し、ネットワークデバイスを発見しネットワークトポロジーを把握するためのスキャンを実施するよう推奨しています [2]。しかし残念なことに、攻撃者も同種のスキャンを容易に実行できてしまいます。Shodan(インターネット向け)やFing(ローカルエリアネットワーク向け)は、攻撃の一助となり得る、使い方は簡単でありながら高度なネットワークスキャナーツールの例です。Remote.Itを使えば、HTTP接続などあらゆるサービスを、127.0.0.0/8クラスのアドレスを使ったRemote.Itサービスに接続・バインドできます。これにより、TCP/IPスタックは127.0.0.0/8、すなわちlocalhostクラスのアドレスからの着信接続にしか応答しなくなります。RFC1060によればlocalhostアドレスは外部ネットワーク上に決して現れないため、TCP/IPスタックは外部からの侵入に対して安全になります。さらに、すべてのポートを外部からの要求に対して閉じることも可能です。外部IPアドレスからの接続を制限し、外部ポートをすべて排除することで、ネットワークスキャナーが検出するTCP/IPスタックのフィンガープリントがなくなり、Remote.Itソフトウェアを使用しているデバイスを事実上隠蔽・秘匿できます。Remote.Itによるデバイスの秘匿機能は、棚卸しやテストなど正当な目的のスキャンを行う際には選択的に無効化できる一方、通常利用時には有効にしておくことで、ポートスキャンやその他のネットワーク侵入攻撃を防ぐことができます。

Remote.It技術により、認証済みのユーザーは、モバイルデバイス上のRemote.Itアプリケーションやあらゆるブラウザを使って、(クラウド上またはIoT上の)あらゆるリソースに接続できます。Remote.ItのSaaS(Software as a Service)サーバーがユーザーを認証し、IoTデバイスとユーザーとの間の接続を開始・仲介します。セッションごとの鍵がIoTデバイスとユーザーに送られた後、サーバーはその接続を両エンドポイントに引き渡し、ユーザーとリソースとの間に安全な直接接続を確立します。

Remote.Itの接続技術はシンプルでありながら柔軟かつ強力で、さまざまな方法で拡張できます。一例として、センサーノードが信頼済みコードを実行し、Remote.It接続を介してクラウド上の別の信頼済みホストと通信することが挙げられます。Remote.It接続はサービスとしてTCP/IPレベルで動作するため、二次的な認証層は一切不要になります。

事例

拡張性のもう一つの例として、サービスレベルの仮想化を可能にすることで、単一デバイス上でHTTP/HTTPS、ssh、VNCそれぞれに独立したRemote.It安全接続を確立できます。また、複数のサービスを単一のRemote.It接続内にまとめたり結合したりすることも可能です。Remote.It技術のある実運用デプロイメント(現場で10万台超のデバイスを運用)では、IPカメラの映像ストリームが制御チャンネルと結合されています。TCP/IP層より上位で処理されるこの結合接続により、TCPバッファの充填率に応じて映像ストリームのビットレートを変化させることで、ライブ配信映像のQoSを実現しています。このようなRemote.It技術の活用は、TCP/IPに対する強力な拡張の一例と言えます。例えば、Winstein(スタンフォード大学)とBalakrishnan(マサチューセッツ工科大学)は最近、4Gデータチャンネル自体には一切手を加えることなく、同様の制御層によって4G LTE接続の帯域幅または遅延のいずれかを数倍改善できることを示しました [4]。

Remote.It接続技術はデバイス間の直接接続を実現し、STUN、TURN、ICEといった有料で複雑なクラウドサービスを不要にします。また、Remote.Itの直接接続はクラウド経由の接続よりも低遅延です。Remote.Itは、ユーザーおよびIoTデバイスからクラウドへの接続の低遅延性を活用できます。

容易なプロビジョニング

Remote.It技術は、クラウドリソースを簡単に登録・プロビジョニング・デプロイできるよう設計されています。例えば、Amazon AWS、Microsoft Azure、Google Cloud Platform(GCP)上の新しいサーバーインスタンスは、そのインスタンスがユーザーと同じ外部IPアドレスを使用しているという事実に基づいて、プロビジョニングまたは再プロビジョニングされるようプログラムできます。Remote.Itの接続はエンドポイント側から開始されるため、ポートフォワーディングやファイアウォールの設定なしに直接接続を確立できます。この接続技術により、クラウドリソース、IoTデバイス、ユーザーは、異なるネットワーク構成間を移行したり、異なるセルラーネットワークや衛星ネットワークの上で、あるいはその背後で動作したりすることができます。Remote.Itのデプロイに必要なのは、最小限のエンジニアリング労力で済む、小さなスタンドアロンのバイナリだけです。Remote.Itは、LANや近接ネットワークをインターネットへと安全な形で拡張することを可能にします。

Remote.Itの接続は、Remote.Itソフトウェアを含む2台のデバイス間で直接かつ安全に確立することも、Remote.Itソフトウェアを含むデバイスと含まないデバイスとの間でリレーサーバーを介して確立することもできます。Remote.It対応のリレーサーバーはゲートウェイの一部とすることができ、これによりゲートウェイのインターネット接続がダウンしている場合でも、VPC内のクラウドリソースやLAN上のIoTデバイスが通信を続けられます。使いやすさは、サービスやデバイスの共有、アクセス・所有権・制御に関する管理にも及びます。Remote.Itはまた、登録、プロビジョニング、ネットワーク監視、地理的に分散したサーバー、そしてあらゆるプラットフォームとの統合を可能にするキットなど、Remote.It接続技術を支えるSaaSインフラストラクチャも提供しています [5] [6]。

参考文献

[1] http://en.wikipedia.org/wiki/LwIP および http://en.wikipedia.org/wiki/UIP_(micro_IP) は、組み込みシステムで使われる2つの一般的な低フットプリントTCP/IPスタック、LwIPとuIPについて説明しています。

[2] https://www.nsa.gov/ia/_files/ics/ics_fact_sheet.pdf A Framework for Assessing and Improving the Security Posture of Industrial Control Systems (ICS), Systems and Network Analysis Center, NSA, Released: August 20, 2010 Version: 1.1. IoTおよびICSデバイスに関するNSAの推奨事項を説明しています。

[3] http://www.icri-sc.org/fileadmin/user_upload/Group_TRUST/PubsPDF/trustlite.pdf Koeberl, Patrick, Steffen Schulz, Ahmad-Reza Sadeghi, and Vijay Varadharajan. “TrustLite: a security architecture for tiny embedded devices.” In Proceedings of the Ninth European Conference on Computer Systems, p. 10. ACM, 2014. Intel社のTrustLiteによる信頼・アテステーション技術について説明しています。

[4] Winstein, Keith. “Transport architectures for an evolving Internet.” PhD diss., Massachusetts Institute of Technology, 2014. advised by Hari Balakrishnan. TCP/IP層より上位のチャンネルモデルを用いて、セルラー接続の帯域幅と遅延を改善する手法について説明しています。

[5] US Patent US8447843, priority date September 2006, describes how the Weaved technology can identify, configure, and access an IoT device connected to a network.

[6] US Patent Application US20150052253

← すべての記事 更新日: 2023年11月10日
記事を検索