三次握手(three times handshake;three-way handshake)所謂的"三次握手"即對每次發(fā)送的數(shù)據(jù)量是怎樣跟蹤進(jìn)行協(xié)商使數(shù)據(jù)段的發(fā)送和接收同步,根據(jù)所接收到的數(shù)據(jù)量而確定的數(shù)據(jù)確認(rèn)數(shù)及數(shù)據(jù)發(fā)送、接收完畢后何時撤消聯(lián)系,并建立虛連接。
創(chuàng)新互聯(lián)專注于企業(yè)成都營銷網(wǎng)站建設(shè)、網(wǎng)站重做改版、龍南網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、H5場景定制、商城建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)營銷網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為龍南等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
為了提供可靠的傳送,TCP在發(fā)送新的數(shù)據(jù)之前,以特定的順序?qū)?shù)據(jù)包的序號,并需要這些包傳送給目標(biāo)機(jī)之后的確認(rèn)消息。TCP總是用來發(fā)送大批量的數(shù)據(jù)。當(dāng)應(yīng)用程序在收到數(shù)據(jù)后要做出確認(rèn)時也要用到TCP。
過程:
(1)客戶端向服務(wù)端發(fā)出連接請求SYN,等待服務(wù)端響應(yīng)
(2)服務(wù)端做出響應(yīng)ACK和連接信號SYN
(3)為防止數(shù)據(jù)丟失,客戶端也要做出響應(yīng)ACK,確認(rèn)是否有效
數(shù)據(jù)傳輸總是從 客戶端---》服務(wù)端,因此客戶端和服務(wù)端不是固定的。
由于TCP連接是全雙工的,因此每個方向都必須單獨進(jìn)行關(guān)閉。這原則是當(dāng)一方完成它的數(shù)據(jù)發(fā)送任務(wù)后就能發(fā)送一個FIN來終止這個方向的連接。收到一個 FIN只意味著這一方向上沒有數(shù)據(jù)流動,一個TCP連接在收到一個FIN后仍能發(fā)送數(shù)據(jù)。首先進(jìn)行關(guān)閉的一方將執(zhí)行主動關(guān)閉,而另一方執(zhí)行被動關(guān)閉。
1.(客戶端:終止等待1)客戶端向服務(wù)端發(fā)起關(guān)閉連接的請求,不再發(fā)送數(shù)據(jù)了,但如果服務(wù)器發(fā)送數(shù)據(jù),客戶端還要接收
2.(服務(wù)端:關(guān)閉等待)服務(wù)端可能還有數(shù)據(jù)為傳輸完畢,所以還無法完成關(guān)閉。所以先響應(yīng)客戶端ACK,,表示收到關(guān)閉請求。客戶端向服務(wù)器的方向釋放,整個處于半關(guān)閉狀態(tài)
3.(客戶端:終止等待2)客戶端收到服務(wù)器的確認(rèn)請求后,客戶端進(jìn)入終止等待2,等待服務(wù)端發(fā)送連接釋放報文
4.(服務(wù)端:最后確認(rèn))等服務(wù)器的數(shù)據(jù)傳輸工作完成,就把FIN信號(連接釋放報文)發(fā)送給客戶端,可能還會發(fā)送一些數(shù)據(jù)
5.(客戶端:時間等待)客戶端收到服務(wù)器的連接釋放報文。發(fā)出確認(rèn)ACK
6.(服務(wù)端:CLOSED)服務(wù)端收到客戶端的確認(rèn),立即進(jìn)入CLOSED狀態(tài)
7.服務(wù)器結(jié)束TCP連接的時間比客戶端早
本文名稱:JavaTcp的三次握手和四次揮手
網(wǎng)站URL:http://chinadenli.net/article4/gojpie.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、網(wǎng)站內(nèi)鏈、標(biāo)簽優(yōu)化、營銷型網(wǎng)站建設(shè)、微信小程序、網(wǎng)站策劃
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)