在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

你了解清楚了嘛-TCP、HTTP、MQTT協議

IOTRouter ? 來源:IOTRouter ? 作者:IOTRouter ? 2024-07-11 11:34 ? 次閱讀

如下參考于成都縱橫智控-https://www.iotrouter.com/news/2009.html 或(蘇州穩聯)

物聯網(IoT)的快速發展離不開數據傳輸技術的進步。在眾多的數據傳輸協議中,TCP、HTTP、和MQTT各有其獨特的優勢和應用場景。本文將詳細解析這三種協議的特點、應用及其相互之間的區別,以幫助開發者在不同的物聯網應用中選擇最合適的傳輸協議。
依據OSI網絡分層模型,TCP屬于傳輸層協議,HTTP和MQTT屬于應用層協議。TCP是HTTP和MQTT的底層協議。

wKgaomaM8TaAQTxWAACIZqMj3-A546.png

TCP、HTTP、MQTT協議


TCP:傳輸控制協議
TCP是一種基于連接的可靠傳輸協議。這是互聯網協議套件的一部分,用于在網絡中的2個運用中間建立一個靠譜的數據傳輸通道。TCP增強了數據分割、重組、流量管理和擁塞控制等業務,以確保數據的穩定性和次序傳送。這是一項面對連接的協議,規定在傳輸數據以前建立一個連接。TCP適用文件傳送、電子郵箱和網頁瀏覽對傳輸數據可靠性要求高的運用。建立一個TCP連接需要三次握手,斷開一個TCP連接需要四次揮手。TCP協議可以對上層網絡提供接口,使上層網絡數據的傳輸建立在“無差別”的網絡之上。

1.三次握手:是TCP協議建立連接的過程,確保雙方都已準備好進行數據傳輸。以下是三次握手的步驟和示意圖:

步驟 描述 示意圖
1 客戶端發送SYN:客戶端向服務器發送一個SYN(同步序列編號)請求,以初始化連接。 wKgaomaM8teAHyxvAAASbNi7OaQ807.png
TCP:三次握手
2 服務器發送SYN-ACK:服務器收到SYN請求后,回復一個SYN-ACK(同步序列編號-確認)包,表示同意建立連接,并告知客戶端已收到其請求。
3 客戶端發送ACK:客戶端收到SYN-ACK后,再發送一個ACK(確認)包,表示確認連接已建立,雙方可以開始數據傳輸。

2.四次揮手:是TCP協議斷開連接的過程,確保雙方都已完成數據傳輸并同意斷開連接。以下是四次揮手的步驟及示意圖:

步驟 描述 示意圖
1 客戶端發送FIN:客戶端向服務器發送一個FIN(終止連接)請求,表示其已經完成數據發送,準備斷開連接。 wKgaomaM8zqAb7mWAAANu8n_nFs314.png
TCP:四次揮手
2 服務器發送ACK:服務器收到FIN請求后,回復一個ACK(確認)包,表示已收到客戶端的斷開請求,但可能還有未完成的數據需要發送。
3 服務器發送FIN:服務器完成數據發送后,向客戶端發送一個FIN請求,表示其也準備斷開連接。
4 客戶端發送ACK:客戶端收到服務器的FIN請求后,回復一個ACK包,表示確認斷開連接,連接正式斷開。

HTTP:超文本傳輸協議
HTTP用于在Web上傳送超文本(如HTML)和其他資源應用層協議。TCP的穩定性和連接性是根據TCP。HTTP挑選客戶端-服務器模型,客戶端向服務器推送HTTP規定,服務器回到HTTP回應,以傳送需要資源。HTTP是一種無狀態協議,每個請求和響應都是獨立的,服務器不會儲存客戶端狀態信息。

HTTP 請求/響應流程示意圖 HTTP 請求示例
wKgaomaM9AmAcwh_AAAUNdIUEkY951.png
HTTP 請求/響應流程示意圖
wKgaomaM9BaABB0GAAAwtc48aeg263.png
HTTP 請求示例

HTTP連接是一種“短連接”,由于HTTP在每個規定結束后都會主動釋放連接。為保持客戶端流程的在線狀態,務必再次連接到服務器。一般來說,即便不用獲得所有數據,客戶端還會每隔一段時間向服務器推送一次“維護連接”規定。服務器接到要求之后回復客戶端,表明客戶端是“線上”的。假如服務器長期接受不了客戶端的需求,但認為客戶端“撤出”,假如客戶端長期接受不了云服務器的回應,卻認為網絡已經斷開。

MQTT:遠程傳輸消息隊列
MQTT是一種基于公示/定閱的MQTT(publish/subscribe)1999年IBM發布的TCP/IP協議中創立了該模式的“輕”通訊協議。MQTT最大的優點是可以為連接遠程設備提供實時可靠的信息服務,編號少,帶寬有限。它作為一種低成本、低帶寬的即時通信協議,廣泛用于物聯網、小型機器和移動應用。

wKgZomaM9wSAI_OXAAA8Wmk2LRA867.png

以下是MQTT消息傳輸過程的示意圖:

1.客戶端連接到Broker:

CONNECT 請求:客戶端向MQTT Broker發起連接請求。
CONNACK 響應:Broker確認連接請求。

2.客戶端發布消息到主題:

PUBLISH 請求:客戶端將消息發布到特定主題。
Broker 將消息轉發給訂閱該主題的客戶端。

3.Broker 轉發消息:

PUBLISH 請求:Broker 將消息轉發給所有訂閱了該主題的客戶端。

4.客戶端確認消息接收:

PUBACK 響應:客戶端確認接收到消息,適用于QoS 1等級。

5.客戶端斷開連接:

DISCONNECT 請求:客戶端請求斷開與Broker的連接。
DISCONNECT 響應:Broker 確認斷開連接。

TCP、HTTP與MQTT的對比表格

特性 TCP HTTP MQTT
協議類型 傳輸層協議 應用層協議 應用層協議
連接建立 面向連接(三次握手) 無狀態請求-響應 面向連接(連接保持)
數據傳輸模式 可靠傳輸,順序保證 請求-響應 發布-訂閱
可靠性 取決于應用層實現 支持QoS等級確保可靠性
數據頭開銷 較大 較大 較小
傳輸效率 較低 中等
適用場景 可靠傳輸需求的場景 Web瀏覽、API通信、RESTful服務 物聯網、實時數據傳輸
典型應用 文件傳輸、電子郵件、遠程登錄 網頁瀏覽、Web API 物聯網設備通信、消息傳輸

總結

TCP、HTTP 和 MQTT 是三種不同層級和用途的協議是進行設備互聯和傳送數據的重要組成部分;TCP適用高可靠性傳送,HTTP適用Web服務與API打開,MQTT是物聯網設備通訊的不二之選。了解它們的特點和適用場景有助于在設計和實現網絡通信時做出最佳選擇。

審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • HTTP
    +關注

    關注

    0

    文章

    522

    瀏覽量

    32478
  • TCP
    TCP
    +關注

    關注

    8

    文章

    1397

    瀏覽量

    80419
  • MQTT
    +關注

    關注

    5

    文章

    670

    瀏覽量

    23491
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    MQTT為何成為物聯網協議

    的優勢,以下為詳細介紹: 輕量級特性,適配資源受限設備 協議頭開銷小 :MQTT協議頭非常簡潔,相比其他協議,它在數據傳輸時添加的額外信息
    的頭像 發表于 05-20 09:54 ?146次閱讀

    TCP協議的常見應用場景

    在現代通信網絡中,TCP協議因其可靠性和穩定性而被廣泛應用于各種場景。 1. 網頁瀏覽 1.1 HTTP和HTTPS HTTP(超文本傳輸協議
    的頭像 發表于 01-22 09:55 ?2151次閱讀

    基于MQTT協議的車云通信設計

    Queuing Telemetry Transport)是由OASIS發布的應用層協議,采用訂閱/發布的通信模式,下層基于TCP/IP進行傳輸。該標準在工業物聯網、車聯網等領域有廣泛應用。 MQTT主要有以下
    的頭像 發表于 01-08 10:24 ?900次閱讀
    基于<b class='flag-5'>MQTT</b><b class='flag-5'>協議</b>的車云通信設計

    如何使用 cURL 測試 HTTP 協議

    cURL是一個強大的命令行工具,用于傳輸數據,支持多種協議,包括HTTP、HTTPS、FTP等。使用cURL測試HTTP協議可以幫助你理解HTTP
    的頭像 發表于 12-30 09:26 ?1001次閱讀

    HTTP 協議的工作原理

    HTTP協議的工作原理 1. HTTP協議概述 HTTP是一個應用層協議,它定義了客戶端與服務器
    的頭像 發表于 12-30 09:21 ?888次閱讀

    HTTP 協議的基本概念

    瀏覽器)和服務器之間請求和響應的格式。 1. HTTP協議概述 HTTP協議基于TCP/IP協議
    的頭像 發表于 12-29 15:12 ?1103次閱讀

    MQTT.fx 連接Onenet 多協議接入平臺 MQTT協議(舊版)詳解

    TCP dtu.heclouds.com 183.230.40.40 1811 打開Onenet平臺,多協議接入 選擇MQTT協議(舊版),點擊添加產品,輸入
    的頭像 發表于 09-30 15:20 ?1723次閱讀
    <b class='flag-5'>MQTT</b>.fx 連接Onenet 多<b class='flag-5'>協議</b>接入平臺 <b class='flag-5'>MQTT</b><b class='flag-5'>協議</b>(舊版)詳解

    物聯網行業中MQTT通信協議詳解以及使用

    ,該協議構建于TCP/IP協議上,由IBM在1999年發布。 MQTT最大優點在于, 用極少的代碼和有限的帶寬,為連接遠程設備提供實時可靠的消息服務 。 作為一種低開銷、低帶寬占用的即
    的頭像 發表于 09-20 17:08 ?2414次閱讀
    物聯網行業中<b class='flag-5'>MQTT</b>通信<b class='flag-5'>協議</b>詳解以及使用

    功能強大的網絡通訊工具,支持各類TCP、UDP、HTTP的通訊協議

    功能強大的網絡通訊工具,支持各類TCP、UDP、HTTP的通訊協議,簡單方便,包含歷史記憶功能,體積小,服務器調試最合適
    發表于 09-05 11:51 ?0次下載

    一文了解TCP/IP協議

    TCP/IP協議是現代計算機網絡通信的基礎,是互聯網及局域網廣泛使用的一套協議TCP/IP協議集包括許多
    的頭像 發表于 08-07 15:38 ?3218次閱讀
    一文<b class='flag-5'>了解</b><b class='flag-5'>TCP</b>/IP<b class='flag-5'>協議</b>

    鋇錸技術Modbus轉MQTT網關:橋接Modbus協議MQTT協議

    提供了一鍵對接亞馬遜云平臺的解決方案。 BL101網關是鋇錸技術研發的一款高性能工業物聯網設備,通過橋接Modbus協議MQTT通信協議,實現了工業設備與云端平臺之間的高效互聯。支持Modbus RTU、Modbus
    的頭像 發表于 07-30 16:28 ?664次閱讀
    鋇錸技術Modbus轉<b class='flag-5'>MQTT</b>網關:橋接Modbus<b class='flag-5'>協議</b>與<b class='flag-5'>MQTT</b><b class='flag-5'>協議</b>

    基于MQTT協議云平臺的Modbus轉MQTT網關

    鋇錸Modbus轉MQTT網關BL100是一款高性能、高性價比的物聯網網關,它支持將Modbus協議(包括Modbus RTU和Modbus TCP)的數據轉換為MQTT
    的頭像 發表于 07-29 17:59 ?1062次閱讀
    基于<b class='flag-5'>MQTT</b><b class='flag-5'>協議</b>云平臺的Modbus轉<b class='flag-5'>MQTT</b>網關

    PLC協議、Modbus RTU TCP 、DL T645、IEC101-104、BACnet 轉Modbus TCP RTU、OPC UA、MQTT、BACnet IP協議網關

    /TP等多種協議轉換為Modbus TCP、OPC UA、MQTT、BACnet IP、華為云IoT、亞馬遜云IoT、阿里云IoT、ThingsBoard、Sparkplug B、鋇錸云等協議
    的頭像 發表于 07-24 16:04 ?1008次閱讀
    PLC<b class='flag-5'>協議</b>、Modbus RTU  <b class='flag-5'>TCP</b> 、DL T645、IEC101-104、BACnet 轉Modbus <b class='flag-5'>TCP</b> RTU、OPC UA、<b class='flag-5'>MQTT</b>、BACnet IP<b class='flag-5'>協議</b>網關

    Modbus RTU、Modbus TCPMQTT網關實現Modbus設備與云平臺的無縫通信

    鋇錸Modbus轉MQTT網關,簡而言之,就是通過將Modbus協議(包括Modbus RTU和Modbus TCP)的數據轉換為MQTT協議
    的頭像 發表于 07-23 16:58 ?4259次閱讀
    Modbus RTU、Modbus <b class='flag-5'>TCP</b>轉<b class='flag-5'>MQTT</b>網關實現Modbus設備與云平臺的無縫通信

    為什么使用MQTT而不是HTTP

    為什么使用MQTT而不是HTTP? 在探討為何在某些場景下選擇MQTT(Message Queuing Telemetry Transport)而非HTTP(Hypertext Tra
    的頭像 發表于 06-19 14:26 ?731次閱讀
    為什么使用<b class='flag-5'>MQTT</b>而不是<b class='flag-5'>HTTP</b>?
    主站蜘蛛池模板: 女人被免费网站视频在线 | 啪啪网站免费看 | 色妞视频资源在线观看 | 天堂网www在线资源网 | 很黄的网站在线观看 | 狠狠五月天 | 久久久久久免费播放一级毛片 | 日本人zzzwww | 手机免费黄色网址 | 日本三级网站在线线观看 | 久久精品韩国三级 | 欧美zoozzooz在线观看 | 免费福利影院 | 亚洲精品成人久久久影院 | 18美女扒开尿口无遮挡 | 521色香蕉网在线观看免费 | 亚洲综合图片人成综合网 | 性日韩 | 国产理论在线观看 | 男人搡女人视频免费看 | 久久精品国产四虎 | 国产一二三区在线观看 | 动漫精品成人免费网站 | 国产好深好硬好爽我还要视频 | 日本在线一本 | 天天做天天爱夜夜爽毛片毛片 | 国产一级做a爰片久久毛片男 | 91色在线播放 | 天天操天天射天天爽 | 色综合综合色综合色综合 | 国内精品久久久久久影院老狼 | 狠狠色噜噜狠狠狠狠97老肥女 | 久久水蜜桃网 | 亚洲成人高清在线观看 | 手机在线你懂的 | 久久视频免费 | 四虎国产精品永久地址49 | 中文字幕在线第一页 | 视频在线观看免费视频 | 天堂在线观看中文字幕 | 国产成人精品男人的天堂538 |