图书目录

目录

第1章绪论1

1.1TCP/IP协议简介1

1.2网络编程的重要术语3

1.2.1套接字及其类型3

1.2.2网间进程通信的标识4

1.2.3客户机/服务器模式5

1.3C#网络编程概述7

1.3.1常用的网络组件7

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

1.3.3数据流的类型与应用9

1.3.4多线程技术12

1.3.5Windows API函数调用14

1.4套接字编程原理16

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

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

1.4.3Socket类的基本使用18

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

小结23

实验项目23

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

2.1活动主机探测技术25

2.1.1ICMP协议介绍26

2.1.2基于ICMP的探测原理28

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

2.2端口扫描技术35

2.2.1端口扫描器35

2.2.2端口扫描技术分类36

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

2.3.1流程设计40

2.3.2程序实现40

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

2.4.1界面设计44

2.4.2程序实现45

2.5网站可达性测量程序设计57

2.5.1系统设计思路57

2.5.2数据库设计58

2.5.3程序实现59

小结70

实验项目70

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

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

3.1.1串口通信原理72

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

3.2串口通信编程类介绍77

3.2.1SerialPort类介绍78

3.2.2SerialPort的使用79

3.2.3C# SerialPort运行方式 79

3.3串口通信编程实例80

3.3.1串口通信参数设置80

3.3.2主程序设计82

3.3.3串口通信程序测试87

小结88

实验项目88

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

4.1TCP协议介绍89

4.1.1TCP数据包格式90

4.1.2TCP协议的通信特点90

4.1.3TCP的常见端口91

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

4.2.1典型的阻塞模式91

4.2.2阻塞模式的特点92

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

4.2.4非阻塞模式及其应用94

4.3同步套接字编程技术95

4.3.1服务器的程序设计95

4.3.2客户机的程序设计100

4.4异步套接字编程技术103

4.4.1客户机发出连接请求104

4.4.2服务器接收连接请求104

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

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

4.5.1TcpClient类的使用方法107

4.5.2TcpListener类的使用方法108

4.6网络游戏程序设计109

小结120

实验项目121

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

5.1UDP协议介绍122

5.1.1UDP数据包格式123

5.1.2UDP协议的主要特性123

5.2使用UdpClient类进行编程124

5.2.1UdpClient类的使用方法124

5.2.2UdpClient类的应用实例126

5.3网络广播程序设计128

5.3.1广播程序设计示例129

5.3.2套接字选项设置方法130

5.4多播程序设计132

5.4.1多播地址132

5.4.2Internet组管理协议IGMP133

5.4.3多播编程方法134

5.4.4多播编程实例136

小结139

实验项目139

第6章网络抓包程序设计141

6.1网络抓包软件体系结构分析141

6.1.1网络抓包技术分析141

6.1.2WinPcap的体系结构142

6.2基于WinPcap的抓包程序设计143

6.2.1WinPcap编程基础143

6.2.2WinPcap应用实例147

6.3基于SharpPcap的抓包程序设计153

6.3.1SharpPcap应用入门153

6.3.2常用数据结构和函数154

6.4基于原始套接字的抓包程序设计157

6.4.1设计实例说明157

6.4.2关键代码分析157

小结162

实验项目162

第7章木马程序设计164

7.1木马工作原理164

7.1.1木马系统的组成165

7.1.2木马的功能和特征165

7.1.3木马的传播与运行166

7.2木马程序的常规设计167

7.2.1功能设计167

7.2.2流程图设计167

7.2.3命令规则设计表167

7.2.4文件操控模块流程169

7.2.5运行界面及说明169

7.2.6主要程序说明171

7.3远程屏幕监视技术175

7.3.1屏幕捕获过程解析175

7.3.2屏幕捕获程序设计177

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

7.4基于TCP协议的远程屏幕监视程序设计190

7.4.1控制端190

7.4.2客户端192

7.5键盘鼠标控制程序设计195

7.5.1键盘鼠标控制方法195

7.5.2键盘钩子说明195

7.5.3键盘鼠标的网络控制程序设计197

小结203

实验项目203

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

8.1音频编程方法概述205

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

8.3DirectX组件的工作原理208

8.3.1DirectX简介208

8.3.2DirectSound简介210

8.3.3声音的播放过程211

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

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

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

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

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

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

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

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

小结243

实验项目244

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

9.1视频编码技术245

9.1.1视频编码分类245

9.1.2视频格式转换248

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

9.2.1VFW介绍249

9.2.2视频数据处理技术250

9.2.3视频监控程序设计254

9.3基于VFW的视频传输257

9.3.1视频传输流程257

9.3.2视频发送端程序设计259

9.3.3视频接收端程序设计262

小结265

实验项目265

第10章Email服务程序设计266

10.1概述266

10.1.1工作原理266

10.1.2相关的协议268

10.2SMTP协议编程269

10.2.1SMTP的指令与响应码269

10.2.2Email的组成270

10.2.3ESMTP的工作流程271

10.2.4ESMTP协议编程实例272

10.3POP3协议编程276

10.3.1POP3的工作流程276

10.3.2POP3协议编程概述278

10.4利用SmtpMail类发送Email283

10.4.1System.Web.Mail介绍283

10.4.2处理Email信息及附件285

10.4.3Email发送方法286

10.5利用JMail类收发Email287

10.5.1JMail组件的特点287

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

10.5.3基于JMail组件的Email发送编程290

10.5.4基于JMail组件的Email接收编程291

小结293

实验项目293

第11章FTP服务程序设计295

11.1FTP工作原理295

11.1.1FTP服务的工作原理295

11.1.2FTP的传输模式296

11.1.3FTP的登录方式297

11.2FTP协议规范297

11.2.1FTP命令297

11.2.2FTP响应码298

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

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

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

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

11.3.3两种模式的比较303

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

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

11.5.1发送与接收数据的方法321

11.5.2服务器程序323

11.5.3客户机程序324

小结328

实验项目328

第12章网络信息加密传输程序设计330

12.1数据加密模型330

12.1.1数据加密工作模型331

12.1.2对称加密模型331

12.1.3非对称加密模型332

12.1.4数字签名模型333

12.2对称加密程序设计335

12.2.1对称加密算法335

12.2.2基于流的加密解密方法336

12.2.3对称加密程序设计实例339

12.3非对称加密程序设计342

12.4网络信息加密传输程序设计350

12.4.1服务器的实现350

12.4.2客户机的实现358

小结365

实验项目365

第13章网络信息隐藏通信程序设计366

13.1LSB信息隐藏方法366

13.2基于LSB的文件隐藏传输程序设计368

13.2.1设计思路368

13.2.2信息同步技术369

13.2.3LSB的改进算法设计370

13.2.4主要代码实现370

13.3IP语音隐秘通信程序设计377

13.3.1设计思路377

13.3.2发送端关键代码378

13.3.3接收端关键代码380

13.4网页信息隐藏程序设计382

13.4.1网页入侵检测的工作原理382

13.4.2网页入侵检测系统的设计382

13.4.3网页入侵检测系统的实现384

小结391

实验项目391

参考文献392