YAML

IoTプロトコル - YAML

IoTプロトコルは、モノのインターネット(Internet of Things)環境において、デバイス間のデータ通信を実現するための通信規約です。MQTT、CoAP、AMQPなどの軽量メッセージングプロトコルを中心に、XMPP、DDS、HTTP、LwM2Mなど、さまざまな用途や要件に応じたプロトコルが存在します。これらのプロトコルは、帯域幅の制約、消費電力、遅延時間、信頼性など、IoTデバイスの特性に合わせて設計されています。スマートホーム、産業自動化、スマートシティ、ヘルスケアなど、幅広い分野で活用されています。

IoT プロトコル MQTT CoAP AMQP 通信規約 M2M スマートデバイス
- code: "01"
  slug: "mqtt"
  name: "MQTT"
  description: "軽量なパブリッシュ/サブスクライブ型メッセージングプロトコル"
  fullName: "Message Queuing Telemetry Transport"
  transportProtocol: "TCP"
  architecture: "Broker-based (Pub/Sub)"
  headerSize: "2 bytes"
  qosLevels: 3
  powerConsumption: "moderate"
  bestFor:
    - "unreliable networks"
    - "remote monitoring"
    - "smart homes"
    - "industrial automation"
- code: "02"
  slug: "coap"
  name: "CoAP"
  description: "制約のあるデバイス向けの軽量Web転送プロトコル"
  fullName: "Constrained Application Protocol"
  transportProtocol: "UDP"
  architecture: "Client-Server (RESTful)"
  headerSize: "4 bytes"
  qosLevels: 2
  powerConsumption: "low"
  bestFor:
    - "battery-powered devices"
    - "constrained networks"
    - "smart agriculture"
    - "LPWAN"
- code: "03"
  slug: "amqp"
  name: "AMQP"
  description: "エンタープライズ向けの高度なメッセージキューイングプロトコル"
  fullName: "Advanced Message Queuing Protocol"
  transportProtocol: "TCP"
  architecture: "Broker-based (Multiple patterns)"
  headerSize: "variable (larger)"
  qosLevels: 3
  powerConsumption: "high"
  bestFor:
    - "enterprise integration"
    - "financial systems"
    - "healthcare"
    - "mission-critical applications"
- code: "04"
  slug: "xmpp"
  name: "XMPP"
  description: "XMLベースのリアルタイム通信プロトコル"
  fullName: "Extensible Messaging and Presence Protocol"
  transportProtocol: "TCP"
  architecture: "Distributed (Client-Server)"
  headerSize: "variable (XML overhead)"
  qosLevels: 1
  powerConsumption: "moderate"
  bestFor:
    - "instant messaging"
    - "presence detection"
    - "chat applications"
    - "device management"
- code: "05"
  slug: "dds"
  name: "DDS"
  description: "リアルタイムデータ配信のためのミドルウェアプロトコル"
  fullName: "Data Distribution Service"
  transportProtocol: "UDP/TCP"
  architecture: "Brokerless (Pub/Sub)"
  headerSize: "variable"
  qosLevels: 22
  powerConsumption: "high"
  bestFor:
    - "industrial automation"
    - "robotics"
    - "defense systems"
    - "automotive"
    - "real-time systems"
- code: "06"
  slug: "http-https"
  name: "HTTP/HTTPS"
  description: "Web通信のための標準プロトコル"
  fullName: "HyperText Transfer Protocol / HTTP Secure"
  transportProtocol: "TCP"
  architecture: "Client-Server (Request/Response)"
  headerSize: "800+ bytes"
  qosLevels: 1
  powerConsumption: "high"
  bestFor:
    - "web applications"
    - "device management portals"
    - "data visualization"
    - "RESTful APIs"
- code: "07"
  slug: "lwm2m"
  name: "LwM2M"
  description: "軽量M2Mデバイス管理プロトコル"
  fullName: "Lightweight M2M"
  transportProtocol: "UDP (over CoAP)"
  architecture: "Client-Server"
  headerSize: "4+ bytes"
  qosLevels: 2
  powerConsumption: "low"
  bestFor:
    - "device management"
    - "firmware updates"
    - "smart metering"
    - "asset tracking"
- code: "08"
  slug: "mqtt-sn"
  name: "MQTT-SN"
  description: "センサーネットワーク向けのMQTTプロトコル"
  fullName: "MQTT for Sensor Networks"
  transportProtocol: "UDP"
  architecture: "Broker-based (Pub/Sub)"
  headerSize: "2-5 bytes"
  qosLevels: 3
  powerConsumption: "low"
  bestFor:
    - "sensor networks"
    - "non-IP networks"
    - "Zigbee"
    - "LoRaWAN"
    - "Bluetooth"
- code: "09"
  slug: "opc-ua"
  name: "OPC UA"
  description: "産業自動化向けのM2M通信プロトコル"
  fullName: "OPC Unified Architecture"
  transportProtocol: "TCP"
  architecture: "Client-Server"
  headerSize: "variable"
  qosLevels: 2
  powerConsumption: "moderate"
  bestFor:
    - "industrial automation"
    - "process control"
    - "manufacturing"
    - "Industry 4.0"
- code: "10"
  slug: "websocket"
  name: "WebSocket"
  description: "全二重通信を実現するWebプロトコル"
  fullName: "WebSocket Protocol"
  transportProtocol: "TCP"
  architecture: "Client-Server (Full-duplex)"
  headerSize: "2-14 bytes"
  qosLevels: 1
  powerConsumption: "moderate"
  bestFor:
    - "real-time streaming"
    - "chat applications"
    - "live dashboards"
    - "bidirectional communication"