Upgrade to Pro — share decks privately, control downloads, hide ads and more …

「IoT虎の巻」ベストプラクティス・アンチパターン【SORACOM Discovery 2023】

「IoT虎の巻」ベストプラクティス・アンチパターン【SORACOM Discovery 2023】

IoTをビジネスで活かすためには、技術面のみならず製造やキッティング、出荷や交換といったオペレーション面の設計も求められます。本セッションでは、IoTでお悩みのお客様と数多く接しているソラコムのソリューションアーキテクトが、現場で培った実践的な経験をベースにIoTにおけるベストプラクティスやアンチパターンを紹介します。これからIoTに挑戦される方が、IoTを始める前に知っておくことで失敗を回避できるポイントを網羅的に学べる「IoT虎の巻」をご覧ください。

株式会社ソラコム ソリューションアーキテクト 松本 悠輔

SORACOM

July 05, 2023
Tweet

More Decks by SORACOM

Other Decks in Technology

Transcript

  1. 本日のハッシュタグ #SORACOM @SORACOM_PR fb.com/soracom.jp youtube.com/@SORACOM_Japan instagram.com/soracom.official 使用例 他には… • #SORACOM

    IoTやDXの話を聞きにきた • キーノートは2日目! #SORACOM #SORACOM の検索で、最新情報が!
  2. 松本悠輔(Yusuke Matsumoto) ソリューションアーキテクト 経歴: • インフラエンジニア • Webエンジニア • IoTエンジニア

    好きなサービス:SORACOM Junction 自己紹介 SORACOM本の一部執筆を 担当しています!
  3. IoTデバイスに 直接グローバルIPアドレスを割り当てる • グローバルIPアドレスは直感的にリモートアクセスできる一方で、デバイ スが乗っ取られてしまったり改ざんされるリスクがある • グローバルIPアドレスは重複の無い一意な識別情報の側面を持つ一方 で、グローバルIPが別のデバイスで再利用される可能性があるため、 データ管理に課題がある •

    例:IPアドレスがx月x日まではデバイスAとして扱い、以降はBとして扱うと いったように日時をベースに考える必要があると、データの取り扱いに根本的 無難しさがある x月x日 device_ip date device_name temperature 192.0.2.1 1685936783 device_a 25.0 192.0.2.1 1685936843 device_a 25.1 192.0.2.1 1685936903 device_b 25.2 192.0.2.1 1685936963 device_b 25.1 ネットワーク アンチパターンの背景
  4. IoTデバイスにはグローバルIPを 直接割り当てない前提のアーキテクチャを推奨 • デバイスへのリモートアクセスはセキュアネットワーク経由で行う仕組みを 強く推奨 • 例:SORACOM Napterのようなセキュアリモートアクセスの仕組みを活用す る •

    デバイスの識別情報はIPアドレス非依存な仕組みにする • デバイスごとの論理的なユニークID(下記例ではdevice_uuid)を主キーとし て、IPアドレス情報は従属する情報のうちの1つとして扱う device_uuid date device_ip temperature 3126c570-4bb0-bf4d-857c-6ee97f3659bf 1685936783 192.0.2.1 25.0 3126c570-4bb0-bf4d-857c-6ee97f3659bf 1685936843 192.0.2.1 25.1 4ac0ab10-0507-7cda-eafc-78ae15f7123b 1685936903 192.0.2.1 25.2 4ac0ab10-0507-7cda-eafc-78ae15f7123b 1685936963 192.0.2.1 25.1 例:SORACOM Napter ネットワーク ベストプラクティス 参考 https://soracom.jp/services/napter/
  5. 3GとLTEとではベストプラクティスが異なる • LTEデバイスの再接続は、接続するだけでネットワークの間で信号 のやりとりが発生しネットワークの負荷になる • 無線は共用リソースなので頻繁な接続・接続断はネットワークに接 続要求が拒否されることがある • 3Gの時代はアプリケーション通信時以外はモジュールを寝かせて おくのがベストプラクティスだった。

    • 3G時代はリソースを解放することが是とされていた • 現在主流のLTEにおいても3Gと同様に頻繁に無線の接続・切断を 繰り返す設計はアンチパターン • 通信する時にAT+CFUN=1,1し、終わったらAT+CFUN=0するようなイ メージ ネットワーク アンチパターンの背景
  6. LTEは常時接続が基本 • LTEはAlways onの考え方があり常時オンライン、常時 接続が基本。 • 無線リソースは自動的に適宜開放されるので利用者が 意図して切断する必要はない • RRC

    Connectionが比較的短い時間でsuspend / releaseされる • 消費電力の最適化が必要なケースではLTE以外の通信 方式の活用を検討する ネットワーク ベストプラクティス
  7. モジュールの価格を優先して通信方式を決定する • LPWAモジュールが比較的安価なので価格メリットを優先して通信方式を LWPAに選定する • ビジネス上そうせざるを得ない場合はある • LTEとLTE-Mのモジュール価格を比較すると2倍程度価格差がある場合があ る •

    LTEとLTE-Mを比較した際に「安くて省電力」なLTE-Mを選定する • 両方IP通信を行うことができるためデバイスへの給電が安定しているユース ケースではデバイスの価格差からLTE-Mが選定される場合がある ネットワーク アンチパターン
  8. 無線通信が外部からの影響で変化することを 把握しておく • 無線通信は周囲の環境の変化によって品質が変化する • 周囲の利用者の増減 • 物理的な遮蔽物の存在 • 外部からのノイズ影響

    • ネットワーク品質の変化は最終的にスループット、遅延、ロス レートといった形で現れる • アプリケーションの通信が特定のタイミングだけ失敗する、と いった形で問題が顕在化する可能性がある ネットワーク アンチパターンの背景
  9. 無線ネットワークでの通信プラクティス • 通信が失敗する前提でリトライの仕組みを実装する。 • リトライはリソースの有効活用の観点からExponential Backoff でのリトライを強く推奨 • https://aws.amazon.com/blogs/architecture/exponential- backoff-and-jitter/

    • デバイス設置環境の無線品質を継続的に測定・収集すること を推奨 • https://zenn.dev/2matzzz/articles/5dc6627104d9fa • 各種パラメータは無線環境に適した値に設定する ネットワーク ベストプラクティス
  10. あらゆるパラメータは運用中の変更を考慮する • 接続先情報は変更になる可能性がある • 接続先IPやURLパスが変更になる可能性がある • 場合によってはドメイン名が変更になる • クラウド接続用認証キーのような秘匿情報は漏洩や不正利用される可能 性を考慮する

    • 全てのデバイスで異なる認証キーを利用することは大前提 • 異なっていたとして、後からの更新機能は必須 • データの送信頻度は通信コストやバッテリー駆動デバイスの連続稼働時 間に直接影響がある重要なパラメータ • 運用中に変更できることが強く望ましい • デバイスライフサイクルを考えると破棄や再利用時に秘密情報を削除す る初期化機能相当の実装が必要 デバイス アンチパターンの背景
  11. パラメータを外部から注入できる仕組みにする • デバイスごとに異なるパラメータを配信する管理システムを用意する • この接続先だけはデバイスにハードコードする必要がある • IP直指定ではなくFQDN指定であることが望ましい • セキュリティ情報を動的に取得する機能が望ましい •

    デバイス内の情報を削除する遠隔または直接操作する機能を用意する デバイス ベストプラクティス デバイス 管理システム IoTデバイス 直接削除操作 遠隔削除操作 パラメータ配信 認証キー パラメータ 参考 https://users.soracom.io/ja-jp/docs/air/use-metadata/ 参考 https://soracom.jp/services/krypton/
  12. デバイスには可能な限りアップデートの機能 を実装する • 可能な限りアップデート機能の実装を検討する • 実装が難しい場合でも通信モジュールのアップデート方法は確認しておく • アップデートはオンラインに限らずオフラインのアップデート方法が有用なユースケー スもある(デバイスがリース等で定期的に返ってくるような場合はオフラインアップデー トでも対応しやすい)

    • オンラインでのアップデート機能はデータ通信契約と併せての整理が必要 • リリース直後はアップデートの頻度が高く、時間経過とともに落ち着いてくる • それを踏まえてデータ通信契約には余裕をもっておく デバイス ベストプラクティス ファームウェア デバイス 管理システム IoTデバイス 参考 https://soracom.jp/services/harvest/
  13. セキュリティ、運用性がトレードオフに なっている • デバイス + インターネット接続 + クラウドの組み合わせではどうしてもトレードオフがある • デバイス側にプロトコル変換のためのサイドカーを追加するか、インターネットを経由しないネットワーク

    接続方式が必要 クラウド アンチパターンの背景 IoTデバイス インターネット データ受付 サービス https://example.com サイドカー IoTデバイス 閉域網 データ受付 サービス tcp://example.com:20000 udp://example.com:30000 各種クラウド サービス https://example.com UDP/TCP to HTTPS UDP/TCP HTTPS プロトコル変換 パターン セキュア ネットワーク パターン
  14. アンチパターンに陥らないようにするには? • 組織力を高める • 各技術領域に長けた人材を採用する、できれば2つ以上の領域 に強い人材を採用・育成する • 外に知見を求める • 自組織に足りない知見を外部のプロフェッショナルに補完しても

    らう • デバイス、ネットワーク、クラウドの全体アーキテクチャレビューを 受ける • 量産に耐えうるクラウド環境構築支援 • 量産は物流やキッティングの観点も重要
  15. IoT テクノロジー民主化のためのプラットフォーム SORACOM Global Platform ライブラリ & SDKs 
 CLI(Go),

    Ruby, Swift Web インターフェース
 User Console データ転送支援
 SORACOM Beam クラウドアダプタ
 SORACOM Funnel データ収集・蓄積 SORACOM Harvest プライベート接続
 SORACOM Canal IoT向けデータ通信
 SORACOM Air for Cellular (2G, 3G, LTE, 5G) / LPWA (LoRaWAN, Sigfox, LTE-M) 専用線接続
 SORACOM Direct 仮想専用線
 SORACOM Door API Web API Sandbox コネクティビティ ネットワーク インタフェース SIM認証・証明
 SORACOM Endorse デバイス管理
 SORACOM Inventory 透過型トラフィック処理
 SORACOM Junction ダッシュボード作成/共有
 SORACOM Lagoon セキュアプロビジョニング
 SORACOM Krypton アクセス権限管理
 SORACOM Access Management アプリケーション デバイスLAN SORACOM Gate 開発者サポート
 Developer Support USB ドングル / セルラーモジュール / マイコンモジュール / ボタン 
 デバイス オンデマンドリモートアクセス
 SORACOM Napter クラウドファンクション
 SORACOM Funk エッジプロセッシング SORACOM Mosaic オンデマンドパケットキャプチャ
 SORACOM Peek インラインプロセッシング
 SORACOM Orbit 次世代VPG
  16. SORACOM Professional Services サービス活用支援 IoTシステム設計開発支援 プロジェクト推進支援 ソラコムサービスの効果的な活用及びシ ステムへの導入をご支援します アーキテクチャ設計やプロトタイピングを通じた システム設計開発をご支援します

    SORACOM Professional Services(以下PS)はソラコムサービス及びパートナーエ コシステムを最大限に活用し、エンタープライズでのIoT活用を技術面からご支援する サービスです。 技術的な課題やタスクの整理によりお客様のプ ロジェクト推進をバックアップ致します
  17. SPSパートナー数 (2023/3) デバイス パートナー テクノロジー パートナー ソリューション パートナー 申請パートナー 900社超(Total)

    認定済パートナー 156社(Total) インテグレーション パートナー SELECTEDパートナー 3社