連接建立過(guò)程叫做三次握手
發(fā)布時(shí)間:2014/9/7 22:16:46 訪問(wèn)次數(shù):607
TCP客戶進(jìn)程收到B的確認(rèn)后,還要向HEF4081BP給出確認(rèn)。確認(rèn)報(bào)文段的ACK置l,確認(rèn)號(hào)ack:y+1,而自己的序號(hào)seq= x+l。TCP的標(biāo)準(zhǔn)規(guī)定,ACK報(bào)文段可烈攜帶數(shù)據(jù)。但如果不攜帶數(shù)據(jù)則不消耗序號(hào),在這種情況下,下一個(gè)數(shù)據(jù)報(bào)文段的序號(hào)仍是seq=x+l。這
時(shí),TCP連接已經(jīng)建立,A進(jìn)入ESTABLISHED(已建立連接)狀態(tài)。
當(dāng)B收到A的確認(rèn)后,也進(jìn)入ESTABLISHED狀態(tài)。
上面給出的連接建立過(guò)程叫做三次握手(three-way handshake)'2J。
為什么A還要發(fā)送一次確認(rèn)呢?這主要是為了防止已失效的連接請(qǐng)求報(bào)文段突然又傳送到了B,因而產(chǎn)生錯(cuò)誤。
所謂“已失效的連接請(qǐng)求報(bào)文段”是這樣產(chǎn)生的?紤]一種正常情況。A發(fā)出連接請(qǐng)求,但因連接請(qǐng)求報(bào)文丟失而未收到確認(rèn)。于是A再重傳一次連接請(qǐng)求。后來(lái)收到了確認(rèn),建立了連接。數(shù)據(jù)傳輸完畢后,就釋放了連接。A共發(fā)送了兩個(gè)連接請(qǐng)求報(bào)文段,其中
第一個(gè)丟失,第二個(gè)到達(dá)了B。沒(méi)有“已失效的連接請(qǐng)求報(bào)文段”。
現(xiàn)假定出現(xiàn)一種異常情況,即A發(fā)出的第一個(gè)連接請(qǐng)求報(bào)文段并沒(méi)有丟失,而是在某些網(wǎng)絡(luò)結(jié)點(diǎn)長(zhǎng)時(shí)間滯留了,以致延誤到連接釋放以后的某個(gè)時(shí)間才到達(dá)B。本來(lái)這是一個(gè)早已失效的報(bào)文段。但B收到此失效的連接請(qǐng)求報(bào)文段后,就誤認(rèn)為是A又發(fā)出一次新的連接請(qǐng)求。于是就向A發(fā)出確認(rèn)報(bào)文段,同意建立連接。假定不采用三次握手,那么只要B發(fā)出確認(rèn),新的連接就建立了。
由于現(xiàn)在A并沒(méi)有發(fā)出建立連接的請(qǐng)求,因此不會(huì)理睬B的確認(rèn),也不會(huì)向B發(fā)送數(shù)據(jù)。但B卻以為新的運(yùn)輸連接已經(jīng)建立了,并一直等待A發(fā)來(lái)數(shù)據(jù)。B的許多資源就這樣白白浪費(fèi)了。
采用三次握手的辦法可以防止上述現(xiàn)象的發(fā)生。例如在剛才的情況下,A不會(huì)向B的確認(rèn)發(fā)出確認(rèn)。B由于收不到確認(rèn),就知道A并沒(méi)有要求建立連接。
①注:傳輸控制塊TCB (Transmission Control Block)存儲(chǔ)了每一個(gè)連接中的一螳重要信息,如:TCP連接表,劍發(fā)送耳¨接收緩存的指針,到重傳隊(duì)列的指針,當(dāng)前的發(fā)送和接收序號(hào),等等。
②注:章鴻獻(xiàn)主編的<最新英漢計(jì)算機(jī)詞典》(清華人學(xué)出版社1999年出版)給日{(diào)的譯名是“廣為流行的譯名“二次握手”。
TCP客戶進(jìn)程收到B的確認(rèn)后,還要向HEF4081BP給出確認(rèn)。確認(rèn)報(bào)文段的ACK置l,確認(rèn)號(hào)ack:y+1,而自己的序號(hào)seq= x+l。TCP的標(biāo)準(zhǔn)規(guī)定,ACK報(bào)文段可烈攜帶數(shù)據(jù)。但如果不攜帶數(shù)據(jù)則不消耗序號(hào),在這種情況下,下一個(gè)數(shù)據(jù)報(bào)文段的序號(hào)仍是seq=x+l。這
時(shí),TCP連接已經(jīng)建立,A進(jìn)入ESTABLISHED(已建立連接)狀態(tài)。
當(dāng)B收到A的確認(rèn)后,也進(jìn)入ESTABLISHED狀態(tài)。
上面給出的連接建立過(guò)程叫做三次握手(three-way handshake)'2J。
為什么A還要發(fā)送一次確認(rèn)呢?這主要是為了防止已失效的連接請(qǐng)求報(bào)文段突然又傳送到了B,因而產(chǎn)生錯(cuò)誤。
所謂“已失效的連接請(qǐng)求報(bào)文段”是這樣產(chǎn)生的。考慮一種正常情況。A發(fā)出連接請(qǐng)求,但因連接請(qǐng)求報(bào)文丟失而未收到確認(rèn)。于是A再重傳一次連接請(qǐng)求。后來(lái)收到了確認(rèn),建立了連接。數(shù)據(jù)傳輸完畢后,就釋放了連接。A共發(fā)送了兩個(gè)連接請(qǐng)求報(bào)文段,其中
第一個(gè)丟失,第二個(gè)到達(dá)了B。沒(méi)有“已失效的連接請(qǐng)求報(bào)文段”。
現(xiàn)假定出現(xiàn)一種異常情況,即A發(fā)出的第一個(gè)連接請(qǐng)求報(bào)文段并沒(méi)有丟失,而是在某些網(wǎng)絡(luò)結(jié)點(diǎn)長(zhǎng)時(shí)間滯留了,以致延誤到連接釋放以后的某個(gè)時(shí)間才到達(dá)B。本來(lái)這是一個(gè)早已失效的報(bào)文段。但B收到此失效的連接請(qǐng)求報(bào)文段后,就誤認(rèn)為是A又發(fā)出一次新的連接請(qǐng)求。于是就向A發(fā)出確認(rèn)報(bào)文段,同意建立連接。假定不采用三次握手,那么只要B發(fā)出確認(rèn),新的連接就建立了。
由于現(xiàn)在A并沒(méi)有發(fā)出建立連接的請(qǐng)求,因此不會(huì)理睬B的確認(rèn),也不會(huì)向B發(fā)送數(shù)據(jù)。但B卻以為新的運(yùn)輸連接已經(jīng)建立了,并一直等待A發(fā)來(lái)數(shù)據(jù)。B的許多資源就這樣白白浪費(fèi)了。
采用三次握手的辦法可以防止上述現(xiàn)象的發(fā)生。例如在剛才的情況下,A不會(huì)向B的確認(rèn)發(fā)出確認(rèn)。B由于收不到確認(rèn),就知道A并沒(méi)有要求建立連接。
①注:傳輸控制塊TCB (Transmission Control Block)存儲(chǔ)了每一個(gè)連接中的一螳重要信息,如:TCP連接表,劍發(fā)送耳¨接收緩存的指針,到重傳隊(duì)列的指針,當(dāng)前的發(fā)送和接收序號(hào),等等。
②注:章鴻獻(xiàn)主編的<最新英漢計(jì)算機(jī)詞典》(清華人學(xué)出版社1999年出版)給日{(diào)的譯名是“廣為流行的譯名“二次握手”。
上一篇:TCP的運(yùn)輸連接管理
上一篇:TCP的連接釋放
熱門(mén)點(diǎn)擊
- 基本的帶通調(diào)制方法
- RIP協(xié)議的缺點(diǎn):壞消息傳播得慢
- 施密斯( Smith)預(yù)估控制算法
- 什么叫做比特時(shí)間
- IEEE規(guī)定地址字段的第一字節(jié)的最低位為I/
- 符合DIX Ethernet V2標(biāo)準(zhǔn)的局域
- 侍播時(shí)延對(duì)載波監(jiān)聽(tīng)的影響
- 信道利用率
- 具有三層ISP結(jié)構(gòu)的因特網(wǎng)
- PPP協(xié)議應(yīng)滿足的需求
推薦技術(shù)資料
- 按鈕與燈的互動(dòng)實(shí)例
- 現(xiàn)在趕快去看看這個(gè)目錄卞有什么。FGA15N120AN... [詳細(xì)]
- PCB嵌入式功率芯片封裝工作原理
- 莫仕儲(chǔ)能連接器技術(shù)結(jié)構(gòu)應(yīng)用詳情
- 新款 Snapdragon X
- Intel 18A(1.8nm
- 業(yè)界首款STM32配套無(wú)線物聯(lián)網(wǎng)模塊
- 2025年全球半導(dǎo)體產(chǎn)業(yè)十大熱門(mén)看點(diǎn)
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究