什么是TCP?TCP協(xié)議三次握手?
1.什么是TCP協(xié)議?
TCP--傳輸控制協(xié)議[有連接的協(xié)議]
優(yōu)點(diǎn):保證數(shù)據(jù)安全可靠
缺點(diǎn):消耗大,效率低
2.TCP協(xié)議三次握手
TCP協(xié)議在通信的時候,要求通信的雙方先建立起連接(面向有連接的協(xié)議)。在建立連接的過程中需要經(jīng)過三次握手才能完成連接的建立。

第一次握手:Client將標(biāo)志位SYN置為1,隨機(jī)產(chǎn)生一個值seq=J,并將該數(shù)據(jù)包發(fā)送給Server,Client進(jìn)入SYN_SENT狀態(tài),等待Server確認(rèn)?!綜lient給Server發(fā)送創(chuàng)建連接的請求】
第二次握手:Server收到數(shù)據(jù)包后由標(biāo)志位SYN=1知道Client請求建立連接,Server將標(biāo)志位SYN和ACK都置為1,ack=J+1,隨機(jī)產(chǎn)生一個值seq=K,并將該數(shù)據(jù)包發(fā)送給Client以確認(rèn)連接請求,Server進(jìn)入SYN_RCVD狀態(tài)。 【Server被Client發(fā)送響應(yīng)信息】
第三次握手:Client收到確認(rèn)后,檢查ack是否為J+1,ACK是否為1,如果正確則將標(biāo)志位ACK置為1,ack=K+1,并將該數(shù)據(jù)包發(fā)送給Server,Server檢查ack是否為K+1,ACK是否為1,如果正確則連接建立成功,Client和Server進(jìn)入ESTABLISHED狀態(tài),完成三次握手,隨后Client與Server之間可以開始傳輸數(shù)據(jù)了。【Client給Server發(fā)送確認(rèn)信息】
TCP協(xié)議三次握手有點(diǎn)像打電話
第一次握手,客戶端發(fā)送一個信息,詢問服務(wù)器是否在線【客戶端---》服務(wù)器[你是張三嗎?]】
第二次握手,服務(wù)器收到客戶端的信息之后,作出確認(rèn),回復(fù)客戶端并詢問客戶端是否在線。
? ? 【服務(wù)器--》客戶端[我是張三,你是誰?]】
第三次握手,客戶端收到服務(wù)器的回復(fù)以后,確認(rèn)服務(wù)器的詢問。
? ? ?【客戶端---》服務(wù)器[我是你二舅]】
目的:客戶端確認(rèn)了服務(wù)器的真實(shí)存在,服務(wù)器也確認(rèn)了客戶端的真實(shí)存在