91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

你了解清楚了嘛-TCP、HTTP、MQTT協(xié)議

IOTRouter ? 來(lái)源:IOTRouter ? 作者:IOTRouter ? 2024-07-11 11:34 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

物聯(lián)網(wǎng)(IoT)的快速發(fā)展離不開(kāi)數(shù)據(jù)傳輸技術(shù)的進(jìn)步。在眾多的數(shù)據(jù)傳輸協(xié)議中,TCP、HTTP、和MQTT各有其獨(dú)特的優(yōu)勢(shì)和應(yīng)用場(chǎng)景。本文將詳細(xì)解析這三種協(xié)議的特點(diǎn)、應(yīng)用及其相互之間的區(qū)別,以幫助開(kāi)發(fā)者在不同的物聯(lián)網(wǎng)應(yīng)用中選擇最合適的傳輸協(xié)議。
依據(jù)OSI網(wǎng)絡(luò)分層模型,TCP屬于傳輸層協(xié)議,HTTP和MQTT屬于應(yīng)用層協(xié)議。TCP是HTTP和MQTT的底層協(xié)議。

wKgaomaM8TaAQTxWAACIZqMj3-A546.png

TCP、HTTP、MQTT協(xié)議


TCP:傳輸控制協(xié)議
TCP是一種基于連接的可靠傳輸協(xié)議。這是互聯(lián)網(wǎng)協(xié)議套件的一部分,用于在網(wǎng)絡(luò)中的2個(gè)運(yùn)用中間建立一個(gè)靠譜的數(shù)據(jù)傳輸通道。TCP增強(qiáng)了數(shù)據(jù)分割、重組、流量管理和擁塞控制等業(yè)務(wù),以確保數(shù)據(jù)的穩(wěn)定性和次序傳送。這是一項(xiàng)面對(duì)連接的協(xié)議,規(guī)定在傳輸數(shù)據(jù)以前建立一個(gè)連接。TCP適用文件傳送、電子郵箱和網(wǎng)頁(yè)瀏覽對(duì)傳輸數(shù)據(jù)可靠性要求高的運(yùn)用。建立一個(gè)TCP連接需要三次握手,斷開(kāi)一個(gè)TCP連接需要四次揮手。TCP協(xié)議可以對(duì)上層網(wǎng)絡(luò)提供接口,使上層網(wǎng)絡(luò)數(shù)據(jù)的傳輸建立在“無(wú)差別”的網(wǎng)絡(luò)之上。

1.三次握手:是TCP協(xié)議建立連接的過(guò)程,確保雙方都已準(zhǔn)備好進(jìn)行數(shù)據(jù)傳輸。以下是三次握手的步驟和示意圖:

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

2.四次揮手:是TCP協(xié)議斷開(kāi)連接的過(guò)程,確保雙方都已完成數(shù)據(jù)傳輸并同意斷開(kāi)連接。以下是四次揮手的步驟及示意圖:

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

HTTP:超文本傳輸協(xié)議
HTTP用于在Web上傳送超文本(如HTML)和其他資源應(yīng)用層協(xié)議。TCP的穩(wěn)定性和連接性是根據(jù)TCP。HTTP挑選客戶端-服務(wù)器模型,客戶端向服務(wù)器推送HTTP規(guī)定,服務(wù)器回到HTTP回應(yīng),以傳送需要資源。HTTP是一種無(wú)狀態(tài)協(xié)議,每個(gè)請(qǐng)求和響應(yīng)都是獨(dú)立的,服務(wù)器不會(huì)儲(chǔ)存客戶端狀態(tài)信息。

HTTP 請(qǐng)求/響應(yīng)流程示意圖 HTTP 請(qǐng)求示例
wKgaomaM9AmAcwh_AAAUNdIUEkY951.png
HTTP 請(qǐng)求/響應(yīng)流程示意圖
wKgaomaM9BaABB0GAAAwtc48aeg263.png
HTTP 請(qǐng)求示例

HTTP連接是一種“短連接”,由于HTTP在每個(gè)規(guī)定結(jié)束后都會(huì)主動(dòng)釋放連接。為保持客戶端流程的在線狀態(tài),務(wù)必再次連接到服務(wù)器。一般來(lái)說(shuō),即便不用獲得所有數(shù)據(jù),客戶端還會(huì)每隔一段時(shí)間向服務(wù)器推送一次“維護(hù)連接”規(guī)定。服務(wù)器接到要求之后回復(fù)客戶端,表明客戶端是“線上”的。假如服務(wù)器長(zhǎng)期接受不了客戶端的需求,但認(rèn)為客戶端“撤出”,假如客戶端長(zhǎng)期接受不了云服務(wù)器的回應(yīng),卻認(rèn)為網(wǎng)絡(luò)已經(jīng)斷開(kāi)。

MQTT:遠(yuǎn)程傳輸消息隊(duì)列
MQTT是一種基于公示/定閱的MQTT(publish/subscribe)1999年IBM發(fā)布的TCP/IP協(xié)議中創(chuàng)立了該模式的“輕”通訊協(xié)議。MQTT最大的優(yōu)點(diǎn)是可以為連接遠(yuǎn)程設(shè)備提供實(shí)時(shí)可靠的信息服務(wù),編號(hào)少,帶寬有限。它作為一種低成本、低帶寬的即時(shí)通信協(xié)議,廣泛用于物聯(lián)網(wǎng)、小型機(jī)器和移動(dòng)應(yīng)用。

wKgZomaM9wSAI_OXAAA8Wmk2LRA867.png

以下是MQTT消息傳輸過(guò)程的示意圖:

1.客戶端連接到Broker:

CONNECT 請(qǐng)求:客戶端向MQTT Broker發(fā)起連接請(qǐng)求。
CONNACK 響應(yīng):Broker確認(rèn)連接請(qǐng)求。

2.客戶端發(fā)布消息到主題:

PUBLISH 請(qǐng)求:客戶端將消息發(fā)布到特定主題。
Broker 將消息轉(zhuǎn)發(fā)給訂閱該主題的客戶端。

3.Broker 轉(zhuǎn)發(fā)消息:

PUBLISH 請(qǐng)求:Broker 將消息轉(zhuǎn)發(fā)給所有訂閱了該主題的客戶端。

4.客戶端確認(rèn)消息接收:

PUBACK 響應(yīng):客戶端確認(rèn)接收到消息,適用于QoS 1等級(jí)。

5.客戶端斷開(kāi)連接:

DISCONNECT 請(qǐng)求:客戶端請(qǐng)求斷開(kāi)與Broker的連接。
DISCONNECT 響應(yīng):Broker 確認(rèn)斷開(kāi)連接。

TCP、HTTP與MQTT的對(duì)比表格

特性 TCP HTTP MQTT
協(xié)議類型 傳輸層協(xié)議 應(yīng)用層協(xié)議 應(yīng)用層協(xié)議
連接建立 面向連接(三次握手) 無(wú)狀態(tài)請(qǐng)求-響應(yīng) 面向連接(連接保持)
數(shù)據(jù)傳輸模式 可靠傳輸,順序保證 請(qǐng)求-響應(yīng) 發(fā)布-訂閱
可靠性 取決于應(yīng)用層實(shí)現(xiàn) 支持QoS等級(jí)確??煽啃?/td>
數(shù)據(jù)頭開(kāi)銷 較大 較大 較小
傳輸效率 較低 中等
適用場(chǎng)景 可靠傳輸需求的場(chǎng)景 Web瀏覽、API通信、RESTful服務(wù) 物聯(lián)網(wǎng)、實(shí)時(shí)數(shù)據(jù)傳輸
典型應(yīng)用 文件傳輸、電子郵件、遠(yuǎn)程登錄 網(wǎng)頁(yè)瀏覽、Web API 物聯(lián)網(wǎng)設(shè)備通信、消息傳輸

總結(jié)

TCP、HTTP 和 MQTT 是三種不同層級(jí)和用途的協(xié)議是進(jìn)行設(shè)備互聯(lián)和傳送數(shù)據(jù)的重要組成部分;TCP適用高可靠性傳送,HTTP適用Web服務(wù)與API打開(kāi),MQTT是物聯(lián)網(wǎng)設(shè)備通訊的不二之選。了解它們的特點(diǎn)和適用場(chǎng)景有助于在設(shè)計(jì)和實(shí)現(xiàn)網(wǎng)絡(luò)通信時(shí)做出最佳選擇。

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • HTTP
    +關(guān)注

    關(guān)注

    0

    文章

    537

    瀏覽量

    35401
  • TCP
    TCP
    +關(guān)注

    關(guān)注

    8

    文章

    1425

    瀏覽量

    83545
  • MQTT
    +關(guān)注

    關(guān)注

    5

    文章

    734

    瀏覽量

    25116
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    基于LuatOS的MQTT物聯(lián)網(wǎng)通信全解

    在構(gòu)建物聯(lián)網(wǎng)終端設(shè)備時(shí),通信協(xié)議的選擇直接決定系統(tǒng)的穩(wěn)定性與擴(kuò)展性。LuatOS通過(guò)內(nèi)置MQTT客戶端支持,使開(kāi)發(fā)者能以極少代碼實(shí)現(xiàn)設(shè)備上云。本文將從協(xié)議原理到代碼實(shí)現(xiàn),全面解析基于LuatOS
    的頭像 發(fā)表于 01-29 19:42 ?193次閱讀
    基于LuatOS的<b class='flag-5'>MQTT</b>物聯(lián)網(wǎng)通信全解

    使用HTTP實(shí)現(xiàn)IAP的方法

    使用 HTTP 協(xié)議進(jìn)行固件升級(jí)沒(méi)有使用 TFTP 常見(jiàn),但是在需要通過(guò) Internet 進(jìn)行遠(yuǎn)程編程時(shí),這種解決方案就顯得極為有用。這時(shí),需要使用 TCP 傳輸協(xié)議來(lái)實(shí)現(xiàn)
    發(fā)表于 12-16 06:18

    MQTT協(xié)議為什么成為物聯(lián)網(wǎng)協(xié)議

    不穩(wěn)定環(huán)境下的通信需求。以下是具體分析: 1. 輕量級(jí)設(shè)計(jì),適配資源受限設(shè)備 極簡(jiǎn)協(xié)議頭 :MQTT協(xié)議頭最小僅2字節(jié),遠(yuǎn)低于HTTP(通常數(shù)百字節(jié))或CoAP(雖輕量但基于UDP,可
    的頭像 發(fā)表于 12-10 09:15 ?459次閱讀

    為什么會(huì)有TCP/IP協(xié)議

    見(jiàn)了面,完全不能交流信息。因而他們需要定義一些共通的東西來(lái)進(jìn)行交流,TCP/IP就是為此而生。TCP/IP不是一個(gè)協(xié)議,而是一個(gè)協(xié)議族的統(tǒng)稱。 里面包括了IP
    發(fā)表于 12-03 06:28

    Modbus TCP與RTU協(xié)議詳解:網(wǎng)關(guān)采集如何選?

    深控網(wǎng)關(guān)如何工作: 我們的高端系列網(wǎng)關(guān)具備多串口 + 網(wǎng)口的配置,可以同時(shí)接入RS-485總線上的RTU設(shè)備和網(wǎng)絡(luò)上的TCP設(shè)備。網(wǎng)關(guān)作為一個(gè)數(shù)據(jù)匯聚點(diǎn),將不同協(xié)議的數(shù)據(jù)統(tǒng)一采集、處理,并轉(zhuǎn)換成標(biāo)準(zhǔn)協(xié)議(如
    的頭像 發(fā)表于 11-04 10:34 ?412次閱讀

    使用paho-mqtt里例程連接服務(wù)器失敗怎么解決?

    【rt-thread】【paho-mqtt】最近由于學(xué)習(xí)需要,了解了關(guān)于rt-thread軟件包paho-mqtt的使用,但是使用官方例程時(shí),出現(xiàn)連接不上服務(wù)器的情況。具體報(bào)錯(cuò)如下: msh
    發(fā)表于 09-18 06:38

    MQTT_協(xié)議中文資料

    電子發(fā)燒友網(wǎng)站提供《MQTT_協(xié)議中文資料.pdf》資料免費(fèi)下載
    發(fā)表于 09-02 16:19 ?1次下載

    GraniStudio :MQTT 協(xié)議的深度剖析

    在工業(yè)物聯(lián)網(wǎng)(IIoT)的通信協(xié)議體系中,MQTT(Message Queuing Telemetry Transport)憑借其輕量級(jí)、發(fā)布 - 訂閱模式和低帶寬占用等特性,成為連接邊緣設(shè)備與云端
    的頭像 發(fā)表于 08-04 09:48 ?1043次閱讀
    GraniStudio :<b class='flag-5'>MQTT</b> <b class='flag-5'>協(xié)議</b>的深度剖析

    什么是Modbus TCP協(xié)議

    Modbus TCP是一種基于TCP/IP協(xié)議的Modbus通信協(xié)議,用于在客戶機(jī)和服務(wù)器之間進(jìn)行數(shù)據(jù)通信。它常用于工業(yè)自動(dòng)化控制、電力監(jiān)控與管理、溫濕度監(jiān)測(cè)等領(lǐng)域。Modbus
    的頭像 發(fā)表于 07-23 17:18 ?4338次閱讀
    什么是Modbus <b class='flag-5'>TCP</b><b class='flag-5'>協(xié)議</b>

    MQTT介紹

    的消息傳輸協(xié)議,近年來(lái)被廣泛應(yīng)用于智能家居、工業(yè)控制、車聯(lián)網(wǎng)等場(chǎng)景。 MQTT 是一種基于發(fā)布/訂閱(Pub/Sub)模式的輕量級(jí)消息協(xié)議,設(shè)計(jì)初衷是為低帶寬、不穩(wěn)定網(wǎng)絡(luò)環(huán)境下的設(shè)備通信而生。它更像是廣播電臺(tái):
    的頭像 發(fā)表于 07-14 09:34 ?3695次閱讀
    <b class='flag-5'>MQTT</b>介紹

    簡(jiǎn)析Modbus和MQTT協(xié)議

    Modbus和MQTT協(xié)議在設(shè)計(jì)目標(biāo)、通信模式、應(yīng)用場(chǎng)景、網(wǎng)絡(luò)結(jié)構(gòu)、數(shù)據(jù)傳輸效率、設(shè)備兼容性及安全性等方面存在顯著差異,具體分析如下: 一、設(shè)計(jì)目標(biāo)與定位 Modbus :誕生于1979年,由施耐德
    的頭像 發(fā)表于 07-10 14:25 ?800次閱讀

    御控網(wǎng)關(guān)如何實(shí)現(xiàn)MQTT、MODBUS、OPCUA、SQL、HTTP之間協(xié)議轉(zhuǎn)換

    在工業(yè)自動(dòng)化領(lǐng)域,不同設(shè)備、系統(tǒng)之間的通信協(xié)議就像不同的語(yǔ)言,常常讓信息交互變得困難重重。MQTT、MODBUS、OPCUA、SQL、HTTP協(xié)議各有特點(diǎn),適用于不同的場(chǎng)景和設(shè)備,但
    的頭像 發(fā)表于 07-07 13:07 ?585次閱讀

    HTTP協(xié)議在工業(yè)領(lǐng)域會(huì)用到嗎

    HTTP協(xié)議在工業(yè)領(lǐng)域會(huì)用到,并且在工業(yè)互聯(lián)網(wǎng)、設(shè)備管理、數(shù)據(jù)交互等多個(gè)方面發(fā)揮著重要作用,以下為詳細(xì)介紹: 工業(yè)互聯(lián)網(wǎng)場(chǎng)景 設(shè)備接入與管理 原理:在工業(yè)互聯(lián)網(wǎng)平臺(tái)中,各類工業(yè)設(shè)備(如傳感器
    的頭像 發(fā)表于 06-03 09:17 ?688次閱讀

    MQTT為何成為物聯(lián)網(wǎng)協(xié)議

    的優(yōu)勢(shì),以下為詳細(xì)介紹: 輕量級(jí)特性,適配資源受限設(shè)備 協(xié)議頭開(kāi)銷小 :MQTT協(xié)議頭非常簡(jiǎn)潔,相比其他協(xié)議,它在數(shù)據(jù)傳輸時(shí)添加的額外信息
    的頭像 發(fā)表于 05-20 09:54 ?849次閱讀

    《DNESP32S3使用指南-IDF版_V1.6》第五十五章 基于MQTT協(xié)議連接阿里云服務(wù)器

    第五十五章 基于MQTT協(xié)議連接阿里云服務(wù)器 本章主要學(xué)習(xí)lwIP提供的MQTT協(xié)議文件使用,通過(guò) MQTT
    發(fā)表于 03-18 09:22