Keepalive
Keepalive(簡稱:KA,中文:存活)是用佇咧監測兩个裝置之間的資料鏈路敢是正常的工作,抑是防止鏈路中斷去的資訊。
概述
存活訊號通常以一定的時間隔開,其實佇網路頂懸演了上關要的角色。若一端佇訊號發出了無收著回覆,會當判定的資料鏈路離線而且共了後的封包重新路由到其他的鏈路,一直到舊鏈路重新上線為止。存活訊號也會當表示保留連接狀態。若是無存活訊號,啟用網路位址轉換的路由器欲佇咧過時間斷去連接。
因為存活資訊干焦用表示鏈路的狀態佮保留連接,其應言簡意見笑詼干焦占用較少的頻寬。猶毋過,存活資訊的格式佮用法根據傳輸協定的無仝而有所謂。
TCP 存活
傳輸控制協定(TCP)儉活包做會當選特性,而且預設關起來。包裝內無資料。佇咧乙太網路網路內底,儉活包的大細為上細長度的幾个影格(六十四位元組)。 協定內底,閣有三个參存活包相關的參數:
- 儉活時長(英語:Keepalive time)即空閒的時,兩擺傳輸存活包的繼續時間。TCP 度活包的時陣會使手動組態,預設袂少佇咧二點鐘。
- 儉活間隔(英語:Keepalive interval)雖然收到上個活包的時陣,兩擺連紲傳輸存活包的時間隔。
- 存活重試的次數(英語:Keepalive retry)即在判斷遠端主機不可用前的傳送存活包次數。做兩个主機透過 TCP / IP 協定相連的時,TCP 活包會當佇判斷連接是毋是會當用,並且需要中斷。
多數支援 TCP 協定的主機嘛仝時支援 TCP 儉活包。每一个主機揤一定周期向其他主機傳送 TCP 包來請求回應。若傳送主機無收著特定主機的回應(ACK), 是欲對傳送主機一爿斷連接。 若其他的主機佇咧連接關起來了後傳送 TCP 儉活包,關起來連接的一方會傳送 RST 包來表明舊連接已經無可用。其他主機會關起來伊一爿的連接以新建連接。
閒閒 TCP 連接通常會隔每四十五秒抑是六十秒傳送一改活包。佇無連紲收著三擺 ACK 包彼个時陣,連接共斷去。這途為主機咧異,若預設情況下的 Windows 主機欲佇咧七百二十學 ms(兩點鐘)後傳送頭一个活包,隨後閣以千 ms 的間隔傳送五个儉活包。若任意存活包無收著回應,連接將被中斷。
佇閣較懸層的使用
因為 TCP 儉活包做可選功能,加種協定(如 SMB 佮 TLS)佇基於 TCP 協定的基礎上研發著獨立的存活指示功能。使用無連接協定來保持對談狀態的協定通常嘛會按呢,如使用 UDP 的 OpenVPN。
其他的用途
HTTP 存活
超文字傳輸協定使用佇「Connection」頭部資訊中使用關鍵字「Keep-Alive」來指示連接應保持開啟以接收了後的資訊(這是 HTTP 一孵一中的預設情形,而且 HTTP 一鋪零預設將是每對請求 / 回覆對建立新連接)。 就算講名相倚,其功能煞大相直接接區。
其他的裝置
機動車維修的時陣,存活(英語:Keep-alive)裝置通常用保持電池電壓,使用小電池插入去汽車的十二伏電源介面。其目的一般是為著防止汽車的收音機抑是其他裝置進入「編碼」(安全鎖定)模式。基本上使用九伏電池即可。
電子時鐘定定有使用電池的存活電路來保證佇電源斷去的狀況後時間佮其他設定的正常。部份電子裝置使用電容電路來保持揮發性的記持體。
另外閣有參閱
- 網路交換器
- 看門狗仔計時器
- 拍空
- UDP 拍空