找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3490|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

IPV4和IPV6報文頭比較

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:99624 發(fā)表于 2015-12-27 03:25 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
IPV4報文頭格式及各字段功能
  • 圖示


  • 各字段功能
    • 版本號(Version):長度4比特。標(biāo)識目前采用的IP協(xié)議的版本號。一般的值為0100(IPv4),0110(IPv6)
    • IP包頭長度(HeaderLength):長度4比特。這個字段的作用是為了描述IP包頭的長度,因為在IP包頭中有變長的可選部分。該部分占4個bit位,單位為32bit(4個字節(jié)),即本區(qū)域值=IP頭部長度(單位為bit)/(8*4),因此,一個IP包頭的長度最長為“1111”,即15*4=60個字節(jié)。IP包頭最小長度為20字節(jié)。
    • 服務(wù)類型(Typeof Service):長度8比特。8位 按位被如下定義 PPP DTRC0
      • PPP:定義包的優(yōu)先級,取值越大數(shù)據(jù)越重要
        • 000 普通(Routine)
        • 001 優(yōu)先的(Priority)
        • 010 立即的發(fā)送(Immediate)
        • 011 閃電式的(Flash)
        • 100 比閃電還閃電式的 (FlashOverride)
        • 101CRI/TIC/ECP(找不到這個詞的翻譯)
        • 110 網(wǎng)間控制 (InternetworkControl)
        • 111 網(wǎng)絡(luò)控制 (NetworkControl)
      • DTRCO
        • D時延: 0:普通 1:延遲盡量小
        • T吞吐量: 0:普通 1:流量盡量大
        • R可靠性: 0:普通 1:可靠性盡量大
        • M傳輸成本: 0:普通 1:成本盡量小
        • 0最后一位被保留,恒定為0
    • IP包總長(TotalLength):長度16比特。 以字節(jié)為單位計算的IP包的長度(包括頭部和數(shù)據(jù)),所以IP包最大長度65535字節(jié)。
    • 標(biāo)識符(Identifier):長度16比特。該字段和Flags和FragmentOffest字段聯(lián)合使用,對較大的上層數(shù)據(jù)包進(jìn)行分段(fragment)操作。路由器將一個包拆分后,所有拆分開的小包被標(biāo)記相同的值,以便目的端設(shè)備能夠區(qū)分哪個包屬于被拆分開的包的一部分。
    • 標(biāo)記(Flags):長度3比特。該字段第一位不使用。第二位是DF(Don'tFragment)位,DF位設(shè)為1時表明路由器不能對該上層數(shù)據(jù)包分段。如果一個上層數(shù)據(jù)包無法在不分段的情況下進(jìn)行轉(zhuǎn)發(fā),則路由器會丟棄該上層數(shù)據(jù)包并返回一個錯誤信息。第三位是MF(MoreFragments)位,當(dāng)路由器對一個上層數(shù)據(jù)包分段,則路由器會在除了最后一個分段的IP包的包頭中將MF位設(shè)為1。
    • 片偏移(FragmentOffset):長度13比特。表示該IP包在該組分片包中位置,接收端靠此來組裝還原IP包。
    • 生存時間(TTL):長度8比特。當(dāng)IP包進(jìn)行傳送時,先會對該字段賦予某個特定的值。當(dāng)IP包經(jīng)過每一個沿途的路由器的時候,每個沿途的路由器會將IP包的TTL值減少1。如果TTL減少為0,則該IP包會被丟棄。這個字段可以防止由于路由環(huán)路而導(dǎo)致IP包在網(wǎng)絡(luò)中不停被轉(zhuǎn)發(fā)。
    • 協(xié)議(Protocol):長度8比特。標(biāo)識了上層所使用的協(xié)議。以下是比較常用的協(xié)議號:1ICMP;2IGMP;6TCP;17UDP;88IGRP;89OSPF
    • 頭部校驗(HeaderChecksum):長度16位。用來做IP頭部的正確性檢測,但不包含數(shù)據(jù)部分。因為每個路由器要改變TTL的值,所以路由器會為每個通過的數(shù)據(jù)包重新計算這個值。
    • 起源和目標(biāo)地址(Sourceand DestinationAddresses):這兩個地段都是32比特。標(biāo)識了這個IP包的起源和目標(biāo)地址。要注意除非使用NAT,否則整個傳輸?shù)倪^程中,這兩個地址不會改變。
    • 可選項(Options):這是一個可變長的字段。該字段屬于可選項,主要用于測試,由起源設(shè)備根據(jù)需要改寫?蛇x項目包含以下內(nèi)容:
      • 松散源路由(Loosesourcerouting):給出一連串路由器接口的IP地址。IP包必須沿著這些IP地址傳送,但是允許在相繼的兩個IP地址之間跳過多個路由器。
      • 嚴(yán)格源路由(Strictsourcerouting):給出一連串路由器接口的IP地址。IP包必須沿著這些IP地址傳送,如果下一跳不在IP地址表中則表示發(fā)生錯誤。
      • 路由記錄(Recordroute):當(dāng)IP包離開每個路由器的時候記錄路由器的出站接口的IP地址。
      • 時間戳(Timestamps):當(dāng)IP包離開每個路由器的時候記錄時間。
      • 填充(Padding):因為IP包頭長度(HeaderLength)部分的單位為32bit,所以IP包頭的長度必須為32bit的整數(shù)倍。因此,在可選項后面,IP協(xié)議會填充若干個0,以達(dá)到32bit的整數(shù)倍。

  • IPV6報文頭格式及各字段功能

    • 圖示

    • 各字段功能
      • Version:4比特,值為6表示IPv6報文
      • TrafficClass:8比特,類似于IPv4中的TOS域
      • FlowLabel:20比特。IPv6中新增。流標(biāo)簽可用來標(biāo)記特定流的報文,以便在網(wǎng)絡(luò)層區(qū)分不同的報文。轉(zhuǎn)發(fā)路徑上的路由器可以根據(jù)流標(biāo)簽來區(qū)分流并進(jìn)行處理。由于流標(biāo)簽在IPv6報文頭中攜帶,轉(zhuǎn)發(fā)路由器可以不必根據(jù)報文內(nèi)容來識別不同的流,目的節(jié)點也同樣可以根據(jù)流標(biāo)簽識別流,同時由于流標(biāo)簽在報文頭中,因此使用IPSec后仍然可以根據(jù)流標(biāo)簽進(jìn)行QoS處理。
      • PayloadLength:16比特。以字節(jié)為單位的IPv6載荷長度,也就是IPv6報文基本頭以后部分的長度(包括所有擴(kuò)展頭部分)。
      • NextHeader:8比特。用來標(biāo)識當(dāng)前頭(基本頭或擴(kuò)展頭)后下一個頭的類型。此域內(nèi)定義的類型與IPv4中的協(xié)議域值相同。Pv6定義的擴(kuò)展頭由基本頭或擴(kuò)展頭中的擴(kuò)展頭域鏈接成一條鏈。這一機(jī)制下處理擴(kuò)展頭更高效,轉(zhuǎn)發(fā)路由器只處理必須處理的選項頭,提高了轉(zhuǎn)發(fā)效率。
      • HopLimit:8比特。和IPv4中的TTL字段類似。每個轉(zhuǎn)發(fā)此報文的節(jié)點把此域減1,如果此域值減到0則丟棄。
      • SourceAddress:128比特。報文的源地址。
      • DestinationAddress:128比特。報文的目的地址
    • IPv6報文擴(kuò)展頭格式
      • IPv6選項字段是通過形成鏈?zhǔn)浇Y(jié)構(gòu)的擴(kuò)展頭支持的。IPv6基本頭后面可以有0到多個擴(kuò)展頭。
      • IPv6擴(kuò)展頭排列順序如下:
        • 逐跳選項頭,值為0(在IPv6基本頭中定義)。此選項頭被轉(zhuǎn)發(fā)路徑所有節(jié)點處理。目前在路由告警(RSVP和MLDv1)與Jumbo幀處理中使用了逐跳選項頭。路由告警需要通知到轉(zhuǎn)發(fā)路徑中所有節(jié)點,需要使用逐跳選項頭。Jumbo幀是長度超過65535的報文,傳輸這種報文需要轉(zhuǎn)發(fā)路徑中所有節(jié)點都能正常處理,因此也需要使用逐跳選項頭功能。
        • 目的選項頭,值為60。只可能出現(xiàn)在兩個位置:路由頭前,這時此選項頭被目的節(jié)點和路由頭中指定的節(jié)點處理;上層頭前(任何ESP選項后),此時只能被目的節(jié)點處理。MobileIPv6中使用了目的選項頭。MobileIPv6中新增加一種類型的目的選項頭(家鄉(xiāng)地址選項)。家鄉(xiāng)地址選項由目的選項頭攜帶,用于移動節(jié)點離開家鄉(xiāng)后通知接收節(jié)點此移動節(jié)點對應(yīng)的家鄉(xiāng)地址。接收節(jié)點收到帶有家鄉(xiāng)地址選項的報文后,會把家鄉(xiāng)地址選項中源地址(移動節(jié)點的家鄉(xiāng)地址)和報文中源地址(移動節(jié)點的轉(zhuǎn)交地址)交換,這樣上層協(xié)議始終認(rèn)為是在和移動節(jié)點的家鄉(xiāng)地址在通信,實現(xiàn)了移動漫游功能。
        • 路由頭,值為43。用于源路由選項和Mobile IPv6。
        • 分片頭,值為44。此選項頭在源節(jié)點發(fā)送的報文超過PathMTU(源和目的之間傳輸路徑的MTU)時對報文分片時使用。
        • 驗證頭(AH頭),值為51。用于IPSec,提供報文驗證、完整性檢查。定義和IPv4中相同。
        • 封裝安全載荷頭(ESP頭),值為50。用于IPSec,提供報文驗證、完整性檢查和加密。定義和IPv4中相同。
        • 上層頭,上層協(xié)議頭,如TCP/UDP/ICMP等,目的選項頭最多出現(xiàn)兩次(一次在路由頭前,一次在上層協(xié)議頭前),其它選項頭最多出現(xiàn)一次。但I(xiàn)Pv6節(jié)點必須能夠處理選項頭(逐跳選項頭除外,它固定只能進(jìn)隨基本頭之后)的任意出現(xiàn)位置和任意出現(xiàn)次數(shù),以保證互通性。
  • IPV6與IPV4比較
    • 區(qū)別
      • IPV4中的headerlength(4),Identifier(16),Flags(3),Framentedoffset(13),Options(Length variable,used fortest),Padding這些項都沒有了,因為IPV6的報文頭長度是固定的,只保留了最重要的功能,而對于一些非關(guān)鍵性的功能,IPV6放在了擴(kuò)展報頭中去實現(xiàn)
    • 整體來講:IPV6的整體設(shè)計回歸簡潔,設(shè)計更加透明

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表