成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

TCP為什么需要三次握手?用最通俗的話解釋給你聽

網絡 通信技術
TCP實現原理和為什么需要三次握手?兩次握手不可以?四次握手不可以?讀者可以帶著疑問,看一遍本篇博客的詳細講解。

[[422813]]

TCP實現原理和為什么需要三次握手?兩次握手不可以?四次握手不可以?讀者可以帶著疑問,看一遍本篇博客的詳細講解

ok,首先解釋原因之前還是要先復習一下TCP的基本知識和三次握手協議:

1、什么是TCP協議?

TCP:Transmission Control Protocol翻譯過來就是傳輸控制協議,TCP協議是一個面向連接的、可靠的、基于字節流的傳輸層協議

RFC 793對TCP連接的定義:

Connections:

  • The reliability and flow control mechanisms described above require that TCPs initialize and maintain certain status information for each data stream.
  • The combination of this information, including sockets, sequence numbers, and window sizes, is called a connection.

其大致意思是TCP連接是為了用于保證可靠性和流控制機制的,包括 Socket、序列號及窗口大小。

其中Socket是由IP加端口組成的,序列號是用來解決亂序問題的,而窗口大小則是用來做流量控制的。

2、TCP協議的特性

  • 面向連接:是指TCP是通過服務端和客戶端進行連接的協議
  • 面向字節流:TCP服務端和客戶端之間的數據通訊是通過字節流數據傳輸的
  • 可靠的:是指TCP服務端客戶端之間的數據傳輸是很穩定的,即使網絡很差的情況,TCP都能保證將數據傳輸到接收方。

ps:TCP傳輸的可靠性得益于TCP會記錄信息的發送狀態,哪些數據收到了,哪些數據沒收到,TCP都是會記錄的,然后哪些丟包的情況,就是發送不成功的情況,TCP會重新發包,所以TCP的可靠性就是這么保證的

3、TCP三次握手執行流程

TCP的三次握手執行過程是面試中的一個很常見的問題,因為這個問題也是計算機的一個很重要的基礎,所以需要認真學習

關鍵字說明:

  • SYN:Synchronize Sequence Numbers,同步序列編號
  • ACK:Acknowledge Character,確認字符
  • SEQ:Sequence Number,序列號

TCP三次握手執行過程:

  • 首先,服務端和客戶端都是處于CLOSED狀態的,然后服務端啟動,監聽端口,狀態變為LISTEN(監聽)狀態
  • 客戶端為了請求資源,發送連接,發送同步序列號SYN,此時客戶端就變成了SYN-SEND狀態
  • 服務端接收到客戶端請求之后,發送SYN和ACK,然后服務端狀態就變成SYN-RCVD狀態
  • 客戶端接收到信息之后,再次發送ACK,然后變成ESTABLISHED(已確認)狀態,服務端接收到返回信息后,狀態也變成ESTABLISHED(已確認)狀態

4、TCP協議為什么需要三次握手?

ok,知道了TCP的三次握手的基本工作原理之后,就可以解釋為什么TCP需要三次握手?為什么不設計成兩次握手就可以?

原因:避免重復連接

其實在RFC 793 Transmission Control Protocol里就有指出為什么要三次握手的原因

The principle reason for the three-way handshake is to prevent old duplicate connection initiations from causing confusion.

翻譯為中文大致意思是主要原因是為了防止舊的重復連接引起連接混亂問題

比如在網絡環境比較復雜的情況,客戶端可能會連續發送多次請求。如果只設計成兩次握手的情況,服務端只能一直接收請求,然后返回請求信息,也不知道客戶端是否請求成功。這些過期請求的話就會造成網絡連接的混亂。

所以設計成三次握手的情況,客戶端在接收到服務端SEQ+1的返回消息之后,就會知道這個連接是歷史連接,所以會發送報文給服務端,告訴服務端。

所以TCP設計成三次握手的目的就是為了避免重復連接。

然后可以設計成四次握手?五次握手?不可以?

答案是也是可以的,不過為了節省資源,三次握手就可以符合實際情況,所以就沒必要設計成四次握手、五次握手等等情況

 

責任編輯:未麗燕 來源: 今日頭條
相關推薦

2023-09-07 16:46:54

TCP數據傳遞

2022-07-25 07:07:35

TCP客戶端服務器

2019-12-12 10:36:43

TCPSYNIP

2024-10-16 08:38:37

TCP編號信息

2021-05-28 09:08:20

TCP連接序列號

2024-07-10 12:00:42

2021-12-13 06:23:14

TCP三次握手網絡

2021-04-30 13:32:17

TCP三次握手網絡協議

2022-07-07 09:00:17

TCP 連接HTTP 協議

2019-05-14 10:09:06

TCP連接握手

2023-10-24 15:22:09

TCPUDP

2020-12-08 06:34:16

TCP握手SYN 報文

2022-10-10 07:34:36

TCP三次握手區塊鏈

2015-10-13 09:42:52

TCP網絡協議

2019-06-12 11:26:37

TCP三次握手四次揮手

2024-05-07 08:15:33

TCP四次揮手三次握手

2024-01-12 08:23:11

TCPACK服務器

2021-03-08 18:08:08

TCP Connect 協議

2024-10-09 20:54:16

2018-07-05 14:25:01

TCP握手原理
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品免费福利 | 亚洲午夜精品 | 91av国产在线视频 | 国产午夜精品一区二区三区四区 | 亚洲性在线| 国产激情视频网址 | 精品国产成人 | 精品美女在线观看视频在线观看 | 午夜视频在线免费观看 | 99久久精品国产一区二区三区 | 天天操天天干天天爽 | 国产成人99久久亚洲综合精品 | 中文字幕一区二区三区四区 | 国产精品一区二区三区在线 | 久久一热 | 中文字幕在线一区二区三区 | 亚洲a视频 | 一区二区视频 | 97超碰成人 | 国产999精品久久久 精品三级在线观看 | 夜夜骑首页 | 特黄一级 | 国产精品一区二区无线 | 国产色在线 | 日韩在线免费看 | 亚洲va欧美va人人爽午夜 | 亚洲女人天堂成人av在线 | 亚洲三区视频 | 国产午夜精品一区二区三区在线观看 | 黄色免费网站在线看 | 国产操操操 | 成人在线免费电影 | 精品国产一区二区三区观看不卡 | 久久国产精品久久久久 | 欧美成人精品二区三区99精品 | 亚洲精品成人av久久 | 亚洲一区二区av在线 | 欧美专区在线 | 成人欧美一区二区三区黑人孕妇 | 亚洲免费视频网站 | 成人精品一区二区三区中文字幕 |