網絡測試技術tcp-ip包格式詳解_第1頁
網絡測試技術tcp-ip包格式詳解_第2頁
網絡測試技術tcp-ip包格式詳解_第3頁
網絡測試技術tcp-ip包格式詳解_第4頁
網絡測試技術tcp-ip包格式詳解_第5頁
已閱讀5頁,還剩33頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第講IPV4協議應用一、IP數據包格式(1)網絡字節序(big indian)(2)IP數據包 每個ip數據包都包含有一個頭部和一個正文部分,其中頭部又包含一個20字節的定長部分和一個可選的變長部分.數據包頭部的傳輸采用big-endian字節序. 1、頭部20字節分別記錄有版本(version) (占用4個bit位)取值為:IPv4: 4, IPv6: 6 。 2、 IHL(頭部長度,以字為單位,至少為5,最大為15,即可限制頭部長度為60字節,因此可選項最多為40字節)(4bit位), 3、服務類型(type of service)一共6個bit位,從左到右依次為一個3位的preceden

2、ce域,和4個標志D,T,R,C(延遲,吞吐量,可靠性,最小費用) 和一位保留位。接 下來是2個字節的總長度,最大長度為65535字節.該字段通常不使用。 4、包的總長度: 16位,最長為:65535, 實際上決定于MTU(最大傳輸單元),對以太網為1500字節。5、TTL域,存活周期,是一個限制分組生存期的計數器.計數時間為秒,一共占8位,所以最大生存期為255(秒/點)通常為64。當他遞減到0時,路由器給源主機發送一個警告分組,原分組被丟棄.這樣可以避免數據報長時間存在網絡中.TTL=8TTL=7TTL=6 6、標志(Identification)的用途 是讓目標主機確定一個新的數據段屬于

3、哪個數據包,同一個數據報的分段有相同的標志值.接下來是一個空的bit位, 后面是2個1位域,DF表示不分段, 而MF表示更多的分段,除最后一個分段外其他所有分段都要設這一位.因為接收方可以知道一個數據報的所由分段都已經到達了. 然后是13位的分段偏移,所以每個數據報最多有8192個分段.分片(Fragmentation)及重組MTU(Maximum Transfer Unit)MTU=1500MTU=1500MTU=576IP包,長度為768 DF = 0X.25或撥號線路以太網思考:如DF=1,怎么辦?分段數據(1400字節)分組頭MTU=620字節分組頭分組頭分組頭數據(600字節)數據(

4、600字節)數據200字節段偏移=0段偏移=75段偏移=150分片實例7、協議類型,可能是tcp,或者udp或者其他. 8、頭部校驗和,當數據到達時,頭部所有的16位累加起來,再取結果的補碼,其結果應該為0. 9、32位的源地址和32位的目標地址, 10、選項 選項長度可變,提供某些場合下需要的控制功能,IP首部的長度必須是4個字節的整數倍,如果選項長度不是4的整數倍,必須填充數據0。 選項都是以一個8位的選項開始的,每個選項由三部分組成:一個字節的選項碼、一個字節的長度、多個字節所構成的選項數據,長度由前一部分決定。不同的選項碼位的數字代表不同的意義,其代表意義如下: 第0位代表:拷貝類(C

5、opy)。用于控制網關對數據包分片時對本項的處理,“1”將本選項拷貝到所有的分片中;“0”僅將本選項拷貝第一個分片中。第1、2位代表:選項類(Option Class).第37位:目前定義了6種類型,其中如定義為00111代表記錄路由,該選項讓數據包把從源節點到目的節點所經過的各路由填上其IP地址.第講 ARP和RARP應用回顧以太網數據包發送格式如下: 在以太網中,上層運行的是IP協議, 當一臺主機把以太網數據幀發送到位于同一局域網上的另一臺主機時,是根據48 bit的以太網地址來確定目的接口的。即下層傳輸地址使用MAC地址表示。 我們使用SOCKET程序,只是關心IP地址。它們二者是怎樣相

6、對應呢? 地址解析為這兩種不同的地址形式提供映射:32 bit的IP地址和數據鏈路層使用的任何類型的地址。(ARP 和RARP)一:基本概念 ARP理論的基礎是:每個網絡接口有一個硬件地址(一個48 bit的值,標識不同的以太網或令牌環網絡接口)。在硬件層次上進行的數據幀交換必須有正確的接口地址。但是,TCP/IP有自己的地址:32 bit的IP地址。知道主機的IP地址并不能讓內核發送一幀數據給主機。內核(如以太網驅動程序)必須知道目的端的硬件地址才能發送數據。ARP的功能是在32 bitIP地址和采用不同網絡技術的硬件地址之間提供動態映射。 ARP為IP地址到對應的硬件地址之間提供動態映射。

7、這個過程一般應用程序會自動完成的,用戶并不知道。 RARP是被那些沒有磁盤驅動器的系統使用,它需要系統管理員進行手工設置。 地址轉換規程當鏈路層要封裝網絡層分組時,它需要知道目的物理地址。首先,每個主機都有ARP緩存,用來存放一些IP地址與MAC地址的對應關系。主機根據分組頭上的目的IP地址查閱自己的ARP緩存,如果沒查到,就用廣播地址發送ARP請求。被請求的IP地址所對應的主機返回一個ARP響應。主機收到響應后,就可發送數據幀,并將該IP地址與MAC地址對存放在ARP緩存中。Proxy ARP 如果目的IP地址是子網外的,顯然它不可能收到ARP請求,這時有兩種方案:路由器有ARP代理功能,它

8、代理子網外的主機響應ARP請求。主機通過識別目的IP地址的網絡號,知道它是子網外的主機,直接發給缺省路由器ROUTERStn.AStn.BStn.DStn.CMAC R1NET N1MAC R2NET N2Station B wants to send a frame to Station DOne Way Using Router with Proxy ARPStation B Arps for Station DRouter Proxy ARP responds with MAC address of R1Station B transmits frame with SourceMAC=M

9、B, SourceNetwork=N1B, DestinationMAC=R1, DestinationNetwork=N2DRouter forwards frame with SourceMAC=R2, SourceNetwork=N1B, DestinationMAC=MD, DestinationNetwork=N2DSecond Way Station knows R1 is the designated Router for N2三: ARP的分組格式 在以太網上解析IP地址時,ARP請求和回答分組的格式如圖所示。(ARP可以用于其它類型的網絡,可以解析IP地址以外的地址。緊跟著幀

10、類型字段的前四個字段指定了最后四個字段的類型和長度。) 以太網報頭中的前兩個字段是以太網的源地址和目的地址。目的地址為全1的特殊地址是廣播地址。電纜上的所有以太網接口都要接收廣播的數據幀。 2個字節長的以太網幀類型表示后面數據的類型。對于ARP請求或回答來說,該字段的值為0 x0806。 形容詞hardware(硬件)和protocol(協議)用來描述ARP分組中的各個字段。例如,一個ARP請求分組詢問協議地址(這里是IP地址)對應的硬件地址(這里是以太網地址)。 硬件類型字段表示硬件地址的類型。它的值為1即表示以太網地址。協議類型字段表示要映射的協議地址類型。它的值為0 x0800即表示IP

11、地址。它的值與包含IP數據報的以太網數據幀中的類型字段的值相同,這是有意設計的。 接下來的兩個1字節的字段,硬件地址長度和協議地址長度分別指出硬件地址和協議地址的長度,以字節為單位。對于以太網上IP地址的ARP請求或回答來說,它們的值分別為6和4。 操作字段指出四種操作類型,它們是ARP請求(值為1),ARP回答(值為2),RARP請求(值為3),RARP回答(值為4)。這個字段必需的,因為ARP請求和ARP回答的幀類型字段值是相同的。 接下來的四個字段是發送端的硬件地址(在本例中是以太網地址),發送端的協議地址(IP地址),目的端的硬件地址,目的端的協議地址。注意,這里有一些重復信息:在以太

12、網的數據幀報頭中和ARP請求數據幀中都有發送端的硬件地址。 對于一個ARP請求來說,除目的端硬件地址外的所有其他的字段都有填充值。當系統收到一份目的端為本機的ARP請求報文后,它就把硬件地址填進去,然后用兩個目的端地址分別替換兩個發送端地址,并把操作字段置為2,最后把它發送回去。物理幀頭 DLC Header字段長度(Byte)默認值備注接收方MAC6廣播時,為 ff-ff-ff-ff-ff-ff發送方MAC6Ethertype20 x08060 x0806是ARP幀的類型值ARP幀的格式 字段長度(Byte)默認值備注硬件類型20 x1以太網類型值上層協議類型20 x0800上層協議為IP協

13、議MAC地址長度10 x6以太網MAC地址長度為 6IP地址長度10 x4IP地址長度為 4操作碼20 x1表示ARP請求包,0 x2表示應答包發送方MAC6發送方IP4接收方MAC6接收方IP4填充數據18因為物理幀最小長度為64字節,前面的42字節再加上4個CRC校驗字節,還差18個字節ARP包的填充 電腦MAC地址為 aa-aa-aa-aa-aa-aa,IP為 192.168.0.1我們想要查詢 192.168.0.99的MAC地址,應該怎么來做呢?請求包DLC Header字段長度(Byte)填充值接收方MAC6ffffffffffff發送方MAC6aaaaaaaaaaaaEthert

14、ype20 x0806 ARP Frame字段長度(Byte)填充值硬件類型21上層協議類型20800MAC地址長度16IP地址長度14操作碼21發送方MAC6aaaaaaaaaaaa發送方IP4192.168.0.1接收方MAC6任意值 xxxxxxxxxxxx接收方IP4192.168.0.99填充數據180響應包 DLC Header字段長度(Byte)填充值接收方MAC6bbbbbbbbbbbb發送方MAC6aaaaaaaaaaaaEthertype20 x0806ARP Frame字段長度(Byte)填充值硬件類型21上層協議類型20800MAC地址長度16IP地址長度14操作碼22發送方MAC6aaaaaaaaaaaa發送方IP4192.168.0.1接收方MAC6bbbbbbbbbbbb接收方IP4192.168.0.99填充數據180四:ARP高速緩存 ARP高效運行的關鍵是由于每個主機上都有一個ARP高速緩存。這個高速緩存存放了最近Internet地址到硬件地址之間的映射記錄。高速緩存中每一項的生存時間一般為20分鐘,起始時間

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論