Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Az IoT Hub az alábbi protokollok használatát teszi lehetővé az eszközoldali kommunikációhoz:
- MQTT
- MQTT WebSocketen keresztül
- Advanced Message Queuing Protocol (AMQP)
- AMQP WebSocketen keresztül
- HTTPS
Feljegyzés
Az IoT Hub korlátozott funkciótámogatást biztosít az MQTT-hez. Ha a megoldáshoz MQTT v3.1.1 vagy v5 támogatás szükséges, tekintse meg az Azure Event Grid MQTT-közvetítő funkciójának áttekintését. További információért lásd az MQTT-támogatás összehasonlítása az IoT Hub és Event Grid között részt az MQTT protokollt használó IoT-hubbal történő kommunikáció című részben.
További információ arról, hogy ezek a protokollok hogyan támogatják az IoT Hub adott funkcióit, tekintse meg az eszközről a felhőbe irányuló kommunikációs útmutatót és a felhőalapú kommunikációval kapcsolatos útmutatást.
Az alábbi táblázat magas szintű javaslatokat tartalmaz a választott protokollhoz:
| Protokoll | Mikor érdemes ezt a protokollt választania? |
|---|---|
| MQTT MQTT WebSocketen keresztül |
Minden olyan eszközön használható, amelyhez nincs szükség több eszközhöz való csatlakozásra, mindegyikhez saját eszköznkénti hitelesítő adatokkal, ugyanazon a TLS-kapcsolaton keresztül. |
| AMQP AMQP WebSocketen keresztül |
A helyszíni és a felhőbeli átjárók használatával kihasználhatja az eszközök közötti kapcsolat multiplexálásának előnyeit. |
| HTTPS | Más protokollokat nem támogató eszközökhöz használható. |
Az eszközoldali kommunikáció protokolljának kiválasztásakor vegye figyelembe a következő szempontokat:
Felhő–eszköz minta. HTTPS nem rendelkezik hatékony módszerrel a kiszolgáló-leküldés megvalósításához. Így amikor HTTPS-t használ, az eszközök lekérdezhetik az IoT Hubot a felhőből érkező eszközre irányuló üzenetekért. Ez a megközelítés nem hatékony mind az eszköz, mind az IoT Hub esetében. Az aktuális HTTPS-irányelvek szerint minden eszköznek 25 percenként vagy annál tovább kell lekérdeznie az üzeneteket. Ha több HTTPS-kérést küld el, akkor az IoT Hub korlátozza a kérések számát. Az MQTT és az AMQP támogatja a kiszolgáló általi üzenettovábbítást felhő-eszköz üzenetek fogadására. Lehetővé teszik az üzenetek azonnali leküldését az IoT Hubról az eszközre. Ha a kézbesítés késése aggodalomra ad okot, az MQTT vagy az AMQP a legjobban használható protokoll. Ritkán csatlakoztatott eszközök esetén a HTTPS is működik.
Mezőátjárók. Az MQTT és a HTTPS csak egyetlen eszközidentitást (eszközazonosítót és hitelesítő adatokat) támogat TLS-kapcsolatonként. Ezért ezek a protokollok nem támogatottak olyan mezőátjáró-forgatókönyvekben, amelyek több eszközidentitást használó multiplexálási üzeneteket igényelnek egyetlen kapcsolaton vagy az IoT Hub felé irányuló felsőbb rétegbeli kapcsolatok készletén keresztül. Az ilyen átjárók olyan protokollt használhatnak, amely kapcsolatonként több eszközidentitást támogat, például az AMQP-t a felsőbb rétegbeli forgalomhoz.
Alacsony erőforrású eszközök. Az MQTT- és HTTPS-kódtárak kisebb erőforrásigényűek, mint az AMQP-kódtárak. Ilyen esetben, ha az eszköz korlátozott erőforrásokat biztosít (például kevesebb, mint 1 MB RAM), ezek a protokollok lehetnek az egyetlen elérhető protokoll-implementáció.
Hálózati bejárás. A standard AMQP protokoll az 5671-es portot használja, az MQTT pedig a 8883-at figyeli. Ezeknek a portoknak a használata problémákat okozhat a nem HTTPS protokollok által bezárt hálózatokban. Ebben a forgatókönyvben az MQTT használata WebSocketeken, AMQP WebSocketeken vagy HTTPS-en keresztül javasolt.
Hasznos adat mérete. Az MQTT és az AMQP bináris protokollok, amelyek a HTTPS-nél kompaktabb hasznos adatokat eredményeznek.
Figyelmeztetés
Amikor az eszközök HTTPS protokollt használnak, minden eszköznek 25 percenként legfeljebb egyszer kell lekérdeznie a felhőből az eszközre irányuló üzeneteket. A fejlesztés során minden készülék gyakrabban végezhet adatkérdezést, ha kívánatos.
Portszámok
Az eszközök különböző protokollok használatával kommunikálhatnak az Azure-beli IoT Hubbal. Általában a megoldás konkrét követelményei határozzák meg a protokoll kiválasztását. Az alábbi táblázat felsorolja azokat a kimenő portokat, amelyeknek nyitva kell lenniük ahhoz, hogy egy eszköz egy adott protokollt használhasson:
| Protokoll | Kikötő |
|---|---|
| MQTT | 8883 |
| MQTT WebSocketen keresztül | 443 |
| AMQP | 5671 |
| AMQP WebSocketen keresztül | 443 |
| HTTPS | 443 |
Az IoT Hub IP-címe értesítés nélkül változhat. Az IoT Hub IP-címváltozásainak az IoT Hub-megoldásra és -eszközökre gyakorolt hatásainak mérsékléséhez tekintse meg az IoT Hub IP-címeinek ajánlott eljárásait ismertető szakaszt.
Következő lépések
Az IoT Hub MQTT protokoll implementálásával kapcsolatos további információkért lásd: Kommunikáció IoT Hubmal az MQTT protokoll használatával.