淄博著名網(wǎng)站開(kāi)發(fā)方法,年度關(guān)鍵詞,互聯(lián)網(wǎng)網(wǎng)站建設(shè)是什么,網(wǎng)站后臺(tái)頁(yè)面設(shè)計(jì)教程文章目錄 1. 單工通信、半雙工通信和全雙工通信2. TCP的三次握手和四次揮手 1. 單工通信、半雙工通信和全雙工通信
主要區(qū)別在于信息傳輸?shù)姆较蚝蜁r(shí)間安排。單工通信是指信息只能在一個(gè)方向上傳輸?shù)耐ㄐ欧绞?。半雙工通信允許信息在兩個(gè)方向上傳輸,但在任何給定的時(shí)…
文章目錄
- 1. 單工通信、半雙工通信和全雙工通信
- 2. TCP的三次握手和四次揮手
1. 單工通信、半雙工通信和全雙工通信
- 主要區(qū)別在于信息傳輸?shù)姆较蚝蜁r(shí)間安排。
- 單工通信是指信息只能在一個(gè)方向上傳輸的通信方式。
- 半雙工通信允許信息在兩個(gè)方向上傳輸,但在任何給定的時(shí)間,只有一個(gè)方向上的設(shè)備可以發(fā)送信息。
- 全雙工通信是指在任何給定的時(shí)間,通信的雙方都可以同時(shí)發(fā)送和接收信息。
2. TCP的三次握手和四次揮手
- 三次握手是為了建立TCP連接,其具體過(guò)程如下:
- 第一次握手(發(fā)送連接請(qǐng)求):客戶端發(fā)送SYN包(SYN=1,seq=x)到服務(wù)器,并進(jìn)入SYN_SEND狀態(tài),等待服務(wù)器確認(rèn)。
- 第二次握手(確認(rèn)收到請(qǐng)求):服務(wù)器收到SYN包,必須確認(rèn)客戶端的SYN(ACK=1,ack=x+1),同時(shí)自己也發(fā)送一個(gè)SYN包(SYN=1,seq=y),即SYN+ACK包,此時(shí)服務(wù)器進(jìn)入SYN_RECV狀態(tài)。
- 第三次握手(確認(rèn)收到請(qǐng)求的確認(rèn)):客戶端收到服務(wù)器的SYN+ACK包,向服務(wù)器發(fā)送確認(rèn)包ACK(ACK=1,ack=y+1,seq=x+1),此包發(fā)送完畢,客戶端和服務(wù)器進(jìn)入ESTABLISHED狀態(tài),完成三次握手。
- 四次揮手是為了終止TCP連接,具體過(guò)程如下:
- 第一次揮手(客戶端發(fā)送終止請(qǐng)求,主動(dòng)關(guān)閉TCP連接):客戶端發(fā)送一個(gè)FIN報(bào)文,報(bào)文中會(huì)指定一個(gè)序列號(hào),并停止再發(fā)送數(shù)據(jù),主動(dòng)關(guān)閉TCP連接,進(jìn)入FIN-WAIT-1(終止等待1)狀態(tài),等待服務(wù)端的確認(rèn)。
- 第二次揮手(服務(wù)端確認(rèn)收到請(qǐng)求):服務(wù)端收到FIN之后,會(huì)發(fā)送ACK報(bào)文,且把客戶端的序列號(hào)值+1作為ACK報(bào)文的序列號(hào)值,表明已經(jīng)收到客戶端的報(bào)文了,此時(shí)服務(wù)端處于CLOSE_WAIT(關(guān)閉等待)狀態(tài)??蛻舳耸盏椒?wù)端的確認(rèn)后,進(jìn)入FIN-WAIT-2(終止等待2)狀態(tài),等待服務(wù)端發(fā)出的連接釋放報(bào)文段。
- 第三次揮手(服務(wù)端發(fā)送終止請(qǐng)求,等待最后確認(rèn)):如果服務(wù)端也想斷開(kāi)連接了,和客戶端的第一次揮手一樣,發(fā)給FIN報(bào)文,且指定一個(gè)序列號(hào)。此時(shí)服務(wù)端處于LAST_ACK(最后確認(rèn))的狀態(tài)。即服務(wù)端沒(méi)有要向客戶端發(fā)出的數(shù)據(jù),服務(wù)端發(fā)出連接釋放報(bào)文段(FIN=1,ACK=1,序號(hào)seq=w,確認(rèn)號(hào)ack=u+1),服務(wù)端進(jìn)入LAST_ACK(最后確認(rèn))狀態(tài),等待客戶端的確認(rèn)。
- 第四次揮手(客戶端確認(rèn)收到請(qǐng)求,服務(wù)端關(guān)閉連接):客戶端收到FIN之后,一樣發(fā)送一個(gè)ACK報(bào)文作為應(yīng)答,且把服務(wù)端的序列號(hào)值+1作為自己ACK報(bào)文的序列號(hào)值,此時(shí)客戶端處于TIME_WAIT(時(shí)間等待)狀態(tài)。需要過(guò)一陣子以確保服務(wù)端收到自己的ACK報(bào)文之后才會(huì)進(jìn)入CLOSED(關(guān)閉)狀態(tài)。服務(wù)端收到ACK報(bào)文之后,就處于關(guān)閉連接了,處于CLOSED狀態(tài)。即客戶端收到服務(wù)端的連接釋放報(bào)文段后,對(duì)此發(fā)出確認(rèn)報(bào)文段(ACK=1,seq=u+1,ack=w+1),客戶端進(jìn)入TIME_WAIT(時(shí)間等待)狀態(tài)。此時(shí)TCP未釋放掉,需要經(jīng)過(guò)時(shí)間等待計(jì)時(shí)器設(shè)置的時(shí)間2MSL后,客戶端才進(jìn)入CLOSED狀態(tài)。