




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、9/9實驗五 使用Wireshark分析TCP協(xié)議一、實驗?zāi)康姆治鯰CP協(xié)議二、實驗環(huán)境與因特網(wǎng)連接的計算機,操作系統(tǒng)為Windows,安裝有Wireshark、IE等軟件。三、實驗步驟1、TCP介紹(1)連接建立:TCP連接通過稱為三次握手的三條報文來建立的。在Wireshark中選擇open-file,選擇文件tcp_pcattcp_n1.cap,其中分組3到5顯示的就是三次握手。第一條報文沒有數(shù)據(jù)的TCP報文段,并將首部SYN位設(shè)置為1。因此,第一條報文常被稱為SYN分組。這個報文段里的序號可以設(shè)置成任何值,表示后續(xù)報文設(shè)定的起始編號。連接不能自動從1開始計數(shù),選擇一個隨機數(shù)開始計數(shù)可避
2、免將以前連接的分組錯誤地解釋為當前連接的分組。觀察分組3,Wireshark顯示的序號是0。選擇分組首部的序號字段,原始框中顯示“94 f2 2e be”。Wireshark顯示的是邏輯序號,真正的初始序號不是0。如圖1所示:圖:邏輯序號與實際初始序號SYN分組通常是從客戶端發(fā)送到服務(wù)器。這個報文段請求建立連接。一旦成功建立了連接,服務(wù)器進程必須已經(jīng)在監(jiān)聽SYN分組所指示的IP地址和端口號。如果沒有建立連接,SYN分組將不會應(yīng)答。如果第一個分組丟失,客戶端通常會發(fā)送若干SYN分組,否則客戶端將會停止并報告一個錯誤給應(yīng)用程序。如果服務(wù)器進程正在監(jiān)聽并接收到來的連接請求,它將以一個報文段進行相應(yīng),
3、這個報文段的SYN位和ACK位都置為1。通常稱這個報文段為SYNACK分組。SYNACK分組在確認收到SYN分組的同時發(fā)出一個初始的數(shù)據(jù)流序號給客戶端。分組4的確認號字段在Wireshark的協(xié)議框中顯示1,并且在原始框中的值是“94 f2 2e bf”(比“94 f2 2e be”多1)。這解釋了TCP的確認模式。TCP接收端確認第X個字節(jié)已經(jīng)收到,并通過設(shè)置確認號為X+1來表明期望收到下一個字節(jié)號。分組4的序號字段在Wireshark的協(xié)議顯示為0,但在原始框中的實際值卻是“84 ca be b3”最后,客戶端發(fā)送帶有標志ACK的TCP報文段,而不是帶SYN的報文段來完成三次握手的過程。這
4、個報文段將確認服務(wù)器發(fā)送的SYNACK分組,并檢查TCP連接的兩端是否正確打開合運行。(2)關(guān)閉連接當兩端交換帶有FIN標志的TCP報文段并且每一端都確認另一端發(fā)送的FIN包時,TCP連接將會關(guān)閉。FIN位字面上的意思是連接一方再也沒有更多新的數(shù)據(jù)發(fā)送。然而,那些重傳的數(shù)據(jù)會被傳送,直到接收端確認所有的信息。在tcp_pcattcp_n1.cap中,通過分組13至16我們可以看到TCP連接被關(guān)閉。2、TCP重傳當一個TCP發(fā)送端傳輸一個報文段的同時也設(shè)置了一個重傳計時器。當確認到達時,這個計時器就自動取消。如果在數(shù)據(jù)的確認信息到達之前這個計時器超時,那么數(shù)據(jù)就會重傳。重傳計時器能夠自動靈活設(shè)置
5、。最初TCP是基于初始的SYN和SYN ACK之間的時間來設(shè)置重傳計時器的。它基于這個值多次設(shè)置重傳計時器來避免不必要的重傳。在整個TCP連接中,TCP都會注意每個報文段的發(fā)送和接到相應(yīng)的確認所經(jīng)歷的時間。TCP在重傳數(shù)據(jù)之前不會總是等待一個重傳計算器超時。TCP也會把一系列重復(fù)確認的分組當作是數(shù)據(jù)丟失的征兆。在Wireshark中選擇file-open,打開文件pcattcp_retrans_t.cap和pcattcp_retrans_r.cap,對所俘獲的分組進行分析如下:SACK選項協(xié)商在上面的每次跟蹤中,我們能觀察建立連接的三次握手。在SYN分組中,發(fā)送端在TCP的首部選項中通過包括S
6、ACK permitted選項來希望使用TCPSACK。在SYN ACK包中接收端表示愿意使用SACK。這樣雙方都同意接收選擇性確認信息。SACK選項如圖2所示:圖2:SACK選項在TCP SACK選項中,如果連接的一端接收了失序數(shù)據(jù),它將使用選項區(qū)字段來發(fā)送關(guān)于失序數(shù)據(jù)起始和結(jié)束的信息。這樣允許發(fā)送端僅僅重傳丟失的數(shù)據(jù)。TCP接收端不能傳遞它們接收到的失序數(shù)據(jù)給處于等待狀態(tài)的應(yīng)用程序,因為它總是傳遞有序數(shù)據(jù)。因此,接收到的失序數(shù)據(jù)要么被丟掉,要么被存儲起來。接收端的存儲空間是有限的,TCP發(fā)送端必須保存一份已發(fā)送的數(shù)據(jù)的副本,以防止數(shù)據(jù)需要重發(fā)。發(fā)送端必須保存數(shù)據(jù)直到它們收到數(shù)據(jù)的確認信息為
7、止。接收端通常會分配一個固定大小的緩沖區(qū)來存儲這些失序數(shù)據(jù)和需要等待一個應(yīng)用程序讀取的數(shù)據(jù)。如果緩沖區(qū)空間不能容納下更多數(shù)據(jù),那么接收端只有將數(shù)據(jù)丟棄,即使它是成功到達的。接收端的通知窗口字段用來通知發(fā)送端還有多少空間可以用于輸入數(shù)據(jù)。如果數(shù)據(jù)發(fā)送的速度快于應(yīng)用程序處理數(shù)據(jù)的速度,接收端就會發(fā)送一些信息來告知發(fā)送端其接收窗口正在減小。在這個跟蹤文件中,接收端通知窗口的大小是變化的,從16520個字節(jié)到17520個字節(jié)。TCP發(fā)送端在發(fā)送之前有一個容納數(shù)據(jù)的有限空間。然而,和接收端不同的是,發(fā)送端是限制自己的發(fā)送速率。如果緩沖區(qū)的空間滿了,嘗試寫入更多數(shù)據(jù)的應(yīng)用程序?qū)⒈蛔枞钡接懈嗟目臻g可以利
8、用為止。(2)分組的丟失與重傳用顯示過濾器tcp.analysis.retransmission搜索重傳。在pcattcp_retrans_t.cap中應(yīng)用該過濾器,在這個跟蹤文件中,我們看見分組12是這9次重傳的第一次。如圖所示3:圖3:pcattcp_retrans_t.cap中次重傳通過觀察分組12的細節(jié),我們發(fā)現(xiàn)序號是1001,我們發(fā)現(xiàn)分組5也有同樣的序號。有趣的是,分組5是對1001到2460號字節(jié)的傳輸,而分組12卻是對1001到2000號字節(jié)的重傳。分組20是對2001到2460號字節(jié)的重傳。分組4是對1到1000號字節(jié)的傳輸,分組5是對1001到2460號字節(jié)的傳輸,分組7是對
9、2461到3920號字節(jié)的傳輸。我們已檢查了發(fā)送端上獲取的所有跟蹤記錄。我們從接收端的角度來看同一個連接,我們會發(fā)現(xiàn)有些不同。在pcattcp_retrans_r.cap中,我們發(fā)現(xiàn)1到1000號字節(jié)是在分組4里被傳送的,而2461到3920號字節(jié)是在分組6(而不是分組7)中被傳送的。在這個跟蹤文件中,分組5是1到1000號字節(jié)的確認。我們沒有看到1001到2460號字節(jié)的傳輸。但是他們確實被傳輸送了,只是在發(fā)送端和接收端的某個環(huán)節(jié)丟失了。現(xiàn)在我們來看接收端是如何處理這些丟失字節(jié)的。在分組4達到以后,接收端會以確認號1001(分組5)作為響應(yīng)。在分組6的2461到3920號字節(jié)達到之后,接收端
10、仍然以確認號1001(分組7)作為響應(yīng)。即使它接到的是附加數(shù)據(jù),確認號仍然是它期望收到的下一個有序字節(jié)的序號。同樣在含有3921到5381號字節(jié)的分組8到達之后,接收端仍然以1001響應(yīng)。最后,1001到2000號字節(jié)被重傳。在這兩次跟蹤中,我們都在分組12里看到這種情況。于是接收端增加它的確認號到2001。最終2001到2460號字節(jié)被重傳。在這次重傳之后,接收端可以立即從確認字節(jié)2001跳到確認字節(jié)11221。四、實驗報告內(nèi)容在實驗的基礎(chǔ)上,回答以下問題:客戶服務(wù)器之間用于初始化TCP連接的TCP SYN報文段的序號(sequence number)是多少?在該報文段中,是用什么來標識該報文段是SYN報文段的?服務(wù)器向客戶端發(fā)送的SYNACK報文段序號是多少?該報文段中,ACKnowledgement字段的值是多少?找出pcattcp_retrans_t.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二年級下冊數(shù)學教案-1.4《分草莓》北師大版
- 2025年合伙終止合同模板
- Unit 5 animal friends Lesson 5 教學設(shè)計 2024-2025學年冀教版(2024)七年級英語上冊
- 《山坡羊 潼關(guān)懷古》歷年中考古詩欣賞試題匯編(截至2022年)
- 2025年河南對外經(jīng)濟貿(mào)易職業(yè)學院單招職業(yè)技能測試題庫附答案
- 2024年兩系雜交水稻新組合項目資金籌措計劃書代可行性研究報告
- 2025年貴陽職業(yè)技術(shù)學院單招職業(yè)技能測試題庫一套
- 2025年呼倫貝爾職業(yè)技術(shù)學院單招職業(yè)技能測試題庫新版
- 2025年哈爾濱傳媒職業(yè)學院單招職業(yè)技能測試題庫含答案
- 2025年度文化旅游景區(qū)門面房屋出售及文創(chuàng)產(chǎn)品開發(fā)合同
- 工廠物料損耗狀況和人為因素和差異清查步驟與方法講解培訓(xùn)課件
- 虛擬化技術(shù)故障排除
- 中醫(yī)護理技術(shù)-麥粒灸 懸灸 穴位注射-培訓(xùn)課件
- 燒掉數(shù)學書:重新發(fā)明數(shù)學
- 腹腔鏡胃癌根治術(shù)護理教學查房
- 員工調(diào)薪申請單模板
- 【茶道】宋代點茶道詳解
- 初中語文短語練習(附參考答案)
- 電影篇(二)蒙太奇課件
- MBTI職業(yè)性格測試(可直接使用)
- 2023年副主任醫(yī)師(副高)-推拿學(副高)考試參考題庫有答案
評論
0/150
提交評論