HSRP(Hot Standby Router Protocol),全稱爲熱備份路由協議,指的是在一個路由器完全不能工作的情況下,它的全部功能便被系統中的另一個備份路由器完全接管,直至出現問題的路由器恢復正常。
實現HSRP的條件是系統中有多臺路由器,它們組成一個"熱備份組",這樣組形成一個虛擬路由器。在任一時刻,一個組內只有一個路由器是活動的,並由它來轉發數據包,如果活動路由器發生了故障,將選擇一個備份路由器來替代活動路由器,但是在本網絡內的主機看來,虛擬路由器沒有改變。所以主機仍然保持連接,沒有受到故障的影響,這樣就較好地解決了路由器切換的問題。
熱備份路由器協議(HSRP) 的設計目標是支持在特定環境下 IP 流量中斷後的無損故障轉移,並允許主機使用單路由器,以及即使在實際的第一跳路由器當機的情形下仍能保持網絡連接。換句話說,當主機不能動態獲得第一跳路由器的 IP 地址時,HSRP 協議能夠保護第一跳路由不失敗。該協議有多個路由器參與,並共同創建了一個虛擬路由器。HSRP 協議確保有且只有一個路由器代表虛擬路由器實現數據包轉發過程。終端主機將它們各自的數據包轉發到該虛擬路由器上。
負責轉發數據包的路由器稱之爲活動路由器(active router)。一旦活動路由器出現故障,HSRP 將激活備份路由器(standby router)取代主動路由器。根據所有路由器的 IP 地址,HSRP 協議提供了一種決定使用活動路由器還是備份路由器的機制。一旦活動路由器出現故障,備份路由器就會接管其任務,而不會中斷主機的網絡連接。
1. HSRP協議結構
HSRP協議結構如下所示:
l 版本:標識了HSRP的版本號,長度爲8位;
l 類型:8位類型字段標識了數據包包含的信息類型,可能值有:
Ø 0 — 發送Hello,表示路由器正在運行,並有可能成爲主動或備份路由器;
Ø 1 — 發送Coup,當路由器希望成爲主動路由器時發送;
Ø 2 — 發送Resign,當路由器不再希望成爲主動路由器時發送;
l 狀態:8位狀態字段描述發送信息的路由器當前的狀態,可能的值有:
Ø 0 — 初始化
Ø 1 — Learn
Ø 2 — Listen
Ø 4 — Speak
Ø 8 — Standby
Ø 16 — Active
l 間隔時間:標識路由器發送Hello信息間的大約週期,長度爲8位;
l 有效時間:標識當前Hello信息的有效時間(只對Hello信息),長度爲8位;
l 優先級:用於選擇主動和備份路由器。當比較兩個路由器的優先級時,具有較高優先級數字的路由器優先;
l 認證:長度爲8字節;
l 虛擬IP地址:標識該組使用的虛擬IP地址,長度爲32位;