色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

一文詳解TCP協議

CHANBAEK ? 來源:嵌入式攻城獅 ? 作者:嵌入式攻城獅 ? 2023-04-21 12:36 ? 次閱讀

TCP協議深入

TCP通過檢驗和、序列號、確認應答、重發控制、連接管理以及窗口控制等機制實現可靠性傳輸

1. 序列號+確認應答

在TCP中,當發送端的數據到達接收主機時,接收端主機會返回一個已收到消息的通知,這個消息叫做確認應答(ACK); 序列號是按照順序給發送數據的每一個字節都標上號碼的編號。 接收端查詢接收數據TCP首部中的序列號和數據的長度,將自已下一步應該接收的序號作為確認應答返送回去

圖片

2. 重發超時

重發超時是指在重發數據之前,等待確認應答到來的那個特定時間間隔,如果超過了這個時間仍未收到確認應答,發送端將進行數據重發。 理想的重發超時具體時長是找到一個最小時間,它能保證確認應答一定能在這個時間內返回

圖片

數據也不會無限、反復地重發。 達到一定重發次數后,若仍沒有任何確認應答返回,就會判斷為網絡或對端主機發生了異常,強制關閉連接,并通知應用通訊異常強行終止

3. 連接管理

為了準確無誤地將數據送達目標處,TCP協議采用了 三次握手 (three-way handshaking)策略。 用TCP協議將數據包送出去后,TCP一定會向對方確認是否成功送達。 若在握手過程中某個階段莫名中斷,TCP協議會再次以相同的順序發送相同的順序包。 而 四次揮手 (Four-Way Wavehand)即終止TCP連接,就是指斷開一個TCP連接時,需要客戶端和服務端總共發送4個包以確認連接的斷開

圖片

三次握手,即建立連接

第一次握手:客戶端發送一個帶SYN標志的TCP報文到服務器。 這是三次握手過程中的段1

第二次握手:服務器端回應客戶端,是三次握手中的第2個報文段,同時帶ACK標志和SYN標志。 它表示對剛才客戶端SYN的回應; 同時又發送SYN給客戶端,詢問客戶端是否準備好進行數據通訊

第三次握手:客戶必須再次回應服務器端一個ACK報文,這是報文段3

數據傳輸

客戶端發出段4,包含從序號1001開始的20個字節數據。

服務器發出段5,確認序號為1021,對序號為1001-1020的數據表示確認收到,同時請求發送序號1021開始的數據,服務器在應答的同時也向客戶端發送從序號8001開始的10個字節數據,這稱為piggyback。

客戶端發出段6,對服務器發來的序號為8001-8010的數據表示確認收到,請求發送序號8011開始的數據

四次揮手,即關閉連接

第一次揮手:客戶端發出段7,FIN位表示關閉連接的請求

第二次揮手:服務器發出段8,應答客戶端的關閉連接請求

第三次揮手:服務器發出段9,其中也包含FIN位,向客戶端發送關閉連接請求

第四次揮手:客戶端發出段10,應答服務器的關閉連接請求

下圖是一次完整的三次握手、數據傳輸以及四次揮手的wireshark抓包測試

圖片

4. 流控制

在建立TCP連接時,可以確定發送數據包的單位,即最大消息長度(MSS:Maximum Segment Size)。 MSS是在三次握手的時候,在兩端主機之間被計算得出的。 兩端的主機在發出建立連接的請求時,會在TCP首部中寫入MSS選項,告訴對方自已的接口能夠適應的MSS大小,然后會在兩者之間選擇一個較小的值投入使用

TCP以一個段為單位,若每發一個段進行一次確認應答的處理,會導致往返時間較長通信性能較低。 為了解決該問題,引入了窗口這個概念,使得確認應答不再是以每個分段,而是以更大的單位進行確認

窗口大小就是指無需等待確認應答而可以繼續發送數據的最大值。 這個機制實現了使用大量的緩沖區,通過對多個段同時進行確認應答的功能。 在收到確認應答的情況下,將窗口滑動到確認應答中的序列號的位置,就可以順序地將多個段同時發送以提高通信性能。 這種機制也被稱為滑動窗口控制

圖片

上圖就是一個滑動窗口控制實例,其詳細流程見如下分析:

發送端發起連接,聲明最大段尺寸是1460,初始序號是0,窗口大小是4K,表示“我的接收緩沖區還有4K字節空閑,你發的數據不要超過4K”。 接收端應答連接請求,聲明最大段尺寸是1024,初始序號是8000,窗口大小是6K。 發送端應答,三方握手結束。

發送端發出段4-9,每個段帶1K的數據,發送端根據窗口大小知道接收端的緩沖區滿了,因此停止發送數據。

接收端的應用程序提走2K數據,接收緩沖區又有了2K空閑,接收端發出段10,在應答已收到6K數據的同時聲明窗口大小為2K。

接收端的應用程序又提走2K數據,接收緩沖區有4K空閑,接收端發出段11,重新聲明窗口大小為4K。

發送端發出段12-13,每個段帶2K數據,段13同時還包含FIN位。

接收端應答接收到的2K數據(6145-8192),再加上FIN位占一個序號8193,因此應答序號是8194,連接處于半關閉狀態,接收端同時聲明窗口大小為2K。

接收端的應用程序提走2K數據,接收端重新聲明窗口大小為4K。

接收端的應用程序提走剩下的2K數據,接收緩沖區全空,接收端重新聲明窗口大小為6K。

接收端的應用程序在提走全部數據后,決定關閉連接,發出段17包含FIN位,發送端應答,連接完全關閉。

下圖是一次完整的滑動窗口控制實例的wireshark抓包分析:

開啟以socket客戶端,發送2593個字節的數據到開發板

圖片

使用wireshark抓包工具,抓取完整的收發過程

圖片

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 數據傳輸
    +關注

    關注

    9

    文章

    1926

    瀏覽量

    64699
  • 服務器
    +關注

    關注

    12

    文章

    9242

    瀏覽量

    85709
  • 主機
    +關注

    關注

    0

    文章

    999

    瀏覽量

    35183
  • TCP
    TCP
    +關注

    關注

    8

    文章

    1374

    瀏覽量

    79154
  • TCP協議
    +關注

    關注

    1

    文章

    91

    瀏覽量

    12099
收藏 人收藏

    評論

    相關推薦

    TCP/IP協議包括哪些協議 詳解TCP/IP協議

    TCP/IP(Transmission Control Protocol/Internet Protocol,傳輸控制協議/網際協議)是指能夠在多個不同網絡間實現信息傳輸的協議簇。
    發表于 07-21 09:56 ?1.2w次閱讀
    <b class='flag-5'>TCP</b>/IP<b class='flag-5'>協議</b>包括哪些<b class='flag-5'>協議</b> <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>詳解</b><b class='flag-5'>TCP</b>/IP<b class='flag-5'>協議</b>

    TCP-IP詳解_卷3_TCP事務協議,HTTP,NNTP

    TCP-IP詳解_卷3_TCP事務協議,HTTP,NNTP和UNIX域協議
    發表于 03-24 22:42 ?39次下載

    TCP-IP詳解_卷1_協議

    TCP-IP詳解_卷1_協議
    發表于 03-24 22:45 ?50次下載

    TCP/IP詳解,卷3:tcp事務協議等(pdf電子書)

    TCP/IP詳解,卷3:tcp事務協議等(pdf電子書):第三卷的內容細節覆蓋了當今TCP/IP編程人員和網絡管理員必須熟練掌握的四個基本方
    發表于 08-06 08:54 ?505次下載

    tcp ip協議詳解卷三 下載

    tcp ip協議詳解卷三:第三卷的內容細節覆蓋了當今TCP/IP編程人員和網絡管理員必須熟練掌握的四個基本方面:    T/
    發表于 05-19 11:52 ?437次下載
    <b class='flag-5'>tcp</b> ip<b class='flag-5'>協議</b><b class='flag-5'>詳解</b>卷三 下載

    tcp ip協議詳解

    tcp ip協議詳解:《TCP/IP詳解,卷1:協議
    發表于 05-19 12:02 ?712次下載

    tcp ip協議_什么是tcp ip協議

    什么是tcp ip協議tcp ip協議詳解,深刻講述了tcp ip
    發表于 05-14 16:29 ?6056次閱讀
    <b class='flag-5'>tcp</b> ip<b class='flag-5'>協議</b>_什么是<b class='flag-5'>tcp</b> ip<b class='flag-5'>協議</b>

    TCP-IP詳解卷3:TCP事務協議,HTTP,NNTP和UNI

    TCP-IP詳解卷3:TCP事務協議,HTTP,NNTP和UNIX域協議,個人收集整理了很久的資料,大家根據自己情況,有選擇性的下載吧~
    發表于 10-27 14:04 ?0次下載

    TCP-IP詳解卷2_ARP:地址解析協議

    TCP-IP詳解卷2 ARP:地址解析協議,學習TCP很好的資料。歡迎下載。
    發表于 05-09 14:13 ?0次下載

    TCP:傳輸控制協議

    TCP-IP詳解卷2 TCP:傳輸控制協議,學習TCP很好的資料。歡迎下載。
    發表于 05-09 14:33 ?0次下載

    詳解TCP傳輸控制協議

    TCP(Transmission Control Protocol 傳輸控制協議)是種面向連接(連接導向)的、可靠的、 基于IP的傳輸層協議
    發表于 05-25 15:38 ?1612次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>詳解</b><b class='flag-5'>TCP</b>傳輸控制<b class='flag-5'>協議</b>

    TCP協議與UDP協議的區別和相同點有哪些 看懂TCP協議與UDP協議的優缺點

    首先咱們弄清楚,TCP協議和UCP協議TCP/IP協議的聯系,很多人犯糊涂了,直都是說
    的頭像 發表于 05-26 14:35 ?9900次閱讀
    <b class='flag-5'>TCP</b><b class='flag-5'>協議</b>與UDP<b class='flag-5'>協議</b>的區別和相同點有哪些 <b class='flag-5'>一</b><b class='flag-5'>文</b>看懂<b class='flag-5'>TCP</b><b class='flag-5'>協議</b>與UDP<b class='flag-5'>協議</b>的優缺點

    Siemens PLC TCP協議詳解

    Siemens PLC TCP 協議詳解 說明:藍色文字表示已經破解部分,[紅色文字] 表示對破解部分數字的說明,黑色文字表示對破解部分的進步說明,黑色斜體加粗文字表示未破解部分
    發表于 04-17 11:46 ?3次下載
    Siemens PLC <b class='flag-5'>TCP</b><b class='flag-5'>協議</b><b class='flag-5'>詳解</b>

    LwIP協議棧源碼詳解TCP/IP協議的實現

    電子發燒友網站提供《LwIP協議棧源碼詳解TCP/IP協議的實現.pdf》資料免費下載
    發表于 07-03 11:22 ?3次下載

    了解TCP/IP協議

    TCP/IP協議是現代計算機網絡通信的基礎,是互聯網及局域網廣泛使用的協議TCP/IP協議
    的頭像 發表于 08-07 15:38 ?2218次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b>了解<b class='flag-5'>TCP</b>/IP<b class='flag-5'>協議</b>
    主站蜘蛛池模板: 国际老妇高清在线观看| 亚洲AV 中文字幕 国产 欧美| 久久兔费黄A级毛片高清| 青青视频国产色偷偷| 亚洲欧美精品无码一区二在线| 99国产精品久久人妻无码| 国内一级一级毛片a免费| 人妻中文字幕无码久久AV爆| 孕妇高潮抽搐喷水30分钟| 高清国语自产拍在线| 榴莲推广APP网站入口官网| 迅雷哥在线观看高清| 成人国内精品久久久久影| 久久这里只有精品国产99| 亚洲 日韩 色 图网站| 耽美肉文 高h失禁| 欧美派对xxxhdparty| 中文字幕高清在线观看| 国产永久免费高清在线观看| 色爱AV综合区| 超碰免费碰免费视频| 欧美激情视频一区| 2022精品福利在线小视频| 精品综合久久久久久8888| 性做久久久久久久久浪潮| 俄罗斯14一18处交| 全彩acg无翼乌火影忍者| 97无码欧美熟妇人妻蜜桃天美| 久久精品AV无码亚洲色欲| 亚洲 小说 欧美 激情 另类| 超碰公开在线caopon| 青青青久久| 操中国老太太| 人人草影院| 国产成人片视频一区二区青青| 日日噜噜噜夜夜爽爽狠狠图片| 草莓视频免费在线观看| 桥本有菜护士| 成人无码精品1区2区3区免费看 | 好湿好紧水多AAAAA片秀人网| 外国xxxx|