图书介绍

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

Windows网络与通信程序设计 第3版
  • 陈香凝,王烨阳,陈婷婷,张铮编著 著
  • 出版社: 北京:人民邮电出版社
  • ISBN:9787115441713
  • 出版时间:2017
  • 标注页数:463页
  • 文件大小:108MB
  • 文件页数:479页
  • 主题词:Windows操作系统-程序设计

PDF下载


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

下载说明

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

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

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

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

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

图书目录

第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.4 端口号8

1.3.5 网络地址转换(NAT)8

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

1.4.1 网络程序体系结构10

1.4.2 网络程序通信实体11

1.4.3 网络程序开发环境11

第2章 Winsock编程接口13

2.1 Winsock库13

2.1.1 Winsock库的装入和释放13

2.1.2 封装CInitSock类14

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

2.2.1 Winsock寻址14

2.2.2 字节顺序15

2.2.3 获取地址信息16

2.3 Winsock编程详解19

2.3.1 Winsock编程流程19

2.3.2 典型过程图22

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

2.3.4 UDP编程25

2.4 网络对时程序实例27

2.4.1 时间协议(Time Protocol)27

2.4.2 TCP/IP实现代码27

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

3.1 套接字模式29

3.1.1 阻塞模式29

3.1.2 非阻塞模式29

3.2 选择(select)模型30

3.2.1 select函数30

3.2.2 应用举例31

3.3 WSAAsyncSelect模型33

3.3.1 消息通知和WSAAsync Select函数34

3.3.2 应用举例34

3.4 WSAEventSelect模型37

3.4.1 WSAEventSelect函数37

3.4.2 应用举例38

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

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

3.5.1 重叠I/O函数48

3.5.2 事件通知方式50

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

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

4.1 完成端口I/O模型60

4.1.1 什么是完成端口(completion port)对象60

4.1.2 使用IOCP的方法60

4.1.3 示例程序62

4.1.4 恰当地关闭IOCP64

4.2 扩展函数65

4.2.1 GetAcceptExSockaddrs函数65

4.2.2 TransmitFile函数66

4.2.3 TransmitPackets函数67

4.2.4 ConnectEx函数67

4.2.5 DisconnectEx函数68

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

4.3.1 内存资源管理68

4.3.2 接受连接的方法69

4.3.3 恶意客户连接问题69

4.3.4 包重新排序问题69

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

4.4.1 CIOCPServer类的总体结构70

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

4.4.3 自定义帮助函数76

4.4.4 开启服务和停止服务78

4.4.5 I/O处理线程82

4.4.6 用户接口和测试程序87

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

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

5.1.1 套接字选项88

5.1.2 I/O控制命令90

5.2 广播通信91

5.3 IP多播(Multicasting)92

5.3.1 多播地址92

5.3.2 组管理协议(IGMP)93

5.3.3 使用IP多播93

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

5.4.1 定义组讨论会协议98

5.4.2 线程通信机制98

5.4.3 封装CGroupTalk类98

5.4.4 程序界面103

第6章 原始套接字106

6.1 使用原始套接字106

6.2 ICMP编程106

6.2.1 ICMP与校验和的计算107

6.2.2 Ping程序实例109

6.2.3 路由跟踪111

6.3 使用IP头包含选项113

6.3.1 IP数据报格式113

6.3.2 UDP数据报格式115

6.3.3 原始UDP封包发送实例117

6.4 网络嗅探器开发实例118

6.4.1 嗅探器设计原理118

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

6.4.3 侦听局域网内的密码121

6.5 TCP通信开发实例122

6.5.1 创建一个原始套接字并设置IP头选项122

6.5.2 构造IP头和TCP头123

6.5.3 发送原始套接字数据报124

6.5.4 接收数据127

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

7.1 SPI概述128

7.2 Winsock协议目录129

7.2.1 协议特性130

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

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

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

7.3.1 运行原理133

7.3.2 安装LSP134

7.3.3 移除LSP138

7.3.4 编写LSP139

7.3.5 LSP实例140

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

7.5 基于Winsock的网络聊天室开发149

7.5.1 服务端149

7.5.2 客户端149

7.5.3 聊天室程序的设计说明149

7.5.4 核心代码分析150

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

8.1 核心层网络驱动153

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

8.1.2 NDIS网络驱动程序154

8.1.3 网络驱动开发环境155

8.2 WDM驱动开发基础158

8.2.1 UNICODE字符串158

8.2.2 设备对象158

8.2.3 驱动程序的基本结构160

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

8.2.5 完整驱动程序示例163

8.2.6 扩展派遣接口165

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

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

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

8.3.2 旋转锁(Spin Lock)173

8.3.3 双链表173

8.3.4 封包结构174

8.4 NDIS协议驱动175

8.4.1 注册协议驱动175

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

8.4.3 协议驱动的封包管理177

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

8.4.5 从协议驱动发送封包178

8.5 NDIS协议驱动开发实例179

8.5.1 总体设计179

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

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

8.5.4 发送数据190

8.5.5 接收数据191

8.5.6 用户IOCTL处理196

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

9.1 网络扫描基础知识203

9.1.1 以太网数据帧203

9.1.2 ARP204

9.1.3 ARP格式206

9.1.4 SendARP函数207

9.2 原始以太封包的发送207

9.2.1 安装协议驱动208

9.2.2 协议驱动用户接口208

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

9.3 局域网计算机扫描214

9.3.1 管理原始ARP封包214

9.3.2 ARP扫描示例217

9.4 互联网计算机扫描220

9.4.1 端口扫描原理220

9.4.2 半开端口扫描实现221

9.5 ARP欺骗原理与实现225

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

9.5.2 IP地址冲突226

9.5.3 ARP欺骗示例227

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

10.1 NAT穿越概述230

10.2 一般概念231

10.2.1 NAT术语231

10.2.2 中转231

10.2.3 反向连接232

10.3 UDP打洞232

10.3.1 中心服务器232

10.3.2 建立点对点会话233

10.3.3 公共NAT后面的节点233

10.3.4 不同NAT后面的节点234

10.3.5 多级NAT后面的节点235

10.3.6 UDP空闲超时236

10.4 TCP打洞236

10.4.1 套接字和TCP端口重用236

10.4.2 打开点对点的TCP流237

10.4.3 应用程序看到的行为238

10.4.4 同步TCP打开238

10.5 Internet点对点通信实例239

10.5.1 总体设计239

10.5.2 定义P2P通信协议239

10.5.3 客户方程序240

10.5.4 服务器方程序250

10.5.5 测试程序253

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

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

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

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

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

11.2 中间层网络驱动PassThru258

11.2.1 PassThruNDIS中间层驱动简介258

11.2.2 编译和安装PassThru驱动259

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

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

11.3.2 添加基本的DeviceIoControl接口260

11.3.3 添加绑定枚举功能264

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

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

11.3.6 句柄事件通知274

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

11.4 扩展PassThru NDIS IM驱动——添加过滤规则281

11.4.1 需要考虑的事项282

11.4.2 过滤相关的数据结构282

11.4.3 过滤列表284

11.4.4 网络活动状态285

11.4.5 IOCTL控制代码285

11.4.6 过滤数据288

11.5 核心层过滤实例295

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

12.1 防火墙技术概述297

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

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

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

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

12.3 开发前的准备300

12.3.1 常量的定义300

12.3.2 访问规则302

12.3.3 会话结构303

12.3.4 文件结构303

12.3.5 UNICODE支持308

12.4 应用层DLL模块309

12.4.1 DLL工程框架309

12.4.2 共享数据和IO控制313

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

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

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

12.5 核心层SYS模块322

12.6 主模块工程324

12.6.1 I/O控制类324

12.6.2 主应用程序类326

12.6.3 主对话框中的属性页328

12.6.4 主窗口类329

12.7 防火墙页面331

12.7.1 网络访问监视页面331

12.7.2 应用层过滤规则页面334

12.7.3 核心层过滤规则页面342

12.7.4 系统设置页面347

第13章 IP帮助函数350

13.1 IP配置信息350

13.1.1 获取网络配置信息350

13.1.2 管理网络接口351

13.1.3 管理IP地址355

13.2 获取网络状态信息357

13.2.1 获取TCP连接表358

13.2.2 获取UDP监听表360

13.2.3 获取IP统计数据362

13.3 路由管理368

13.3.1 获取路由表368

13.3.2 管理特定路由371

13.3.3 修改默认网关的例子371

13.4 ARP表管理372

13.4.1 获取ARP表372

13.4.2 添加ARP入口373

13.4.3 删除ARP入口373

13.4.4 打印ARP表的例子373

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

13.5.1 获取通信的进程终端377

13.5.2 Netstate源程序代码378

第14章 E-mail协议及其编程382

14.1 概述382

14.2 电子邮件介绍383

14.2.1 电子邮件Internet的地址383

14.2.2 Internet邮件系统383

14.2.3 电子邮件的信头结构及分析384

14.3 SMTP协议原理介绍386

14.3.1 SMTP的原理分析386

14.3.2 SMTP工作机制386

14.3.3 SMTP协议命令码和工作原理387

14.3.4 SMTP协议通信模型388

14.3.5 SMTP协议的命令和应答389

14.4 POP3协议原理介绍390

14.4.1 POP3协议简介390

14.4.2 POP3工作原理391

14.4.3 POP3命令原始码392

14.4.4 POP3会话实例397

14.5 实例分析与程序设计398

14.5.1 总界面设计398

14.5.2 SMTP客户端设计399

14.5.3 POP3客户端设计410

第15章 Telnet协议及其编程417

15.1 概述417

15.2 Telnet协议使用417

15.3 Telnet协议原理419

15.4 实例分析与程序设计421

第16章 FTP协议及其编程429

16.1 概述429

16.1.1 背景429

16.1.2 下载和上传429

16.1.3 登录和匿名430

16.1.4 目标430

16.1.5 缺点430

16.2 FTP工作原理430

16.3 FTP使用模式432

16.4 FTP的常用命令与响应433

16.5 实例分析与程序设计435

第17章 多平台同步随身阅读——Send To Kindle的一种实现方式448

17.1 Amazon Kindle简介448

17.2 多平台同步阅读概述449

17.3 Send To Kindle PC版简介450

17.4 推送到Kindle的工作原理451

17.5 Kindle对邮箱附件的要求452

17.6 使用附件方式发送待阅读文章到Kindle452

17.7 系统右键菜单集成462

热门推荐