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

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

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

HTTP網(wǎng)絡(luò)通訊過(guò)程

馬哥Linux運(yùn)維 ? 來(lái)源:馬哥Linux運(yùn)維 ? 2025-01-20 09:07 ? 次閱讀

1. 網(wǎng)絡(luò)模型概覽

OSI(Open System Interconnection)先有模型,后有協(xié)議,先有標(biāo)準(zhǔn),后進(jìn)行實(shí)踐;而TCP/IP則相反,先有協(xié)議和應(yīng)用再提出了模型,且是參照的 OSI 模型。

OSI是一種理論下的模型,而TCP/IP已被廣泛使用,成為網(wǎng)絡(luò)互聯(lián)事實(shí)上的標(biāo)準(zhǔn)。

29697206-d4b6-11ef-9310-92fbcf53809c.png

2. HTTP 網(wǎng)絡(luò)通訊過(guò)程

示例:簡(jiǎn)單的網(wǎng)絡(luò)拓?fù)淠P?/p>

299f77ac-d4b6-11ef-9310-92fbcf53809c.png

29c05378-d4b6-11ef-9310-92fbcf53809c.png

詳解:當(dāng)鍵入網(wǎng)址到網(wǎng)頁(yè)顯示的通訊過(guò)程

客戶端(發(fā)送方組包)

1)HTTP

瀏覽器解析 URL(協(xié)議、域名、資源路徑)

生成HTTP 請(qǐng)求報(bào)文

2)DNS(真實(shí)地址查詢)

向 DNS 服務(wù)器查詢服務(wù)器域名對(duì)應(yīng)的IP 地址

域名中越靠右的位置表示其層級(jí)越高

3)協(xié)議棧(指南幫手)

獲取 IP 后,將之后的 HTTP 傳輸工作交給操作系統(tǒng)內(nèi)核中的協(xié)議棧處理

TCP/UDP:負(fù)責(zé)收發(fā)數(shù)據(jù)

IP:負(fù)責(zé)將網(wǎng)絡(luò)包送達(dá)給對(duì)方

4)TCP(可靠傳輸)

報(bào)文頭部包含端口號(hào)、目標(biāo)端口號(hào)、序號(hào)、確認(rèn)號(hào)等

TCP傳輸數(shù)據(jù)之前,要先三次握手建立連接(三次握手的目的是保證雙方都有發(fā)送和接收的能力

TCP 報(bào)文生成:TCP 頭部 + HTTP 報(bào)文

5)IP(遠(yuǎn)程定位)

將數(shù)據(jù)封裝稱網(wǎng)絡(luò)包發(fā)送給通信對(duì)象

IP 報(bào)文生成:IP 頭部 + TCP 頭部 + HTTP 報(bào)文

6)MAC(兩點(diǎn)傳輸)

還需要加上 MAC 頭部(發(fā)送方和接收方的 MAC 地址等信息),MAC 頭部是以太網(wǎng)的頭部

MAC 作用:MAC 地址用來(lái)唯一標(biāo)識(shí)設(shè)備,再通過(guò) ARP 協(xié)議找到下一站路由器的 MAC 地址,實(shí)現(xiàn)兩點(diǎn)之間的傳輸

至此,網(wǎng)絡(luò)包報(bào)文(MAC 頭部 + IP 頭部 + TCP 頭部 + HTTP 報(bào)文)如下圖所示

29ea0c18-d4b6-11ef-9310-92fbcf53809c.png

7)網(wǎng)卡(出口)

真正的數(shù)據(jù)發(fā)送過(guò)程:將數(shù)字信息(IP 網(wǎng)絡(luò)包)轉(zhuǎn)換為電信號(hào),才能在網(wǎng)線上傳輸

控制網(wǎng)卡需要靠網(wǎng)卡驅(qū)動(dòng)程序

網(wǎng)卡本身具有 MAC 地址,且會(huì)核對(duì)數(shù)據(jù)包的接收方 MAC 地址與自身 MAC 地址是否相同,不是則丟棄

8)交換機(jī)(送別)

交換機(jī)的設(shè)計(jì):將網(wǎng)絡(luò)包原樣轉(zhuǎn)發(fā)到目的地

交換機(jī)工作在 MAC 層,也稱為二層(數(shù)據(jù)鏈路層)網(wǎng)絡(luò)設(shè)備

交換機(jī)接收到達(dá)網(wǎng)線接口的電信號(hào),并轉(zhuǎn)換為數(shù)字信息

二層交換機(jī)本身具有一個(gè) MAC 地址(標(biāo)識(shí)自身硬件設(shè)備),但其各端口不具有 MAC 地址(三層交換機(jī)則每個(gè)端口都有 MAC 地址)

交換機(jī)根據(jù)交換機(jī)根據(jù)MAC 地址表查找 MAC 地址,然后將信號(hào)發(fā)送到相應(yīng)的網(wǎng)線端口。交換機(jī)的 MAC 地址表包含兩個(gè)信息:

設(shè)備的 MAC 地址

該設(shè)備連接在交換機(jī)的哪個(gè)端口上

2a39ebd4-d4b6-11ef-9310-92fbcf53809c.png

9)路由器(出境)

路由器基本原理:

與交換機(jī)類似,通過(guò)查表判斷包的(下一個(gè)路由器或目標(biāo)設(shè)備)轉(zhuǎn)發(fā)目標(biāo)

路由器基于 IP 設(shè)計(jì),俗稱三層(網(wǎng)絡(luò)層)網(wǎng)絡(luò)設(shè)備,其各端口具有 MAC 地址和 IP 地址(和計(jì)算機(jī)網(wǎng)卡一樣);而交換機(jī)基于以太網(wǎng)設(shè)計(jì),俗稱二層(數(shù)據(jù)鏈路層)網(wǎng)絡(luò)設(shè)備,其端口不具有 MAC 地址(也有三層交換機(jī),具有部分的路由器功能)

MAC 頭部的作用就是將包送達(dá)路由器,其中的接收方 MAC 地址就是路由器端口的 MAC 地址

包接收操作:將網(wǎng)線接口的電信號(hào)轉(zhuǎn)成數(shù)字信號(hào),并核對(duì) MAC 地址

完成包接收操作之后,路由器就會(huì)去掉包開(kāi)頭的 MAC 頭部

接下來(lái)會(huì)根據(jù) MAC 頭部后方的 IP 頭部中的內(nèi)容進(jìn)行包的轉(zhuǎn)發(fā)操作

包發(fā)送操作:將網(wǎng)絡(luò)包的數(shù)字信號(hào)轉(zhuǎn)成電信號(hào)并通過(guò)端口發(fā)送出去,經(jīng)過(guò)層層轉(zhuǎn)發(fā)之后,到達(dá)最終目標(biāo)設(shè)備

首先是查詢路由表判斷轉(zhuǎn)發(fā)目標(biāo)

過(guò) ARP 協(xié)議根據(jù)對(duì)方的 IP 地址查詢 MAC 地址,并將查詢結(jié)果作為接收方 MAC 地址

2a69d254-d4b6-11ef-9310-92fbcf53809c.png

以太網(wǎng)(傳輸)

在網(wǎng)絡(luò)包(跨網(wǎng)段)傳輸過(guò)程中,源 IP 和目標(biāo) IP 始終是不會(huì)變的,一直變化的是 MAC 地址,因?yàn)樾枰?MAC 地址在以太網(wǎng)內(nèi)進(jìn)行兩個(gè)設(shè)備之間的包傳輸。

(對(duì)于同網(wǎng)段的二層轉(zhuǎn)發(fā),MAC 地址則不變。)

服務(wù)器端(接收方解包)

1)路由器(入境)

2)交換機(jī)(境內(nèi))

3)服務(wù)器(終點(diǎn))

服務(wù)器層層扒開(kāi)數(shù)據(jù)包頭部,最后通過(guò) TCP 頭部的端口號(hào)確認(rèn)是 HTTP 進(jìn)程想要的這個(gè)包

HTTP 進(jìn)程將資源封裝在HTTP 響應(yīng)報(bào)文中,也依次穿上 TCP、IP、MAC 頭部,從網(wǎng)卡出去,交由交換機(jī)轉(zhuǎn)發(fā)到路由器,經(jīng)過(guò)層層轉(zhuǎn)發(fā),最后到達(dá)客戶端

客戶端扒剩 HTTP 響應(yīng)報(bào)文后,交給瀏覽器去渲染頁(yè)面并顯示資源

最后客戶端要離開(kāi)時(shí),向服務(wù)器發(fā)起TCP 四次揮手,至此雙方連接斷開(kāi)

示例:服務(wù)器和客戶端相互扒皮

2ab36e64-d4b6-11ef-9310-92fbcf53809c.png

鏈接:https://www.cnblogs.com/juno3550/p/14385367.html


聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(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)投訴
  • HTTP
    +關(guān)注

    關(guān)注

    0

    文章

    522

    瀏覽量

    32511
  • OSI
    OSI
    +關(guān)注

    關(guān)注

    0

    文章

    85

    瀏覽量

    15612
  • 網(wǎng)絡(luò)通訊
    +關(guān)注

    關(guān)注

    0

    文章

    77

    瀏覽量

    11516

原文標(biāo)題:2. HTTP 網(wǎng)絡(luò)通訊過(guò)程

文章出處:【微信號(hào):magedu-Linux,微信公眾號(hào):馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 0人收藏

    評(píng)論

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

    基于RK3576開(kāi)發(fā)板的http/https通訊

    主要區(qū)別在于HTTPS需要CA證書(shū)、使用加密傳輸,且端口號(hào)通常為443,而HTTP為80。HTTP/HTTPS通訊中,客戶端發(fā)送請(qǐng)求報(bào)文,服務(wù)器返回響應(yīng)報(bào)文,請(qǐng)求方法常見(jiàn)有GET和POST。URL(統(tǒng)一
    的頭像 發(fā)表于 05-10 11:24 ?1209次閱讀
    基于RK3576開(kāi)發(fā)板的<b class='flag-5'>http</b>/https<b class='flag-5'>通訊</b>

    關(guān)于三菱PLC的網(wǎng)絡(luò)通訊時(shí)的‘生存確認(rèn)’參數(shù)

    最近項(xiàng)目用到三菱PLC的網(wǎng)絡(luò)通訊,終于理解了PLC的以太網(wǎng)通訊時(shí),有個(gè)網(wǎng)絡(luò)端口生存確認(rèn),原來(lái)是一個(gè)非常重要的參數(shù)。 生成確認(rèn)決定了網(wǎng)絡(luò)參數(shù)中模塊的初始設(shè)置中的對(duì)象目標(biāo)生存期的設(shè)置是否生
    發(fā)表于 03-31 11:26

    stm32cubeide生成的lwip網(wǎng)絡(luò)通訊任務(wù)跑起來(lái)都很正常,為什么一旦加獨(dú)立看門狗之后就會(huì)卡死呢?

    stm32cubeide生成的lwip網(wǎng)絡(luò)通訊任務(wù)跑起來(lái)都很正常,為什么一旦加獨(dú)立看門狗之后就會(huì)卡死?
    發(fā)表于 03-10 07:29

    屏蔽雙絞線和屏蔽網(wǎng)絡(luò)通訊線的區(qū)別有哪些

    屏蔽雙絞線和屏蔽網(wǎng)絡(luò)通訊線在多個(gè)方面存在區(qū)別,以下是對(duì)這兩者的詳細(xì)比較: 一、定義與結(jié)構(gòu) 屏蔽雙絞線: 定義:屏蔽雙絞線是在普通雙絞線的基礎(chǔ)上增加了一層或多層屏蔽層,以減少電磁干擾(EMI)和射頻
    的頭像 發(fā)表于 02-22 11:04 ?633次閱讀

    APM8系列網(wǎng)絡(luò)電力儀表

    詳細(xì)情況可與我聯(lián)系咨詢:繆志澄 18860991782 安科瑞電氣APM系列網(wǎng)絡(luò)電力儀表是按IEC標(biāo)準(zhǔn)設(shè)計(jì),與國(guó)際先進(jìn)技術(shù)同步的網(wǎng)絡(luò)電力儀表。具有全電量測(cè)量電能統(tǒng)計(jì),電能質(zhì)量分析及網(wǎng)絡(luò)通訊等功能
    的頭像 發(fā)表于 02-05 15:39 ?288次閱讀
    APM8系列<b class='flag-5'>網(wǎng)絡(luò)</b>電力儀表

    運(yùn)動(dòng)控制卡網(wǎng)絡(luò)通訊的心跳檢測(cè)之C#上位機(jī)編程

    使用C#上位機(jī)編程實(shí)現(xiàn)運(yùn)動(dòng)控制卡網(wǎng)絡(luò)通訊的心跳檢測(cè)功能
    的頭像 發(fā)表于 12-24 10:54 ?898次閱讀
    運(yùn)動(dòng)控制卡<b class='flag-5'>網(wǎng)絡(luò)通訊</b>的心跳檢測(cè)之C#上位機(jī)編程

    安科瑞APM830電能質(zhì)量型網(wǎng)絡(luò)電表 支持Profibus通訊 帶CPA認(rèn)證

    安科瑞Profibus通訊電能質(zhì)量型網(wǎng)絡(luò)電表具有全電量測(cè)量、電能統(tǒng)計(jì)、電能質(zhì)量分析、錄波功能、事件記錄功能(包括電壓暫升暫降中斷、沖擊電流等記錄)及網(wǎng)絡(luò)通訊等功能,主要用于電網(wǎng)供電質(zhì)量的綜合監(jiān)控。
    的頭像 發(fā)表于 12-19 10:02 ?417次閱讀
    安科瑞APM830電能質(zhì)量型<b class='flag-5'>網(wǎng)絡(luò)</b>電表 支持Profibus<b class='flag-5'>通訊</b> 帶CPA認(rèn)證

    安科瑞profibus通訊三相智能電能表APM810/MCP

    1、產(chǎn)品概述 安科瑞電氣APM系列網(wǎng)絡(luò)電力儀表是按IEC標(biāo)準(zhǔn)設(shè)計(jì),與國(guó)際先進(jìn)技術(shù)同步的網(wǎng)絡(luò)電力儀表。具有全電量測(cè)量,電能統(tǒng)計(jì),電能質(zhì)量分析及網(wǎng)絡(luò)通訊等功能,主要用于對(duì)電網(wǎng)供電質(zhì)量的綜合監(jiān)控。該系
    的頭像 發(fā)表于 11-27 15:13 ?439次閱讀
    安科瑞profibus<b class='flag-5'>通訊</b>三相智能電能表APM810/MCP

    PN通訊電表-可與西門子PLC通訊

    APM系列網(wǎng)絡(luò)電力電測(cè)儀表 ? ? ?安科瑞電氣APM系列網(wǎng)絡(luò)電力儀表是按IEC標(biāo)準(zhǔn)設(shè)計(jì),與技術(shù)同步的網(wǎng)絡(luò)電力儀表。具有全電量測(cè)量,電能統(tǒng)計(jì),電能質(zhì)量分析及網(wǎng)絡(luò)通訊等功能,主要用于對(duì)電
    的頭像 發(fā)表于 10-28 17:06 ?563次閱讀
    PN<b class='flag-5'>通訊</b>電表-可與西門子PLC<b class='flag-5'>通訊</b>

    百兆以太網(wǎng)通訊的電表有哪些?

    APM系列網(wǎng)絡(luò)電力電測(cè)儀表 技術(shù)支持18701998775 安科瑞電氣APM系列網(wǎng)絡(luò)電力儀表是按IEC標(biāo)準(zhǔn)設(shè)計(jì),與技術(shù)同步的網(wǎng)絡(luò)電力儀表。具有全電量測(cè)量,電能統(tǒng)計(jì),電能質(zhì)量分析及網(wǎng)絡(luò)通訊
    的頭像 發(fā)表于 10-28 16:51 ?523次閱讀
    百兆以太網(wǎng)<b class='flag-5'>通訊</b>的電表有哪些?

    HTTP海外訪問(wèn)優(yōu)化:提升跨國(guó)網(wǎng)絡(luò)性能的秘訣

    HTTP海外訪問(wèn)優(yōu)化是提升跨國(guó)網(wǎng)絡(luò)性能的關(guān)鍵,涉及多個(gè)方面的技術(shù)和策略。
    的頭像 發(fā)表于 10-15 08:04 ?635次閱讀

    HTTP海外趨勢(shì)洞察:未來(lái)網(wǎng)絡(luò)發(fā)展的風(fēng)向標(biāo)

    HTTP海外趨勢(shì)洞察為我們揭示了未來(lái)網(wǎng)絡(luò)發(fā)展的風(fēng)向標(biāo)。
    的頭像 發(fā)表于 10-15 07:50 ?488次閱讀

    【飛凌嵌入式OK3576-C開(kāi)發(fā)板體驗(yàn)】SSH遠(yuǎn)程登錄網(wǎng)絡(luò)配置及CAN通訊

    一、串口登錄 根據(jù)手冊(cè)描述串口登錄微1500000波特率和125000波特率,因?yàn)橛袃蓚€(gè)鏡像系統(tǒng)分別對(duì)應(yīng)不同的波特率。 當(dāng)前使用的系統(tǒng),Debug通訊 波特率1500000 二、網(wǎng)絡(luò)通訊配置 鏡像
    發(fā)表于 10-10 09:25

    功能強(qiáng)大的網(wǎng)絡(luò)通訊工具,支持各類TCP、UDP、HTTP通訊協(xié)議

    功能強(qiáng)大的網(wǎng)絡(luò)通訊工具,支持各類TCP、UDP、HTTP通訊協(xié)議,簡(jiǎn)單方便,包含歷史記憶功能,體積小,服務(wù)器調(diào)試最合適
    發(fā)表于 09-05 11:51 ?0次下載

    講解HTTP代理類別,使用設(shè)置,測(cè)試HTTP代理方法

    HTTP
    jf_62215197
    發(fā)布于 :2024年07月19日 07:03:46

    電子發(fā)燒友

    中國(guó)電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會(huì)員交流學(xué)習(xí)
    • 獲取您個(gè)性化的科技前沿技術(shù)信息
    • 參加活動(dòng)獲取豐厚的禮品