JSON

IoTプロトコル - JSON

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"
    ]
  }
]