女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

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

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

3天內不再提示

玩轉物聯網 洞悉服務器心跳!

青山老竹農 ? 來源:jf_82863998 ? 作者:jf_82863998 ? 2024-12-05 09:05 ? 次閱讀

本次我要說的是玩轉物聯網,洞悉服務器的心跳,所謂的心跳包就是(探測性的)數據包,之所以叫心跳包是因為:它像心跳一樣每隔固定時間發一次,以此來告訴服務器,這個客戶端還活著。

事實上這是為了保持長連接,至于這個包的內容,是沒有什么特別規定的,不過一般都是很小的包,或者只包含包頭的一個空包。

最大的作用就一句話,就是告訴服務器:
我還活著,別給我踢下線了。

01.為什么需要心跳?

4G物聯網設備受限于自身工作環境的影響,極有可能發生網絡不穩定的情況。

例如:
人多的環境中,為了保證人聯網的及時性,物聯網設備的通訊優先級會被運營商調低,極有可能出現多個物聯網設備互相競爭4G通訊通道,或者與手機等人聯網設備競爭網絡通道的情況。

再比如:
野外環境下,本身就人煙罕至的地方,運營商基站覆蓋弱。

又或者
半夜運營商降低基站發射功率來省電,或者半夜進行基站的維護。

還有可能:
服務器遇到特殊情況進行維護升級,沒有及時通知物聯網設備,導致設備一直進行重連/數據重傳等操作,耗盡了物聯網卡的流量。

以上等等諸如此類的意外情況,都會使本來正常環境下能聯網的4G物聯網設備,突然斷網,導致服務器長期收不到模組發過來的數據或者模組收不到服務器發過來的數據,進而導致數據延遲、丟失,最終導致用戶資產受損。

所以在客戶端/服務器設計之初,都會設計一個心跳機制,用來處理服務器/網絡異常的情況。

▼ 4G模組心跳設置 ▼

如果使用AT固件:

可以參考如下指令設置心跳:

1)AT+CIPTKA

2)AT^HEARTCONFIG

具體的參數參考的AT指令集,可以設置心跳內容、心跳周期等。

如果使用LuatOS固件:

可以使用socket.config接口

接口參數設置詳見:
https://wiki.luatos.com/api/socket.html

也可以使用sys.timerLoopStart函數:
創建一個定時器,進行心跳包的傳輸。

02.推薦的心跳間隔

一般來說,人聯網的設備,對實時性要求較高,所以一般人聯網的設備,根據實際業務的實時性不同,一般心跳間隔時間也從5秒~40秒不等。

物聯網設備的實時性要求大多數都不是很高,所以一般來說1分鐘/2分鐘/3分鐘/5分鐘也就夠用了,可以根據真實的使用場景,以及服務器能夠承載的冗余鏈路數量決定具體的心跳間隔。

如果你使用的是阿里云/騰訊云等可靠的物聯網平臺,也可以適當拉長自己的心跳周期。例如:阿里云物聯網平臺推薦的心跳為300秒以上,最長為1200秒。

值得一提的是,心跳間隔時間越短,同等時間內,模組耗電越多。為了節約流量和省電,對大多數物聯網設備來說,并不是真的會在用戶設定的心跳間隔時間時給服務器發送心跳——真正發送心跳包的間隔時間,往往是用戶設置的1.5倍時長,這是心跳機制決定的。

03.如果不用心跳,服務器怎么設計

一般來說,用戶使用的是TCP協議或者基于TCP的MQTT這種長連接協議。

如果客戶對功耗比較看重,既希望能保持長連接,又不希望在沒有數傳的時候發送心跳數據導致功耗上升,可以與服務器進行協商,將定時的數據報文,當作應用層心跳報文。

如果上下兩包數據接收時間小于設置的應用層心跳時間,則在下一包數據收到以后,檢測心跳周期的定時器事件重置。注意:此種方式僅限于數傳間隔較小(15分鐘內)的情況。

當然,如果對數據傳輸的完整性不做嚴格要求,也可以將自己通訊協議改為UDP。

04.不用心跳方式的弊端

TCP協議層是有默認兩小時的心跳機制,但是這會造成服務器有時需要處理大量的TCP冗余鏈接,所以一般服務器都會和客戶端協商,啟用應用層心跳。

如果沒有服務器心跳,4G模組和4G基站之間也是需要一個心跳機制的——因為4G模組不是直接跟服務器連接的,而是通過NAT(即網絡地址轉換)與服務器連接,NAT就是網絡地址轉換。

NAT會維護一個映射表,這個映射表會定時檢查。如果10分鐘內這路socket跟服務器沒任何數據往來,就會回收這路的地址,10分鐘后應用上再發數據就找不到路由地址了,也就是常說的和服務器斷開了鏈接;如果10分鐘內有數據更新,計時器會重新置為10分鐘。

如果不需要和模組保持長連接,且不怎么需要和服務器進行交互,半小時甚至更久:

那么可以考慮使用HTTP等鏈接方式,或者參考4G模組【PSM+超低功耗】教程

審核編輯 黃宇

今天的分享就到這里了

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

    關注

    2927

    文章

    45847

    瀏覽量

    387584
  • 服務器
    +關注

    關注

    12

    文章

    9681

    瀏覽量

    87235
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    國外bgp服務器多少錢?# 服務器

    服務器
    jf_57681485
    發布于 :2025年04月24日 14:19:00

    新加坡服務器延遲大嗎?真相在這里#新加坡服務器 #服務器

    服務器
    jf_57681485
    發布于 :2025年04月18日 13:48:50

    工業聯網串口服務器小白如何選

    選擇工業聯網串口服務器時,通常需要考慮以下幾個方面(Eg;有人物聯網股份有限公司) ? 1.串口類型與數量 :根據實際工業設備的串口類型(如 RS232、RS485 等)和數量來選擇
    的頭像 發表于 03-27 10:26 ?224次閱讀

    工業互聯進階之路:串口服務器聯網技術的深度融合

    工業互聯進階之路:串口服務器聯網技術的深度融合
    的頭像 發表于 03-24 09:39 ?213次閱讀
    工業互聯進階之路:串口<b class='flag-5'>服務器</b>與<b class='flag-5'>物</b><b class='flag-5'>聯網</b>技術的深度融合

    NTP校時服務器 時鐘同步服務器

    服務器
    jf_75250307
    發布于 :2025年03月19日 20:56:34

    解密北斗時鐘服務器的現代使命

    跨洲際的量子通信實驗成為可能。這種無形的時間秩序,恰似空氣般滲透在數字文明的每個細胞之中。 當聯網設備突破百億規模,5G網絡時延進入微秒時代,北斗時鐘服務器正面臨新的進化課題。或許在不遠的未來,每個
    發表于 02-25 14:54

    串口服務器在能源聯網數據采集中的應用技術參數介紹#

    摘要 ? ?隨著聯網技術的快速發展,各種傳統設備的聯網需求愈發迫切。串口服務器作為一種橋接傳統串口設備與現代網絡的關鍵設備,在工業控制、智能電網、交通運輸等域發揮了重要作用。本文以安
    的頭像 發表于 01-15 13:46 ?296次閱讀
    串口<b class='flag-5'>服務器</b>在能源<b class='flag-5'>物</b><b class='flag-5'>聯網</b>數據采集中的應用技術參數介紹#

    采用華為云 Flexus 云服務器 X 實例部署 MQTT 服務器完成設備上云

    一、前言 1.1 開發需求 這篇文章講解: 采用華為云最新推出的 Flexus 云服務器 X 實例 EMQX 服務器,搭建 MQTT 服務器,完成設備上云,實現
    的頭像 發表于 12-26 18:12 ?494次閱讀
    采用華為云 Flexus 云<b class='flag-5'>服務器</b> X 實例部署 MQTT <b class='flag-5'>服務器</b>完成設備上云

    NTP服務器聯網中的應用

    隨著聯網(IoT)技術的飛速發展,越來越多的設備被連接到互聯網上,這些設備需要精確的時間同步來保證數據的準確性和一致性。網絡時間協議(NTP)服務器
    的頭像 發表于 12-18 15:16 ?671次閱讀

    獨立服務器與云服務器的區別

    隨著互聯網技術的飛速發展,企業對于服務器的需求日益增加,而服務器市場也隨之出現了多種類型的產品,其中最常見的是獨立服務器和云服務器。這兩種
    的頭像 發表于 10-12 14:34 ?606次閱讀

    【教程】配置NE2-D11串口服務器接入Modbus聯網平臺

    一案例簡介本案例將通過配置NE2-D11串口服務器接入Modbus聯網平臺,使得Modbus聯網平臺能采集ModbusRTU設備的DI狀
    的頭像 發表于 09-27 08:07 ?755次閱讀
    【教程】配置NE2-D11串口<b class='flag-5'>服務器</b>接入Modbus<b class='flag-5'>物</b><b class='flag-5'>聯網</b>平臺

    請問DCTCP與DCUDP 的登錄數據包和心跳數據包與服務器端是如何交互的?

    DCTCP與DCUDP的登錄數據包和心跳數據包與服務器端是如何交互的?
    發表于 07-25 06:37

    聯網MQTT broker服務器的設置步驟

    本項目使用machinechat的 JEDIOne 聯網數據管理軟件在樹莓派4上設置了一個聯網MQTTbroker 服務器
    的頭像 發表于 07-11 10:36 ?2404次閱讀
    <b class='flag-5'>物</b><b class='flag-5'>聯網</b>MQTT broker<b class='flag-5'>服務器</b>的設置步驟

    服務器和虛擬服務器的區別是什么

    服務器和虛擬服務器是兩種常見的服務器類型,它們在很多方面有相似之處,但也有一些關鍵的區別。本文將詳細介紹云服務器和虛擬服務器的區別,包括它
    的頭像 發表于 07-02 09:48 ?1404次閱讀