版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第第6章章 互聯(lián)網(wǎng)(互聯(lián)網(wǎng)(internet)2022-5-52第六章第六章 Internet6.1 Internet概述6.2 協(xié)議與互連的原理6.3 IP層6.4 運(yùn)輸層 6.5 應(yīng)用層6.6 IPv62022-5-53第十章第十章 Internet的運(yùn)輸層的運(yùn)輸層applicationtransportnetworkdata linkphysicalapplicationtransportnetworkdata linkphysicalnetworkdata linkphysicalnetworkdata linkphysicalnetworkdata linkphysicalnetwo
2、rkdata linkphysicalnetworkdata linkphysicallogical end-end transport問(wèn)題:1)IP層只提供Besteffort的服務(wù),如果用戶需要可靠的服務(wù)怎么辦?2) 主機(jī)上正在通信的一對(duì)進(jìn)程相互間如何尋址?2022-5-54Internet傳輸層協(xié)議概述傳輸層協(xié)議概述應(yīng)用層傳輸層網(wǎng)絡(luò)層網(wǎng)絡(luò)接入層TCPUDP2022-5-55TCP/UDP報(bào)文段格式報(bào)文段格式0816243116位源端口16位目的端口32位序列號(hào)32位確認(rèn)號(hào)URGACKPSHRSTSYNFIN首部長(zhǎng)度保留(6位)16位窗口大小16位TCP校驗(yàn)和16位緊急指針選項(xiàng)數(shù)據(jù)0816
3、243116位源端口16位目的端口16位UDP校驗(yàn)和數(shù)據(jù)UDP報(bào)文段格式報(bào)文段格式TCP報(bào)文段格式報(bào)文段格式16位UDP長(zhǎng)度2022-5-561運(yùn)輸層運(yùn)輸層的協(xié)議和服務(wù)的協(xié)議和服務(wù)l兩個(gè)運(yùn)輸層協(xié)議TCP,UDPl運(yùn)輸層提供基于端口號(hào)的復(fù)用能力。l運(yùn)輸層運(yùn)行于端系統(tǒng)之上,提供不同主機(jī)上進(jìn)程之間的邏輯通信能力。lTCP在兩個(gè)進(jìn)程間提供可靠數(shù)據(jù)傳送服務(wù)lTCP段的結(jié)構(gòu)l接收證實(shí)和超時(shí)重傳l流量控制l連接管理l擁塞控制但TCP不保證時(shí)延和帶寬2022-5-57TCP保證可靠服務(wù)的機(jī)制保證可靠服務(wù)的機(jī)制l數(shù)據(jù)報(bào)丟失:引入接收確認(rèn),重傳機(jī)制l錯(cuò)序:在段中引入順序號(hào),使在最終目的地可以進(jìn)行分段的重裝。lCh
4、ecksum:保證識(shí)別傳輸中的差錯(cuò)l慢的接收者:引入流控機(jī)制,使接收者可控制發(fā)送者的速率。l網(wǎng)絡(luò)擁塞:控制源端的發(fā)送量,使之不超過(guò)網(wǎng)絡(luò)的處理能力。l并發(fā)復(fù)用:引入端口號(hào)來(lái)區(qū)分不同的連接2022-5-582 TCP報(bào)文段的格式報(bào)文段的格式源端口號(hào)目的端口號(hào)32 bits 應(yīng)用數(shù)據(jù)(可變長(zhǎng))順序號(hào)確認(rèn)號(hào)接收窗口緊急指針校驗(yàn)和FSRPAU頭部長(zhǎng)度保留可選項(xiàng)(變長(zhǎng))20字節(jié)小于40字節(jié)64k字節(jié)順序號(hào)順序號(hào):當(dāng)SYN1,代表初始序號(hào)ISN;其它時(shí)候SN表示該段中第一個(gè)數(shù)據(jù)字節(jié)的序號(hào)。確認(rèn)號(hào)確認(rèn)號(hào):代表TCP接收實(shí)體期望接收的下一個(gè)字節(jié)的序號(hào)。頭部長(zhǎng)度頭部長(zhǎng)度:以32bit為單位。接收窗口接收窗口:由接
5、收方給出的愿意接受的字節(jié)數(shù)量,起始序號(hào)由確認(rèn)號(hào)字段給出。校驗(yàn)和校驗(yàn)和:對(duì)整個(gè)報(bào)文段進(jìn)行校驗(yàn)。2022-5-59l緊急指針:該字段的值加上報(bào)文段的序號(hào)后,代表緊急數(shù)據(jù)序列的最后一個(gè)字節(jié),它使收方能夠知道共有多少緊急數(shù)據(jù)到來(lái)。lURG:置位代表緊急指針字段有意義。lACK: 確認(rèn)號(hào)字段有意義。lPSH:強(qiáng)制交付lRST:重建連接lSYN:序號(hào)同步和連接建立。lFIN:本端不再發(fā)送數(shù)據(jù),連接釋放2022-5-5103 TCP的連接管理的連接管理l面向連接:為實(shí)現(xiàn)一對(duì)進(jìn)程之間可靠的數(shù)據(jù)通信,TCP采用了面向連接的方式,即在進(jìn)程間先建立連接,再傳輸數(shù)據(jù)。l連接是實(shí)現(xiàn)可靠傳輸機(jī)制的基礎(chǔ)l連接的標(biāo)識(shí):IP地
6、址端口號(hào)(運(yùn)輸層)連接,該連接又被稱(chēng)為套接字Socket。lTCP連接是主機(jī)到主機(jī)的連接,即只在直接通信的兩個(gè)主機(jī)上維持連接狀態(tài)。l套接字是一個(gè)全雙工連接 A-B =【(本地IP,本地端口),(遠(yuǎn)端IP,遠(yuǎn)端端口)】2022-5-511Socket的概念的概念進(jìn)程進(jìn)程InternetOS控制程序員控制TCP層層SocketBSocketA2022-5-512基于套接字的多路分解基于套接字的多路分解ClientIP:BP1client IP: AP1P2serverIP: CSP: 9157DP: 80SP: 9157DP: 80P4P3D-IP:CS-IP: AD-IP:CS-IP: BSP:
7、 5775DP: 80D-IP:CS-IP: B2022-5-513TCPFTPTELNETDNSSNMPTFTPSMTPUDP2123255369161520TCP保留端口號(hào)保留端口號(hào)RIP在在C/S模式下,提模式下,提供特定服務(wù)的服務(wù)供特定服務(wù)的服務(wù)器必須公開(kāi)其服務(wù)器必須公開(kāi)其服務(wù)端口號(hào),所有的端口號(hào),所有的Internet標(biāo)準(zhǔn)服標(biāo)準(zhǔn)服務(wù)都有自己的保留務(wù)都有自己的保留端口號(hào),這些端口端口號(hào),這些端口號(hào)被稱(chēng)為號(hào)被稱(chēng)為well-known port,一般一般1024以?xún)?nèi)的端口以?xún)?nèi)的端口將被將被OS保留。保留。2022-5-514連接的建立過(guò)程:三次握手連接的建立過(guò)程:三次握手l每一方通知對(duì)方自
8、己將要使用的初始SN。l為什么不簡(jiǎn)單的用 0?l每一方確認(rèn)對(duì)方的SNlSYN-ACK: 確認(rèn) SN + 1l第二個(gè)SYN可以和第一個(gè)ACK合并SYN: SNxACK: ANx+1SYN: SNyACK: ANy+1ClientServer2022-5-515連接的釋放過(guò)程連接的釋放過(guò)程l每一方獨(dú)立發(fā)起釋放過(guò)程l發(fā)送 FIN 消息l“Im not going to send any more data”l另一方可以繼續(xù)發(fā)送數(shù)據(jù)l單向連接l確認(rèn)必須繼續(xù)l確認(rèn) FINl確認(rèn)最后的 SN + 1釋放過(guò)程看成兩個(gè)獨(dú)立的單工連接來(lái)理解ABFIN, SNaACK, AN=a+1ACK,DataACK, AN
9、=B+1FIN,SN=B2022-5-5164 TCP的流量控制的流量控制問(wèn)題:如何限制發(fā)送者的速率以實(shí)現(xiàn)收發(fā)速率匹配?l鏈路層采用固定窗口大小的流量控制。lTCP采用由接收方在ACK中通知發(fā)送方可用窗口大小(信用量)流控機(jī)制。但主機(jī)到主機(jī)的往返時(shí)延RTT(round-trip time)變化大。l為什么要引入這種復(fù)雜性?2022-5-517滑動(dòng)窗口協(xié)議中的發(fā)送方滑動(dòng)窗口協(xié)議中的發(fā)送方l順序號(hào):Seq,發(fā)送方必須在分組頭中包含一個(gè)順序號(hào)。l窗口尺寸:W,允許的連續(xù)發(fā)送未被證實(shí)的分組的最大個(gè)數(shù)。l證實(shí)信號(hào):Ack(i);證實(shí)0i1的分組被正確接受,累計(jì)證實(shí)策略。l定時(shí)器:l重傳機(jī)制:當(dāng)發(fā)生丟失時(shí)
10、,進(jìn)行重發(fā)糾錯(cuò)。1314 15 161718 19 20 21 22 23 24已發(fā)送且證實(shí)的已發(fā)送未證實(shí)的目前可發(fā)送的TCP窗口WSendBaseNextSeq2022-5-518acknowledgedsent可以發(fā)送的可以發(fā)送的 超出超出window的的Source PortDest. PortSequence NumberAcknowledgmentHL/FlagsWindowD. ChecksumUrgent PointerOptionsSource PortDest. PortSequence NumberAcknowledgmentHL/FlagsWindowD. Checksu
11、mUrgent PointerOptions.Packet SentPacket Received2022-5-519TCP中的信用量流控機(jī)制中的信用量流控機(jī)制l確認(rèn)與流控分離的思想:l涉及三個(gè)字段:順序號(hào)SN,確認(rèn)號(hào)AN,窗口尺寸Wl傳輸?shù)拿總€(gè)字節(jié)均分配一個(gè)SN。l當(dāng)發(fā)送方收到一個(gè)返回的報(bào)文段ANi,Wj,它的含義是:l序號(hào)0i-1的字節(jié)都被確認(rèn),下一個(gè)期望接收的字節(jié)是i.l發(fā)送方新的窗口大小為Wj,合法的窗口內(nèi)的序號(hào)為ij-1。2022-5-520信用量機(jī)制示例信用量機(jī)制示例2022-5-521TCP的窗口大小的窗口大小l確定合理的W值是實(shí)現(xiàn)高效率流量控制的關(guān)鍵。W的取值顯然與RTT有關(guān),
12、也與接收端可分配的緩沖區(qū)數(shù)量有關(guān)。(為簡(jiǎn)化分析,先不考慮緩沖區(qū)的限制)l設(shè)往返時(shí)延RTT,線路速率Rbps,分組長(zhǎng)度=L。 則當(dāng)W (RTTR)/L時(shí),不會(huì)造成發(fā)送端因等待確認(rèn)信號(hào),所引起的線路空閑。 直觀上,W與RTT成正比。但實(shí)際上W太大無(wú)意義,只會(huì)增加緩沖區(qū)的開(kāi)銷(xiāo)。l但在Internet上,端到端的時(shí)延變化很大,如何確定RTT?2022-5-522確定確定RTTl由于Internet的狀態(tài)隨時(shí)間在變,固定的RTT值對(duì)實(shí)際的網(wǎng)絡(luò)情況就可能有時(shí)顯得太長(zhǎng),有時(shí)又太短。因此TCP采用觀察最近的報(bào)文段的往返時(shí)延的方法來(lái)估計(jì)RTT,然后設(shè)定一個(gè)大一些的值。lTCP的RTT估值公式 估計(jì)RTT(1)估
13、計(jì)RTT 樣本RTT 其中, 在【RFC2988】的參考值 0.125。 含義是,使RTT對(duì)短暫的時(shí)延變化不敏感。2022-5-523結(jié)論:結(jié)論:TCP的窗口值的窗口值l在發(fā)送一側(cè),TCP的窗口WminCwin,RcvWin,其中RcvWin由接收方在ACK中給出, 而Cwin由發(fā)送方根據(jù)網(wǎng)絡(luò)的狀態(tài)確定。l因此,發(fā)送方的最大吞吐量 minCwin,RcvWin/RTT2022-5-524TCP的丟失重傳機(jī)制的丟失重傳機(jī)制l由于網(wǎng)絡(luò)層不提供反饋信息,為保證可靠傳輸,TCP必須采用超時(shí)/重傳機(jī)制來(lái)處理報(bào)文段的丟失問(wèn)題。l丟失的定義:超時(shí)或連續(xù)收到三個(gè)冗余的ACK。l問(wèn)題的關(guān)鍵:如何設(shè)定超時(shí)定時(shí)器R
14、TO? 顯然,RTO必須大于RTT,否則會(huì)造成不必要的重傳。2022-5-525RTO的估算公式的估算公式l顯然,RTO也不應(yīng)比RTT的估值大太多,否則當(dāng)出現(xiàn)丟失時(shí),TCP將不能很快地重傳該報(bào)文段。l估值RTO估值RTT4DevRTT(偏差) DevRTT(1) DevRTT |當(dāng)前RTT估值RTT均值) 推薦值0.25.2022-5-526TCP: 重傳示例Host ASeq=100, 20 bytes dataACK=100timepremature timeoutHost BSeq=92, 8 bytes dataACK=120Seq=92, 8 bytes dataSeq=92 tim
15、eoutACK=120Host ASeq=92, 8 bytes dataACK=100losstimeoutlost ACK scenarioHost BXSeq=92, 8 bytes dataACK=100timeSeq=92 timeoutSendBase= 100SendBase= 120SendBase= 120Sendbase= 1002022-5-527TCP 丟失重傳 2Host ASeq=92, 8 bytes dataACK=100losstimeoutCumulative ACK scenarioHost BXSeq=100, 20 bytes dataACK=120t
16、imeSendBase= 120結(jié)論:結(jié)論: 實(shí)際中,實(shí)際中,RTO的值一般的值一般為為1秒左右。秒左右。一旦發(fā)生超時(shí),一旦發(fā)生超時(shí),TCP將將重傳序號(hào)最小的未被確認(rèn)重傳序號(hào)最小的未被確認(rèn)的報(bào)文段,并將的報(bào)文段,并將RTO值加值加倍。倍。發(fā)送端只為最小的未被發(fā)送端只為最小的未被確認(rèn)的報(bào)文段啟動(dòng)一個(gè)超確認(rèn)的報(bào)文段啟動(dòng)一個(gè)超時(shí)定時(shí)器,每收到一個(gè)時(shí)定時(shí)器,每收到一個(gè)ACK,執(zhí)行一次復(fù)位,執(zhí)行一次復(fù)位。2022-5-5285 TCP的擁塞控制的擁塞控制概述l原因:流進(jìn)網(wǎng)絡(luò)的數(shù)據(jù)量超過(guò)了網(wǎng)絡(luò)的處理能力l信源不能知道網(wǎng)絡(luò)的實(shí)時(shí)狀態(tài)。l信源彼此之間互相不知道對(duì)方的行為l流量控制的區(qū)別:控制機(jī)制相似,但觸發(fā)的
17、原因與目的不同。l擁塞導(dǎo)致的現(xiàn)象:分組丟失,時(shí)延加大,網(wǎng)絡(luò)吞吐量下降10 Mbps100 Mbps1.5 Mbps2022-5-529擁塞控制技術(shù)的分類(lèi)擁塞控制技術(shù)的分類(lèi)l端到端的擁塞控制:l沒(méi)有來(lái)自網(wǎng)絡(luò)的顯式擁塞反饋指示l端系統(tǒng)只能通過(guò)觀測(cè)loss, delay等推測(cè)擁塞lTCP采用次方案網(wǎng)絡(luò)輔助的擁塞控制網(wǎng)絡(luò)輔助的擁塞控制:n路由器給端系統(tǒng)提供擁塞指示n單比特?fù)砣甘疚?n指明發(fā)送者應(yīng)該使用的發(fā)送速率n問(wèn)題: 導(dǎo)致路由器行為復(fù)雜化l根據(jù)網(wǎng)絡(luò)層是否為運(yùn)輸層提供顯式的擁塞狀態(tài)信息來(lái)分類(lèi)2022-5-530TCP擁塞控制要解決擁塞控制要解決 的的3個(gè)問(wèn)題個(gè)問(wèn)題1)如何限制一個(gè)已發(fā)生擁塞的連接的發(fā)
18、送速率?2)TCP發(fā)送方如何確定發(fā)生了擁塞?3)當(dāng)確定發(fā)生了擁塞后,采用什么算法來(lái)改變發(fā)送速率?2022-5-531發(fā)送方如何調(diào)整發(fā)送速率?發(fā)送方如何調(diào)整發(fā)送速率?l接收窗口RcvWin的值由接收方確定,然后通知發(fā)送方,它用來(lái)防止接收方緩存溢出。但沒(méi)有提供網(wǎng)絡(luò)的擁塞狀況。l網(wǎng)絡(luò)的狀況,由發(fā)送方探測(cè)確定,并記為擁塞窗口Cwin。l在任何時(shí)候,發(fā)送方實(shí)際的窗口大小應(yīng)為CWin和RcvWin中的最小值,即滿足: LastByteSent-LastByteAcked=minCWin,RcvWin.l為分析方便,我們忽略RcvWin,則得到發(fā)送方的發(fā)送速率RCWin/RTT。l顯然,在發(fā)送方調(diào)整CWin,就可以調(diào)整發(fā)送速率。2022-5-532擁塞的確定與控制算法擁塞的確定與控制算法l在TCP發(fā)送方,如果超時(shí),或連續(xù)受到三個(gè)冗余 的ACK,則認(rèn)為發(fā)生分組丟失事件,從而判定擁塞。lTCP的擁塞控制算法:l加性增,乘性減AIMD(additive-increase and multiplicative-decrease)l慢啟動(dòng)(slowstart)l超時(shí)反應(yīng)2022-5-533Cwin在不同階段的變化方式在不同階段的變化方式l慢啟動(dòng)階段:每經(jīng)過(guò)1個(gè)RTT,Cwin加倍。 即每收到一個(gè)Ack,執(zhí)行CwinCwin1。l擁塞避免階段:在沒(méi)有發(fā)生丟失事件下
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 交通標(biāo)線涂料采購(gòu)合同范例
- 租賃車(chē)輛運(yùn)營(yíng)合同范例
- 大米訂單合同范例
- 特殊經(jīng)營(yíng)合同范例
- 網(wǎng)絡(luò)活動(dòng)策劃合同范例
- 建筑幕墻檢測(cè)合同范例
- 供應(yīng)鏈倉(cāng)儲(chǔ)租賃合同范例
- 私廚合作合同范例
- 回收餐飲油脂合同范例
- 便利店出租合同范例
- 汽車(chē)認(rèn)識(shí)實(shí)訓(xùn)課件
- 輪機(jī)工程材料18章總結(jié)
- 公路管理行業(yè)支撐性科研課題立項(xiàng)評(píng)審評(píng)分標(biāo)準(zhǔn)表
- 單招面試技巧范文
- GB/T 5195.1-2006螢石氟化鈣含量的測(cè)定
- (職高)高一語(yǔ)文期末測(cè)試題及答案解析
- 2023年自考傳播學(xué)概論試題及答案
- 2023年青馬工程培訓(xùn)班結(jié)業(yè)考試題庫(kù)
- 紅色簡(jiǎn)約大氣年會(huì)晚會(huì)節(jié)目單
- 2023年住院醫(yī)師規(guī)范化培訓(xùn)胸外科出科考試
- 三九企業(yè)集團(tuán)商標(biāo)權(quán)資產(chǎn)評(píng)估報(bào)告書(shū)
評(píng)論
0/150
提交評(píng)論