产品特色
编辑推荐
日文版重印32次!
“计算机网络概论”图解趣味版
蹲马桶就能看懂的网络基础知识
《Wireshark网络分析就这么简单》作者林沛满 作序推荐!
本书适合
1. 菜鸟程序员入门进阶
2. 中级程序员查漏补缺
3. 高手程序员向家人(女友、老妈等)普及计算机知识
a.如果你好奇从在浏览器中输入网址到显示出网页内容网络中到底发生了什么
b.如果你想知道网络设备和软件在网络内部是如何工作的
c.如果你已经掌握了一些零散的网络知识但是想要形成完整的知识脉络
d.如果你想在工作和生活中更好地应用网络
那么就该读一读这本书,全面系统地掌握网络基础知识!
以图配文,深入讲解网络基础知识
语言通俗,即使是文科生也能看得懂
特设“网络术语其实很简单”专栏,生动有趣
内容简介
《网络是怎样连接的》以探索之旅的形式,从在浏览器中输入网址开始,一路追踪了到显示出网页的内容为止的整个过程,以图配文,讲解了网络的全貌,并重点介绍了实际的网络设备和软件是如何工作的。目的是帮助读者理解网络的本质意义,理解实际的设备和软件,进而熟练运用网络技术。同时,专设了“网络术语其实很简单”专栏,以对话的形式介绍了一些网络术语的词源,颇为生动有趣。
作者简介
户根勤(作者)
早先从事软件开发,后进入网络行业。曾供职于日本网络设备厂商(外资企业)和国内网络集成商,从事产品开发和技术咨询等工作。在工作之余还进行演讲、写作等活动。1998年离开公司,开始以演讲、写作以及运营论坛为主业。
周自恒(译者)
知名技术图书译者、全栈程序员、自然科学爱好者。初中时曾获得信息学奥赛天津赛区一等奖,曾任某管理咨询公司战略技术总监。
译有《图解CIO工作指南(第4版)》《大数据的冲击》《代码的未来》《30天自制操作系统》《图解密码技术》《家用游戏机简史》《有趣的二进制》等。
目录
第1章 浏览器生成消息 1
——探索浏览器内部
1.1 生成HTTP请求消息 5
1.1.1 探索之旅从输入网址开始 5
1.1.2 浏览器先要解析URL 7
1.1.3 省略文件名的情况 9
1.1.4 HTTP的基本思路 10
1.1.5 生成HTTP请求消息 14
1.1.6 发送请求后会收到响应 20
1.2 向DNS服务器查询Web服务器的IP地址 24
1.2.1 IP地址的基本知识 24
1.2.2 域名和IP地址并用的理由 28
1.2.3 Socket库提供查询IP地址的功能 30
1.2.4 通过解析器向DNS服务器发出查询 31
1.2.5 解析器的内部原理 32
1.3 全世界DNS服务器的大接力 35
1.3.1 DNS服务器的基本工作 35
1.3.2 域名的层次结构 38
1.3.3 寻找相应的DNS服务器并获取IP地址 40
1.3.4 通过缓存加快DNS服务器的响应 44
1.4 委托协议栈发送消息 45
1.4.1 数据收发操作概览 45
1.4.2 创建套接字阶段 48
1.4.3 连接阶段:把管道接上去 50
1.4.4 通信阶段:传递消息 52
1.4.5 断开阶段:收发数据结束 53
怪杰Resolver 55
第2章 用电信号传输TCP/IP数据 57
——探索协议栈和网卡
2.1 创建套接字 61
2.1.1 协议栈的内部结构 61
2.1.2 套接字的实体就是通信控制信息 63
2.1.3 调用socket时的操作 66
2.2 连接服务器 68
2.2.1 连接是什么意思 68
2.2.2 负责保存控制信息的头部 70
2.2.3 连接操作的实际过程 73
2.3 收发数据 75
2.3.1 将HTTP请求消息交给协议栈 75
2.3.2 对较大的数据进行拆分 78
2.3.3 使用ACK号确认网络包已收到 79
2.3.4 根据网络包平均往返时间调整ACK号等待时间 83
2.3.5 使用窗口有效管理ACK号 84
2.3.6 ACK与窗口的合并 87
2.3.7 接收HTTP响应消息 89
2.4 从服务器断开并删除套接字 90
2.4.1 数据发送完毕后断开连接 90
2.4.2 删除套接字 92
2.4.3 数据收发操作小结 93
2.5 IP与以太网的包收发操作 95
2.5.1 包的基本知识 95
2.5.2 包收发操作概览 99
2.5.3 生成包含接收方IP地址的IP头部 102
2.5.4 生成以太网用的MAC头部 106
2.5.5 通过ARP查询目标路由器的MAC地址 108
2.5.6 以太网的基本知识 111
2.5.7 将IP包转换成电或光信号发送出去 114
2.5.8 给网络包再加3个控制数据 116
2.5.9 向集线器发送网络包 120
2.5.10 接收返回包 123
2.5.11 将服务器的响应包从IP传递给TCP 125
2.6 UDP协议的收发操作 128
2.6.1 不需要重发的数据用UDP发送更高效 128
2.6.2 控制用的短数据 129
2.6.3 音频和视频数据 130
插进Socket里的是灯泡还是程序 132
第3章 从网线到网络设备 135
——探索集线器、交换机和路由器
3.1 信号在网线和集线器中传输 139
3.1.1 每个包都是独立传输的 139
3.1.2 防止网线中的信号衰减很重要 140
3.1.3 “双绞”是为了抑制噪声 141
3.1.4 集线器将信号发往所有线路 146
3.2 交换机的包转发操作 149
3.2.1 交换机根据地址表进行转发 149
3.2.2 MAC地址表的维护 153
3.2.3 特殊操作 154
3.2.4 全双工模式可以同时进行发送和接收 155
3.2.5 自动协商:确定最优的传输速率 156
3.2.6 交换机可同时执行多个转发操作 159
3.3 路由器的包转发操作 159
3.3.1 路由器的基本知识 159
3.3.2 路由表中的信息 162
3.3.3 路由器的包接收操作 166
3.3.4 查询路由表确定输出端口 166
3.3.5 找不到匹配路由时选择默认路由 168
3.3.6 包的有效期 169
3.3.7 通过分片功能拆分大网络包 170
3.3.8 路由器的发送操作和计算机相同 172
3.3.9 路由器与交换机的关系 173
3.4 路由器的附加功能 176
3.4.1 通过地址转换有效利用IP地址 176
3.4.2 地址转换的基本原理 178
3.4.3 改写端口号的原因 180
3.4.4 从互联网访问公司内网 181
3.4.5 路由器的包过滤功能 182
集线器和路由器,换个名字身价翻倍? 184
第4章 通过接入网进入互联网内部 187
——探索接入网和网络运营商
4.1 ADSL接入网的结构和工作方式 191
4.1.1 互联网的基本结构和家庭、公司网络是相同的 191
4.1.2 连接用户与互联网的接入网 192
4.1.3 ADSL Modem将包拆分成信元 193
4.1.4 ADSL将信元“调制”成信号 197
4.1.5 ADSL通过使用多个波来提高速率 200
4.1.6 分离器的作用 201
4.1.7 从用户到电话局 203
4.1.8 噪声的干扰 204
4.1.9 通过DSLAM到达BAS 205
4.2 光纤接入网(FTTH) 206
4.2.1 光纤的基本知识 206
4.2.2 单模与多模 208
4.2.3 通过光纤分路来降低成本 213
4.3 接入网中使用的PPP和隧道 217
4.3.1 用户认证和配置下发 217
4.3.2 在以太网上传输PPP消息 219
4.3.3 通过隧道将网络包发送给运营商 223
4.3.4 接入网的整体工作过程 225
4.3.5 不分配IP地址的无编号端口 228
4.3.6 互联网接入路由器将私有地址转换成公有地址 228
4.3.7 除PPPoE之外的其他方式 230
4.4 网络运营商的内部 233
4.4.1 POP和NOC 233
4.4.2 室外通信线路的连接 236
4.5 跨越运营商的网络包 238
4.5.1 运营商之间的连接 238
4.5.2 运营商之间的路由信息交换 239
4.5.3 与公司网络中自动更新路由表机制的区别 241
4.5.4 IX的必要性 242
4.5.5 运营商如何通过IX互相连接 243
名字叫服务器,其实是路由器 246
第5章 服务器端的局域网中有什么玄机 249
5.1 Web服务器的部署地点 253
5.1.1 在公司里部署Web服务器 253
5.1.2 将Web服务器部署在数据中心 255
5.2 防火墙的结构和原理 256
5.2.1 主流的包过滤方式 256
5.2.2 如何设置包过滤的规则 256
5.2.3 通过端口号限定应用程序 260
5.2.4 通过控制位判断连接方向 260
5.2.5 从公司内网访问公开区域的规则 262
5.2.6 从外部无法访问公司内网 262
5.2.7 通过防火墙 263
5.2.8 防火墙无法抵御的攻击 264
5.3 通过将请求平均分配给多台服务器来平衡负载 265
5.3.1 性能不足时需要负载均衡 265
5.3.2 使用负载均衡器分配访问 266
5.4 使用缓存服务器分担负载 270
5.4.1 如何使用缓存服务器 270
5.4.2 缓存服务器通过更新时间管理内容 271
5.4.3 最原始的代理——正向代理 276
5.4.4 正向代理的改良版——反向代理 278
5.4.5 透明代理 279
5.5 内容分发服务 280
5.5.1 利用内容分发服务分担负载 280
5.5.2 如何找到最近的缓存服务器 282
5.5.3 通过重定向服务器分配访问目标 285
5.5.4 缓存的更新方法会影响性能 287
当通信线路变成局域网 291
第6章 请求到达Web服务器,响应返回浏览器 293
——短短几秒的“漫长旅程”迎来终点
6.1 服务器概览 297
6.1.1 客户端与服务器的区别 297
6.1.2 服务器程序的结构 297
6.1.3 服务器端的套接字和端口号 299
6.2 服务器的接收操作 305
6.2.1 网卡将接收到的信号转换成数字信息 305
6.2.2 IP模块的接收操作 308
6.2.3 TCP模块如何处理连接包 309
6.2.4 TCP模块如何处理数据包 311
6.2.5 TCP模块的断开操作 312
6.3 Web服务器程序解释请求消息并作出响应 313
6.3.1 将请求的URI转换为实际的文件名 313
6.3.2 运行CGI程序 316
6.3.3 Web服务器的访问控制 319
6.3.4 返回响应消息 323
6.4 浏览器接收响应消息并显示内容 323
6.4.1 通过响应的数据类型判断其中的内容 323
6.4.2 浏览器显示网页内容!访问完成! 326
Gateway是通往异世界的入口 328
附录 330
后记 334
致谢 334
作者简介 335
《银河系漫游指南》 内容梗概: 这本书将带你踏上一场令人捧腹、充满哲学思辨的宇宙漫游。故事的主人公,一位名叫亚瑟·邓特的普通英国人,在地球被一场突如其来的、为了修建一条超空间快速通道的工程而强制拆除的前一天,被他伪装成一名失业演员的朋友福特·普里弗特所救。福特其实是一名来自“银河系百科全书”的调查员,他带着亚瑟,利用一本名为《银河系漫游指南》的电子书,开始了他们的星际旅程。 在这本小小的指南中,读者将了解到,在广袤的宇宙中,存在着无数奇特而古怪的文明,他们有着令人难以置信的科技、荒诞不经的习俗,以及对生命和宇宙的独特理解。亚瑟和福特,在这趟漫无目的的旅程中,将邂逅形形色色的人物和生物,例如: 银河系总统札佛·毕博布鲁斯: 一个拥有三个脑袋、两只手臂,总是穿着华丽而夸张的服装的无政府主义者,他以其令人震惊的任性和不可预测的行为,领导着整个银河系。他的行为常常令人啼笑皆非,却又在某种程度上揭示了权力运作的荒谬。 特里莉恩: 一位美丽而聪明的女性,她曾是地球上的一个人类,但被札佛在地球被毁灭前夕从一个派对上“顺手”带走。她对亚瑟的出现感到惊讶,但也逐渐接受了与这个来自被摧毁星球的伙伴一起旅行。 马文: 一个患有严重忧郁症的机器人。马文拥有极高的智能,但这种智能却让他深陷于无尽的绝望之中,他总是抱怨、抱怨再抱怨,用他那深沉的嗓音表达他对宇宙的无限厌倦和对生命毫无意义的深刻体会。他时常会对遇到的事情做出无比精准但又极度悲观的预测,成为故事中一个重要的“笑料”来源。 他们的旅程充满了意想不到的转折和令人瞠目结舌的遭遇。他们曾误入一颗名为“史隆”的星球,那里的人类将自己视为宇宙的中心,对其他文明充满了傲慢与偏见。他们还曾在“恶灵之星”遭遇了一场惊心动魄的追逐,不得不依靠指南中的信息才能勉强脱险。 《银河系漫游指南》这本书本身也是故事中一个至关重要的角色。它并非一本传统的书籍,而是一本集知识、警告、甚至是“人生建议”于一体的电子设备。它的每一页都充满了幽默、讽刺和对宇宙运行规律的冷眼旁观。指南中的许多条目,例如“毛巾是漫游者最重要的物品”、“永远不要对一个Vogon人说‘不’”、“永远不要在酒吧里向任何人谈论关于‘四十二’的意义”等等,都成为了贯穿故事的经典梗。 作者道格拉斯·亚当斯用他独特的英式幽默,对人类社会、政治、科技、宗教以及人类在宇宙中的渺小地位进行了一系列辛辣的讽刺。他以一种玩世不恭的态度,探讨了诸如“生命、宇宙以及一切的终极答案”这样的宏大命题,但却给出了一个令人哭笑不得的数字——“四十二”。这种反差,正是本书最大的魅力所在。 亚瑟·邓特,这个被卷入宇宙漩涡的普通人,成为了读者代入故事的窗口。他不像其他角色那样拥有超凡的能力或宏大的目标,他只是一个想找杯好茶、享受平静生活的“凡人”。他的困惑、他的抱怨、他对地球的思念,都让读者感同身受。在一次又一次的危机中,他总是表现得不知所措,但却又意外地凭借着一些生活常识和一点点运气,在险境中生存下来。 这本书的结构松散而跳跃,经常会突然从一个场景切换到另一个场景,又或者插入一段关于某个奇特生物或宇宙现象的科普(尽管这些科普大多是荒诞不经的)。这种非线性叙事方式,反而更加符合宇宙本身那种无序而又充满惊喜的本质。 《银河系漫游指南》不仅仅是一本科幻小说,它更是一部关于存在主义、荒诞哲学以及人类在宏大宇宙中渺小但又独特的存在的寓言。它用一种轻松幽默的方式,促使读者思考:在无垠的宇宙中,我们究竟意味着什么?我们的存在是否有意义?而那些看似荒谬的事件,是否又在某种程度上反映了我们自己生活的某些侧面? 这本书的魅力在于它永不枯竭的想象力,它对细节的巧妙把握,以及它那种“一切皆有可能”的宇宙观。它提醒我们,即使在最绝望的时刻,也可能隐藏着一线生机,而最重要的,或许是永远不要忘记带上你的毛巾,以及保持一颗乐观(或者至少是麻木)的心。 主要人物简介: 亚瑟·邓特: 一个普通得不能再普通的人类,对宇宙的种种怪诞现象感到困惑和不满,唯一的愿望是回到地球喝杯热茶。 福特·普里弗特: 来自“银河系百科全书”的调查员,亚瑟的朋友,对地球的了解仅限于“大概无害”,是亚瑟在宇宙中的向导。 札佛·毕博布鲁斯: 银河系总统,一个极其自大、反复无常但又颇具魅力的疯子,拥有三颗脑袋和两只手臂。 特里莉恩: 一个精明强干的女性,曾经是地球人,后来跟随札佛在宇宙中游荡。 马文: 一个患有严重忧郁症的机器人,拥有卓越的智能,但常常因此感到痛苦和绝望。 风格特点: 英式幽默: 贯穿全书的冷幽默、讽刺和荒诞的笑话。 哲学思辨: 以轻松的方式探讨生命、宇宙和存在的意义。 天马行空的想象: 创造出各种奇特而令人难忘的宇宙设定和生物。 非线性叙事: 故事结构松散,充满意想不到的转折。 《银河系漫游指南》是一部经典之作,它以其独特的视角和永不褪色的幽默感,赢得了全球无数读者的喜爱。它不仅仅是一本小说,更是一种思考宇宙和人生方式的态度。