資源描述:
《《傳輸層協(xié)議》ppt課件》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、第五章傳輸層協(xié)議重點(diǎn)端口TCP連接的建立和拆除的握手機(jī)制計(jì)時(shí)器流量控制擁塞控制5.1.傳輸層5.1.1.傳輸層概述一、傳輸層的作用彌補(bǔ)網(wǎng)絡(luò)層所提供的服務(wù)質(zhì)量的不足,以便為高層提供可靠的端到端通信。計(jì)算機(jī)網(wǎng)絡(luò)在邏輯上分為資源子網(wǎng)和通信子網(wǎng)資源子網(wǎng)中的設(shè)備才有傳輸層,通信子網(wǎng)中的設(shè)備一般只具備OSI下面三層的功能。資源子網(wǎng)中的端用戶依靠在自己主機(jī)上所增加的這個(gè)傳輸層來檢測分組的丟失或數(shù)據(jù)的殘缺并采取相應(yīng)的補(bǔ)救措施。二、傳輸層功能在網(wǎng)絡(luò)層所提供的源到目標(biāo)的分組傳輸服務(wù)的基礎(chǔ)上,向上層提供可靠的源主機(jī)到目標(biāo)主機(jī)
2、的數(shù)據(jù)傳輸。當(dāng)上層的協(xié)議數(shù)據(jù)包的長度超過網(wǎng)絡(luò)互聯(lián)層所能承載的最大數(shù)據(jù)傳輸單元時(shí),提供分段和合并分段的功能。提供多路復(fù)用機(jī)制,由于同時(shí)存在多個(gè)高層應(yīng)用,因此要求傳輸層能夠同時(shí)為多個(gè)高層應(yīng)用服務(wù),將多個(gè)高層應(yīng)用復(fù)用到一個(gè)網(wǎng)絡(luò)層連接上。傳輸層是通過端口來實(shí)現(xiàn)這一功能的。三、端到端的傳輸傳輸層就是為上三層提供端到端的傳輸服務(wù)聲音信號電信號聲音信號電信號點(diǎn)到點(diǎn)點(diǎn)到點(diǎn)點(diǎn)到點(diǎn)端到端四、TCP/IP的傳輸層兩個(gè)主要的協(xié)議即傳輸控制協(xié)議(transportcontrolprotocol,簡稱TCP)和用戶數(shù)據(jù)報(bào)協(xié)議(us
3、erdatagramprotocol,簡稱UDP)TCP協(xié)議是一個(gè)可靠的面向連接的傳輸層協(xié)議。UDP協(xié)議將可靠性問題交給應(yīng)用程序解決指標(biāo)TCPUDP是否連接面向連接無連接傳輸可靠性可靠不可靠速度較慢較快傳輸質(zhì)量較高較差5.1.2.端口和套接字一臺主機(jī)中同時(shí)會(huì)有多個(gè)應(yīng)用進(jìn)程進(jìn)行通信,傳輸層必須將它們區(qū)分開來。因此網(wǎng)絡(luò)通信的最終地址應(yīng)不僅包括主機(jī)地址,還要包括可描述網(wǎng)絡(luò)進(jìn)程的某種標(biāo)識。這種標(biāo)識稱作傳輸層服務(wù)訪問點(diǎn),即端口。TCP/IP定義一個(gè)16Bit長度的整數(shù)作為端口標(biāo)識,也就是說可定義2e16個(gè)端口,其
4、端口號從0到2e16-1。從0到255被規(guī)定作為公共應(yīng)用服務(wù)的端口,如WWW、FTP、DNS和電子郵件服務(wù)等,又被稱為著名端口(Well-knownports)。這些端口所對應(yīng)的服務(wù)是固定、公開的,因此可以通過訪問這些端口來訪問對應(yīng)的服務(wù)。從256到1023的端口,被保留用作商業(yè)性的應(yīng)用開發(fā),如一些網(wǎng)絡(luò)設(shè)備廠商專用協(xié)議的通信端口等。1023以上端口未做限定,即作為自由端口,以本地方式進(jìn)行分配。5.2.TCP協(xié)議5.2.1.TCP協(xié)議概述TCP,即傳輸控制協(xié)議,它提供面向連接的、可靠的(沒有數(shù)據(jù)重復(fù)或丟失
5、)、全雙工的數(shù)據(jù)流傳輸服務(wù)。TCP的協(xié)議數(shù)據(jù)單元被稱為段(Segment)數(shù)據(jù)段分為兩部分,即段頭和數(shù)據(jù)段頭一般長20字節(jié)(如有選項(xiàng)部分另加),是TCP為了實(shí)現(xiàn)端到端可靠傳輸所加上的控制信息。而數(shù)據(jù)則是指由高層即應(yīng)用層來的數(shù)據(jù)。數(shù)據(jù)段的大小必須首先滿足65535字節(jié)的IP包數(shù)據(jù)長度限制。源端口:主叫方的TCP端口號。目標(biāo)端口:被叫方的TCP端口號。發(fā)送序號(SEQ):①SYN=0表示數(shù)據(jù)段第一個(gè)數(shù)據(jù)字節(jié)的序號,即該數(shù)據(jù)段在發(fā)送方的數(shù)據(jù)流中的位置;②SYN=1表示建立本次連接的初始序號。確認(rèn)序號(ACK)
6、:下一個(gè)期望接收的TCP數(shù)據(jù)段號,順序號和確認(rèn)號共同用于TCP服務(wù)中的確認(rèn)、差錯(cuò)控制。頭長:TCP頭長,以32位字長為單位。實(shí)際上相當(dāng)于給出數(shù)據(jù)在數(shù)據(jù)段中的開始位置。預(yù)留:未用的6位,為將來的應(yīng)用而保留,目前置為“0”??刂谱侄危–TL):共6個(gè)控制字段,每個(gè)占一位bit。TCP數(shù)據(jù)段有多種應(yīng)用,如建立或關(guān)閉連接、傳輸數(shù)據(jù)、攜帶確認(rèn)等,這些控制字段用于給出與數(shù)據(jù)段的作用及處理相關(guān)的控制信息。字段位值=1時(shí)有效。窗口:窗口的大小表示本方可以接收的數(shù)據(jù)量,以八位字長為計(jì)量單位。TCP使用可變大小的滑動(dòng)窗口來
7、進(jìn)行流量控制。校驗(yàn)和:用于對數(shù)據(jù)段頭和數(shù)據(jù)進(jìn)行校驗(yàn),以判斷接收的數(shù)據(jù)是否有錯(cuò)。緊急指針:給出從當(dāng)前段序號到緊急數(shù)據(jù)位置的偏移量。任選項(xiàng):提供一種增加額外設(shè)置的方法,如最大TCP分段的大小的約定。填充:當(dāng)任選項(xiàng)字段長度不足32位字長時(shí),需要加以填充。數(shù)據(jù):來自高層即應(yīng)用層的協(xié)議數(shù)據(jù)。5.2.2.TCP的連接管理TCP實(shí)現(xiàn)的是面向連接的數(shù)據(jù)傳輸服務(wù),即是一種虛電路的數(shù)據(jù)交換方式,在數(shù)據(jù)傳輸以前需要在源主機(jī)和目標(biāo)主機(jī)之間創(chuàng)建相應(yīng)的虛電路連接。一、連接的建立TCP使用三次握手協(xié)議來建立連接。主機(jī)1首先發(fā)起TCP
8、連接請求,并在所發(fā)送的數(shù)據(jù)段中將控制字段中的SYN置為“1”、ACK置為“0”。主機(jī)2收到該分段,若同意建立連接,則發(fā)送一個(gè)連接接受的應(yīng)答數(shù)據(jù)段,其中控制字段的SYN和ACK均被置“1”,指示對第一個(gè)SYN報(bào)文段的確認(rèn),以繼續(xù)握手操作;否則,主機(jī)2要發(fā)送一個(gè)將RST置為“1”的應(yīng)答數(shù)據(jù)段,表示拒絕建立連接。主機(jī)1收到主機(jī)2發(fā)來的同意建立連接數(shù)據(jù)段后,還有再次進(jìn)行選擇的機(jī)會(huì),若其確認(rèn)要建立這個(gè)連接,則向主機(jī)2發(fā)送確認(rèn)數(shù)據(jù)段,用來通知主機(jī)2雙方