Heim  >  Artikel  >  Was ist der Unterschied zwischen dem MQTT-Protokoll und dem TCP-Protokoll?

Was ist der Unterschied zwischen dem MQTT-Protokoll und dem TCP-Protokoll?

青灯夜游
青灯夜游Original
2021-05-08 11:27:5321915Durchsuche

Unterschiede: 1. MQTT wurde 1999 in den Anfängen des Internets geboren und das TCP-Protokoll wurde 1974 während des Kalten Krieges geboren. 2. TCP ist das Transportschicht-Kommunikationsprotokoll der vierten Schicht von OSI, und MQTT ist ein auf TCP basierendes Anwendungsschichtprotokoll. 3. Die Kernidee von TCP ist die Paketvermittlung, und die Kernidee von MQTT ist Einfachheit und Anpassungsfähigkeit an die Umgebung des Internets der Dinge.

Was ist der Unterschied zwischen dem MQTT-Protokoll und dem TCP-Protokoll?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, Dell G3-Computer.

Der Unterschied zwischen MQTT und TCP

Geburtszeit

Das TCP-Protokoll wurde 1974 während des Kalten Krieges geboren.

MQTT wurde 1999 in den Anfängen des Internets geboren und das TCP-Protokoll wurde 25 Jahre früher als das MQTT-Protokoll geboren.

Ashton schlug das IoT-Konzept 1999 vor, das MQTT-Protokoll wurde also zur richtigen Zeit geboren. Damals schlug Kevin Ashton von MIT Auto-ID Labs 1999 erstmals das Konzept des IoT vor, um RFID-Tags in der Lieferkette von P&G mit dem Internet zu verbinden.

Protokollstandort

TCP ist das Transportschichtprotokoll der vierten Schicht von OSI.

MQTT ist ein siebenschichtiges Anwendungsschichtprotokoll, das auf TCP basiert.

Was ist der Unterschied zwischen dem MQTT-Protokoll und dem TCP-Protokoll?

Protokollpositionierung

TCP-Design berücksichtigt ein verbindungsorientiertes, zuverlässiges, Bytestrom-basiertes Transportschicht-Kommunikationsprotokoll.

MQTT ist ein Protokoll der Anwendungsschicht für eine relativ zuverlässige Datenübertragung in Netzwerken mit geringer Bandbreite, hoher Latenz und unzuverlässigen Netzwerken.

Designidee

Die Kernidee von TCP ist die Paketvermittlung.

Die Kernidee von MQTT ist Einfachheit und Anpassbarkeit an die IoT-Umgebung.

Übertragungseinheit

Die Übertragungseinheit von TCP ist ein Paket. Wenn die Anwendungsschicht einen durch 8-Bit-Bytes dargestellten Datenstrom zur Übertragung zwischen Netzwerken an die TCP-Schicht sendet, teilt TCP den Datenstrom in Pakete entsprechender Länge auf Die maximale Übertragungssegmentgröße (MSS) wird normalerweise durch die maximale Übertragungseinheit (MTU) der Datenverbindungsschicht des Netzwerks begrenzt, mit dem der Computer verbunden ist.

Die Übertragungseinheit von MQTT ist eine Nachricht. Die Obergrenze der Bytes jeder Nachricht wird auf dem MQTT-Broker-Proxyserver festgelegt. Die Obergrenze der Nachrichtengröße kann 1 MB überschreiten. Auf diese Weise können Sie mit einer Nachricht Tausende gesammelter Daten oder relativ große Geräteschattendateien versenden.

Technische Herausforderungen

Das Problem, das TCP lösen muss, besteht darin, mit Netzwerküberlastung, Paketverlust, Störung, doppelten Paketen und anderen Problemen in heterogenen Netzwerkumgebungen während der Übertragung von IP-Paketen umzugehen.

Das Problem, das MQTT löst, ist eine relativ zuverlässige Datenübertragung in Umgebungen mit geringer Bandbreite, hoher Latenz, unzuverlässigen Netzwerken und begrenzten Ressourcen.

Quality of Service

TCP ist ein zuverlässiger Streaming-Dienst. Durch den ACK-Bestätigungs- und Neuübertragungsmechanismus kann sichergestellt werden, dass alle gesendeten Bytes beim Empfang genau gleich sind und auch die Bytereihenfolge korrekt ist.

MQTT bietet drei optionale QoS-Serviceebenen für die Veröffentlichung von Nachrichten. Der MQTT-Client und der MQTT-Proxyserver gewährleisten die Zuverlässigkeit der Nachrichtenübertragung über den Sitzungsmechanismus. Entwickler können je nach Geschäftsanforderungen eine davon auswählen.

Anwendungsfälle

TCP wird in vielen Internetanwendungen wie WWW, E-Mail, FTP, SSH, P2P und Streaming-Medien verwendet. MQTT basiert ebenfalls auf TCP.

MQTT kann für IoT-Datenübertragung, IM-Chat-Software usw. verwendet werden.

Weitere Informationen zu diesem Thema finden Sie in der Spalte „FAQ“!

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen dem MQTT-Protokoll und dem TCP-Protokoll?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn