图书介绍

Windows网络与通信程序设计2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

Windows网络与通信程序设计
  • 王艳平,张越编著 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:7115141509
  • 出版时间:2006
  • 标注页数:432页
  • 文件大小:139MB
  • 文件页数:446页
  • 主题词:窗口软件,Windows-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Windows网络与通信程序设计PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

目录1

第1章 计算机网络基础1

1.1 网络的概念和网络的组成1

1.2 计算机网络参考模型2

1.2.1 协议层次2

1.2.2 TCP/IP参考模型2

1.2.3 应用层(Application Layer)3

1.2.4 传输层(Transport Layer)3

1.2.5 网络层(Network Layer)3

1.2.6 链路层(Link Layer)4

1.2.7 物理层(Physical Layer)4

1.3 网络程序寻址方式4

1.3.1 MAC地址4

1.3.2 IP地址5

1.3.3 子网寻址6

1.3.5 网络地址转换(NAT)8

1.3.4 端口号8

1.4 网络应用程序设计基础10

1.4.1 网络程序体系结构10

1.4.2 网络程序通信实体11

1.4.3 网络程序开发环境12

第2章 Winsock编程接口13

2.1 Winsock库13

2.1.1 Winsock库的装入和释放13

2.2.1 Winsock寻址14

2.1.2 封装CInitSock类14

2.2 Winsock的寻址方式和字节顺序14

2.2.2 字节顺序16

2.2.3 获取地址信息17

2.3 Winsock编程详解20

2.3.1 Winsock编程流程20

2.3.2 典型过程图23

2.3.3 TCP服务器和客户端程序举例24

2.3.4 UDP编程26

2.4 网络对时程序实例28

2.4.1 时间协议(Time Protoco1)28

2.4.2 TCP/IP实现代码29

第3章 Windows套接字I/O模型31

3.1 套接字模式31

3.1.1 阻塞模式31

3.1.2 非阻塞模式31

3.2 选择(select)模型32

3.2.1 select函数32

3.2.2 应用举例33

3.3 WSAAsyncSelect模型36

3.3.1 消息通知和WSAAsyncSelect函数36

3.3.2 应用举例37

3.4 WSAEventSelect模型40

3.4.1 WSAEventSelect函数40

3.4.2 应用举例42

3.4.3 基于WSAEventSelect模型的服务器设计44

3.5 重叠(Overlapped)I/O模型53

3.5.1 重叠I/O函数53

3.5.2 事件通知方式56

3.5.3 基于重叠I/O模型的服务器设计56

第4章 IOCP与可伸缩网络程序67

4.1 完成端口I/O模型67

4.1.1 什么是完成端口(completionport)对象67

4.1.2 使用IOCP的方法67

4.1.3 示例程序69

4.1.4 恰当地关闭IOCP72

4.2 Microsoft扩展函数72

4.2.1 GetAcceptExSockaddrs函数73

4.2.2 TransmitFile函数73

4.2.3 TransmitPackets函数74

4.2.4 ConnectEx函数75

4.3.1 内存资源管理76

4.2.5 DisconnectEx函数76

4.3 可伸缩服务器设计注意事项76

4.3.2 接受连接的方法77

4.3.3 恶意客户连接问题77

4.3.4 包重新排序问题78

4.4 可伸缩服务器系统设计实例78

4.4.1 CIOCPServer类的总体结构78

4.4.2 数据结构定义和内存池方案82

4.4.3 自定义帮助函数85

4.4.4 开启服务和停止服务88

4.4.5 I/O处理线程93

4.4.6 用户接口和测试程序99

第5章 互联网广播和IP多播100

5.1 套接字选项和I/O控制命令100

5.1.1 套接字选项100

5.1.2 I/O控制命令102

5.2 广播通信103

5.3 IP多播(Multicasting)105

5.3.1 多播地址105

5.3.2 组管理协议(IGMP)105

5.3.3 使用IP多播106

5.4 基于IP多播的组讨论会实例110

5.4.1 定义组讨论会协议110

5.4.2 线程通信机制111

5.4.3 封装CGroupTalk类111

5.4.4 程序界面117

第6章 原始套接字121

6.1 使用原始套接字121

6.2 ICMP编程121

6.2.1 ICMP与校验和的计算121

6.2.2 Ping程序实例124

6.2.3 路由跟踪126

6.3.1 IP数据报格式129

6.3 使用IP头包含选项129

6.3.2 UDP数据报格式131

6.3.3 原始UDP封包发送实例133

6.4 网络嗅探器开发实例134

6.4.1 嗅探器设计原理135

6.4.2 网络嗅探器的具体实现136

6.4.3 侦听局域网内的密码138

第7章 Winsock服务提供者接口(SPI)140

7.1 SPI概述140

7.2 Winsock协议目录141

7.2.1 协议特性142

7.2.2 使用Winsock API函数枚举协议143

7.2.3 使用Winsock SPI函数枚举协议144

7.3 分层服务提供者(LSP)146

7.3.1 运行原理146

7.3.2 安装LSP147

7.3.3 移除LSP151

7.3.4 编写LSP152

7.3.5 LSP实例154

7.4 基于SPI的数据报过滤实例158

第8章 Windows网络驱动接口标准(NDIS)和协议驱动的开发165

8.1 核心层网络驱动165

8.1.1 Windows 2000及其后产品的网络体系结构165

8.1.2 NDIS网络驱动程序166

8.1.3 网络驱动开发环境167

8.2.2 设备对象170

8.2 WDM驱动开发基础170

8.2.1 UNICODE字符串170

8.2.3 驱动程序的基本结构172

8.2.4 I/O请求包(I/O request packet,IRP)和I/O堆栈172

8.2.5 完整驱动程序示例175

8.2.6 扩展派遣接口177

8.2.7 应用举例(进程诊测实例)180

8.3.2 旋转锁(Spin Lock)187

8.3.1 中断请求级别(Interrupt Request Level,IRQL)187

8.3 开发NDIS网络驱动预备知识187

8.3.3 双链表188

8.3.4 封包结构188

8.4 NDIS协议驱动189

8.4.1 注册协议驱动189

8.4.2 打开下层协议驱动的适配器190

8.4.3 协议驱动的封包管理191

8.4.4 在协议驱动中接收数据192

8.5.1 总体设计193

8.4.5 从协议驱动发送封包193

8.5 NDIS协议驱动开发实例193

8.5.2 NDIS协议驱动的初始化、注册和卸载195

8.5.3 下层NIC的绑定和解除绑定198

8.5.4 发送数据206

8.5.5 接收数据208

8.5.6 用户IOCTL处理214

9.1.1 以太网数据帧222

第9章 网络扫描与检测技术222

9.1 网络扫描基础知识222

9.1.2 ARP223

9.1.3 ARP格式225

9.1.4 SendARP函数226

9.2 原始以太封包的发送227

9.2.1 安装协议驱动227

9.2.2 协议驱动用户接口227

9.2.3 发送以太封包的测试程序233

9.3 局域网计算机扫描234

9.3.1 管理原始ARP封包235

9.3.2 ARP扫描示例238

9.4 互联网计算机扫描242

9.4.1 端口扫描原理242

9.4.2 半开端口扫描实现243

9.5.1 IP欺骗的用途和实现原理248

9.5 ARP欺骗原理与实现248

9.5.2 IP地址冲突249

9.5.3 ARP欺骗示例250

第10章 点对点(P2P)网络通信技术253

10.1 P2P穿越概述253

10.2 一般概念254

10.2.1 NAT术语254

10.2.2 中转254

10.2.3 反向连接255

10.3 UDP打洞256

10.3.1 中心服务器256

10.3.2 建立点对点会话256

10.3.3 公共NAT后面的节点256

10.3.4 不同NAT后面的节点257

10.3.5 多级NAT后面的节点258

10.3.6 UDP空闲超时259

10.4.2 打开点对点的TCP流260

10.4 TCP打洞260

10.4.1 套接字和TCP端口重用260

10.4.3 应用程序看到的行为261

10.4.4 同步TCP打开262

10.5 Internet点对点通信实例262

10.5.1 总体设计262

10.5.2 定义P2P通信协议263

10.5.3 客户方程序264

10.5.4 服务器方程序276

10.5.5 测试程序280

第11章 核心层网络封包截获技术283

11.1 Windows网络数据和封包过滤概述283

11.1.1 Windows网络系统体系结构图283

11.1.2 用户模式下的网络数据过滤284

11.2 中间层网络驱动PassThru285

11.2.1 PassThru NDIS中间层驱动简介285

11.1.3 内核模式下的网络数据过滤285

11.2.2 编译和安装PassThru驱动286

11.3 扩展PassThru NDIS IM驱动——添加IOCTL接口286

11.3.1 扩展之后的PassThru驱动(PassThruEx)概况286

11.3.2 添加基本的DeviceIoControl接口287

11.3.3 添加绑定枚举功能291

11.3.4 添加ADAPT结构的引用计数296

11.3.5 适配器句柄的打开/关闭函数297

11.3.6 句柄事件通知304

11.3.7 查询和设置适配器的OID信息304

11.4 扩展PassThruNDIS IM驱动——添加过滤规则312

11.4.1 需要考虑的事项312

11.4.2 过滤相关的数据结构313

11.4.3 过滤列表315

11.4.4 网络活动状态316

11.4.5 IOCTL控制代码317

11.4.6 过滤数据320

11.5 核心层过滤实例328

第12章 Windows网络防火墙开发技术331

12.1 防火墙技术概述331

12.2 金羽(Phoenix)个人防火墙浅析332

12.2.1 金羽(Phoenix)个人防火墙简介332

12.2.2 金羽(Phoenix)个人防火墙总体设计333

12.2.3 金羽(Phoenix)个人防火墙总体结构334

12.3 开发前的准备334

12.3.1 常量的定义335

12.3.2 访问规则337

12.3.3 会话结构337

12.3.4 文件结构338

12.3.5 UNICODE支持344

12.4 应用层DLL模块345

12.4.1 DLL工程框架345

12.4.2 共享数据和IO控制351

12.4.3 访问控制列表ACL(Access List)353

12.4.4 查找应用程序访问权限的过程356

12.4.5 类的接口——检查函数359

12.5 核心层SYS模块362

12.6 主模块工程364

12.6.1 I/O控制类364

12.6.2 主应用程序类366

12.6.3 主对话框中的属性页369

12.6.4 主窗口类370

12.7 防火墙页面372

12.7.1 网络访问监视页面372

12.7.2 应用层过滤规则页面376

12.7.3 核心层过滤规则页面386

12.7.4 系统设置页面392

第13章 IP帮助函数395

13.1 IP配置信息395

13.1.1 获取网络配置信息395

13.1.2 管理网络接口397

13.1.3 管理IP地址401

13.2 获取网络状态信息404

13.2.1 获取TCP连接表404

13.2.2 获取UDP监听表407

13.2.3 获取IP统计数据409

13.3 路由管理416

13.3.1 获取路由表416

13.3.2 管理特定路由420

13.3.3 修改默认网关的例子421

13.4 ARP表管理422

13.4.1 获取ARP表422

13.4.2 添加ARP入口423

13.4.3 删除ARP入口423

13.4.4 打印ARP表的例子423

13.5 进程网络活动监视实例427

13.5.1 获取通信的进程终端427

13.5.2 Netstate源程序代码428

热门推荐