衡阳派盒市场营销有限公司

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

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

3天內不再提示

tcpip協議棧是什么?tcpip協議棧有哪些協議?tcpip協議棧中報文封裝和解封裝過程

A面面觀 ? 來源:綜合整理 ? 2023-08-01 17:51 ? 次閱讀

tcpip協議棧是什么?

TCP/IP協議棧是計算機網絡中使用的最常見的網絡協議棧。它是一個四層協議棧,每一層使用不同的協議來實現特定的任務。下面是TCP/IP協議棧的四個層級(自下而上): 1. 鏈路層:該層主要是協議,負責在物理網絡上傳輸數據幀,包括數據的傳輸和數據的錯誤檢測與調整。該層使用的協議包括EthernetWi-Fi等。 2. 網絡層:網絡層的主要任務是在計算機網絡中建立數據包的傳輸路徑。該層使用的協議包括IP(Internet Protocol)和ICMP(Internet Control Message Protocol)等。其中,IP協議負責將數據包從源節點路由到目標節點,而ICMP協議則用于網絡故障的診斷和恢復。 3. 傳輸層:該層主要負責數據的傳輸和網絡連接的管理。該層使用的協議包括TCP(Transmission Control Protocol)和UDP(User Datagram Protocol)等。其中,TCP協議用于建立可靠的點對點連接(如HTTP、FTP等應用程序),而UDP協議則用于無連接和低延遲的數據傳輸(如視頻聊天等應用程序)。 4. 應用層:該層體系結構與應用程序相關。該層使用的協議類型很多,如HTTP(HyperText Transfer Protocol)、FTP(File Transfer Protocol)、SMTP(Simple Mail Transfer Protocol)等。該層的主要任務是為不同的應用程序提供標準化的接口,以便應用程序之間可以相互通信和協作。

tcpip協議棧有哪些協議?

TCP/IP協議棧包含4個協議層:

網絡接口層:負責與物理網絡進行交互,完成數據的發送和接收。

網絡層:負責數據的尋址、路由選擇和數據分組。主要協議是IP協議。

傳輸層:負責進程間的數據傳輸。主要協議有TCP和UDP協議。

應用層:提供網絡應用服務。包含許多常用協議如HTTP、FTP、SMTP、DNS等。

TCP/IP協議棧4個協議層的主要作用:

1、網絡接口層:隱藏物理網絡的細節,為高層提供統一的接口。

2、網絡層:定義IP地址和路由標準,實現不同子網之間的數據傳輸。IP協議工作在此層。

3、傳輸層:定義端到端的通信標準,提供進程間的數據交換。TCP和UDP工作在此層。

4、應用層:提供網絡應用服務和接口。不同的應用協議工作在此層,如HTTP、FTP、DNS等。

tcpip協議棧中報文封裝和解封裝過程

TCP/IP協議棧中的報文封裝和解封裝過程如下:

封裝過程: 1. 應用層:應用程序將數據封裝成應用層協議的數據單元,如HTTP、FTP等。 2. 傳輸層:傳輸層將應用層數據單元封裝成傳輸層協議的數據單元,如TCP、UDP等。TCP協議還會分段,每個段包含一個序號,用于在傳輸過程中保證數據的可靠傳輸。UDP協議則直接將數據單元封裝成UDP報文。 3. 網絡層:網絡層將傳輸層數據單元封裝成網絡層協議的數據單元,如IP報文。IP報文包含源IP地址、目的IP地址等信息,用于在網絡中路由和轉發。 4. 數據鏈路層:數據鏈路層將網絡層數據單元封裝成數據鏈路層協議的數據單元,如以太網幀。以太網幀包含源MAC地址、目的MAC地址等信息,用于在局域網中傳輸和尋址。 5. 物理層:物理層將數據鏈路層數據單元轉換為比特流,用于在物理媒介上傳輸。

解封裝過程: 1. 物理層:物理層將比特流轉換成數據鏈路層數據單元。 2. 數據鏈路層:數據鏈路層將數據鏈路層數據單元解封裝為網絡層數據單元。 3. 網絡層:網絡層將網絡層數據單元解封裝為傳輸層數據單元。 4. 傳輸層:傳輸層將傳輸層數據單元解封裝為應用層數據單元。 5. 應用層:應用層將應用層數據單元解封裝為原始數據。

wKgZomTI5FyAeuFcAACN0lbnAcA535.jpg



再分享一張圖片來說明一下封裝過程;意思跟上圖一樣,解封就是反向:


wKgZomTI5WmAZXd0AACOdgLQb4I968.jpg





tcp在建立連接和斷開連接

tcp在建立連接和斷開連接分別要經過三次握手和四次揮手,那么都會有相應的服務器端口狀態,只描述三次握手和四次揮手雙端的狀態,如圖:

wKgaomTIzmqAYOwcAAulsFlhg-M731.jpg


數據傳輸過程

協議棧中數據傳輸的過程:

ad36e808-26f1-11ee-962d-dac502259ad0.png

① 應用程序處理

首先應用程序會進行編碼處理,這些編碼相當于 OSI 的表示層功能;編碼轉化后,郵件不一定馬上被發送出去,這種何時建立通信連接何時發送數據的管理功能,相當于 OSI 的會話層功能。

② TCP 模塊的處理

TCP 根據應用的指示,負責建立連接、發送數據以及斷開連接。TCP 提供將應用層發來的數據順利發送至對端的可靠傳輸。為了實現這一功能,需要在應用層數據的前端附加一個 TCP 首部。

③ IP 模塊的處理

IP 將 TCP 傳過來的 TCP 首部和 TCP 數據合起來當做自己的數據,并在 TCP 首部的前端加上自己的 IP 首部。IP 包生成后,參考路由控制表決定接受此 IP 包的路由或主機。

④ 網絡接口(以太網驅動)的處理

從 IP 傳過來的 IP 包對于以太網來說就是數據。給這些數據附加上以太網首部并進行發送處理,生成的以太網數據包將通過物理層傳輸給接收端。

⑤ 網絡接口(以太網驅動)的處理

主機收到以太網包后,首先從以太網包首部找到 MAC 地址判斷是否為發送給自己的包,若不是則丟棄數據。如果是發送給自己的包,則從以太網包首部中的類型確定數據類型,再傳給相應的模塊,如 IP、ARP 等。這里的例子則是 IP 。

⑥ IP 模塊的處理

IP 模塊接收到數據后也做類似的處理。從包首部中判斷此 IP 地址是否與自己的 IP 地址匹配,如果匹配則根據首部的協議類型將數據發送給對應的模塊,如 TCP、UDP。這里的例子則是 TCP。另外,對于有路由器的情況,接收端地址往往不是自己的地址,此時,需要借助路由控制表,在調查應該送往的主機或路由器之后再進行轉發數據。

⑦ TCP 模塊的處理

在 TCP 模塊中,首先會計算一下校驗和,判斷數據是否被破壞。然后檢查是否在按照序號接收數據。最后檢查端口號,確定具體的應用程序。數據被完整地接收以后,會傳給由端口號識別的應用程序。

⑧ 應用程序的處理

接收端應用程序會直接接收發送端發送的數據。通過解析數據,展示相應的內容。

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

    關注

    0

    文章

    511

    瀏覽量

    31519
  • FTP
    FTP
    +關注

    關注

    0

    文章

    110

    瀏覽量

    40712
  • TCPIP
    +關注

    關注

    1

    文章

    56

    瀏覽量

    22796
  • TCPIP協議棧
    +關注

    關注

    0

    文章

    6

    瀏覽量

    5940
收藏 人收藏

    評論

    相關推薦

    基于μCOS-Ⅱ的嵌入式TCPIP_協議的研究與實現

    基于μCOS-Ⅱ的嵌入式TCPIP_協議的研究與實現
    發表于 08-20 09:28

    一種新的嵌入式TCPIP協議的研究與實現

    一種新的嵌入式TCPIP協議的研究與實現
    發表于 08-20 10:37

    ARM開發教程之基于ARM微處理器TCPIP協議LwlP實現

    ARM開發教程之基于ARM微處理器TCPIP協議LwlP實現
    發表于 08-24 22:42

    TCPIP詳解 卷1協議

    TCPIP詳解 卷1協議
    發表于 09-28 12:45

    協議是什么 協議又是什么

    協議協議的具體實現形式, 通俗的理解就是用代碼實現的函數庫, 以便于開發人員調用。協議是通常是一個層級結構。
    發表于 08-05 07:00

    51實現TCPIP協議原理圖

    51實現TCPIP協議原理圖 好東西哦。網上搜集,希望對你有用。
    發表于 03-25 14:28 ?102次下載

    對幾種開源的TCPIP協議分析

    對幾種開源的TCPIP協議分析
    發表于 11-03 16:52 ?24次下載

    嵌入式TCPIP協議LWIP的內部結構

    分析了嵌入式 TCPIP協議主要對LWIP的基本結構,介紹了嵌入式TCPIP協議LWIP的內
    發表于 02-17 15:55 ?76次下載
    嵌入式<b class='flag-5'>TCPIP</b><b class='flag-5'>協議</b><b class='flag-5'>棧</b>LWIP的內部結構

    嵌入式小型TCPIP協議

    一個專為嵌入式系統編寫的小型TCP/IP協議 TCP/IPLean
    發表于 10-08 17:23 ?50次下載

    基于ARM的輕量級TCPIP協議的移植及應用

    本文著重與講訴基于ARM的輕量級TCPIP協議的移植及應用
    發表于 10-14 17:55 ?54次下載
    基于ARM的輕量級<b class='flag-5'>TCPIP</b><b class='flag-5'>協議</b><b class='flag-5'>棧</b>的移植及應用

    TCPIP協議的實現lwip

    TCPIP協議的實現lwip方便初學者剛開始接觸lwip,個大概的了解與認識。
    發表于 03-14 15:40 ?13次下載

    AN1921 - Microchip TCPIP精簡協議

    本應用筆記描述Microchip傳輸控制協議/互聯網協議(TCP/IP)精簡協議庫的結構和接口,并提供部分簡單的演示應用。實現TC P/IP精簡
    發表于 03-22 10:16 ?3次下載
    AN1921 - Microchip <b class='flag-5'>TCPIP</b>精簡<b class='flag-5'>協議</b><b class='flag-5'>棧</b>

    教你動手寫UDP協議—DNS報文解析

    教你動手寫UDP協議系列文章序號內容1《教你動手寫UDP協議-UDP協議格式》2《教你動手
    的頭像 發表于 12-24 16:16 ?1472次閱讀

    CAN協議與LIN協議介紹

    包括以下幾個方面: 物理層驅動程序:負責與CAN總線物理層進行通信,包括發送和接收CAN消息,以及處理CAN總線的電氣特性和信號傳輸。 CAN消息處理:負責解析和封裝CAN消息,包括標識符的解析、數據的封裝和解封裝等。 錯誤檢測
    的頭像 發表于 10-27 16:16 ?3252次閱讀
    CAN<b class='flag-5'>協議</b><b class='flag-5'>棧</b>與LIN<b class='flag-5'>協議</b><b class='flag-5'>棧</b>介紹

    ethernetif_input和tcpip協議線程的作用

    tcpip協議線程是lwIP協議的核心線程,負責處理TCP/IP協議
    的頭像 發表于 03-20 10:01 ?1484次閱讀
    百家乐大转轮| 大发百家乐现金| 百家乐官网破解仪| 百家乐官网打水策略| 大发888官方中文网址| 全景网百家乐的玩法技巧和规则| 12倍百家乐秘籍| 澳门玩百家乐官网的玩法技巧和规则| 大发888真人娱乐场| 百家乐是怎样算牌| 百家乐真人视屏游戏| 百家乐官网凯时娱乐场| 百家乐官网登封代理| 明升国际网| 大发888游戏平台 送1666元礼金领取lrm| 试玩百家乐的玩法技巧和规则 | 大发888充值网站| 百家乐下注法| 百家乐谁能看准牌| 百家乐投注网中国体育| 哪里有百家乐官网游戏下载| 百家乐官网推广| 百家乐官网视频打麻将| 百色市| 亚洲赌博网站| 38坊| 太阳城娱乐城管理网| 大发888提款| 威尼斯人娱乐网网上百家乐的玩法技巧和规则 | 棋牌百家乐官网有稳赚的方法吗| 百家乐官网娱乐网77scs| 豪华百家乐官网桌子厂家| 平博百家乐官网游戏| 西畴县| 赌场风云| 稳赢至尊| 博彩老头| 合乐娱乐| 妈祖棋牌迷| 沈阳娱网棋牌官方下载| 龙博百家乐的玩法技巧和规则|