目录
第1章基础协议1
1.1Internet与网络通信模型1
1.1.1Internet概述1
1.1.2网络通信模型2
1.2TCP/IP协议族8
1.2.1一般特点8
1.2.2互联网协议9
1.2.3互联网控制报文协议11
1.2.4传输控制协议13
1.2.5用户数据报协议17
1.3IP地址和子网规划20
1.3.1IP地址20
1.3.2子网规划22
1.4本章小结25
习题125第2章网络编程基础27
2.1网络应用程序27
2.1.1网络应用程序的功能和位置27
2.1.2网间进程通信面临的问题28
2.2网间进程的标识方法29
2.2.1传输层在网络通信中的地位29
2.2.2网间进程的标识29
2.3客户服务器模型31
2.3.1客户服务器模型的重要性31
2.3.2客户服务器模型工作过程与特点31
2.3.3客户服务器模型交互方式33
2.4网络编程分类34
2.5本章小结39
习题239第3章Windows套接字41
3.1Socket的产生与规范41
3.1.1Socket的产生41
3.1.2Socket规范41
3.2Socket的工作原理和类型46
3.2.1Socket的工作原理46
3.2.2Socket的类型47
3.3Winsock编程基础48
3.3.1WSAStartup()函数48
3.3.2WSACleanup()函数51
3.4面向连接的Winsock编程54
3.4.1面向连接的Winsock编程模型54
3.4.2面向连接的Winsock编程函数55
3.5无连接的Winsock编程67
3.5.1无连接的Winsock编程模型67
3.5.2无连接的Winsock编程函数68
3.6Winsock的信息查询函数及其他主要函数71
3.6.1基本概念71
3.6.2Winsock的信息查询函数72
3.6.3其他主要函数79
3.7Winsock 2的扩展特性及新增函数88
3.7.1Winsock 2的扩展特性88
3.7.2Winsock 2新增函数91
3.8基于Winsock的ping程序实例92
3.9本章小结98
习题398第4章基于CAsyncSocket类的聊天程序99
4.1MFC简介99
4.1.1MFC框架99
4.1.2MFC对象与Windows对象的关系100
4.1.3消息映射的实现101
4.1.4MFC应用程序的执行过程104
4.2CAsyncSocket类105
4.2.1基本编程模型105
4.2.2创建CAsyncSocket类对象107
4.2.3CAsyncSocket类可以接收并处理的消息事件108
4.2.4连接的请求与接受109
4.2.5数据的发送与接收112
4.2.6关闭套接字113
4.2.7其他成员函数114
4.3基于CAsyncSocket类的聊天程序实例115
4.3.1程序的功能115
4.3.2创建客户程序116
4.3.3客户程序的类与消息驱动126
4.3.4客户程序主要功能的代码和分析127
4.3.5创建服务器程序134
4.3.6服务器程序的类与消息驱动137
4.3.7服务器程序主要功能的代码和分析137
4.4本章小结145
习题4145第5章基于CSocket类的聊天程序147
5.1CSocket类147
5.1.1基本编程模型147
5.1.2创建CSocket类对象149
5.1.3连接的建立149
5.1.4数据的收发149
5.1.5关闭套接字和清除相关对象150
5.2基于CSocket类的聊天程序实例150
5.2.1程序的功能150
5.2.2创建服务器程序150
5.2.3服务器程序主要功能的代码和分析154
5.2.4创建客户程序165
5.2.5客户程序主要功能的代码和分析167
5.3本章小结177
习题5178第6章高级Socket编程技术179
6.1阻塞模式与非阻塞模式179
6.1.1阻塞模式179
6.1.2非阻塞模式179
6.2Win32 API多线程编程180
6.2.1多线程概述180
6.2.2网络编程采用多线程机制的重要性182
6.2.3Win32 API对多线程编程的支持183
6.2.4Win32 API多线程编程实例184
6.3I/O阻塞模式的多线程网络编程方法187
6.3.1MFC支持的两种线程187
6.3.2创建MFC的工作线程188
6.3.3创建并启动用户接口线程191
6.3.4终止线程194
6.4I/O非阻塞模式的异步处理模型197
6.4.1select模型197
6.4.2WSAAsyncSelect异步I/O模型201
6.4.3WSAEventSelect事件选择模型206
6.4.4Overlapped I/O模型211
6.4.5Completion Port模型216
6.5本章小结221
习题6221第7章基于WinInet类的FTP客户程序222
7.1WinInet API的一般化问题222
7.1.1HINTERNET句柄222
7.1.2WinInet函数中错误的处理223
7.1.3WinInet函数中的缓冲区参数223
7.1.4WinInet函数的异步操作模式223
7.1.5回调函数224
7.2WinInet类226
7.2.1WinInet类概述226
7.2.2WinInet类中包含的类227
7.2.3基本编程模型228
7.2.4WinInet类简介230
7.3基于WinInet类的FTP客户程序实例240
7.3.1FTP客户程序要实现的功能240
7.3.2FTP客户多线程编程过程241
7.4本章小结250
习题7250第8章安全套接层协议编程251
8.1基础知识251
8.1.1数字签名251
8.1.2数字证书252
8.1.3PKI254
8.1.4基于数字证书的HTTPS网站254
8.2SSL协议264
8.2.1SSL相关概念264
8.2.2SSL握手协议266
8.2.3SSL记录协议268
8.3OpenSSL编程基础270
8.3.1OpenSSL概述270
8.3.2OpenSSL编程的常用函数272
8.3.3基于OpenSSL的编程步骤276
8.4OpenSSL编程实例278
8.4.1制作服务器的SSL证书278
8.4.2制作客户端的SSL证书280
8.4.3服务器程序281
8.4.4客户程序287
8.5本章小结290
习题8290第9章ASP.NET基础知识291
9.1ASP.NET简介291
9.1.1早期的Web开发291
9.1.2传统的ASP293
9.1.3ASP.NET与ASP的区别293
9.2ASP.NET应用程序的结构294
9.2.1.NET框架简介294
9.2.2ASP.NET应用程序元素295
9.2.3ASP.NET应用程序的目录结构296
9.2.4ASP.NET的文件类型297
9.3Visual Studio298
9.3.1Visual Studio集成开发环境298
9.3.2网站和Web项目301
9.3.3创建无项目文件的网站302
9.3.4设计网页303
9.3.5编码模型303
9.3.6Web项目307
9.4本章小结308
习题9309第10章ASP.NET常用控件与Page类310
10.1Web窗体310
10.1.1HTML标记311
10.1.2HTML控件314
10.1.3服务器控件标记314
10.2ASP.NET常用服务器控件314
10.2.1服务器控件的类型314
10.2.2所有控件的共同属性315
10.2.3标准服务器控件316
10.2.4输入验证控件322
10.2.5用户控件327
10.3ASP.NET Page类331
10.3.1Page对象331
10.3.2Response对象和Request对象336
10.3.3Server对象340
10.3.4Session对象342
10.3.5Application对象344
10.3.6Cookie对象346
10.4本章小结348
习题10348第11章数据访问350
11.1ADO.NET基础351
11.2基本ADO.NET类与存储过程353
11.2.1Connection类353
11.2.2Command类和DataReader类355
11.2.3DataSet类358
11.2.4DataAdapter类360
11.2.5调用存储过程364
11.3数据绑定368
11.3.1单值绑定369
11.3.2重复值绑定370
11.3.3数据源控件373
11.3.4联合使用数据源和数据绑定控件373
11.4LINQ数据获取380
11.4.1LINQ查询数据库概述380
11.4.2使用LINQ连接数据库380
11.4.3使用LINQ进行数据操作380
11.5本章小结383
习题11383第12章网络购物商城案例385
12.1需求分析385
12.1.1背景介绍385
12.1.2需求定义385
12.1.3开发环境386
12.2软件设计 386
12.2.1架构设计387
12.2.2数据设计387
12.2.3界面设计390
12.3功能实现392
12.3.1MasterPages母版页的实现393
12.3.2主页面的实现396
12.3.3购物车的实现400
12.3.4详细信息的实现401
12.3.5结算中心的实现404
12.4本章小结407
习题12407第13章使用SingalR进行WebSocket编程408
13.1WebSocket和SingalR408
13.1.1WebSocket概述和产品比较408
13.1.2SingalR概述和支持平台409
13.2SingalR API409
13.2.1通信方式、连接和集线器409
13.2.2ASP.NET SignalR Hubs API——服务器程序410
13.2.3ASP.NET SignalR Hubs API——.NET 客户程序412
13.3使用SingalR构建一个Web聊天室417
13.4本章小结420
习题13420参考文献421