中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

ih5平臺(tái)發(fā)展前景關(guān)鍵詞優(yōu)化

ih5平臺(tái)發(fā)展前景,關(guān)鍵詞優(yōu)化,注冊(cè)安全工程師職業(yè)資格制度規(guī)定,動(dòng)態(tài)網(wǎng)站建設(shè)常見(jiàn)的4種技術(shù)🍎作者:阿潤(rùn)菜菜 📖專欄:Linux系統(tǒng)網(wǎng)絡(luò)編程 文章目錄 一、協(xié)議初識(shí)和網(wǎng)絡(luò)協(xié)議分層(TCP/IP四層模型)認(rèn)識(shí)協(xié)議TCP/IP五層(或四層)模型 二、認(rèn)識(shí)MAC地址和IP地址認(rèn)識(shí)MAC地址認(rèn)識(shí)IP地址認(rèn)…

🍎作者:阿潤(rùn)菜菜
📖專欄:Linux系統(tǒng)網(wǎng)絡(luò)編程


文章目錄

  • 一、協(xié)議初識(shí)和網(wǎng)絡(luò)協(xié)議分層(TCP/IP四層模型)
    • 認(rèn)識(shí)協(xié)議
    • TCP/IP五層(或四層)模型
  • 二、認(rèn)識(shí)MAC地址和IP地址
    • 認(rèn)識(shí)MAC地址
    • 認(rèn)識(shí)IP地址
    • 認(rèn)識(shí)以太網(wǎng)和互聯(lián)網(wǎng)
  • 三、數(shù)據(jù)包封裝和解包分用(數(shù)據(jù)段,數(shù)據(jù)報(bào),數(shù)據(jù)幀)
  • 四、局域網(wǎng)和廣域網(wǎng)的通信
    • 局域網(wǎng)通信
    • 跨網(wǎng)絡(luò)通信


一、協(xié)議初識(shí)和網(wǎng)絡(luò)協(xié)議分層(TCP/IP四層模型)

我們知道一臺(tái)計(jì)算機(jī)里面有很多的硬件,正是這些硬件之間互相配合協(xié)同工作才能讓我們的計(jì)算機(jī)健康的運(yùn)行,當(dāng)然這里面也離不開(kāi)軟件對(duì)硬件的管理。
假設(shè)我們腦洞大一點(diǎn),把計(jì)算機(jī)里面的各個(gè)硬件拉出來(lái),各自放到很遠(yuǎn)很遠(yuǎn)的地方,而計(jì)算機(jī)依舊能正常運(yùn)行,靠的就是協(xié)議,而協(xié)議本質(zhì)就是一種約定,硬件和硬件之間也有協(xié)議,比如磁盤(pán)的HBA協(xié)議,磁盤(pán)和內(nèi)存IO時(shí)也有協(xié)議,所以協(xié)議不僅僅是網(wǎng)絡(luò)專屬的,計(jì)算機(jī)體系結(jié)構(gòu)里面也有協(xié)議,那計(jì)算機(jī)內(nèi)部不就相當(dāng)于一個(gè)小型的網(wǎng)絡(luò)嗎?各個(gè)設(shè)備通過(guò)網(wǎng)線連接,設(shè)備之間有協(xié)議約定,所以各個(gè)設(shè)備能夠正常通信,以便于計(jì)算機(jī)為用戶提供良好的服務(wù),所以網(wǎng)絡(luò)和計(jì)算機(jī)是不分家的,體系結(jié)構(gòu)中有網(wǎng)絡(luò),網(wǎng)絡(luò)中有體系結(jié)構(gòu)!
在這里插入圖片描述

認(rèn)識(shí)協(xié)議

實(shí)際在網(wǎng)絡(luò)中,所有的網(wǎng)絡(luò)問(wèn)題本質(zhì)都是傳輸距離變長(zhǎng)了,如果傳輸距離很短,那還需要擔(dān)心發(fā)送數(shù)據(jù)會(huì)丟失嗎?或者對(duì)方接收不到數(shù)據(jù),又或者對(duì)方?jīng)]有接收到完整的數(shù)據(jù),這些問(wèn)題自然就不用考慮了,因?yàn)閭鬏斁嚯x很短,中間的障礙很少,出錯(cuò)的概率很低。而當(dāng)傳輸距離過(guò)長(zhǎng)的時(shí)候,就容易導(dǎo)致出現(xiàn)問(wèn)題,比如傳輸信號(hào)減弱從而導(dǎo)致數(shù)據(jù)丟失,所以一旦長(zhǎng)距離傳輸?shù)臅r(shí)候,就會(huì)引入新的通信問(wèn)題,而為了盡可能的減少通信的成本,就需要定制協(xié)議!!!
我們提前做好約定,達(dá)成雙方的共識(shí),讓通信的兩臺(tái)主機(jī)之間約定好協(xié)議,而協(xié)議就會(huì)降低通信的成本。

所以說(shuō) “協(xié)議”本質(zhì)就是一種約定,通信雙方只要曾經(jīng)做過(guò)某種約定,之后就可以使用這種約定來(lái)完成某種事情。而網(wǎng)絡(luò)協(xié)議是通信計(jì)算機(jī)雙方必須共同遵從的一組約定,因此我們一定要將這種約定用計(jì)算機(jī)語(yǔ)言表達(dá)出來(lái),此時(shí)雙方計(jì)算機(jī)才能識(shí)別約定的相關(guān)內(nèi)容 。

那協(xié)議該由誰(shuí)來(lái)定制呢?
計(jì)算機(jī)生產(chǎn)廠商那么多,操作系統(tǒng)廠商也有那么多,磁盤(pán)廠商也有很多,其他硬件設(shè)備的廠商也有很多,那如果每個(gè)廠商都有自己的協(xié)議,生產(chǎn)出來(lái)的各式各樣的計(jì)算機(jī)還如何通信呢?只能一個(gè)廠商里面的計(jì)算機(jī)才能通信,這顯然是不行的,所以此時(shí)就需要一個(gè)人站出來(lái),定制統(tǒng)一的網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn),這個(gè)網(wǎng)絡(luò)協(xié)議就是TCP/IP協(xié)議,1983年TCP/IP協(xié)議正式替代NCP,成為大部分因特網(wǎng)共同遵守的網(wǎng)絡(luò)協(xié)議標(biāo)準(zhǔn)。

正所謂“一流的企業(yè)做標(biāo)準(zhǔn),二流的企業(yè)做品牌,三流的企業(yè)做產(chǎn)品”。但是標(biāo)準(zhǔn)的定制有一部分是公益性、開(kāi)源性的,它制定標(biāo)準(zhǔn)的目的是為了讓我們的世界變得更好;而標(biāo)準(zhǔn)的定制還有一部分是具有一定盈利性質(zhì)的,當(dāng)你需要使用這項(xiàng)技術(shù)時(shí)就會(huì)收取部分專利費(fèi),此時(shí)就能將曾經(jīng)做的技術(shù)投入進(jìn)行變現(xiàn)。

所以在1977年國(guó)際標(biāo)準(zhǔn)化組織提出了OSI七層網(wǎng)絡(luò)模型,那為什么要進(jìn)行分層呢?
因?yàn)樵诰W(wǎng)絡(luò)數(shù)據(jù)傳輸?shù)倪^(guò)程中,需要面臨很多方面的問(wèn)題,比如物理層,驅(qū)動(dòng)層,軟件層,用戶層等等都有各自需要解決的網(wǎng)絡(luò)傳輸問(wèn)題,而分層其實(shí)就是進(jìn)行解耦,每一層都是功能比較集中,高內(nèi)聚的模塊,用于處理該層面臨的網(wǎng)絡(luò)傳輸問(wèn)題,層與層之間是低耦合的。
并且每一層都有自己匹配的協(xié)議,每一層協(xié)議都用于處理當(dāng)前層的傳輸問(wèn)題
。
雖然是七層模型,但實(shí)際使用時(shí),將上三層壓為一層,統(tǒng)稱為應(yīng)用層,所以我們平常所說(shuō)的都是TCP/IP四層或五層模型,物理層我們不考慮。
在這里插入圖片描述

TCP/IP五層(或四層)模型

TCP/IP是一組協(xié)議的代名詞,它還包括許多協(xié)議,共同組成了TCP/IP協(xié)議簇。TCP/IP通訊協(xié)議采用了五層的層級(jí)結(jié)構(gòu),每一層都呼叫它的下一層所提供的網(wǎng)絡(luò)來(lái)完成自己的需求。

  • 物理層:負(fù)責(zé)光/電信號(hào)的傳遞方式。比如現(xiàn)在以太網(wǎng)通用的網(wǎng)線(雙絞線)、早期以太網(wǎng)采用的同軸電纜(現(xiàn)在主要用于有線電視)、光纖,現(xiàn)在的WiFi無(wú)線網(wǎng)使用的電磁波等都屬于物理層的概念。物理層的能力決定了最大傳輸速率、傳輸距離、抗干擾性等。集線器(Hub)就是工作在物理層的。
  • 數(shù)據(jù)鏈路層: 負(fù)責(zé)設(shè)備之間的數(shù)據(jù)幀的傳送和識(shí)別。例如網(wǎng)卡設(shè)備的驅(qū)動(dòng)、幀同步、沖突檢測(cè)(如果檢測(cè)到?jīng)_突就自動(dòng)重發(fā))、數(shù)據(jù)差錯(cuò)校驗(yàn)等工作。數(shù)據(jù)鏈路層底層的網(wǎng)絡(luò)通信標(biāo)準(zhǔn)有很多,如以太網(wǎng)、令牌環(huán)網(wǎng)、無(wú)線LAN等。交換機(jī)(Switch)就是工作在數(shù)據(jù)鏈路層的。
  • **網(wǎng)絡(luò)層:**負(fù)責(zé)地址管理和路由選擇。例如在IP協(xié)議中,通過(guò)IP地址來(lái)標(biāo)識(shí)一臺(tái)主機(jī),并通過(guò)路由表的方式規(guī)劃出兩臺(tái)主機(jī)之間數(shù)據(jù)傳輸?shù)木€路(路由)。路由器(Router)就是工作在網(wǎng)絡(luò)層的。
  • 傳輸層: 負(fù)責(zé)兩臺(tái)主機(jī)之間的數(shù)據(jù)傳輸。例如傳輸控制協(xié)議(TCP),能夠確保數(shù)據(jù)可靠的從源主機(jī)發(fā)送到目標(biāo)主機(jī)。
  • 應(yīng)用層: 負(fù)責(zé)應(yīng)用程序間溝通。比如簡(jiǎn)單電子郵件傳輸(SMTP)、文件傳輸協(xié)議(FTP)、網(wǎng)絡(luò)遠(yuǎn)程訪問(wèn)協(xié)議(Telnet)等。我們的網(wǎng)絡(luò)編程主要就是針對(duì)應(yīng)用層的。
    在這里插入圖片描述
    可以看到,它們的下面幾層幾乎是沒(méi)有區(qū)別的,操作系統(tǒng)對(duì)應(yīng)的是傳輸層和網(wǎng)絡(luò)層,數(shù)據(jù)鏈路層和物理層都是對(duì)應(yīng)在驅(qū)動(dòng)層的,而TCP/IP協(xié)議當(dāng)中的應(yīng)用層就對(duì)應(yīng)到OSI七層協(xié)議當(dāng)中的應(yīng)用層、表示層和會(huì)話層。

一般而言:

  • 對(duì)于一臺(tái)主機(jī),它的操作系統(tǒng)內(nèi)核實(shí)現(xiàn)了從傳輸層到物理層的內(nèi)容。
  • 對(duì)于一臺(tái)路由器,它實(shí)現(xiàn)了從網(wǎng)絡(luò)層到物理層的內(nèi)容。
  • 對(duì)于一臺(tái)交換機(jī),它實(shí)現(xiàn)了從數(shù)據(jù)鏈路層到物理層的內(nèi)容。
  • 對(duì)于集線器,它只實(shí)現(xiàn)了物理層的內(nèi)容。

其實(shí)現(xiàn)在的網(wǎng)絡(luò)各層設(shè)備早已突破了先前TCP/IP五層模型的限制。
在這里插入圖片描述

二、認(rèn)識(shí)MAC地址和IP地址

先來(lái)看看什么是報(bào)頭?
一般數(shù)據(jù)在實(shí)際發(fā)送的時(shí)候都會(huì)多發(fā)一部分?jǐn)?shù)據(jù),這部分?jǐn)?shù)據(jù)稱為協(xié)議報(bào)頭,由于模型的每層都有自己的協(xié)議,而數(shù)據(jù)在向下傳遞時(shí)必須攜帶上該層的協(xié)議報(bào)頭,以便于數(shù)據(jù)流向到最底層的物理層之后,將數(shù)據(jù)傳輸給對(duì)方主機(jī),對(duì)方主機(jī)將數(shù)據(jù)向上交付時(shí),對(duì)方主機(jī)的每層都能看懂我的協(xié)議,所以數(shù)據(jù)在發(fā)送的時(shí)候一定是需要報(bào)頭的,而具體的數(shù)據(jù)內(nèi)容我們喜歡叫做報(bào)文。就相當(dāng)于報(bào)紙,報(bào)頭是該報(bào)刊社的協(xié)議規(guī)定,例如劇中排版,新華社報(bào)刊什么的類似協(xié)議,這些東西一般都會(huì)放在報(bào)紙的第一行而且是字體放大的那種,很醒目也就是報(bào)頭。
同時(shí)協(xié)議報(bào)頭闡述了該層協(xié)議的內(nèi)容。
在這里插入圖片描述

認(rèn)識(shí)MAC地址

在局域網(wǎng)中的兩臺(tái)主機(jī)是可以直接通信的,因?yàn)槊恳慌_(tái)主機(jī)都有自己的"名字",每一臺(tái)主機(jī)都有自己的網(wǎng)卡,而網(wǎng)卡都有自己的地址,這個(gè)地址就是MAC地址。MAC地址是48位的二進(jìn)制數(shù)據(jù),也就是6字節(jié)大小的數(shù),可以用16進(jìn)制來(lái)解釋該MAC地址。例如我的網(wǎng)卡物理地址就是16進(jìn)制表示的。
在這里插入圖片描述

  • MAC地址用來(lái)識(shí)別數(shù)據(jù)鏈路層中相連的節(jié)點(diǎn)。
  • 長(zhǎng)度為48位,及6個(gè)字節(jié),一般用16進(jìn)制數(shù)字加上冒號(hào)的形式來(lái)表示(例如:08:00:27:03:fb:19)。
  • 在網(wǎng)卡出廠時(shí)就確定了,不能修改。MAC地址通常是唯一的(虛擬機(jī)中的MAC地址不是真實(shí)的MAC地址,可能會(huì)沖突,也有些網(wǎng)卡支持用戶配置MAC地址)。

所以說(shuō)MAC地址是數(shù)據(jù)鏈路層的地址,用于在同一網(wǎng)絡(luò)中的主機(jī)之間進(jìn)行通信。如果目標(biāo)主機(jī)和發(fā)送主機(jī)在同一個(gè)網(wǎng)絡(luò)中,那么數(shù)據(jù)包就可以直接發(fā)送到目標(biāo)主機(jī)的MAC地址,所以MAC地址是在本地網(wǎng)絡(luò)中分配的。不同的網(wǎng)絡(luò)可能使用相同的MAC地址。

認(rèn)識(shí)IP地址

IP地址是網(wǎng)絡(luò)層的地址,用于在不同的網(wǎng)絡(luò)之間進(jìn)行路由和尋址,以便于不同網(wǎng)絡(luò)之間的數(shù)據(jù)傳輸。
如果目標(biāo)主機(jī)和發(fā)送主機(jī)不在同一個(gè)網(wǎng)絡(luò)中,那么發(fā)送主機(jī)需要先將數(shù)據(jù)包發(fā)送到一個(gè)特定的路由器,路由器會(huì)通過(guò)路由表以及發(fā)送主機(jī)的ip地址確定出數(shù)據(jù)包的下一跳位置在哪里,路由表中記錄了不同網(wǎng)絡(luò)和主機(jī)的ip地址以及如何到達(dá)這些ip地址的信息。
那么ip地址在哪里呢?ip地址實(shí)際就在數(shù)據(jù)報(bào)的報(bào)頭中,報(bào)頭中的第三層網(wǎng)絡(luò)層協(xié)議中包含了該數(shù)據(jù)報(bào)的ip地址位置,而路由器的核心工作位置也是在網(wǎng)絡(luò)層,所以路由器可以看懂網(wǎng)絡(luò)層的IP協(xié)議,確定發(fā)送主機(jī)的數(shù)據(jù)報(bào)下一跳應(yīng)該發(fā)送到哪個(gè)網(wǎng)絡(luò)當(dāng)中。

傳輸層以上的協(xié)議都使用IP地址來(lái)標(biāo)識(shí)主機(jī)的位置,IP地址是因特網(wǎng)上分配給主機(jī)的標(biāo)識(shí)符,他是全球唯一的,可以在全球范圍內(nèi)進(jìn)行路由尋址。而MAC地址是在本地網(wǎng)絡(luò)中分配的,并且不同的網(wǎng)絡(luò)可能使用相同的MAC地址,因此在跨網(wǎng)絡(luò)的通信場(chǎng)景下,無(wú)法使用MAC地址,另外由于MAC地址是48比特位的,比32位比特位的IP地址長(zhǎng)2個(gè)字節(jié),這是不利于在通信協(xié)議中進(jìn)行使用的,所以傳輸層向上的協(xié)議通常都使用IP地址來(lái)標(biāo)識(shí)主機(jī)的位置,因?yàn)镮P地址是跨網(wǎng)絡(luò)的,而MAC地址僅僅是本地網(wǎng)絡(luò)分配的。常見(jiàn)使用IP地址標(biāo)識(shí)主機(jī)位置的協(xié)議有HTTP、FTP、SMTP、SSH等,在這些協(xié)議中,app之間通過(guò)IP地址來(lái)建立連接和交換數(shù)據(jù),路由器使用IP地址進(jìn)行數(shù)據(jù)報(bào)的轉(zhuǎn)發(fā)和路由,以此來(lái)實(shí)現(xiàn)跨網(wǎng)絡(luò)的通信。

上面說(shuō)了這么多跨網(wǎng)路,不同的網(wǎng)絡(luò)等等概念,那什么是不同的網(wǎng)絡(luò)呢?該怎么分辨呢
IP地址由網(wǎng)絡(luò)地址和主機(jī)地址兩部分構(gòu)成,如果兩個(gè)主機(jī)的ip地址中的網(wǎng)絡(luò)地址相同,那么這兩個(gè)主機(jī)就是在同一網(wǎng)絡(luò)中,否則就不在同一網(wǎng)絡(luò)中。子網(wǎng)掩碼是一個(gè)與IP地址配對(duì)的掩碼,用于將IP地址分為上述兩部分,如果兩個(gè)主機(jī)的IP地址和子網(wǎng)掩碼進(jìn)行按位與之后的結(jié)果相同,則兩個(gè)主機(jī)就是在同一網(wǎng)絡(luò)中。需要注意的是不同的網(wǎng)絡(luò)有不同的子網(wǎng)掩碼,和IP地址配對(duì)使用。

認(rèn)識(shí)以太網(wǎng)和互聯(lián)網(wǎng)

1.以太網(wǎng)是什么?
以太是古希臘神話中的宇宙空間,它常被認(rèn)為是一切事物存在的基礎(chǔ)。
以太網(wǎng)是使用電磁信號(hào)在以太中傳播的數(shù)據(jù)鏈路層協(xié)議,它使用MAC地址來(lái)標(biāo)識(shí)本地網(wǎng)絡(luò)上的各個(gè)設(shè)備,每一塊以太網(wǎng)卡在出廠時(shí)都會(huì)被assigned一個(gè)唯一的MAC地址,作為該以太網(wǎng)卡的永久標(biāo)識(shí)。
以太網(wǎng)的數(shù)據(jù)傳輸依靠空氣和電纜作為傳輸介質(zhì),這兩種介質(zhì)統(tǒng)稱為以太。以太網(wǎng)線纜包括黑頻線纜和同軸電纜這兩種電纜。這些線纜可以將計(jì)算機(jī)和其他網(wǎng)絡(luò)設(shè)備連接起來(lái),如交換機(jī)和路由器,以此實(shí)現(xiàn)局域網(wǎng)內(nèi)的互聯(lián)。例如使用UTP(未糾錯(cuò)雙絞線)將計(jì)算機(jī)與交換機(jī)連接,然后交換機(jī)再相互連接,形成局域網(wǎng)。
在局域網(wǎng)中,如果是需要高自由移動(dòng)性和easier部署的環(huán)境中,還可以選擇使用WIFI技術(shù),無(wú)線信號(hào)通過(guò)空氣(以太)作為傳輸媒介,將數(shù)據(jù)映射到高頻電磁波上傳播。例如WiFi IEEE 802.11a等標(biāo)準(zhǔn),以及BlueTooth,ZigBee紫峰(與藍(lán)牙類似)
有線以太通過(guò)電纜實(shí)現(xiàn)穩(wěn)定高速的連接,無(wú)線以太可提供高自由和便捷性。

以太網(wǎng)是互聯(lián)網(wǎng)的物理基礎(chǔ),互聯(lián)網(wǎng)是由許多的局域網(wǎng)和廣域網(wǎng)互連而成的,局域網(wǎng)中最常見(jiàn)的連接技術(shù)就是以太網(wǎng)。以太網(wǎng)定義了物理層和數(shù)據(jù)鏈路層的標(biāo)準(zhǔn),通過(guò)以太電纜或以太無(wú)線信號(hào)為互聯(lián)網(wǎng)提供高效的本地?cái)?shù)據(jù)傳輸,也就是局域網(wǎng)內(nèi)的數(shù)據(jù)傳輸?;ヂ?lián)網(wǎng)在以太網(wǎng)建立好的局域網(wǎng)基礎(chǔ)之上通過(guò)路由器等設(shè)備實(shí)現(xiàn)不同局域網(wǎng)之間的互聯(lián)。而TCP/IP提供了網(wǎng)絡(luò)層和傳輸層,以太網(wǎng)和TCP/IP協(xié)同工作實(shí)現(xiàn)了互聯(lián)網(wǎng)。互聯(lián)網(wǎng)使用IP地址標(biāo)識(shí)網(wǎng)絡(luò)設(shè)備,以太網(wǎng)使用MAC地址標(biāo)識(shí)設(shè)備,兩者通過(guò)ARP(Address Resolution Protocol)協(xié)議進(jìn)行對(duì)應(yīng),實(shí)現(xiàn)互聯(lián)網(wǎng)(因特網(wǎng))的通信。

認(rèn)識(shí)本地環(huán)回地址
127.0.0.1是一個(gè)類IP的特殊地址,叫做本地環(huán)回地址。他是IPV4地址段保留的特殊IP地址,只能用于當(dāng)前計(jì)算機(jī)本身,其他計(jì)算機(jī)無(wú)法訪問(wèn)此地址。所以127.0.0.1就是計(jì)算機(jī)自己,對(duì)于訪問(wèn)該地址的請(qǐng)求,數(shù)據(jù)包會(huì)從發(fā)送主機(jī)走一圈協(xié)議棧然后又返回到主機(jī)自己本身。一般用于本地測(cè)試網(wǎng)絡(luò)代碼,或本地訪問(wèn)apache Web服務(wù)器軟件。

三、數(shù)據(jù)包封裝和解包分用(數(shù)據(jù)段,數(shù)據(jù)報(bào),數(shù)據(jù)幀)

在傳輸層一般將數(shù)據(jù)包叫做數(shù)據(jù)段,網(wǎng)絡(luò)層叫數(shù)據(jù)報(bào),數(shù)據(jù)鏈路層叫數(shù)據(jù)幀,應(yīng)用層叫請(qǐng)求與響應(yīng)。數(shù)據(jù)在向下經(jīng)過(guò)協(xié)議棧封裝成幀之后會(huì)通過(guò)傳輸介質(zhì)網(wǎng)線(很多種類)發(fā)送到目標(biāo)主機(jī),目標(biāo)主機(jī)會(huì)剝離層層協(xié)議的報(bào)頭,根據(jù)報(bào)頭的信息再將有效載荷發(fā)送到上層指定的協(xié)議進(jìn)行處理。
在這里插入圖片描述
下圖是封裝和解包分用的示意圖,尤其是解包分用的示意圖,很形象的體現(xiàn)出協(xié)議報(bào)頭的作用,即數(shù)據(jù)包向上該如何交付,交付給哪個(gè)協(xié)議。
在這里插入圖片描述
實(shí)際上每個(gè)協(xié)議都要提供一種方法,讓我們獲取到報(bào)頭的大小,這樣我們才能在解包時(shí)將報(bào)頭與有效載荷進(jìn)行分離。

四、局域網(wǎng)和廣域網(wǎng)的通信

在這里插入圖片描述

局域網(wǎng)通信

首先需要明確的是,同一個(gè)局域網(wǎng)內(nèi)的主機(jī)是能夠直接進(jìn)行通信的,因?yàn)樽畛蹙钟蚓W(wǎng)設(shè)計(jì)的目的,就是為了讓局域網(wǎng)內(nèi)的主機(jī)能夠進(jìn)行通信。

當(dāng)用戶要將文件傳輸給另一臺(tái)主機(jī)前,該文件數(shù)據(jù)需要先通過(guò)網(wǎng)絡(luò)協(xié)議棧進(jìn)行封裝

  • 文件數(shù)據(jù)先交給應(yīng)用層,應(yīng)用層添加上對(duì)應(yīng)應(yīng)用層協(xié)議的報(bào)頭信息后,將數(shù)據(jù)再交給傳輸層。
  • 傳輸層收到數(shù)據(jù)后,再添加上對(duì)應(yīng)傳輸層協(xié)議的報(bào)頭信息,并將數(shù)據(jù)繼續(xù)向下進(jìn)行交付。
  • 網(wǎng)絡(luò)層收到數(shù)據(jù)后,再添加上對(duì)應(yīng)網(wǎng)絡(luò)層協(xié)議的報(bào)頭信息,接著將數(shù)據(jù)再交給鏈路層。
  • 鏈路層收到數(shù)據(jù)后,最后再添加上對(duì)應(yīng)鏈路層協(xié)議的報(bào)頭信息,至此數(shù)據(jù)封裝完畢。

數(shù)據(jù)封裝完畢后就可以通過(guò)局域網(wǎng)將其發(fā)送給對(duì)端主機(jī)了,而當(dāng)對(duì)端主機(jī)收到數(shù)據(jù)后,對(duì)應(yīng)也需要通過(guò)網(wǎng)絡(luò)協(xié)議棧對(duì)該數(shù)據(jù)進(jìn)行解包與分用

  • 鏈路層收到數(shù)據(jù)后,先將數(shù)據(jù)中對(duì)應(yīng)鏈路層協(xié)議的報(bào)頭信息提取出來(lái),然后將剩下的數(shù)據(jù)交給網(wǎng)絡(luò)層。
  • 網(wǎng)絡(luò)層收到該數(shù)據(jù)后,再將數(shù)據(jù)中對(duì)應(yīng)網(wǎng)絡(luò)層協(xié)議的報(bào)頭信息提取出來(lái),然后將剩下的數(shù)據(jù)繼續(xù)向上進(jìn)行交付。
  • 傳輸層收到該數(shù)據(jù)后,再將數(shù)據(jù)中對(duì)應(yīng)傳輸層協(xié)議的報(bào)頭信息提取出來(lái),然后將剩下的數(shù)據(jù)再交付給應(yīng)用層。
  • 應(yīng)用層收到數(shù)據(jù)后,最后將數(shù)據(jù)中對(duì)應(yīng)應(yīng)用層協(xié)議的報(bào)頭信息提取出來(lái),至此便完成了數(shù)據(jù)的解包與分用。

也就是說(shuō),任何一臺(tái)主機(jī)在發(fā)送數(shù)據(jù)之前,該數(shù)據(jù)都要先自頂向下貫穿協(xié)議棧來(lái)完成數(shù)據(jù)的封裝,在這個(gè)過(guò)程中,每一層協(xié)議都會(huì)添加上對(duì)應(yīng)的報(bào)頭信息;而任何一臺(tái)主機(jī)收到數(shù)據(jù)后,都要先自底向上貫穿協(xié)議棧來(lái)完成數(shù)據(jù)的解包和分用,在這個(gè)過(guò)程中,每一層協(xié)議都會(huì)將對(duì)應(yīng)的報(bào)頭信息提取出來(lái)。

深入了解
下面是簡(jiǎn)易的一個(gè)局域網(wǎng)內(nèi)部的主機(jī)通信圖,例如MAC1主機(jī)問(wèn)MAC7吃了沒(méi),只有MAC7才會(huì)收到對(duì)應(yīng)的消息并作出響應(yīng),而其他的主機(jī)雖然收得到消息,但他們并不會(huì)做出響應(yīng),這是為什么呢?是因?yàn)镸AC1發(fā)出的數(shù)據(jù)包中的以太網(wǎng)協(xié)議報(bào)頭信息中包含了目標(biāo)主機(jī)的MAC地址,其他收到該數(shù)據(jù)報(bào)的主機(jī)都會(huì)甄別自己的MAC地址是否與協(xié)議報(bào)頭的地址相同,如果相同則會(huì)進(jìn)行數(shù)據(jù)包的解包分用,如果不相同則什么都不會(huì)做。
在這里插入圖片描述

  1. 局域網(wǎng)內(nèi)傳輸數(shù)據(jù)時(shí),該局域網(wǎng)內(nèi)的所有主機(jī)都能收到
    實(shí)際當(dāng)主機(jī)1想要發(fā)數(shù)據(jù)給主機(jī)7的時(shí)候,該局域網(wǎng)內(nèi)的其他主機(jī)也都收到了該數(shù)據(jù),只不過(guò)除了主機(jī)7B以外,其他主機(jī)識(shí)別到該數(shù)據(jù)并不是發(fā)給自己的,此時(shí)其他主機(jī)就把收到的數(shù)據(jù)丟棄了。

也就是說(shuō),在局域網(wǎng)(以太網(wǎng))通信時(shí),該局域網(wǎng)內(nèi)所有的主機(jī)在底層其實(shí)都收到了任何數(shù)據(jù),只不過(guò)經(jīng)過(guò)篩選后只提交上來(lái)了發(fā)給自己的數(shù)據(jù)。

  1. 什么是數(shù)據(jù)碰撞?
    當(dāng)主機(jī)1在向主機(jī)7發(fā)送數(shù)據(jù)時(shí),其他主機(jī)彼此之間可能也正在進(jìn)行通信,甚至主機(jī)1在和主機(jī)7通信的同時(shí)也在和其他主機(jī)進(jìn)行通信。
    但同一局域網(wǎng)中的所有主機(jī)在通信時(shí),使用的都是一個(gè)共同的通信信道,因此如果局域網(wǎng)內(nèi)的多臺(tái)主機(jī)同時(shí)進(jìn)行通信,此時(shí)這些數(shù)據(jù)之間就可能會(huì)相互干擾。
    每一個(gè)局域網(wǎng)都可以看作是一個(gè)碰撞域,如果某個(gè)主機(jī)發(fā)送出去的數(shù)據(jù)與其他主機(jī)發(fā)送的數(shù)據(jù)之間產(chǎn)生了干擾,我們就稱這兩臺(tái)主機(jī)在該碰撞域中發(fā)生了碰撞。

  2. 如何判斷發(fā)送出去的數(shù)據(jù)是否發(fā)生了碰撞?如何避免?
    因?yàn)榘l(fā)送到局域網(wǎng)當(dāng)中的數(shù)據(jù)是所有主機(jī)都能夠收到的,因此當(dāng)一個(gè)主機(jī)將數(shù)據(jù)發(fā)送出去后,該主機(jī)本身也是能夠收到這個(gè)數(shù)據(jù)的。當(dāng)該主機(jī)收到該數(shù)據(jù)后就可以將其與之前發(fā)送出去的數(shù)據(jù)進(jìn)行對(duì)比,如果發(fā)現(xiàn)收到的數(shù)據(jù)與之前發(fā)送出去的數(shù)據(jù)不相同,則說(shuō)明在發(fā)送過(guò)程中發(fā)生了碰撞。
    也就是說(shuō),主機(jī)實(shí)際是能夠通過(guò)某種方式,知道曾經(jīng)發(fā)送出去的數(shù)據(jù)是否發(fā)生了碰撞的。

當(dāng)一個(gè)主機(jī)發(fā)現(xiàn)自己發(fā)送出去的數(shù)據(jù)產(chǎn)生了碰撞,此時(shí)該主機(jī)就要執(zhí)行“碰撞避免”算法?!芭鲎脖苊狻彼惴▽?shí)際很簡(jiǎn)單(具體實(shí)現(xiàn)其實(shí)蠻復(fù)雜的,我們就不深入學(xué)習(xí)了):當(dāng)一個(gè)主機(jī)發(fā)送出去的數(shù)據(jù)產(chǎn)生了碰撞,那么該主機(jī)可以選擇等一段時(shí)間后,再重新發(fā)送該數(shù)據(jù)。這就像現(xiàn)實(shí)生活中的兩個(gè)人同時(shí)想要說(shuō)話,此時(shí)對(duì)方就都會(huì)說(shuō)“你先說(shuō)吧”,這實(shí)際上就是一種碰撞避免。
需要注意的是,實(shí)際在網(wǎng)絡(luò)通信壓力不大的時(shí)候發(fā)生碰撞的概率是不大的,我們不要太小瞧計(jì)算機(jī)的處理速度,也不要太小瞧網(wǎng)線傳播數(shù)據(jù)的速度。

  1. 那每個(gè)主機(jī)如何判斷該數(shù)據(jù)是否是發(fā)送給自己的

在局域網(wǎng)中發(fā)送的數(shù)據(jù)實(shí)際叫做MAC數(shù)據(jù)幀,在這個(gè)MAC數(shù)據(jù)幀的報(bào)頭當(dāng)中會(huì)包含兩個(gè)字段,分別叫做源MAC地址和目的MAC地址

每一臺(tái)計(jì)算機(jī)都至少配有一張網(wǎng)卡,而每一張網(wǎng)卡在出廠時(shí)就已經(jīng)內(nèi)置了一個(gè)48位的序列號(hào),我們將這個(gè)序列號(hào)稱之為“MAC地址”,這個(gè)MAC地址是全球唯一的。

在局域網(wǎng)中進(jìn)行通信的時(shí)候,每一個(gè)主機(jī)在收到一個(gè)MAC數(shù)據(jù)幀后,都會(huì)提取該MAC數(shù)據(jù)幀的報(bào)頭,找到對(duì)應(yīng)的目的MAC地址與自己的MAC地址進(jìn)行比對(duì)。如果該MAC地址與自己的MAC地址不匹配,則直接將該MAC數(shù)據(jù)幀丟棄,只有MAC地址匹配時(shí),該主機(jī)才會(huì)將該數(shù)據(jù)幀的有效載荷繼續(xù)向上進(jìn)行交付處理。

擴(kuò)展一下:

  • 單向數(shù)據(jù)發(fā)送: 主機(jī)發(fā)送數(shù)據(jù)幀時(shí),將數(shù)據(jù)幀當(dāng)中的目的MAC地址指定為某一臺(tái)主機(jī),此時(shí)每臺(tái)主機(jī)對(duì)數(shù)據(jù)幀進(jìn)行識(shí)別后,最終只有那臺(tái)指定的主機(jī)會(huì)將該數(shù)據(jù)幀向上交付進(jìn)行處理。
  • 局域網(wǎng)內(nèi)進(jìn)行數(shù)據(jù)廣播: 主機(jī)發(fā)送數(shù)據(jù)幀時(shí),將數(shù)據(jù)幀當(dāng)中的目的MAC地址設(shè)置為全1,此時(shí)所有主機(jī)收到該數(shù)據(jù)幀后都會(huì)對(duì)該數(shù)據(jù)幀進(jìn)行處理。

跨網(wǎng)絡(luò)通信

那跨局域網(wǎng)的兩臺(tái)主機(jī)之間是如何進(jìn)行通信的呢

其實(shí)每個(gè)局域網(wǎng)之間都是通過(guò)路由器連接起來(lái)的,因此一個(gè)路由器至少能夠橫跨兩個(gè)局域網(wǎng)。而這些被路由器級(jí)聯(lián)局域網(wǎng)都認(rèn)為,該路由器就是本局域網(wǎng)內(nèi)的一臺(tái)主機(jī),因此路由器可以和這些局域網(wǎng)內(nèi)的任意一臺(tái)主機(jī)進(jìn)行直接通信。

比如局域網(wǎng)1當(dāng)中的主機(jī)A想要和局域網(wǎng)2當(dāng)中的主機(jī)H進(jìn)行通信,那么主機(jī)A可以先將數(shù)據(jù)發(fā)送給路由器,然后路由器再將數(shù)據(jù)轉(zhuǎn)發(fā)給局域網(wǎng)2當(dāng)中的主機(jī)H。
在這里插入圖片描述
那路由器為什么能夠“認(rèn)路”呢
一個(gè)路由器可能會(huì)級(jí)聯(lián)多個(gè)局域網(wǎng),當(dāng)路由器需要將一個(gè)局域網(wǎng)的數(shù)據(jù)轉(zhuǎn)發(fā)到另一個(gè)局域網(wǎng)時(shí),路由器如何知道該數(shù)據(jù)應(yīng)該轉(zhuǎn)發(fā)到哪一個(gè)局域網(wǎng)的呢?

路由器其實(shí)是通過(guò)IP地址來(lái)確定數(shù)據(jù)的轉(zhuǎn)發(fā)方向的,因特網(wǎng)上的每臺(tái)計(jì)算機(jī)都有一個(gè)唯一的IP地址,而在數(shù)據(jù)向下進(jìn)行封裝時(shí),在網(wǎng)絡(luò)層封裝的報(bào)頭當(dāng)中就會(huì)包含兩個(gè)字段,分別是源IP地址和目的IP地址。

當(dāng)路由器需要將一個(gè)局域網(wǎng)的數(shù)據(jù)轉(zhuǎn)發(fā)到另一個(gè)局域網(wǎng)時(shí),在路由器的鏈路層會(huì)先將數(shù)據(jù)的在當(dāng)前局域網(wǎng)對(duì)應(yīng)的底層報(bào)頭去掉,然后將剩下的數(shù)據(jù)向上交付給網(wǎng)絡(luò)層,此時(shí)在網(wǎng)絡(luò)層就可以獲取到該數(shù)據(jù)對(duì)應(yīng)的目的IP地址,然后路由器就可以根據(jù)該IP地址在路由表當(dāng)中進(jìn)行查找,最終就能夠確認(rèn)該數(shù)據(jù)應(yīng)該發(fā)送到哪一個(gè)局域網(wǎng)。

下面是需要通過(guò)路由器參與進(jìn)行ip地址路由的網(wǎng)絡(luò)通信示意圖,你可以暫時(shí)將其理解為廣域網(wǎng)通信,但實(shí)際這是不準(zhǔn)確的,后面的文章會(huì)詳細(xì)解釋這個(gè)地方,或者你可以理解為局域網(wǎng)和局域網(wǎng)之間進(jìn)行通信的示意圖。

網(wǎng)絡(luò)層之上的傳輸層和應(yīng)用層與同一局域網(wǎng)內(nèi)的通信過(guò)程相同,與其不同的是,發(fā)送主機(jī)的數(shù)據(jù)包在到達(dá)數(shù)據(jù)鏈路層時(shí),無(wú)法將數(shù)據(jù)包直接交付給目標(biāo)主機(jī)的以太網(wǎng)協(xié)議,因?yàn)榘l(fā)送主機(jī)和目標(biāo)主機(jī)并不在同一個(gè)網(wǎng)段內(nèi),無(wú)法通過(guò)MAC地址確認(rèn)出數(shù)據(jù)包的下一跳位置,所以數(shù)據(jù)包首先要進(jìn)行以太網(wǎng)協(xié)議層的解包分用,將數(shù)據(jù)包交付給網(wǎng)絡(luò)層的路由器,路由器會(huì)通過(guò)自己的路由表確定出數(shù)據(jù)包要發(fā)送的主機(jī)的ip地址,然后再向下進(jìn)行封裝,將數(shù)據(jù)包向下交付給指定ip地址的目標(biāo)主機(jī)的數(shù)據(jù)鏈路層令牌環(huán)驅(qū)動(dòng)程序,之后的工作還是進(jìn)行數(shù)據(jù)包向上的解包分用,直到數(shù)據(jù)包傳輸?shù)綉?yīng)用層,目標(biāo)主機(jī)拿到對(duì)應(yīng)的數(shù)據(jù)。
網(wǎng)絡(luò)層的路由器進(jìn)行了數(shù)據(jù)包的解包分用和重新封裝,目的就是屏蔽不同局域網(wǎng)的底層的網(wǎng)絡(luò)差異,為用戶提供更為快速穩(wěn)定健康的網(wǎng)絡(luò)通信。例如在下面的通信過(guò)程中,發(fā)送主機(jī)和目標(biāo)主機(jī)底層使用的協(xié)議分別是以太網(wǎng)協(xié)議和令牌環(huán)網(wǎng)協(xié)議,但路由器可以在網(wǎng)絡(luò)層屏蔽掉下層不同協(xié)議之間的差異,怎么屏蔽呢?通過(guò)ip地址確定不同網(wǎng)段的主機(jī)位置來(lái)屏蔽。(值得注意的是,目前令牌環(huán)網(wǎng)已經(jīng)使用的很少了,數(shù)據(jù)鏈路層通常使用的都是Ethernet)

比如像平常生活中的同一個(gè)wifi下的幾個(gè)設(shè)備進(jìn)行聊天時(shí),是不會(huì)經(jīng)過(guò)路由器的,僅僅通過(guò)以太網(wǎng)協(xié)議MAC地址就可以確定不同設(shè)備的位置。

在這里插入圖片描述


本節(jié)完

http://m.risenshineclean.com/news/58364.html

相關(guān)文章:

  • 一級(jí)a做爰片免費(fèi)無(wú)碼網(wǎng)站seo關(guān)鍵詞優(yōu)化的技巧
  • 廣東省做農(nóng)業(yè)網(wǎng)站銷售的公司上海seo招聘
  • 做公司網(wǎng)站比較好的寧波網(wǎng)站推廣平臺(tái)效果好
  • 網(wǎng)站引導(dǎo)頁(yè)怎么做的做個(gè)公司網(wǎng)站多少錢
  • 一級(jí)a做爰片完整網(wǎng)站網(wǎng)站搭建需要多少錢?
  • 山西運(yùn)城網(wǎng)站開(kāi)發(fā)seo就業(yè)前景如何
  • 互聯(lián)網(wǎng)公司網(wǎng)站建設(shè)ppt模板下載站長(zhǎng)素材免費(fèi)下載
  • 網(wǎng)站架構(gòu)設(shè)計(jì)師蘋(píng)果cms永久免費(fèi)建站程序
  • wordpress添加logo武漢seo霸屏
  • 如何自己做個(gè)簡(jiǎn)單網(wǎng)站神馬搜索推廣
  • 酒店 網(wǎng)站建設(shè) 中企動(dòng)力如何引流推廣
  • 什么網(wǎng)站做海報(bào)賺錢武漢大學(xué)人民醫(yī)院
  • 2345應(yīng)用商店深圳網(wǎng)站設(shè)計(jì)十年樂(lè)云seo
  • 重慶優(yōu)化網(wǎng)站推廣seo點(diǎn)擊
  • 湘潭網(wǎng)站優(yōu)化公司服務(wù)營(yíng)銷案例
  • 牡丹江站建站seo推廣
  • 網(wǎng)站的圖書(shū)資源建設(shè)網(wǎng)絡(luò)工程師是干什么的
  • 泰安網(wǎng)絡(luò)教育肇慶seo優(yōu)化
  • html5 中文網(wǎng)站模板廣告設(shè)計(jì)網(wǎng)站
  • io游戲網(wǎng)站濟(jì)南特大最新消息
  • 用vs怎么做網(wǎng)站的導(dǎo)航百度廣告位價(jià)格表
  • 怎么制作自己的免費(fèi)網(wǎng)站濟(jì)南做網(wǎng)站建設(shè)的公司
  • 網(wǎng)站構(gòu)建的友情鏈接怎么做營(yíng)銷的方法和技巧
  • wordpress緩存無(wú)法清除seo網(wǎng)址
  • web 網(wǎng)站做甘特圖視頻app推廣
  • 合肥企業(yè)網(wǎng)站建設(shè)靠譜山東大學(xué)經(jīng)濟(jì)研究院
  • 怎么做優(yōu)惠卷網(wǎng)站廣東seo教程
  • 網(wǎng)站建設(shè)的費(fèi)用怎么做賬正規(guī)的計(jì)算機(jī)培訓(xùn)機(jī)構(gòu)
  • 營(yíng)銷策劃方案ppt模板沈陽(yáng)企業(yè)網(wǎng)站seo公司
  • 建設(shè)電影播放網(wǎng)站網(wǎng)絡(luò)廣告的計(jì)費(fèi)方式