《C#网络通信程序设计》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:张晓明编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2015
  • ISBN:9787302389880
  • 页数:387 页
图书介绍:本书阐述主机扫描、网络协议编程、网络监视、多媒体通信、网络安全防护、移动终端网络应用开发等内容,力求体现教学的技术性、实用性和趣味性,贯穿网络安全通信的系统设计过程,提供所有C#程序源代码。具有许多网络安全通信内容,如主机扫描、木马程序、屏幕监视、垃圾邮件拦截和加密传输等,容易激发学生的好奇心和学习兴趣;具有典型的多媒体网络通信特点,如视频传输、IP电话、多屏幕监视,适于网络传输的实际需要。

第1章 绪论 1

1.1 TCP/IP协议简介 1

1.1.1 TCP/IP的起源 2

1.1.2 TCP/IP的体系结构和特点 3

1.2 网络编程的重要术语 4

1.2.1 套接字及其类型 4

1.2.2 网间进程通信的标识 6

1.2.3 客户机/服务器模式 6

1.3 C#网络编程概述 8

1.3.1 常用的网络组件 9

1.3.2 寻找IP地址的类和方法 10

1.3.3 数据流的类型与应用 11

1.3.4 多线程技术 13

1.4 套接字编程原理 16

1.4.1 面向连接的套接字调用流程 16

1.4.2 无连接套接字调用流程 16

1.4.3 Socket类的基本使用 18

1.4.4 套接字的简单应用实例 22

小结 23

实验项目 23

第2章 主机扫描程序设计 25

2.1 活动主机探测技术 25

2.1.1 ICMP协议介绍 25

2.1.2 基于ICMP的探测原理 28

2.1.3 活动主机探测程序设计 29

2.2 端口扫描技术 34

2.2.1 端口扫描器 35

2.2.2 端口扫描技术分类 36

2.3 TCP全连接扫描程序设计 39

2.3.1 流程设计 40

2.3.2 程序实现 40

2.4 高级端口扫描程序设计 44

2.4.1 界面设计 45

2.4.2 程序实现 45

小结 57

实验项目 57

第3章 串口通信程序设计 59

3.1 串口通信基本原理和应用方法 59

3.1.1 串口通信原理 59

3.1.2 串口通信仿真设计方法 63

3.2 串口通信编程类介绍 64

3.2.1 SerialPort类介绍 65

3.2.2 SerialPort的使用 66

3.2.3 C# SerialPort运行方式 66

3.3 串口通信编程实例 67

3.3.1 串口通信参数设置 68

3.3.2 主程序设计 69

3.3.3 串口通信程序测试 74

小结 75

实验项目 75

第4章 基于TCP协议的程序设计 76

4.1 TCP协议介绍 76

4.1.1 TCP数据包格式 77

4.1.2 TCP协议的通信特点 77

4.1.3 TCP的常见端口 78

4.2 阻塞/非阻塞模式及其应用 78

4.2.1 典型的阻塞模式 78

4.2.2 阻塞模式的特点 79

4.2.3 阻塞模式的效率提升方法 80

4.2.4 非阻塞模式及其应用 81

4.3 同步套接字编程技术 82

4.3.1 服务器的程序设计 82

4.3.2 客户机的程序设计 87

4.4 异步套接字编程技术 91

4.4.1 客户机发出连接请求 91

4.4.2 服务器接收连接请求 91

4.4.3 服务器发送和接收数据 92

4.5 基于TcpClient类和TcpListener类的编程 94

4.5.1 TcpClient类的使用方法 94

4.5.2 TcpListener类的使用方法 95

4.6 网络游戏程序设计 96

小结 107

实验项目 108

第5章 基于UDP协议的程序设计 109

5.1 UDP协议介绍 109

5.1.1 UDP数据包格式 110

5.1.2 UDP协议的主要特性 110

5.2 使用UdpClient类进行编程 111

5.2.1 UdpClient类的使用方法 111

5.2.2 UdpClient类的应用实例 113

5.3 网络广播程序设计 115

5.3.1 广播程序设计示例 116

5.3.2 套接字选项设置方法 118

5.4 多播程序设计 119

5.4.1 多播地址 119

5.4.2 Internet组管理协议IGMP 120

5.4.3 多播编程方法 121

5.4.4 多播编程实例 123

小结 126

实验项目 127

第6章 远程屏幕监视程序设计 128

6.1 屏幕捕获过程解析 128

6.2 屏幕捕获程序设计 130

6.3 基于远程调用信道的远程屏幕监视程序设计 134

6.3.1 远程调用信道及其应用 134

6.3.2 基于远程调用信道的屏幕传输程序设计 140

6.4 基于TCP协议的远程屏幕监视程序设计 144

6.4.1 控制端 144

6.4.2 客户端 145

小结 148

实验项目 149

第7章 木马程序设计 150

7.1 木马工作原理 150

7.1.1 木马系统的组成 151

7.1.2 木马的功能和特征 151

7.1.3 木马的传播与运行 152

7.2 木马程序的常规设计 153

7.2.1 功能设计 153

7.2.2 流程图设计 153

7.2.3 命令规则设计表 153

7.2.4 文件操控模块流程 155

7.2.5 运行界面及说明 155

7.2.6 主要程序说明 157

7.3 键盘鼠标控制程序设计 161

7.3.1 BlockInput()的使用方法 161

7.3.2 键盘钩子说明 161

7.3.3 键盘鼠标的网络控制程序设计 163

小结 169

实验项目 169

第8章 IP音频网络通信程序设计 170

8.1 音频编程方法概述 170

8.2 基于多媒体控件的音频播放程序设计 171

8.3 DirectX组件的工作原理 173

8.3.1 DirectX简介 173

8.3.2 DirectSound简介 175

8.3.3 声音的播放过程 176

8.4 基于DirectX组件的IP语音网络程序设计 177

8.4.1 利用DirectX组件实现音频播放 177

8.4.2 利用DirectX组件实现音频采集 178

8.4.3 基于DirectX组件的IP电话程序设计 186

8.5 基于低级音频函数的IP电话程序设计 195

8.5.1 低级音频函数的调用方法 195

8.5.2 利用低级音频函数实现音频采集与播放 199

8.5.3 利用低级音频函数实现语音通信程序设计 207

小结 209

实验项目 209

第9章 网络视频传输程序设计 211

9.1 视频编码技术 211

9.1.1 视频编码分类 211

9.1.2 视频格式转换 214

9.2 基于VFW的视频采集与存储 215

9.2.1 VFW介绍 215

9.2.2 视频数据处理技术 216

9.2.3 视频监控程序设计 221

9.3 基于VFW的视频传输 224

9.3.1 视频传输流程 224

9.3.2 视频发送端程序设计 226

9.3.3 视频接收端程序设计 229

小结 232

实验项目 232

第10章 E-mail服务程序设计 233

10.1 概述 233

10.1.1 工作原理 233

10.1.2 相关的协议 235

10.2 SMTP协议编程 236

10.2.1 SMTP的指令与响应码 236

10.2.2 E-mail的组成 237

10.2.3 ESMTP的工作流程 238

10.2.4 ESMTP协议编程实例 239

10.3 POP3协议编程 243

10.3.1 POP3的工作流程 243

10.3.2 POP3协议编程 245

10.4 利用SmtpMail类发送E-mail 250

10.4.1 System.Web.Mail介绍 250

10.4.2 处理E-mail信息及附件 252

10.4.3 E-mail发送方法 253

10.5 利用JMail类收发E-mail 254

10.5.1 JMail组件的特点 254

10.5.2 JMail组件的主要参数与使用方法 254

10.5.3 基于JMail组件的E-mail发送编程 257

10.5.4 基于JMail组件的E-mail接收编程 258

小结 260

实验项目 260

第11章 FTP服务程序设计 262

11.1 FTP工作原理 262

11.1.1 FTP服务的工作原理 262

11.1.2 FTP的传输模式 263

11.1.3 FTP的登录方式 264

11.2 FTP协议规范 264

11.2.1 FTP命令 264

11.2.2 FTP响应码 265

11.2.3 FTP命令和响应码的应用方法 267

11.3 FTP协议的两种工作模式 268

11.3.1 FTP PORT模式(主动模式) 268

11.3.2 FTP PASV模式(被动模式) 269

11.3.3 两种模式的比较 270

11.4 基于Socket类的FTP程序设计 271

11.5 基于TcpClient类的FTP程序设计 288

11.5.1 发送与接受数据的方法 288

11.5.2 服务器程序 290

11.5.3 客户机程序 291

小结 295

实验项目 295

第12章 网络测量程序设计 297

12.1 网络测量概述 297

12.1.1 网络测量的分类 298

12.1.2 网络测量的研究方向 299

12.1.3 网络测量工具 300

12.2 网络测量技术 303

12.2.1 主要测量指标 303

12.2.2 时延计算 305

12.2.3 ICMP时间戳请求与应答 307

12.3 网站可达性测量程序设计 308

12.3.1 网站测量概述 308

12.3.2 系统设计思路 309

12.3.3 数据库设计 310

12.3.4 程序实现 311

小结 324

实验项目 324

第13章 网络信息加密传输程序设计 325

13.1 数据加密模型 325

13.1.1 数据加密工作模型 326

13.1.2 对称加密模型 326

13.1.3 非对称加密模型 327

13.1.4 数字签名模型 328

13.2 对称加密程序设计 330

13.2.1 对称加密算法 330

13.2.2 基于流的加密解密方法 331

13.2.3 对称加密程序设计实例 334

13.3 非对称加密程序设计 337

13.4 网络信息加密传输程序设计 345

13.4.1 服务器的实现 345

13.4.2 客户机的实现 353

小结 360

实验项目 360

第14章 网络信息隐藏通信程序设计 361

14.1 LSB信息隐藏方法 361

14.2 基于LSB的文件隐藏传输程序设计 363

14.2.1 设计思路 363

14.2.2 信息同步技术 364

14.2.3 LSB的改进算法设计 365

14.2.4 主要代码实现 365

14.3 IP语音隐秘通信程序设计 372

14.3.1 设计思路 372

14.3.2 发送端关键代码 373

14.3.3 接收端关键代码 375

14.4 网页信息隐藏程序设计 377

14.4.1 网页入侵检测的工作原理 377

14.4.2 网页入侵检测系统的设计 377

14.4.3 网页入侵检测系统的实现 378

小结 386

实验项目 386

参考文献 387