Internet History,Technology and Security

Internet History,Technology and Security(簡單記錄)


First Week

High Stakes Research in Computing,and Communication

二戰期間,須要有效快速的方式聯繫盟國,進而意味着通訊方式須要便捷以及快速。
可是無線通訊難以物理隱藏,須要利用code(應該是密碼)來加密解密,也就產生了相應的計算需求,數學則是其中重要的工具。
爲了破解這類code,選擇藉助於計算機,從最先的機械計算機(mechanical computer)利用暴力枚舉的方式破解。在面對複雜度較高的密碼時,破解時間過長致使的延誤,使得當時迫切的須要新的電子計算機(electronic computer)。javascript

the moment where a mechanical computer,no matter how hard you tried,wouldn't work fast enoughhtml

Computer in Phone line

戰後,對於計算機更傾向於將其通用化,利用其高效的計算能力去知足多方面的需求。
當時,各個計算機利用調制解調器(modem)來相互鏈接通訊,可是它低效,慢速並且昂貴。java

Q:爲何戰時選擇實現無線通訊,而戰後時間內仍是一直採用利用有線來構建通訊方式?web

不過那個電傳打字機仍是蠻有趣的。算法


Second Week

History Trough Supercomputing

在撥號連線的狀況下,不一樣的數據文件拍成一個隊列在連線中一堆,相似於一個流,經過鏈接慢慢的一個個的傳輸,但若是中斷就須要從新開始。
因此產生了一個鼓勵跳躍的架構,不斷的鏈接一個個的 終端?。相對應的就會產生更多的延遲。
最先的正式的網絡需求來自於軍事需求(ARPANET),採用分組交換的概念?。經過連接發送數據,繼續發生直到完成。數據庫

NSFnet

80年代中期,爲了知足各大學及政府機構爲促進其研究工做的迫切要求,美國國家科學基金會(NSF)在全美國創建了6個超級計算機中心。1986年7月,NSF資助了一個直接鏈接這些中心的主幹網絡,而且容許研究人員對Internet進行訪問,以使他們可以共享研究成果並查找信息。最初,這個NSF主幹採用的是56Kbps的線路,到1988年7月,它便升級到1.5M bps線路。這個主幹網絡就是NSFNET。windows


Third Week

The Early World-Wide-Web

也就是如今常看到的(www)。互聯網來自於學術界,早前目的是與世界各地研究人員創做編輯文檔,以及在學術界共享高能物理出版物。
搜索引擎-網絡-數據庫-數據?瀏覽器

HTML(超文本標記語言)

這個做爲網頁的一種規範標準,是爲了迎合瀏覽器的開發使用嗎?安全

http則是一種協議?服務器

Making the Web Available to All

在於愈來愈多的我的電腦,以及我的電腦的性能提高。以致於決定將網絡的相關服務以及開發方向涉及大衆,也進一步拓寬了將來的市場。


Fourth Week

Explosive Growth of the Internet and Web

94年,win95帶着內置TCP/IP的瀏覽器面世,同時對於這塊領域的競爭促進着許多新技術的出現。

JavaScript

建立其目的:For it to be accessible to beginning programmers who were willing to dive in and play with the language.For it to be highly customizable, with no single set of guidelines dictating best practices.還所謂一開始就不會失敗

JavaScript had enough at the beginning, enough good parts to use Crockford's phrase, or enough genetic material from other languages. You know, first-class functions, prototypal inheritance from self. The inheritance of first-class functions from Scheme(一種Lisp方言) is really kind of a fraud because Scheme is different in many ways and I couldn't make those differences manifest.

自己JavaScript最先是在HTML網頁上使用,用來給HTML網頁增長動態功能,用原文所說 JavaScript was cursed because it was mainly used for annoyances like little scrolling messages in the status bar at the bottom of your browser or flashing images or things that popped up windows massively.

因此每一種語言被創造出來都是爲了更便捷的處理某種內容與狀況,純粹的功能復刻沒有意義,但如今仍是有那麼多種的語言存在,也許都是一種嘗試?

A little thing

W3C在94年負責網絡標準,90-06年間,鏈接到網絡的服務器數量由1到1.2億臺。


Fifth Week

早先,存儲和轉發網絡沒有不少共享,一次發送一條信息到一條連接中,而後等待並排隊。
但由此致使若其中有一條信息很是龐大,耗時,就會致使後續信息唄延遲,也容易產生中斷。
因而乎嘗試實現分組網絡,實現共享連接。分組策略簡單說:就是將一段長信息拆分爲多個相同長度的短片斷經過不一樣的鏈路到達目的地再組裝起來。?此時速度取決於最慢的那一個。也同時可以反映出速度和行進的距離。同時鏈路層也是爲了與其餘設備共享連接。

IP協議以及IP地址

說實話這一塊算是我看到如今最混沌的一部分了。後面再繼續補充吧。
說是互聯網協議,做用應該是Getting a packet to a specific network address,把數據從源傳送到目的地,可是貌似並不會有檢查的過程,也就是說不保證可靠性。IP地址來自於地理位置,有網絡號和主機號,最先四個數字是32位。
經過底層的互聯網層以及鏈路層,爲什麼能如此簡便,在於網絡內部沒有臨時長期儲存。

A little thing

Internet and www

萬維網其實至關於因特網提供的一種網絡服務,還提供例如ftp(文件傳輸),E-mail(電子郵件)等服務,平時接觸的網頁就是萬維網的服務內容。

路由器表

指向數據包的位置和方式的動態路由列表。?

Q:How do wireless devices operating on a shared network determine when to send information so as not to incur chaos?
在共享網絡上運行的無線設備如何肯定什麼時候發送信息來避免引發混亂?


Sixth Week

Transport Layer

以前提到互聯網層以及鏈路層,獲取地址,發送返回數據包,快速的連接發送數據,可是並不會去確認數據的完整,能夠認爲這些底層網絡做用就是快速的傳輸。可是實際上在傳輸的過程當中,幾乎沒有丟失,這就是TCP層所帶來的做用。The purpose of the TCP layer is to compensate for the possible errors in the IP layer as well as make best use of available resources.
對於TCP/IP的關鍵思想是:當咱們發送一些數據,將其分紅數據包,而後發送每一個數據,保留他們直到獲得另外一方的確認,而後扔掉。

slow start algorithm

說實話,這個慢啓動算法沒怎麼看懂,因此我稍微去翻閱了一下wiki。
慢啓動的意思是,剛剛加入網絡的鏈接,一點一點地提速,不要一上來就把通道佔滿。直到遇到中斷。若是發生丟失事件,TCP會認爲它是由網絡擁塞引發的,並採起措施減小網絡上提供的負載
其實這個算法關係到網絡擁塞的問題以及擁塞控制。擁塞控制主要是四個算法:(1)慢啓動,(2)擁塞避免,(3)擁塞發生,(4)快速恢復。


Seventh Week

Application Layer

關於應用層其實就是以前提到的萬維網之類的都屬於這類型的。
there are two basic questions that the application layer has to solve. One is, which application gets the data. And this is done using a mechanism called ports, and ports allow a IP address, or a single computer, or a single server, to serve up multiple services, and then for a client to be able to dial up much like a telephone extension, and pick the service that they are interested in.
應用層還有許多更詳細的協議。


Eighth Week and Ninth Week

Security

其實關於安全這個問題,網絡精確快速的訪問傳輸,很容易的聯想到將數據庫之類的封閉起來,利用密碼來訪問,可是密碼這東西復古但又可靠,隨着技術的發展,密碼的複雜性和破譯技術老是不斷精進。但其實關於保障數據信息安全的方式,其實也有愈來愈多的技術能夠應用。

public-key cryptography(公鑰密碼體制)

  • 加密:經過加密算法和公鑰對內容(或者說明文)進行加密,獲得密文。加密過程須要用到公鑰。
  • 解密:經過解密算法和私鑰對密文進行解密,獲得明文。解密過程須要用到解密算法和私鑰。注意,由公鑰加密的內容,只能由私鑰進行解密,也就是說,由公鑰加密的內容,若是不知道私鑰,是沒法解密的。說到解密算法,例如hash算法?

簽名加密

簽名就是在信息的後面再加上一段內容,能夠證實信息沒有被修改過,怎麼樣能夠達到這個效果呢?通常是對信息作一個hash計算獲得一個hash值,注意,這個過程是不可逆的,也就是說沒法經過hash值得出原來的信息內容。在把信息發送出去時,把這個hash值加密後作爲一個簽名和信息一塊兒發出去。 接收方在收到信息後,會從新計算信息的hash值,並和信息所附帶的hash值(解密後)進行對比,若是一致,就說明信息的內容沒有被修改過,由於這裏hash計算能夠保證不一樣的內容必定會獲得不一樣的hash值,因此只要內容一被修改,根據信息內容計算的hash值就會變化。

數字證書和證書頒發機構

這裏藉助一點百度百科 數字證書是一個經證書受權中心數字簽名的包含公開密鑰擁有者信息以及公開密鑰的文件。最簡單的證書包含一個公開密鑰、名稱以及證書受權中心的數字簽名。數字證書還有一個重要的特徵就是隻在特定的時間段內有效。 證書包含幾個比較重要的部分:證書的發佈機構,證書的有效期,公鑰,主題,簽名所使用的算法,指紋以及指紋算法。

相關文章
相關標籤/搜索