相信不少人在求职时,都看过这样的要求:

  • 精通 TCP/IP,熟练使用 Socket 进行网路编程

面试中也会经常被问到:TCP/IP 协议是什么、三次握手四次挥手等问题。

TCP/IP 为什么这么重要?TCP/IP 协议是互联网的基石,作者鲍勃·卡恩和文顿·格雷被并成为“互联网之父”,30 多年过去了,它仍然是全球互联网得以稳定运行的保证。不管你是做开发、运维还是信息安全的,TCP/IP 协议都是你绕不过去的一环,程序员需要像学会看书写字一样,学会这个技能。

今天小编分享一份 TCP/IP 的学习资料。

本书最新版进行了扩充,以体现计算机网络技术的最新发展,全书含有七大部分共30章和7个附录:第一部分介绍一些基本概念和基础底层技术:第二部分介绍网络层协议:第三部分介绍运输层协议:第四部分介绍应用层协议:第五部分介绍下一代协议,甲IPv6协议:第六部分介绍网络安全问题;第七部分给出了7个附录。每章的最后都有实践安排,其中的第

第一部分 引言和底层技术

由于篇幅限制小编只把部分知识点截图出来粗略的介绍!有需要的程序猿(媛)可以帮忙转发+关注,添加VX【msbjy2019】即可获取哦

第1章 引言 3

1.1 发展简史 3

  • 1.1.1 ARPANET 3
  • 1.1.2 因特网的诞生 4
  • 1.1.3 传输控制协议/网际协议(TCP/IP) 4
  • 1.1.4 MILNET 4
  • 1.1.5 CSNET 5
  • 1.1.6 NSFNET 5
  • 1.1.7 ANSNET 5
  • 1.1.8 今日的因特网 5
  • 1.1.9 主干ISP 6
  • 1.1.10 地区ISP 6
  • 1.1.11 本地ISP 6
  • 1.1.12 大事记 7
  • 1.1.13 因特网的发展 7

1.2 协议和标准 7

  • 1.2.1 协议 7
  • 1.2.2 标准 8

 

1.3 标准化组织 8

  • 1.3.1 标准创建委员会 9
  • 1.3.2 论坛 10
  • 1.3.3 管理机构 10

1.4 因特网标准 10

  • 1.4.1 成熟度 11
  • 1.4.2 需求级别 11

 

1.5 因特网的管理机构 12

  • 1.5.1 因特网协会(ISOC) 13
  • 1.5.2 因特网体系结构研究委员会(IAB) 13
  • 1.5.3 因特网工程部(IETF) 13
  • 1.5.4 因特网研究部(IRTF) 13
  • 1.5.5 因特网赋号管理局和因特网名字与号码指派公司 14
  • 1.5.6 网络信息中心(NIC) 14

1.6 深入阅读 14

  • 1.6.1 书籍和论文 14
  • 1.6.2 网站 14

1.7 重要术语 14

1.8 本章小结 15

 

第2章 OSI模型和TCP/IP协议族 17

2.1 协议分层 17

  • 2.1.1 分层结构 18
  • 2.1.2 服务 18

2.2 OSI模型 19

  • 2.2.1 分层的体系结构 19
  • 2.2.2 层与层之间的通信 20
  • 2.2.3 封装 21
  • 2.2.4 OSI模型中的各层 21
  • 2.2.5 OSI各层小结 24

 

2.3 TCP/IP协议族 25

  • 2.3.1 OSI和TCP/IP协议族的比较 25
  • 2.3.2 TCP/IP协议族的分层 26

2.4 编址 30

  • 2.4.1 物理地址 31
  • 2.4.2 逻辑地址 32

 

2.5 深入阅读 35

  • 2.5.1 参考书 35
  • 2.5.2 RFC 35

2.6 重要术语 35

2.7 本章小结 36

第3章 底层技术 39

3.1 有线局域网 39

  • 3.1.1 IEEE标准 40
  • 3.1.2 帧格式 40
  • 3.1.3 编址 42
  • 3.1.4 以太网的发展历程 43
  • 3.1.5 标准以太网 43
  • 3.1.6 快速以太网 47
  • 3.1.7 吉比特以太网 48
  • 3.1.8 10G以太网 49

 

3.2 无线局域网 50

  • 3.2.1 IEEE 802.11 50
  • 3.2.2 编址机制 55
  • 3.2.3 蓝牙 57

3.3 点到点广域网 59

  • 3.3.1 56K调制解调器 59
  • 3.3.2 DSL技术 60
  • 3.3.3 电缆调制解调器 61
  • 3.3.4 T线 63
  • 3.3.5 SONET 64
  • 3.3.6 PPP 64

 

3.4 交换广域网 65

  • 3.4.1 X.25 65
  • 3.4.2 帧中继 66
  • 3.4.3 ATM 66

3.5 连接设备 70

  • 3.5.1 转发器 70
  • 3.5.2 网桥 71
  • 3.5.3 路由器 73

 

3.6 深入阅读 74

3.7 重要术语 74

3.8 本章小结 75

第二部分 网 络 层

由于篇幅限制小编只把部分知识点截图出来粗略的介绍!有需要的程序猿(媛)可以帮忙转发+关注,添加VX【msbjy2019】即可获取哦

第4章 网络层简介 81

4.1 简介 81

4.2 交换 82

  • 4.2.1 电路交换 82
  • 4.2.2 分组交换 83

4.3 网络层的分组交换 83

  • 4.3.1 无连接服务 83
  • 4.3.2 面向连接的服务 85

 

4.4 网络层的服务 88

  • 4.4.1 一个例子 89
  • 4.4.2 逻辑编址 90
  • 4.4.3 源计算机提供的服务 90
  • 4.4.4 各路由器提供的服务 91
  • 4.4.5 目的计算机提供的服务 92

 

4.5 其他与网络层相关的问题 93

  • 4.5.1 差错控制 93
  • 4.5.2 流量控制 94
  • 4.5.3 拥塞控制 94

 

4.6 进一步阅读 96

4.7 重要术语 96

4.8 本章小结 96

第5章 IPv4地址 98

5.1 引言 98

  • 5.1.1 地址空间 99
  • 5.1.2 记法 99
  • 5.1.3 地址段 101
  • 5.1.4 运算 101

5.2 分类编址 104

  • 5.2.1 分类 104
  • 5.2.2 地址类和地址块 106
  • 5.2.3 两级编址 107
  • 5.2.4 一个例子 110
  • 5.2.5 三级编址:子网划分 112
  • 5.2.6 构造超网 114

 

5.3 无分类编址 115

  • 5.3.1 可变长度地址块 116
  • 5.3.2 两级编址 116
  • 5.3.3 地址块的分配 120
  • 5.3.4 子网划分 121

5.4 特殊地址 125

  • 5.4.1 特殊地址块 125
  • 5.4.2 每个地址块中的特殊地址 126

 

5.5 NAT 127

  • 5.5.1 地址转换 127
  • 5.5.2 转换表 128

5.6 深入阅读 129

  • 5.6.1 参考书 129
  • 5.6.2 RFC 130

 

5.7 重要术语 130

5.8 本章小结 130

第6章 IP分组的交付和转发 135

6.1 交付 135

  • 6.1.1 直接交付 135
  • 6.1.2 间接交付 136

6.2 转发 136

  • 6.2.1 基于目的地址的转发 136
  • 6.2.2 基于标记的转发 148

 

6.3 路由器的结构 150

  • 6.3.1 构件 150

6.4 深入阅读 153

  • 6.4.1 参考书 153
  • 6.4.2 RFC 153

 

6.5 重要术语 153

6.6 本章小结 153

第7章 网际协议版本4(IPv4) 156

7.1 引言 156

7.2 数据报 157

 

7.3 分片 161

  • 7.3.1 最大传送单元(MTU) 161
  • 7.3.2 与分片有关的字段 162

7.4 选项 165

  • 7.4.1 格式 165
  • 7.4.2 选项类型 166

 

7.5 检验和 171

  • 7.5.1 在发送端计算检验和 172
  • 7.5.2 在接收端计算检验和 172
  • 7.5.3 IP分组中的检验和 173

7.6 IP在ATM上运行 174

  • 7.6.1 ATM广域网 174
  • 7.6.2 信元的路由选择 175

 

7.7 安全性 176

  • 7.7.1 安全问题 176
  • 7.7.2 IPSec 176

7.8 IP软件包 177

  • 7.8.1 首部添加模块 178
  • 7.8.2 处理模块 178
  • 7.8.3 队列 179
  • 7.8.4 路由表 179
  • 7.8.5 转发模块 179
  • 7.8.6 MTU表 179
  • 7.8.7 分片模块 180
  • 7.8.8 重装表 181
  • 7.8.9 重装模块 181

 

7.9 深入阅读 182

  • 7.9.1 参考书 182
  • 7.9.2 RFC 182

7.10 重要术语 182

7.11 本章小结 183

第8章 地址解析协议(ARP) 186

8.1 地址映射 186

  • 8.1.1 静态映射 187
  • 8.1.2 动态映射 187

8.2 ARP协议 187

  • 8.2.1 分组格式 189
  • 8.2.2 封装 190
  • 8.2.3 操作 190
  • 8.2.4 代理ARP 192

 

8.3 ATMARP 193

  • 8.3.1 分组格式 193
  • 8.3.2 ATMARP的操作 194
  • 8.3.3 逻辑IP子网(LIS) 197

8.4 ARP软件包 197

  • 8.4.1 高速缓存表 198
  • 8.4.2 队列 199
  • 8.4.3 输出模块 199
  • 8.4.4 输入模块 200
  • 8.4.5 高速缓存控制模块 201
  • 8.4.6 更多的例子 203

 

8.5 深入阅读 204

  • 8.5.1 参考书 204
  • 8.5.2 RFC 205

8.6 重要术语 205

8.7 本章小结 205

第9章 网际控制报文协议(ICMP) 207

9.1 引言 207

9.2 报文 208

  • 9.2.1 报文格式 208
  • 9.2.2 差错报告报文 209
  • 9.2.3 查询 214
  • 9.2.4 检验和 216

 

9.3 排错工具 217

  • 9.3.1 ping 217
  • 9.3.2 traceroute 219

 

9.4 ICMP软件包 221

  • 9.4.1 输入模块 222
  • 9.4.2 输出模块 222

9.5 深入阅读 223

  • 9.5.1 参考书 223
  • 9.5.2 RFC 224

9.6 重要术语 224

9.7 本章小结 224

第10章 移动IP 227

10.1 编址 227

  • 10.1.1 固定主机 227
  • 10.1.2 移动主机 228

10.2 代理 228

  • 10.2.1 归属代理 229
  • 10.2.2 外地代理 229

 

10.3 三个阶段 229

  • 10.3.1 代理发现 230
  • 10.3.2 登记 231
  • 10.3.3 数据传送 233

10.4 移动IP的低效率 234

  • 10.4.1 两次穿越 234
  • 10.4.2 三角路由选择 235
  • 10.4.3 解决方法 235

10.5 深入阅读 235

  • 10.5.1 参考书 235
  • 10.5.2 RFC 236

 

10.6 重要术语 236

10.7 本章小结 236

第11章 单播路由选择协议(RIP、OSPF和BGP) 238

11.1 引言 238

  • 11.1.1 代价或度量 239
  • 11.1.2 静态路由表还是动态路由表 239
  • 11.1.3 路由选择协议 239

11.2 域内和域间路由选择 239

11.3 距离向量路由选择 240

  • 11.3.1 Bellman-Ford算法 241
  • 11.3.2 距离向量路由选择算法 242
  • 11.3.3 计数到无穷大 246

 

11.4 RIP 248

  • 11.4.1 RIP的报文格式 249
  • 11.4.2 请求和响应 250
  • 11.4.3 RIP的计时器 251
  • 11.4.4 RIP版本2 252
  • 11.4.5 封装 253

11.5 链路状态路由选择 253

  • 11.5.1 构造路由表 254

 

11.6 OSPF 257

  • 11.6.1 区域 257
  • 11.6.2 度量 258
  • 11.6.3 链路的类型 258
  • 11.6.4 图形表示法 260
  • 11.6.5 OSPF分组 260
  • 11.6.6 链路状态更新分组 261
  • 11.6.7 其他分组 268
  • 11.6.8 封装 270
  • 11.7 路径向量路由选择 270
  • 11.7.1 可达性 271
  • 11.7.2 路由表 272

11.8 BGP 273

  • 11.8.1 自治系统的类型 273
  • 11.8.2 路径属性 274
  • 11.8.3 BGP会话 274
  • 11.8.4 外部BGP和内部BGP 274
  • 11.8.5 分组的类型 275
  • 11.8.6 分组格式 275
  • 11.8.7 封装 278

 

11.9 深入阅读 278

  • 11.9.1 参考书 278
  • 11.9.2 RFC 278

11.10 重要术语 279

11.11 本章小结 279

第12章 多播和多播路由选择协议 283

12.1 引言 283

  • 12.1.1 单播 284
  • 12.1.2 多肉 284
  • 12.1.3 广播 286

 

12.2 多播地址 286

  • 12.2.1 IPv4中的多播地址 286
  • 12.2.2 选择多播地址 289
  • 12.2.3 数据链路层多播分组的交付 289

12.3 IGMP 291

  • 12.3.1 组管理 291
  • 12.3.2 IGMP报文 292
  • 12.3.3 在主机上应用IGMP协议 294
  • 12.3.4 IGMP协议应用于路由器 297
  • 12.3.5 IGMP在转发中的作用 299
  • 12.3.6 变量和计时器 300
  • 12.3.7 封装 301
  • 12.3.8 与老版本之间的兼容 301

 

12.4 多播路由选择 301

  • 12.4.1 最佳路由选择:最短路径树 302

12.5 路由选择协议 304

  • 12.5.1 多播链路状态路由选择:MOSPF 304
  • 12.5.2 多播距离向量路由选择 305
  • 12.5.3 DVMRP 309
  • 12.5.4 CBT 309
  • 12.5.5 PIM 311

 

12.6 MBONE 311

12.7 深入阅读 312

  • 12.7.1 参考书 312
  • 12.7.2 RFC 312

12.8 重要术语 313

12.9 本章小结 313

第三部分 运 输 层

由于篇幅限制小编只把部分知识点截图出来粗略的介绍!有需要的程序猿(媛)可以帮忙转发+关注,添加VX【msbjy2019】即可获取哦

第13章 运输层简介 319

  • 13.1 运输层服务 319
  • 13.1.1 进程到进程的通信 319
  • 13.1.2 编址:端口号 320
  • 13.1.3 封装和解封 322
  • 13.1.4 复用和分用 323
  • 13.1.5 流量控制 323
  • 13.1.6 差错控制 325
  • 13.1.7 流量控制和差错控制的组合 326
  • 13.1.8 拥塞控制 327
  • 13.1.9 无连接的和面向连接的服务 328

 

13.2 运输层协议 331

  • 13.2.1 简单协议 331
  • 13.2.2 停止等待协议 333
  • 13.2.3 返回N协议 336
  • 13.2.4 选择重传协议 342
  • 13.2.5 双向协议:捎带 347

 

13.3 深入阅读 348

13.4 重要术语 348

13.5 本章小结 349

第14章 用户数据报协议(UDP) 352

14.1 引言 352

14.2 用户数据报 353

14.3 UDP服务 354

  • 14.3.1 进程到进程的通信 355
  • 14.3.2 无连接服务 355
  • 14.3.3 流量控制 355
  • 14.3.4 差错控制 356
  • 14.3.5 拥塞控制 357
  • 14.3.6 封装和解封 357
  • 14.3.7 排队 358
  • 14.3.8 复用和分用 359
  • 14.3.9 UDP与简单协议的比较 360

 

14.4 UDP的应用 360

  • 14.4.1 UDP的特点 360
  • 14.4.2 典型应用 362

14.5 UDP软件包 362

  • 14.5.1 控制块表 362
  • 14.5.2 输入队列 362
  • 14.5.3 控制块模块 363
  • 14.5.4 输入模块 363
  • 14.5.5 输出模块 364
  • 14.5.6 举例 364

14.6 深入阅读 366

  • 14.6.1 参考书 366
  • 14.6.2 RFC 366

 

14.7 重要术语 366

14.8 本章小结 366

由于篇幅限制小编只把部分知识点截图出来粗略的介绍!有需要的程序猿(媛)可以帮忙转发+关注,添加VX【msbjy2019】即可获取哦