網絡TCPIP傳輸層協(xié)議分析_第1頁
網絡TCPIP傳輸層協(xié)議分析_第2頁
網絡TCPIP傳輸層協(xié)議分析_第3頁
網絡TCPIP傳輸層協(xié)議分析_第4頁
網絡TCPIP傳輸層協(xié)議分析_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

網絡TCPIP傳輸層協(xié)議分析TCP/IP的傳輸層有兩個協(xié)議,即:傳輸控制協(xié)議TCP(TransmissionControlProtocal)和用戶數據報(UserDatagramProtocol)。在TCP體系中,根據所使用的協(xié)議是TCP或UDP,傳輸的數據單元分別稱之為TCP報文段或UDP數據報。TCP提供面向連接的可靠的傳輸服務。在傳輸數據之前必須建立連接,數據傳送結束后釋放連接。因此,不可避免地增加了很多開銷,如確認、流量控制、計時器以及連接管理等。這樣不僅使協(xié)議數據單元的首部加長,還要占用許多處理器資源。UDP在傳輸數據前不需要建立連接,遠程主機的傳輸層在收到UDP數據報后不需要提供任何確認信息。雖然UDP提供的是一種不可靠的傳輸服務,但在某些請況下,UDP是一種有效率的工作方式。在一臺主機上,常常有多個應用程序運行,為了區(qū)分一臺主機上的多個應用程序,TCP/IP協(xié)議中引入了端口的概念。每個端口都有一個16位的標志符,這個標志符被稱為端口號,TCP和UDP都有自己的端口號。5.1TCP協(xié)議分析實驗1.TCP協(xié)議介紹TCP是傳輸控制協(xié)議(TransmissionControlProtocal)的縮寫,提供面向連接的可靠的傳輸服務。在TCP/IP體系中,HTTP、FTP、SMTP等協(xié)議都是使用TCP傳輸方式的。(1)TCP報文格式圖28TCP報文段格式TCP報文分為首部和數據兩個部分。如圖28所示,TCP報文段首部的前20字節(jié)是固定的,后面有4×n字節(jié)是可選項。其中:*源端口和目的端口:各2字節(jié),用于區(qū)分源端和目的端的多個應用程序;*序號:4字節(jié),指本報文段所發(fā)送的數據的第一字節(jié)的序號;*確認序號:4字節(jié),是期望下次接收的數據的第一字節(jié)的編號,表示該編號以前的數據已安全接收。*數據偏移:4位,指數據開始部分距報文段開始的距離,即報文段首部的長度,以32bit為單位。*標志字段:共有六個標志位:①緊急位URG=1時,表明該報文要盡快傳送,緊急指針啟用;②確認位ACK=1時,表頭的確認號才有效;ACK=0,是連接請求報文;③急迫位PSH=1時,表示請求接收端的TCP將本報文段立即傳送到其應用層,而不是等到整個緩存都填滿后才向上傳遞;④復位位RST=1時,表明出現了嚴重差錯,必須釋放連接,然后再重建連接;⑤同步位SYN=1時,表明該報文段是一個連接請求或連接響應報文,⑥終止位FIN=1時,表明要發(fā)送的字符串已經發(fā)送完畢,并要求釋放連接。*窗口:2字節(jié),指該報文段發(fā)送者的接收窗口的大小,單位為字節(jié);*校驗和:2字節(jié),對報文的首部和數據部分進行校驗;*緊急指針:2字節(jié),指明本報文段中緊急數據的最后一個字節(jié)的序號,和緊急位URG配合使用;*選項:長度可變,若該字段長度不夠四字節(jié),有填充補齊。(2)TCP連接的建立TCP連接的建立采用“三次握手”的方法。一般情況下,雙方連接的建立由其中一方發(fā)起。如圖29(a)所示:*主機A首先向主機B發(fā)出連接請求報文段,其首部的SYN同步位為1,同時選擇一個序號x;*主機B收到此連接請求報文后,若同意建立連接,則向主機A發(fā)連接響應報文段。在響應報文段中,SYN同步位為1,確認序號為x+1,同時也為自己選擇一個序列號y;*主機A收到此確認報文后,也向主機B確認,這時,序號為x+1,確認序號為y+1。當連接建立后,A、B主機就可以利用TCP進行數據傳輸了。圖29TCP的連接和釋放(3)TCP連接的釋放在數據傳輸結束后,任何一方都可以發(fā)出釋放連接的請求,釋放連接采用所謂的“四次握手”方法。如圖29(b)所示,假如主機A首先向主機B提出釋放連接的請求,其過程如下:*主機A向主機B發(fā)送釋放連接的報文段,其中,FIN終止位為1,序號x等于前面已經發(fā)送數據的最后一個字節(jié)的序號加1;*主機B對釋放連接請求進行確認,其序號等于x+1。這時從A到B的連接已經釋放,連接處于半關閉狀態(tài),以后主機B不再接收主機A的數據。但主機B還可以向主機A發(fā)送數據,主機A在收到主機B的數據時仍然向主機B發(fā)送確認信息。*當主機B不再向主機A發(fā)送數據時,主機B也向主機A發(fā)釋放連接的請求;*同樣主機A收到該報文段后也向主機B發(fā)送確認。(4)TCP數據傳輸TCP可以通過檢驗序號和確認號來判斷丟失、重復的報文段,從而保證傳輸的可靠性。TCP將要傳送的報文看成是由一個個字節(jié)組成的數據流,對每個字節(jié)編一個序號。在連接建立時,雙方商定初始序號(即連接請求報文段中的SEQ值)。TCP將每次所傳送的第一個字節(jié)的序號放在TCP首部的序號字段中,接收方的TCP對收到每個報文段進行確認,在其確認報文中的確認號字段的值表示其希望接收的下一個報文段的第一個數據字節(jié)的序號。由于TCP能提供全雙工通信,因此,通信中的每一方不必專門發(fā)送確認報文段,而可以在發(fā)送數據時,捎帶傳送確認信息,以此來提高傳輸效率。2.實驗工具軟件簡介(1)3CDaemon軟件3CDaemon是3Com公司推出的功能強大的集FTPServer、TFTPServer、SyslogServer和TFTPClient于一體的集成工具,界面簡單,使用方便。這里主要介紹實驗中需要用到的FTPServer功能。*主界面如圖30所示,左窗格第二項為FTPServer;圖303CDaemon主界面*配置FTPServer功能:選中左窗格功能窗口,打開FTPServer按鈕,單擊窗格中的ConfigureFTPServer按鈕,打開3CDaemonConfiguration配置窗口,如圖31所示,配置FTPServer功能。這里需要設置的就是“Upload/Download”路徑,作為FTPServer的文件夾,其它選項可以使用系統(tǒng)缺省設置。設置完成后,單擊確認按鈕,設置生效。圖313CDaemonConfiguration配置窗口在實驗中,我們使用3CDaemon系統(tǒng)內置的匿名帳戶“anonymous”登陸FTP服務器,客戶端使用微軟FTP客戶端命令,關于Ftp命令的說明可以參考本章5.5.2FTP協(xié)議分析一節(jié)的實驗工具軟件介紹。3.實驗環(huán)境與說明(1)實驗目的學習3CDaemonFTP服務器的配置和使用,分析TCP報文格式,理解TCP的連接建立、和連接釋放的過程。(2)實驗設備和連接實驗設備和連接圖如圖32所示,一臺銳捷S2126G交換機連接了2臺PC機,分別命名為PC1、PC2,交換機命名為Switch。圖32TCP協(xié)議分析實驗連接圖(3)實驗分組每四名同學為一組,其中每兩人一小組,每小組各自獨立完成實驗。4.實驗步驟步驟1:按照如圖32所示連接好設備,配置PC1和PC2的IP地址,驗證連通;(編者注:實驗室中任何一臺PC都可以作為模型中的PC1和PC2;用Serv-U軟件代替3CDaemon軟件即可。)步驟2:按照上面3CDaemon軟件的介紹方法在PC1上建立FTP服務器;步驟3:在PC1和PC2中運行Ethereal,開始截獲報文,為了只截獲到與我們實驗有關的內容,將截獲條件設置為對方主機的IP地址,如PC1的截獲條件為“host00”;步驟4:在:PC2上打開命令行窗口,執(zhí)行如下操作:C:\DocumentsandSettings\Administrator>ftpftp>openTo00Connectedto00.2203Com3CDaemonFTPServerVersion2.0User(00:(none)):anonymous331Usernameok,needpasswordPassword:230-Theresponse''isnotvalid.230-Nexttime,pleaseuseyouremailaddressaspassword.230Userloggedinftp>quit221ServiceclosingcontrolconnectionC:\DocumentsandSettings\Administrator>步驟5:停止截獲報文,將截獲的結果保存為FTP-學號,按下列要求分析截獲的結果;1)結合本節(jié)TCP協(xié)議介紹部分的內容,分析TCP連接建立的“三次握手”過程,找到對應的報文,填寫表12(傳輸方向填寫PC2=>PC1或PC2<=PC1)。表12TCP連接建立報文分析報文號傳輸方向源端口目的端口序號確認序號同步位SYN確認位ACK注意:Ethereal協(xié)議樹中TCP協(xié)議下的“SEQ/ACKanalysis”的內容(這不是TCP報文的真實內容,而是Ethereal給我們提供信息),找到TCP數據傳輸報文的序號和確認報文2)從FTP-學號的報文中的第一個FIN=1的TCP報文開始分析TCP連接釋放的“四次握手”過程,填寫表13。表13TCP連接連接釋放報文分析報文號傳輸方向源端口目的端口序號確認序號終止位FIN同步位SYN確認位ACK5.2UDP協(xié)議分析實驗1.UDP協(xié)議介紹UDP是用戶數據報協(xié)議(UserDatagramProtocol)的縮寫,提供無連接的數據報文傳輸,不能保證數據完整到達目的地。UDP數據傳輸不需要預先建立連接,傳輸過程中沒有報文確認信息。因此,UDP報文格式比TCP的報文格式簡單的多。UDP數據報也是由首部和數據兩部分組成,其首部只有源端口、目的端口、消息長度和校驗和四部分,各部分的意義和TCP首部對應字段的意義相同,這里不復贅言。在TCP/IP體系中,使用UDP協(xié)議的應用有DNS和TFTP(TrivialFileTransferProtocol)。TFTP是一個傳輸文件的簡單協(xié)議,它基于UDP協(xié)議的,它只能從文件服務器上獲得或寫入文件,不能列出目錄,不進行認證。2.實驗工具軟件簡介(1)CiscoTFTPServer軟件CiscoTFTPServer是CISCO公司推出的TFTP服務器,常用于CISCO路由器的IOS升級與備份工作,也可用于建立個人TFTP服務器,進行文件傳輸。CiscoTFTPServer安裝和配置都很簡單,默認方式下,TFTP服務器軟件被放置在硬盤的CiscoTFTPServer文件夾下。啟動服務器軟件,可以看到圖33所示主界面。圖33CiscoTFTPServer界面實驗中只需選擇窗口菜單“View—Option”打開圖34所示對話框設置TFTP服務器根目錄就可以完成TFTP服務器的配置了。圖34CiscoTFTPServer配置對話框(2)TFTP客戶端命令實驗中,為了與TFTP服務器連通,可以使用Windows命令行模式下的TFTP客戶端命令,命令格式如下:TFTP[-i]host[GET|PUT]source[destination]參數說明如下:*-i以二進制方式傳輸;*host指定本地或遠程主機;*GET下載文件;*PUT上傳文件;*source指定要傳輸的文件名;*destination指定傳輸的目的路徑。3.實驗環(huán)境與說明(1)實驗目的學習TFTP服務器的配置和使用,分析UDP報文格式,理解TCP協(xié)議與UDP協(xié)議的區(qū)別。(2)實驗設備和連接實驗設備和連接圖如圖35所示,一臺銳捷S2126G交換機連接了2臺PC機,分別命名為PC1、PC2,交換機命名為Switch。圖35UDP協(xié)議分析實驗連接圖(3)實驗分組每四名同學為一組,其中每兩人一小組,每小組各自獨立完成實驗。

溫馨提示

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

評論

0/150

提交評論