第15章 網絡
15.1 連網
- 計算機網絡(computer network):為了通信和共享資源而連接配接在一起的一組計算機裝置。
- 電子郵件、即時消息和網頁都依賴于底層計算機網絡中發生的通信。
- 無線連接配接(wireless):沒有實體電線的網絡連接配接。
- 節點(主機)(node(host)):網絡中任何可尋址的裝置。
- 資料傳輸率(帶寬)(data transfer rate(bandwidth)):資料從網絡中的一個地點傳輸到另一個地點的速率。
- 協定(protocol):定義如何在網絡上格式化和處理資料的一組規則。
- 客戶/伺服器模型(client/server model):客戶發出對伺服器的請求,伺服器作出響應的分布式方法。
- 檔案伺服器(file server):專用于為網絡使用者存儲和管理檔案的計算機。
- Web伺服器(Web server):專用于響應網頁請求的計算機。
15.1.1 網絡的類型
- 區域網路(Local-Area Network,LAN):連接配接較小地理範圍内的少量計算機的網絡。
- 環形拓撲(ring topology ):所有節點連接配接成封閉環的LAN配置。
- 星形拓撲(star topology):由中心節點控制所有消息傳輸的LAN配置。
- 總線拓撲(bus topology):所有節點共享一條通信線的LAN配置。
- 廣域網(Wide-Area Network,WAN):連接配接兩個或多個**區域網路的網絡。
- 網關(gateway):處理它的LAN和其他網絡之間通信的節點。
- Internet:遍布地球的廣域網。
- 城域網(Metropolitan-Area Network,MAN):為大城市開發的網絡基礎設施,它通常都是通過 無線連接配接或光纖連接配接 實作的。
15.1.2 Internet連接配接
- Internet骨幹網(Internet backbone):承載Internet通信的一組高速網絡,使用的都是具有高資料傳輸率( 從每秒1.5M到用特殊光纜實作的每秒600多兆位 )的連接配接。
- Internet服務提供商( Internet Service Provider):提供Internet通路的公司。
- Internet網絡有大量的備援,是以根本沒有真正的中央網絡。
- 把家用計算機連接配接到Internet上的三種常用的方法:電話數據機、數位用戶線路或纜線數據機
- 電話數據機(phone modem):把計算機資料轉換成模拟音頻信号,然後再把模拟資料音頻信号轉換回計算機資料的裝置,一種音頻表示二進制的 0 ,另一種用于表示 1 。
- 使用電話數據機的優點:不需要電話公司做任何特殊工作,是以實作起來非常簡單。由于資料被當作語音談話處理,是以除了在兩端之外,不需要特殊的轉換操作。
- 使用電話數據機的缺點:資料傳輸率被限制在模拟語音通信的資料傳輸率,通常最多 每秒64KB 。
- 數位用戶線路(Digtal Subscriber Line,DSL):用正常電話線傳輸數字信号的Internet連接配接方式。
- 纜線數據機(cable modem):使用家庭的有線電視網絡進行計算機網絡通信的裝置。
- 寬帶(broadband):提供的資料傳輸率大于128Kbps的網絡技術。
- 下載下傳(download):在家用計算機上接收Internet上的資訊。
- 上載(upload):從家用計算機給Internet上的目标機器發送資料。
15.1.3 包交換
- 包(packet):在網絡上傳輸的資料機關。
- 包交換(packet switching):把包單獨發送到目的地然後再組裝起來的網絡通信技術。
- 路由器(router):指導包在網絡上向最終目的地傳輸的網絡裝置。
- 中繼器(repeater):在較長的通信線路上加強和傳輸信号的網絡裝置。
15.2 開放式系統與協定
15.2.1 開放式系統
- 專有系統(proprietary system):使用特定銷售商的私有技術的系統。
- 互通性(interoperability):多台機器上的來自多個銷售商的軟體和硬體互相通信的能力。
- 開放式系統(Open system):以網絡體系結構的通用模型為基礎并且伴有一組協定的系統。
- 開放系統互連參考模型(Open Systems Interconnection(OSI)reference model):為了便于建立通信标準而對網絡互動進行的7層邏輯劃分。
15.2.2 網絡協定
- 協定棧(protocol stack):彼此依托的協定分層。
- 協定在某種意義上隻是一種共識,規定了特定的資料類型必須按照特定的方式格式化。
15.2.3 TCP/IP
- 傳輸控制協定(Transmission Control Protocol):把消息分割成包,在目的地把包重新組裝成消息,并負責處理錯誤的網絡協定。
- 網際協定(Internet Protocol):網絡協定,處理包通過互相連接配接的網絡傳遞到最終目的地的路由選擇。
- TCP/IP:一組支援低層網絡通信的協定和程式。
- 使用者資料報協定(User Datagram Protocol):犧牲一定可靠性實作較高傳輸速率的網絡協定,是TCP的替代者。
- ping:用于測試一台特定的網絡計算機是否是活動的以及是否可到達的程式。
- 跟蹤路由程式(traceroute):用于展示包在到達目的節點的過程中經過的路線的程式。
15.2.4 高層協定
-
常見的高層協定:
1.簡單郵件傳輸協定(SMTP)——用于指定電子郵件的傳輸方式的協定。
2.檔案傳輸協定(FTP)——允許一台計算機上的使用者把檔案傳到另一台機器或從另一台機器傳回檔案的協定。
3.telnet——用于從遠端計算機登入一個計算機系統的協定。
4.超文本傳輸協定(HTTP)——定義WWW文檔交換的協定。
- 端口(port):特定高層協定對應的數字标号。
15.2.5 MIME類型
- MIME類型(MIME type):定義電子郵件附件或網站檔案的格式的标準。
15.2.6 防火牆
- 防火牆(firewall):一台網關機器,它的軟體通過過濾網絡通信來保護網絡。它的主要作用是保護(從某種程度上講是隐藏)駐留在它“後邊”的一組 管理較松懈 的機器。
- 通路控制政策(access control policy):一個組織建立的一組規則,規定了接受和拒絕什麼類型的網絡通信。
- 防火牆能夠決定的通信狀态越多,就越能夠保護它的使用者。
15.3 網絡位址
- 主機名(hostname):由點号分隔的單詞組構成的名字,唯一辨別了Internet上的機器;每個主機名對應一個 特定IP位址。
- IP位址(IP address):由點号分隔的四個數值構成的位址,唯一表示了Internet上的機器。
- 主機名由計算機名加域名構成。
- 域名(domain name):主機名中說明特定的組織或分組的部分。
- 頂級域名(Top-Level Domain):域名中的最後一部分,聲明了組織的類型或所屬國家。
- ICANN:準許頂級域名的國際組織。
- 域名搶注(domain squatting):購買域名,目的僅僅是為了高價賣給真正想使用它的人或組織。
- 域名系統(domain name system):管理主機名解析的分布式系統。
- 域名伺服器(domain name server):把主機名翻譯成IP位址的計算機。
15.4 雲計算
- 雲計算(Cloud computing):提供存儲空間和網際網路上其他資源的服務。
-
以下是幾種不同類型的雲服務:
1.公有雲:允許任何訂閱使用者通路;
2.私有雲:專門為一個特定的組或組織建立,并限制在該組織團體内通路;
3.社群雲:在擁有相似需求的多個組織之間進行雲共享;
4.混合雲:上述雲服務類型的一些組合。
第16章 網際網路
16.1 Web簡介
- 網際網路(World Wide Web):資訊和用于通路資訊的網絡軟體的基礎設施。
- Web頁(Web page):包含或引用各種類型的資料的文檔,這些資料包括 文本、圖像、圖形和程式。
- 連結(link):兩個Web頁之間的連接配接。
- Web站點(Website):一組相關的Web頁,通常由同一個人或公司設計和控制。
- Internet使通信成為可能,而Web則使通信變得更輕松、更豐富、更有趣。
- Web浏覽器(Web browser):擷取并顯示Web頁的軟體工具。
- Web伺服器(Web server):用于響應Web頁請求的計算機。
- 統一資源定位符(Uniform Resource Locator):說明Web位址的标準方式。
16.1.1 搜尋引擎
- Web搜尋引擎是幫助你找到其他Web站點的站點,如Google和Yahoo!。
- 搜尋引擎是通過搜尋具有上百萬個Web站點的資訊的資料庫來生成候選站點清單的。
- 基于概念的搜尋:嘗試判斷所執行的搜尋的上下文。
- 基于概念的搜尋比關鍵字搜尋複雜得多,基于概念的搜尋技術很不完善,不過一旦有所改進,這種技術的潛力不可限量。
- 關鍵字搜尋非常具有挑戰性,因為自然語言本身具有二義性。
16.1.2 即時消息
- 即時消息:顧名思義,就是你可以實時地給朋友或工作夥伴發送消息。
- 即時消息的缺陷:通過各種IM協定發送的消息并沒有加密,可能會被網絡通信途中的中間點截獲,未加密的電子郵件也同樣不安全。
16.1.3 部落格
- 部落格(Weblog):是在網站定期發表文章的一種途徑。
- 由于部落格是線上釋出系統,是以它們對時事的反應比傳統的印刷媒體快多了。出于這種原因,許多新聞記者都開辟了自己的部落格,以便輔助自己在 傳統媒體領域 的工作。
16.1.4 cookie
- cookie:Web伺服器存儲在你的計算機硬碟上的一個 小文本檔案。
- 站點可能會在使用者的機器上存儲一個cookie,以捕捉之前這台機器和站點之間發生的互動。
-
cookie的用途:
1.有些Web站點用cookie來确定有多少不同的通路者。
2.有些Web站點用cookie 存儲使用者的喜好。以便為使用者定制站點的互動。
- 注意:cookie不是程式,不會再你的計算機上執行任何操作。它也不能收集有關你或你的計算機的 個人資訊。
16.2 HTML
- 超文本标記語言(HyperText Markup Language):用于建立Web頁的語言。
- 标記語言(markup language):使用标記來注釋文檔中的資訊的語言。
- 标記(tag):标記語言中用于說明如何顯示資訊的文法元素。
- HTML文檔是正常的文本文檔,用任何一般的 編輯器或字處理軟體 都可以建立它。
- HTML的标記說明了資訊片段的普通性質(如段落、圖像或項目清單)以及如何顯示它(如字型、大小和顔色)。
- 每個HTML檔案都包括兩部分,即文檔的頭和文檔主體。文檔頭包含的是 有關文檔自身 的資訊,而文檔的主體存放的是要顯示的資訊。
- 浏覽器将根據HTML文檔中的标記決定如何顯示Web頁。
16.2.1 基本的HTML格式
- 段落标記說明了應該将其中的文本作為單獨的段落處理。
- 居中标記說明其中的資訊應該在浏覽器視窗中居中顯示。
- 在HTML中,有6種預定的标題元素,即H1、H2、H3、H4、H5和H6。
16.2.2 圖像與連結
- 屬性(attribute):标記中用于提供有關元素的額外資訊的部分。
- 屬性的形式:屬性名 = 值
16.2.3 HTML5
- HTML5:精簡标記系統和支援動态内容的最新HTML标準。
- HTML5中還包括幾個接受來自表單的輸入的新标記,用來處理時間和日期的标記,以及用于範圍、郵件位址和URL的表單域的标記。
16.3 互動式網頁
16.3.1 Java小程式
- Java小程式(Java applet):為嵌入HTML文檔而設計的程式,能夠通過Web傳輸,在浏覽器中執行。
- Java小程式是用APPLET标記嵌入HTML文檔的。
- Java小程式不能完全滿足Web使用者的互動需求。
16.3.2 Java伺服器頁
- JSP小腳本(JSP scriptlet):嵌在HTML文檔中用于給Web頁提供動态内容的代碼片段。
- JSP小腳本封裝在特殊标記<%和%>之間。
- JSP是在Web頁駐留的伺服器上運作的。
- JSP尤其适合協調Web頁和底層資料庫之間的互動。
16.4 XML
- HTML有預定義的一套标記,每個标記具有自己的語義。
- 可擴充标記語言(eXtensible Markup Language):允許使用者描述文檔内容的語言。
- 元語言(metalanguage):用于定義其他語言的語言。
- 與HTML一樣,XML文檔也是由标記資料構成的。
- 文檔類型定義(Document Type Definition):XML文檔結構的規約。
- DTD文檔的内容不隻是定義标記,還說明它們是如何嵌套的。
- DTD文檔中的ELEMENT标記描述了構成相應的XML文檔的元素。
- 可擴充樣式表語言(eXtensible Stylesheet Language):定義XML文檔到其他輸出格式之間轉換的語言。
- 一個XML文檔文檔可以轉換成多種輸出格式,如圖所示:
- 用XML規定的語言還有一個友善的特征,即用這種語言編寫的文檔可以輕松地自動生成。
- 有些組織為特定的主題開發了專用的XML語言。
- 注意:XML是标記規約語言,XML檔案則是 資料。
16.5 社交網絡
- 社交網絡(social network):允許擁有共同興趣的人們進行交流互動的線上服務。
- 當下一些流行的社交網絡包括Facebook、Twitter和LinkdIn。
- 線上社交網絡通常将使用者分為兩大類:内部使用者,參與者都在一個封閉的或私人的社群(如公司、協會或組織)之内;外部使用者,對參與者沒有限制。
- 更廣泛地說,社交網絡是一個個人或組織進行互動的模型,在這種類型的網絡中,參與對象被描述為由某種互相依存的關系(比如友情、親情、宗教或社會經濟背景)聯系在一起的節點。
- 小世界現象:是指連接配接任意兩個人的相識關系的社會鍊普遍較短的假設。