第1章 网络编程基础 1
1.1 网络游戏服务器端开发概述 2
1.1.1 网络游戏类型 2
1.1.2 MMORPG服务器与客户端功能划分 6
1.2 网络通信协议 7
1.2.1 网络协议 7
1.2.2 OSI通信协议模型(Open System Interconnection) 7
1.2.3 TCP/IP协议 11
1.2.4 TC/IP协议族 12
1.3 Socket编程原理 14
1.3.1 套接字(Socket) 14
1.3.2 Socket通信流程 15
1.3.3 Socket函数 17
1.3.4 IP地址转换 20
1.3.5 字节转换 21
1.3.6 基本Socket通信 22
1.4 TCP/IP通信实现 27
1.5 UDP/IP通信实现 34
本章小结 37
自测习题 37
课后作业 38
第2章 多线程 39
2.1 线程基础 40
2.1.1 进程 40
2.1.2 线程 45
2.1.3 线程的应用 52
2.2 Windows下的多线程处理 56
2.2.1 随机矩形 57
2.2.2 多工模拟程序 60
2.3 线程间的通信与同步 69
2.3.1 全局变量 70
2.3.2 事件 71
2.3.3 临界区 72
2.3.4 互斥 75
2.3.5 信号量 77
2.3.6 互锁访问 78
2.3.7 可等待定时器 79
2.3.8 线程死锁 80
本章小结 82
自测习题 83
课后作业 83
第3章 高效通信模型 85
3.1 网络通信I/O模式 86
3.1.1 Socket事件 86
3.1.2 阻塞模式 87
3.1.3 非阻塞模式 88
3.1.4 选择I/O模式 89
3.2 异步模型 90
3.2.1 异步与同步 90
3.2.2 Windows下的异步模型 93
3.3 IOCP模型 100
3.3.1 IOCP工作原理 100
3.3.2 使用IOCP设计服务器 105
3.3.3 IOCP设计中的Socket错误和资源释放 114
3.3.4 IOCP与epoll机制的异同 119
本章小结 120
自测习题 120
课后作业 121
第4章 网络游戏数据加密技术 123
4.1 密码学基本概念 124
4.1.1 密码学 124
4.1.2 发送者与接收者 124
4.1.3 消息和加密 124
4.1.4 算法和密钥 125
4.1.5 算法的安全性 126
4.1.6 常用密码算法 126
4.2 位操作 129
4.2.1 位运算符 129
4.2.2 按位逻辑运算 130
4.2.3 移位运算 134
4.2.4 位运算赋值运算符 135
4.2.5 位运算综合应用 135
4.3 DES算法 137
4.3.1 DES算法原理 137
4.3.2 DES算法实现 143
4.4 MD5算法 152
4.4.1 MD5算法原理 152
4.4.2 MD5算法的实现 157
本章小结 164
自测习题 165
课后作业 165
第5章 网络游戏数据库技术 167
5.1 数据库理论概述 168
5.1.1 数据库理论发展史 168
5.1.2 数据库概述 169
5.1.3 数据组织层次 170
5.1.4 数据库系统模型结构 172
5.1.5 数据库管理系统(DBMS) 178
5.1.6 常用关系数据库 179
5.2 数据库设计 182
5.2.1 关系数据库规范化 182
5.2.2 数据库设计 189
5.3 SQL语言 195
5.3.1 数据控制语言(DCL) 196
5.3.2 数据描述语句(DDL) 199
5.3.3 数据操纵语句(DML) 201
5.3.4 数据查询语句(DQL) 202
5.4 数据库连接 205
5.4.1 ODBC API(Open DataBase Connectivity API) 205
5.4.2 MFC ODBC(Microsoft Foundation Classes ODBC) 215
5.4.3 DAO(Data Access Object) 220
5.4.4 OLE DB(Object Link and Embedding DataBase) 220
5.4.5 ADO(ActiveX Data Object) 221
5.4.6 数据库连接技术选择 225
本章小结 225
自测习题 226
课后作业 226
第6章 游戏大厅的设计与实现 227
6.1 游戏大厅概述 228
6.1.1 游戏大厅类型 228
6.1.2 游戏大厅的功能 229
6.2 游戏大厅的实现 230
6.2.1 大厅服务器的实现 230
6.2.2 大厅客户端的实现 240
本章小结 244
自测习题 244
课后作业 244
第7章 GM工具的设计与实现 245
7.1 GM概述 246
7.1.1 响应玩家请求 246
7.1.2 GM的管理 250
7.2 GM管理工具实现 252
7.2.1 GM管理工具服务器端实现 252
7.2.2 GM管理工具客户端实现 253
本章小结 268
自测习题 268
课后作业 269
第8章 自动更新系统的设计与实现 271
8.1 文件版本管理 272
8.1.1 文件版本管理方式 272
8.1.2 文件版本管理的实现 272
8.2 文件传输服务器 289
8.2.1 文件传输服务器功能 289
8.2.2 文件传输服务器的实现 291
本章小结 300
自测习题 300
课后作业 300