計算機(jī)網(wǎng)絡(luò)技術(shù)第6章.ppt_第1頁
計算機(jī)網(wǎng)絡(luò)技術(shù)第6章.ppt_第2頁
計算機(jī)網(wǎng)絡(luò)技術(shù)第6章.ppt_第3頁
計算機(jī)網(wǎng)絡(luò)技術(shù)第6章.ppt_第4頁
計算機(jī)網(wǎng)絡(luò)技術(shù)第6章.ppt_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、第6章 傳輸層,主要內(nèi)容,6.1傳輸層協(xié)議概述 6.2Internet的傳輸層 6.3用戶數(shù)據(jù)報協(xié)議 6.4傳輸控制協(xié)議,網(wǎng)絡(luò)層協(xié)議主要運(yùn)行于ISP的路由器上 ,而目前應(yīng)用最為廣泛的因特網(wǎng)網(wǎng)絡(luò)層提供是無連接的不可靠的服務(wù),要解決網(wǎng)絡(luò)層服務(wù)太差的問題,只能通過運(yùn)行在自己機(jī)器上的更高的層來解決,這個層就是傳輸層。 傳輸層的存在使得網(wǎng)絡(luò)服務(wù)更加可靠,丟失的分組和損壞的數(shù)據(jù)可以在傳輸層上檢測出來,并且由傳輸層來補(bǔ)償。,6.1傳輸層協(xié)議概述,傳輸層是整個協(xié)議層次結(jié)構(gòu)的核心,其功能是從源主機(jī)到目的主機(jī)提供可靠的、性價比合理的數(shù)據(jù)傳輸,并且與當(dāng)前所使用的物理網(wǎng)絡(luò)完全獨(dú)立。 如果沒有傳輸層,那么分層協(xié)議的整個

2、概念將變得沒有意義。 傳輸層主要有3三個基本功能 端到端的連接 復(fù)用與分用 面向連接的服務(wù)和無連接的服務(wù),端到端的連接,兩個主機(jī)進(jìn)行通信實(shí)際上就是兩個主機(jī)中應(yīng)用進(jìn)程的互相通信 ,傳輸層為網(wǎng)絡(luò)環(huán)境中主機(jī)的應(yīng)用進(jìn)程提供了端到端進(jìn)程通信服務(wù),復(fù)用與分用功能,應(yīng)用層不同的進(jìn)程將傳下來的報文交給傳輸層后,再往下就共用網(wǎng)絡(luò)層提供的服務(wù)。,面向連接的服務(wù)和無連接的服務(wù),面向連接的服務(wù)通信可靠。 一是數(shù)據(jù)不丟失,二是數(shù)據(jù)的發(fā)送和接收順序是一致的。傳輸層提供的面向連接的服務(wù)通過確認(rèn)重發(fā)機(jī)制來保證數(shù)據(jù)不丟失;發(fā)送和接收順序一致是通過其緩沖區(qū)來實(shí)現(xiàn)的,傳輸層為每個數(shù)據(jù)設(shè)置了一個序號,收到一個數(shù)據(jù)后并不直接交給上層,

3、而是先查看其序號,如果序號小的數(shù)據(jù)還沒有到來,則需要將該數(shù)據(jù)放到緩沖區(qū),等待前面的數(shù)據(jù)都到達(dá)并排序后才交給上層。 無連接的服務(wù)主要提供一個應(yīng)用進(jìn)程的標(biāo)識,是一種不可靠的服務(wù),不提供確認(rèn)重傳機(jī)制,所以協(xié)議開銷比較小,通信效率高。,6.2Internet的傳輸層,6.2.1傳輸層的兩個協(xié)議 6.2.2端口和套接字,6.2.1傳輸層的兩個協(xié)議,Internet為傳輸層設(shè)計了如下兩個協(xié)議。 用戶數(shù)據(jù)報協(xié)議(User Datagram Protocol,UDP)。 UDP是一種無連接的、不可靠的傳輸層協(xié)議。 傳輸控制協(xié)議(Transmission Control Protocol,TCP)。 TCP提供

4、面向連接的服務(wù)。,6.2.2端口和套接字,UDP和TCP都使用了應(yīng)用層接口處的端口(Port)與上層的應(yīng)用進(jìn)程通信。端口號是應(yīng)用進(jìn)程的標(biāo)識。 端口號是一個16位的地址,分為3類:熟知端口號、注冊端口號和臨時端口號。 熟知端口號的范圍是01023,它被統(tǒng)一分配和控制。 注冊端口號的范圍是102449151,用戶根據(jù)需要可以在IANA注冊,以防止重復(fù)。 臨時端口號的范圍是4915265535,隨機(jī)分配給用戶進(jìn)程來使用。 一個IP地址和一個端口號的組合稱為套接字(Socket),6.3用戶數(shù)據(jù)報協(xié)議,UDP的特點(diǎn)及應(yīng)用 UDP數(shù)據(jù)報格式,UDP的特點(diǎn)及應(yīng)用,UDP是一種無連接的、不可靠的傳輸層協(xié)議,

5、它僅僅在IP數(shù)據(jù)報服務(wù)的基礎(chǔ)上增加了端口功能和差錯檢測的功能。它以最小的開銷來實(shí)現(xiàn)網(wǎng)絡(luò)環(huán)境中的進(jìn)程通信。 UDP適合于可靠性較高的局域網(wǎng),也適合于發(fā)送很短的,或者對可靠性要求不高的報文。 應(yīng)用層TFTP、RFC、NTP、BOOTP、 DNS都使用UDP協(xié)議。 有些實(shí)時的應(yīng)用,因?yàn)閷ρ舆t的要求比較高,而對可靠性要求不高,廣泛使用UDP協(xié)議作為它們的傳輸層協(xié)議,如IP電話、視頻會議等。 路由選擇協(xié)議RIP、網(wǎng)絡(luò)管理協(xié)議SNMP、網(wǎng)絡(luò)文件服務(wù)NFS、網(wǎng)絡(luò)電話VOIP等的傳輸層也采用UDP協(xié)議。,UDP數(shù)據(jù)報格式,基本結(jié)構(gòu),UDP校驗(yàn)和的計算方法有些特殊,在計算前需要增加12個字節(jié)的偽頭部。,偽頭部,

6、6.4傳輸控制協(xié)議,6.4.1TCP協(xié)議的主要特點(diǎn) 6.4.2TCP報文段格式 6.4.3TCP連接的建立與釋放 6.4.4TCP的差錯控制機(jī)制 6.4.5TCP的流量與擁塞控制 6.4.6TCP用到的計時器,6.4.1TCP協(xié)議的主要特點(diǎn),提供面向連接的服務(wù)(Connection Oritention) 高可靠性(High Reliability) 全雙工通信(Full Duplex Communication) 支持流傳輸(Stream Interface) 可靠的連接建立與釋放(Reliable Connection Startup and Shutdown) 提供流量控制與擁塞控制,6

7、.4.2TCP報文段格式,6.4.2TCP報文段格式(續(xù)),端口號的長度為32位,包括一個16位的源端口號和一個16位的目的端口號 序號的長度為32位 ,序號域即是指本報文段的第一個字節(jié)的序號。 確認(rèn)號的長度為32位。表示接收端希望接收到的下一個報文段數(shù)據(jù)第1個字節(jié)的序號。 頭部長度為4位。因?yàn)檫x項(xiàng)域是可變長度的,所以頭部是變長度的。這個字段的值是在5至15之間,報頭的長度在2060B之間。 保留字段長度為6位。目前這個域的值全部為0,即這個域從設(shè)計到現(xiàn)在仍然未被使用。 窗口域的長度為16位。TCP的流控制是通過一個可變大小的滑動窗口來完成的。窗口大小域指明了從被確認(rèn)的字節(jié)算起可以發(fā)送多少個字

8、節(jié)。窗口所對應(yīng)的最大數(shù)據(jù)長度為65535B。,6.4.2TCP報文段格式(續(xù)),控制域 定義了6種不同的控制位或標(biāo)志位,使用時可在同一時間設(shè)置一位或多位??刂朴蛴糜赥CP流量控制、連接建立和終止,以及數(shù)據(jù)傳送方式等。 (1) 緊急(URG) 當(dāng)URG=1時,表明此報文段應(yīng)盡快傳送,而不是按原來的排隊(duì)序列來傳送。 (2) 確認(rèn)(ACK) 只有當(dāng)ACK=1時確認(rèn)號域才有意義。當(dāng)ACK=0時,則該數(shù)據(jù)段不包含確認(rèn)信息,所以確認(rèn)號域應(yīng)該被忽略。 (3) 急迫(PSH) 當(dāng)PSH=1時,接收方在收到數(shù)據(jù)后應(yīng)立即請求將數(shù)據(jù)遞交給應(yīng)用程序,而不是等到整個緩沖區(qū)都填滿了再向上交付。 (4) 復(fù)位(RST) 當(dāng)

9、RST=1時,表明出現(xiàn)嚴(yán)重差錯(如由于主機(jī)崩潰或其他原因),必須釋放連接,然后再重新建立。復(fù)位比特還可以用來拒絕一個非法的報文段或拒絕打開一個連接。 (5) 同步(SYN) 在建立連接時使用。當(dāng)SYN=1而ACK=0時,表明這是一個連接請求報文段。對方若同意建立連接,則應(yīng)在發(fā)回的報文段中使SYN=1和ACK=1。因此,同步比特SYN置1,就表示這是一個連接請求或連接接受報文,而ACK比特的值用來區(qū)分是哪一種報文。 (6) 終止(FIN) 用來釋放一個連接。當(dāng)FIN=1時,表明欲發(fā)送的字節(jié)串已經(jīng)發(fā)完,并要求釋放連接。,6.4.2TCP報文段格式(續(xù)),緊急指針域的長度為16位。只有當(dāng)控制域中的緊

10、急位URG=1時,緊急指針才有效。緊急指針指出在本報文段中緊急數(shù)據(jù)的最后一個字節(jié)的序號。緊急指針使接收方可以知道緊急數(shù)據(jù)有多長。 選項(xiàng)域長度可變,最大可以到40B。選項(xiàng)包括單字節(jié)選項(xiàng)和多字節(jié)選項(xiàng)。單字節(jié)選項(xiàng)有兩個:選項(xiàng)結(jié)束和無操作。多字節(jié)選項(xiàng)有3個:最大報文段長度、窗口擴(kuò)大因子以及時間戳。 TCP校驗(yàn)和與UDP校驗(yàn)和計算過程是一樣的,也需要在TCP頭部加上12B的偽報頭,所不同的是UDP協(xié)議中是否采用校驗(yàn)和是可選的,而對于TCP來說是必須采用的。偽報頭中表示TCP協(xié)議的值是6。,6.4.3TCP連接的建立與釋放,TCP是面向連接的協(xié)議。在數(shù)據(jù)傳輸之前,必須首先建立連接;在數(shù)據(jù)傳輸結(jié)束后,需要釋

11、放連接。 TCP采用客戶/服務(wù)器模式。 通過3次握手的方式來建立連接防止因已失效的連接請求而產(chǎn)生錯誤。,6.4.3TCP連接的建立與釋放(續(xù)),在用戶數(shù)據(jù)傳輸結(jié)束時,需要釋放傳輸連接。參與傳輸連接的任何一方都可以釋放連接。 客戶與服務(wù)器的數(shù)據(jù)報文是雙向傳輸?shù)?一次傳輸連接的釋放過程也需要經(jīng)過3次握手,6.4.4TCP的差錯控制機(jī)制,TCP是一個可靠的傳輸層協(xié)議 發(fā)送端的應(yīng)用進(jìn)程將數(shù)據(jù)流交付給TCP,它將依靠TCP將整個數(shù)據(jù)流按順序、無差錯、不丟和重復(fù)地交付給接收端應(yīng)用進(jìn)程。 TCP協(xié)議的差錯檢測通過3種簡單工具完成:校驗(yàn)和、確認(rèn)和超時。 校驗(yàn)和用來確認(rèn)是否出現(xiàn)錯誤 確認(rèn)用來判斷報文段是否順利到

12、達(dá)目的地 傳輸過程出現(xiàn)錯誤或報文段未能順利到達(dá)時,TCP通過重傳來解決,幾種情況下TCP的差錯控制機(jī)制,亂序的報文段 對于亂序的報文段的處理方法很簡單,就是只有在收到某個序號前所有報文段時才會對這個序號的報文段進(jìn)行確認(rèn)。 出錯或丟失的報文段 丟失報文段和報文段出錯,發(fā)送端TCP不會收到接收端TCP的確認(rèn)信息。發(fā)送端TCP會等待一段時間,直到接收確認(rèn)超時,重傳未得到確認(rèn)的報文段。 重復(fù)的報文段 接收端TCP收到報文段后,首先查看其序號,如果已有相同序號被確認(rèn),則丟棄重復(fù)的報文段。 確認(rèn)丟失 如果在傳輸過程中某個序號的報文段確認(rèn)丟失,若發(fā)送端TCP收到了大于該序號的報文段確認(rèn),則也可以證明接收端進(jìn)

13、程已經(jīng)成功收到該序號的報文段。發(fā)送端可以忽略之前的確認(rèn)丟失。,6.4.5TCP的流量與擁塞控制,TCP的流量控制 TCP的擁塞控制,TCP的流量控制,TCP采用大小可變的窗口進(jìn)行流量與擁塞控制。當(dāng)一個傳輸連接建立時,連接的每端都要分配一塊緩沖區(qū)來存儲接收到的數(shù)據(jù),并將緩沖區(qū)的大小發(fā)送給另一端。 發(fā)送窗口在連接建立時由雙方商定。,TCP利用窗口進(jìn)行流量控制的過程示例,TCP的擁塞控制,發(fā)送端的主機(jī)在發(fā)送數(shù)據(jù)時,既要考慮到接收端的接收能力,又要使網(wǎng)絡(luò)不要發(fā)生擁塞。所以發(fā)送端的發(fā)送窗口應(yīng)該按以下方式確定: 發(fā)送窗口=Min(通知窗口,擁塞窗口) 通知窗口是接收端根據(jù)其接收能力確定的窗口值,是來自接收

14、端的流量控制。 擁塞窗口是發(fā)送端根據(jù)網(wǎng)絡(luò)擁塞情況確定的窗口值,它由發(fā)送端流量控制算法來決定。,6.4.6TCP用到的計時器,為了實(shí)現(xiàn)TCP協(xié)議的功能,TCP使用了幾種計時器,如重傳計時器、持續(xù)計時器、?;钣嫊r器。,重傳計時器,為了控制丟失的或是丟棄的報文段,TCP采用了重傳計時器來計算確認(rèn)到達(dá)的時間,以決定報文段是否需要重傳及重傳的時間。如果在計時器截止時間到達(dá)前確認(rèn)到來,則撤銷計時器,否則重傳該報文并將計時器復(fù)位。 由于TCP連接的兩臺主機(jī)可能在同一網(wǎng)絡(luò),也可能遠(yuǎn)隔數(shù)千互聯(lián)的網(wǎng)絡(luò),所以TCP重傳時間的確定要比數(shù)據(jù)鏈路層復(fù)雜得多,持續(xù)計時器,當(dāng)接收端TCP發(fā)布一個零窗口時,發(fā)送端會停止發(fā)送數(shù)據(jù)并等待一個非零窗口的到來。如果此時接收端TCP發(fā)出了一個非零窗口,而此非零窗口恰好又丟失了,則可能會出現(xiàn)這種情況:發(fā)送端一直等待一個非零窗口的到來,接收端一直等待數(shù)據(jù)的到來,這就出現(xiàn)了死鎖。 為了避免這種情況的出現(xiàn),TCP為每個連接使用一個持續(xù)計時器。當(dāng)發(fā)送端收到一個零窗口通告時,啟動計時器,若計時器期限到達(dá)時仍未收到一個非

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論