![]()
内容推荐 本书遵循理论与实践相结合的教学目的,以实例讲解在Windows环境下如何开发网络应用程序的方法。全书共分7章:第1章介绍网络编程的一些基本概念;第2章介绍套接字的基本概念以及Windows Socket的内容;第3~5章分别介绍流式套接字、数据报套接字和原始套接字的编程原理,并用实例详细介绍如何开发相应的网络应用程序;第6章介绍常见的应用层协议(如FTP、SMTP、HTTP、MQTT)和WinInet的内容,并用实例描述如何编写基于应用层协议的网络应用程序;第7章介绍使用广泛的WinPcap的概念,以及如何用WinPcap开发相关网络应用程序。本书的特点是有大量的实例源代码及详细解析。 本书主要供普通高校计算机、信息安全、通信工程等专业的师生使用,也可供对网络编程感兴趣的各类人员自学使用。 目录 第1章 网络编程基础 1.1 计算机网络基础 1.1.1 计算机协议及协议分层 1.1.2 网络寻址方式 1.2 网络应用程序特点及类型 1.3 网络通信模型 1.4 客户端/服务器模型 1.4.1 客户端和服务器的关系 1.4.2 服务器的关键点 1.5 其他常见通信模型 1.6 网络数据 1.6.1 字节顺序 1.6.2 结构的对齐 1.7 NetBIOS 1.8 编程实现计算机网络基本信息查询 1.8.1 问题 1.8.2 实现方法 1.8.3 具体实现 1.9 习题 第2章 套接字基础 2.1 TCP/IP协议软件接口 2.2 套接字 2.2.1 套接字编程接口的起源与发展 2.2.2 套接字的抽象概念 2.2.3 套接字接口的特点和内容 2.3 Windows套接字 2.3.1 Windows Sockets规范 2.3.2 WinSock头文件和库文件 2.3.3 WinSock API 2.3.4 WinSock初始化 2.3.5 错误检查和处理 2.3.6 WinSock的地址描述 2.3.7 创建套接字 2.4 套接字选项和I/O控制命令 2.4.1 套接字选项 2.4.2 I/O控制命令 2.5 套接字的I/O模式 2.5.1 网络通信中的I/O等待 2.5.2 套接字的I/O模式 2.6 习题 第3章 流式套接字编程 3.1 TCP传输协议 3.1.1 TCP报文格式 3.1.2 TCP协议的传输特点 3.1.3 TCP连接的建立与关闭 3.2 流式套接字的编程模型 3.2.1 流式套接字的通信流程 3.2.2 流式套接字的编程模式 3.3 相关套接字函数 3.3.1 创建和关闭套接字 3.3.2 绑定地址 3.3.3 监听套接字 3.3.4 连接套接字 3.3.5 数据通信 3.4 阻塞流式套接字编程实例 3.4.1 问题 3.4.2 实现方法 3.4.3 基于阻塞流式套接字的服务器实现 3.4.4 基于阻塞流式套接字的客户端实现 3.5 非阻塞流式套接字编程实例 3.5.1 问题 3.5.2 实现方法 3.5.3 基于非阻塞流式套接字的服务器实现 3.5.4 基于非阻塞流式套接字的客户端实现 3.6 Windows下的多线程编程 3.6.1 线程的创建和终止 3.6.2 线程的同步 3.6.3 同步对象 3.7 基于流式套接字支持多客户端的编程实例 3.7.1 问题 3.7.2 实现方法 3.7.3 基于阻塞流式套接字的多线程服务器的实现 3.7.4 基于阻塞流式套接字的多线程客户端的实现 3.8 习题 第4章 数据报套接字编程 4.1 UDP用户数据报协议 4.1.1 UDP报文格式 4.1.2 UDP协议的传输特点 4.2 数据报套接字的编程模型 4.2.1 数据报套接字的通信流程 4.2.2 数据报套接字的编程模式 4.3 相关套接字函数 4.3.1 创建和关闭套接字 4.3.2 绑定地址 4.3.3 数据通信 4.4 数据报套接字编程实例 4.4.1 问题 4.4.2 实现方法 4.4.3 数据报套接字的服务器应用程序的实现 4.4.4 数据报套接字的客户端应用程序的实现 4.4.5 连接模式下数据报套接字的客户端应用程序的实现 4.5 数据报套接字广播通信编程实例 4.5.1 问题 4.5.2 实现方法 4.5.3 数据报套接字广播通信的服务器应用程序的实现 4.5.4 数据报套接字广播通信的客户端应用程序的实现 4.6 数据报套接字通信可靠性的提高 4.6.1 数据报套接字的不可靠问题 4.6.2 判断服务器是否启动 4.6.3 处理传输中数据报丢失的问题 4.6.4 处理接收到的干扰数据 4.6.5 流量溢出问题 4.7 习题 第5章 原始套接字编程 5.1 原始套接字简介 5.1.1 原始套接字和标准套接字的差别 5.1.2 原始套接字的功能 5.1.3 原始套接字的应用场合 5.2 原始套接字的编程模型 5.2.1 原始套接字的通信流程 5.2.2 原始套接字的编程模式 5.3 相关套接字函数 5.3.1 创建和关闭套接字 5.3.2 绑定地址 5.3.3 数据通信 5.4 通过原始套接字实现网络数据包捕获实例 5.4.1 问题 5.4.2 实现方法 5.4.3 IP协议介绍 5.4.4 实现网络数据包捕获应用程序 5.5 通过原始套接字实现主机连通性检测实例 5.5.1 问题 5.5.2 实现方法 5.5.3 ICMP协议介绍 5.5.4 实现主机连通性检测应用程序 5.6 习题 第6章 应用层网络编程 6.1 应用层协议 6.1.1 FTP协议 6.1.2 SMTP协议 6.1.3 POP3协议 6.1.4 HTTP协议 6.1.5 MQTT协议 6.2 WinInet 6.2.1 HINTERNET句柄 6.2.2 WinInet函数 6.3 Internet应用相关类 6.3.1 CInternetSession类 6.3.2 CFtpConnection类 6.3.3 CHttpConnection类 6.3.4 CFtpFileFind类 6.4 下载HTTP资源编程实例 6.4.1 问题 6.4.2 实现方法 6.4.3 下载HTTP资源 |