久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1923|回復(fù): 0
收起左側(cè)

心跳檢測

[復(fù)制鏈接]
ID:107189 發(fā)表于 2016-3-5 19:58 | 顯示全部樓層 |閱讀模式


一、什么是心跳檢測

判斷對方(設(shè)備,進(jìn)程或其它網(wǎng)元)是否正常動行,一般采用定時(shí)發(fā)送簡單的通訊包,如果在指定時(shí)間段內(nèi)未收到對方響應(yīng),則判斷對方已經(jīng)當(dāng)?shù)簟S糜跈z測TCP的異常斷開。

基本原因是服務(wù)器端不能有效的判斷客戶端是否在線也就是說,服務(wù)器無法區(qū)分客戶端是長時(shí)間在空閑,還是已經(jīng)掉線的情況。所謂的心跳包就是客戶端定時(shí)發(fā)送簡單的信息給服務(wù)器端告訴它我還在而已。

代碼就是每隔幾分鐘發(fā)送一個(gè)固定信息給服務(wù)端,服務(wù)端收到后回復(fù)一個(gè)固定信息。如果服務(wù)端幾分鐘內(nèi)沒有收到客戶端信息則視客戶端斷開。比如有些通信軟件長時(shí)間不使用,要想知道它的狀態(tài)是在線還是離線就需要心跳包,定時(shí)發(fā)包收包。
發(fā)包方可以是客戶也可以是服務(wù)端,看哪邊實(shí)現(xiàn)方便合理。[size=+0]一般是客戶端。服務(wù)器也可以定時(shí)輪詢發(fā)心跳下去。

一般來說,出于效率的考慮,是由客戶端主動向服務(wù)器端發(fā)包,而不是相反。

二、關(guān)于Send函數(shù)的返回值

我們知道當(dāng)客戶端以優(yōu)雅的方式斷開TCP連接后,服務(wù)器使用Send函數(shù)發(fā)包,得到的返回值為0(說明TCP連接已斷開)。然而,SEND函數(shù)的成功返回只能表示發(fā)送數(shù)據(jù)已經(jīng)進(jìn)入了SOCKET內(nèi)核的發(fā)送隊(duì)列,不一定就已經(jīng)在線上或者已經(jīng)被成功接收了。這可能是因?yàn)閟end只是往發(fā)送緩沖區(qū)拷貝數(shù)據(jù), 剛開始緩沖區(qū)還未滿,所以不會有錯(cuò)誤發(fā)生, 只有等到相當(dāng)一段長的時(shí)間后, send的返回值才會為-1。

三、定時(shí)Ping

如果服務(wù)器不能進(jìn)行心跳檢測的應(yīng)答。可以采用定時(shí)Ping某服務(wù)器來檢測TCP連接是否斷開,如新浪(必須允許Ping的服務(wù)器)。PING是向遠(yuǎn)程主機(jī)發(fā)送一個(gè)ICMP包,如果給定時(shí)間內(nèi)沒有接收到回應(yīng)就認(rèn)為是超時(shí),如果收到回應(yīng)則分析接收到的ICMP包,得到TTL、類型以及用時(shí)。

不過Ping包有32字節(jié),如果是無線連接,有時(shí)需要考慮流量問題。



回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 免费av观看| 男女无遮挡xx00动态图120秒 | 久草网在线 | 欧美一级黄 | 国产盗摄一区二区三区 | 日韩国产精品视频 | 国产免费无遮挡 | av在线免费观看网站 | 欧美黑人性猛交 | 欧美性猛交乱大交 | 色黄视频在线观看 | 美女黄色小说 | aaa级片| 亚洲美女一区 | 在线观看亚洲精品 | 91视频专区 | 伊人网视频 | 日韩中文视频 | 中文字幕一区二区三区四区 | 色妞综合网 | 国产乱码精品一品二品 | 97视频在线观看免费 | 美女黄色小说 | 日韩精品视频在线播放 | 午夜伦理视频 | 日韩色av | 新av在线| 天堂成人在线 | 天天天天天操 | 在线看黄色片 | 午夜免费剧场 | 成人自拍网 | 成人免费看片' | 99精品久久 | 日韩黄色在线观看 | 在线观看二区 | 夜夜嗨av一区二区三区 | 精品网站999www | 日韩精品一区二区在线 | 久久久亚洲天堂 | 成人黄色在线 |