胡說八道計算機網絡之什么是網絡(一)?

胡說八道計算機網絡之什么是網絡(一)

  • 什么是網絡?

  • 網絡通信的實現:tcp/ip協議

  • 使用Wireshark抓包分析tcp/ip協議棧


什么是網絡? 

    所謂網絡,就是通過一定的形式連接起來的物體,物體與物體之間可以實現通信。

    比如這樣的,就稱為計算機網絡。它可以實現計算機之間的通信。

  wKiom1kFv9ei8KuNAAD9_TjljVI632.jpg

    抑或是這樣的,就被稱為神經網絡。它可以通過生物的突觸進行信號通信。最近深度學習,人工智能大量運用了神經網絡的工作機制。

wKiom1kFwdPzL_HfAAuHW8jmjYw570.png

    抑或是這樣的,就被稱為物聯網絡。它可以實現萬物互聯,想想還有點小激動呢,不知是福是禍。

  wKioL1kFwqyjO_YIAA-BvWT7Byg393.jpg  

    只要是你能想到的,可以通過一定形式連接起來的,都能被稱為網絡。阿貓阿狗也可以構成網絡,我們或許可以通過神奇的仿生技術,將阿貓阿狗互聯,讓它們實現通信溝通無障礙,這不就是萬物語言互聯網絡嘛。好期待這一天的到來。

  1. 神奇的計算機網絡

    1.1 計算機網絡的三種通信方式    
        什么是計算機網絡,想必你也知道,就是計算機與計算通信。以下是一些計算機常用的三種通信方式,你應該知道。
            1.單播,即兩臺計算機通過特有的通道進行通信。
            2.廣播,即多臺計算機在一定的范圍內通信(本地子網范圍),當某一計算機發送消息,其他所有的計算機都會受到信息。
            3.組播,即發送者和接受者可以實現多種通信方式,這種方式以小組的形式存在,既可以是同一物理網絡,也可以是不同的物理網絡。這樣一來,就能極大地提升通信的速率。

    1.2  計算機通信協議     
        有沒有想過計算機是如何實現通信的?計算機通過電,網卡以及網絡就能夠實現全世界通信,這不是很厲害的一件事嗎?人類通信依靠語言,那計算機自然也通過語言來進行通信。那計算的語言是什么呢?其實計算機是通過二進制這種語言進行通信的。那所謂語言,自然遵守一定的規則,這和人類的語言是一樣的。中國說漢語,美國說英語,動物說動物語,計算機自然說計算機語。每種語言都有一定的規則以及語言,那計算自然也如此。最早的時候,有個很牛逼的組織,滿懷抱負,準備給計算機網絡通信制定一個通信規則。這個規則叫做OSI七層模型,這個組織叫做國際標準化組織(ISO)。后來,經過偉大的先賢通過不斷地實踐與摸索,不斷地掉入坑里,再爬出坑里,經過了幾番偉大的掙扎,終于制定出了沿用至今的計算機通信TCP/IP模型。對于這些智者,除了驚嘆和膜拜之外,我們還能做什么呢?有,那就是好好學習TCP/IP模型,不能辜負了智者們智慧的結晶。
    1.3 OSI和TCP/IP模型      
        如下圖所示,對比了TCP/IP五層模型與OSI模型。不難發現下四層存在一一對應關系,而OSI的上三層則被包含在應用層一層了。TCP/IP五層模型(也有人認為是四層,他們將物理層與數據鏈路層合為一層。)無疑已經成為了國際通用的標準,而OSI模型雖然可靠性更高,但由于層次較多,實施起來困難重重,不符合實際情況,所以到現在就不了了之了。

wKiom1kF1svgcfsdAAFptXXGqSk633.png

    

    各個層次對應的功能如下圖。注意下圖是OSI七層模型對應的關系,至于TCP/IP五層模型則只需要把下圖的上三層包含在內即可。相信你懂的。

wKioL1kF2jvjmUSnAAClGVPxKxI486.png

   

2. TCP/IP五層模型簡介

    計算機的通信是由底層物理層開始,頂層應用層結束。越底層越接近硬件,越頂層越接近用戶,與用戶打交道。那計算機是如何一層一層往上爬,通過什么介質或者是通過什么協議走上了人生巔峰(實現網絡互連)?下面我將一一道來。

    1.物理層,

        物理是干嘛的?實現二進制數據傳遞,這太復雜了。其實就是通過電纜、雙絞線,無線電波等方式連接了起來。就像這樣。

wKiom1kF34zyOwH3AAG5Lo3v34I732.png

    2.數據鏈路層 

        將比特流數據成幀,通過MAC地址的方式可以實現本地網段的計算機通信。MAC地址是如何實現本地網段計算機的通信的呢?這里涉及到了一個ARP協議,我將在下節進行講解。MAC地址是全球唯一的,鑲嵌到每個網卡上,代表著每臺計算機獨一無二的地位。本地網段的計算機通信,就是通過網卡的MAC地址標識的,網卡是這樣的。

    wKioL1kF4KeStmlmAACs1cMIwwo710.jpg

    3.網絡層 

        網絡層最重要的當然是IP了。這么說吧MAC地址只能讓你實現本地網段通信,但是有了IP后,你就能實現跨網段的通信了。跨網段通信涉及到了路由設備,交換機等。網絡層也涉及了ARP協議,RARP協議,IP協議以及ICMP協議。這都會在下一節進行講解。

            wKiom1kF6ROALCz7AABRkDgqrV4796.png

    4.傳輸層

        傳輸層的功能,就是建立”端口到端口”的通信。有了MAC地址(實現本地通信),有了IP地址(實現跨網段通信),再加上端口,就能夠同應用層的應用程序進行通信了。你也可以這么理解,端口就是通往應用層的接口。傳輸層有TCP,UDP協議,它們決定了通信的可靠性,決定了與應用層通信的方式。兩者各有優點,TCP更可靠,UDP更快。

wKiom1kF6hXhyg4pAABsTATyQc0019.png

    5.應用層

       “應用層”的作用,就是規定應用程序的數據格式。 比如FTP有FTP的數據包格式,這也是通過協議的方式限定了服務的格式。FTP有FTP協議,e-mail有SMTP協議,遠程連接有SSH協議,域名解析有DNS協議。應用層就是制定了應用程序的協議。

    wKioL1kF6iaR4yI3AAB0lHZuHRo121.png


至此over。本文介紹了什么是網絡,以及TCP/IP五層模型。感謝您花費時間觀看。

作者 Michael
2017 年 4月 30日

原創文章,作者:PowerMichael,如若轉載,請注明出處:http://www.www58058.com/74509

(0)
PowerMichaelPowerMichael
上一篇 2017-04-30
下一篇 2017-05-01

相關推薦

  • Windows 10 VS. Linux

    原文出處: Linux中國 – zpl1025   前陣子 Windows 10 好像占據了絕大部分頭條,甚至在一些Linux圈里也是一樣。最具代表性的是 betanews.com 的 Brian Fagioli 說 Windows 10 已經為 Linux 桌面系統敲響了喪鐘,Microsoft 如今宣布將為忠實的…

    系統運維 2015-03-24
  • N25-第二周作業

    第二周作業 1.Linux上的文件管理命令都有哪些,其常用的使用方法及相關示例演示。 Linux上的文件管理命令有:cp , mv , rm 等命令 cp是復制命令: 命令使用格式是: cp [OPTION]… SOURCE… DEST 例:root@vps ~]# cp /etc/passwd /tmp 復制…

    Linux干貨 2016-12-14
  • 計劃任務和周期性任務

    linux計劃任務     功能:指定未來的某以特定的時間點執行一次任務     命令:at、bathc     at命令:         選項: &nbsp…

    Linux干貨 2016-09-12
  • sed 流編輯器使用詳解

    一、Stream EDitor, 行編輯器   sed是一種流編輯器,它一次處理一行內容。處理時,把當前處理的行存儲在臨時緩沖區中,稱為“模式空間”(pattern space),接著用sed命令處理緩沖區中的內容,處理完成后,把緩沖區的內容送往屏幕。接著處理下一行,這樣不斷重復,直到文件末尾。文件內容并沒有改變,除非你使用重定向存儲輸出…

    2016-08-10
  • 運維工程師技能需求排行

    這是我今天在拉勾網搜索運維,翻完了4四頁也招聘信息之后得到的,我的目的是想要看看之后的學習,哪個更應該成為重點,有些在我意料之中,有些還真的沒想到,算是努力了一個小時的收獲吧,分享給大家。
    注意:其中的看法僅代表個人觀點,很多都是依靠我自己的學習經驗和工作經驗累積的

    Linux干貨 2017-12-12
  • Linux Sysadmin–part4

    一、請詳細描述CentOS系統的啟動流程(詳細到每個過程系統做了哪些事情) A.POST加電自檢 主板在接通電源后,系統首先由POST程序來對內部各個設備進行檢查,自檢中如發現有錯誤,將按兩種情況處理:對于嚴重故障(致命性故障)則停機,此時由于各種初始化操作還沒完成,不能給出任何提示或信號;對于非嚴重故障則給出提示或聲音報警信號,等待用戶處理。 B.BIOS…

    2017-10-10
欧美性久久久久