TCP三次握手原理容易忘記?3分鐘看完本文,這輩子忘不了!

嵌入式小美老師 發佈 2024-04-25T23:45:35.646368+00:00

天天都在談的TCP三次握手,大家還知道它的原理嗎?今天瑞哥就帶著大家了解一下,對這塊不熟悉的童鞋,可以花費你寶貴的三分鐘看一下本文留個印象。

你好,這裡是網絡技術聯盟站。

天天都在談的TCP三次握手,大家還知道它的原理嗎?今天瑞哥就帶著大家了解一下,對這塊不熟悉的童鞋,可以花費你寶貴的三分鐘看一下本文留個印象。

讓我們直接開始!

一、什麼是TCP?

  • 英文全稱:Transmission Control Protocol
  • 中文名稱:傳輸控制協議
  • 是 IP 網絡中用於錯誤控制的協議
  • 運行在OSI參考模型第4層:傳輸層


嵌入式物聯網需要學的東西真的非常多,千萬不要學錯了路線和內容,導致工資要不上去!

無償分享大家一個資料包,差不多150多G。裡面學習內容、面經、項目都比較新也比較全!某魚上買估計至少要好幾十。

點擊這裡找小助理0元領取:點擊文中文領取


二、TCP 特點

2.1 面向連接

上面提到TCP是英文「Transmission Control Protocol」的縮寫,「Transmission」翻譯為傳輸或傳送,所以TCP意為控制傳輸的協議,這裡的傳輸是連接,與通信的對方建立虛擬的通信路徑,這裡稱為「面向連接」,TCP具有面向連接的特性,通過控制連接來實現安全、高可靠的通信。

2.2 可靠

TCP通過控制連接來實現高可靠的通信,數據通信的可靠性意味著數據不會丟失或亂序,TCP在通信前進行了充分的準備,保證了可靠的通信,因此,在使用TCP時,應用端不需要有保證可靠性的機制。

2.3 全雙工通信

傳輸數據時,如果有兩條路由,則可以同時向不同方向發送和接收數據,但如果只有一條路由,則不能同時發送數據,存在兩條路徑的狀態稱為全雙工通信,只有一條路徑的狀態稱為半雙工通信

由於TCP能夠進行全雙工通信,兩個信號可以同時順利傳輸,不會像半雙工通信那樣在中間發生碰撞。

2.4 同步序列號SYN和ACK號

在 TCP 中,數據以小塊的形式發送,出於這個原因,我們有一個「序列號」和一個「ACK 號」作為管理細碎數據恢復順序的機制,在通信的時候,SYN位是發送給連接請求目的地的,接收方也返回SYN來同步這兩個數,然後返回ACK。

三、TCP三次握手

在正式講三次握手前,我們用生活的例子預熱一下「三次握手」的概念。

比如小劉是個剛畢業的應屆生,每周要定時向他的上級匯報工作。

在一個夜黑風高的夜晚,小劉潛入他領導辦公室準備匯報工作。

小劉:領導,我要向你匯報最近的工作情況,你能聽到我說的話嗎?

領導:可以聽到,小劉,我說話你聽見嗎?

小劉:聽見!聽見!那我開始了。

小劉:xxxxxx。

上面就是生活中三次確認的過程,那麼在TCP中,三次握手也很類似。

在實際傳輸數據之前,TCP會在開始通信之前確認「是否與對方正常連接?」。

TCP 頭信息有 SYN 和 ACK 等標誌,通過打開/關閉這些標誌,它們被用作相互確認信息。

上面的圖就是TCP三次握手的簡易過程,可以解釋為:

  • SYN:是否開始通信的確認;
  • SYN+ACK:同意開始通信的信號;
  • ACK:開始通信的信號;
  • ESTABLISHED:建立TCP連接。

這就是TCP三次握手,總體來說還是很簡單的,主要是要記住上面這張圖,那麼對於三次握手的原理,你就很容易掌握。這裡推薦大家關注公眾號:網絡技術聯盟站,每天推送高質量網絡技術文章。

四、總結

本文主要給大家介紹了:

  • 什麼是TCP?
  • TCP 特點
    • 面向連接
    • 可靠
    • 全雙工通信
    • 同步序列號SYN和ACK號
  • TCP三次握手

最後感謝您的閱讀,如果本文對您有所幫助,可以收藏並轉發給您的朋友,有任何問題歡迎在下方評論區與我討論!

轉載自:網絡技術聯盟展

文章來源於TCP三次握手原理容易忘記?3分鐘看完本文,這輩子忘不了!

原文連結:https://mp.weixin.qq.com/s/UZZP7lUFDUw5_UhA6Vmu8g

關鍵字: