<em id="ri2my"></em>
  • <em id="ri2my"></em>
    <em id="ri2my"><label id="ri2my"><nav id="ri2my"></nav></label></em>
  • <em id="ri2my"><label id="ri2my"></label></em>
    <div id="ri2my"></div>
    1. <em id="ri2my"><label id="ri2my"></label></em>
    2. <em id="ri2my"><ol id="ri2my"></ol></em>
      <em id="ri2my"></em>

      1. 貝殼物聯保持長期在線、斷網重連的討論

        作者:貝殼物聯 | 更新時間:2016-12-08 | 瀏覽量:1918

        設備穩定在線,是設備實時接收控制和上傳數據(UDP和http協議除外)的基礎,也是大家經常遇到和討論問題,所有單獨在此討論,只做理論和機制說明,希望大家有好的經驗和建議多多分享。

        一、設備與服務器的關系說明

        1、無連接狀態——設備和服務器未發生任何關系;

        2、連接狀態——設備端已與服務器建立tcp連接,在建立連接后設備端將收到服務器發來的{"M":"WELCOME TO BIGIOT"}\n歡迎信息;

        3、登錄狀態——設備端與服務建立連接后發送checkin指令,并收到checkinok確認登錄成功,此時設備顯示在線狀態;

        二、服務器不同端口特點

        1、TCP 8181 端口

        此端口不向設備端發送心跳包,需設備端主動向服務報到,80s內服務器未收到客戶端發來有效數據將主動關閉連接。

        設備端可根據網絡情況每隔30-60s向服務器發一次有效數據(符合通信協議的數據)。

        此端口適合連續發送實時數據的設備。

        2、TCP 8282 端口

        此接口理論上每40s向設備端發送一個心跳包{"M":"b"}\n,詢問設備是否在線,設備端就進行有效應答,如果連續兩次沒有應答服務器將關閉連接。

        服務器端為了節省資源,并非平均每40s發送一次心跳包,而是以你最后一次發送有效數據后的60s左右發送一次心跳包,在這次心跳后沒有收到設備端應答,將在40s后發第二次,如果還未收到應答,將關閉連接。

        此端口適合被動接受控制的設備。

        3、websocket 8383 端口

         

        三、掉線情況分析

        1、服務器主動斷開連接

        2、設備端斷電

        3、設備端斷網

        ①與路由器斷開連接

        ②路由器與通信服務商斷開連接

        4、設備端主動checkout

        ①自己checkout自己

        ②checkout其他設備


        評論:共0條

        返回頂部

        <em id="ri2my"></em>
      2. <em id="ri2my"></em>
        <em id="ri2my"><label id="ri2my"><nav id="ri2my"></nav></label></em>
      3. <em id="ri2my"><label id="ri2my"></label></em>
        <div id="ri2my"></div>
        1. <em id="ri2my"><label id="ri2my"></label></em>
        2. <em id="ri2my"><ol id="ri2my"></ol></em>
          <em id="ri2my"></em>

          1. 免费高清视频