aptpod Tech Blog

株式会社アプトポッドのテクノロジーブログです

【連載MQTT5解説: 第4回】使用可能な認証方式

はじめに

VPoPの岩田です。本記事は、先日より開始しているMQTT5連載の第4回目になります。

第4回目となる本記事では、MQTTで用いられる認証方式についてご紹介します。 MQTT3.1.1で定義されていた方式について触れた後、MQTT5で追加された方式について解説します。

すでに公開されている連載記事は、末尾のリンクからご覧いただけます。

  • はじめに
  • 当社プロダクトの簡単なご紹介
  • MQTT 3.1.1 から継承している認証方式
    • ユーザー名/パスワードによるBASIC認証
      • 可変ヘッダー内の有効化フラグ
      • ペイロード内の実際のデータ
      • MQTT5で加えられた変更
    • MQTTの下回りでの認証(TLS、WebSocket等の利用)
  • MQTT 5で追加された新しい認証方式
    • CONNECTパケットへの変更点
    • AUTHパケットによる追加情報のやり取り
    • 再認証フローの追加
  • あとがき: 追加された仕様の有効性は?
  • おわりに
  • 連載記事のご紹介
続きを読む

【連載MQTT5解説: 第3回】MQTTのコントロールパケット

はじめに

VPoPの岩田です。本記事は、先日より開始しているMQTT5連載の第3回目になります。 今回より、そろそろ本格的な解説に移っていきます。

第3回目となる本記事では、まずMQTT5のプロトコル仕様をざっくりと掴むために、コントロールパケットの構造を解説していきます。 MQTTのコントロールパケットの基本的な構造を知っておくことで、MQTT5で追加されたフィールドがどこに追加されたのかが把握しやすくなります。

すでに公開されている連載記事は、末尾のリンクからご覧いただけます。

  • はじめに
  • 当社プロダクトの簡単なご紹介
  • MQTTコントロールパケットの構造
  • Fixed Header | 固定ヘッダー
    • MQTT Control Packet Type
    • Flags
    • Remaining Length
  • Variable Header | 可変ヘッダー
    • Packet Identifier
    • Properties
    • User Properties
    • Reason Code
  • Payload | ペイロード
  • おわりに
  • 連載記事のご紹介
続きを読む

【連載MQTT5解説: 第2回】MQTT 5.0での変更点の概要

はじめに

VPoPの岩田です。本記事は、先日開始したMQTT5連載の第2回目になります。

すでに公開されている連載記事は、以下のリンクからご覧いただけます。

tech.aptpod.co.jp


第2回目の本記事では、MQTT Version 5.0での変更点のサマリーをご紹介します。 MQTT Version 5.0でのおもな変更点は、OASIS標準仕様書 の末尾Appendix Cにまとめられていますので、こちらをひとつずつ日本語に翻訳して紹介したいと思います。

docs.oasis-open.org

なお翻訳については、なるべく文意がわかりやすくなるよう直訳ではなく意訳していますので、誤訳等心配な場合は原文もあわせてご確認ください。

それぞれの項目は、次回以降の連載で詳しく解説していきます。

続きを読む

【連載MQTT5解説: 第1回】MQTTの概要と背景

はじめに

アプトポッドVPoPの岩田です。

弊社アプトポッドでは、MQTTのようなIoTデータ通信向けの独自ミドルウェア「intdash」を開発・提供しています。

www.aptpod.co.jp

独自のミドルウェアを設計・開発する過程で、近年リリースされたMQTT5や、その前身であるMQTT 3.1.1についての仕様調査・研究を行ってきました。 この調査・研究の過程でMQTTに関する知見も蓄積してきましたので、一度情報を整理して、連載という形で公開することにしました。

本連載では、MQTT5リリースに伴って変更された仕様を中心に、MQTT3.1.1仕様も含めたMQTT全体について解説していきたいと思っています。 また、その過程でMQTTとintdsahの違いについても触れながら、当社の製品についても皆様に知っていただけるような構成を考えております。

連載初回となる本記事では、MQTT登場の背景やなぜ利用されているのか、といったMQTTの概要と、MQTT5のリリースに至る過程についてざっくりとまとめています。 今後も複数回にわたり、MQTT5に関する情報をお届けする予定ですので、次回以降にもご期待ください。

連載の次回以降の記事は、以下のリンクからご覧いただけます。

tech.aptpod.co.jp

続きを読む

【連載 ROS Tips】ROSのDockerコンテナからNVIDIA GPUを利用するには

アプトポッド 組み込みエンジニアの久保田です。

連載の前回 では、ROSの開発においてDockerをどのように活用するかを紹介しました。その中で触れた通り、Dockerコンテナを使ってホストのハードウェアリソースにアクセスすることが可能です。例えば、当社で販売している車載向けエッジコンピュータ EDGEPLANT T1 はNVIDIA Jetson TX2を搭載しています。NVIDIA Jetsonシリーズは、GPUを搭載しており、AIやディープラーニングのタスクに適しています。このJetsonのGPUをDockerコンテナ内で最大限に活用するために、NVIDIAが提供する公式Dockerイメージの使用が推奨されています。

ROS開発において、この公式Dockerイメージは導入しやすい反面、ROS自体がソースコードからビルドされており、ROS公式に提供されているdebianパッケージを利用することができません。この制限を解消するためには、NVIDIA GPU資源を利用でき、かつROS公式に提供されているdebianパッケージの利用可能なDockerイメージの作成が必要となります。

連載ROS Tips第3回目となる今回は、ROSのDockerコンテナからのNVIDIA GPU利用方法を紹介します。

続きを読む