logo资料库

Windows Sockets 网络程序设计大全.pdf

第1页 / 共396页
第2页 / 共396页
第3页 / 共396页
第4页 / 共396页
第5页 / 共396页
第6页 / 共396页
第7页 / 共396页
第8页 / 共396页
资料共396页,剩余部分请下载后查看
页码
目录
00001
00002
00003
00004
00005
00006
00007
000001
000002
000003
000004
000005
000006
000007
000008
000009
000010
000011
000012
000013
000014
000015
000016
000017
000018
000019
000020
000021
000022
000023
000024
000025
000026
000027
000028
000029
000030
000031
000032
000033
000034
000035
000036
000037
000038
000039
000040
000041
000042
000043
000044
000045
000046
000047
000048
000049
000050
000051
000052
000053
000054
000055
000056
000057
000058
000059
000060
000061
000062
000063
000064
000065
000066
000067
000068
000069
000070
000071
000072
000073
000074
000075
000076
000077
000078
000079
000080
000081
000082
000083
000084
000085
000086
000087
000088
000089
000090
000091
000092
000093
000094
000095
000096
000097
000098
000099
000100
000101
000102
000103
000104
000105
000106
000107
000108
000109
000110
000111
000112
000113
000114
000115
000116
000117
000118
000119
000120
000121
000122
000123
000124
000125
000126
000127
000128
000129
000130
000131
000132
000133
000134
000135
000136
000137
000138
000139
000140
000141
000142
000143
000144
000145
000146
000147
000148
000149
000150
000151
000152
000153
000154
000155
000156
000157
000158
000159
000160
000161
000162
000163
000164
000165
000166
000167
000168
000169
000170
000171
000172
000173
000174
000175
000176
000177
000178
000179
000180
000181
000182
000183
000184
000185
000186
000187
000188
000189
000190
000191
000192
000193
000194
000195
000196
000197
000198
000199
000200
000201
000202
000203
000204
000205
000206
000207
000208
000209
000210
000211
000212
000213
000214
000215
000216
000217
000218
000219
000220
000221
000222
000223
000224
000225
000226
000227
000228
000229
000230
000231
000232
000233
000234
000235
000236
000237
000238
000239
000240
000241
000242
000243
000244
000245
000246
000247
000248
000249
000250
000251
000252
000253
000254
000255
000256
000257
000258
000259
000260
000261
000262
000263
000264
000265
000266
000267
000268
000269
000270
000271
000272
000273
000274
000275
000276
000277
000278
000279
000280
000281
000282
000283
000284
000285
000286
000287
000288
000289
000290
000291
000292
000293
000294
000295
000296
000297
000298
000299
000300
000301
000302
000303
000304
000305
000306
000307
000308
000309
000310
000311
000312
000313
000314
000315
000316
000317
000318
000319
000320
000321
000322
000323
000324
000325
000326
000327
000328
000329
000330
000331
000332
000333
000334
000335
000336
000337
000338
000339
000340
000341
000342
000343
000344
000345
000346
000347
000348
000349
000350
000351
000352
000353
000354
000355
000356
000357
000358
000359
000360
000361
000362
000363
000364
000365
000366
000367
000368
000369
000370
000371
000372
000373
000374
000375
000376
000377
000378
000379
000380
000381
000382
000383
000384
bok001
cov001
fow001
fow002
leg001
目录
第1章 TCP/IP简介
1.1 TCP/IP协议的起源和发展
1.2 TCP/IP的体系结构和特点
1.3 术语
1.3.1 套接字
1.3.2 WindowsSockets实现
1.3.3 阻塞处理例程
1.3.4 多址广播
第2章 套接字编程原理
2.1 问题的引入
2.2 套接字编程基本概念
2.2.1 网间进程通信
2.2.2 服务方式
2.2.3 客户机/服务器模式
2.2.4 套接字类型
2.3 基本套接字系统调用
2.3.1 创建套接字_________cket()
2.3.2 指定本地地址一 bind()
2.3.3 建立套接字连接__connect()与accept()
2.3.4 监听连接一一listn()
2.3.5 数据传输一send()与recv()
2.3.6 输入/输出多路复用 一select()
2.3.7 关闭套接字一一closesocket()
2.4 典型套接字调用过程举例
2.5 一个通用的实例程序
2.5.1 头文件
2.5.2 函数源 文件
2.5.3 简单服务器程序示例
2.5.4 简单客户程序示例
第3章 WindowsSockets1.1程序设计
3.1 Wind0wsSOckets简介
3.1.1 什么是WindowsSockets
3.1.2 WindowsSockets组成部分
3.1.3 WindowsSockets对BerkeleySockets的扩充
3.2 异步选择机制
3.3 阻塞处理方法
3.4 WindowsSockets网络程序设计
3.4.1 启动与终止
3.4.2 异步请求服务
3.4.3 异步数据传输
3.4.4 出错处理
3.4.5 宏的使用
3.4.6 移植应用程序
3.5 较深入的问题
3.5.1 中间DLL设计
3.5.2 多线程环境下的WindowsSockets
第4章 WindowsSockets1.1应用实例
4.1 点对点网络实时通信程序
4.1.1 客户程序
4.1.2 服务器程序
4.1.3 其它文件
4.2 广播通信程序
4.2.1 建立一个可以广播的套接字
4.2.2 发送与接收广播消息
4.2.3 广播通信程序源代码
4.3 阻塞处理示例程序
第5章 WindowsSockets1.1库函数
5.1 库函数综述
5.1.1 套接字函数
5.1.2 数据库函数
5.1.3 WindowsSockets专用的增设函数
5.2 标准socket函数
5.2.1 accept()
5.2.2 bind()
5.2.3 closesocket()
5.2.4 connect()
5.2.5 getpeername()
5.2.6 getsocknaame()
5.2.7 getsockopt()
5.2.8 htonl()
5.2.9 htons()
5.2.10 inet-addr()
5.2.11 inet-ntoa()
5.2.12 ioctlsocket()
5.2.13 listen()
5.2.14 ntoh1()
5.2.15 ntohs()
5.2.16 recv()
5.2.17 recvfrom()
5.2.18 select()
5.2.19 send()
5.2.20 sendto()
5.2.21 Setsckopt()
5.2.22 shutdown()
5.2.23 socket()
5.3 数据库函数
5.3.1 gethostbyaddr()
5.3.2 gethostbyname()
5.3.3 gethostname()
5.3.4 getprotobyname()
5.3.5 getprotobynumber()
5.3.6 getservbyname()
5.3.7 getservbyport()
5.4 WindowsSockets1.1专用的增设函数
5.4.1 WSAAsyncGetHostByAddr()
5.4.2 WSAAsyncGetHostByName()
5.4.3 WSAAsyncGetProtoByName()
5.4.4 WSAAsyncGetProtoByNumber()
5.4.5 WSAAsyncGetServByName()
5.4.6 WSAAsyncGetServByPort()
5.4.7 WSAAsyncSelect()
5.4.8 WSACancelAsyncRequest()
5.4.9 WSACancelBlockingCall()
5.4.10 WSACleanup()
5.4.11 WSAGetLastError()
5.4.12 WSAIsB1ocking()
5.4.13 WSASetBlockingHook()
5.4.14 WSASetLastError()
5.4.15 WSAStartup()
5.4.16 WSAUnhookBlockingHook()
5.5 WindowsSockets定义的宏
5.5.1 FD-CLR
5.5.2 FD-ISSET
5.5.3 FD-SET
5.5.4 FD ZERO
5.5.5 WSAGETASYNCBUFLEN
5.5.6 WSAGETASYNCERROR
5.5.7 WSAGETSELECTERROR
5.5.8 WSAGETSELECTEVENT
5.5.9 WSAMAKEASYNCREPLY
5.5.10 WSAMAKESELECTREPLEY
第6章 Windows Sockets2的扩展特性
6.1 WindowsSockets2概述
6.2 WinSock2体系结构
6.2.1 同时使用多个传输协议
6.2.2 与WindowSSockets1.1应用程序的向后兼容性
6.3 在WindowsSockets中注册传输协议
6.3.1 分层协议与协议链
6.3.2 使用多个协议
6.3.3 select()函数应用中关于多个服务提供者的限制
6.4 函数扩展机制
6.5 名字解析与注册
6.5.1 协议无关的名字解析
6.6 重叠I/O和事件对象
6.6.1 事件对象
6.6.2 接收操作完成指示
6.6.3 WSAOVERLAPPED的细节
6.6.4 使用事件对象异步通知
6.7 服务质量(QOS)
6.7.1 QOS数据结构
6.7.2 QOS模板
6.7.3 默认值
6.8 套接字组
6.9 共享套接字
6.10 连接建立和拆除的增强功能
6.11 扩展的字节顺序转换例程
6.12 分散/聚集方式I/O
6.13 协议无关的多址广播与多点通信
6.14 新增套接字选项一览
6.15 新增套接字ioctl操作代码
第7章 WindowsSockets2扩展库函数
7.1 WindowsSockets2扩展库函数列表
7.2 WinSock2库函数
7.2.1 WSAAccept()
7.2.2 WSACLoseEvent()
7.2.3 WSAC0nnect()
7.2.4 WSACreateEvent()
7.2.5 WSADuplicateSocket()
7.2.6 WSAEnumNetworkEvents()
7.2.7 WSAEnumProtocols()
7.2.8 WSAEventSelect()
7.2.9 WSAGetOverlappedResult()
7.2.10 WSAGetQoSByName()
7.2.11 WSAHtonl()
7.2.12 WSAHtons()
7.2.13 WSAIoctl()
7.2.14 WSAJoinLeaf()
7.2.15 WSANtohl()
7.2.16 WSANtohs(])
7.2.17 WSARecv()
7.2.18 WSARecvDisc0nnect()
7.2.19 WSARecvFrom()
7.2.20 WSAResetEvent()
7.2.21 WSASend()
7.2.22 WSASendDisconnect()
7.2.23 WSASendTO()
7.2.24 WSASetEvent()
7.2.25 WSASocket()
7.2.26 WSAWaitF0rMultipleEvents()
7.3 WinSock2名字解析函数
7.3.1 WSAAddressToString()
7.3.2 WsAEnumNameSpacePr0viders()
7.3.3 WSAEnumNameSpaceProviders()
7.3.4 WSAGetServiceClassNameByClassld()
7.3.5 WSAInstallServiceCIass()
7.3.6 WSALookupServiceBegin()
7.3.7 WSALookupServiceEnd()
7.3.8 WSALookupServiceNext()
7.3.9 WSARemoveServiceClass()
7.3.10 WSASetService()
7.3.11 WSAStringToAddress()
第8章 WinSock2应用实例
8.1 WinSock2基本函数的使用
8.1.1 客户程序
8.1.2 服务器程序
8.1.3 头文件
8.2 多址广播程序
第9章 MFCSockets程序设计
9.1 MFC用于网络编程的类
9.1.1 CAsyncSocket类
9.1.2 CSocket类
9.2 程序实例
9.2.1 Client端的程序代码
9.2.2 Server端的程序代码
第10章 JavaSockets程序设计
10.1 概述
10.2 流Socket程序的实现
10.2.1 与流Socket有关的Java类
10.2.2 流Socket程序的实现
10.3 数据报Socket程序的实现
10.3.1 与数据报Socket有关的Java类
10.3.2 数据报Socket的编程实现
第11章 DelphiSockets程序设计
11.1 Delphi及其网络编程简介
11.2 ClientSocket控件介绍
11.2.1 ClientSocket控件简介
11.2.2 ClientSocket的属性
11.2.3 C1ientSocket的方法
11.2.4 ClientSocket的事件
11.2.5 ClientSocket的使用
11.3 ServerSocket控件的介绍
11.3.1 ServerSocket控件简介
11.3.2 ServerSocket控件的属性(Property)
11.3.3 ServerSocket控件的方法(Method)
11.3.4 ServerSocket控件的事件(Event)
11.3.5 ServerSocket的使用
11.4 Delphi网络编程应用示例
11.4.1 服务程序
11.4.2 客户程序
第12章 PowerBuilderSockets程序设计
12.1 PowerBuilder网络程序概述
12.2 使用Winsock函数
12.3 Winsock对象u-socket
12.3.1 u-socket定义的实例变量
12.3.2 u-socket定义的结构
12.3.3 u-socket的事件处理程序
12.3.4 usocket定义的用户对象函数
12.4 应用程序示例
12.4.1 客户程序
12.4.2 服务器程序
附录A WindowsSockets错误码
A.1 WindowsSockets错误码列表
A.2 WindowsSockets错误码扩展描述
附录B 多点通信与多址广播语义
B.1 多点通信与多址广播引言
B.2 多点通信分类法
B.3 WinSock2的多点通信与多址广播接口元素
B.4 加入多点通信叶子节点的语义
B.5 多点通信套接字与常规套接字之间的语义差别
B.6 现存的多点通信协议如何支持这些扩展
参考文献
分享到:
收藏