計算機網絡(第4版)pdf

2019年6月21日23:32:22 3 99
摘要

《計算機網絡(第4版)》是國內外使用最為廣泛的計算機網絡經典教材。適用對象很廣泛。對于學習計算機網絡課程的本科生以及研究生,本書都可以作為教材或教學參考書,每一章后面的大量練習題,可用于課程作業或者復習要點。對于從事網絡研究、網絡工程以及使用和管理網絡的科研和工程技術人員,本書也是一本很有價值的參考讀物。

計算機網絡(第4版) 內容簡介

本書是國內外使用最廣泛的計算機網絡經典教材。全書按照網絡協議模型(物理層、數據鏈路層、介質訪問控制層、網絡層、傳輸層和應用層),自下而上系統地介紹了計算機網絡的基本原理,并給出了大量實例。在講述各網絡層的同時,還融合了近年來迅速發展起來的各種網絡技術,如Internet、SONET、ADSL、CDMA、WLAN和藍牙等。另外,針對當前計算機網絡的發展現狀以及計算機安全的重要性,本書用了一整章的篇幅對計算機安全進行了深入討論。

本書的適用對象很廣泛。對于學習計算機網絡課程的本科生以及研究生,本書都可以作為教材或教學參考書。每一章后面的大量練習題,可用于課程作業或復習要點。對于從事網絡研究、網絡工程以及使用和管理網絡的科研和工程技術人員,本書也是一本很有價值的參考讀物。

計算機網絡(第4版) 目錄

第1章 概述

1.1 計算機網絡的應用

1.1.1 商業應用

1.1.2 家庭應用

1.1.3 移動用戶

1.1.4 社會問題

1.2 網絡硬件

1.2.1 局域網

1.2.2 城域網

1.2.3 廣域網

1.2.4 無線網絡

1.2.5 家庭網絡

1.2.6 互聯網

1.3 網絡軟件

1.3.1 協議層次

1.3.2 各層的設計問題

1.3.3 面向連接與無連接的服務

1.3.4 服務原語

1.3.5 服務與協議的關系

1.4 參考模型

1.4.1 OSI參考模型

1.4.2 TCP/IP參考模型

1.4.3 OSI參考模型與TCP/IP參考模型的比較

1.4.4 OSI模型和協議的缺點

1.4.5 TCP/IP參考模型的缺點

1.5 網絡實例

1.5.1 Internet

1.5.2 面向連接的網絡:X.25、幀中繼和ATM

1.5.3 以太網

1.5.4 無線LAN:802.11

1.6 網絡標準化

1.6.1 電信領域中最有影響的組織

1.6.2 國際標準領域中最有影響的組織

1.6.3 Internet標準領域中最有影響的組織

1.7 度量單位

1.8 本書其余部分的概要

1.9 本章小結

習題

第2章 物理層

2.1 數據通信的理論基礎

2.1.1 傅立葉分析

2.1.2 帶寬受限的信號

2.1.3 信道的最大數據傳輸率

2.2 有導向的傳輸介質

2.2.1 磁介質

2.2.2 雙絞線

2.2.3 同軸電纜

2.2.4 光 纖

2.3 無線傳輸

2.3.1 電磁波譜

2.3.2 無線電傳輸

2.3.3 微波傳輸

2.3.4 紅外線和毫米波

2.3.5 光波傳輸

2.4 通信衛星

2.4.1 地球同步衛星

2.4.2 中間軌道衛星

2.4.3 低軌道衛星

2.4.4 衛星和光纖

2.5 公共交換電話網絡

2.5.1 電話系統的結構

2.5.2 電話業中的政治學

2.5.3 本地回路:調制解調器、ADSL和無線

2.5.4 干線和多路復用

2.5.5 交 換

2.6 移動電話系統

2.6.1 第一代移動電話:模擬語音

2.6.2 第二代移動電話:數字語音

2.6.3 第三代移動電話:數字語音與數據

2.7 有線電視

2.7.1 共天線電視

2.7.2 基于有線電視網絡的Internet

2.7.3 頻譜分配

2.7.4 電纜調制解調器

2.7.5 ADSL與有線電視網

2.8 本章小結

習題

第3章 數據鏈路層

3.1 數據鏈路層設計要點

3.1.1 為網絡層提供的服務

3.1.2 分 幀

3.1.3 錯誤控制

3.1.4 流控制

3.2 錯誤檢測和糾正

3.2.1 糾錯碼

3.2.2 檢錯碼

3.3 基本數據鏈路協議

3.3.1 一個無限制的單工協議

3.3.2 一個單工的停-等協議

3.3.3 有噪聲信道的單工協議

3.4 滑動窗口協議

3.4.1 一個1位滑動窗口協議

3.4.2 使用回退n幀技術的協議

3.4.3 使用選擇性重傳的協議

3.5 協議驗證

3.5.1 有限狀態機模型

3.5.2 Petri網模型

3.6 數據鏈路層協議示例

3.6.1 HDLC-高級數據鏈路控制

3.6.2 Internet中的數據鏈路層

3.7 本章小結

習題

第4章 介質訪問控制子層

4.1 信道分配問題

4.1.1 LAN和MAN中的靜態信道分配方案

4.1.2 LAN和MAN中的動態信道分配方案

4.2 多路訪問協議

4.2.1 ALOHA

4.2.2 載波檢測多路訪問協議

4.2.3 無沖突的協議

4.2.4 有限制的競爭協議

4.2.5 波分多路訪問協議

4.2.6 無線LAN協議

4.3 以太網

4.3.1 以太網電纜

4.3.2 曼切斯特編碼

4.3.3 以太網MAC子層協議

4.3.4 二元指數后退算法

4.3.5 以太網的性能

4.3.6 交換式以太網

4.3.7 快速以太網

4.3.8 千兆以太網

4.3.9 IEEE 802.2:邏輯鏈路控制

4.3.10 關于以太網的回顧

4.4 無線LAN

4.4.1 802.11協議棧

4.4.2 802.11物理層

4.4.3 802.11 MAC子層協議

4.4.4 802.11幀結構

4.4.5 服 務

4.5 寬帶無線網絡

4.5.1 802.11和802.16的比較

4.5.2 802.16協議棧

4.5.3 802.16物理層

4.5.4 802.16 MAC子層協議

4.5.5 802.16幀結構

4.6 藍牙技術

4.6.1 藍牙的體系結構

4.6.2 藍牙應用

4.6.3 藍牙協議棧

4.6.4 藍牙無線電層

4.6.5 藍牙基帶層

4.6.6 藍牙L2CAP層

4.6.7 藍牙的幀結構

4.7 數據鏈路層交換

4.7.1 從802.x到802.y的網橋

4.7.2 本地的網絡互連

4.7.3 生成樹網橋

4.7.4 遠程網橋

4.7.5 轉發器、集線器、網橋、交換機、路由器和網關

4.7.6 虛擬LAN

4.8 本章小結

習題

第5章 網絡層

5.1 網絡層設計要點

5.1.1 存儲-轉發分組交換

5.1.2 向傳輸層提供的服務

5.1.3 無連接服務的實現

5.1.4 面向連接服務的實現

5.1.5 虛電路子網和數據報子網的比較

5.2 路由算法

5.2.1 優化化原則

5.2.2 最短路徑路由

5.2.3 擴散法

5.2.4 距離矢量路由

5.2.5 鏈路狀態路由

5.2.6 分級路由

5.2.7 廣播路由

5.2.8 多播路由

5.2.9 移動主機的路由

5.2.10 Ad Hoc網絡中的路由

5.2.11 對等網絡中的節點查詢

5.3 擁塞控制算法

5.3.1 擁塞控制的通用原則

5.3.2 擁塞預防策略

5.3.3 虛電路子網中的擁塞控制

5.3.4 數據報子網中的擁塞控制

5.3.5 負載脫落

5.3.6 抖動控制

5.4 服務質量

5.4.1 需 求

5.4.2 獲得好的服務質量所使用的技術

5.4.3 綜合服務

5.4.4 區分服務

5.4.5 標簽交換和MPLS

5.5 網絡互聯

5.5.1 網絡的不同之處

5.5.2 網絡如何連接起來

5.5.3 串聯虛電路

5.5.4 無連接的網絡互連

5.5.5 隧道技術

5.5.6 互聯網路由

5.5.7 分 段

5.6 Internet上的網絡層

5.6.1 IP協議

5.6.2 IP地址

5.6.3 Internet控制協議

5.6.4 OSPF-內部網關路由協議

5.6.5 BGP-外部網關路由協議

5.6.6 Internet多播

5.6.7 移動IP

5.6.8 IPv6

5.7 本章小結

習題

第6章 傳輸層

6.1 傳輸服務

6.1.1 向上層提供的服務

6.1.2 傳輸服務原語

6.1.3 Berkeley Socket(伯克利套接字)

6.1.4 套接字程序設計的例子:一個Internet文件服務器

6.2 傳輸協議的要素

6.2.1 編 址

6.2.2 建立連接

6.2.3 釋放連接

6.2.4 流控制和緩沖

6.2.5 多路復用

6.2.6 崩潰恢復

6.3 一個簡單的傳輸協議

6.3.1 服務原語示例

6.3.2 傳輸實體示例

6.3.3 傳輸實體作為一個有限狀態機的示例

6.4 Internet傳輸協議-UDP

6.4.1 UDP介紹

6.4.2 遠過程調用

6.4.3 實時傳輸協議

6.5 Internet傳輸協議-TCP

6.5.1 TCP介紹

6.5.2 TCP服務模型

6.5.3 TCP協議

6.5.4 TCP數據段的頭

6.5.5 TCP連接的建立

6.5.6 TCP連接的釋放

6.5.7 TCP連接的管理模型

6.5.8 TCP傳輸策略

6.5.9 TCP擁塞控制

6.5.10 TCP定時器管理

6.5.11 無線TCP和UDP

6.5.12 事務型TCP

6.6 性能問題

6.6.1 計算機網絡中的性能問題

6.6.2 網絡性能的測量

6.6.3 具有更好性能的系統設計

6.6.4 快速的TPDU處理

6.6.5 針對千兆網絡的協議

6.7 本章小結

習題

第7章 應用層

7.1 DNS-域名系統

7.1.1 DNS名字空間

7.1.2 資源記錄

7.1.3 名字服務器

7.2 電子郵件

7.2.1 結構與服務

7.2.2 用戶代理

7.2.3 消息格式

7.2.4 消息傳輸

7.2.5 最后的投遞

7.3 萬維網

7.3.1 結構概述

7.3.2 靜態Web文檔

7.3.3 動態Web文檔

7.3.4 HTTP-超文本傳輸協議

7.3.5 性能增強

7.3.6 無線Web

7.4 多媒體

7.4.1 數字音頻介紹

7.4.2 音頻壓縮

7.4.3 流式音頻

7.4.4 Internet電臺

7.4.5 IP語音

7.4.6 視頻簡介

7.4.7 視頻壓縮

7.4.8 視頻點播

7.4.9 Mbone-多播骨干網

7.5 本章小結

習題

第8章 網絡安全

8.1 密碼學

8.1.1 密碼學簡介

8.1.2 置換密碼

8.1.3 轉置密碼

8.1.4 一次一密

8.1.5 兩條基本的密碼學原則

8.2 對稱密鑰算法

8.2.1 DES-數據加密標準

8.2.2 高級加密標準AES

8.2.3 密碼算法的使用模式

8.2.4 其他密碼算法

8.2.5 密碼分析

8.3 公開密鑰算法

8.3.1 RSA

8.3.2 其他的公開密鑰算法

8.4 數字簽名

8.4.1 對稱密鑰簽名

8.4.2 公開密鑰數字簽名

8.4.3 消息摘要

8.4.4 生日攻擊

8.5 公鑰的管理

8.5.1 證書

8.5.2 X.509

8.5.3 公開密鑰基礎設施

8.6 通信安全

8.6.1 IPSec

8.6.2 防火墻

8.6.3 虛擬私有網絡

8.6.4 無線網絡安全

8.7 認證協議

8.7.1 基于共享秘密密鑰的認證

8.7.2 建立一個共享密鑰:Diffie-Hellman密鑰交換協議

8.7.3 使用密鑰分發中心的認證協議

8.7.4 使用Kerberos的認證協議

8.7.5 使用公開密鑰密碼學的認證協議

8.8 電子郵件安全

8.81 PGP-Pretty Good Privacy

8.8.2 PEM-Privacy Enhanced Mail

8.8.3 S/MIME

8.9 Web安全

8.9.1 威脅

8.9.2 安全的命名機制

8.9.3 安全套接字層SSL

8.9.4 移動代碼的安全

8.10 社會問題

8.10.1 隱私

8.10.2 言論自由

8.10.3 版權

8.11 本章小結

習題

第9章 閱讀書目和參考文獻

9.1 進一步閱讀的建議

9.1.1 簡介和綜合論著

9.1.2 物理層

9.1.3 數據鏈路層

9.1.4 介質訪問控制子層

9.1.5 網絡層

9.1.6 傳輸層

9.1.7 應用層

9.1.8 網絡安全

9.2 按字母順序的參考文獻

計算機網絡(第4版) 精彩文摘

第1章 概述

在過去的三個世紀中,每一個世紀都有一種占主導地位的技術。18世紀伴隨著工業革命到來的是大型機械系統的時代;19世紀是蒸汽機的時代;而在20世紀的發展歷程中,關鍵的技術是信息收集、處理和分發。在其他的發展方面,我們還可以看到:遍布全球的電話網絡建立起來了;無線電廣播和電視出現了;計算機工業誕生了,并且以超乎想象的速度在增長;另外,通信衛星也發射上天了。

技術快速發展的一個直接結果是,這些領域正在快速地融合,信息收集、傳輸、存儲和處理之間的差別正在迅速地消失。對于具有數百個辦公室的大型組織來說,盡管這些辦公室分布在廣闊的地理區域中,但未來期望的情景是,工作人員只要單擊一下按鈕,就可以查看到最遠處分部的狀態。隨著信息收集、處理和分發能力的不斷提高,我們對于更加復雜的信息處理技術的需求也增長得更快。

與其他的工業(比如汽車和航空運輸業)相比,計算機工業還非常年輕,盡管如此,計算機技術卻在很短的時間內有了驚人的進展。在計算機誕生之初的20年間,計算機系統是高度集中化的,通常位于一個很大的房間中。該房間通常配有玻璃墻,參觀的人透過玻璃墻可以欣賞到里邊偉大的電子奇跡。中等規模的公司或者大學可能會有一臺或者兩臺計算機,而大型的研究機構最多也就幾十臺計算機。要在20年內生產出大量同樣功能但是體積比郵票還小的計算機,在當時的人們看來純屬科學幻想。

計算機和通信的結合對于計算機系統的組織方式產生了深遠的影響。把一臺大型的計算機放在一個單獨的房間中,然后用戶帶著他們的處理任務去房間里上機,這種“計算機中心”的概念現在已經完全過時了。由一臺計算機來處理整個組織中所有的計算需求,這種老式的模型已經被新的模型所取代,在新的模型下,由大量獨立的、但相互連接起來的計算機來共同完成計算任務。這些系統稱為計算機網絡(computer networks)。如何設計這些網絡,并且將這些網絡組織起來,這是本書的主題。

在本書中,我們將使用術語“計算機網絡”來表示通過同一種技術相互連接起來的一組自主計算機的集合。如果兩臺計算機能夠交換信息,則稱這兩臺計算機是相互連接的(interconnected)。兩臺機器之間的連接不一定要通過銅線,光纖、微波、紅外線和通信衛星也可以用來建立連接。以后我們將會看到,網絡可以有不同的大小、形狀和形式。Internet或者萬維網(Wor1d Wide Web)都不是計算機網絡,可能很多人對此會覺得很奇怪。到本書末尾的時候,你就會明白其中的原因。現在給出一個簡單的答案:Internet并不是一個單一的網絡,而是一個由許多個網絡構成的網絡;Web是一個分布式系統,它運行在Internet之上。

在一些文獻中,計算機網絡和分布式系統(distributed system)這兩個概念容易使人混淆。兩者的關鍵差別在于:在一個分布式系統中,一組獨立的計算機展現給用戶的是一個統一的整體,就好像是一個系統似的。通常,對用戶來說,分布式系統只有一個模型或-范型。在操作系統之上有一層軟件中間件(midd1eware)負責實現這個模型。一個著名的分布式系統的例子是萬維網(Wor1d Wide Web),在萬維網中,所有的一切看起來就好像是一個文檔(Web頁面)一樣。

在計算機網絡中,這種統一性、模型以及其中的軟件都不存在。用戶看到的是實際的的。如果一個用戶希望在一臺遠程機器上運行一個程序,那么,他①必須登錄到遠程機器上,然后在那臺機器上運行該程序。

實際上,分布式系統是建立在網絡之上的軟件系統。正是因為軟件的特性,所以分布式系統具有高度的內聚性和透明性。因此,網絡與分布式系統之間的區別更多地在于軟件(特別是操作系統),而不是硬件。

然而,這兩個主題之間也有許多重合的地方。例如,分布式系統和計算機網絡都需要移動文件。不同之處在于是誰來發起移動操作,是系統還是用戶?雖然本書的焦點主要在于網絡,但是討論到的許多話題在分布式系統中也是很重要的。有關于分布式系統的更多信息,請參考(Tanenbaum and Van Steen,2002)。

1.1 計算機網絡的應用

在開始討論技術細節之前,首先值得花一點時間來說明為什么人們對于計算機網絡很感興趣,以及計算機網絡可用來做些什么事情。畢竟,如果沒有人對計算機網絡感興趣的話,那就不會建立這么多計算機網絡了。我們首先討論針對公司和個人的傳統用法,然后再轉移到最新的一些發展動向,包括針對移動用戶和家庭網絡的應用上來。

1.1.1 商業應用

許多公司都具有相當數量的計算機。例如,一家公司可能用一些單獨的計算機來監視生產過程、記錄庫存,以及管理工資的發放工作。最初的時候,這些計算機都是獨立工作的,但是后來管理部門決定將這些計算機連接起來,以便將有關整個公司的信息關聯起來,并且可以隨時訪問這些信息。

將這個公司的情形更加泛化一點,這里涉及到的問題是資源共享(resource sharing),其目標是,讓每一個人都可以訪問所有的程序、設備和特殊的數據,并且做到跟這些資源和用戶的物理位置無關。一個既顯然又非常普遍的例子是,讓一個辦公室里的所有工作人員共用同一臺打印機。公司沒有必要為每一個工作人員都配備一臺個人打印機,而且,一臺高性能的網絡打印機通常比一大批獨立的打印機更加便宜,打印速度更快,而且也更容易維護。

然而,比共享物理資源(比如打印機、掃描儀和CD刻錄機)更重要的是共享信息。每一個大型的或中等規模的公司和許多小型的公司都越來越依賴于計算機化的信息。大多數公司都有顧客記錄、庫存信息、收到的賬單記錄、財務報告、繳稅信息以及其他更多的在線信息。如果一家銀行的所有計算機都不能工作了,那么這家銀行可能堅持不了5分鐘。如果一個現代化的生產車間使用了計算機控制的裝配線,那么計算機崩潰后也不可能繼續工作。現在,即使是很小規模的旅行社,甚至只有三個人規模的律師事務所也與計算機網絡有著密切的聯系,通過計算機網絡,雇員們可以即時地訪問有關的信息和文檔。

對于小公司而言,可能所有的計算機都在一個辦公室里,或者位于同一個建筑物內,但是對于大型的公司,計算機和雇員們可能分散在許多個辦公室中,甚至分散在不同國家的多個分支機構中。然而,紐約的一個銷售員有時候需要訪問新加坡的產品庫存數據庫。換句話說,一個用戶離他要訪問的數據相隔15 000公里,但是他仍然要訪問這些數據,就好像這些數據存放在本地一樣。簡而言之,計算機網絡的這個目標可以定義為:企圖打破“地理位置的束縛(tyranny of geography)”。

按照最簡單的形式,你可以把一個公司的信息系統想象成:由一個或者多個數據庫,以及許多需要遠程訪問這些數據庫的雇員們組成的。在這個模型中,數據存儲在性能較強大的計算機上,稱為服務器(server)。通常這些服務器集中在同一個場所,并且由系統管理員對它們進行維護。相反,雇員們的桌子上有一些簡單的機器,稱為客戶(c1ient),通過這些客戶,雇員可以訪問遠程的數據,例如,他們可以訪問遠程的電子表格。(有時候,我們也把客戶機器的使用者稱作“客戶”,但是根據上下文環境,你應該可以判斷出到底是指機器,還是指機器的用戶。)客戶和服務器通過網絡連接起來,如圖1.1所示。請注意,這里我們只是用一個簡單的橢圓形來表示一個網絡,而沒有表達其中的任何細節。當我們從抽象意義上來表達一個網絡的時候,就使用這種形式。當有需要的時候,我們也會提供更多的細節。

這整個結構稱為“客戶-服務器模型(client—server model)”。這種模型有很廣泛的應用,它也是許多網絡應用的基礎。當客戶和服務器位于同一個建筑物內(比如,屬于同一個公司)的時候,這種模型是適用的;當客戶和服務器相隔很遠的時候,這種模型也是適用的。例如,當一個人在家里訪問一個Web頁面的時候,就使用了這種模型;其中,遠程的Web服務器就是模型中的服務器,用戶的個人計算機是模型中的客戶。在大多數情況下,一臺服務器可以處理許多客戶的請求。

圖書網:計算機網絡(第4版)pdf

  • 我的微信
  • 掃一掃加好友
  • weinxin
  • 微信公眾號
  • 掃一掃關注
  • weinxin

發表評論

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前評論:3   其中:訪客  3   博主  0

    • 666 666 0

      下載看看

      • dohlip dohlip 9

        看起來不錯的樣子

        • brick brick 0

          收藏收藏收藏