• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            牽著老婆滿街逛

            嚴以律己,寬以待人. 三思而后行.
            GMail/GTalk: yanglinbo#google.com;
            MSN/Email: tx7do#yahoo.com.cn;
            QQ: 3 0 3 3 9 6 9 2 0 .

            心跳包機制

                心跳包之所以叫心跳包是因為:它像心跳一樣每隔固定時間發(fā)一次,以此來告訴服務器,這個客戶端還活著。事實上這是為了保持長連接,至于這個包的內容,是沒有什么特別規(guī)定的,不過一般都是很小的包,或者只包含包頭的一個空包。
                在TCP的機制里面,本身是存在有心跳包的機制的,也就是TCP的選項:SO_KEEPALIVE。系統(tǒng)默認是設置的2小時的心跳頻率。但是它檢查不到機器斷電、網線拔出、防火墻這些斷線。而且邏輯層處理斷線可能也不是那么好處理。一般,如果只是用于保活還是可以的。
                心跳包一般來說都是在邏輯層發(fā)送空的echo包來實現的。下一個定時器,在一定時間間隔下發(fā)送一個空包給客戶端,然后客戶端反饋一個同樣的空包回來,服務器如果在一定時間內收不到客戶端發(fā)送過來的反饋包,那就只有認定說掉線了。
                其實,要判定掉線,只需要send或者recv一下,如果結果為零,則為掉線。但是,在長連接下,有可能很長一段時間都沒有數據往來。理論上說,這個連接是一直保持連接的,但是實際情況中,如果中間節(jié)點出現什么故障是難以知道的。更要命的是,有的節(jié)點(防火墻)會自動把一定時間之內沒有數據交互的連接給斷掉。在這個時候,就需要我們的心跳包了,用于維持長連接,保活。
                在獲知了斷線之后,服務器邏輯可能需要做一些事情,比如斷線后的數據清理呀,重新連接呀……當然,這個自然是要由邏輯層根據需求去做了。
                總的來說,心跳包主要也就是用于長連接的保活和斷線處理。一般的應用下,判定時間在30-40秒比較不錯。如果實在要求高,那就在6-9秒。--!!超級變態(tài)的要求。

            posted on 2009-11-09 20:58 楊粼波 閱讀(9827) 評論(3)  編輯 收藏 引用

            評論

            # re: 心跳包機制[未登錄] 2009-11-19 14:02 zwicker

            心跳包發(fā)送的頻率一般是多少?  回復  更多評論   

            # re: 心跳包機制 2009-11-20 00:50 楊粼波

            40秒比較好。  回復  更多評論   

            # re: 心跳包機制 2012-09-17 14:39 gamedeveloper

            SO_KEEPALIVE是可以檢查到機器斷點,網線拔出這些斷線的,為什么不可以,長時間收不到探測包的ack,就會當做斷線,踢掉這個連接吧  回復  更多評論   

            久久91精品国产91久| 久久亚洲精精品中文字幕| 久久国产精品国产自线拍免费| 亚洲AV日韩精品久久久久久| 久久99精品国产麻豆宅宅| 久久亚洲国产欧洲精品一| 久久影院亚洲一区| 人人狠狠综合久久88成人| 国产精品免费看久久久香蕉| 欧美日韩久久中文字幕| 亚洲国产精品人久久| 亚洲国产精品高清久久久| 久久国产乱子伦精品免费午夜| 思思久久99热只有频精品66| 国产精品久久久久久一区二区三区| 久久99精品九九九久久婷婷| 久久久精品人妻一区二区三区四| 精品久久久久久无码免费| www久久久天天com| 精品久久人人爽天天玩人人妻| 国产精品久久久久久久久久免费| 亚洲AV无码久久精品成人| 亚洲国产小视频精品久久久三级| 久久精品一区二区三区不卡| 麻豆一区二区99久久久久| 久久久久av无码免费网| 久久综合久久伊人| 国产亚州精品女人久久久久久 | 久久九九兔免费精品6| 国产精品99久久久久久董美香| …久久精品99久久香蕉国产| 无码国内精品久久人妻| 99久久综合国产精品免费| 亚洲精品综合久久| 亚洲人成网站999久久久综合 | 思思久久好好热精品国产| 久久精品亚洲欧美日韩久久| 国产精品免费久久| 久久青青草原精品国产不卡| 亚洲国产成人乱码精品女人久久久不卡| 久久99精品久久久久久齐齐|