互聯網工作原理
1. 引言 2. 網絡的層次結構 3. 網絡層次結構:示例 4. 路由器 5. 主干網 6. IP地址
7. 域名系統 8. 統一資源定位符(URL) 9. 域名服務舉例 10. 客戶機和服務器 11. 端口
互聯網最主要的特點之一是它不被任何人真正擁有。它是全世界大大小小網絡的總和。這些網絡以各種不同的方式連接在一起,組成了一個獨一無二的實體,即我們所知的互聯網。其實互聯網這一名稱也正是來自于互相連接的網絡這一想法。
自1969年誕生以來,互聯網已經從四個主機系統發展成為數千萬個計算機系統。盡管互聯網不為任何實體所擁有,但仍然可以使用各種不同的方式對其進行監控和維護。成立于1992年的互聯網協會是一個非盈利性的組織,它負責監督互聯網政策和協議的制定,而這些政策和協議將決定我們如何使用互聯網以及與互聯網交互。
通過這篇文章您將了解互聯網的基礎結構。此外,還將了解域名服務器、網絡接入點和主干網等方面的知識。不過,您首先要了解一下你的計算機是如何連接到其他計算機的。
網絡的層次結構
每臺接入互聯網的計算機都屬于某個網絡,即使是您家中的計算機也不例外。例如,您可以使用調制解調器撥號連接到一個互聯網服務提供商(ISP)的網絡上。工作中,您可能屬于某個局域網(LAN),但很可能仍通過與你公司簽訂合同的ISP連接到互聯網上。當您連接到ISP時就成為他們網絡的一部分了。這個ISP可以再連接到更大的網絡并成為更大網絡的一部分。互聯網就是這樣由網絡連成的網絡。
多數大型通信公司都擁有自己的專用主干網。主干網將各地區連接起來,并在每個地區設置一個入網點(POP)。本地用戶往往使用本地電話或專線經由POP接入該公司的網絡。但是兩人驚奇的是,實際上并不存在一個總控網絡。幾個大型網絡是通過網絡接入點(NAP)互相連接的。
當您連接到互聯網以后,您的電腦就變成了某個網絡的一部分。 |
網絡層次結構:示例
舉一個例子。假設A公司是一個大型ISP,它在各主要城市設有POP。每個城市的POP就是供本ISP的客戶撥入的滿滿一架子調制解調器。A公司從電話公司租用光纖線纜連接所有的POP。
假設B公司是一家面向企業的ISP。它在各主要城市建造大樓放置其他公司的互聯網服務器。而B公司很大,它則使用自己的光纜將所有的建筑物連接在一起。
按照這樣的規劃,A公司的所有客戶可以相互通信,B公司的所有客戶也可以相互通信,但是分屬兩個公司的客戶卻無法相互溝通。于是A、B兩個公司都同意接入各城市的NAP,這樣跨公司的網際通信就將經過各NAP完成。
在真實的互聯網中,數十家大型互聯網服務商在不同城市通過NAP相互連接,萬億字節的數據經過這些NAP在不同網絡間傳輸。互聯網就是約定使用NAP互相通信的各大網絡公司的網絡的集合。這樣,互聯網上的每臺計算機都可以與其他的任何一臺相連接。
路由器
所有這些網絡都依靠NAP、主干網和路由器相互交流。不可思議的是:一條消息可以從一臺計算機出發穿越半個地球且途徑幾個不同的網絡到達另一臺計算機,而整個過程用時不到一秒!
兩臺計算機通信時,路由器決定信息的流向。路由器是一種專用的計算機,它會將您和所有其他互聯網用戶的信息沿著成千上萬條路徑高速傳送到目的地。路由器完成兩個獨立但相關的工作:
- 確保信息不會發送到不需要的地方。這對于防止大量數據堵塞他人連接是至關重要的,否則其他連接將成為“毫不相干的旁觀者”。
- 確保信息發送到預定的目的地。
正是基于對上述兩個功能的執行,路由器非常適用于處理互聯的兩個獨立網絡。路由器可以將兩個網絡連接起來,為它們傳遞信息。它還保護網絡,避免一個網絡中的信息意外泄露到另一個網絡上。不管一個路由器上連接了多少個網絡,它的基本運行原理和功能是不變的。由于互聯網是一個由數以萬計的較小網絡組成的龐大網絡,所以路由器的使用是必不可少的。有關更多信息,請閱讀路由器工作原理。
主干網
美國國家科學基金會(NSF) 于1987年建成了第一個高速主干網NSFNET。它使用T1線路連接了170個較小的網絡,傳輸速度為1.544Mbps(百萬比特每秒)。IBM、MCI及Merit公司與NSF合作建成了這個主干網,第二年又開發出了T3 (45 Mbps)主干網。
主干網一般使用光纖干線。這種干線由多條光纜綁合而成以增加容量。光纜按OC(optical carrier,光載體)標號,如OC-3、OC-12、OC-48等。一條OC-3光纜的傳輸速度可達155 Mbps,而OC-48則為2,488 Mbps (2.488 Gbps)。普通56K調制解調器的傳輸速度僅為56,000 bps,比較一下就可知現代主干網的速度有多么快。
今天,許多公司都在經營自己的高容量主干網,而所有這些主干網在世界各地的NAP都能互聯。通過這種方式,互聯網上的任何人,無論他身在地球何處或使用哪家公司的網絡服務,都可以和其他人交流。整個互聯網可看作是各網絡服務公司為實現自由互通而遵守的一個規模龐大且不斷延伸的約定。
IP地址
每一臺連接到互聯網上的計算機都有一個唯一的標識碼,稱為IP地址。IP意為互聯網協議(Internet Protocol),是計算機在互聯網上通信使用的語言。協議是想要使用某一服務的某一方與該服務之間進行通信的一種預定義方式。“某一方”可能是一個人,但在更多的情況下,它是一個計算機程序,例如Web瀏覽器。
典型的IP地址如下所示:
為方便人們記憶,IP地址通常寫成上面那樣的點分十進制形式。但計算機間的通信則是二進制形式的。下面是以二進制形式表示的同一個IP地址:
IP地址中的四個數字稱為八位字節,因為以二進制表示時它們都占八位。二進制IP地址的總位數是32,因此IP地址一般被看做是一個32位的數字。八個位置中的每一個可以有兩種不同狀態(1或0),所以每個八位字節可能的組合總數是28或256,因此其數值范圍是0至255。四個八位字節組合的結果就是232或4,294,967,296個可能的數值!
在這些將近43億個可能的地址組合中,某些值被限制不能作為普通IP地址使用。例如,IP地址0.0.0.0被保留用于默認網絡,地址255.255.255.255被保留用于廣播。
八位字節的用途不僅僅是分隔數字。它們還用于創建IP地址類,這些類可以根據特定企業、政府部門或其他實體的規模和需要進行分配。四個八位字節被劃分為兩個部分,分別標識網絡和主機。網絡部分總是包含第一個八位字節,它用于標識計算機所屬的網絡。主機(有時也稱為節點)部分用于標識網絡上實際存在的計算機。主機部分總是包含最后一個八位字節。共有五種IP地址類以及一些特殊地址。您可以從什么是IP地址一文中了解到更多關于IP地址類的知識。
域名系統
當互聯網還處于初創階段時,它只包含少量由調制解調器和電話線連接起來的計算機。要連接到其他計算機必須提供其IP地址。例如,典型IP地址可以是216.27.22.162。這在只有寥寥數臺主機的情形下沒什么問題,但隨著越來越多的系統加入網絡,這種辦法就開始顯得十分笨拙。
這個問題的第一種解決方案是使用一個簡單的文本文件記錄下名字到IP地址的映射,這個文件由網絡信息中心負責維護。不久這個文本文件也變得十分龐大,管理起來過于繁瑣。1983年,美國威斯康星大學創立的域名系統(DNS)可以自動完成名字與IP地址的映射。這樣您就只需要記住如www.bowenwang.com.cn這樣的名字,而不是bowenwang.com.cn的IP地址了。
統一資源定位符(URL)
您瀏覽網頁或發送電子郵件時都要用到域名。例如,統一資源定位符(URL)http://www.bowenwang.com.cn和電子郵件地址example@bowenwang.com.cn都包含了bowenwang.com.cn這個域名。每次使用域名的時候,互聯網域名服務器就會將供人閱讀的域名翻譯為機器可讀的IP地址。請參閱域名服務器工作原理一文進一步了解DNS。
頂級域名也稱第一級域名,包括.COM、.ORG、.NET、.EDU和.GOV。每個頂級域名下都有一個龐大的二級域名列表。例如,.COM一級域名下包含:
- bowenwang
- Yahoo
- Microsoft
.COM頂級域名下的所有名字必須是唯一的。最左邊的字(如www)是主機的名字,它指明了域中的一臺具體機器(有特定的IP地址)的名稱。給定的域可以包含數百萬個主機名,只要這些主機名在該域中都是唯一的。
域名服務器接受來自程序和其他名稱服務器的請求,將域名轉換為IP地址。一個請求到來以后,域名服務器可以有四種反應:
- 用一個IP地址應答請求,因為域名服務器已知被請求域名的IP地址。
- 連接到另外一臺域名服務器并試圖查詢被請求域名的IP地址。它可能需要多次執行此操作。
- 回答:“我不知道您請求域名的IP地址,但這里是一個比我知道得多的域名服務器的IP地址。”
- 返回一條錯誤消息,因為被請求的域名是無效或不存在的。
域名服務舉例
假設您在瀏覽器中鍵入了一個URL地址:http://www.bowenwang.com.cn。瀏覽器就會向某個域名服務器查詢此URL的IP地址。一個域名服務器總是連接到根域名服務器之一,來開始IP 地址的查詢。根服務器知道所有負責頂級域名(.COM、.NET、.ORG等等)的服務器的IP地址。于是您的第一個域名服務器向根服務器請求http://www.bowenwang.com.cn的地址,根服務器回答:“我不知道www.bowenwang.com.cn的IP地址,但這里是.COM域名服務器的IP地址。”
然后第一個域名服務器向.COM域名服務器發送請求詢問http://www.bowenwang.com.cn的IP地址。此.COM域名服務器知道負責www.bowenwang.com.cn的那些域名服務器的IP地址,并將它們返回。
接著第一個域名服務器連接到一個負責www.bowenwang.com.cn的域名服務器并詢問www.bowenwang.com.cn的IP地址。此服務器知道所查地址,故將其返回給第一個域名服務器,然后第一個域名服務器又將該地址返回給瀏覽器。至此,瀏覽器就可以使用這個地址連接www.bowenwang.com.cn獲取網頁了。
完成此工作的一個關鍵點是冗余。每一級都需要安排多臺域名服務器,如果一臺失敗了,還有其他的繼續處理請求。另一個關鍵點是緩存。某個請求一經解決,域名服務器就會將得到的IP地址緩存起來。只要它曾向根服務器查詢過任何.COM域名,就會知道負責.COM的域名服務器的IP地址,因此它不需要再次麻煩根服務器請求同樣的信息。域名服務器可以對每個請求都做這樣的處理。緩存技術可以幫助減少負載,使系統不致癱瘓。
盡管完全不見它們的蹤影,域名服務器每天都要處理數十億條的請求,它們對互聯網的順利運轉是不可或缺的。域名服務器長年累月無聲無息的順暢運行,正證明了這種分布式數據庫的良好設計。有關域名系統的更多信息,請務必閱讀域名服務器工作原理一文。
客戶機和服務器
正是互聯網服務器成就了互聯網。互聯網上的所有機器不是服務器就是客戶機。為其他機器提供服務的計算機是服務器,而連接到服務器上獲取服務的計算機稱為客戶機。網絡服務器、電子郵件服務器、FTP服務器等等都在為全世界的互聯網用戶服務。
當您連接到http://www.bowenwang.com.cn/閱讀網頁時,您就成為了一個客戶機的用戶。當您正在訪問博聞網的網絡服務器時,服務器找到被請求的頁面并發送給您。訪問服務器的客戶機都有確定的意圖,它們將自己的請求發送到服務器上正在運行的特定服務軟件。例如,若您正在運行一個網絡瀏覽器,那么它會和服務器上的Web服務程序交談,而不是電子郵件服務程序。
服務器具有靜態IP地址,不會經常變化。而通過調制解調器撥號上網的家用計算機則一般由ISP在您每次撥入的時候自動分配IP地址。在聯機期間這個IP地址是唯一的,但下次撥入的時候則可能會改變。這樣,ISP只需為每個撥入的調制解調器分配一個IP地址,而不是為每一個客戶分配。
端口
所有服務器都使用具有編號的端口來提供服務,每個服務對應一個編號。例如某服務器正在運行一個Web服務和一個文件傳輸(FTP)服務。Web服務一般使用80端口,FTP服務使用21端口。客戶機只有連接到特定的IP地址和特定的端口號才能獲得相應的服務。
客戶機與某個端口的服務程序連接以后,會使用一個特定協議獲得服務。協議往往是文本,它描述客戶機和服務器將如何進行對話。互聯網上的所有Web服務器都遵守超文本傳輸協議(HTTP)。您可以通過閱讀Web服務器工作原理了解更多關于互聯網服務器、端口和協議的知識。
網絡、路由器、NAP、ISP、DNS和功能強大的服務器一起使互聯網成為了現實。當您知道信息在幾毫秒的時間里就能傳遍全世界時,就會感到這是多么神奇!前面介紹的互聯網的各部分對于現代生活是極為重要的,沒有它們就沒有互聯網。而沒有互聯網,我們很多人的生活就會完全不一樣了。
評論
查看更多