第1章 引言与概论 1
1.1 实验室的重要作用 1
1.2 一系列可能的实验室配备 1
目录 1
1.3 关于模拟 3
1.4 本书的组织 3
2.1 两种类型的支持及其应用 6
2.2 对于网络接入的支持 6
2.3 对于网络编程的支持 6
第2章 单台计算机上的硬件和软件 6
第一部分 单台计算机上的网络编程 6
2.4 建议 7
2.5 小结 7
第3章 使用应用程序的实验 8
3.1 使用单台计算机完成应用程序的实验 8
3.2 使用单台计算机开发和测试网络应用 8
3.3 对应用程序用仿真的互联网进行应力测试 9
3.4 在单台计算机上开发运输协议 11
3.5 小结 11
实验3.1 使用telnet联系一台“命运”服务器 12
实验3.2 使用telnet联系一台Web服务器 14
实验3.3 使用telnet发送一封电子邮件 16
实验3.4 使用ping程序 18
实验3.5 下载并使用分组捕获工具 20
第二部分 在一组共享的工作站上进行网络编程 22
第4章 共享工作站实验室的硬件和软件 22
4.1 共享的结果 22
4.2 共享实验室技术示例 22
4.3 共享实验室的体系结构 23
4.4 在网络课程中使用共享实验室 23
4.5 广播域假设 23
4.6 小结 23
第5章 使用简化的API进行网络编程实验 24
5.1 简介 24
5.3 小结 25
5.2 获得该API软件 25
实验5.1 编译、测试以及扩展范例echo软件 26
实验5.2 编译、测试以及扩展范例chat软件 28
实验5.3 创建一个简单的文件传输服务 30
第6章 使用套接字API进行网络编程实验 32
6.1 简介 32
6.2 套接字的有关信息 32
6.3 关于套接字编程难点的说明 32
6.4 小结 33
实验6.1 编译、链接并运行套接字程序 34
实验6.2 使用套接字编写echo客户机和服务器 36
实验6.3 使用套接字创建一个网络服务器 38
实验6.4 建立一个网络API函数库 41
第7章 并发网络编程实验 43
7.1 简介 43
7.2 小结 43
实验7.1 编写一个并发服务器(线程) 44
实验7.2 创建一个并发文件传输服务器(进程) 46
实验7.3 编制一个多服务的服务器 48
第8章 协议设计实验 50
8.1 简介 50
8.2 对协议进行应力测试 50
8.3 用一个网关仿真因特网 50
8.5 网关的细节 51
8.4 仿真行为 51
8.6 网关注册报文 52
8.7 分组交互 53
8.8 差错处理 54
8.9 网关的语义和默认值 54
8.10 可能的扩充 55
8.11 小结 55
实验8.1 创建一个因特网仿真网关 56
实验8.2 设计一个时钟同步协议 58
实验8.3 设计一个可靠的数据传送协议 60
实验8.4 设计一个滑动窗口协议 62
实验8.5 调试应用协议 64
9.1 简介 66
9.2 困难与回报 66
9.3 小结 66
第9章 有关TCP/IP协议族协议的实验 66
实验9.1 创建一个Time协议的客户机 67
实验9.2 编制一个DNS客户机程序 69
实验9.3 创建一个DHCP客户机 71
10.1 理想的测量实验室 74
10.2 不同于孤立网络的另一种环境 74
10.3 增加的内容 74
第10章 增强的共享实验室中的硬件和软件 74
第三部分 在增强的共享工作站实验室中进行网络测试和分组分析实验 74
10.4 保护运营中的网络 75
10.5 专用网络上的计算机 75
10.6 小结 76
第11章 网络测量实验 77
11.1 简介 77
11.2 测量吞吐率 77
11.3 小结 77
实验11.1 编译和测试ttcp 78
实验11.2 测量10 Mbps和100 Mbps网络的吞吐率 80
实验11.3 比较交换机和集线器的吞吐率 82
12.4 小结 84
12.3 对分组的手工检查 84
第12章 分组捕获及分析实验 84
12.1 简介 84
12.2 混杂模式与集线器 84
实验12.1 捕获并解码以太网的帧 85
实验12.2 对IP首部进行解码 87
实验12.3 对TCP段的首部进行解码 89
实验12.4 编制一个分组分析器 91
13.2 每一层上的协议序列 93
13.3 小结 93
13.1 简介 93
第13章 协议观察实验 93
实验13.1 捕获与重组IP分片 94
实验13.2 从TCP流中提取数据 96
实验13.3 观察并发的TCP连接 98
第四部分 专用内联网实验室中的配置实验 102
第14章 专用内联网实验室中的硬件和软件 102
14.1 专用设施与运营设施 102
14.2 专用内联网实验室的特点 102
14.3 专用实验室中的设施示例 103
14.4 小结 104
15.2 各章的组织 105
15.3 小结 105
15.1 简介 105
第15章 因特网地址配置实验 105
实验15.1 配置IP地址 106
实验15.2 分配固定长度的IP子网地址 108
实验15.3 使用CIDR分配IP地址 110
第16章 Web技术配置实验 112
16.1 简介 112
16.2 Web技术 112
16.3 小结 112
实验16.1 配置一个Apache Web服务器 113
实验16.2 下载并且配置一个Squid高速缓存 115
实验16.3 配置并测试Web负载平衡器 117
第17章 IP路由选择和IP转发实验 119
17.1 简介 119
17.2 间接的与直接的观察 119
17.3 小结 119
实验17.1 使用netstat检查路由表 120
实验17.2 使用SNMP探测路由表 121
实验17.3 配置并运行RIP软件 123
实验17.4 配置并运行OSPF软件 126
第18章 虚拟、受保护的因特网环境实验 128
18.1 简介 128
18.2 灵活的抽象 128
18.3 小结 128
实验18.1 配置DNS服务器 129
实验18.2 安装并配置NAT盒子 131
实验18.3 安装并配置VPN 133
第五部分 在专用实验室中实现协议栈 136
第19章 专用协议开发实验室的硬件和软件 136
19.1 简介 136
19.2 需要两台计算机 136
19.3 实验室中的前端和后端设备 137
19.4 功能需求 137
19.5 体系结构示例 138
19.6 作者实验室的运作方式 139
19.8 实验室软件的组织 141
19.7 自动恢复 141
19.9 复位控制器硬件 142
19.10 体系结构的扩展 144
19.11 虚拟实验室 146
19.12 进一步的细节 146
19.13 小结 146
第20章 协议栈开发实验 147
20.1 简介 147
20.2 建造协议栈的价值 147
20.3 小结 147
实验20.1 与网络设备驱动程序的接口 148
实验20.2 建造IP转发机制 150
实验20.3 实现IP路由器 152
第六部分 在工程实验室中进行网络部件设计 156
第21章 网络系统工程实验室的硬件与软件 156
21.1 网络处理器 156
21.2 所需的设施 156
21.3 典型实验室中的硬件 157
21.4 网络处理器测试台 157
21.5 实验室中的典型软件 158
21.6 与前几种实验室体系结构的关系 159
21.7 小结 159
22.2 小结 160
第22章 网络系统工程实验 160
22.1 简介 160
实验22.1 配置你的账户 161
实验22.2 编译并下载代码到网络处理器 163
实验22.3 在网络处理器上编制一个分组分析器 165
实验22.4 创建一个以太网网桥 168
实验22.5 编制一个IP分片程序 170
实验22.6 编制一个通信量分类程序 172
实验22.7 编制一个最小的MicroACE 174
实验22.8 编制一个分类器微码模块 176
实验22.9 编制微引擎帧转发程序 178