关于本书的内容有任何问题,请联系 张斌
目 录 第 1篇 基础协议 第 1章 Internet与网络通信模型概述 1 1.1 Internet概述 1 1.1.1 Internet的发展历史 1 1.1.2 Internet的管理机构 3 1.1.3 国内Internet网络建设的现状 5 1.2 网络通信模型和协议簇 6 1.2.1 OSI参考模型 6 1.2.2 TCP/IP协议簇体系结构 11 习题 12 第 2章 TCP/IP协议簇及其应用 14 2.1 IP 14 2.1.1 IP基础 14 2.1.2 IP的关键机制 16 2.2 TCP和UDP 17 2.2.1 TCP的网络功能 17 2.2.2 TCP段结构 18 2.2.3 TCP的基本工作流程 20 2.2.4 UDP 22 2.3 其他常用协议 23 2.3.1 ARP 23 2.3.2 ICMP 26 2.3.3 Telnet 28 2.3.4 FTP 29 2.3.5 SMTP和POP3 31 习题 32 第3章 IP地址和子网规划 34 3.1 IP地址 34 3.1.1 IP地址的结构 34 3.1.2 IP地址的分类 35 3.1.3 特殊的IP地址 37 3.2 子网划分 38 3.2.1 子网 38 3.2.2 子网掩码 39 3.2.3 CIDR表示法 45 3.2.4 单播、组播和广播地址 46 习题 49 第 2篇 网络编程 第4章 网络编程基础 50 4.1 网络编程相关的基本概念 50 4.1.1 网络编程与进程通信 50 4.1.2 Internet中网间进程的标识 53 4.1.3 网络协议的特征 56 4.1.4 高效的用户数据报协议 59 4.1.5 可靠的传输控制协议 59 4.2 三类网络编程 61 4.2.1 基于TCP/IP协议栈的网络编程 61 4.2.2 基于WWW应用的网络编程 62 4.2.3 基于.NET框架的Web Services网络编程 62 4.3 客户机/服务器交互模式 65 4.3.1 网络应用软件的地位和功能 65 4.3.2 客户机/服务器模式 66 4.3.3 客户机与服务器的特性 67 4.3.4 容易混淆的术语 67 4.3.5 客户机与服务器的通信过程 68 4.3.6 网络协议与C/S模式的关系 69 4.3.7 错综复杂的C/S交互 69 4.3.8 服务器如何同时为多个客户机服务 70 4.3.9 标识一个特定服务 71 4.4 P2P模式 72 4.4.1 P2P技术的兴起 72 4.4.2 P2P的定义和特征 73 4.4.3 P2P的发展 73 4.4.4 P2P的关键技术 74 4.4.5 P2P系统的应用与前景 74 习题 75 第5章 Socket编程基础 76 5.1 Socket网络编程接口的产生与发展 76 5.1.1 Socket编程接口起源于UNIX操作系统 76 5.1.2 Socket编程接口在Windows和Linux操作系统中得到继承和发展 77 5.2 Socket的工作原理和基本概念 77 5.2.1 Socket协议的工作原理 77 5.2.2 什么是Socket 78 5.2.3 Socket的服务方式和类型 78 5.3 WinSock编程基础 79 5.3.1 构建WinSock应用程序框架 79 5.3.2 IP地址的表示形式 82 5.4 面向连接的Socket编程 84 5.4.1 面向连接的Socket通信流程 84 5.4.2 socket()函数 85 5.4.3 bind()函数 86 5.4.4 listen()函数 87 5.4.5 accept()函数 88 5.4.6 recv()函数 90 5.4.7 send()函数 91 5.4.8 closesocket()函数 93 5.4.9 shutdown()函数 94 5.4.10 connect()函数 94 5.4.11 TCP Socket服务器应用程序编程实例 95 5.4.12 TCP Socket客户端应用程序编程实例 100 5.5 面向非连接的Socket编程 104 5.5.1 面向非连接的Socket通信流程 104 5.5.2 sendto()函数 105 5.5.3 recvfrom()函数 106 5.6 Socket选项 108 5.6.1 调用getsockopt()函数获取Socket选项 108 5.6.2 调用setsockopt()函数设置Socket选项 111 习题 113 第6章 探测网络中的在线设备 114 6.1 获取本地计算机的网络信息 114 6.1.1 使用ipconfig命令获取本地网络信息 114 6.1.2 获取本地网络信息的开发接口IP Helper API 115 6.1.3 获取本地网络适配器信息 116 6.1.4 获取本地主机名、域名和DNS服务器信息 120 6.1.5 获取本地计算机网络接口的基本信息 124 6.1.6 获取本地计算机IP地址表 127 6.1.7 添加和删除IP地址 130 6.2 扫描子网中的地址 135 6.2.1 计算指定子网内包含的所有IP地址 135 6.2.2 实现ping的功能 139 6.2.3 扫描子网 146 习题 154 第7章 NetBIOS网络编程技术 156 7.1 NetBIOS协议及应用 156 7.1.1 NetBIOS协议 156 7.1.2 使用NBTSTAT命令 159 7.2 NetBIOS开发接口 160 7.2.1 NetBIOS操作 160 7.2.2 NCB结构体 161 7.2.3 其他常用NetBIOS结构体 165 7.2.4 Netbios()函数 167 7.2.5 获取LANA上的所有NetBIOS名字 168 7.2.6 获取网络适配器上的MAC地址 172 7.3 在程序中实现NBTSTAT命令的功能 174 7.3.1 本实例的工作原理 174 7.3.2 定义的结构体 175 7.3.3 为获取NetBIOS信息而定义的函数 175 7.3.4 实现NBTSTAT命令功能的主函数 180 习题 181 第8章 高级Socket编程技术 182 8.1 Socket编程模型概述 182 8.2 阻塞与非阻塞模式Socket编程 184 8.2.1 设置非阻塞模式Socket 184 8.2.2 非阻塞模式服务器应用程序编程实例 185 8.2.3 非阻塞模式客户端应用程序编程实例 189 8.2.4 基于非阻塞模式的多线程服务器应用程序编程实例 192 8.3 基于Select模型的Socket编程 195 8.3.1 select()函数 195 8.3.2 基于Select模型的服务器应用程序实例 196 8.4 基于WSAAsyncSelect模型的Socket编程 203 8.4.1 WSAAsyncSelect()函数 203 8.4.2 创建窗口 204 8.4.3 窗口例程 207 8.4.4 基于WSAAsyncSelect模型的服务器编程 208 8.5 基于WSAEventSelect模型的Socket编程 213 8.5.1 WSAEventSelect()函数 213 8.5.2 创建和管理事件对象 214 8.5.3 WSAWaitForMultipleEvents()函数 215 8.5.4 WSAEnumNetworkEvents()函数 216 8.5.5 基于WSAEventSelect模型的服务器编程 216 8.6 基于重叠I/O模型的Socket编程 221 8.6.1 WSASocket()函数 221 8.6.2 调用WSASend()函数发送数据 222 8.6.3 调用WSARecv()函数接收数据 223 8.6.4 GetOverlappedResult()函数 224 8.6.5 使用事件通知来管理重叠I/O操作 224 8.6.6 使用完成例程来管理重叠I/O操作 227 8.7 基于完成端口模型的Socket编程 231 8.7.1 完成端口模型的工作原理 231 8.7.2 创建完成端口对象 232 8.7.3 等待重叠I/O的操作结果 233 8.7.4 基于完成端口模型的服务器应用程序实例 234 习题 240 第9章 基于WinPcap技术的网络数据包捕获、过滤和分析技术 242 9.1 WinPcap技术基础 242 9.1.1 WinPcap的体系结构 242 9.1.2 NIC驱动器和NDIS 243 9.1.3 网络组包过滤(NPF)模块 244 9.1.4 捕获数据包的原理和步骤 246 9.2 下载和安装WinPcap开发包 247 9.2.1 下载WinPcap 247 9.2.2 安装WinPcap 249 9.2.3 源代码的目录结构 250 9.3 在Visual C++中使用WinPcap技术 251 9.3.1 环境配置 251 9.3.2 获取与网络适配器绑定的设备列表 252 9.3.3 获取网络适配器的高级属性信息 255 9.3.4 打开网络适配器并实现抓包功能 258 9.3.5 不使用事件处理器进行抓包 262 9.3.6 过滤数据包 265 9.3.7 分析数据包 266 习题 271 第3篇 实例应用 第 10章 设计局域网探测器 273 10.1 局域网探测器的主要功能 273 10.2 基础模块设计 274 10.2.1 基础函数 274 10.2.2 本地主机类CLocalhost 277 10.2.3 设备类CDevice 279 10.2.4 子网类CSubnet 279 10.3 系统主界面设计 289 10.3.1 系统主界面中包含的控件 289 10.3.2 设计菜单项 290 10.4 加载和退出主界面 291 10.4.1 加载主界面的代码实现 291 10.4.2 在文本编辑框中输出描述信息 295 10.4.3 自动调整控件的大小 296 10.4.4 退出系统并保存自定义子网 297 10.5 管理子网 297 10.5.1 添加和编辑子网 297 10.5.2 删除子网 301 10.6 扫描指定的子网 302 10.6.1 设计执行扫描子网操作的对话框 303 10.6.2 启动子网扫描 305 10.7 检测子网的状态 305 10.7.1 设计检测子网状态的对话框 306 10.7.2 启动状态检测 308 第 11章 设计基于P2P技术的BT下载工具 310 11.1 P2P技术的工作原理和应用 310 11.1.1 P2P技术的工作原理 310 11.1.2 P2P网络模型 312 11.1.3 BT下载 313 11.1.4 FTKernelAPI兼容BT协议网络内核库 315 11.2 系统主界面设计 317 11.2.1 系统主界面中包含的控件 317 11.2.2 设计菜单项 318 11.2.3 设计工具栏 318 11.3 加载主窗口 320 11.3.1 加载主窗口的代码实现 321 11.3.2 在StartContext()函数中初始化FTKernelAPI环境 322 11.3.3 在InitNatTunnel()函数中初始化穿透内网的操作 326 11.4 实现BT下载 328 11.4.1 打开种子文件 328 11.4.2 开始下载 337 11.4.3 停止下载 342 11.4.4 显示下载进度 343 11.4.5 删除文件 347 11.4.6 打开目录 348
本书主要内容包括:第1章 网络工程概述、第2章 用户需求分析、第3章 网络结构设计、第4章 网络路由技...
本书由浅入深地介绍了网络工程设计与系统集成的原理、方法和技术。首先介绍了网络设计与系统集成的概念、技术和理...
本书系统地介绍了计算机网络技术的基本原理和基于GNS3 网络模拟器的实用操作技术。全书共分为10 章,主要...
本书以通俗的语言、丰富的实例,详细介绍了ASP.NET 4.0网站开发技术。全书共分为17章,主要内容包括...
本书基于网络工程和应用实际需求,以广泛使用的Red Hat Enterprise Linux 5为例介绍网...
本书详细介绍openEuler的基本概念和基础操作。全书共11章,分别为绪论、认识openEuler、Shel...
本书基于openEuler(22.03 LTS SP3版)国产操作系统和OpenStack(Train版)云计...
本书是《Linux网络操作系统项目教程(RHEL 8/CentOS 8)(微课版)(第4版)》的国产操作系...
本书是《网络服务器搭建、配置与管理——Linux(RHEL 8/CentOS 8)(微课版)(第4版)》的国产...
本书对接世界技能大赛要求,以目前被广泛应用的Windows Server为例,采用教、学、做相结合的模式,着眼...
我要评论