一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

TCP三次握手和四次揮手,這樣解釋太通俗易懂了!

億佰特物聯(lián)網(wǎng)應(yīng)用專家 ? 2025-04-24 19:33 ? 次閱讀

TCP連接的建立和釋放分別通過(guò)“三次握手”和“四次揮手”來(lái)完成。

三次握手過(guò)程

TCP三次握手是建立可靠網(wǎng)絡(luò)連接的關(guān)鍵過(guò)程,它用于確保通信雙方能夠正常發(fā)送和接收數(shù)據(jù),并提供可靠的數(shù)據(jù)傳輸機(jī)制。三次握手的主要目標(biāo)包括:

? 同步雙方的序列號(hào)

? 確認(rèn)雙方的接收和發(fā)送能力

? 防止因?yàn)檫^(guò)期報(bào)文導(dǎo)致的誤連接

e3913700-20ff-11f0-9434-92fbcf53809c.png

1

第一次握手

? 客戶端發(fā)送一個(gè)SYN(同步)請(qǐng)求報(bào)文,表示希望建立連接,并附帶初始序列號(hào)(Sequence Number)。< 客戶端撥通服務(wù)器的電話,說(shuō)“喂?聽得到嗎?”>? 客戶端進(jìn)入 SYN_SENT 狀態(tài),等待服務(wù)器的響應(yīng)。

2

第二次握手

? 服務(wù)器收到請(qǐng)求后,回復(fù)一個(gè)SYN+ACK(同步+確認(rèn))報(bào)文。< “聽得到!你那邊OK嗎?”>? ACK字段確認(rèn)客戶端的序列號(hào),同時(shí)服務(wù)器生成自己的初始序列號(hào)。

? 服務(wù)器進(jìn)入 SYN_RCVD 狀態(tài),等待客戶端的確認(rèn)。

3

第三次握手

? 客戶端收到服務(wù)器的確認(rèn)后,再發(fā)送一個(gè)ACK(確認(rèn))報(bào)文,確認(rèn)服務(wù)器的響應(yīng)。<客戶端確認(rèn):“沒(méi)問(wèn)題,開始聊吧!”>? 客戶端進(jìn)入 ESTABLISHED 狀態(tài),服務(wù)器也進(jìn)入 ESTABLISHED 狀態(tài),連接正式建立。下面是TCP頭部的一個(gè)簡(jiǎn)單介紹:上述流程中提到:

e3ade814-20ff-11f0-9434-92fbcf53809c.png

序列號(hào):

定義:序列號(hào)標(biāo)識(shí)數(shù)據(jù)流中每個(gè)字節(jié)的唯一編號(hào),用于確保數(shù)據(jù)的有序傳輸。

初始值:在連接建立時(shí),序列號(hào)由發(fā)送方隨機(jī)生成。

變化規(guī)則:每發(fā)送一個(gè)數(shù)據(jù)段,序列號(hào)會(huì)增加該數(shù)據(jù)段的字節(jié)數(shù)。例如,發(fā)送100字節(jié)的數(shù)據(jù)后,序列號(hào)會(huì)增加100。

作用:解決網(wǎng)絡(luò)中數(shù)據(jù)包亂序問(wèn)題,確保接收方能夠按照正確順序重組數(shù)據(jù)。

確認(rèn)號(hào):

定義:確認(rèn)號(hào)表示接收方期望收到的下一個(gè)數(shù)據(jù)包的序列號(hào)。

變化規(guī)則:確認(rèn)號(hào)等于接收到的序列號(hào)加上數(shù)據(jù)段的長(zhǎng)度。如果接收到的是SYN或FIN報(bào)文,則確認(rèn)號(hào)加1。

作用:通知發(fā)送方哪些數(shù)據(jù)已經(jīng)被成功接收,解決丟包問(wèn)題。

確認(rèn)號(hào)和序列號(hào)機(jī)制是確保TCP數(shù)據(jù)傳輸數(shù)據(jù)可靠性的關(guān)鍵機(jī)制。

為什么要三次握手?

簡(jiǎn)單來(lái)講,三次握手是保證通信穩(wěn)定正確的最小開銷。

可以有一個(gè)很簡(jiǎn)單的對(duì)話例子:

? A — B:你聽得到我嗎?

? B — A:我聽得到,你能聽到我嗎?

? A — B:我也能聽到,我們可以開始正式交流了。

三次握手通過(guò)同步序列號(hào),確認(rèn)機(jī)制等等,確保了TCP連接的穩(wěn)定性和可靠性。

四次揮手過(guò)程

TCP的四次揮手是用于終止TCP連接的過(guò)程,確保雙方都能可靠地關(guān)閉連接。

e3fac922-20ff-11f0-9434-92fbcf53809c.png

1

第一次揮手

客戶端發(fā)送一個(gè)帶有FIN(Finish)標(biāo)志的報(bào)文段,表示客戶端不再發(fā)送數(shù)據(jù),但仍然可以接收數(shù)據(jù)。此時(shí)客戶端進(jìn)入FIN_WAIT_1狀態(tài)。< 客戶端說(shuō):“我講完了,先掛了”>

2

第二次揮手

服務(wù)器收到客戶端的FIN報(bào)文后,發(fā)送一個(gè)ACK(Acknowledgment)報(bào)文作為確認(rèn),確認(rèn)序號(hào)為收到的序號(hào)加1。此時(shí)服務(wù)器進(jìn)入CLOSE_WAIT狀態(tài),客戶端收到ACK后進(jìn)入FIN_WAIT_2狀態(tài)。< 服務(wù)器回應(yīng):“收到,我還在處理消息。”>

3

第三次揮手

服務(wù)器在完成數(shù)據(jù)發(fā)送后,向客戶端發(fā)送一個(gè)FIN報(bào)文,表示服務(wù)器也不再發(fā)送數(shù)據(jù)。此時(shí)服務(wù)器進(jìn)入LAST_ACK狀態(tài),等待客戶端的確認(rèn)。< 服務(wù)器處理完數(shù)據(jù)后說(shuō):“我也講完了。”>

4

第四次揮手

客戶端收到服務(wù)器的FIN報(bào)文后,發(fā)送一個(gè)ACK報(bào)文作為確認(rèn),確認(rèn)序號(hào)為收到的序號(hào)加1。此時(shí)客戶端進(jìn)入TIME_WAIT狀態(tài),等待2MSL(最大報(bào)文段生存時(shí)間)后進(jìn)入CLOSED狀態(tài)。服務(wù)器收到ACK后,立即進(jìn)入CLOSED狀態(tài)。< 客戶端確認(rèn):“好的,再見(jiàn)!”>

注:如果服務(wù)器沒(méi)有收到客戶端的ACK,會(huì)在2MSL后重傳FIN,客戶端在TIME_WAIT狀態(tài)可以重新發(fā)送ACK。2MSL的時(shí)間足以讓網(wǎng)絡(luò)中所有舊的重復(fù)報(bào)文段消失,防止它們干擾新的連接。

為什么需要四次揮手?

全雙工通信:TCP是全雙工的,每個(gè)方向都需要單獨(dú)關(guān)閉??蛻舳税l(fā)送FIN表示不再發(fā)送數(shù)據(jù),但服務(wù)器可能仍有數(shù)據(jù)要發(fā)送,因此需要服務(wù)器也發(fā)送FIN來(lái)確認(rèn)關(guān)閉。

可靠關(guān)閉:通過(guò)四次揮手,確保雙方都能確認(rèn)對(duì)方的關(guān)閉意圖,避免數(shù)據(jù)丟失或不完整。

億佰特串口服務(wù)器推薦

e40f2a5c-20ff-11f0-9434-92fbcf53809c.png

億佰特串口服務(wù)器產(chǎn)品涵蓋單串口服務(wù)器、多串口服務(wù)器、Wi-Fi串口服務(wù)器以及串口服務(wù)器模組等,可提供串口轉(zhuǎn)網(wǎng)絡(luò)功能,能夠?qū)⒋跀?shù)據(jù)轉(zhuǎn)換成TCP/IP協(xié)議數(shù)據(jù),實(shí)現(xiàn)串口與網(wǎng)絡(luò)的雙向透明傳輸。被廣泛應(yīng)用于考勤系統(tǒng)、機(jī)房監(jiān)控、電力監(jiān)控等場(chǎng)景。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 數(shù)據(jù)傳輸
    +關(guān)注

    關(guān)注

    9

    文章

    1991

    瀏覽量

    65434
  • TCP
    TCP
    +關(guān)注

    關(guān)注

    8

    文章

    1395

    瀏覽量

    80120
  • 報(bào)文
    +關(guān)注

    關(guān)注

    0

    文章

    39

    瀏覽量

    4132
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    講一講的TCP三次握手四次揮手

    如果你學(xué)過(guò)網(wǎng)絡(luò)基礎(chǔ)知識(shí),那么你一定對(duì)TCP三次握手不陌生。今天我想用通俗的話來(lái)給大家講一講TCP三次
    的頭像 發(fā)表于 02-03 10:43 ?2904次閱讀
    講一講的<b class='flag-5'>TCP</b><b class='flag-5'>三次</b><b class='flag-5'>握手</b>和<b class='flag-5'>四次</b><b class='flag-5'>揮手</b>

    三次握手,四次揮手你懂嗎

    程序員面試被問(wèn)到“三次握手,四次揮手”怎么辦?
    發(fā)表于 04-08 07:23

    TCP三次握手的過(guò)程描述

    本文檔主要描述TCP三次握手的過(guò)程,一個(gè)完整的三次握手也就是 請(qǐng)求---應(yīng)答---再次確認(rèn)
    發(fā)表于 03-02 15:37 ?8次下載

    TCP/IP協(xié)議工作過(guò)程的三次握手四次揮手

    )、第三次握手:Client收到確認(rèn)后,檢查ACK是否為1,如果正確則將標(biāo)志位ACK置為1,并將該數(shù)據(jù)包發(fā)送給Server,Server檢查ACK是否為1,如果正確則連接建立成功,Client
    的頭像 發(fā)表于 10-25 09:49 ?7130次閱讀

    TCP三次握手過(guò)程及四次揮手過(guò)程說(shuō)明

    三次握手 置位概念:根據(jù) TCP 的包頭字段,存在 3 個(gè)重要的標(biāo)識(shí) ACK、SYN、FIN ACK:表示驗(yàn)證字段 SYN:位數(shù)置 1,表示建立 TCP 連接 FIN:位數(shù)置 1,表示
    的頭像 發(fā)表于 03-01 12:00 ?4392次閱讀

    TCP三次握手四次揮手以及11種狀態(tài)資料下載

    電子發(fā)燒友網(wǎng)為你提供TCP三次握手四次揮手以及11種狀態(tài)資料下載的電子資料下載,更有其他相關(guān)的電路圖、源代碼、課件教程、中文資料、英文資料
    發(fā)表于 04-15 08:41 ?2次下載
    <b class='flag-5'>TCP</b><b class='flag-5'>三次</b><b class='flag-5'>握手</b>和<b class='flag-5'>四次</b><b class='flag-5'>揮手</b>以及11種狀態(tài)資料下載

    TCP三次握手四次揮手過(guò)程中的異常情況

    TCP 三次握手四次揮手過(guò)程中,途中某一步的報(bào)文丟失了,會(huì)發(fā)生什么?
    的頭像 發(fā)表于 09-05 10:23 ?1483次閱讀

    如何使用WireShark進(jìn)行TCP三次握手

    WireShark是一種非常方便的網(wǎng)絡(luò)抓包工具,下面演示,使用WireShark來(lái)抓取TCP三次握手過(guò)程。
    的頭像 發(fā)表于 11-01 09:50 ?2306次閱讀

    TCP建立連接概述及三次握手四次揮手的流程

    具備上述個(gè)條件后A獲取B的信息是有要求的,根本上的要求是數(shù)據(jù)信道可靠,就是平時(shí)所說(shuō)的可靠連接,那么如何保證連接的可靠性呢,TCP協(xié)議就是靠確認(rèn)應(yīng)答機(jī)制、超時(shí)重傳機(jī)制等保證連接可靠性的,接下來(lái)就通過(guò)TCP協(xié)議的
    的頭像 發(fā)表于 03-23 15:57 ?1405次閱讀
    <b class='flag-5'>TCP</b>建立連接概述及<b class='flag-5'>三次</b><b class='flag-5'>握手</b>、<b class='flag-5'>四次</b><b class='flag-5'>揮手</b>的流程

    用戀愛(ài)的方式解釋TCP三次握手四次揮手

    前言今天的分享,是關(guān)于前兩天讀到的心得,TCP建立連接時(shí)三次握手,斷開時(shí)為何4握手的自我理解:戀愛(ài)時(shí)連接時(shí)客戶端說(shuō):SYN(約嗎?)服務(wù)器
    的頭像 發(fā)表于 08-28 16:11 ?926次閱讀
    用戀愛(ài)的方式<b class='flag-5'>解釋</b><b class='flag-5'>TCP</b>的<b class='flag-5'>三次</b><b class='flag-5'>握手</b>和<b class='flag-5'>四次</b><b class='flag-5'>揮手</b>

    說(shuō)說(shuō)TCP三次握手的過(guò)程?為什么是三次而不是兩四次?

    說(shuō)說(shuō)TCP三次握手的過(guò)程?為什么是三次而不是兩四次? T
    的頭像 發(fā)表于 02-04 11:03 ?959次閱讀

    TCP三次握手協(xié)議的作用

    在計(jì)算機(jī)網(wǎng)絡(luò)中,數(shù)據(jù)的傳輸需要在發(fā)送方和接收方之間建立一個(gè)穩(wěn)定的連接,以確保數(shù)據(jù)的完整性和順序。TCP(傳輸控制協(xié)議)是一種面向連接的、可靠的、基于字節(jié)流的傳輸層通信協(xié)議,它通過(guò)三次握手協(xié)議來(lái)建立
    的頭像 發(fā)表于 01-03 17:15 ?669次閱讀

    TCP三次握手的基本原理

    在計(jì)算機(jī)網(wǎng)絡(luò)中,TCP(傳輸控制協(xié)議)是一種面向連接的、可靠的、基于字節(jié)流的傳輸層通信協(xié)議。它確保了數(shù)據(jù)在網(wǎng)絡(luò)中傳輸?shù)目煽啃院晚樞蛐?。為了建立兩個(gè)網(wǎng)絡(luò)實(shí)體之間的通信,TCP使用一種稱為“三次
    的頭像 發(fā)表于 01-03 17:25 ?871次閱讀

    TCP三次握手安全性分析

    TCP(傳輸控制協(xié)議)的三次握手是建立可靠連接的重要機(jī)制,它確保了通信雙方在數(shù)據(jù)傳輸前的連接狀態(tài)是可靠和準(zhǔn)確的。然而,從安全性的角度來(lái)分析,TCP
    的頭像 發(fā)表于 01-03 18:10 ?821次閱讀

    如何監(jiān)測(cè)TCP三次握手過(guò)程

    在計(jì)算機(jī)網(wǎng)絡(luò)中,傳輸控制協(xié)議(TCP)是確保數(shù)據(jù)可靠傳輸?shù)年P(guān)鍵協(xié)議之一。TCP通過(guò)三次握手過(guò)程來(lái)建立兩個(gè)端點(diǎn)之間的連接,這個(gè)過(guò)程對(duì)于網(wǎng)絡(luò)通信的穩(wěn)定性和安全性至關(guān)重要。
    的頭像 發(fā)表于 01-06 09:20 ?518次閱讀