Windows网络与通信程序设计(第2版) PDF格式高清电子书免费下载

Windows网络与通信程序设计(第2版)

作者 王艳平
出版社 人民邮电出版社
出版日期 2009-01-01
页数 479
格式 Paper book / ebook (PDF)
ISBN 9787115192097
价格 59
  • 内容简介
  • 图书目录
  • 免费下载

出版信息

ISBN:9787115192097
语言:简体中文
包装/印刷类型:1
开本:16开
出版时间:2009-01-01
页数:479

内容简介

本书将编程方法、网络协议和应用实例有机结合起来,详细阐明Windows网络编程的各方面内容。本书首先介绍Windows平台上进行网络编程的基础知识,包括网络硬件、术语、协议、Winsock编程接口和各种I/O方法等。然后通过具体实例详细讲述时下流行的高性能可伸缩服务器设计、IP多播和Internet广播、P2P程序设计、原始套接字、SPI、协议驱动的开发和原始以太数据的发送、ARP欺骗技术、LAN和WAN上的扫描和侦测技术、个人防火墙与网络封包截获技术等。最后讲述IP帮助函数。 本书结构紧凑、内容由浅入深,是学习Windows网络与通信程序设计的理想书籍。   本书将编程方法、网络协议和应用实例有机结合起来,详细阐明Windows网络编程的各方面内容。本书首先介绍Windows平台上进行网络编程的基础知识,包括网络硬件、术语、协议、Winsock编程接口和各种I/O方法等;然后通过具体实例详细讲述当前流行的高性能可伸缩服务器设计、IP多播和Internet广播、P2P程序设计、原始套接字、SPI、协议驱动的开发和原始以太数据的发送、ARP欺骗技术、LAN和WAN上的扫描和侦测技术、个人防火墙与网络封包截获技术等;最后讲述IP帮助函数和E-mail的开发方法。  本书结构紧凑,内容由浅入深,是学习Windows网络与通信程序设计的理想书籍。

图书目录

目 录第1章 计算机网络基础 11.1 网络的概念和网络的组成 11.2 计算机网络参考模型 21.2.1 协议层次 21.2.2 TCP/IP参考模型 21.2.3 应用层(Application Layer) 31.2.4 传输层(Transport Layer) 31.2.5 网络层(Network Layer) 31.2.6 链路层(Link Layer) 41.2.7 物理层(Physical Layer) 41.3 网络程序寻址方式 41.3.1 MAC地址 41.3.2 IP地址 51.3.3 子网寻址 61.3.4 端口号 81.3.5 网络地址转换(NAT) 81.4 网络应用程序设计基础 101.4.1 网络程序体系结构 101.4.2 网络程序通信实体 111.4.3 网络程序开发环境 12第2章 Winsock编程接口 132.1 Winsock库 132.1.1 Winsock库的装入和释放 132.1.2 封装CInitSock类 142.2 Winsock的寻址方式和字节顺序 142.2.1 Winsock寻址 142.2.2 字节顺序 162.2.3 获取地址信息 172.3 Winsock编程详解 202.3.1 Winsock编程流程 202.3.2 典型过程图 232.3.3 TCP服务器和客户端程序举例 242.3.4 UDP编程 262.4 网络对时程序实例 282.4.1 时间协议(Time Protocol) 282.4.2 TCP/IP实现代码 29第3章 Windows套接字I/O模型 313.1 套接字模式 313.1.1 阻塞模式 313.1.2 非阻塞模式 313.2 选择(select)模型 323.2.1 select函数 323.2.2 应用举例 333.3 WSAAsyncSelect模型 363.3.1 消息通知和WSAAsyncSelect函数 363.3.2 应用举例 373.4 WSAEventSelect模型 403.4.1 WSAEventSelect函数 403.4.2 应用举例 423.4.3 基于WSAEventSelect模型的服务器设计 443.5 重叠(Overlapped)I/O模型 533.5.1 重叠I/O函数 533.5.2 事件通知方式 563.5.3 基于重叠I/O模型的服务器设计 56第4章 IOCP与可伸缩网络程序 674.1 完成端口I/O模型 674.1.1 什么是完成端口(completion port)对象 674.1.2 使用IOCP的方法 674.1.3 示例程序 694.1.4 恰当地关闭IOCP 724.2 Microsoft扩展函数 724.2.1 GetAcceptExSockaddrs函数 734.2.2 TransmitFile函数 734.2.3 TransmitPackets函数 744.2.4 ConnectEx函数 754.2.5 DisconnectEx函数 764.3 可伸缩服务器设计注意事项 764.3.1 内存资源管理 764.3.2 接受连接的方法 774.3.3 恶意客户连接问题 774.3.4 包重新排序问题 784.4 可伸缩服务器系统设计实例 784.4.1 CIOCPServer类的总体结构 784.4.2 数据结构定义和内存池方案 824.4.3 自定义帮助函数 854.4.4 开启服务和停止服务 884.4.5 I/O处理线程 934.4.6 用户接口和测试程序 99第5章 互联网广播和IP多播 1005.1 套接字选项和I/O控制命令 1005.1.1 套接字选项 1005.1.2 I/O控制命令 1025.2 广播通信 1035.3 IP多播(Multicasting) 1055.3.1 多播地址 1055.3.2 组管理协议(IGMP) 1055.3.3 使用IP多播 1065.4 基于IP多播的组讨论会实例 1105.4.1 定义组讨论会协议 1105.4.2 线程通信机制 1115.4.3 封装CGroupTalk类 1115.4.4 程序界面 117第6章 原始套接字 1216.1 使用原始套接字 1216.2 ICMP编程 1216.2.1 ICMP与校验和的计算 1216.2.2 Ping程序实例 1246.2.3 路由跟踪 1266.3 使用IP头包含选项 1296.3.1 IP数据报格式 1296.3.2 UDP数据报格式 1316.3.3 原始UDP封包发送实例 1336.4 网络嗅探器开发实例 1346.4.1 嗅探器设计原理 1356.4.2 网络嗅探器的具体实现 1366.4.3 侦听局域网内的密码 1386.5 TCP通信开发实例 1406.5.1 创建一个原始套接字,并设置IP头选项。 1406.5.2 构造IP头和TCP头 1406.5.3 发送原始套接字数据报 1426.5.4 接收数据 146第7章 Winsock服务提供者接口(SPI) 1477.1 SPI概述 1477.2 Winsock协议目录 1487.2.1 协议特性 1497.2.2 使用Winsock API函数枚举协议 1507.2.3 使用Winsock SPI函数枚举协议 1517.3 分层服务提供者(LSP) 1537.3.1 运行原理 1537.3.2 安装LSP 1547.3.3 移除LSP 1587.3.4 编写LSP 1597.3.5 LSP实例 1617.4 基于SPI的数据报过滤实例 1657.5 基于Winsock的网络聊天室开发 1717.5.1 服务端 1717.5.2 客户端 1717.5.3 聊天室程序的设计说明 1727.5.4 核心代码分析 172第8章 Windows网络驱动接口标准(NDIS)和协议驱动的开发 1768.1 核心层网络驱动 1768.1.1 Windows 2000及其后产品的网络体系结构 1768.1.2 NDIS网络驱动程序 1778.1.3 网络驱动开发环境 1788.2 WDM驱动开发基础 1818.2.1 UNICODE字符串 1818.2.2 设备对象 1818.2.3 驱动程序的基本结构 1838.2.4 I/O请求包(I/O request packet,IRP)和I/O堆栈 1838.2.5 完整驱动程序示例 1868.2.6 扩展派遣接口 1888.2.7 应用举例(进程诊测实例) 1918.3 开发NDIS网络驱动预备知识 1988.3.1 中断请求级别(Interrupt Request Level,IRQL) 1988.3.2 旋转锁(Spin Lock) 1988.3.3 双链表 1998.3.4 封包结构 1998.4 NDIS协议驱动 2008.4.1 注册协议驱动 2008.4.2 打开下层协议驱动的适配器 2018.4.3 协议驱动的封包管理 2028.4.4 在协议驱动中接收数据 2038.4.5 从协议驱动发送封包 2048.5 NDIS协议驱动开发实例 2048.5.1 总体设计 2048.5.2 NDIS协议驱动的初始化、注册和卸载 2068.5.3 下层NIC的绑定和解除绑定 2098.5.4 发送数据 2178.5.5 接收数据 2198.5.6 用户IOCTL处理 225第9章 网络扫描与检测技术 2339.1 网络扫描基础知识 2339.1.1 以太网数据帧 2339.1.2 ARP 2349.1.3 ARP格式 2369.1.4 SendARP函数 2379.2 原始以太封包的发送 2389.2.1 安装协议驱动 2389.2.2 协议驱动用户接口 2389.2.3 发送以太封包的测试程序 2449.3 局域网计算机扫描 2459.3.1 管理原始ARP封包 2469.3.2 ARP扫描示例 2499.4 互联网计算机扫描 2539.4.1 端口扫描原理 2539.4.2 半开端口扫描实现 2549.5 ARP欺骗原理与实现 2599.5.1 IP欺骗的用途和实现原理 2599.5.2 IP地址冲突 2609.5.3 ARP欺骗示例 261第10章 点对点(P2P)网络通信技术 26410.1 P2P穿越概述 26410.2 一般概念 26510.2.1 NAT术语 26510.2.2 中转 26510.2.3 反向连接 26610.3 UDP打洞 26710.3.1 中心服务器 26710.3.2 建立点对点会话 26710.3.3 公共NAT后面的节点 26710.3.4 不同NAT后面的节点 26810.3.5 多级NAT后面的节点 26910.3.6 UDP空闲超时 27010.4 TCP打洞 27110.4.1 套接字和TCP端口重用 27110.4.2 打开点对点的TCP流 27110.4.3 应用程序看到的行为 27210.4.4 同步TCP打开 27310.5 Internet点对点通信实例 27310.5.1 总体设计 27310.5.2 定义P2P通信协议 27410.5.3 客户方程序 27510.5.4 服务器方程序 28710.5.5 测试程序 291第11章 核心层网络封包截获技术 29411.1 Windows网络数据和封包过滤概述 29411.1.1 Windows网络系统体系结构图 29411.1.2 用户模式下的网络数据过滤 29511.1.3 内核模式下的网络数据过滤 29611.2 中间层网络驱动PassThru 29611.2.1 PassThru NDIS中间层驱动简介 29611.2.2 编译和安装PassThru驱动 29711.3 扩展PassThru NDIS IM驱动——添加IOCTL接口 29711.3.1 扩展之后的PassThru驱动(PassThruEx)概况 29711.3.2 添加基本的DeviceIoControl接口 29811.3.3 添加绑定枚举功能 30211.3.4 添加ADAPT结构的引用计数 30711.3.5 适配器句柄的打开/关闭函数 30811.3.6 句柄事件通知 31511.3.7 查询和设置适配器的OID信息 31511.4 扩展PassThru NDIS IM驱动——添加过滤规则 32311.4.1 需要考虑的事项 32311.4.2 过滤相关的数据结构 32411.4.3 过滤列表 32611.4.4 网络活动状态 32711.4.5 IOCTL控制代码 32811.4.6 过滤数据 33111.5 核心层过滤实例 339第12章 Windows网络防火墙开发技术 34212.1 防火墙技术概述 34212.2 金羽(Phoenix)个人防火墙浅析 34312.2.1 金羽(Phoenix)个人防火墙简介 34312.2.2 金羽(Phoenix)个人防火墙总体设计 34412.2.3 金羽(Phoenix)个人防火墙总体结构 34512.3 开发前的准备 34512.3.1 常量的定义 34612.3.2 访问规则 34812.3.3 会话结构 34812.3.4 文件结构 34912.3.5 UNICODE支持 35512.4 应用层DLL模块 35612.4.1 DLL工程框架 35612.4.2 共享数据和IO控制 36212.4.3 访问控制列表ACL(Access List) 36412.4.4 查找应用程序访问权限的过程 36712.4.5 类的接口——检查函数 37012.5 核心层SYS模块 37312.6 主模块工程 37512.6.1 I/O控制类 37512.6.2 主应用程序类 37712.6.3 主对话框中的属性页 38012.6.4 主窗口类 38112.7 防火墙页面 38312.7.1 网络访问监视页面 38312.7.2 应用层过滤规则页面 38712.7.3 核心层过滤规则页面 39712.7.4 系统设置页面 403第13章 IP帮助函数 40613.1 IP配置信息 40613.1.1 获取网络配置信息 40613.1.2 管理网络接口 40813.1.3 管理IP地址 41213.2 获取网络状态信息 41513.2.1 获取TCP连接表 41513.2.2 获取UDP监听表 41813.2.3 获取IP统计数据 42013.3 路由管理 42713.3.1 获取路由表 42713.3.2 管理特定路由 43113.3.3 修改默认网关的例子 43213.4 ARP表管理 43313.4.1 获取ARP表 43313.4.2 添加ARP入口 43413.4.3 删除ARP入口 43413.4.4 打印ARP表的例子 43413.5 进程网络活动监视实例 43813.5.1 获取通信的进程终端 43813.5.2 Netstate源程序代码 439第14章 Email协议及其编程 44414.1 概述 44414.2 电子邮件介绍 44514.2.1 电子邮件Internet的地址 44514.2.2 Internet邮件系统 44514.2.3 电子邮件信头的结构及分析 44614.3 SMTP原理 44814.3.1 SMTP原理分析 44814.3.2 SMTP工作机制 44914.3.3 SMTP命令码和工作原理 44914.3.4 SMTP通信模型 45014.3.5 SMTP的命令和应答 45114.4 POP3协议原理 45214.4.1 POP3协议简介 45214.4.2 POP3工作原理 45314.4.3 POP3命令原始码 45414.4.4 POP3会话实例 45914.5 实例分析与程序设计 46014.5.1 总界面设计 46014.5.2 SMTP客户端设计 46114.5.3 POP3客户端设计 473

点击展开

点击收起

Windows网络与通信程序设计(第2版) PDF格式高清电子书免费下载

抱歉,暂无数据!催一下?我有资源 ?

看了 Windows网络与通信程序设计(第2版) 的用户也看了: