路由表是如何建立的?
路由表:指路由器或者其他互聯網網絡設備上存儲的一張路由信息表,該表中存有到達特定網絡終端的路徑,在某些情況下,還有一些與這些路徑相關的度量。
靜態路由算法:
(1) Dijkstra算法是典型的單源最短路徑算法,用於計算一個節點到其他所有節點的最短路徑。主要特點是以起始點爲中心向外層層擴展,直到擴展到終點爲止。
(2) 擴散法:事先不需要任何網絡信息;路由器把收到的每一個分組,向除了該分組到來的線路外的所有輸出線路發送。將來會由多個分組的副本到達目的地端,最先到達的,可能是走了”最優路徑”。
(3) 基於流量的路由算法
既考慮拓撲結構,又兼顧網絡負荷;前提:每對結點間平均數據流是相對穩定和可預測的;根據網絡帶寬和平均流量,可得出平均包延遲,因此路由選擇問題歸結爲找產生網絡最小延遲的路由選擇算法。提前離線(off-line)
動態路由算法:
(1) 距離向量路由算法
也叫最大流量演算法,其被距離向量協議作爲一個算法,使用這個算法的路由器必須掌握這個距離表,它告訴在網絡中每一個節點的最遠和最近距離。在距離表中的這個信息是根據臨近節點信息的改變而時時更新的。表中數據的量和網絡中的所有的節點是等同的。這個表中的列代表直接和它相連的鄰居,行代表在網絡中的所有目的地。每個數據包括傳送數據包到每個在網上的目的地的路徑和距離或時間在那個路徑上傳輸。這個在那個算法中的度量公式是跳躍次數,等待時間,流出數據包的數量等。
在距離向量路由算法中,相鄰路由器之間週期性地相互交換各自的路由表備份。當網絡拓撲結構發生變化時,路由器之間也將及時的相互通知。
水平分裂算法:在發送路由更新消息時進行限制,結點不向相鄰結點報告那些從該相鄰結點學習到的路由信息。
(2) 鏈路狀態最短路由優先算法SPF
發現鄰居結點,並學習它們的網絡地址;測量到各鄰居結點的延遲或者開銷;創建鏈路狀態分組;使用擴散法發佈鏈路狀態分組;計算到每個其他路由器的最短路徑