1. 程式人生 > >計網——網路層

計網——網路層

一.概況

1.網路層(IP層)功能

  功能:使異構網路實現互聯。(通過中間裝置聯接多個計算機網路)

  中間裝置又稱為中繼系統,網路層的中繼系統是路由器。

  路由器是一臺專用計算機,用於在網際網路中進行路由選擇。

  參與互聯的計算機網路都使用相同的網際協議IP( internet Protocol ).

2.路由與轉發

  路由器主要功能有兩個:1.路由選擇(確定路徑)2.分組轉發(當一個分組到達時所採取的動作,將IP資料報從合適的埠轉發出去)。

3.擁塞控制

  通訊子網中,由於出現過量的分組而引起網路效能下降的現象稱為擁塞。

或者:網路中存在太多的資料包導致資料包被延遲或丟失,從而降低了傳輸效能,這種情況叫做擁塞。

  目的:確保子網能承載所達到的流量。

  我們要對子網進行擁塞控制。關鍵再與如何獲取網路中發生擁塞的資訊,從而利用這些資訊進行控制。

  擁塞控制的途徑:增加資源或者減少負載。

  擁塞控制的方法:

   1) 開環控制:在設計網路時,事先將有關發生擁塞的因素考慮進去,力求網路在工作時不產生擁塞。是一種靜態的預防方法。一旦整個系統啟動並行,中途不再修改。所有的控制手段的共性是:做決定時不考慮當前網路的狀態,都是提前定好的。

   2) 閉環控制:事先不考慮有關發生擁塞的各種因素,採用監測網路系統去監視,即使檢測到哪裡發生擁塞,然後將擁塞資訊傳到合適的地方,以便調整網路系統的執行並解決出現的問題。閉環控制是基於反饋環路的概念,是一種動態的方法。

4.流量控制和擁塞控制的區別:

  (產生原因不同,目的不同,全域性性不同,發生的層不同?)

  流量控制往往是指在傳送端和接收端之間的點對點通訊量的控制。目的是抑制傳送端傳送資料的速率,以便接收端來得及接收。

  擁塞控制是確保子網能夠承載所達到的流量,是一個全域性性的問題。

二. 路由演算法

1.  通過演算法得到路由表,根據路由錶轉發分組。

  演算法分為兩類:靜態路由演算法和動態路由演算法(通過相互聯接的路由器之間彼此交換資訊,然後按照一定的演算法優化出來)。

2.動態路由演算法

 1)距離-向量路由演算法,Distance-vector routing algorithm

  在此演算法中,所有的結點都定期地將他們的整個路由選擇表傳送給所有與之直接相鄰的結點。這種路由選擇表包含:每條路徑的目的地和路徑的距離。

  結點在下列情況下更新自己的路由表:

   1.被告知一條新的路由,該路由在本節點的路由表中不存在,此時本地系統加入這條新路由。

   2.傳送來的路由資訊中有一條到達某個目的地的路由,該路由比當前來使用的路由有較短的距離(用hop,跳數來作為距離的度量)。此時,就用經過傳送路由資訊的節點的新路由來替換路由表中達到哪個目的地的現有路由。

  distance-vector 演算法實質是迭代計算一條路由中的站段數或延遲時間,從而得到到達一個目標的最短路徑。它要求每個節點在每次更新中都將它的全部路由表傳送給其所有相鄰節點。顯然,更新報文的大小與通訊子網的節點個數成正比,打的通訊子網將導致很大的更新報文。由於更新報文發給直接臨接的節點,所以所有的節點都將參加路由選擇資訊交換。基於這些原因,在通訊子網上傳送的路由選擇資訊的數量很容易變得非常大。


 2)鏈路狀態路由演算法,Link state routing

  鏈路狀態路由演算法要求每個參與該演算法的節點都有完全的網路拓撲資訊,他們執行下述任務: 

   1)發現它的鄰居節點,並瞭解其網路地址。

   2)設定到每個鄰居節點的距離或者成本度量值

   3)構造一個包含所有剛剛獲知的鏈路資訊包。

   4)將這個包傳送給所有其他的路由器,並接收來自其他路由器的資訊包。

   5)計算出到每個其他路由器的最短路徑。

  實際上,演算法將完整的拓撲結構分發給了每個路由器,然後每個路由器執行Dijdstra演算法就可以找到從本地到每一個其他路由器的最短路徑。