軟件開發人員:您的計算機如何連接到 Internet?

細節可能會讓你大喫一驚。

建立大型計算機網絡是一項艱鉅的任務。互聯網的早期開拓者是如何解決的?

歸根結底,Internet 只是一組規則,用於幫助計算機在大型網絡中相互通信。

這篇文章是爲軟件開發人員編寫的,因爲理解計算機之間的關係以及它們如何相互通信是我們作爲軟件開發人員所做工作的關鍵。但是,它也旨在成爲任何人都應該能夠理解的初學者指南!

因此,事不宜遲,讓我們談談網絡。

連接兩臺計算機

假設我有一臺電腦。我朋友也有一臺電腦。

如果我們想在我們的計算機之間共享文檔、圖像、音樂等,我們需要某種類型的連接。

很簡單:讓我們在計算機之間連接一根電線。

我們已經開始了一個簡單的網絡!我們的兩臺計算機現在可以相互通信了。

連接更多計算機

如果另一個朋友加入我們怎麼辦?新朋友也想成爲網絡的一部分,並與網絡上的所有計算機交談。

我們還需要幾根電線,但這並不難解決。

但是,如果另一個朋友想加入我們的網絡怎麼辦?現在,我們有四個人,我們所有的計算機都需要能夠相互通信。

這開始是一團亂麻。我們需要的電線數量比網絡上的計算機數量增長得更快!

如果第五個朋友加入網絡,情況會變得更糟。

顯然,這是不可持續的。我們不能每次在網絡中添加一臺計算機時都添加更多的電線!

數學書呆子注意事項:這種網絡中的連接數表示爲“二項式係數”,其中 1 + 2 + ... + n-1 = n(n-1) / 2 其中 n 是計算機的數量 在網絡中。

例如,一個有 10 臺計算機的網絡需要 (10 * 9) / 2 根電線來連接它。 所以 45 根電線!

連接計算機的路由器

爲了降低我們網絡的複雜性,如果我們在網絡中間添加一臺唯一的工作是路由流量的計算機會怎麼樣?

讓我們稱那臺計算機爲“路由器”。

哇,路由器幫助我們大大簡化了我們的網絡!

現在 number_of_wires == number_of_computers 在我們的網絡上。我們不得不犧牲一些機器來充當路由器,但由於它只有一項工作,所以它可以是一臺非常簡單的計算機。

順便說一句,如果您現在正在互聯網上閱讀這篇文章,則您的計算機已連接到路由器。這就是 WiFi 路由器。

連接路由器創建網絡

使用路由器連接本地網絡非常適合在幾臺計算機之間共享信息。

但是,如果街對面的另一羣朋友也有網絡並且您希望能夠與他們交談怎麼辦?

好了,現在我們可以連接我們的路由器來在我們的網絡之間進行通信了。

讓我們想象一下,我們一直在尋找更多我們想要連接的網絡(朋友、公司、機構等)。

我們可以在我們的路由器之間保持運行。但是我們很快就陷入了另一個網絡複雜的棘手局面……

我們的路由器之間的連接開始遇到同樣的規模問題。隨着我們添加更多路由器,連接數量呈指數增長,而不是線性增長。

還要記住,路由器之間的連接意味着我們在房屋、企業和機構辦公室之間鋪設電纜。那是很多基礎設施!

ISP 通過物理基礎設施鏈接路由器

也許我們可以用同樣的方法解決這個問題,在中間放一些東西?

這一次,我們將不得不花錢請一家公司來安裝、維護和操作我們所有路由器之間的電纜。

我們稱這家公司爲 Internet 服務提供商 (ISP)。在美國,這些公司包括 Verizon、Spectrum 和 Xfinity。

溫馨提示:您可能會注意到除了您的路由器之外,您的房子裏還有一個盒子。通常,ISP 通過同軸電纜或光纖電纜安裝連接。這些電纜以一種格式傳輸數據,在您的計算機可以使用之前需要對其進行轉換。爲此,您需要安裝一個調制解調器,將同軸電纜/光纖轉換爲您的計算機和 WiFi 路由器可以理解的以太網格式。

ISP 也可以相互通信。當您將 ISP 連接在一起時,您會得到一個龐大的計算機網絡,這些計算機都可以相互通信。

顯然,這是對 Internet 背後實際網絡的簡化。真正的互聯網涉及大數據中心、冗餘、海底電纜等等。

但從根本上講,您現在瞭解了我們如何將數百萬臺計算機連接在一個網絡上!

規則與協議

好的,您瞭解了電線、路由器和 ISP 的工作原理。很高興知道這些,但它並不能完全解釋互聯網。

假設您想從網絡上的某臺計算機訪問資源。

兩臺計算機如何找到對方、建立跨網絡連接併發送消息?

這就是 Internet 協議、域名系統 (DNS)、TCP/IP、HTTP、瀏覽器等發揮作用的地方!

一個糾結、複雜的問題;簡化的

希望本文有助於揭開互聯網的神祕面紗。

就其核心而言,互聯網只是一個系統和一套用於在大型網絡上交換文件的規則。雖然有時感覺很神奇,但瞭解計算機如何連接的基礎知識對於軟件開發人員和 Internet 用戶來說非常重要。

如果你喜歡我的文章,點贊,關注,轉發!

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