成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

換個(gè)角度理解計(jì)算機(jī)網(wǎng)絡(luò),搭建計(jì)網(wǎng)知識(shí)框架

網(wǎng)絡(luò) 通信技術(shù)
雖然集線器確實(shí)有用,但也導(dǎo)致了消息爆炸,原來我只要發(fā)給計(jì)算機(jī) B 的消息,現(xiàn)在卻要發(fā)給連接到集線器上的所有計(jì)算機(jī),這樣無論是從經(jīng)濟(jì)還是效率上來說都不是一個(gè)很好的選擇。如果把這個(gè)集線器弄得更智能一些,只發(fā)給目標(biāo)計(jì)算機(jī)就好了。

所謂換個(gè)角度,就是從三層物理設(shè)備(物理層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層)開始,串聯(lián)起整個(gè)網(wǎng)絡(luò)的工作原理

可能有些小伙伴看見物理設(shè)備天生就犯困,反手就準(zhǔn)備關(guān)閉文章,且慢!本文只是簡(jiǎn)單的介紹這幾個(gè)設(shè)備的功能,并不會(huì)涉及復(fù)雜的底層硬件原理,不一定嚴(yán)謹(jǐn),并且摒棄了很多細(xì)節(jié),但讀起來一定通俗易懂,幫助你迅速搭建起計(jì)網(wǎng)的知識(shí)框架。

什么是數(shù)據(jù)?

首先我們需要知道,網(wǎng)絡(luò)上傳輸?shù)臇|西是什么?所謂數(shù)據(jù),什么是數(shù)據(jù)

假設(shè)你要傳輸?shù)臄?shù)據(jù)是 name = "小牛肉",那么經(jīng)過從應(yīng)用層開始經(jīng)過層層封裝,到達(dá)物理層進(jìn)行傳輸?shù)臅r(shí)候,你的數(shù)據(jù)已經(jīng)被封裝進(jìn)了很多東西:

圖片

首部里面具體是什么,不是本文的重點(diǎn),你只需要知道其中有這么幾個(gè)字段很重要:

  • 源 IP 地址
  • 源 MAC 地址
  • 目標(biāo) IP 地址
  • 目標(biāo) MAC 地址

每一臺(tái)計(jì)算機(jī)都有自己的 IP 地址和 MAC 地址。

物理層設(shè)備:集線器

假設(shè)一個(gè)網(wǎng)絡(luò)上有 A B C D E 五臺(tái)計(jì)算機(jī),A 想要給 C 發(fā)送數(shù)據(jù)包,那么數(shù)據(jù)包被發(fā)送出來后它怎么知道 C 在哪里?

古老的物理層設(shè)備 “集線器” 出現(xiàn)了 ??

圖片

A 通過集線器給 C 發(fā)送消息

如上圖所示,集線器上面有若干個(gè)端口,每個(gè)端口都連著一臺(tái)計(jì)算機(jī),假設(shè) A 計(jì)算機(jī)對(duì)應(yīng)端口 1, B 計(jì)算機(jī)對(duì)應(yīng)端口 3,C 計(jì)算機(jī)對(duì)應(yīng)端口 7......

那么 A 想要給 C 發(fā)送消息,消息要經(jīng)過誰?沒錯(cuò),首先要經(jīng)過集線器

集線器不是很聰明,他其實(shí)也不知道 C 到底在哪里,所以他會(huì)將 A 的消息廣播給所有的計(jì)算機(jī),由各個(gè)計(jì)算機(jī)自己判斷是不是發(fā)送給自己的消息。

數(shù)據(jù)鏈路層設(shè)備:交換機(jī)

雖然集線器確實(shí)有用,但也導(dǎo)致了消息爆炸,原來我只要發(fā)給計(jì)算機(jī) B 的消息,現(xiàn)在卻要發(fā)給連接到集線器上的所有計(jì)算機(jī),這樣無論是從經(jīng)濟(jì)還是效率上來說都不是一個(gè)很好的選擇。如果把這個(gè)集線器弄得更智能一些,只發(fā)給目標(biāo)計(jì)算機(jī)就好了。

既然只發(fā)送給一個(gè)計(jì)算機(jī),那我們首先需要唯一定位這個(gè)計(jì)算機(jī)。

通過什么來定位?發(fā)送出來的數(shù)據(jù)包中其實(shí)已經(jīng)封裝好了,就是通過目標(biāo)計(jì)算機(jī)的 MAC 地址來進(jìn)行唯一定位。

圖片

A 通過交換機(jī)給 C 發(fā)送消息

那具體是怎么做到的呢?

事實(shí)上,交換機(jī)內(nèi)部維護(hù)一張 【MAC 地址表】,記錄著每一個(gè) MAC 地址的設(shè)備,連接在哪一個(gè)端口上。

  • 如果發(fā)來的包首部中包含的目標(biāo) MAC 地址在 MAC 地址表中沒有映射關(guān)系,交換機(jī)就將此包廣播給所有端口,也即發(fā)給了所有機(jī)器;
  • 如果地址表有映射,那就只發(fā)給那一個(gè)端口

比如 A 想要給 C 發(fā)送消息,一開始交換機(jī)的 MAC 地址表是空的,交換機(jī)并不知道 C 的端口號(hào),因此 A 發(fā)送的消息將會(huì)被廣播,同時(shí),A 的 MAC 地址和它對(duì)應(yīng)的端口號(hào)會(huì)被記錄到 MAC 地址表中。

圖片

A 通過交換機(jī)給 C 發(fā)送消息,此時(shí) MAC 地址表為空

這樣,C 對(duì) A 的消息進(jìn)行響應(yīng)的時(shí)候,交換機(jī)就不需要進(jìn)行廣播消息了,因此它已經(jīng)知道 A 計(jì)算機(jī)在哪個(gè)端口了,并且同樣的,C 的 MAC 地址和它對(duì)應(yīng)的端口號(hào)會(huì)被記錄到交換機(jī)的 MAC 地址表中。

圖片

C 通過交換機(jī)給 A 發(fā)送消息,此時(shí) MAC 地址表中含有 A 的信息

網(wǎng)絡(luò)層設(shè)備:路由器

交換機(jī)似乎看起來已經(jīng)是最優(yōu)解了,但事實(shí)上,隨著計(jì)算機(jī)設(shè)備越來越多,交換機(jī)的端口都不夠用了,當(dāng)然你肯定能想到可以用將多個(gè)交換機(jī)互相連接起來,然后每個(gè)交換機(jī)之間都互相共享他們的 MAC 地址表。但隨著計(jì)算機(jī)數(shù)量的增長(zhǎng),比如 10 億臺(tái)設(shè)備,100 萬個(gè)交換機(jī),那這 100 萬個(gè)交換機(jī)都需要各自維護(hù)包含 10 億條記錄的 MAC 地址表,無論是從經(jīng)濟(jì)還是效率上來說這也都不是一個(gè)很好的選擇。

所以將交換機(jī)連接在一起這個(gè)思路確實(shí)沒有錯(cuò),但不能粗暴的直接連接在一起,得想個(gè)辦法,讓每個(gè)交換機(jī)仍然只需要維護(hù)和自己連接的設(shè)備的 MAC 地址表,同時(shí)還能和其他交換機(jī)進(jìn)行共享

路由器應(yīng)用而生。

路由器同樣有很多端口,每一個(gè)端口都擁有一個(gè) MAC 地址和一個(gè) IP 地址,每一個(gè)端口都連著一個(gè)局域網(wǎng)(或者說子網(wǎng)或者說 IP 地址段也行,本文就不過多區(qū)分子網(wǎng)和局域網(wǎng)的含義了)或者另一個(gè)路由器

舉個(gè)簡(jiǎn)單的例子,有兩個(gè)子網(wǎng),每個(gè)子網(wǎng)內(nèi)都只有一個(gè)交換機(jī),交換機(jī)上連接著若干個(gè)計(jì)算機(jī)設(shè)備,用路由器把這兩個(gè)交換機(jī)連接起來,當(dāng)兩個(gè)子網(wǎng)之間需要進(jìn)行通信的時(shí)候,通過路由器就可以實(shí)現(xiàn)了。

圖片

那具體是怎么做到的呢?

事實(shí)上,路由器內(nèi)部同樣維護(hù)著一張表,這張表稱為【路由表】,記錄著每一個(gè)局域網(wǎng)(IP 地址段)和它對(duì)應(yīng)的端口。

比如某個(gè)路由器的端口 0 上連接著 192.168.0.x? 的 IP 地址段,端口 1 上連接著 192.168.1.x 的 IP 地址段,那么路由表就是下面這樣:

目的地址

端口

下一跳

192.168.0.0/24

0


192.168.0.1/24

1


大伙一定發(fā)現(xiàn)了上面路由表中還有 ”下一跳“ 這個(gè)字段,很簡(jiǎn)單,一個(gè)路由器的端口畢竟是有限的,不可能一個(gè)路由器連接所有的 IP 地址段,因此,如果該路由器發(fā)現(xiàn)目標(biāo)計(jì)算機(jī)的 IP 地址不在自己管轄的 IP 地址段之內(nèi),就會(huì)通過下一跳地址轉(zhuǎn)發(fā)給其他的管轄這個(gè) IP 地址的路由器

路由器具體是怎么工作的呢?比如 A 給 C 發(fā)送數(shù)據(jù),A 在子網(wǎng)號(hào)為 192.168.0.x? 的子網(wǎng),而 C 在子網(wǎng)號(hào)為 192.168.1.x 的子網(wǎng),那么 A 首先需要知道 C 和自己是不是在同一個(gè)子網(wǎng):

  • 如果是同一個(gè)子網(wǎng),那么直接把數(shù)據(jù)發(fā)送給交換機(jī)就可以了
  • 如果不是同一個(gè)子網(wǎng),那么需要經(jīng)過路由器的轉(zhuǎn)發(fā),A 需要把數(shù)據(jù)通過交換機(jī)發(fā)送給路由器,然后由路由器決定該發(fā)送給哪個(gè)子網(wǎng)

圖片

A 通過路由器給 C 發(fā)送消息

這里有兩個(gè)問題:

1)A 如何判斷是否和 C 在同一個(gè)子網(wǎng)?

答案:這個(gè)簡(jiǎn)單,也不是本文重點(diǎn),不過多介紹了,就是將源 IP 與目的 IP 分別同子網(wǎng)掩碼進(jìn)行與運(yùn)算,結(jié)果相等就是在同一個(gè)子網(wǎng)

2)A 如何知道哪個(gè)設(shè)備是路由器?

答案:每個(gè)計(jì)算機(jī)上都要設(shè)置【默認(rèn)網(wǎng)關(guān)】

其實(shí)說發(fā)給路由器不準(zhǔn)確,應(yīng)該說 A 會(huì)把數(shù)據(jù)包發(fā)給默認(rèn)網(wǎng)關(guān)。

對(duì) A 來說,A 只能直接把數(shù)據(jù)包發(fā)給同處于一個(gè)子網(wǎng)下的某個(gè) IP 上,所以其實(shí)發(fā)給路由器還是發(fā)給某個(gè)計(jì)算機(jī)設(shè)備,對(duì) A 來說并沒有什么區(qū)別,反正它只認(rèn)得 IP 地址。

所以默認(rèn)網(wǎng)關(guān),其實(shí)就是 A 在自己電腦里配置的一個(gè) IP 地址,以便在發(fā)給不同子網(wǎng)的設(shè)備時(shí),發(fā)給這個(gè) IP 地址。

總結(jié)

如下圖 A 給 F 發(fā)送一個(gè)數(shù)據(jù)包,我們來梳理下整個(gè)通信過程:

圖片

A 給不同子網(wǎng)的 F 發(fā)送消息

1)首先 A(192.168.0.1?)通過子網(wǎng)掩碼(255.255.255.0?)計(jì)算出自己與 F(192.168.3.2?)并不在同一個(gè)子網(wǎng)內(nèi),于是決定發(fā)送給默認(rèn)網(wǎng)關(guān)(192.168.0.222)

2)A 通過 ARP 協(xié)議找到 默認(rèn)網(wǎng)關(guān) 192.168.0.222 的 MAC 地址(數(shù)據(jù)鏈路層需要知道 MAC 地址才能傳輸數(shù)據(jù))

3)A 將源 MAC 地址(AA-AA-AA-AA?)與網(wǎng)關(guān) MAC 地址(MM-MM-MM-MM?)封裝在數(shù)據(jù)鏈路層頭部,又將源 IP 地址(192.168.0.1?)和目的 IP 地址(192.168.3.2)(注意這里千萬不要以為填寫的是默認(rèn)網(wǎng)關(guān)的 IP 地址,從始至終這個(gè)數(shù)據(jù)包的兩個(gè) IP 地址都是不變的,只有 MAC 地址在不斷變化)封裝在網(wǎng)絡(luò)層頭部,然后發(fā)送數(shù)據(jù)包

圖片

報(bào)文格式

4)第一個(gè)交換機(jī)收到數(shù)據(jù)包后,發(fā)現(xiàn)目標(biāo) MAC 地址是 MM-MM-MM-MM,轉(zhuǎn)發(fā)給第一個(gè)路由器

5)數(shù)據(jù)包來到了第一個(gè)路由器,發(fā)現(xiàn)其目標(biāo) IP 地址是 192.168.3.2?,查看其路由表,發(fā)現(xiàn)了下一跳的地址是 192.168.100.21

6)所以此時(shí)該路由器需要做兩件事,一是再次匹配路由表,找到下一跳 192.168.100.21 匹配的端口號(hào),二是從這個(gè)端口把數(shù)據(jù)包轉(zhuǎn)發(fā)出去

7)此時(shí)第二個(gè)路由器收到了數(shù)據(jù)包,看到其目的地址是 192.168.3.2,查詢其路由表找到匹配的端口號(hào),并準(zhǔn)備從該端口把數(shù)據(jù)包轉(zhuǎn)發(fā)出去

8)但此時(shí)路由器需要知道 192.168.3.2? 的 MAC 地址才行,于是查看其 ARP 緩存,找到其 MAC 地址為 FF-FF-FF-FF,并將其封裝在數(shù)據(jù)鏈路層頭部,從上個(gè)步驟確定的端口將包轉(zhuǎn)發(fā)出去。

9)如上圖所示,對(duì)應(yīng)的交換機(jī)收到了數(shù)據(jù)包,發(fā)現(xiàn)目的 MAC 地址為FF-FF-FF-FF,查詢其 MAC 地址表,從對(duì)應(yīng)的端口把數(shù)據(jù)包發(fā)出去。

10)數(shù)據(jù)包最終成功抵達(dá)計(jì)算機(jī) F,F(xiàn) 發(fā)現(xiàn)目的 MAC 地址就是自己,于是收下了這個(gè)數(shù)據(jù)包。

責(zé)任編輯:武曉燕 來源: 飛天小牛肉
相關(guān)推薦

2015-04-09 10:21:23

ASCII碼表IP地址分類以太網(wǎng)幀

2017-11-22 15:46:00

Web網(wǎng)絡(luò)知識(shí)

2010-06-12 16:56:37

2010-09-08 20:45:31

計(jì)算機(jī)網(wǎng)絡(luò)協(xié)議

2010-09-08 20:42:09

計(jì)算機(jī)網(wǎng)絡(luò)協(xié)議

2013-03-08 12:51:03

計(jì)算機(jī)網(wǎng)絡(luò)基礎(chǔ)協(xié)議DHCP

2013-05-14 13:02:17

計(jì)算機(jī)網(wǎng)絡(luò)基礎(chǔ)協(xié)議

2010-09-02 16:02:45

計(jì)算機(jī)網(wǎng)絡(luò)協(xié)議

2024-03-28 11:32:38

計(jì)算機(jī)網(wǎng)絡(luò)集線器連接設(shè)備

2010-06-13 15:08:07

計(jì)算機(jī)網(wǎng)絡(luò)協(xié)議

2015-05-28 11:09:00

2010-06-14 18:54:57

計(jì)算機(jī)網(wǎng)絡(luò)協(xié)議

2010-09-08 21:01:44

計(jì)算機(jī)網(wǎng)絡(luò)協(xié)議

2024-09-27 10:11:59

2024-09-10 08:24:24

2010-06-14 18:58:52

VoIP計(jì)算機(jī)網(wǎng)絡(luò)協(xié)議

2010-09-08 20:53:14

WinPCap計(jì)算機(jī)網(wǎng)絡(luò)協(xié)議

2021-08-10 11:24:03

結(jié)構(gòu)網(wǎng)絡(luò)分層

2009-05-15 17:53:13

2011-07-27 21:28:53

計(jì)算機(jī)網(wǎng)絡(luò)服務(wù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: a毛片| 一区二区国产在线观看 | 亚洲第一黄色网 | 午夜一区二区三区在线观看 | 亚洲福利在线视频 | 女人天堂av| 黄色网址在线免费观看 | 日韩精品久久一区二区三区 | 成人毛片网站 | 高清一区二区 | 日本不卡一区二区三区在线观看 | 91.com在线观看 | 久久黄网 | 在线观看黄色电影 | 国产中文字幕在线 | 午夜成人免费视频 | 久久成人免费视频 | 成人一级片在线观看 | 色综合久久天天综合网 | 免费福利视频一区二区三区 | 亚洲a毛片 | 国产精品美女久久久 | 久久久精品综合 | 色婷婷综合久久久久中文一区二区 | 国产99精品 | 欧美在线一二三 | 精品欧美一区二区三区 | 成人久久 | 日产久久 | 日本超碰| 在线午夜 | 岛国毛片在线观看 | 久久久精品国产 | 色男人的天堂 | 91精品国产91久久久久久密臀 | 国产午夜精品一区二区三区在线观看 | 亚洲精品视频导航 | 国产一区二区三区 | 午夜性视频 | 亚洲欧美国产毛片在线 | av免费成人|