




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第四章運輸層本章知識點運輸層的功能和任務(wù)端口機制UDP協(xié)議特點、UDP報文結(jié)構(gòu)TCP協(xié)議特點、TCP報文結(jié)構(gòu)、TCP連接管理、可靠性傳輸、流量控制、差錯控制概述運輸層為應用進程提供邏輯通道。
概述網(wǎng)絡(luò)層、運輸層和應用層關(guān)系。概述網(wǎng)絡(luò)層不能直接為應用層服務(wù),因為分組交換技術(shù)可能會帶來數(shù)據(jù)的丟失、亂序、重復等問題。另外如何確定應用程序的地址也是網(wǎng)絡(luò)層所不能解決的。運輸層的功能運輸層要為應用層提供一條邏輯通道,好像在兩個應用進程間連接了一個管道,數(shù)據(jù)從管道的一端進去,從另外一端出來。運輸層的主要功能應用進程尋址提供數(shù)據(jù)的可靠傳遞流量控制擁塞控制TCP/IP的運輸層在TCP/IP協(xié)議體系中,運輸層有兩個協(xié)議:傳輸控制協(xié)議(TransferControlProtocol,TCP)用戶數(shù)據(jù)報協(xié)議(UserDatagramProtocol,UDP)TCP/IP的運輸層UDP只提供應用進程尋址和簡單的差錯檢測功能,它不能向應用層保證數(shù)據(jù)傳輸?shù)目煽啃?。TCP除了應用進程尋址的功能外,還能為應用層提供可靠的數(shù)據(jù)傳輸服務(wù),并具有流量控制和擁塞控制的能力。端口機制——應用進程尋址運輸層是為應用層服務(wù)的,多個應用層協(xié)議可能會使用同一個運輸層協(xié)議。運輸層如何將收到的數(shù)據(jù)交給正確的應用層進程?TCP/IP提供了端口機制來解決這個問題。端口機制端口是一種軟件結(jié)構(gòu),是運輸層協(xié)議和應用層協(xié)議交互時的接口,每個端口有一個唯一的端口號,并且有相應的輸入和輸出緩存。一個應用進程通過系統(tǒng)調(diào)用可以綁定到運輸層協(xié)議(UDP或TCP)的一個端口上。端口和應用進程是一一對應的,通過端口號能確定主機內(nèi)的一個應用進程。端口機制發(fā)送數(shù)據(jù)時,傳輸層首部中包含源端口號(發(fā)送方進程端口號)和目的端口號(接收方進程端口號)。端口機制接收方的運輸層根據(jù)目的端口號將數(shù)據(jù)交給正確的應用進程。對于知名的服務(wù),如Web服務(wù)、FTP服務(wù)等,使用的運輸層協(xié)議和端口號都是固定的,這些端口稱為熟知端口,其數(shù)值一般都小于1024。而對于客戶進程,操作系統(tǒng)通常會隨機給它分配一個大于1024的端口號。端口機制TCP/IP協(xié)議體系中,每個端口都有一個端口號,這個端口號是一個16比特的數(shù)字,所以最多可以有64K個端口。TCP和UDP的端口是各自獨立的,TCP可以有64K個端口,UDP也可以有64K個端口。UDP用戶數(shù)據(jù)報協(xié)議(UDP)是TCP/IP協(xié)議體系中運輸層協(xié)議之一,在RFC768中定義。UDP為應用層提供了無連接的數(shù)據(jù)傳輸服務(wù),利用端口機制為應用程序提供多路復用和多路分解,并支持簡單的差錯檢測。UDP不能向應用層提供可靠的數(shù)據(jù)傳輸,也沒有流量控制和擁塞控制的功能。UDP數(shù)據(jù)報UDP接收應用層的數(shù)據(jù),加上UDP首部后封裝成UDP數(shù)據(jù)報,UDP數(shù)據(jù)報是UDP的傳輸單元。UDP特點UDP不提供可靠的數(shù)據(jù)服務(wù),數(shù)據(jù)可能會丟失、亂序和重復。UDP采用無連接的工作方式,
UDP比較簡單,應用層的數(shù)據(jù)能夠被迅速、及時地發(fā)送出去。UDP的效率比較高,適合于對實時性要求高,但能夠容忍部分數(shù)據(jù)丟失的應用,如視頻會議,音頻數(shù)據(jù)傳輸?shù)?。使用UDP的應用層協(xié)議應用應用層協(xié)議運輸層協(xié)議域名解析DNSUDP網(wǎng)絡(luò)管理SNMPUDP路由信息交換RIPUDP簡單文件傳輸TFTPUDP網(wǎng)絡(luò)文件系統(tǒng)NFSUDPIP電話專有協(xié)議UDP流式多媒體專有協(xié)議UDPUDP數(shù)據(jù)報格式UDP數(shù)據(jù)報由UDP首部和其封裝的應用層數(shù)據(jù)組成,是UDP協(xié)議的傳輸單元。UDP數(shù)據(jù)報格式源端口是指發(fā)送方應用進程對應的端口號。目的端口是指接收方應用進程對應的端口號。長度字段的值給出了UDP數(shù)據(jù)報(包括首部和數(shù)據(jù))的字節(jié)數(shù)。校驗和用來檢測UDP報文在傳輸中的錯誤。UDP報文的校驗是可選的,如果校驗和的值為0,則表示沒有校驗。UDP的差錯檢測UDP提供了首部校驗和字段來檢測UDP數(shù)據(jù)報在傳輸過程中的錯誤。一旦檢測出錯誤,UDP會丟棄出錯的UDP數(shù)據(jù)報。UDP首部校驗和的計算比較特殊,在計算校驗和之前,要在UDP報文前面添加一個偽首部。TCPTCP是TCP/IP協(xié)議體系中運輸層的重要協(xié)議。TCP為應用層提供面向連接的、可靠的數(shù)據(jù)傳遞服務(wù)。在提供數(shù)據(jù)可靠性的同時,TCP還為應用層提供了全雙工的數(shù)據(jù)傳輸服務(wù)。TCP還具有流量控制和擁塞控制的功能。TCP報文段的組成和封裝TCP接收應用層的數(shù)據(jù),添加TCP首部后形成TCP報文段。TCP報文段需要被下層的IP協(xié)議封裝,發(fā)送到目的地。TCP報文段結(jié)構(gòu)TCP連接TCP提供面向連接的傳輸服務(wù)。利用TCP通信的兩個應用進程要首先建立連接。這個連接是軟件意義上的連接,并不是一條實際的物理線路。建立連接的目的是使通信雙方在開始傳輸數(shù)據(jù)前建立聯(lián)系,使雙方都確定對方愿意與之通信;同時在建立連接的過程中傳遞和協(xié)商一些必要的參數(shù)(如發(fā)送字節(jié)的起始編號和MSS),為后面的數(shù)據(jù)傳遞打下基礎(chǔ)。建立連接的過程是兩端的TCP交換一些特殊的TCP報文段來完成的。使用TCP傳輸數(shù)據(jù)的過程1.建立連接。2.傳輸應用層數(shù)據(jù)。3.關(guān)閉連接。TCP建立連接過程TCP建立連接的過程稱為“三次握手”(three-wayhandshanke)TCP關(guān)閉連接過程保活定時器一個TCP連接建立后,可能會長時間處于空閑狀態(tài),沒有任何數(shù)據(jù)交換。服務(wù)器需要知道客戶端是否已經(jīng)關(guān)閉或是重啟,需要確認是否有必要繼續(xù)保留這個連接。服務(wù)器通過設(shè)置?;疃〞r器(keepalivetimer)來達到這個目的。保活定時器?;疃〞r器的時間一般設(shè)為2小時。如果服務(wù)器在2小時內(nèi)收到了客戶端的信息,那么定時器就復位,重新計時。如果2小時內(nèi)沒有收到任何數(shù)據(jù),那么服務(wù)器TCP就會給客戶端發(fā)送一個探測報文。保活定時器客戶端可能處于以下的4個狀態(tài):(1)客戶端依然活躍,并且收到了服務(wù)器的探測報文??蛻舳说腡CP便會發(fā)出響應報文,使服務(wù)器知道自己仍然處于活動狀態(tài)。服務(wù)器的TCP會將?;疃〞r器復位,保持這個連接。(2)客戶端已經(jīng)崩潰,并且已經(jīng)關(guān)機。此時服務(wù)器TCP不會收到任何響應。然后服務(wù)器TCP每隔75秒發(fā)送一個探測報文,如果發(fā)送了10個探測報文仍沒有回應,那么服務(wù)器就關(guān)閉連接,釋放相應的資源。保活定時器客戶端可能處于以下的4個狀態(tài):(3)客戶端已經(jīng)重啟,這時客戶端的TCP不會保留原來連接的信息。當收到服務(wù)器的探測報文后,客戶端TCP會發(fā)送一個復位(RST)的響應,服務(wù)器收到后便會關(guān)閉連接。(4)客戶端依然活躍,但是始終都無法收到服務(wù)器的探測報文(可能是由于網(wǎng)絡(luò)擁塞造成的)。這種情況同(2)類似,服務(wù)器收不到響應,也會關(guān)閉連接。數(shù)據(jù)的可靠性傳輸TCP報文段需要封裝在IP的報文中才能到達目的地。數(shù)據(jù)的可靠性傳輸IP協(xié)議不能提供可靠的數(shù)據(jù)傳輸服務(wù),IP報文可能會丟失、重復或者亂序。TCP報文段也會遇到同樣的問題。TCP主要使用確認、重傳機制實現(xiàn)數(shù)據(jù)的可靠性傳輸。確認和重傳機制每一方的TCP都要為所傳輸?shù)臄?shù)據(jù)編號,編號以字節(jié)為單位。如果收到了編號正確的數(shù)據(jù),那么就要給對方發(fā)送確認。確認也可能在中途丟失,從而造成對方無法收到確認的情況。在發(fā)出一個TCP報文段后,就啟動一個定時器,如果定時器時間到了但確認還沒有來,那么就重傳一次這個報文。確認和重傳機制數(shù)據(jù)出錯的四種情況和處理(1)TCP報文段丟失。發(fā)送方定時器超時,重傳。(2)TCP報文段里的數(shù)據(jù)出錯。接收方丟棄出錯報文段,不發(fā)送確認。發(fā)送方定時器超時,重傳。(3)TCP報文段的重復。接收方直接丟棄重復報文段,同時發(fā)送確認。(4)TCP報文段的亂序。TCP通常會選擇緩存這些亂序的報文,將其排序再上傳給應用進程。
重傳定時器在發(fā)送一個TCP報文后,就會啟動重傳定時器。如果在定時器截止時間之前收到了確認,就撤銷這個定時器。如果定時器時間到了,確認還沒有收到,就重傳該報文并將定時器復位。隨著網(wǎng)絡(luò)情況不斷在發(fā)生變化,重傳定時器的時間設(shè)定也會跟隨變化。重傳定時器計算流量控制在建立連接時,TCP連接的每一端都會為這個連接分配一定數(shù)量的緩存。當收到正確的字節(jié)后,就會將數(shù)據(jù)放入緩存。如果發(fā)送進程發(fā)送數(shù)據(jù)的速度超過接收進程取走數(shù)據(jù)的速度,那么接收緩存就會被充滿,最后溢出。需要有一種機制來控制發(fā)送方發(fā)送數(shù)據(jù)的速度,保證接收緩存不溢出,這種機制稱為流量控制。流量控制TCP利用首部中的窗口字段將自己接收緩存大小通知對方,從而保證數(shù)據(jù)不會溢出。流量控制流量控制中的兩個問題零窗口通告使用堅持定時器解決。糊涂窗口癥狀解決方案:接收方不發(fā)送接收窗口太小的通告,等到接收緩存有了合適的空余(如一半空閑)再發(fā)送窗口更新的通告。發(fā)送方也要暫時緩存一下要發(fā)送的數(shù)據(jù),等數(shù)據(jù)達到合適的數(shù)量(如至少達到接收方窗口的一半)再發(fā)送出去。擁塞當大量的數(shù)據(jù)涌入網(wǎng)絡(luò)時,網(wǎng)絡(luò)中的部分路由器就會因為過載而被迫丟棄一些分組,就產(chǎn)生了擁塞。發(fā)送方會因為定時器超時重傳那些被路由器丟棄的分組,從而引起更嚴重的擁塞,使整個網(wǎng)絡(luò)陷入癱瘓。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 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è)計劃
- 農(nóng)業(yè)肥料配送合同樣本
- 農(nóng)村魚池修建項目合同樣本
- 養(yǎng)豬合作協(xié)議合同樣本
- 2025一建《項目管理》考點建筑工程施工總包合同的內(nèi)容
- 2025合作項目合同協(xié)議書模板
- 典當后補充借款合同樣本
- 企業(yè)用工合同樣本長期
- 項目管理最佳實踐分享計劃
- 公司代購種子合同標準文本
- 實驗驗證動量守恒定律(教學設(shè)計)高二物理系列(人教版2019選擇性)
- 酒店式公寓開發(fā)財務(wù)分析實例
- JJF 2122-2024機動車測速儀現(xiàn)場測速標準裝置校準規(guī)范
- 企業(yè)所得稅匯算清繳申報表電子表格版(帶公式-自動計算)
- 高壓電工證考試題庫及答案(完整版)
- 2024年中國BIM行業(yè)市場動態(tài)分析、發(fā)展方向及投資前景分析報告
- 施工項目環(huán)境保護管理組織機構(gòu)
- 遼寧省沈陽市郊聯(lián)體重點高中2023-2024學年高二下學期4月月考化學試題
- 高中學籍檔案課程學分填寫樣式-歷史化學政治
- (正式版)JBT 2930-2024 低壓電器產(chǎn)品型號編制方法
- 滅火器檢查的流程與步驟詳解
評論
0/150
提交評論