漫畫 | 為什麼美國人發明了網際網路?

2021-09-17 14:00:02

我們的故事得從第二次世界大戰以後開始。

二戰後, 美國和蘇聯兩個超級大國劃分了各自的勢力範圍,在政治、經濟、軍事等領域激烈較量,一道鐵幕在歐洲大陸落下, 冷戰開啟。


隨著蘇聯爆破成功原子彈和發射洲際導彈,美國本土立刻面臨遠端核導彈的打擊,美國人開始慌了。

作為應對,美國總統艾森豪威爾授權成立了一個新的研究機構:高階研究計劃署(DARPA)


DARPA有很多專案,包括彈道導彈防禦、衛星導航、核試驗檢測等等,其中一項是建立一個可經受敵軍打擊的軍用通訊系統。 

1955年,蘭德公司的巴蘭被這個課題深深吸引。

經過研究,巴蘭提出了兩個重要思想,第一個是:網路的控制權應該完全分散

分散式的思想讓每個節點在路由資料流時都具備同等地位,這成為未來的網際網路的最根本特徵。

巴蘭的第二個思想是「分組交換」, 要向理解它,我們得先看看「電路交換」, 最典型的就是電話網路

由於有專有的連線,預留的頻寬,那麼傳送方可以用固定的速率向接收方傳輸資料。

但是電路交換的缺點也很明顯,假設兩個人打電話,突然,其中一個人離開了,這個時候預覽的頻寬沒法被別的通訊複用,白白浪費了。

巴蘭提出的分組交換,不會為兩個使用者建立物理的連線, 也不會預留頻寬,相反, 資料被劃分成一個個小的資料塊進行傳輸,稱為「分組」。

就像把一封長信分割為幾十張明信片一樣,每張明信片都有編號,目標地址也一樣。每張明信片可能會通過不同的路徑抵達終點,然後它們會被重新拼在一起。

可以說,巴蘭提出的思想,正好和DARPA要做的事情不謀而合,當時的專案主管是羅伯茨, 他已經做出了規劃,要建立一個叫做阿帕網的網路。

但是,當時的每種計算機都有自己獨特的控制方式和檔案組織方式,相當於每個人都在說自己的語言,根本無法交談,這怎麼能夠實現聯網呢?

解決的辦法就是制定一套通用的協定。

協定聽起來很高大上,但實際上就是通訊雙方的一種約定而已,例如兩個人見面了,可能會這麼說:

再來看一個計算機發信的協定:


可以看出,和人類對話是很相似的, 但是有三個非常重要的要素:

阿帕網的通訊協定叫1822, 這是因為那份報告的編號是1822, 可見當時工程師也不知道該起什麼名稱。

在羅伯茨的規劃中,主機不應該處理資料路由的任務,這個任務應該有一個小型的廉價計算機來承擔, 羅伯茨把它稱為IMP 。

主機把封包發給IMP,IMP檢視目標地址,或者把它傳遞到本地連線的主機,或者傳遞給另外一個IMP。

為了防止封包丟失,傳送方IMP會暫存封包,直到獲得接收方IMP的確認為止, 如果沒能收到確認,它就重新傳送。(注意,這時候是中間的路由節點實現了失敗重傳

1969年底, 阿帕網初步建成,將位於加州大學洛杉磯分校,加州大學聖巴巴拉分校,猶他大學,斯坦福研究院的4個計算機中心成功連線在一起,人類從此進入了網路時代。

在阿帕網的激勵下,越來越多的網路建立起來,夏威夷建立了無線電網路,矽谷發明了乙太網,太空的衛星也組建了衛星網路。

它們雖然都是分組交換網,但是都不相容,無法互聯。

1973年, 鮑伯·卡恩(Bob Kahn)決定解決這個問題,他拉來了溫頓·瑟夫(Vinton G.Cerf)當合作夥伴

 鮑伯·卡恩和溫頓·瑟夫做出的這個決定極其關鍵:可靠性的重擔從此由終端(傳送和接收資訊的主機)來負責,這樣網路自身就可以極大簡化

這樣就對網路的要求就達到了最低:只需要接過這個封包,盡力地傳遞它就好了。

在此思想的基礎上, 卡恩和瑟夫最後寫出了著名的TCP/IP協定草案。

但是TCP/IP到底怎麼樣呢?1977年11月,卡恩和瑟夫做了一個有里程碑意義的實驗。

封包從一輛載有無線傳輸器的箱式貨車發出,進入阿帕網,然後通過專用衛星鏈路到達倫敦,再通過衛星傳輸網路,到達阿帕網, 最後傳回南加州大學資訊科學研究所,行程 9.4 萬英里,沒有丟失一個位元的資料資訊!

TCP/IP的發展也不是一帆風順的,它遇到了一個強勁的競爭對手:國際標準化組織(ISO)。

幾十年以來,ISO曾經為一系列產品制定了世界標準,這一次他們希望主導網路領域, 於是一個叫做OSI的參考模型被制訂出來,並且大力推廣。

瑟夫努力勸說讓 IBM、DEC、HP 等大廠支援 TCP/IP, 但都遭拒絕,在他們看來TCP/IP只是一項研究試驗,甚至是學術玩具

1988年,歐洲很多國家都加入了OSI的陣營,美國政府立即迴應,將TCP/IP作為官方標準。 如果有更多的國家選擇OSI,網際網路的歷史將會徹底被改寫。 

然而,多年前的一次無心之舉,讓TCP/IP取得了關鍵的競爭優勢。

1981年,DARPA資助BBN公司(阿帕網的承包商)和加州大學伯克利分校,把TCP/IP協定加入Unix作業系統。

當時還在上研究生的天才Bill Joy拒絕了BBN公司的程式碼,理由是BBN寫的TCP/IP程式碼實在是差勁,Bill Joy另起爐灶,很快就在BSD Unix當中實現了一個高效能的TCP/IP協定。

Unix的廣泛傳播極大助力了TCP/IP的發展,事實證明,從實踐中來的TCP/IP協定非常優秀,非常開放,很快,TCP/IP無處不在,輕鬆擊退了OSI的進攻,成為網際網路的標準。

OSI現在只能停留在教科書中,讓大家瞻仰了。

1989年,歐洲原子能研究中心的蒂姆·伯納斯·李提出了全球資訊網(World Wide Web)的概念, 並且基於TCP/IP發明了HTTP協定、 HTML頁面和Web伺服器。

這三項技術迅速普及開來,構建了無比精彩的網際網路世界。

向這些網際網路的先驅們致敬!

你看到的只是冰山一角!

點選下方圖片,檢視更多文章吧 !

下面是我開的一個備份號,防止被人投訴後失聯,請小夥伴們儲存一下吧。

這個號不會空著,經常會發一下輕鬆有趣的東西,讓大家在緊張的工作之餘樂呵一下。