1. 程式人生 > 實用技巧 >IPv6與IPv4報頭的比較

IPv6與IPv4報頭的比較

大家都知道,IPV6給我們的網路帶來的新的功能,在使用上面,它也具備了多種優勢。現在,我們針對IPv4IPV6報頭兩者的特點進行一個對比,因為IPV6報頭有很多的不同之處,現在我們細細的說一下。下面比較一下IPv4IPV6報頭。Version 欄位在兩種協議中沒有變化。IPV6 丟棄了 IPv4 的 Internet Header Length 、Identification 、Flags 、Fragment Offset 和 Header Checksum 欄位。Total Lenght 、Time to Live 和 Protocol 、Traffic Class欄位在 IPV6
中有了新名字,功能稍微進行了重新定義。IPv4中的 Option 欄位已從報頭中消失,改為 Extension 功能。最後,IPV6 加入了個新欄位:Flow Label 。分別介紹一下IPV6包的每個報頭欄位。 Version:Version 欄位的長度仍是4位,它指明瞭協議版本號。 Traffic Class:這個8位欄位可以為包賦予不同的類別或優先順序。它類似IPv4的Type of Service欄位,為差異化服務留有餘地。 Flow LabelFlow Label欄位是IPV6的新增欄位。源節點使用這個20位欄位,為特定序列的包請求特殊處理(效果好於盡力轉發)。實時資料傳輸如語音和視訊可以使用Flow Label欄位以確保QoS。 Payload Length
這個16位欄位表明了有效載荷長度。與IPv4包中的Total Length欄位不同,這個欄位的值並未算上40位的IPV6報頭。計算的只是報頭後面的擴充套件和資料部分的長度。因為該欄位長16位,所以能表示高達64KB的資料有效載荷。如果有效載荷更大,則由超大包(jumbogram)擴充套件部分表示。 Next Header:這個8位欄位類似IPv4中的Protocol欄位,但有些差異。在IPv4包中,傳輸層報頭如TCP或UDP始終跟在IP報頭後面。在IPV6中,擴充套件部分可以插在IP報頭和傳輸層報頭當中。這類擴充套件部分包括驗證、加密和分片功能。Next Header欄位表明了傳輸層報頭或擴充套件部分是否跟在
IPV6
報頭後面。 Hop Limit這個8位代替了IPv4中的TTL欄位。它在經過規定數量的路由段後會將包丟棄,從而防止了包被永遠轉發。包經過一個路由器,Hop Limit欄位的值就減少一個。IPv4使用了時值(time value),每經過一個路由段就從TTL欄位減去一秒。IPV6用段值(hop value)換掉了時值。 Source Address該欄位指明瞭始發主機的起始地址,其長度為128位。 Destination Address:該欄位指明瞭傳輸訊號的目標地址,其長度為128位。 網路人員可能會驚訝地發現校驗和與分片欄位從 IPV6報頭當中消失了。丟棄包的報頭校驗和是為了提高路由效率。雖然包報頭仍有可能出現錯誤,新協議的設計人員卻認為這種風險可以接受,尤其是考慮到IP層的上下層:資料鏈路層和傳輸層會檢查錯誤。 至於分片,IPV6 確實允許對包進行分割,但這過程在報頭的擴充套件部分而不是報頭本身進行。此外,IPV6包只能由源節點進行分割、目標節點進行重新組裝:不允許路由器介入進來對包進行分割或重新組裝。這種分片特性的目的在於降低傳輸中的處理開銷,而且假定如今網路的幀大小足夠大,大多數包不需要分片。如果非要分割IPV6包,源節點就會確定每條鏈路的最大傳輸單元(MTU)。一種辦法就是,向目標地址傳送一個測試包。如果測試包對某條鏈路來說太大,鏈路就返還一個因特網控制訊息協議(ICMP)訊息給源節點,源節點就相應減小包大小。 實現分片及其它選項功能的擴充套件機制是IPV6重新設計的一個重要特性。它取代了IPv4的Options欄位,這就增強了IPv4包的安全功能,並且豐富了源路由選擇。設計師不是把這種增強的功能新增到IPV6報頭當中,而是設計了可插在IP報頭和較高層協議報頭之間的擴充套件部分。這使沒有擴充套件部分的包處理起來更快,還提供了一系列可擴充選項,如加密、驗證、分片、源路由、段和目標選項等。正如前文所述,這些擴充套件部分計算在包頭的有效載荷長度裡面。