投稿日

TCP通信の断片化を解消するSORACOM Binary Formatと、FOX4での採用事例

IoTプロジェクトにおいて、通信量の削減は重要なテーマです。限られた電力や通信コストを抑えるため、HTTPのように冗長なヘッダを持つプロトコルではなく、軽量かつ到達保証のあるTCPを直接利用するケースもあります。

しかし、TCP直接利用を進めると多くの開発者が一度は直面する問題があります。それは、TCP通信におけるパケットの断片化(フラグメンテーション)です。送信データが1パケットに収まらないと、自動的に複数のパケットに分割されます。HTTPのようなプロトコルではこの処理が裏側で吸収されますが、TCPをそのまま利用する場合は、受け取り側で再結合の処理が必要です。

再結合の手間をなくす機能「SORACOM Binary Format v1」

SORACOM Binary Format v1(以下、Binary Format) は、この課題を解消するための機能です。複数に分割されたパケットを「1つのメッセージ」として取り扱えるようにすることで、アプリケーション側は分割や再結合を意識せず、確実にデータを受け取ることができます。これにより、通信の信頼性を保ちながら、シンプルかつ効率的な実装が可能になります。

Binary Format の利用には

  • Step 1: デバイス側から特定のエントリーポイント(アドレス)へTCPでデータ送信をする
  • Step 2: そのエントリーポイントの「SORACOM Binary Format v1 でデータを受信」をONにする

以上の手順を行います。この内、Step 2 は SORACOM ユーザーコンソール(Web 管理画面)で容易に設定できます。一方、Step 1 のデバイス側はファームウェア上の送信先アドレスの設定が求められます。

そこで今回は、ファームウェアが SORACOM Binary Format v1 に標準採用した Lantronix 社のテレマティクスゲートウェイ「FOX4」を例に Binary Format の課題解決ポイントについて解説します。

データ欠損が許されない現場が直面する通信課題

「FOX4はGPS トラッカーとしても、そして拠点設備の監視にもお使いいただいています」とお話しいただいたのはLantronix社の伊藤氏です。特に、太陽光パネルの発電量監視など、データを確実にクラウドへ届けたいと考えるお客様にとってデータ欠損のリスクは致命的です。

HTTPやMQTTなどの高レイヤープロトコルでリスクは軽減できますが、通信量や電力を抑えるためにプロトコルを最適化し、TCPを直接利用することがあります。その場合はクラウド側で断片化パケットの再構成が必要です。

伊藤氏は「技術力のあるお客様はクラウド側で再結合を行いますが、そうでないお客様は断片化したデータは破棄し、たまたま断片化しなかったデータのみを利用しているケースがありました」と、この問題の難しさを語りました。

FOX4による「SORACOM Binary Format v1」標準採用の意義

「お客様がクラウド側の技術力が不足していても、データが欠損なく届くことを希望していました」この要望を実現するために Lantronix 社が導き出した答えは「FOX4 で SORACOM Binary Format v1 を標準採用」というものでした。

まずは Lua スクリプトでプロトタイプを実装し、その効果を確実に検証。そして、満を持してエンジニアリングチームにリクエストし、製品への組み込みが実現しました。

「これにより、お客様は複雑なことを考えることなく、手軽にデータを欠損なく送信できるようになりました。これが最大の決め手です」と伊藤氏は語ります。

FOX4が示す、複雑さを隠す設計思想

Lantronix 社の取り組みは、単なる新機能の追加ではありません。それは、技術的な複雑さをデバイスとSORACOMプラットフォームの組み合わせで吸収し、お客様を本来注力すべきビジネス活動に集中させるという、設計思想の表れです。

最後に伊藤氏は「実装において特に課題はなく、シンプルに開発できました。クラウドに専門性を持たないお客様に対し、より簡易なデータ送信方法を提案できるようになったことが大きなポイントです」と、今回の取り組みをまとめていただきました。

― 本記事では SORACOM Binary Format v1 のご紹介とその効果について、同機能に標準対応した Lantronix 社の FOX4 を題材にご紹介しました。IoT の機能実装はデバイスそしてクラウドの2点が注目されますが、「ネットワーク上での機能実装」という選択肢を増やせるのが、SORACOM 採用のポイントとなるでしょう。

SORACOM Binary Format v1 自体にご興味がある方は、ぜひ公式ドキュメントをご覧ください。また、Binary Format v1 に限らず、各種 SORACOM のプラットフォーム機能に標準対応いただくことで、自社デバイスの信頼性や機能向上、そして差別化につながるのではないでしょうか。

― ソラコム 小林 (tau)