網絡那些事兒

今天來給大家聊一聊計算機網絡。

說起計算機網絡,那一幫程序員肯定要頭疼了,什麼這協議,那鏈路的,感覺這計算機網絡就是一團亂麻。

非也,說計算機網絡是一團亂麻其實是你沒腦子裏一團亂麻,也怪現在的教科書寫的都和工具書一樣,能把簡單的事情給你往復雜裏說,然後學的人就蒙了。

今天就來梳理梳理這計算機網絡究竟是個啥?

先說網絡吧,我們天天上,沒有網感覺日子都過不下去。去個地方先不找廁所,先找wifi。

那上網,上網,上的是個啥呢?上的是信息,就是你上了網,那上面有各種明星新聞,小視頻,段子,表情包等等,其實這些有專業術語,叫數據。那要網絡幹啥呢,就是把你和其他人連起來,然後互相發數據。

聽上去不是很簡單嗎,不就發個數據,那爲什麼寫了那麼厚本教材呢?

其實沒有那麼簡單。

先來說說簡單的連接,連接嘛,咱兩同桌,找跟線把咱兩的電腦連起來,然後咱兩就可以聊天了。哎嘿,完美。

其他同學不幹了,爲啥就你兩聊,咱們建個羣聊。於是全班的電腦都拿線接到同一臺機器上,然後大家就可以羣聊鬥圖了,這個機器呢,就是交換機,而這個班呢,就是一個局域網

這時候呢,另一個班一個你的哥們想給你發個消息,怎麼辦呢?於是就給你們班一個路由器,他們班一個路由器,然後兩個路由器一連。這樣你和他也可以通信了。這就組成了傳說中的”網絡的網絡“——大名鼎鼎的Internet。

是不是有那麼一點點層次感了,你和你同桌連的那根線就是物理層的數據傳輸介質,全班連在一起鬥圖就是鏈路層的以太網,不同班再連起來就是網絡層的因特網了。再上面還有個運輸層和應用層,都是數據放在網上運輸之前做的準備,就像你發快遞之前先得填地址一樣。

這些好像都不難啊,那那麼多協議都是幹啥的,又臭又長,簡直了。

其實那些協議就是給你網上怎麼聊天定個規矩,比如說你找誰,怎麼找,聊天不能說髒話等等等。

萬事都有規矩,就像盧梭說的”人生而自由,但無往不在枷鎖之中“,你上網也得守網上的規矩。

下面就來分別說說從上到下每一層聊聊。

1. 應用層

應用很好理解,就是App,手機裏面那些小方塊。但這裏要說的應用就是那些需要聯網的App,單機遊戲就不在這兒提了。

說說那些需要聯網的App,比如你微信要和其他小姐姐聊天,你王者的時候要匹配其他豬隊友等等,這些應用都需要網絡來支持數據的交互。應用不需要幹什麼事,它只需要會用下面網絡提供的服務就行了

拿寄快遞來舉個栗子。應用呢就是寄快遞和收快遞的人,現在呢,你要給別人寄快遞了。這時候你得把快遞包起來,先寫上地址,對於不同的東西當然包法不太一樣,這就是應用層不同協議的區別。

2.運輸層

然後你拿着包裹到了小區的快遞點(這裏假設快遞不提供上門服務,只是配送到小區快遞點,而之後的得自己取)。

小區快遞點的人要求你寫上收件人姓名和電話,這個呢就是端口號。收件人姓名和電話在快遞的運輸過程中毫無存在感,快遞都是按地址送的,但卻在最後從小區快遞點到收件人手裏的過程中很重要。沒有這兩個,到了快遞點,就不知道給誰了。(所以運輸層的協議只存在於主機端系統中,跟中間的網絡傳輸沒啥關係)

之後要選快遞公司了,這兒有兩家快遞公司,TCP快遞公司和UDP快遞公司,名字挺像,不要搞混了。

TCP呢,絕對的五星級品牌企業,保證送到,而且無損壞,無延遲。而且TCP公司的全國運輸網絡建的賊6,實時監控不擁堵。

UDP呢,簡直就是一個流氓企業,不保證送到,有可能半路給你扔海里,還有可能物件損壞(消息順序打亂,”孫行者“送過去成”行者孫“了)。

那爲啥子還有還有人用UDP呢,UDP快啊,還便宜(報文頭短,開銷小)。一些不要求準確和實時的應用就喜歡用這個,比如視頻電話,DNS什麼的。(這裏簡單說一下DNS是幹啥的,其實就是個翻譯,咱平常上網輸入三大不溜點百度點康姆,網絡可不認識這個,DNS就把它翻譯成百度服務器的IP地址,也就是xx.xx.xx.xx)

3.網絡層

網絡層就是快遞公司的運輸系統了,比如你的收件地址是”上海市閔行區莘莊鎮xx小區“,發件地址是”甘肅省白銀市白銀區yy小區“,這樣你的小區快遞點先把你的快遞送到甘肅蘭州分撥中心(蘭州分撥中心就是子網中的源路由器,每個鏈接都默認先發往自己子網的源服務器)。

然後呢分撥中心會提取你的地址,首先是上海市,嗯,先轉發到上海市分撥中心,然後再提取”閔行區“,轉發到閔行區分撥中心,這樣一步一步提取,最後就到了xx小區快遞點。(全球的快遞運輸系統就構成了網絡層每一個分撥中心就是路由器,分撥中心根據地址轉發的過程就是路由選擇

4.鏈路層

鏈路層呢就是快遞運輸的方式,比如這一段用航空,這一段走火車,最後一段走貨車。(不同的運輸方式就是不同的鏈路層協議)。鏈路層主要強調一些數據的差錯檢測,和數據怎麼發的問題,這有就是鏈路層協議的不同點。

表現在有的分撥中心管理員人很nice,會在收貨的時候檢查一下收的全不全,另外會想一下接下來怎麼發,畢竟貨車就這麼幾輛,包裹又這麼多。有的呢就跟水滸傳裏的黑心酒家一樣,包裹丟了也不管。

5. 物理層

物理層呢就是真實的物理介質了,也就是快遞運輸的真正的飛機、火車、貨車了,不同的交通工具速度不一樣。在網絡中呢,物理介質也就是我們熟悉的銅線、光纖等,不同的介質性質也不同。

最後再來說說無線網是怎麼肥事,無線網和有線網在網絡層及以上完全是一樣的,只是鏈路層和物理層不同而已。這也好理解,有線網有線嘛,得鋪線,無線網就高級一點,不要線了,直接隔山打牛。從快遞角度來說,有線網的鏈路層要有交通工具來運輸,而無線網直接進化了,不要交通工具了,直接改爲哆啦A夢的時空隧道了。

說了這麼多,大概就是我對網絡這個現代最偉大的發明的粗淺理解,如果有什麼理解不當的地方,還請您指出。如果您有興趣深入瞭解計算機網絡的知識,推薦這本書《計算機網絡自頂向下方法》(第6版)

最後,祝所有點讚的朋友生活如意,考試滿績,女朋友帥氣,男朋友美麗!

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章