《網(wǎng)絡(luò)是怎樣連接的》以探索之旅的形式,從在瀏覽器中輸入網(wǎng)址開始,一路追蹤了到顯示出網(wǎng)頁(yè)的內(nèi)容為止的整個(gè)過程,以圖配文,講解了網(wǎng)絡(luò)的全貌,并重點(diǎn)介紹了實(shí)際的網(wǎng)絡(luò)設(shè)備和軟件是如何工作的。目的是幫助讀者理解網(wǎng)絡(luò)的本質(zhì)意義,理解實(shí)際的設(shè)備和軟件,進(jìn)而熟練運(yùn)用網(wǎng)絡(luò)技術(shù)。同時(shí),專設(shè)了“網(wǎng)絡(luò)術(shù)語(yǔ)其實(shí)很簡(jiǎn)單”專欄,以對(duì)話的形式介紹了一些網(wǎng)絡(luò)術(shù)語(yǔ)的詞源,頗為生動(dòng)有趣。
日文版重印32次!
“計(jì)算機(jī)網(wǎng)絡(luò)概論”圖解趣味版
蹲馬桶就能看懂的網(wǎng)絡(luò)基礎(chǔ)知識(shí)
《Wireshark網(wǎng)絡(luò)分析就這么簡(jiǎn)單》作者林沛滿 作序推薦!
本書適合
1. 菜鳥程序員入門進(jìn)階
2. 中級(jí)程序員查漏補(bǔ)缺
3. 高手程序員向家人(女友、老媽等)普及計(jì)算機(jī)知識(shí)
a.如果你好奇從在瀏覽器中輸入網(wǎng)址到顯示出網(wǎng)頁(yè)內(nèi)容網(wǎng)絡(luò)中到底發(fā)生了什么
b.如果你想知道網(wǎng)絡(luò)設(shè)備和軟件在網(wǎng)絡(luò)內(nèi)部是如何工作的
c.如果你已經(jīng)掌握了一些零散的網(wǎng)絡(luò)知識(shí)但是想要形成完整的知識(shí)脈絡(luò)
d.如果你想在工作和生活中更好地應(yīng)用網(wǎng)絡(luò)
那么就該讀一讀這本書,全面系統(tǒng)地掌握網(wǎng)絡(luò)基礎(chǔ)知識(shí)!
以圖配文,深入講解網(wǎng)絡(luò)基礎(chǔ)知識(shí)
語(yǔ)言通俗,即使是文科生也能看得懂
特設(shè)“網(wǎng)絡(luò)術(shù)語(yǔ)其實(shí)很簡(jiǎn)單”專欄,生動(dòng)有趣
戶根勤(作者)
早先從事軟件開發(fā),后進(jìn)入網(wǎng)絡(luò)行業(yè)。曾供職于日本網(wǎng)絡(luò)設(shè)備廠商(外資企業(yè))和國(guó)內(nèi)網(wǎng)絡(luò)集成商,從事產(chǎn)品開發(fā)和技術(shù)咨詢等工作。在工作之余還進(jìn)行演講、寫作等活動(dòng)。1998年離開公司,開始以演講、寫作以及運(yùn)營(yíng)論壇為主業(yè)。
周自恒(譯者)
知名技術(shù)圖書譯者、全棧程序員、自然科學(xué)愛好者。初中時(shí)曾獲得信息學(xué)奧賽天津賽區(qū)一等獎(jiǎng),曾任某管理咨詢公司戰(zhàn)略技術(shù)總監(jiān)。
譯有《圖解CIO工作指南(第4版)》《大數(shù)據(jù)的沖擊》《代碼的未來(lái)》《30天自制操作系統(tǒng)》《圖解密碼技術(shù)》《家用游戲機(jī)簡(jiǎn)史》《有趣的二進(jìn)制》等。
第1章 瀏覽器生成消息 1
——探索瀏覽器內(nèi)部
1.1 生成HTTP請(qǐng)求消息 5
1.1.1 探索之旅從輸入網(wǎng)址開始 5
1.1.2 瀏覽器先要解析URL 7
1.1.3 省略文件名的情況 9
1.1.4 HTTP的基本思路 10
1.1.5 生成HTTP請(qǐng)求消息 14
1.1.6 發(fā)送請(qǐng)求后會(huì)收到響應(yīng) 20
1.2 向DNS服務(wù)器查詢Web服務(wù)器的IP地址 24
1.2.1 IP地址的基本知識(shí) 24
1.2.2 域名和IP地址并用的理由 28
1.2.3 Socket庫(kù)提供查詢IP地址的功能 30
1.2.4 通過解析器向DNS服務(wù)器發(fā)出查詢 31
1.2.5 解析器的內(nèi)部原理 32
1.3 全世界DNS服務(wù)器的大接力 35
1.3.1 DNS服務(wù)器的基本工作 35
1.3.2 域名的層次結(jié)構(gòu) 38
1.3.3 尋找相應(yīng)的DNS服務(wù)器并獲取IP地址 40
1.3.4 通過緩存加快DNS服務(wù)器的響應(yīng) 44
1.4 委托協(xié)議棧發(fā)送消息 45
1.4.1 數(shù)據(jù)收發(fā)操作概覽 45
1.4.2 創(chuàng)建套接字階段 48
1.4.3 連接階段:把管道接上去 50
1.4.4 通信階段:傳遞消息 52
1.4.5 斷開階段:收發(fā)數(shù)據(jù)結(jié)束 53
怪杰Resolver 55
第2章 用電信號(hào)傳輸TCP/IP數(shù)據(jù) 57
——探索協(xié)議棧和網(wǎng)卡
2.1 創(chuàng)建套接字 61
2.1.1 協(xié)議棧的內(nèi)部結(jié)構(gòu) 61
2.1.2 套接字的實(shí)體就是通信控制信息 63
2.1.3 調(diào)用socket時(shí)的操作 66
2.2 連接服務(wù)器 68
2.2.1 連接是什么意思 68
2.2.2 負(fù)責(zé)保存控制信息的頭部 70
2.2.3 連接操作的實(shí)際過程 73
2.3 收發(fā)數(shù)據(jù) 75
2.3.1 將HTTP請(qǐng)求消息交給協(xié)議!75
2.3.2 對(duì)較大的數(shù)據(jù)進(jìn)行拆分 78
2.3.3 使用ACK號(hào)確認(rèn)網(wǎng)絡(luò)包已收到 79
2.3.4 根據(jù)網(wǎng)絡(luò)包平均往返時(shí)間調(diào)整ACK號(hào)等待時(shí)間 83
2.3.5 使用窗口有效管理ACK號(hào) 84
2.3.6 ACK與窗口的合并 87
2.3.7 接收HTTP響應(yīng)消息 89
2.4 從服務(wù)器斷開并刪除套接字 90
2.4.1 數(shù)據(jù)發(fā)送完畢后斷開連接 90
2.4.2 刪除套接字 92
2.4.3 數(shù)據(jù)收發(fā)操作小結(jié) 93
2.5 IP與以太網(wǎng)的包收發(fā)操作 95
2.5.1 包的基本知識(shí) 95
2.5.2 包收發(fā)操作概覽 99
2.5.3 生成包含接收方IP地址的IP頭部 102
2.5.4 生成以太網(wǎng)用的MAC頭部 106
2.5.5 通過ARP查詢目標(biāo)路由器的MAC地址 108
2.5.6 以太網(wǎng)的基本知識(shí) 111
2.5.7 將IP包轉(zhuǎn)換成電或光信號(hào)發(fā)送出去 114
2.5.8 給網(wǎng)絡(luò)包再加3個(gè)控制數(shù)據(jù) 116
2.5.9 向集線器發(fā)送網(wǎng)絡(luò)包 120
2.5.10 接收返回包 123
2.5.11 將服務(wù)器的響應(yīng)包從IP傳遞給TCP 125
2.6 UDP協(xié)議的收發(fā)操作 128
2.6.1 不需要重發(fā)的數(shù)據(jù)用UDP發(fā)送更高效 128
2.6.2 控制用的短數(shù)據(jù) 129
2.6.3 音頻和視頻數(shù)據(jù) 130
插進(jìn)Socket里的是燈泡還是程序 132
第3章 從網(wǎng)線到網(wǎng)絡(luò)設(shè)備 135
——探索集線器、交換機(jī)和路由器
3.1 信號(hào)在網(wǎng)線和集線器中傳輸 139
3.1.1 每個(gè)包都是獨(dú)立傳輸?shù)摹?39
3.1.2 防止網(wǎng)線中的信號(hào)衰減很重要 140
3.1.3 “雙絞”是為了抑制噪聲 141
3.1.4 集線器將信號(hào)發(fā)往所有線路 146
3.2 交換機(jī)的包轉(zhuǎn)發(fā)操作 149
3.2.1 交換機(jī)根據(jù)地址表進(jìn)行轉(zhuǎn)發(fā) 149
3.2.2 MAC地址表的維護(hù) 153
3.2.3 特殊操作 154
3.2.4 全雙工模式可以同時(shí)進(jìn)行發(fā)送和接收 155
3.2.5 自動(dòng)協(xié)商:確定最優(yōu)的傳輸速率 156
3.2.6 交換機(jī)可同時(shí)執(zhí)行多個(gè)轉(zhuǎn)發(fā)操作 159
3.3 路由器的包轉(zhuǎn)發(fā)操作 159
3.3.1 路由器的基本知識(shí) 159
3.3.2 路由表中的信息 162
3.3.3 路由器的包接收操作 166
3.3.4 查詢路由表確定輸出端口 166
3.3.5 找不到匹配路由時(shí)選擇默認(rèn)路由 168
3.3.6 包的有效期 169
3.3.7 通過分片功能拆分大網(wǎng)絡(luò)包 170
3.3.8 路由器的發(fā)送操作和計(jì)算機(jī)相同 172
3.3.9 路由器與交換機(jī)的關(guān)系 173
3.4 路由器的附加功能 176
3.4.1 通過地址轉(zhuǎn)換有效利用IP地址 176
3.4.2 地址轉(zhuǎn)換的基本原理 178
3.4.3 改寫端口號(hào)的原因 180
3.4.4 從互聯(lián)網(wǎng)訪問公司內(nèi)網(wǎng) 181
3.4.5 路由器的包過濾功能 182
集線器和路由器,換個(gè)名字身價(jià)翻倍? 184
第4章 通過接入網(wǎng)進(jìn)入互聯(lián)網(wǎng)內(nèi)部 187
——探索接入網(wǎng)和網(wǎng)絡(luò)運(yùn)營(yíng)商
4.1 ADSL接入網(wǎng)的結(jié)構(gòu)和工作方式 191
4.1.1 互聯(lián)網(wǎng)的基本結(jié)構(gòu)和家庭、公司網(wǎng)絡(luò)是相同的 191
4.1.2 連接用戶與互聯(lián)網(wǎng)的接入網(wǎng) 192
4.1.3 ADSL Modem將包拆分成信元 193
4.1.4 ADSL將信元“調(diào)制”成信號(hào) 197
4.1.5 ADSL通過使用多個(gè)波來(lái)提高速率 200
4.1.6 分離器的作用 201
4.1.7 從用戶到電話局 203
4.1.8 噪聲的干擾 204
4.1.9 通過DSLAM到達(dá)BAS 205
4.2 光纖接入網(wǎng)(FTTH) 206
4.2.1 光纖的基本知識(shí) 206
4.2.2 單模與多模 208
4.2.3 通過光纖分路來(lái)降低成本 213
4.3 接入網(wǎng)中使用的PPP和隧道 217
4.3.1 用戶認(rèn)證和配置下發(fā) 217
4.3.2 在以太網(wǎng)上傳輸PPP消息 219
4.3.3 通過隧道將網(wǎng)絡(luò)包發(fā)送給運(yùn)營(yíng)商 223
4.3.4 接入網(wǎng)的整體工作過程 225
4.3.5 不分配IP地址的無(wú)編號(hào)端口 228
4.3.6 互聯(lián)網(wǎng)接入路由器將私有地址轉(zhuǎn)換成公有地址 228
4.3.7 除PPPoE之外的其他方式 230
4.4 網(wǎng)絡(luò)運(yùn)營(yíng)商的內(nèi)部 233
4.4.1 POP和NOC 233
4.4.2 室外通信線路的連接 236
4.5 跨越運(yùn)營(yíng)商的網(wǎng)絡(luò)包 238
4.5.1 運(yùn)營(yíng)商之間的連接 238
4.5.2 運(yùn)營(yíng)商之間的路由信息交換 239
4.5.3 與公司網(wǎng)絡(luò)中自動(dòng)更新路由表機(jī)制的區(qū)別 241
4.5.4 IX的必要性 242
4.5.5 運(yùn)營(yíng)商如何通過IX互相連接 243
名字叫服務(wù)器,其實(shí)是路由器 246
第5章 服務(wù)器端的局域網(wǎng)中有什么玄機(jī) 249
5.1 Web服務(wù)器的部署地點(diǎn) 253
5.1.1 在公司里部署Web服務(wù)器 253
5.1.2 將Web服務(wù)器部署在數(shù)據(jù)中心 255
5.2 防火墻的結(jié)構(gòu)和原理 256
5.2.1 主流的包過濾方式 256
5.2.2 如何設(shè)置包過濾的規(guī)則 256
5.2.3 通過端口號(hào)限定應(yīng)用程序 260
5.2.4 通過控制位判斷連接方向 260
5.2.5 從公司內(nèi)網(wǎng)訪問公開區(qū)域的規(guī)則 262
5.2.6 從外部無(wú)法訪問公司內(nèi)網(wǎng) 262
5.2.7 通過防火墻 263
5.2.8 防火墻無(wú)法抵御的攻擊 264
5.3 通過將請(qǐng)求平均分配給多臺(tái)服務(wù)器來(lái)平衡負(fù)載 265
5.3.1 性能不足時(shí)需要負(fù)載均衡 265
5.3.2 使用負(fù)載均衡器分配訪問 266
5.4 使用緩存服務(wù)器分擔(dān)負(fù)載 270
5.4.1 如何使用緩存服務(wù)器 270
5.4.2 緩存服務(wù)器通過更新時(shí)間管理內(nèi)容 271
5.4.3 最原始的代理——正向代理 276
5.4.4 正向代理的改良版——反向代理 278
5.4.5 透明代理 279
5.5 內(nèi)容分發(fā)服務(wù) 280
5.5.1 利用內(nèi)容分發(fā)服務(wù)分擔(dān)負(fù)載 280
5.5.2 如何找到最近的緩存服務(wù)器 282
5.5.3 通過重定向服務(wù)器分配訪問目標(biāo) 285
5.5.4 緩存的更新方法會(huì)影響性能 287
當(dāng)通信線路變成局域網(wǎng) 291
第6章 請(qǐng)求到達(dá)Web服務(wù)器,響應(yīng)返回瀏覽器 293
——短短幾秒的“漫長(zhǎng)旅程”迎來(lái)終點(diǎn)
6.1 服務(wù)器概覽 297
6.1.1 客戶端與服務(wù)器的區(qū)別 297
6.1.2 服務(wù)器程序的結(jié)構(gòu) 297
6.1.3 服務(wù)器端的套接字和端口號(hào) 299
6.2 服務(wù)器的接收操作 305
6.2.1 網(wǎng)卡將接收到的信號(hào)轉(zhuǎn)換成數(shù)字信息 305
6.2.2 IP模塊的接收操作 308
6.2.3 TCP模塊如何處理連接包 309
6.2.4 TCP模塊如何處理數(shù)據(jù)包 311
6.2.5 TCP模塊的斷開操作 312
6.3 Web服務(wù)器程序解釋請(qǐng)求消息并作出響應(yīng) 313
6.3.1 將請(qǐng)求的URI轉(zhuǎn)換為實(shí)際的文件名 313
6.3.2 運(yùn)行CGI程序 316
6.3.3 Web服務(wù)器的訪問控制 319
6.3.4 返回響應(yīng)消息 323
6.4 瀏覽器接收響應(yīng)消息并顯示內(nèi)容 323
6.4.1 通過響應(yīng)的數(shù)據(jù)類型判斷其中的內(nèi)容 323
6.4.2 瀏覽器顯示網(wǎng)頁(yè)內(nèi)容!訪問完成! 326
Gateway是通往異世界的入口 328
附錄 330
后記 334
致謝 334
作者簡(jiǎn)介 335