本書采用作者獨創(chuàng)的自頂向下方法講授計算機網(wǎng)絡的原理及其協(xié)議,即從應用層協(xié)議開始沿協(xié)議棧向下逐層講解,讓讀者從實現(xiàn)、應用的角度明白各層的意義,進而理解計算機網(wǎng)絡的工作原理和機制。本書強調應用層范例和應用編程接口,使讀者盡快進入每天使用的應用程序環(huán)境之中進行學習和“創(chuàng)造”。
譯者序
前言
作者簡介
第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 電路交換18
1.3.3 網(wǎng)絡的網(wǎng)絡21
1.4 分組交換網(wǎng)中的時延、丟包和吞吐量24
1.4.1 分組交換網(wǎng)中的時延24
1.4.2 排隊時延和丟包26
1.4.3 端到端時延28
1.4.4 計算機網(wǎng)絡中的吞吐量29
1.5 協(xié)議層次及其服務模型32
1.5.1 分層的體系結構32
1.5.2 封裝35
1.6 面對攻擊的網(wǎng)絡 36
1.7 計算機網(wǎng)絡和因特網(wǎng)的歷史 39
1.7.1 分組交換的發(fā)展:1961~1972 39
1.7.2 專用網(wǎng)絡和網(wǎng)絡互聯(lián):1972~1980 40
1.7.3 網(wǎng)絡的激增:1980~1990 41
1.7.4 因特網(wǎng)爆炸:20世紀90年代 42
1.7.5 新發(fā)展42
1.8 小結43
課后習題和問題44
復習題44
習題46
Wireshark實驗50
人物專訪51
第2章 應用層53
2.1 網(wǎng)絡應用原理53
2.1.1 網(wǎng)絡應用體系結構55
2.1.2 進程通信56
2.1.3 可供應用程序使用的運輸服務58
2.1.4 因特網(wǎng)提供的運輸服務59
2.1.5 應用層協(xié)議62
2.1.6 本書涉及的網(wǎng)絡應用62
2.2 Web和HTTP63
2.2.1 HTTP概述63
2.2.2 非持續(xù)連接和持續(xù)連接64
2.2.3 HTTP報文格式66
2.2.4 用戶與服務器的交互:cookie69
2.2.5 Web緩存71
2.2.6 HTTP/274
2.3 因特網(wǎng)中的電子郵件76
2.3.1 SMTP77
2.3.2 郵件報文格式79
2.3.3 郵件訪問協(xié)議80
2.4 DNS:因特網(wǎng)的目錄服務81
2.4.1 DNS提供的服務81
2.4.2 DNS工作機理概述83
2.4.3 DNS記錄和報文87
2.5 P2P文件分發(fā)90
2.6 視頻流和內容分發(fā)網(wǎng)95
2.6.1 因特網(wǎng)視頻95
2.6.2 HTTP流和DASH96
2.6.3 內容分發(fā)網(wǎng)96
2.6.4 學習案例:Netflix和YouTube 100
2.7 套接字編程:生成網(wǎng)絡應用102
2.7.1 UDP套接字編程103
2.7.2 TCP套接字編程107
2.8 小結110
課后習題和問題110
復習題110
習題112
套接字編程作業(yè) 116
Wireshark實驗:HTTP 117
Wireshark實驗:DNS 117
人物專訪117
第3章 運輸層118
3.1 概述和運輸層服務118
3.1.1 運輸層和網(wǎng)絡層的關系119
3.1.2 因特網(wǎng)運輸層概述120
3.2 多路復用與多路分解122
3.3 無連接運輸:UDP127
3.3.1 UDP報文段結構129
3.3.2 UDP檢驗和130
3.4 可靠數(shù)據(jù)傳輸原理131
3.4.1 構造可靠數(shù)據(jù)傳輸協(xié)議132
3.4.2 流水線可靠數(shù)據(jù)傳輸協(xié)議140
3.4.3 回退N步142
3.4.4 選擇重傳145
3.5 面向連接的運輸:TCP149
3.5.1 TCP連接149
3.5.2 TCP報文段結構151
3.5.3 往返時間的估計與超時154
3.5.4 可靠數(shù)據(jù)傳輸156
3.5.5 流量控制161
3.5.6 TCP連接管理163
3.6 擁塞控制原理167
3.6.1 擁塞原因與代價168
3.6.2 擁塞控制方法172
3.7 TCP擁塞控制173
3.7.1 經(jīng)典的TCP擁塞控制173
3.7.2 網(wǎng)絡輔助明確擁塞通告和基于時延的擁塞控制180
3.7.3 公平性182
3.8 運輸層功能的演化184
3.9 小結186
課后習題和問題187
復習題187
習題189
編程作業(yè)196
Wireshark實驗:探究TCP196
Wireshark實驗:探究UDP196
人物專訪196
第4章 網(wǎng)絡層:數(shù)據(jù)平面198
4.1 網(wǎng)絡層概述198
4.1.1 轉發(fā)和路由選擇:數(shù)據(jù)平面和控制平面199
4.1.2 網(wǎng)絡服務模型201
4.2 路由器工作原理203
4.2.1 輸入端口處理和基于目的地轉發(fā)205
4.2.2 交換207
4.2.3 輸出端口處理209
4.2.4 何處出現(xiàn)排隊209
4.2.5 分組調度212
4.3 網(wǎng)際協(xié)議:IPv4、尋址、IPv6及其他216
4.3.1 IPv4數(shù)據(jù)報格式216
4.3.2 IPv4編址218
4.3.3 網(wǎng)絡地址轉換226
4.3.4 IPv6229
4.4 泛化轉發(fā)和SDN232
4.4.1 匹配234
4.4.2 操作235
4.4.3 運行中的匹配加操作的OpenFlow例子235
4.5 中間盒237
4.6 小結239
課后習題和問題240
復習題240
習題241
Wireshark實驗:IP245
人物專訪245
第5章 網(wǎng)絡層:控制平面247
5.1 概述247
5.2 路由選擇算法249
5.2.1 鏈路狀態(tài)路由選擇算法251
5.2.2 距離向量路由選擇算法254
5.3 因特網(wǎng)中自治系統(tǒng)內部的路由選擇:OSPF259
5.4 ISP之間的路由選擇:BGP262
5.4.1 BGP的作用262
5.4.2 通告BGP路由信息262
5.4.3 確定好的路由264
5.4.4 IP任播266
5.4.5 路由選擇策略267
5.4.6 拼裝在一起:在因特網(wǎng)中呈現(xiàn)269
5.5 SDN控制平面270
5.5.1 SDN控制平面:SDN控制器和SDN網(wǎng)絡控制應用程序272
5.5.2 OpenFlow協(xié)議273
5.5.3 數(shù)據(jù)平面和控制平面交互的例子274
5.5.4 SDN的過去與未來275
5.6 ICMP:因特網(wǎng)控制報文協(xié)議277
5.7 網(wǎng)絡管理、SNMP和NETCONF/YANG 279
5.7.1 網(wǎng)絡管理框架280
5.7.2 簡單網(wǎng)絡管理協(xié)議和管理信息庫281
5.7.3 NETCONF和YANG 284
5.8 小結287
課后習題和問題287
復習題287
習題288
套接字編程作業(yè)291
編程作業(yè)291
Wireshark實驗:ICMP 292
人物專訪292
第6章 鏈路層和局域網(wǎng)294
6.1 鏈路層概述294
6.1.1 鏈路層提供的服務296
6.1.2 鏈路層在何處實現(xiàn)296
6.2 差錯檢測和糾正技術297
6.2.1 奇偶校驗298
6.2.2 檢驗和方法299
6.2.3 循環(huán)冗余檢測300
6.3 多路訪問鏈路和協(xié)議301
6.3.1 信道劃分協(xié)議303
6.3.2 隨機接入?yún)f(xié)議304
6.3.3 輪流協(xié)議310
6.3.4 DOCSIS:用于電纜因特網(wǎng)接入的鏈路層協(xié)議310
6.4 交換局域網(wǎng)311
6.4.1 鏈路層尋址和ARP312
6.4.2 以太網(wǎng)317
6.4.3 鏈路層交換機322
6.4.4 虛擬局域網(wǎng)326
6.5 鏈路虛擬化:網(wǎng)絡作為鏈路層328
6.6 數(shù)據(jù)中心網(wǎng)絡331
6.6.1 數(shù)據(jù)中心體系結構331
6.6.2 數(shù)據(jù)中心網(wǎng)絡的發(fā)展趨勢334
6.7 回顧:Web頁面請求的歷程336
6.7.1 準備:DHCP、UDP、IP和以太網(wǎng)336
6.7.2 仍在準備:DNS和ARP338
6.7.3 仍在準備:域內路由選擇到DNS服務器339
6.7.4 Web客戶-服務器交互:TCP和HTTP339
6.8 小結340
課后習題和問題341
復習題341
習題342
Wireshark實驗:802.3以太網(wǎng)346
人物專訪346
第7章 無線網(wǎng)絡和移動網(wǎng)絡348
7.1 概述348
7.2 無線鏈路和網(wǎng)絡特征351
7.3 WiFi:802.11無線局域網(wǎng)356
7.3.1 802.11無線局域網(wǎng)體系結構357
7.3.2 802.11 MAC協(xié)議359
7.3.3 IEEE 802.11幀363
7.3.4 在相同的IP子網(wǎng)中的移動性365
7.3.5 802.11中的高級特色367
7.3.6 個人域網(wǎng)絡:藍牙368
7.4 蜂窩網(wǎng)絡:4G和5G369
7.4.1 4G LTE蜂窩網(wǎng)絡:架構和部件370
7.4.2 LTE協(xié)議棧375
7.4.3 LTE無線電接入網(wǎng)376
7.4.4 LTE附加功能:網(wǎng)絡連接和功率管理376
7.4.5 全球蜂窩網(wǎng)絡:網(wǎng)絡的網(wǎng)絡377
7.4.6 5G蜂窩網(wǎng)絡378
7.5 移動性管理原理380
7.5.1 設備移動性:網(wǎng)絡層視角380
7.5.2 歸屬網(wǎng)絡和在被訪網(wǎng)絡漫游381
7.5.3 去往/來自移動設備的直接和間接路由382
7.6 實踐中的移動性管理386
7.6.1 4G/5G網(wǎng)絡的移動性管理387
7.6.2 移動IP390
7.7 無線和移動性:對高層協(xié)議的影響391
7.8 小結393
課后習題和問題393
復習題393
習題394
Wireshark實驗:WiFi 396
人物專訪396
第8章 計算機網(wǎng)絡中的安全398
8.1 什么是網(wǎng)絡安全398
8.2 密碼學原理400
8.2.1 對稱密鑰密碼體制401
8.2.2 公開密鑰加密405
8.3 報文完整性和數(shù)字簽名409
8.3.1 密碼散列函數(shù)410
8.3.2 報文鑒別碼411
8.3.3 數(shù)字簽名412
8.4 端點鑒別417
8.5 安全電子郵件419
8.5.1 安全電子郵件概述420
8.5.2 PGP422
8.6 使TCP連接安全:TLS423
8.6.1 宏觀描述424
8.6.2 更完整的描述426
8.7 網(wǎng)絡層安全性:IPsec和虛擬專用網(wǎng)427
8.7.1 IPsec和虛擬專用網(wǎng)428
8.7.2 AH協(xié)議和ESP協(xié)議429
8.7.3 安全關聯(lián)429
8.7.4 IPsec數(shù)據(jù)報430
8.7.5 IKE:IPsec中的密鑰管理433
8.8 實現(xiàn)安全的無線局域網(wǎng)和4G/5G蜂窩網(wǎng)絡433
8.8.1 802.11無線局域網(wǎng)中的鑒別和密鑰協(xié)商434
8.8.2 4G/5G蜂窩網(wǎng)絡中的鑒別和密鑰協(xié)商436
8.9 運行安全性:防火墻和入侵檢測系統(tǒng)439
8.9.1 防火墻439
8.9.2 入侵檢測系統(tǒng)444
8.10 小結447
課后習題和問題447
復習題447
習題449
Wireshark實驗:TLS452
IPsec實驗452
人物專訪452
參考文獻454