简介
本书介绍了网络程序设计技术的有关知识,除了对大量编程理论知识有所涉及外,还对具体的程序设计步骤予以列举,实用性较强。
目录
第一篇 通信网络编程基础
第1章 概论 2
1.1 通信系统信号传输 2
1.1.1 模拟通信 2
1.1.2 数字通信 3
1.1.3 数据通信 4
1.2 网络通信技术原理 5
1.2.1 现代通信网的概念 5
1.2.2 网络通信技术 5
1.2.3 网络通信OSI模型 8
1.3 网络程序设计任务 9
1.3.1 通信协议 9
1.3.2 进程标识 10
1.3.3 相关建立 11
1.3.4 开发平台 11
1.3.5 应用目的 11
1.3.6 开发层面 12
1.3.7 效率方式 13
1.3.8 外部资源 13
1.4 发展趋势 14
小结 15
习题 15
第2章 程序设计基础 17
2.1 函数 17
2.1.1 基本函数 17
2.1.2 库函数 18
2.1.3 API函数 18
2.1.4 回调函数 19
2.1.5 挂钩函数 20
2.2 句柄 20
2.3 事件与消息 21
2.3.1 事件 21
2.3.2 消息 22
2.3.3 事件与消息的区别 22
2.4 进程与线程 23
2.4.1 进程与线程的定义 23
2.4.2 进程与线程的关系 24
2.5 通信模式 25
2.5.1 C/S模式 25
2.5.2 B/S模式 25
2.5.3 两种模式的比较 26
2.6 通信服务 27
2.6.1 面向连接服务 27
2.6.2 无连接服务 27
2.6.3 两种服务的比较 28
2.7 通信方式 28
2.8 工具方法 29
2.8.1 系统平台选择 29
2.8.2 开发工具 32
2.8.3 设计工作流程 39
2.8.4 开发经验 41
小结 42
习题 42
第二篇 通信程序设计基本方法
第3章 串口网络编程 44
3.1 串行通信概述 44
3.1.1 串行通信的模式 44
3.1.2 串口的基本参数与标准 45
3.1.3 串行通信握手协议 46
3.2 串口通信程序设计 47
3.2.1 串行通信软件工具 47
3.2.2 串口操作API函数 49
3.3 串口通信程序设计 53
3.3.1 枚举本地机串口 53
3.3.2 主机与单片机间的通信 54
3.3.3 主机间的通信 57
小结 60
习题 60
第4章 NetBIOS网络编程 61
4.1 概述 61
4.2 NetBIOS应用服务与实现 62
4.2.1 NetBIOS应用服务 62
4.2.2 NCB/MCB 65
4.2.3 NetBIOS编程基础 71
4.3 数据报通信程序设计 76
4.3.1 数据报通信模型 76
4.3.2 广播型数据报程序 76
4.3.3 定向型数据报程序 80
4.4 会话通信程序设计 81
4.4.1 会话通信模型 81
4.4.2 服务器端程序 82
4.4.3 客户端程序 87
小结 90
习题 90
第5章 IPX/SPX网络编程 91
5.1 概述 91
5.2 套接字 92
5.2.1 基本概念 92
5.2.2 WinSock的启动与终止 95
5.2.3 WinSock的主要函数 96
5.3 IPX/SPX协议结构 98
5.3.1 IPX协议结构 98
5.3.2 协议地址 99
5.3.3 SPX协议结构 102
5.4 IPX程序设计 102
5.4.1 IPX套接字创建 103
5.4.2 IPX数据收发 103
5.5 SPX程序设计 105
5.5.1 SPX套接字创建 105
5.5.2 SPX服务器端 106
5.5.3 SPX客户端 109
小结 111
习题 111
第6章 TCP/IP网络编程 112
6.1 TCP/IP协议概述 112
6.1.1 基本概念 112
6.1.2 常用协议 114
6.1.3 TCP/IP地址函数 119
6.3 TCP编程 121
6.3.1 TCP程序结构 122
6.3.2 TCP服务器端 123
6.3.3 TCP客户端 125
6.3.4 TCP连接与断开 128
6.4 UDP编程 131
6.4.1 UDP程序结构 131
6.4.2 UDP服务器端 132
6.4.3 UDP客户端 133
6.5 组播编程 134
6.5.1 IGMP程序结构 134
6.5.2 IGMP程序设计 135
6.6 WinSock I/O模型 136
6.6.1 select模型 136
6.6.2 WSAAsyncSelect模型 138
6.6.3 WSAEventSelect模型 143
小结 147
习题 147
第7章 直接网络编程 148
7.1 以太网工作原理 148
7.1.1 CSMA/CD协议 148
7.1.2 NIC接收模式 150
7.1.3 NDIS驱动模型 150
7.2 基于Winpcap的网络编程 152
7.2.1 Winpcap工作原理 152
7.2.2 Winpcap编程 155
7.2.3 程序设计实现 161
7.3 原始套接字编程 166
7.3.1 原始套接字原理 166
7.3.2 原始套接字ping程序设计 167
7.3.3 原始套接字tracert程序设计 171
7.4 基于libnet的网络编程 173
7.4.1 libnet工作原理 173
7.4.2 libnet的使用方法 174
7.4.3 libnet编程 177
7.5 基于NDIS的网络编程 183
7.5.1 数据包过滤层面 183
7.5.2 驱动程序开发环境 185
7.5.3 数据包拦截编程 188
小结 196
习题 196
第三篇 通信程序设计辅助技术
第8章 多线程程序设计技术 198
8.1 服务器线程模型 198
8.2 多线程应用环境 199
8.3 线程基本操作函数 200
8.3.1 创建线程函数 200
8.3.2 设置线程的优先级函数 200
8.3.3 挂起/恢复线程 201
8.3.4 等待函数 201
8.3.5 终止一个线程函数 202
8.4 线程同步 203
8.4.1 临界区同步 203
8.4.2 事件同步 205
8.4.3 互斥同步 206
8.4.4 信号量同步 208
8.5 并发线程模型服务器设计 210
8.6 完成端口服务器设计 214
8.6.1 完成端口概念 214
8.6.2 完成端口函数 215
8.6.3 完成端口程序设计 216
小结 221
习题 221
第9章 链接库技术 222
9.1 链接库概述 222
9.2 静态链接库 222
9.2.1 静态链接库概念 222
9.2.2 静态链接库设计 223
9.2.3 静态链接库调用 223
9.3 动态链接库 225
9.3.1 动态链接库概念 225
9.3.2 动态链接库调用 226
9.3.3 动态链接库编程 227
9.4 传输服务提供者 228
9.4.1 SPI介绍 228
9.4.2 LSP编程 230
9.4.3 LSP程序设计 233
小结 236
习题 236
第10章 面向对象技术 237
10.1 面向对象概述 237
10.1.1 封装 238
10.1.2 继承 239
10.1.3 多态 239
10.2 MFC CAsyncSocket类网络编程 240
10.2.1 CAsyncSocket类 240
10.2.2 类成员 242
10.2.3 编程步骤 243
10.3 MFC CSocket类网络编程 243
10.3.1 CSocket类 243
10.3.2 CSocketFile类 245
10.3.3 CArchive类 246
10.3.4 编程步骤 247
10.4 多媒体通信编程 248
10.4.1 多媒体网络传输技术 248
10.4.2 多媒体网络程序设计 250
小结 260
习题 260
第11章 P2P技术 261
11.1 P2P技术概述 261
11.1.1 概念 261
11.1.2 原理 262
11.2 NAT穿越 262
11.2.1 NAT概念 263
11.2.2 UDP打洞 266
11.2.3 TCP打洞 267
11.3 P2P编程 269
11.3.1 P2P协议程序 269
11.3.2 服务器端程序 271
11.3.3 客户端程序 274
小结 282
习题 282
第四篇 应用层网络编程
第12章 应用层网络编程 284
12.1 SMTP/POP3 协议编程 284
12.1.1 SMTP/POP3 协议简介 284
12.1.2 Base64编码 287
12.1.3 SMTP客户端设计 288
12.2 HTTP编程 290
12.2.1 HTTP简介 290
12.2.2 WinInet API 292
12.2.3 HTTP客户端设计 294
12.3 FTP编程 297
12.3.1 FTP简介 297
12.3.2 WinInet类 299
12.3.3 FTP客户端设计 300
12.4 SNMP编程 302
12.4.1 SNMP简介 302
12.4.2 SNMP的开发方法 303
12.4.3 Winsnmp API主要函数 304
12.4.4 SNMP协议程序设计 307
小结 310
习题 310
附录 网络编程参考
附录1 NetBIOS命令NCB参考 312
附录2 NetBIOS命令返回值参考 325
附录3 WinSock错误代码表 327
附录4 网络常见TCP/IP协议数据包结构 330
附录5 libnet函数与符号常量参考 338
附录6 套接字选项 348
参考文献 351
Electronic information specialty
- 名称
- 类型
- 大小
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×