1. 程式人生 > >IP資料報及其路由表

IP資料報及其路由表

IP資料報格式
16位標識      IP軟體在儲存器中維持一個計數器,每產生一個數據報,計數器就加1,並將此值賦給標識欄位,但此標識並不是序號,因為IP是無連線服務,資料報不存在按序接受的問題。當資料報由於長度超過網路的MTU( MTU最大傳輸單元:資料幀中的有效載荷的最大長度,不包括首部的長度,若大於MTU,則需要分片,分片是由IP層完成的。組裝也是由IP層自行完成。)而必須分片時,這個標識欄位的值就被複制到所有的資料報片的標識欄位中,相同的標識欄位的值使分片的各資料報片最後能正確的重灌成為原來的資料報。

3位標誌      1、標誌欄位的最高位必須為0,該位必須複製到所有分組中。      2、標誌欄位的中間一位:DF(Don't  Fragment),意為“不能分片”,當分組的長度超過MTU時又不可以分片,則丟棄,只有當DF為0時才允許分片。      3、標誌欄位的最低位:MF,當MF為1時,表示接受的分片不是最後一個分片,後邊還有分片的資料報,為0時表示這已經是若干資料報片中的最後一個。
片偏移(13位)
     較長的分組在分片後,某片在原分組中的相對位置,也就是說,相對於使用者資料欄位的起點,該片從何處開始。片偏移以8位元組為偏移單位。即每個分片的長度一定是8位元組(64位)的整數倍。
分片      當IP分組長度大於資料鏈路層MTU時,就必須對IP進行分片。
組裝      分組後資料報可能通過不同的傳輸路勁到達目的主機。屬於同一個分組的不同片到達時會出現亂序,或者與其他的分組混合在一起。首先,根據標識欄位將屬於同一分組的所有片挑出來,主機在第一個分片到達時分配一個儲存緩衝區,當資料報的後序分片到達時,資料根據片移位被複制到緩衝區儲存器中的指定位置,當所有的分片到達時,原始資料報就恢復了。

     例如:一資料報的總長度為3820位元組,其資料部分為3800位元組(使用固定首部)。需要分片為長度不超過1420位元組的資料報片。因固定首部長度為20位元組,因此每個資料報片的資料部分不能超過1400位元組。於是分為3個數據報片,其資料部分的長度分別為1400、1400和1000位元組。原始資料首部被複製為各資料報片的首部。但必須修改有關欄位的值。如下圖給出分片後的結果:

路由表:      路由表是由很多路由條目組成的,每個條目都指明去往某個網路的資料包應該由那個介面傳送,其中最後一個是預設路由條目。      注意:路由表僅指定從該路由器到目的路勁上的下一步,而不知道到達目的地的完整路勁。
路由條目      路由表中的一行,每一個條目只要有路由的網路地址,子網掩碼,下一跳地址,傳送介面4部分組成。如果要傳送的資料包的目的網路地址匹配路由表中的一行,就按規定傳送到下一跳地址。
預設路由      路由表中的最後一行,主要由下一跳地址和傳送介面兩部分組成,當目的地址與路由表其他行都不匹配時,就按預設路由條目規定的介面傳送下一跳地址。
路由資訊協議 利用向量-距離演算法
特點      1、僅和相鄰的路由器交換資訊。不相鄰的路由器不交換資訊。      2、路由器交換的資訊是當前本路由器所知道的全部資訊。即自己的路由表。      3、按固定時間交換路由資訊,如:每隔30秒,然後路由器根據收到的路由資訊更新路由表。
     路由資訊協議的”距離“也稱為”跳數“,因為每經過一個路由器,跳數就就加1。路由資訊協議認為好的路由就是他通過的路由器數目最少,即距離最短。它允許一條路勁最多隻能包含15個路由器,因此距離為16時就相當於不可達。可見此協議只適用於小型網路。