91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

淺析C++基礎(chǔ)語法梳理之計(jì)算機(jī)網(wǎng)絡(luò)中傳輸管理(TCP)

C語言編程學(xué)習(xí)基地 ? 來源:C語言編程學(xué)習(xí)基地 ? 作者: C語言編程 ? 2021-10-26 10:17 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

TCP 傳輸連接管理

因?yàn)?TCP 三次握手建立連接、四次揮手釋放連接很重要,所以附上《計(jì)算機(jī)網(wǎng)絡(luò)(第 7 版)-謝希仁》書中對(duì)此章的詳細(xì)描述:https://gitee.com/huihut/interview/raw/master/images/TCP-transport-connection-management.png

TCP 三次握手建立連接

2298daea-357f-11ec-82a8-dac502259ad0.png

【TCP 建立連接全過程解釋】

客戶端發(fā)送 SYN 給服務(wù)器,說明客戶端請(qǐng)求建立連接;

服務(wù)端收到客戶端發(fā)的 SYN,并回復(fù) SYN+ACK 給客戶端(同意建立連接);

客戶端收到服務(wù)端的 SYN+ACK 后,回復(fù) ACK 給服務(wù)端(表示客戶端收到了服務(wù)端發(fā)的同意報(bào)文);

服務(wù)端收到客戶端的 ACK,連接已建立,可以數(shù)據(jù)傳輸。

TCP 為什么要進(jìn)行三次握手?

【答案一】因?yàn)樾诺啦豢煽?,?TCP 想在不可靠信道上建立可靠地傳輸,那么三次通信是理論上的最小值。(而 UDP 則不需建立可靠傳輸,因此 UDP 不需要三次握手。)

【答案二】因?yàn)殡p方都需要確認(rèn)對(duì)方收到了自己發(fā)送的序列號(hào),確認(rèn)過程最少要進(jìn)行三次通信。

【答案三】為了防止已失效的連接請(qǐng)求報(bào)文段突然又傳送到了服務(wù)端,因而產(chǎn)生錯(cuò)誤。

TCP 四次揮手釋放連接

2303d3b8-357f-11ec-82a8-dac502259ad0.png

【TCP 釋放連接全過程解釋】

客戶端發(fā)送 FIN 給服務(wù)器,說明客戶端不必發(fā)送數(shù)據(jù)給服務(wù)器了(請(qǐng)求釋放從客戶端到服務(wù)器的連接);

服務(wù)器接收到客戶端發(fā)的 FIN,并回復(fù) ACK 給客戶端(同意釋放從客戶端到服務(wù)器的連接);

客戶端收到服務(wù)端回復(fù)的 ACK,此時(shí)從客戶端到服務(wù)器的連接已釋放(但服務(wù)端到客戶端的連接還未釋放,并且客戶端還可以接收數(shù)據(jù));

服務(wù)端繼續(xù)發(fā)送之前沒發(fā)完的數(shù)據(jù)給客戶端;

服務(wù)端發(fā)送 FIN+ACK 給客戶端,說明服務(wù)端發(fā)送完了數(shù)據(jù)(請(qǐng)求釋放從服務(wù)端到客戶端的連接,就算沒收到客戶端的回復(fù),過段時(shí)間也會(huì)自動(dòng)釋放);

客戶端收到服務(wù)端的 FIN+ACK,并回復(fù) ACK 給客戶端(同意釋放從服務(wù)端到客戶端的連接);

服務(wù)端收到客戶端的 ACK 后,釋放從服務(wù)端到客戶端的連接。

TCP 為什么要進(jìn)行四次揮手?

【問題一】TCP 為什么要進(jìn)行四次揮手?/ 為什么 TCP 建立連接需要三次,而釋放連接則需要四次?

【答案一】因?yàn)?TCP 是全雙工模式,客戶端請(qǐng)求關(guān)閉連接后,客戶端向服務(wù)端的連接關(guān)閉(一二次揮手),服務(wù)端繼續(xù)傳輸之前沒傳完的數(shù)據(jù)給客戶端(數(shù)據(jù)傳輸),服務(wù)端向客戶端的連接關(guān)閉(三四次揮手)。所以 TCP 釋放連接時(shí)服務(wù)器的 ACK 和 FIN 是分開發(fā)送的(中間隔著數(shù)據(jù)傳輸),而 TCP 建立連接時(shí)服務(wù)器的 ACK 和 SYN 是一起發(fā)送的(第二次握手),所以 TCP 建立連接需要三次,而釋放連接則需要四次。

【問題二】為什么 TCP 連接時(shí)可以 ACK 和 SYN 一起發(fā)送,而釋放時(shí)則 ACK 和 FIN 分開發(fā)送呢?(ACK 和 FIN 分開是指第二次和第三次揮手)

【答案二】因?yàn)榭蛻舳苏?qǐng)求釋放時(shí),服務(wù)器可能還有數(shù)據(jù)需要傳輸給客戶端,因此服務(wù)端要先響應(yīng)客戶端 FIN 請(qǐng)求(服務(wù)端發(fā)送 ACK),然后數(shù)據(jù)傳輸,傳輸完成后,服務(wù)端再提出 FIN 請(qǐng)求(服務(wù)端發(fā)送 FIN);而連接時(shí)則沒有中間的數(shù)據(jù)傳輸,因此連接時(shí)可以 ACK 和 SYN 一起發(fā)送。

【問題三】為什么客戶端釋放最后需要 TIME-WAIT 等待 2MSL 呢?

【答案三】

(1)為了保證客戶端發(fā)送的最后一個(gè) ACK 報(bào)文能夠到達(dá)服務(wù)端。若未成功到達(dá),則服務(wù)端超時(shí)重傳 FIN+ACK 報(bào)文段,客戶端再重傳 ACK,并重新計(jì)時(shí)。

(2)防止已失效的連接請(qǐng)求報(bào)文段出現(xiàn)在本連接中。TIME-WAIT 持續(xù) 2MSL 可使本連接持續(xù)的時(shí)間內(nèi)所產(chǎn)生的所有報(bào)文段都從網(wǎng)絡(luò)中消失,這樣可使下次連接中不會(huì)出現(xiàn)舊的連接報(bào)文段。

TCP 有限狀態(tài)機(jī)

TCP 有限狀態(tài)機(jī)圖片

23806d6a-357f-11ec-82a8-dac502259ad0.png

今天的分享就到這里了,大家要好好學(xué)C++喲~

編輯:jq

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

    關(guān)注

    8

    文章

    1425

    瀏覽量

    83518
  • C++
    C++
    +關(guān)注

    關(guān)注

    22

    文章

    2124

    瀏覽量

    77125
  • 服務(wù)端
    +關(guān)注

    關(guān)注

    0

    文章

    69

    瀏覽量

    7364

原文標(biāo)題:C++基礎(chǔ)語法梳理:計(jì)算機(jī)網(wǎng)絡(luò)丨傳輸管理(TCP)

文章出處:【微信號(hào):cyuyanxuexi,微信公眾號(hào):C語言編程學(xué)習(xí)基地】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    socket是什么

    于在不同計(jì)算機(jī)之間傳輸數(shù)據(jù)。Socket技術(shù)可以用于實(shí)現(xiàn)各種網(wǎng)絡(luò)應(yīng)用,例如客戶端-服務(wù)器應(yīng)用,點(diǎn)對(duì)點(diǎn)應(yīng)用等。 在計(jì)算機(jī)網(wǎng)絡(luò),Socket技
    發(fā)表于 12-03 08:27

    為什么網(wǎng)絡(luò)需要DHCP服務(wù)器?

    DHCP是一種網(wǎng)絡(luò)協(xié)議,全稱為動(dòng)態(tài)主機(jī)配置協(xié)議(Dynamic Host Configuration Protocol)。它被用于在計(jì)算機(jī)網(wǎng)絡(luò)自動(dòng)分配IP地址和其他網(wǎng)絡(luò)配置信息給客戶
    的頭像 發(fā)表于 09-29 11:22 ?2082次閱讀
    為什么<b class='flag-5'>網(wǎng)絡(luò)</b>需要DHCP服務(wù)器?

    什么是NIC(網(wǎng)絡(luò)接口卡)?

    網(wǎng)絡(luò)接口卡(NIC)是一種基本的硬件組件,它使計(jì)算機(jī)或設(shè)備能夠連接到網(wǎng)絡(luò)。它可以集成到主板,也可以作為擴(kuò)展卡安裝在計(jì)算機(jī)上,這標(biāo)志著它在
    的頭像 發(fā)表于 09-22 14:54 ?1168次閱讀
    什么是NIC(<b class='flag-5'>網(wǎng)絡(luò)</b>接口卡)?

    工業(yè)計(jì)算機(jī)的重要性

    管理用于產(chǎn)品檢查、數(shù)據(jù)記錄和數(shù)據(jù)分析的運(yùn)動(dòng)控制系統(tǒng),以提高制造生產(chǎn)率。例如,汽車行業(yè)從工業(yè)邊緣計(jì)算機(jī)中受益匪淺,這些計(jì)算機(jī)用于自動(dòng)化制造汽車所涉及的各種過程。工業(yè)邊
    的頭像 發(fā)表于 07-28 16:07 ?576次閱讀
    工業(yè)<b class='flag-5'>計(jì)算機(jī)</b>的重要性

    自動(dòng)化計(jì)算機(jī)經(jīng)過加固后有什么好處?

    -40℃的寒冷環(huán)境運(yùn)行?C和溫度達(dá)到85℃的灼熱環(huán)境,這要?dú)w功于此類系統(tǒng)中使用的寬溫度組件和被動(dòng)冷卻技術(shù)。2.抗沖擊和振動(dòng)自動(dòng)化計(jì)算機(jī)是工業(yè)級(jí)計(jì)算機(jī),其設(shè)計(jì)和制造可
    的頭像 發(fā)表于 07-21 16:44 ?627次閱讀
    自動(dòng)化<b class='flag-5'>計(jì)算機(jī)</b>經(jīng)過加固后有什么好處?

    自動(dòng)化計(jì)算機(jī)的功能與用途

    工業(yè)自動(dòng)化是指利用自動(dòng)化計(jì)算機(jī)來控制工業(yè)環(huán)境的流程、機(jī)器人和機(jī)械,以制造產(chǎn)品或其部件。工業(yè)自動(dòng)化的目的是提高生產(chǎn)率、增加靈活性,并提升制造過程的質(zhì)量。工業(yè)自動(dòng)化在汽車制造中體現(xiàn)得最為明顯,其中許多
    的頭像 發(fā)表于 07-15 16:32 ?747次閱讀
    自動(dòng)化<b class='flag-5'>計(jì)算機(jī)</b>的功能與用途

    網(wǎng)絡(luò)為什么要部署NTP時(shí)鐘服務(wù)器?

    隨著計(jì)算機(jī)網(wǎng)絡(luò)的迅猛發(fā)展,網(wǎng)絡(luò)應(yīng)用已經(jīng)非常普遍,如電力、金融、通信、交通、廣電、安防、石化、水利、國(guó)防、、IT等領(lǐng)域的網(wǎng)絡(luò)系統(tǒng)需要在大范圍保持計(jì)算機(jī)的時(shí)間同步和時(shí)鐘準(zhǔn)確,但
    的頭像 發(fā)表于 07-15 10:23 ?443次閱讀

    工業(yè)計(jì)算機(jī)與商用計(jì)算機(jī)的區(qū)別有哪些

    工業(yè)計(jì)算機(jī)是一種專為工廠和工業(yè)環(huán)境設(shè)計(jì)的計(jì)算系統(tǒng),具有高可靠性和穩(wěn)定性,能夠應(yīng)對(duì)惡劣環(huán)境下的自動(dòng)化、制造和機(jī)器人操作。其特點(diǎn)包括無風(fēng)扇散熱技術(shù)、無電纜連接和防塵防水設(shè)計(jì),使其在各種工業(yè)自動(dòng)化場(chǎng)景
    的頭像 發(fā)表于 07-10 16:36 ?752次閱讀
    工業(yè)<b class='flag-5'>計(jì)算機(jī)</b>與商用<b class='flag-5'>計(jì)算機(jī)</b>的區(qū)別有哪些

    網(wǎng)絡(luò)授時(shí)服務(wù)器(時(shí)鐘同步系統(tǒng),GPS時(shí)間同步)介紹

    隨著計(jì)算機(jī)網(wǎng)絡(luò)的迅猛發(fā)展,網(wǎng)絡(luò)應(yīng)用已經(jīng)非常普遍,眾多領(lǐng)域的網(wǎng)絡(luò)系統(tǒng)如電力、石化、金融業(yè)(證券、銀行)、廣電業(yè)(廣播、電視)、交通業(yè)(火車、飛機(jī))等需要在大范圍保持計(jì)算機(jī)的時(shí)間同步和時(shí)間
    的頭像 發(fā)表于 05-22 14:42 ?810次閱讀
    <b class='flag-5'>網(wǎng)絡(luò)</b>授時(shí)服務(wù)器(時(shí)鐘同步系統(tǒng),GPS時(shí)間同步)介紹

    時(shí)鐘同步在通信系統(tǒng)中有哪些重要作用?

    時(shí)鐘同步是指在一個(gè)系統(tǒng),各個(gè)時(shí)鐘能夠準(zhǔn)確地顯示相同的時(shí)間。在現(xiàn)代科技發(fā)展,時(shí)鐘同步是非常重要的,特別是在計(jì)算機(jī)網(wǎng)絡(luò)和通信系統(tǒng)。在計(jì)算機(jī)網(wǎng)絡(luò)
    的頭像 發(fā)表于 04-29 13:44 ?1120次閱讀
    時(shí)鐘同步在通信系統(tǒng)中有哪些重要作用?

    計(jì)算機(jī)網(wǎng)絡(luò)入門指南

    計(jì)算機(jī)網(wǎng)絡(luò)是指將地理位置不同且具有獨(dú)立功能的多臺(tái)計(jì)算機(jī)及其外部設(shè)備,通過通信線路連接起來,在網(wǎng)絡(luò)操作系統(tǒng)、網(wǎng)絡(luò)管理軟件及
    的頭像 發(fā)表于 04-22 14:29 ?2256次閱讀
    <b class='flag-5'>計(jì)算機(jī)網(wǎng)絡(luò)</b>入門指南

    計(jì)算機(jī)網(wǎng)絡(luò)協(xié)議介紹

    作者:京東零售 王樂 一、從一個(gè)請(qǐng)求來看網(wǎng)絡(luò)分層原理 1.1 復(fù)雜的網(wǎng)絡(luò) 以下為一次請(qǐng)求過程可能遇到的問題,預(yù)示著網(wǎng)絡(luò)的復(fù)雜性。 ?? ? 1.2 如何簡(jiǎn)化復(fù)雜度 為了簡(jiǎn)化
    的頭像 發(fā)表于 04-08 11:26 ?1401次閱讀
    <b class='flag-5'>計(jì)算機(jī)網(wǎng)絡(luò)</b>協(xié)議介紹

    計(jì)算機(jī)網(wǎng)絡(luò)排錯(cuò)思路總結(jié)

    明人不說暗話,這篇文章我們來聊一個(gè)非常有用,同時(shí)也是程序員必備的技能,那就是網(wǎng)絡(luò)排錯(cuò)思路大總結(jié)。
    的頭像 發(fā)表于 04-01 17:32 ?893次閱讀
    <b class='flag-5'>計(jì)算機(jī)網(wǎng)絡(luò)</b>排錯(cuò)思路總結(jié)

    工業(yè)與IT網(wǎng)絡(luò)的以太網(wǎng)數(shù)據(jù)幀:格式與用途全解析

    以太網(wǎng)數(shù)據(jù)幀是計(jì)算機(jī)網(wǎng)絡(luò)通信的基本單位,在不同的應(yīng)用場(chǎng)景,它的格式有所不同。從互聯(lián)網(wǎng)和工業(yè)自動(dòng)化常見的以太網(wǎng) II 幀,到 VLAN 組網(wǎng)中廣泛使用的 IEEE 802.1Q 幀,再到運(yùn)營(yíng)商級(jí)別的 QinQ 及高性能計(jì)算
    的頭像 發(fā)表于 03-14 17:35 ?1666次閱讀
    工業(yè)與IT<b class='flag-5'>網(wǎng)絡(luò)</b><b class='flag-5'>中</b>的以太網(wǎng)數(shù)據(jù)幀:格式與用途全解析

    一文詳解以太網(wǎng)RDMA技術(shù)

    在現(xiàn)代計(jì)算機(jī)網(wǎng)絡(luò),傳輸效率和低時(shí)延是高性能計(jì)算、云計(jì)算、分布式存儲(chǔ)等應(yīng)用的關(guān)鍵需求。而遠(yuǎn)程直接內(nèi)存訪問(RDMA,Remote Direc
    的頭像 發(fā)表于 03-10 11:09 ?5056次閱讀
    一文詳解以太網(wǎng)RDMA技術(shù)