長連線就是在tcp建立連線後,讀寫一次資料完成之後並不立即釋放連線,而短連線是在一次tcp連線之後只進行一次資料的讀寫就釋放連線。
程式設計中要使乙個套接字所建立的連線成為長連線,可以使用setsockopt()函式。它使用的是tcp的keepalive定時功能,利用sysctl -a|grep tcp_keepalive可以檢視核心中對keepalive的設定。
net.ipv4.tcp_keepalive_time = 7200
net.ipv4.tcp_keepalive_probes = 9
net.ipv4.tcp_keepalive_intvl = 75
以上是keepalive的三個屬性設定。time屬性表示經過多長時間套接字沒有資料的讀寫,就傳送一次keepalive報文;probes屬性表示一共傳送幾次keepalive報文;intvl表示每次傳送keepalive報文的時間間隔。
TCP 長連線 短連線
當網路通訊時採用tcp協議時,在真正的讀寫操作之前,server與client之間必須建立乙個連線,當讀寫操作完成後,雙方不再需要這個連線時它們可以釋放這個連線,連線的建立是需要三次握手的,而釋放則需要4次揮手,所以說每個連線的建立都是需要資源消耗和時間消耗的 示意圖 長連線 連線 資料傳輸 保持連...
TCP的長連線與短連線
1.tcp連線 在tcp ip協議中,tcp協議提供可靠的連線服務,採用三次握手建立乙個連線,如圖所示 1 第一次握手 建立連線,客戶端a傳送syn包 syn j 到伺服器b,並進入syn send狀態,等待伺服器b確認.2 第二次握手 伺服器b收到syn包,必須確認客戶a的syn ack j 1 ...
TCP 長連線和短連線
一 長連線與短連線 長連線 client方與server方先建立連線,連線建立後不斷開,然後再進行報文傳送和接收。這種方式下由於通訊連線一直存在。此種方式常用於p2p通訊。短連線 client方與server每進行一次報文收發交易時才進行通訊連線,交易完畢後立即斷開連線。此方式常用於一點對多點通訊。...