<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          網(wǎng)絡(luò)基本功之細(xì)說(shuō)網(wǎng)絡(luò)傳輸

          共 3742字,需瀏覽 8分鐘

           ·

          2020-12-18 15:52

          首先我們來(lái)看一個(gè)例子:網(wǎng)絡(luò)服務(wù)器向客戶端傳送數(shù)據(jù)的過(guò)程。下圖顯示了一個(gè)網(wǎng)絡(luò)服務(wù)器向客戶端傳送數(shù)據(jù)的完整過(guò)程:

          1. 需要傳送的數(shù)據(jù)是網(wǎng)絡(luò)服務(wù)器的 HTML 頁(yè)面。
          2. 應(yīng)用協(xié)議 HTTP 報(bào)文頭添加到 HTML 數(shù)據(jù)之前,報(bào)文頭信息包括:服務(wù)器所使用的 HTTP 版本,以及表明它包含發(fā)給網(wǎng)絡(luò)客戶端信息的狀態(tài)編碼。
          3. HTTP 應(yīng)用層協(xié)議將 HTML 格式的網(wǎng)頁(yè)數(shù)據(jù)發(fā)送給傳輸層。TCP 傳輸層用于管理網(wǎng)絡(luò)服務(wù)器和客戶端之間的會(huì)話。
          4. IP 信息添加到 TCP 信息之前,IP 指定適當(dāng)?shù)脑春湍康?IP 地址,這些信息就構(gòu)成了 IP 報(bào)文。
          5. 以太網(wǎng)協(xié)議添加到 IP 報(bào)文的兩端之后,就形成了數(shù)據(jù)鏈路幀,上述幀發(fā)送至通向網(wǎng)絡(luò)客戶端的路徑上的最近的一個(gè)路由器。路由器移除以太網(wǎng)信息,觀察 IP 報(bào)文,判定最佳路徑,將報(bào)文插入一個(gè)新的幀,并發(fā)送至目標(biāo)路徑上下一個(gè)相鄰路由器,每個(gè)路由器在轉(zhuǎn)發(fā)之前都移除并添加新的數(shù)據(jù)鏈路層信息。
          6. 客戶端接收到包含數(shù)據(jù)的數(shù)據(jù)鏈路幀,處理各層協(xié)議頭,之后以添加時(shí)相反的順序移除協(xié)議頭。首先處理并移除以太網(wǎng)信息,之后是 IP 協(xié)議信息,接下來(lái)是 TCP 信息,最后是 HTTP 信息。
          7. 數(shù)據(jù)通過(guò)互聯(lián)網(wǎng)網(wǎng)絡(luò)傳輸,互聯(lián)網(wǎng)網(wǎng)絡(luò)包含媒介和中間設(shè)備。
          8. 之后,將網(wǎng)頁(yè)信息傳遞給客戶端網(wǎng)頁(yè)瀏覽器軟件。

          數(shù)據(jù)封裝

          消息要在網(wǎng)絡(luò)中傳輸,必須對(duì)它進(jìn)行編碼,以特定的格式進(jìn)行封裝,同時(shí)需要適當(dāng)?shù)胤庋b以足夠的控制地址信息,以使它能夠從發(fā)送方移動(dòng)到接收方。

          消息大小

          理論上,視頻或郵件信息是能夠以大塊非中斷型流從網(wǎng)絡(luò)源地址傳送到目的地址,但這也意味著同一時(shí)刻同一網(wǎng)絡(luò)其他設(shè)備就無(wú)法收發(fā)消息。這種大型數(shù)據(jù)流會(huì)造成顯著延時(shí)。并且,如果傳輸過(guò)程中連接斷開(kāi),整個(gè)數(shù)據(jù)流就會(huì)丟失需要全部重傳。因此更好的方法是將數(shù)據(jù)流分割(segmentation)為較小的,便于管理的片段,能夠帶來(lái)兩點(diǎn)好處:

          • 發(fā)送較小片段,網(wǎng)絡(luò)上同時(shí)可有多個(gè)會(huì)話交錯(cuò)進(jìn)行。這種網(wǎng)絡(luò)上將不同會(huì)話片段交錯(cuò)進(jìn)行的過(guò)程稱為多路傳輸(multiplexing)
          • 分割可以提高網(wǎng)絡(luò)通訊的可靠性。各消息片段從源地址到目的地址無(wú)需經(jīng)過(guò)相同的路徑,如果一條路徑被堵塞或斷開(kāi),其余消息可以從替換路徑到達(dá)目的地址。如果部分消息到不了目的地址,那只需要重傳丟失的部分即可。

          通過(guò)對(duì)片段打上標(biāo)簽的方式來(lái)保證順序以及在接收時(shí)進(jìn)行重組。

          協(xié)議數(shù)據(jù)單元(Protocol Data Unit,PDU)

          應(yīng)用層數(shù)據(jù)在傳輸過(guò)程中沿著協(xié)議棧傳遞,每一層協(xié)議都會(huì)向其中添加信息。這就是封裝的過(guò)程。

          數(shù)據(jù)片段在各層網(wǎng)絡(luò)結(jié)構(gòu)中采用的形式就稱為協(xié)議數(shù)據(jù)單元(PDU)。封裝過(guò)程中,下一層對(duì)從上一層收到的 PDU 進(jìn)行封裝。在處理的每一個(gè)階段 PDU 都有不同的名字來(lái)反應(yīng)它的功能。

          PDU 按照 TCP/IP 協(xié)議的命名規(guī)范:

          • 數(shù)據(jù)(Data):應(yīng)用層 PDU 的常用術(shù)語(yǔ)
          • 分段(Segment):傳輸層 PDU
          • 幀(Frame):網(wǎng)絡(luò)層 PDU
          • 比特(Bits):在介質(zhì)上物理傳輸數(shù)據(jù)所使用的 PDU

          封裝

          封裝是指指?jìng)鬏斨盀閿?shù)據(jù)添加額外的協(xié)議頭信息的過(guò)程。在絕大多數(shù)數(shù)據(jù)通信過(guò)程中,源數(shù)據(jù)在傳輸前都會(huì)封裝數(shù)層協(xié)議。在網(wǎng)絡(luò)上發(fā)送消息時(shí),主機(jī)上的協(xié)議棧從上至下進(jìn)行操作。

          以網(wǎng)絡(luò)服務(wù)器為例,HTTP 應(yīng)用層協(xié)議發(fā)送 HTML 格式網(wǎng)頁(yè)數(shù)據(jù)到傳輸層,應(yīng)用層數(shù)據(jù)被分成 TCP 分段。各 TCP 分段被打上標(biāo)簽,稱為頭(header),表明接收方哪一個(gè)進(jìn)程應(yīng)當(dāng)接收此消息。同時(shí)也包含使得接收方能夠按照原有的格式來(lái)重組數(shù)據(jù)的信息。

          傳輸層將網(wǎng)頁(yè) HTML 數(shù)據(jù)封裝成分段并發(fā)送至網(wǎng)絡(luò)層,執(zhí)行 IP 層協(xié)議。整個(gè) TCP 分段封裝成 IP 報(bào)文,也就是再加上 IP 頭標(biāo)簽。IP 頭包括源和目的地址,以及發(fā)送報(bào)文到目的地址所必須的信息。

          之后,IP 報(bào)文發(fā)送到接入層,封裝以幀頭和幀尾。每個(gè)幀頭都包含源和目的物理地址。物理地址唯一指定來(lái)本地網(wǎng)絡(luò)上的設(shè)備。幀尾包含差錯(cuò)校正信息。最后,由服務(wù)器網(wǎng)卡將比特編碼傳輸給介質(zhì)。

          解封裝

          接收主機(jī)以相反的方式進(jìn)行操作稱為解封裝。解封裝是接收設(shè)備移除一層或多層協(xié)議頭的過(guò)程。數(shù)據(jù)在協(xié)議棧中向上移動(dòng)直到終端應(yīng)用層伴隨著解封裝。

          訪問(wèn)本地資源

          訪問(wèn)本地網(wǎng)路資源需要兩種類型的地址:網(wǎng)絡(luò)層地址和數(shù)據(jù)鏈路層地址。網(wǎng)絡(luò)層和數(shù)據(jù)鏈路層負(fù)責(zé)將數(shù)據(jù)從發(fā)送設(shè)備傳輸?shù)浇邮赵O(shè)備。兩層協(xié)議都有源和目的地址,但兩種地址的目的不同

          如下圖所示例子,客戶端 PC1 和 FTP 在同一個(gè) IP 網(wǎng)絡(luò)中的通信示意圖

          網(wǎng)絡(luò)地址

          網(wǎng)絡(luò)層地址或 IP 地址包含兩個(gè)部分:網(wǎng)絡(luò)前綴和主機(jī)。路由器使用網(wǎng)絡(luò)前綴部分將報(bào)文轉(zhuǎn)發(fā)給適當(dāng)?shù)木W(wǎng)絡(luò)。最后一個(gè)路由器使用主機(jī)部分將報(bào)文發(fā)送給目標(biāo)設(shè)備。同一本地網(wǎng)絡(luò)中,網(wǎng)絡(luò)前綴部分是相同的,只有主機(jī)設(shè)備地址部分不同。

          源 IP 地址:發(fā)送設(shè)備,即客戶端 PC1 的 IP 地址 → 192.168.1.110

          目的 IP 地址:接收設(shè)備,即 FTP 服務(wù)器 → 192.68.1.9

          數(shù)據(jù)鏈路地址

          數(shù)據(jù)鏈路地址的目的是在同一網(wǎng)絡(luò)中將數(shù)據(jù)鏈路幀從一個(gè)網(wǎng)絡(luò)接口發(fā)送至另一個(gè)網(wǎng)絡(luò)接口。以太網(wǎng) LAN 和無(wú)線網(wǎng) LAN 是兩種不同物理介質(zhì)的網(wǎng)絡(luò)示例,分別有自己的數(shù)據(jù)鏈路協(xié)議。

          當(dāng) IP 報(bào)文的發(fā)送方和接收方在同一網(wǎng)絡(luò),數(shù)據(jù)鏈路幀直接發(fā)送到接收設(shè)備。以太網(wǎng)上數(shù)據(jù)鏈路地址就是以太網(wǎng) MAC 地址。MAC 地址是物理植入網(wǎng)卡的48比特地址。

          源 MAC 地址:發(fā)送 IP 報(bào)文的 PC1 以太網(wǎng)卡 MAC 地址,AA-AA-AA-AA-AA-AA。

          目的 MAC 地址:當(dāng)發(fā)送設(shè)備與接收設(shè)備位于同一網(wǎng)路,即為接收設(shè)備的數(shù)據(jù)鏈路地址。本例中,F(xiàn)TP MAC 地址為,CC-CC-CC-CC-CC-CC。

          源和目的 MAC 地址添加到以太網(wǎng)幀中。

          MAC 與 IP 地址

          發(fā)送方必須知道接收方的物理和邏輯地址。發(fā)送方主機(jī)能夠以多種方式學(xué)習(xí)到接收方的 IP 地址:比如域名系統(tǒng)(DNS),或通過(guò)應(yīng)用手動(dòng)輸入,如用戶指定 FTP 地址。

          以太網(wǎng) MAC 地址是怎么識(shí)別的呢?發(fā)送方主機(jī)使用地址解析協(xié)議(Address Resolution Protocol,ARP)以檢測(cè)本地網(wǎng)路的所有 MAC 地址。如下圖所示,發(fā)送主機(jī)在整個(gè) LAN 發(fā)送 ARP 請(qǐng)求消息,這是一條廣播消息。ARP 請(qǐng)求包含目標(biāo)設(shè)備的 IP 地址,LAN 上的每一個(gè)設(shè)備都會(huì)檢查該 ARP 請(qǐng)求,看看是否包含它自身的 IP 地址。只有符合該 IP 地址的設(shè)備才會(huì)發(fā)送 ARP 響應(yīng)。ARP 響應(yīng)包含 ARP 請(qǐng)求中 IP 地址相對(duì)應(yīng)的 MAC 地址。

          訪問(wèn)遠(yuǎn)程資源

          默認(rèn)網(wǎng)關(guān)

          當(dāng)主機(jī)發(fā)送消息到遠(yuǎn)端網(wǎng)絡(luò),必須使用路由器,也稱為默認(rèn)網(wǎng)關(guān)。默認(rèn)網(wǎng)關(guān)就是位于發(fā)送主機(jī)同一網(wǎng)絡(luò)上的路由器的接口 IP 地址。有一點(diǎn)很重要:本地網(wǎng)絡(luò)上的所有主機(jī)都能夠配置主機(jī)的默認(rèn)網(wǎng)關(guān)地址。如果該主機(jī)的 TCP/IP 設(shè)置中沒(méi)有配置默認(rèn)網(wǎng)關(guān)地址,或指定了錯(cuò)誤的默認(rèn)網(wǎng)關(guān)地址,則遠(yuǎn)端網(wǎng)絡(luò)消息無(wú)法被送達(dá)。

          如下圖所示,LAN 上的主機(jī) PC1 使用 IP 地址為 192.168.1.1 的 R1 作為默認(rèn)網(wǎng)關(guān),如果 PDU 的目的地址位于另外一個(gè)網(wǎng)絡(luò),則主機(jī)將 PDU 發(fā)送至路由器上的默認(rèn)網(wǎng)關(guān)。

          與遠(yuǎn)端網(wǎng)絡(luò)設(shè)備通訊

          下圖顯示了客戶端主機(jī) PC1 與遠(yuǎn)端 IP 網(wǎng)絡(luò)服務(wù)器進(jìn)行通訊的網(wǎng)絡(luò)層地址與數(shù)據(jù)鏈路層地址:

          網(wǎng)絡(luò)地址

          當(dāng)報(bào)文的發(fā)送方與接收方位于不同網(wǎng)絡(luò),源和目的 IP 地址將會(huì)代表不同的網(wǎng)絡(luò)上的主機(jī)

          源 IP 地址:發(fā)送設(shè)備即客戶端主機(jī) PC1 的 IP 地址 → 192.168.1.110。

          目的 IP 地址:接收設(shè)備即網(wǎng)絡(luò)服務(wù)器的 IP 地址 → 172.16.1.99。

          數(shù)據(jù)鏈路地址

          當(dāng)報(bào)文的發(fā)送方與接收方位于不同網(wǎng)絡(luò),以太網(wǎng)數(shù)據(jù)鏈路幀無(wú)法直接被發(fā)送到目的主機(jī)。以太網(wǎng)幀必須先發(fā)送給路由器或默認(rèn)網(wǎng)關(guān)。本例中,默認(rèn)網(wǎng)關(guān)是 R1,R1 的接口 IP 地址與 PC1 屬于同一網(wǎng)絡(luò),因此 PC1 能夠直達(dá)路由器。

          源 MAC 地址:發(fā)送設(shè)備即 PC1 的 MAC 地址,PC1 的以太網(wǎng)接口 MAC 地址為 AA-AA-AA-AA-AA-AA。

          目的 MAC 地址:當(dāng)報(bào)文發(fā)送方與接收方位于不同網(wǎng)絡(luò),這一值為路由器或默認(rèn)網(wǎng)關(guān)的以太網(wǎng) MAC 地址。本地中,即 R1 的以太網(wǎng)接口 MAC 地址 11-11-11-11-11-11。

          IP 報(bào)文封裝成的以太網(wǎng)幀先被傳輸至 R1,R1 再轉(zhuǎn)發(fā)給目的地址即網(wǎng)絡(luò)服務(wù)器。R1 可以轉(zhuǎn)發(fā)給另外一個(gè)路由器,如果目的服務(wù)器所在網(wǎng)路連接至 R1,則直接發(fā)送給服務(wù)器。

          發(fā)送設(shè)備如何確定路由器的 MAC 地址?每一個(gè)設(shè)備通過(guò)自己的 TCP/IP 設(shè)置中的默認(rèn)網(wǎng)關(guān)地址得知路由器的 IP 地址。之后,它通過(guò) ARP 來(lái)得知默認(rèn)網(wǎng)關(guān)的 MAC 地址,該 MAC 地址隨后添加到幀中去。

          原文地址:http://suo.im/6pSaFi


          ?點(diǎn)擊屏末?|??|?即刻學(xué)習(xí)

          瀏覽 20
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  黄片视频链接 | 丰满人妻一区=区三区在线视频53 狠狠狠狠狠狠狠狠狠狠狠狠狠狠狠狠 | 日本少妇无码精品18p | 99热这只有精品66 | 精品黄色小视频 |