在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

淺析C++基礎語法之計算機網絡中傳輸層(TCP&UDP)

C語言編程學習基地 ? 來源:C語言編程學習基地 ? 作者: C語言編程 ? 2021-10-26 10:07 ? 次閱讀

運輸層

協議:

TCP(Transmission Control Protocol,傳輸控制協議)

UDP(User Datagram Protocol,用戶數據報協議)

端口

5775e780-357f-11ec-82a8-dac502259ad0.png

TCP

TCP(Transmission Control Protocol,傳輸控制協議)是一種面向連接的、可靠的、基于字節流的傳輸層通信協議,其傳輸的單位是報文段。

特征:

①面向連接

②只能點對點(一對一)通信

③可靠交互

④全雙工通信

⑤面向字節流

TCP 如何保證可靠傳輸:

①確認和超時重傳

②數據合理分片和排序

③流量控制

④擁塞控制

⑤數據校驗

TCP 報文結構

57e02d16-357f-11ec-82a8-dac502259ad0.png

TCP 首部

5843bbec-357f-11ec-82a8-dac502259ad0.png

TCP:狀態控制碼(Code,Control Flag),占 6 比特,含義如下:

URG:緊急比特(urgent),當 URG=1 時,表明緊急指針字段有效,代表該封包為緊急封包。它告訴系統此報文段中有緊急數據,應盡快傳送(相當于高優先級的數據), 且上圖中的 Urgent Pointer 字段也會被啟用。

ACK:確認比特(Acknowledge)。只有當 ACK=1 時確認號字段才有效,代表這個封包為確認封包。當 ACK=0 時,確認號無效。

PSH:(Push function)若為 1 時,代表要求對方立即傳送緩沖區內的其他對應封包,而無需等緩沖滿了才送。

RST:復位比特(Reset),當 RST=1 時,表明 TCP 連接中出現嚴重差錯(如由于主機崩潰或其他原因),必須釋放連接,然后再重新建立運輸連接。

SYN:同步比特(Synchronous),SYN 置為 1,就表示這是一個連接請求或連接接受報文,通常帶有 SYN 標志的封包表示『主動』要連接到對方的意思。

FIN:終止比特(Final),用來釋放一個連接。當 FIN=1 時,表明此報文段的發送端的數據已發送完畢,并要求釋放運輸連接。

UDP

UDP(User Datagram Protocol,用戶數據報協議)是 OSI(Open System Interconnection 開放式系統互聯) 參考模型中一種無連接的傳輸層協議,提供面向事務的簡單不可靠信息傳送服務,其傳輸的單位是用戶數據報。

特征:

①無連接

②盡最大努力交付

③面向報文

④沒有擁塞控制

⑤支持一對一、一對多、多對一、多對多的交互通信

⑥首部開銷小

UDP 報文結構

UDP 首部

TCP 與 UDP 的區別

TCP 面向連接,UDP 是無連接的;

TCP 提供可靠的服務,也就是說,通過 TCP 連接傳送的數據,無差錯,不丟失,不重復,且按序到達;UDP 盡最大努力交付,即不保證可靠交付

TCP 的邏輯通信信道是全雙工的可靠信道;UDP 則是不可靠信道

每一條 TCP 連接只能是點到點的;UDP 支持一對一,一對多,多對一和多對多的交互通信

TCP 面向字節流(可能出現黏包問題),實際上是 TCP 把數據看成一連串無結構的字節流;UDP 是面向報文的(不會出現黏包問題)

UDP 沒有擁塞控制,因此網絡出現擁塞不會使源主機的發送速率降低(對實時應用很有用,如 IP 電話,實時視頻會議等)

TCP 首部開銷20字節;UDP 的首部開銷小,只有 8 個字節

TCP 黏包問題

原因

TCP 是一個基于字節流的傳輸服務(UDP 基于報文的),“流” 意味著 TCP 所傳輸的數據是沒有邊界的。所以可能會出現兩個數據包黏在一起的情況。

解決

發送定長包。如果每個消息的大小都是一樣的,那么在接收對等方只要累計接收數據,直到數據等于一個定長的數值就將它作為一個消息。

包頭加上包體長度。包頭是定長的 4 個字節,說明了包體的長度。接收對等方先接收包頭長度,依據包頭長度來接收包體。

在數據包之間設置邊界,如添加特殊符號 標記。FTP 協議正是這么做的。但問題在于如果數據正文中也含有 ,則會誤判為消息的邊界。

使用更加復雜的應用層協議。

TCP 流量控制

概念

流量控制(flow control)就是讓發送方的發送速率不要太快,要讓接收方來得及接收。

方法

利用可變窗口進行流量控制

TCP 擁塞控制

概念

擁塞控制就是防止過多的數據注入到網絡中,這樣可以使網絡中的路由器或鏈路不致過載。

方法

慢開始( slow-start )

擁塞避免( congestion avoidance )

快重傳( fast retransmit )

快恢復( fast recovery )

TCP的擁塞控制圖

今天的分享就到這里了,下期為大家分享TCP連接管理,大家要好好學C++喲~

編輯:jq

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

    關注

    8

    文章

    7145

    瀏覽量

    89593
  • TCP
    TCP
    +關注

    關注

    8

    文章

    1378

    瀏覽量

    79311
  • UDP
    UDP
    +關注

    關注

    0

    文章

    327

    瀏覽量

    34047

原文標題:C++基礎語法梳理:計算機網絡丨傳輸層(TCP&UDP)

文章出處:【微信號:cyuyanxuexi,微信公眾號:C語言編程學習基地】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    計算機網絡架構的演進

    計算機網絡架構的演進見證了信息技術的飛速發展。早期的總線型網絡架構,通過一條共享的通信線路連接各個節點,結構簡單且成本較低,但存在單點故障和傳輸效率不高的問題。隨著技術的發展,星型網絡
    的頭像 發表于 01-21 11:11 ?112次閱讀

    TCP三次握手與UDP的區別

    計算機網絡,數據傳輸的可靠性和效率是兩個關鍵因素。為了滿足不同的應用需求,設計者們開發了多種傳輸協議。其中,
    的頭像 發表于 01-03 17:35 ?439次閱讀

    百問FB網絡編程 - 網絡編程簡介

    6.1 網絡編程簡介 ?要編寫通過計算機網絡通信的程序,首先要確定這些程序同通信的協議(protocol),在設計一個協議的細節之前,首先要分清程序是由哪個程序發起以及響應何時產生。 ?舉例來說
    發表于 12-04 09:46

    飛凌嵌入式ElfBoard ELF 1板卡-網絡編程示例之網絡基礎知識

    使用。端口號數據鏈路和 IP 的地址,分別指的是 MAC 地址和 IP 地址。前者用來識別同一鏈路不同的計算機,后者用來識別 TCP/IP 網絡
    發表于 11-09 14:37

    TCP&;UDP調試工具

    TCP&UDP調試工具
    發表于 10-30 10:41 ?1次下載

    應用于計算機網絡服務器晶振SG3225HBN(X1G005141000500)

    計算機網絡服務器,穩定和高性能的時鐘源對于數據處理和網絡通信的準確性至關重要,SG3225HBN晶振(型號X1G005141000500)憑借其高頻率穩定性、低相位噪聲、高抗干擾能力以及
    發表于 09-05 10:05 ?0次下載

    深入了解 Windows 系統 TCP/IP 參數配置

    概述 TCP/IP是一組用于實現計算機網絡互聯的通信協議。它包括了多個層次的協議,如網絡接口、網際
    的頭像 發表于 09-04 17:24 ?473次閱讀

    深度解析TCPUDP協議

    計算機網絡設備要相互通信,它們必須遵循一種共同的方法或標準。對于不同硬件平臺和操作系統之間的交互而言,這種共同遵循的規范尤為關鍵。我們將這一系列指導通信過程的規則稱為“協議”。TCPU
    的頭像 發表于 09-02 14:53 ?477次閱讀
    深度解析<b class='flag-5'>TCP</b>與<b class='flag-5'>UDP</b>協議

    tcpudp的區別和聯系

    揮著重要作用。然而,它們在設計、功能和性能方面存在顯著差異。 二、TCPUDP的定義 傳輸控制協議(TCPTCP是一種面向連接的、可靠
    的頭像 發表于 08-16 11:06 ?678次閱讀

    計算機網絡中常見的默認端口號及其用途

    網絡工程領域,了解和掌握默認端口號是至關重要的。端口號是計算機網絡中最基本的概念之一,用于標識特定的網絡服務或應用程序。本文將詳細介紹常見的默認端口號及其用途,幫助網絡工程師更好地理
    的頭像 發表于 08-13 16:33 ?1709次閱讀

    一文了解TCP/IP協議

    TCP/IP協議是現代計算機網絡通信的基礎,是互聯網及局域網廣泛使用的一套協議。TCP/IP協議集包括許多協議,其中最重要的是傳輸控制協議(TCP
    的頭像 發表于 08-07 15:38 ?2374次閱讀
    一文了解<b class='flag-5'>TCP</b>/IP協議

    計算機網絡的三種通信方式

    計算機網絡的三種通信方式,即單工通信、半雙工通信和全雙工通信,是理解和設計高效網絡架構的基礎。每種通信方式都有其獨特的特性、應用場景及優缺點。以下是對這三種通信方式的詳細分析,旨在提供深入的理解。
    的頭像 發表于 08-07 15:00 ?3197次閱讀

    華納云:TCP IP協議的發展和優勢

    TCP/IP(Transmission Control Protocol/Internet Protocol,傳輸控制協議/互聯網協議)是互聯網和現代計算機網絡的基礎協議集。它定義了數據在網絡
    的頭像 發表于 07-25 16:49 ?556次閱讀

    【RTC程序設計:實時音視頻權威指南】計算機知識基礎篇

    數據通信的加密,加密方法、算法也有很多種,有對稱加密算法,也有非對稱加密算法。在這些計算機網絡的基本概念,可以從物理到應用的特性進行了解,重點可以學習一下
    發表于 04-23 09:02

    網絡傳輸協議有幾種?

    網絡傳輸協議是一種規定計算機網絡中進行通信的規則或標準。常見的網絡傳輸協議有以下幾種: 1.
    的頭像 發表于 04-02 16:04 ?1735次閱讀
    主站蜘蛛池模板: 天天干天天干天天干 | 国产gaysexchina男同men1068 | bt天堂电影 | 日日操狠狠操 | 黄色免费三级 | 国产综合久久久久影院 | 免费在线欧美 | 韩国理论片2023现在观看 | 欧美极品bbbbⅹxxxx | 国模鲍鱼 | 一级午夜| 天天涩综合 | 大香线蕉97久久 | 青草午夜精品视频在线观看 | 人人舔人人爱 | 亚洲男人的天堂在线播放 | 这里只有精品视频 | 黄色在线观看网站 | 天天干天天添 | 国产一级特黄aa大片在线 | 看大片全色黄大色黄 | 在线毛片免费 | 5g影院天天| 久青草国产手机视频免费观看 | 日本视频不卡 | 久久视频精品36线视频在线观看 | 婷婷在线综合 | 亚洲色图 欧美 | 免费看国产一级特黄aa大片 | 色多网站免费视频 | 欧美高清milf在线播放 | 夜色资源站www国产在线观看 | 欧美一区中文字幕 | 成人窝窝午夜看片 | 亚洲国产一区二区在线 | 国产精品三级在线播放 | 色天使美国 | 国产婷婷高清在线观看免费 | 日本一本高清视频 | 亚洲激情视频网 | 99国产精品久久久久久久成人热 |