首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計疑難解答

Android 與 Linux 經 3G 網絡通信:需中繼服務器穿透 NAT

     編輯:程式設計疑難解答

難點

雙方均通過 3G 撥號上網,IP 動態分配且處於運營商 NAT 之後,無公網 IP,無法直接建立 Socket 連接。

架構方案

  1. 公網中繼服務器:雙方啟動時向固定公網 IP 註冊當前 IP/端口(或保持長連接心跳)。
  2. NAT 穿透:服務器協助雙方交換公網端口映射信息,嘗試打洞建立 P2P 連接(STUN/TURN)。
  3. 消息轉發:若 P2P 失敗,服務器轉發指令與圖片數據。
  4. 本地功能:Linux 端調用攝像頭拍照、編碼發送;Android 端接收顯示。

技術選型

  • 通訊協議:MQTT、WebSocket 或自定義 TCP/UDP。
  • 視頻傳輸:H.264 + RTP/RTCP 或 HTTP-FLV。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved