什么是路由權
路由權和路由算法可能很多人都不太了解,學習啦小編收集的本文為大家揭開神秘面紗,歡迎大家閱讀借鑒,希望對您有所幫助!
路由權
B
Network N1
Network N2
A
C
D帶寬
時延
負載
可靠性
跳數
開銷
路由權:用于選擇最佳路由的信息。
路由算法修改路由表的基本目的是將最好路由信息添加到路由表中,路由的好壞是由路由算法根據自己獲得的路由信息計算出來的。對于每一條路由,路由算法產生一種權值來表示路由的好壞。通常情況下,這種權值越小,該路徑越好。
路由權的計算可能基于路徑某單一特性計算,也可能基于路徑多種屬性進行計算。有幾種路徑特性經常被用于權值計算,如下:
1) 帶寬 -- 鏈路的數據容量。例如,通常情況下10M 以太網鏈路比 64K 出租線路要更好。
2) 時延 -- 報文從到達目標網絡所需要的時間。
3) 負載 -- 處于活躍狀態(tài)的網絡資源數量。
4) 可靠性 -- 每條數據鏈路的出錯率。
5) 跳數 -- 報文到目的地需要經過的網絡數。
6) 開銷 -- 一種人為設定的值,通常由網絡管理員根據帶寬、線路價格或其他一些因素綜合得出。
路由算法
路由算法,又名選路算法,可以根據多個特性來加以區(qū)分。算法的目的是找到一條從源路由器到目的路由器的“好”路徑(即具有最低費用的路徑)。算法設計者的特定目標影響了該路由協(xié)議的操作;具體來說存在著多種路由算法,每種算法對網絡和路由器資源的影響都不同;由于路由算法使用多種度量標準(metric),從而影響到最佳路徑的計算。
路由算法是提高路由協(xié)議功能,盡量減少路由時所帶來開銷的算法。當實現路由算法的軟件必須運行在物理資源有限的計算機上時高效尤其重要。路由算法必須健壯,即在出現不正?;虿豢深A見事件的情況下必須仍能正常處理,例如硬件故障、高負載和不正確的實現。因為路由器位于網絡的連接點,當它們失效時會產生重大的問題。最好的路由算法通常是那些經過了時間考驗,證實在各種網絡條件下都很穩(wěn)定的算法。此外路由算法必須能快速聚合,聚合是所有路由器對最佳路徑達成一致的過程。當某網絡事件使路徑斷掉或不可用時,路由器通過網絡分發(fā)路由更新信息,促使最佳路徑的重新計算,最終使所有路由器達成一致。聚合很慢的路由算法可能會產生路由環(huán)或網路中斷。
路由算法是提高路由協(xié)議功能,盡量減少路由時所帶來開銷的算法。當實現路由算法的軟件必須運行在物理資源有限的計算機上時高效尤其重要。路由算法必須健壯,即在出現不正?;虿豢深A見事件的情況下必須仍能正常處理,例如硬件故障、高負載和不正確的實現。因為路由器位于網絡的連接點,當它們失效時會產生重大的問題。
最好的路由算法通常是那些經過了時間考驗,證實在各種網絡條件下都很穩(wěn)定的算法。此外路由算法必須能快速聚合,聚合是所有路由器對最佳路徑達成一致的過程。當某網絡事件使路徑斷掉或不可用時,路由器通過網絡分發(fā)路由更新信息,促使最佳路徑的重新計算,最終使所有路由器達成一致。聚合很慢的路由算法可能會產生路由環(huán)或網路中斷。
LS算法
采用LS算法時,每個路由器必須遵循以下步驟:
ls算法的步驟流程
1、確認在物理上與之相連的路由器并獲得它們的IP地址。當一個路由器開始工作后,它首先向整個網絡發(fā)送一個“HELLO”分組數據包。每個接收到數據包的路由器都將返回一條消息,其中包含它自身的IP地址。
2、測量相鄰路由器的延時(或者其他重要的網絡參數,比如平均流量)。為做到這一點,路由器向整個網絡發(fā)送響應分組數據包。每個接收到數據包的路由器返回一個應答分組數據包。將路程往返時間除以2,路由器便可以計算出延時。(路程往返時間是網絡當前延遲的量度,通過一個分組數據包從遠程主機返回的時間來測量。)該時間包括了傳輸和處理兩部分的時間——也就是將分組數據包發(fā)送到目的地的時間以及接收方處理分組數據包和應答的時間。
3、向網絡中的其他路由器廣播自己的信息,同時也接收其他路由器的信息。
在這一步中,所有的路由器共享它們的知識并且將自身的信息廣播給其他每一個路由器。這樣,每一個路由器都能夠知道網絡的結構以及狀態(tài)。
4、使用一個合適的算法,確定網絡中兩個節(jié)點之間的最佳路由。
在這一步中,路由器選擇通往每一個節(jié)點的最佳路由。它們使用一個算法來實現這一點,如Dijkstra最短路徑算法。在這個算法中,一個路由器通過收集到的其他路由器的信息,建立一個網絡圖。這個圖描述網絡中的路由器的位置以及它們之間的鏈接關系。每個鏈接都有一個數字標注,稱為權值或成本。這個數字是延時和平均流量的函數,有時它僅僅表示節(jié)點間的躍點數。例如,如果一個節(jié)點與目的地之間有兩條鏈路,路由器將選擇權值最低的鏈路。
Dijkstra算法
Dijkstra算法執(zhí)行下列步驟
1、路由器建立一張網絡圖,并且確定源節(jié)點和目的節(jié)點,在這個例子里我們設為V1和V2。然后路由器建立一個矩陣,稱為“鄰接矩陣”。在這個矩陣中,各矩陣元素表示權值。例如,[i, j]是節(jié)點Vi與Vj之間的鏈路權值。如果節(jié)點Vi與Vj之間沒有鏈路直接相連,它們的權值設為“無窮大”。
2、路由器為網路中的每一個節(jié)點建立一組狀態(tài)記錄。此記錄包括三個字段:
前序字段——表示當前節(jié)點之前的節(jié)點。
長度字段——表示從源節(jié)點到當前節(jié)點的權值之和。
標號字段——表示節(jié)點的狀態(tài)。每個節(jié)點都處于一個狀態(tài)模式:“永久”或“暫時”。
3、路由器初始化(所有節(jié)點的)狀態(tài)記錄集參數,將它們的長度設為“無窮大”,標號設為“暫時”。
4、路由器設置一個T節(jié)點。例如,如果設V1是源T節(jié)點,路由器將V1的標號更改為“永久”。當一個標號更改為“永久”后,它將不再改變。一個T節(jié)點僅僅是一個代理而已。
5、路由器更新與源T節(jié)點直接相連的所有暫時性節(jié)點的狀態(tài)記錄集。
6、路由器在所有的暫時性節(jié)點中選擇距離V1的權值最低的節(jié)點。這個節(jié)點將是新的T節(jié)點。
7、如果這個節(jié)點不是V2(目的節(jié)點),路由器則返回到步驟5。
8、如果節(jié)點是V2,路由器則向前回溯,將它的前序節(jié)點從狀態(tài)記錄集中提取出來,如此循環(huán),直到提取到V1為止。這個節(jié)點列表便是從V1到V2的最佳路由。
鏈路向量選路算法
鏈路狀態(tài)算法(也稱最短路徑算法)發(fā)送路由信息到互聯網上所有的結點,然而對于每個路由器,僅發(fā)送它的路由表中描述了其自身鏈路狀態(tài)的那一部分。
距離向量算法
距離向量算法(也稱為Bellman-Ford算法)則要求每個路由器發(fā)送其路由表全部或部分信息,但僅發(fā)送到鄰近結點上。從本質上來說,鏈路狀態(tài)算法將少量更新信息發(fā)送至網絡各處,而距離向量算法發(fā)送大量更新信息至鄰接路由器。 ——由于鏈路狀態(tài)算法收斂更快,因此它在一定程度上比距離向量算法更不易產生路由循環(huán)。但另一方面,鏈路狀態(tài)算法要求比距離向量算法有更強的CPU能力和更多的內存空間,因此鏈路狀態(tài)算法將會在實現時顯得更昂貴一些。
路由知識的相關文章:
1.路由器知識點大全
2.路由器知識全解
8.路由器有什么組成
9.路由器應用限制