TCP三次握手妙蔗、四次揮手的理解

參考視頻鏈接:b站蛋老師視頻鏈接

握手機制的核心:怎樣的握手能判斷出那些請求或者哪些響應需要丟棄指孤,并不是只能三次握手宾袜,而是至少三次握手才能保證可岂。

TCP報文中有:SYN(synchronization 同步的意思),ACK(acknowledgment 確認的意思),FIN(finish 結束的意思)等標識旗吁,如果設置為1則為開啟,設置為0則為關閉哮肚。

三次握手:

1.客戶端開啟SYN登夫,表示想和服務端進行數(shù)據(jù)的同步,并生成一個序號A允趟,同步以后(即三次握手之后恼策,客戶端就可以和服務端互相發(fā)送消息);

2.服務器收到SYN拼窥,做出響應:在TCP報文中把SYN和ACK開啟(確認同步)戏蔑,服務器也生成一個序號B蹋凝,并生成一個確認號為客戶端的序號A+1;

3.客戶端收到SYN和ACK以及服務器生成的序號B、確認號(A+1)总棵,通過確認號-1對比自身的序號鳍寂,就可以知道握手的對象對不對,再通過服務端給到的序號B和確認號A+1生成自己的序號和確認號情龄,客戶端向服務端發(fā)送迄汛,開啟ACK標識,序號為服務端的確認號骤视,確認號為服務端的序號+1鞍爱;

注:如果每次客戶端發(fā)送SYN,服務器都記住其序號并生成自己需要記住的序號专酗,那服務器需要掛起很多資源睹逃,如果有黑客不斷發(fā)送SYN又不進行下一步,服務器會原地崩潰(DDoS攻擊 )祷肯,所以服務器不保存自己的序號沉填,根據(jù)服務器的ip、端口號等私有信息進行運算得到序號佑笋。

在握手的過程中翼闹,兩端可以根據(jù)序號、確認號蒋纬,或者控制位(1.SYN,2.SYN+ACK,3.ACK)來區(qū)分進行到哪一個步驟,丟棄一些不必要的報文猎荠。

蛋老師的例子

握手之后就建立了連接,客戶端就可以發(fā)送HTTP請求了蜀备,然后服務器做出響應关摇。

假設兩端交互完畢,各自可能發(fā)起關閉連接的要求(四次揮手)(客戶端琼掠、服務端都能主動發(fā)起關閉請求)拒垃。

四次揮手:

假設客戶端主動發(fā)起關閉要求:

1.客戶端開啟FIN和ACK兩個控制位,此時序號和確認號不用固定數(shù)字表示瓷蛙;

2.服務端先發(fā)送ACK確認悼瓮,服務端生成序號、確認號的過程與握手時一致艰猬;

3.此時客戶端不會直接關閉通道横堡,也許服務端還有需要發(fā)送的數(shù)據(jù),等服務端發(fā)送完之后冠桃,會再發(fā)送一個FIN+ACK進行最后確認命贴,此時序號、確認號不需要改變。

4.客戶端得到服務端最終的確認污茵,發(fā)送ACK進行確認,生成序號與確認號規(guī)則與握手時一致葬项;

為什么需要至少四次揮手:可能存在未發(fā)送完畢的數(shù)據(jù)。


蛋老師的圖
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末民珍,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子嚷量,更是在濱河造成了極大的恐慌陋桂,老刑警劉巖蝶溶,帶你破解...
    沈念sama閱讀 221,820評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異抖所,居然都是意外死亡秸脱,警方通過查閱死者的電腦和手機部蛇,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,648評論 3 399
  • 文/潘曉璐 我一進店門涯鲁,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人有序,你說我怎么就攤上這事⌒袷伲” “怎么了警绩?”我有些...
    開封第一講書人閱讀 168,324評論 0 360
  • 文/不壞的土叔 我叫張陵盅称,是天一觀的道長肩祥。 經常有香客問我,道長缩膝,這世上最難降的妖魔是什么混狠? 我笑而不...
    開封第一講書人閱讀 59,714評論 1 297
  • 正文 為了忘掉前任,我火速辦了婚禮疾层,結果婚禮上将饺,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好予弧,可當我...
    茶點故事閱讀 68,724評論 6 397
  • 文/花漫 我一把揭開白布刮吧。 她就那樣靜靜地躺著,像睡著了一般掖蛤。 火紅的嫁衣襯著肌膚如雪杀捻。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,328評論 1 310
  • 那天坠七,我揣著相機與錄音水醋,去河邊找鬼。 笑死彪置,一個胖子當著我的面吹牛拄踪,可吹牛的內容都是我干的。 我是一名探鬼主播拳魁,決...
    沈念sama閱讀 40,897評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼惶桐,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了潘懊?” 一聲冷哼從身側響起姚糊,我...
    開封第一講書人閱讀 39,804評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎授舟,沒想到半個月后救恨,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經...
    沈念sama閱讀 46,345評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡释树,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,431評論 3 340
  • 正文 我和宋清朗相戀三年肠槽,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片奢啥。...
    茶點故事閱讀 40,561評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡秸仙,死狀恐怖,靈堂內的尸體忽然破棺而出桩盲,到底是詐尸還是另有隱情寂纪,我是刑警寧澤,帶...
    沈念sama閱讀 36,238評論 5 350
  • 正文 年R本政府宣布赌结,位于F島的核電站捞蛋,受9級特大地震影響,放射性物質發(fā)生泄漏柬姚。R本人自食惡果不足惜襟交,卻給世界環(huán)境...
    茶點故事閱讀 41,928評論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望伤靠。 院中可真熱鬧捣域,春花似錦啼染、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,417評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽贞言。三九已至,卻和暖如春该窗,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背酗失。 一陣腳步聲響...
    開封第一講書人閱讀 33,528評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留规肴,地道東北人。 一個月前我還...
    沈念sama閱讀 48,983評論 3 376
  • 正文 我出身青樓删壮,卻偏偏與公主長得像,于是被迫代替她去往敵國和親央碟。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,573評論 2 359

推薦閱讀更多精彩內容