三次握手四次揮手

三次握手

在TCP層,有個(gè)FLAGS字段,這個(gè)字段有以下幾個(gè)標(biāo)識(shí):SYN, FIN, ACK, PSH, RST, URG.其中,對(duì)于我們?nèi)粘5姆治鲇杏玫木褪乔懊娴奈鍌€(gè)字段。它們的含義是:SYN表示建立連接赡若,F(xiàn)IN表示關(guān)閉連接,ACK表示響應(yīng)团甲,PSH表示有DATA數(shù)據(jù)傳輸逾冬,RST表示連接重置。

圖解三次握手
  1. 第一次握手:Client將標(biāo)志位SYN置為1,隨機(jī)產(chǎn)生一個(gè)值seq=x身腻,并將該數(shù)據(jù)包發(fā)送給Server产还,Client進(jìn)入SYN_SENT狀態(tài),等待Server確認(rèn)嘀趟。

  2. 第二次握手:Server收到數(shù)據(jù)包后由標(biāo)志位SYN=1知道Client請(qǐng)求建立連接脐区,Server將標(biāo)志位SYN和ACK都置為1,ack=x+1她按,隨機(jī)產(chǎn)生一個(gè)值seq=y牛隅,并將該數(shù)據(jù)包發(fā)送給Client以確認(rèn)連接請(qǐng)求,Server進(jìn)入SYN_RCVD狀態(tài)酌泰。

  3. 第三次握手:Client收到確認(rèn)后媒佣,檢查ack是否為x+1,ACK是否為1陵刹,如果正確則將標(biāo)志位ACK置為1默伍,ack=y+1,并將該數(shù)據(jù)包發(fā)送給Server衰琐,Server檢查ack是否為y+1也糊,ACK是否為1,如果正確則連接建立成功羡宙,Client和Server進(jìn)入ESTABLISHED狀態(tài)显设,完成三次握手,隨后Client與Server之間可以開始傳輸數(shù)據(jù)了辛辨。

為何使用三次握手

由于網(wǎng)絡(luò)延時(shí),server收到一個(gè)失效的連接請(qǐng)求后瑟枫,就誤認(rèn)為是client再次發(fā)出的一個(gè)新的連接斗搞。于是就向client發(fā)出確認(rèn)報(bào)文段,同意建立連接慷妙。假設(shè)不采用“三次握手”僻焚,那么只要server發(fā)出確認(rèn),新的連接就建立了膝擂。由于現(xiàn)在client并沒有發(fā)出建立連接的請(qǐng)求虑啤,因此不會(huì)理睬server的確認(rèn),也不會(huì)向server發(fā)送數(shù)據(jù)架馋。但server卻以為新的運(yùn)輸連接已經(jīng)建立狞山,并一直等待client發(fā)來數(shù)據(jù)。這樣叉寂,server的很多資源就白白浪費(fèi)掉了萍启。

四次揮手

圖解四次揮手
  1. 第一次揮手:Client發(fā)送一個(gè)FIN,用來關(guān)閉Client到Server的數(shù)據(jù)傳送,Client進(jìn)入FIN_WAIT_1狀態(tài)勘纯。

  2. 第二次揮手:Server收到FIN后局服,發(fā)送一個(gè)ACK給Client,確認(rèn)序號(hào)為收到序號(hào)+1(與SYN相同驳遵,一個(gè)FIN占用一個(gè)序號(hào))淫奔,Server進(jìn)入CLOSE_WAIT狀態(tài)。

  3. 第三次揮手:Server發(fā)送一個(gè)FIN堤结,用來關(guān)閉Server到Client的數(shù)據(jù)傳送唆迁,Server進(jìn)入LAST_ACK狀態(tài)。

  4. 第四次揮手:Client收到FIN后霍殴,Client進(jìn)入TIME_WAIT狀態(tài)媒惕,接著發(fā)送一個(gè)ACK給Server,確認(rèn)序號(hào)為收到序號(hào)+1来庭,Server進(jìn)入CLOSED狀態(tài)妒蔚,完成四次揮手。

為何使用4次揮手

服務(wù)端在LISTEN狀態(tài)下月弛,收到建立連接請(qǐng)求的SYN報(bào)文后肴盏,把ACK和SYN放在一個(gè)報(bào)文里發(fā)送給客戶端。而關(guān)閉連接時(shí)帽衙,當(dāng)收到對(duì)方的FIN報(bào)文時(shí)菜皂,僅僅表示對(duì)方不再發(fā)送數(shù)據(jù)了但是還能接收數(shù)據(jù),己方也未必全部數(shù)據(jù)都發(fā)送給對(duì)方了厉萝,所以己方可以立即close恍飘,也可以發(fā)送一些數(shù)據(jù)給對(duì)方后,再發(fā)送FIN報(bào)文給對(duì)方來表示同意現(xiàn)在關(guān)閉連接谴垫,因此章母,己方ACK和FIN一般都會(huì)分開發(fā)送。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末翩剪,一起剝皮案震驚了整個(gè)濱河市乳怎,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌前弯,老刑警劉巖蚪缀,帶你破解...
    沈念sama閱讀 206,482評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異恕出,居然都是意外死亡询枚,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門剃根,熙熙樓的掌柜王于貴愁眉苦臉地迎上來哩盲,“玉大人痹仙,你說我怎么就攤上這事乖仇《牛” “怎么了撩笆?”我有些...
    開封第一講書人閱讀 152,762評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵,是天一觀的道長抒线。 經(jīng)常有香客問我班巩,道長,這世上最難降的妖魔是什么嘶炭? 我笑而不...
    開封第一講書人閱讀 55,273評(píng)論 1 279
  • 正文 為了忘掉前任抱慌,我火速辦了婚禮,結(jié)果婚禮上眨猎,老公的妹妹穿的比我還像新娘抑进。我一直安慰自己,他們只是感情好睡陪,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,289評(píng)論 5 373
  • 文/花漫 我一把揭開白布寺渗。 她就那樣靜靜地躺著,像睡著了一般兰迫。 火紅的嫁衣襯著肌膚如雪信殊。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,046評(píng)論 1 285
  • 那天汁果,我揣著相機(jī)與錄音涡拘,去河邊找鬼。 笑死据德,一個(gè)胖子當(dāng)著我的面吹牛鳄乏,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播棘利,決...
    沈念sama閱讀 38,351評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼汞窗,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼!你這毒婦竟也來了赡译?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,988評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤不铆,失蹤者是張志新(化名)和其女友劉穎蝌焚,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體誓斥,經(jīng)...
    沈念sama閱讀 43,476評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡只洒,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,948評(píng)論 2 324
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了劳坑。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片毕谴。...
    茶點(diǎn)故事閱讀 38,064評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出涝开,到底是詐尸還是另有隱情循帐,我是刑警寧澤,帶...
    沈念sama閱讀 33,712評(píng)論 4 323
  • 正文 年R本政府宣布舀武,位于F島的核電站拄养,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏银舱。R本人自食惡果不足惜瘪匿,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,261評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望寻馏。 院中可真熱鬧棋弥,春花似錦、人聲如沸诚欠。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽聂薪。三九已至家乘,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間藏澳,已是汗流浹背仁锯。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評(píng)論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留翔悠,地道東北人业崖。 一個(gè)月前我還...
    沈念sama閱讀 45,511評(píng)論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像蓄愁,于是被迫代替她去往敵國和親双炕。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,802評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容