計(jì)算機(jī)網(wǎng)絡(luò)基礎(chǔ)(一)網(wǎng)絡(luò)標(biāo)準(zhǔn)與協(xié)議問(wèn)問(wèn)你身邊的運(yùn)維吧,網(wǎng)絡(luò)協(xié)議這個(gè)東西隨便說(shuō)說(shuō)就是能寫一本跟字典一樣的書的。不要被嚇到了,這是真事。不僅僅是運(yùn)維,包括網(wǎng)絡(luò)管理員以及我們這些 Web 開(kāi)發(fā)工程師來(lái)說(shuō),網(wǎng)絡(luò)協(xié)議都是基礎(chǔ)中的基礎(chǔ)課程。只要你是在 IT 行業(yè),那么必然就要和網(wǎng)絡(luò)打交道,多少了解一點(diǎn)也是沒(méi)毛病的。 今天的內(nèi)容,網(wǎng)絡(luò)工程專業(yè)、運(yùn)維工程師、計(jì)算機(jī)專業(yè)正常上過(guò)課靠自己實(shí)力過(guò)了網(wǎng)絡(luò)考試的同學(xué)可以不用看了。如果有興趣的話歡迎批評(píng)指正,估計(jì)很多內(nèi)容是入不了各位大佬的法眼的。在這里,僅以一個(gè)不太懂網(wǎng)絡(luò)為了通過(guò)考試為目的的初學(xué)者的視角進(jìn)行講解。 OSI協(xié)議OSI(Open System Interconnect,OSI)的意思是 開(kāi)放系統(tǒng)互連參考模型 ,它的目的是為了不同各類的計(jì)算機(jī)互連提供一個(gè)共同的標(biāo)準(zhǔn)和框架,并為保持相關(guān)標(biāo)準(zhǔn)的一致性和兼容性提供共同的參考。 不同的種類的計(jì)算機(jī)?不對(duì)呀,我們看到的計(jì)算機(jī)不都一樣的嘛?關(guān)于這個(gè)東西嘛,大家可以了解一下計(jì)算機(jī)相關(guān)的歷史,在早期來(lái)說(shuō),計(jì)算機(jī)還真不是我們現(xiàn)在看到的統(tǒng)一的 PC 機(jī)樣式。就拿現(xiàn)在來(lái)說(shuō),蘋果電腦 和 PC 電腦其實(shí)在很多方面都不是兼容的,特別是操作系統(tǒng)。為了解決不同的網(wǎng)卡、操作系統(tǒng)之間的互連互通問(wèn)題,國(guó)際標(biāo)準(zhǔn)化組織 ISO 和 國(guó)際電報(bào)電話咨詢委員會(huì) CCITT 共同制定了這個(gè) OSI 協(xié)議。它是一個(gè)分層協(xié)議,一共分為七層。
從我們的電腦來(lái)看,操作系統(tǒng)是最高的層級(jí),它會(huì)管理硬件以及這些服務(wù)端口協(xié)議。比如說(shuō),我們的瀏覽器,需要訪問(wèn)某個(gè)網(wǎng)址的 80 端口,這就是瀏覽器通過(guò)應(yīng)用層調(diào)用 HTTP ,然后 HTTP 會(huì)向下依次通過(guò)表示、會(huì)話層,到達(dá)傳輸層后開(kāi)始使用 TCP/IP 協(xié)議,然后通過(guò)電腦上的二層設(shè)備網(wǎng)卡轉(zhuǎn)換成二進(jìn)制數(shù)據(jù)發(fā)送給最近的路由器。路由器通過(guò)路由表不停地轉(zhuǎn)發(fā)數(shù)據(jù),直到轉(zhuǎn)發(fā)到指定的網(wǎng)站,網(wǎng)站服務(wù)器通過(guò)一個(gè)反向的操作,也就是從底層到高層的一層層數(shù)據(jù)解包,獲得客戶端發(fā)來(lái)的數(shù)據(jù)。有一張圖非常形象地解釋了這個(gè)過(guò)程。
雖說(shuō)我們的考試中不會(huì)考這個(gè)過(guò)程,但是這個(gè)圖其實(shí)是我們互聯(lián)網(wǎng)能夠正常運(yùn)行的一個(gè)最最基礎(chǔ)的一個(gè)過(guò)程,所以我覺(jué)得大家能夠了解一下會(huì)更好。在發(fā)送的過(guò)程中,我們每一層都會(huì)向數(shù)據(jù)增加一些頭信息,然后在接收方,會(huì)逐一地再處理并摘離這些信息,這就是非常典型的一個(gè)網(wǎng)絡(luò)收發(fā)包的過(guò)程。當(dāng)然,更詳細(xì)的內(nèi)容,大家可以自己再找找相關(guān)的知識(shí)去了解一下,對(duì)于 信管師考試 來(lái)說(shuō),記住這七個(gè)層的名字以及它們大概的功能就可以了,主要以下面這個(gè)表為主。
最后,對(duì)于這種東西來(lái)說(shuō),口訣是不能少的,記住每個(gè)層級(jí)的第一個(gè)字然后不停地重復(fù)就好啦! “物數(shù)網(wǎng)傳會(huì)表應(yīng)” 網(wǎng)絡(luò)協(xié)議和標(biāo)準(zhǔn)上面我們說(shuō)過(guò),OSI 是一種標(biāo)準(zhǔn)模型框架,主要是網(wǎng)絡(luò)數(shù)據(jù)的傳輸規(guī)范。而另一個(gè) IEEE 802 規(guī)范則是定義了網(wǎng)卡如何訪問(wèn)傳輸介質(zhì)(如光纜、雙絞線、無(wú)線等),以及如何在傳輸介質(zhì)上傳輸數(shù)據(jù)的方法,還定義了傳輸信息的網(wǎng)絡(luò)設(shè)備之間建立、維護(hù)和拆除的途徑。在這個(gè)協(xié)議中,有兩個(gè)非常出名的協(xié)議,一個(gè)是 802.3(以太網(wǎng)的 CSMA/CD 載波監(jiān)聽(tīng)多路訪問(wèn)/沖突檢測(cè)協(xié)議),另一個(gè)是 802.11(無(wú)線局域網(wǎng) WLAN 標(biāo)準(zhǔn)協(xié)議)。打開(kāi)你的電腦或者手機(jī),查看連接屬性里面的協(xié)議,就能看到,比如說(shuō)我的電腦就是下圖這個(gè) 802.11n 。
在這里,我們先了解一下以太網(wǎng)的 802.3 協(xié)議,這也是我們的有線局域網(wǎng)協(xié)議,后面的文章在講 網(wǎng)絡(luò)接入技術(shù) 的時(shí)候我們還會(huì)再來(lái)說(shuō)說(shuō) 802.11 WLAN 的相關(guān)協(xié)議信息。802.3 主要包括:
現(xiàn)在我們家里或者公司基本都是千兆以太網(wǎng)了,這個(gè)東西和交換機(jī)接口、路由接口以及網(wǎng)線質(zhì)量都有關(guān)系,有可能質(zhì)量差的網(wǎng)線或者沒(méi)有切好的水晶頭就會(huì)導(dǎo)致千兆變成百兆。這一塊的內(nèi)容切過(guò)網(wǎng)線玩過(guò)交換機(jī)的同學(xué)們一定不會(huì)陌生啦!我們后面講 網(wǎng)絡(luò)接入技術(shù) 的時(shí)候還會(huì)講相關(guān)的內(nèi)容,大家可以先預(yù)習(xí)了解下。 TCP/IP到了重頭戲了。如果說(shuō),OSI 七層協(xié)議是整個(gè)網(wǎng)絡(luò)的基礎(chǔ),那么 TCP/IP 就是整個(gè)互聯(lián)網(wǎng)的基礎(chǔ)。當(dāng)然,OSI 還是更底層一些,TCP/IP 我們?cè)趯W(xué)習(xí) OSI 的時(shí)候也看出來(lái)了,它是位于 3、4 層的協(xié)議。 我們先來(lái)簡(jiǎn)單了解下 TCP 和 UDP ,這倆貨是傳輸層的核心協(xié)議,對(duì)于我們做后端的碼農(nóng)們來(lái)說(shuō),TCP 和 UDP 的區(qū)別可以說(shuō)是面試??碱}目前三名的。 TCP 是有連接的,保證傳輸接收穩(wěn)定,需要三次握手四次揮手來(lái)建立和斷開(kāi)連接,面向單播傳輸,比較可靠,面向字節(jié)流。 UDP 是無(wú)連接的,不一定穩(wěn)定,但是速度快,面向報(bào)文,可以單播(一對(duì)一視頻聊天)、多播(多人視頻聊天)、廣播(在線教學(xué)), 不可靠可能會(huì)丟包。 大家看出來(lái)了嗎?傳統(tǒng)的網(wǎng)站、APP、在線聊天這些基礎(chǔ)應(yīng)用,都是 TCP 的,而現(xiàn)在非?;鸬闹辈ァ⒁曨l網(wǎng)站、在線課堂之類的應(yīng)用,都是 UDP 的。其實(shí)也就是充分運(yùn)用它們兩個(gè)的特點(diǎn),UDP 對(duì)于大文件的實(shí)時(shí)推流效果非常好,平常我們看直播的時(shí)候卡頓了其實(shí)就是 UDP 丟包了。而正常的網(wǎng)站、APP 應(yīng)用,我們每一次的請(qǐng)求都是需要有一個(gè)確定的結(jié)果返回的,如果中間發(fā)生丟包或者請(qǐng)求失敗了,那么這整個(gè)請(qǐng)求就會(huì)是失敗的。比如說(shuō)我們網(wǎng)站打不開(kāi)白屏了,或者報(bào)出了 404、500 之類的錯(cuò)誤。記住,要使用 UDP 的應(yīng)用是可以容忍這些偶爾丟包無(wú)連接的情況的,而 TCP 是絕對(duì)不允許的。 我們?cè)谶@里,更重要的還是要了解一些 TCP 基礎(chǔ)上的應(yīng)用,UDP 方向的上直播推流之類的協(xié)議大家可以自己去了解一下。在 TCP/IP 協(xié)議中,其實(shí)也是分了層的。
其實(shí)就是把 OSI 的七層進(jìn)行一些合并重組形成了一個(gè) TCP/IP 的四層協(xié)議模型。接下來(lái)我們就一個(gè)一個(gè)的看看在 TCP/IP 協(xié)議中每一層都有什么應(yīng)用協(xié)議。 應(yīng)用層在應(yīng)用層中,最主要就是要實(shí)現(xiàn)操作系統(tǒng)中相關(guān)軟件服務(wù)的調(diào)用,也就是這一層的協(xié)議是面對(duì)客戶端軟件的。比如說(shuō)最典型的就是我們的瀏覽器。大家舉手回答,網(wǎng)站用得是什么協(xié)議?
傳輸層這里就是兩個(gè),TCP 和 UDP ,UDP/IP 其實(shí)和 TCP/IP 是一樣的,只不過(guò)我們通常說(shuō)標(biāo)準(zhǔn)的時(shí)候只會(huì)說(shuō) TCP/IP 。它們倆具體的區(qū)別和聯(lián)系在前面已經(jīng)說(shuō)過(guò)了,這里就不在重復(fù)了。 網(wǎng)絡(luò)層協(xié)議網(wǎng)絡(luò)層的協(xié)議主要處理信息的路由和主機(jī)地址解析,包括:
好了,TCP/IP 最主要的一些協(xié)議就是這些了,為什么沒(méi)有最后一層 網(wǎng)絡(luò)接口層 的?別忘了,TCP/IP 是建立在 OSI 的第三層以上的協(xié)議,網(wǎng)絡(luò)接口層 是 OSI 的第一、二層,這時(shí)還沒(méi) TCP 它們啥事兒呢。說(shuō)白了,那已經(jīng)不是 TCP/IP 能管到的地方了。 最后,我們將 TCP/IP 相關(guān)的知識(shí)再總結(jié)成一張表,這張表也是一個(gè)重點(diǎn)要記憶的地方。
總結(jié)對(duì)于信息系統(tǒng)來(lái)說(shuō),網(wǎng)絡(luò)就是基礎(chǔ)中的基礎(chǔ),沒(méi)有網(wǎng)絡(luò)信息便無(wú)法傳遞。今天我們學(xué)習(xí)的內(nèi)容又是基礎(chǔ)中的基礎(chǔ),也是一切可以實(shí)現(xiàn)的核心。對(duì)于計(jì)算機(jī)專業(yè)畢業(yè)的,或者從事代碼開(kāi)發(fā)的同學(xué)來(lái)說(shuō)這一塊還是比較好理解的。如果是完全沒(méi)有接觸過(guò)這一塊內(nèi)容的同學(xué),如果不是著急考試的話,可以再找一套計(jì)算機(jī)網(wǎng)絡(luò)相關(guān)的教程好好系統(tǒng)學(xué)習(xí)一下,如果是準(zhǔn)備馬上要考試的話,那么沒(méi)別的辦法了,背下來(lái)吧! 參考資料: 《信息系統(tǒng)項(xiàng)目管理師教程》 《某機(jī)構(gòu)培訓(xùn)資料》 |
|
|
來(lái)自: 硬核項(xiàng)目經(jīng)理 > 《待分類》