本書是經(jīng)典的計算機網(wǎng)絡教材之一,采用了作者的自頂向下方法來講授計算機網(wǎng)絡的原理及其協(xié)議,自16年前第1版出版以來已經(jīng)被數(shù)百所大學和學院選作教材,被譯為14種語言。第7版保持了以前版本的特色,繼續(xù)關注因特網(wǎng)和計算機網(wǎng)絡的現(xiàn)代處理方式,注重原理和實踐,為計算機網(wǎng)絡教學提供了一種新穎和與時俱進的方法。同時,第7版進行了相當多的修訂和更新,首次改變了各章的組織結(jié)構,將網(wǎng)絡層分成兩章(第4章關注網(wǎng)絡層的“數(shù)據(jù)平面”,第5章關注網(wǎng)絡層的“控制平面”),并將網(wǎng)絡管理主題放入了新的第5章中。此外,為了反映自第6版以來計算機網(wǎng)絡領域的新變化,對其他章節(jié)也進行了更新,刪除了FTP和分布式散列表的材料,用流行的因特網(wǎng)顯式擁塞通告(ECN)材料代替了ATM網(wǎng)絡的材料,更新了有關802.11(所謂WiFi)網(wǎng)絡和蜂窩網(wǎng)絡(包括4G和LTE)的材料,全面修訂并增加了新的課后習題,等等。
詹姆斯·F. 庫羅斯(James F. Kurose) 美國馬薩諸塞大學阿默斯特分校計算機科學系教授,研究興趣包括網(wǎng)絡協(xié)議和體系結(jié)構、網(wǎng)絡測量、多媒體通信以及建模和性能評價。由于在教育領域的杰出貢獻,他獲得了包括IEEE Taylor Booth教育獎章在內(nèi)的多個教育獎勵和榮譽。他是IEEE和ACM會士,還曾擔任《IEEE通信會刊》和《IEEE/ACM網(wǎng)絡會刊》總編輯。
基思·W. 羅斯(Keith W. Ross) 美國紐約大學(NYU)上海分校工程和計算機科學學院院長以及NYU計算機科學和工程系的Leonard J. Shustek首席教授,研究興趣包括隱私、社交網(wǎng)絡、對等網(wǎng)絡、因特網(wǎng)測量、內(nèi)容分發(fā)網(wǎng)絡和隨機建模。他是IEEE和ACM會士,還曾獲得Infocom 2009年論文獎,《多媒體通信》2011年和2008年論文獎。
目 錄
Computer Networking:A Top-Down Approach,Seventh Edition
出版者的話
作譯者簡介
譯者序
前言
第1章 計算機網(wǎng)絡和因特網(wǎng)1
1.1 什么是因特網(wǎng)1
1.1.1 具體構成描述1
1.1.2 服務描述4
1.1.3 什么是協(xié)議5
1.2 網(wǎng)絡邊緣6
1.2.1 接入網(wǎng)8
1.2.2 物理媒體13
1.3 網(wǎng)絡核心15
1.3.1 分組交換15
1.3.2 電路交換19
1.3.3 網(wǎng)絡的網(wǎng)絡22
1.4 分組交換網(wǎng)中的時延、丟包和吞吐量24
1.4.1 分組交換網(wǎng)中的時延概述24
1.4.2 排隊時延和丟包27
1.4.3 端到端時延28
1.4.4 計算機網(wǎng)絡中的吞吐量30
1.5 協(xié)議層次及其服務模型32
1.5.1 分層的體系結(jié)構32
1.5.2 封裝36
1.6 面對攻擊的網(wǎng)絡37
1.7 計算機網(wǎng)絡和因特網(wǎng)的歷史40
1.7.1 分組交換的發(fā)展:1961~197241
1.7.2 專用網(wǎng)絡和網(wǎng)絡互聯(lián):1972~198042
1.7.3 網(wǎng)絡的激增:1980~199042
1.7.4 因特網(wǎng)爆炸:20世紀90年代43
1.7.5 最新發(fā)展44
1.8 小結(jié)44
課后習題和問題46
復習題46
習題47
Wireshark實驗51
人物專訪52
第2章 應用層54
2.1 應用層協(xié)議原理54
2.1.1 網(wǎng)絡應用程序體系結(jié)構55
2.1.2 進程通信57
2.1.3 可供應用程序使用的運輸服務59
2.1.4 因特網(wǎng)提供的運輸服務60
2.1.5 應用層協(xié)議63
2.1.6 本書涉及的網(wǎng)絡應用63
2.2 Web和HTTP64
2.2.1 HTTP概況64
2.2.2 非持續(xù)連接和持續(xù)連接65
2.2.3 HTTP報文格式67
2.2.4 用戶與服務器的交互:cookie70
2.2.5 Web緩存72
2.2.6 條件GET方法74
2.3 因特網(wǎng)中的電子郵件75
2.3.1 SMTP76
2.3.2 與HTTP的對比78
2.3.3 郵件報文格式79
2.3.4 郵件訪問協(xié)議79
2.4 DNS:因特網(wǎng)的目錄服務83
2.4.1 DNS提供的服務83
2.4.2 DNS工作機理概述85
2.4.3 DNS記錄和報文89
2.5 P2P文件分發(fā)92
2.6 視頻流和內(nèi)容分發(fā)網(wǎng)97
2.6.1 因特網(wǎng)視頻97
2.6.2 HTTP流和DASH98
2.6.3 內(nèi)容分發(fā)網(wǎng)98
2.6.4 學習案例:Netflix、YouTube和“看看”101
2.7 套接字編程:生成網(wǎng)絡應用104
2.7.1 UDP套接字編程105
2.7.2 TCP套接字編程109
2.8 小結(jié)112
課后習題和問題113
復習題113
習題114
套接字編程作業(yè)118
Wireshark實驗:HTTP119
Wireshark實驗:DNS120
人物專訪120
第3章 運輸層121
3.1 概述和運輸層服務121
3.1.1 運輸層和網(wǎng)絡層的關系122
3.1.2 因特網(wǎng)運輸層概述123
3.2 多路復用與多路分解125
3.3 無連接運輸:UDP130
3.3.1 UDP報文段結(jié)構132
3.3.2 UDP檢驗和133
3.4 可靠數(shù)據(jù)傳輸原理134
3.4.1 構造可靠數(shù)據(jù)傳輸協(xié)議135
3.4.2 流水線可靠數(shù)據(jù)傳輸協(xié)議143
3.4.3 回退N步145
3.4.4 選擇重傳148
3.5 面向連接的運輸:TCP152
3.5.1 TCP連接152
3.5.2 TCP報文段結(jié)構154
3.5.3 往返時間的估計與超時157
3.5.4 可靠數(shù)據(jù)傳輸159
3.5.5 流量控制164
3.5.6 TCP連接管理166
3.6 擁塞控制原理170
3.6.1 擁塞原因與代價171
3.6.2 擁塞控制方法175
3.7 TCP擁塞控制176
3.7.1 公平性183
3.7.2 明確擁塞通告:網(wǎng)絡輔助擁塞控制184
3.8 小結(jié)185
課后習題和問題187
復習題187
習題189
編程作業(yè)195
Wireshark實驗:探究TCP196
Wireshark實驗:探究UDP196
人物專訪196
第4章 網(wǎng)絡層:數(shù)據(jù)平面198
4.1 網(wǎng)絡層概述198
4.1.1 轉(zhuǎn)發(fā)和路由選擇:數(shù)據(jù)平面和控制平面199
4.1.2 網(wǎng)絡服務模型202
4.2 路由器工作原理203
4.2.1 輸入端口處理和基于目的地轉(zhuǎn)發(fā)205
4.2.2 交換207
4.2.3 輸出端口處理209
4.2.4 何處出現(xiàn)排隊209
4.2.5 分組調(diào)度211
4.3 網(wǎng)際協(xié)議:IPv4、尋址、IPv6及其他214
4.3.1 IPv4數(shù)據(jù)報格式214
4.3.2 IPv4數(shù)據(jù)報分片216
4.3.3 IPv4編址217
4.3.4 網(wǎng)絡地址轉(zhuǎn)換225
4.3.5 IPv6227
4.4 通用轉(zhuǎn)發(fā)和SDN231
4.4.1 匹配233
4.4.2 動作234
4.4.3 匹配加動作操作中的OpenFlow例子234
4.5 小結(jié)236
課后習題和問題236
復習題236
習題237
Wireshark實驗240
人物專訪241
第5章 網(wǎng)絡層:控制平面242
5.1 概述242
5.2 路由選擇算法244
5.2.1 鏈路狀態(tài)路由選擇算法246
5.2.2 距離向量路由選擇算法248
5.3 因特網(wǎng)中自治系統(tǒng)內(nèi)部的路由選擇:OSPF254
5.4 ISP之間的路由選擇:BGP256
5.4.1 BGP的作用257
5.4.2 通告BGP路由信息257
5.4.3 確定最好的路由259
5.4.4 IP任播261
5.4.5 路由選擇策略262
5.4.6 拼裝在一起:在因特網(wǎng)中呈現(xiàn)264
5.5 SDN控制平面265
5.5.1 SDN控制平面:SDN控制器和SDN網(wǎng)絡控制應用程序266
5.5.2 OpenFlow協(xié)議267
5.5.3 數(shù)據(jù)平面和控制平面交互的例子269
5.5.4 SDN的過去與未來270
5.6 ICMP:因特網(wǎng)控制報文協(xié)議272
5.7 網(wǎng)絡管理和SNMP274
5.7.1 網(wǎng)絡管理框架274
5.7.2 簡單網(wǎng)絡管理協(xié)議275
5.8 小結(jié)277
課后習題和問題278
復習題278
習題279
套接字編程作業(yè)281
編程作業(yè)282
Wireshark實驗282
人物專訪283
第6章 鏈路層和局域網(wǎng)285
6.1 鏈路層概述285
6.1.1 鏈路層提供的服務287
6.1.2 鏈路層在何處實現(xiàn)287
6.2 差錯檢測和糾正技術288
6.2.1 奇偶校驗289
6.2.2 檢驗和方法290
6.2.3 循環(huán)冗余檢測291
6.3 多路訪問鏈路和協(xié)議292
6.3.1 信道劃分協(xié)議294
6.3.2 隨機接入?yún)f(xié)議295
6.3.3 輪流協(xié)議301
6.3.4 DOCSIS:用于電纜因特網(wǎng)接入的鏈路層協(xié)議301
6.4 交換局域網(wǎng)302
6.4.1 鏈路層尋址和ARP303
6.4.2 以太網(wǎng)308
6.4.3 鏈路層交換機312
6.4.4 虛擬局域網(wǎng)317
6.5 鏈路虛擬化:網(wǎng)絡作為鏈路層319
6.6 數(shù)據(jù)中心網(wǎng)絡322
6.7 回顧:Web頁面請求的歷程326
6.7.1 準備:DHCP、UDP、IP和以太網(wǎng)326
6.7.2 仍在準備:DNS和ARP327
6.7.3 仍在準備:域內(nèi)路由選擇到DNS服務器328
6.7.4 Web客戶-服務器交互:TCP和HTTP329
6.8 小結(jié)330
課后習題和問題331
復習題331
習題331
Wireshark實驗335
人物專訪336
第7章 無線網(wǎng)絡和移動網(wǎng)絡338
7.1 概述339
7.2 無線鏈路和網(wǎng)絡特征341
7.3 WiFi:802.11無線LAN346
7.3.1 802.11體系結(jié)構347
7.3.2 802.11 MAC協(xié)議350
7.3.3 IEEE 802.11幀353
7.3.4 在相同的IP子網(wǎng)中的移動性355
7.3.5 802.11中的高級特色356
7.3.6 個人域網(wǎng)絡:藍牙和ZigBee357
7.4 蜂窩因特網(wǎng)接入358
7.4.1 蜂窩網(wǎng)體系結(jié)構概述359
7.4.2 3G蜂窩數(shù)據(jù)網(wǎng):將因特網(wǎng)擴展到蜂窩用戶360
7.4.3 走向4G:LTE362
7.5 移動管理:原理364
7.5.1 尋址367
7.5.2 路由選擇到移動節(jié)點367
7.6 移動IP371
7.7 管理蜂窩網(wǎng)中的移動性374
7.7.1 對移動用戶呼叫的路由選擇375
7.7.2 GSM中的切換376
7.8 無線和移動性:對高層協(xié)議的影響378
7.9 小結(jié)380
課后習題和問題380
復習題380
習題381
Wireshark實驗383
人物專訪383
第8章 計算機網(wǎng)絡中的安全385
8.1 什么是網(wǎng)絡安全385
8.2 密碼學的原則387
8.2.1 對稱密鑰密碼體制388
8.2.2 公開密鑰加密392
8.3 報文完整性和數(shù)字簽名396
8.3.1 密碼散列函數(shù)397
8.3.2 報文鑒別碼398
8.3.3 數(shù)字簽名399
8.4 端點鑒別404
8.4.1 鑒別協(xié)議ap1.0404
8.4.2 鑒別協(xié)議ap2.0405
8.4.3 鑒別協(xié)議ap3.0405
8.4.4 鑒別協(xié)議ap3.1406
8.4.5 鑒別協(xié)議ap4.0406
8.5 安全電子郵件407
8.5.1 安全電子郵件407
8.5.2 PGP409
8.6 使TCP連接安全:SSL410
8.6.1 宏觀描述411
8.6.2 更完整的描述413
8.7 網(wǎng)絡層安全性:IPsec和虛擬專用網(wǎng)415
8.7.1 IPsec和虛擬專用網(wǎng)415
8.7.2 AH協(xié)議和ESP協(xié)議416
8.7.3 安全關聯(lián)416
8.7.4 IPsec數(shù)據(jù)報417
8.7.5 IKE:IPsec中的密鑰管理420
8.8 使無線LAN安全420
8.8.1 有線等效保密421
8.8.2 IEEE 802.11i422
8.9 運行安全性:防火墻和入侵檢測系統(tǒng)424
8.9.1 防火墻424
8.9.2 入侵檢測系統(tǒng)429
8.10 小結(jié)431
課后習題和問題432
復習題432
......
前 言Computer Networking:A Top-Down Approach,Seventh Edition歡迎閱讀《計算機網(wǎng)絡:自頂向下方法》的第7版。自從本書第1版于16年前出版以來,這本書已經(jīng)被數(shù)百所大學和學院采用,被譯為14種語言,并被世界上幾十萬的學生和從業(yè)人員使用。我們傾聽了許多讀者的意見,贊揚之聲不絕于耳。
第7版的新穎之處我們認為本書成功的一個重要原因是,持續(xù)地為計算機網(wǎng)絡教學提供了一種新穎和與時俱進的方法。在第7版中,我們做了不少改變,但也保持了我們認為(并且得到了使用本書的教師和學生的認可)本書最為重要的方面:它的自頂向下方法,它關注因特網(wǎng)和計算機網(wǎng)絡的現(xiàn)代處理方式,它的注重原理和實踐,以及它易于理解的風格和學習計算機網(wǎng)絡的方法。然而,第7版進行了相當多的修訂和更新。
本書的長期讀者將注意到,自該教科書出版以來,我們首次改變了各章的組織結(jié)構。以往包括在一章中的網(wǎng)絡層,現(xiàn)在包括在第4章(該章關注網(wǎng)絡層的所謂“數(shù)據(jù)平面”組件)和第5章(該章關注網(wǎng)絡層的“控制平面”)中。網(wǎng)絡層范圍的擴展反映了軟件定義網(wǎng)絡(SDN)重要性的迅速提升,無可置疑地證明了十年來網(wǎng)絡非常重要和令人興奮的進展。盡管SDN是相對新近的創(chuàng)新,但它已經(jīng)迅速在實踐中得到應用,所以介紹現(xiàn)代計算機網(wǎng)絡而不涉及SDN已經(jīng)成為不可想象的事。先前包括在第9章中的網(wǎng)絡管理主題,現(xiàn)在已經(jīng)放入新的第5章中了。我們一如既往地更新了本書的許多其他章節(jié),以反映自第6版以來網(wǎng)絡領域的新變化。從教科書中撤除的材料一如既往地能夠在本書的配套網(wǎng)站中找到。比較重要的一些更新如下:
為反映因特網(wǎng)不斷增長的范圍和應用,更新了第1章。
討論應用層的第2章進行了重大更新。我們刪除了FTP和分布式散列表的材料,增加了有關應用層視頻流和內(nèi)容分發(fā)網(wǎng),以及Netflix和YouTube學習案例的新節(jié)。套接字編程已從Python 2更新為Python 3。
討論運輸層的第3章進行了適度更新。異步傳遞方式(ATM)網(wǎng)絡的材料已被更流行的因特網(wǎng)顯式擁塞通告(ECN)的材料所代替,用ECN教授相同的原理。
第4章討論網(wǎng)絡層的“數(shù)據(jù)平面”組件。數(shù)據(jù)平面是每臺路由器的轉(zhuǎn)發(fā)功能,它決定到達路由器的一條輸入鏈路的分組是如何轉(zhuǎn)發(fā)到該路由器的一條輸出鏈路的。我們更新了在所有前面版本中都能找到的有關傳統(tǒng)因特網(wǎng)轉(zhuǎn)發(fā)的材料,并且增加了分組調(diào)度的材料。還增加了有關通用轉(zhuǎn)發(fā)的新節(jié),就像SDN中實踐的那樣。該章也有很多更新。有關多播和廣播通信方面的材料已被刪除。
第5章討論網(wǎng)絡層的控制平面功能。這種網(wǎng)絡范圍的邏輯控制著數(shù)據(jù)報如何沿著從源主機到目的主機的路由器的端到端路徑選擇路由。如同前面版本一樣,我們包括路由選擇算法以及在今天的因特網(wǎng)中所使用的路由選擇協(xié)議(更新了對BGP的討論)。增加了有關SDN控制平面的新節(jié),講述了如何在所謂的SDN控制器中實現(xiàn)路由選擇和其他功能。
第7章討論無線網(wǎng)絡和移動網(wǎng)絡,更新了有關802.11(所謂WiFi)網(wǎng)絡和蜂窩網(wǎng)絡(包括4G和LTE)的材料。
第8章討論網(wǎng)絡安全,這在第6版中已經(jīng)全面更新過了,本版中該章僅進行了適度更新。
第9章較之第6版進行了適度調(diào)整,有關視頻流和內(nèi)容分發(fā)網(wǎng)的材料已經(jīng)放到第2章了,有關分組調(diào)度的材料已經(jīng)放進第4章了。
增加了與每章后面習題相關的重要新材料。與前面各版一樣,對課后習題進行了修訂、增加和刪除。
在新版本的修訂過程中,我們的目標一如既往,繼續(xù)關注因特網(wǎng)和計算機網(wǎng)絡的現(xiàn)代處理方式,注重原理和實踐。
本書讀者對象本書適用于計算機網(wǎng)絡的第一門課程,既可用于計算機科學系的學生,也可用于電氣工程系的學生。就編程語言而言,本書僅假定學生具有C、C++、Java或Python的編程經(jīng)驗(也只是在幾個地方用到)。與許多入門性的其他計算機網(wǎng)絡教科書相比,盡管本書表述更為精確,分析更為細致,然而書中很少用到高中階段沒有教過的數(shù)學概念。我們有意避免使用任何高等微積分、概率論或隨機過程的概念(盡管我們?yōu)榫哂羞@種高級背景的學生準備了某些課后習題)。因此,本書適用于本科生課程和一年級研究生課程。它對于電信業(yè)的從業(yè)人員也應當有用。
本書的獨特之處計算機網(wǎng)絡這門課程極為復雜,涉及許多以錯綜復雜的方式彼此交織的概念、協(xié)議和技術。為了處理這種大跨度和高復雜性,許多計算機網(wǎng)絡教科書都圍繞計算機網(wǎng)絡體系結(jié)構的“層次”來組織內(nèi)容。借助于這種分層的組織結(jié)構,學生能夠透過計算機網(wǎng)絡的復雜性看到其內(nèi)部,他們在學習整個體系結(jié)構的某個部分中的獨特概念和協(xié)議的同時,也能看清所有這些部分如何整合在一起的全貌。從教學法的角度來看,我們的個人體驗是這種分層的教學方法的確是卓有成效的。盡管如此,我們發(fā)現(xiàn)那種自底向上的傳統(tǒng)教學方法,即從物理層到應用層逐層進行講解的方法,對于現(xiàn)代計算機網(wǎng)絡課程并非是最佳的方法。
自頂向下方法本書于16年前首次以自頂向下的方式來對待網(wǎng)絡,這就是說從應用層開始向下一直講到物理層。我們從教師以及學生那里得到的反饋證實了這種自頂向下方法有許多好處,并且從教學法來講的確很好實施。第一
更多建議: