《网络程序设计教程》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:吴礼发编著
  • 出 版 社:北京:北京希望电子出版社
  • 出版年份:2002
  • ISBN:7900088156
  • 页数:240 页
图书介绍:

第1章 绪论 1

1-1 概述 1

1-2 网络服务 2

1-2-1 运输层服务 2

1-2-2 数据链路层服务 2

1-3 网络应用编辑接口 3

1-3-1 Berkeley插口API 3

1-3-2 TLI 3

1-3-3 Windows Sockets 3

1-3-4 可视化编程环境下的网络控件 4

1-3-5 其他网络编程接口 4

1-4 网络编程模式 4

1-5 网络编程要考虑的问题 5

1-5-1 并发环境下的网络编程 5

1-5-2 异构环境下的网络编程 5

1-5-3 阻塞与非阻塞通信 6

1-5-4 服务类型的选择 7

1-5-5 差错处理 8

1-6 Unix标准的历史 9

1-6-1 BSD历史 9

1-6-2 Posix的历史 10

1-6-3 Open Group的历史 10

1-6-4 Unix版本和移植性 11

1-7 小结 11

1-8 习题 11

第2章 插口API简介 12

2-1 概述 12

2-2 端口和插口 12

2-3 基本数据结构 13

2-3-1 IPv4插口地址结构 13

2-3-2 IPv6插口地址结构 15

2-3-3 通用插口地址结构 16

2-4 基本插口函数 17

2-4-1 socket函数 17

2-4-2 bind函数 18

2-4-3 connect函数 19

2-4-4 listen函数 20

2-4-5 accept函数 21

2-4-6 getsockname函数 22

2-4-7 getpeername函数 22

2-4-8 shutdown函数 22

2-4-9 close函数 23

2-5 插口I/O函数 23

2-5-1 基本插口I/O函数 24

2-5-2 插口I/O状态查询函数 28

2-6 插口选项函数 32

2-6-1 插口选项函数 33

2-6-2 ioctl函数和fcntl函数 41

2-7 字节排序函数 42

2-8 字节操纵函数 43

2-9 地址转换函数 44

2-10 网络信息查询函数 45

2-10-1 gethostbyname函数 45

2-10-2 gethostbyaddr函数 47

2-10-3 gethostname函数 47

2-10-4 getservbyname函数 47

2-10-5 getserybyport函数 48

2-11 小结 48

2-12 习题 50

第3章 TCP插口编程 51

3-1 概述 51

3-2 TCP协议机制 51

3-2-1 TCP连接的建立和终止 51

3-2-2 TCP的有限状态机 53

3-2-3 TIME_WAIT状态 54

3-2-4 TCP的数据输出过程 55

3-3 基本TCP插口编程 56

3-3-1 TCP插口编程模式 56

3-3-2 实例 58

3-3-3 使用netstat观察TCP连接状态 64

3-3-4非阻塞方式下的客户-服务器程序 67

3-3-5 发送数据大小的选择 75

3-3-6 重要选项的设置 75

3-4 异常情况的处理 76

3-4-1 异常连接的处理 77

3-4-2 服务器的异常终止 77

3-4-3 对SIGPIPE信号的处理 78

3-5 TCP带外数据 79

3-5-1 带外数据的基本原理 79

3-5-2 带外数据的插口编程 80

3-6 异种平台间的数据交换 84

3-7 小结 84

3-8 习题 85

第4章 UDP插口编程 86

4-1 概述 86

4-1-1 UDP协议概述 86

4-1-2 UDP的数据输出过程 86

4-2 基本UDP插口编程 87

4-2-1 UDP编程模式 87

4-2-2 实例 88

4-2-3 测试UDP的不可靠性 93

4-2-4 调用connect( )的UDP应用 97

4-2-5 recvfrom的超时问题 97

4-2-6 数据报的截断 99

4-3 广播和多播 99

4-3-1 广播 100

4-3-2 广播地址 100

4-3-3 广播例程 101

4-3-4 多播 103

4-3-5 多播例程 104

4-4 比较TCP和UDP 107

4-5 小结 107

4-6 习题 108

第5章 基于插口的高级网络编程接口NPORT 109

5-1 概述 109

5-2 基本数据结构NPORT 109

5-3 NPORT中的功能函数 112

5-3-1 NPORTInit函数 113

5-3-2 NPORTModeBlock和NPORTModeNoBlock函数 114

5-3-3 函数NPORTLocalPort和NPORTLocalName 114

5-3-4 函数NPORTREMOTEPort和NPORTRemoteName 115

5-3-5 函数NPORTSPNumber 115

5-3-6 函数NPORTClocse和NPORTShutdown 116

5-3-7 函数NPORTSOpen 118

5-3-8 函数NPORTCOpen 119

5-3-9 函数NPORTDBOpen 121

5-3-10 函数NPORTDOpen 122

5-3-11 函数NPORTSAccept 124

5-3-12 函数NPORTCRequest 124

5-3-13 函数NPORTMsgRdy 126

5-3-14 函数NPORTWrtRdy 128

5-3-15 函数NPORTOOBRdy 129

5-3-16 函数NPORTLWrite 130

5-3-17 函数NPORTLRead 131

5-3-18 函数NPORTDPRead 131

5-3-19 函数NPORTDPWrite 132

5-3-20 函数NPORTDBWrite 133

5-3-21 函数NPORTRWError 134

5-4 基于NPORT网络程序设计 135

5-4-1 TCP NPORT编程模式 135

5-4-2 TCP NPORT程序实例 136

5-4-3 UDP NPORT编程模式 140

5-4-4 UDP NPORT程序实例 140

5-5 小结 141

5-6 习题 142

第6章 网络服务器的设计模式 143

6-1 概述 143

6-2 多进程环境下的网络编程 143

6-2-1 进程的基本概念 143

6-2-2 多进程下的网络编程 143

6-2-2 多进程下的网络编程 143

6-3 多线程环境下的应用程序设计 146

6-3-1 线程的基本概念 146

6-3-2 线程的基本编程接口 148

6-3-3 多线程程序设计 150

6-4 网络服务器的设计模式 158

6-4-1 串行服务器 158

6-4-2 并发服务器 162

6-4-3 不同服务器的比较 165

6-5 小结 166

6-6 习题 166

第7章 数据链路层的网络编程 167

7-1 概述 167

7-2 BPF与DLPI 167

7-3 Libpcap 169

7-3-1 Libpcap简介 169

7-3-2 Libpcap接口函数简介 170

7-3-3 Libpcap程序设计实例 174

7-4 小结 180

7-5 习题 180

第8章 Windows环境下的网络程序设计 181

8-1 概述 181

8-2 WinSock与Berkeley插口API的区别 182

8-2-1 插口数据类型 182

8-2-2 错误代码 182

8-2-3 指针 183

8-2-4 重命名的函数 183

8-2-5 阻塞与非阻塞模式的选择 184

8-2-6 Windows Sockets支持的最大插口数目 185

8-2-7 头文件 185

8-2-8 原始插口 185

8-2-9 Windows插口API对Berkeley插口API的扩展 186

8-3 Windows Sockets接口对Berkeley插口API的扩展 186

8-3-1 基本的扩展函数 188

8-3-2 WinSock2中扩展的API函数 195

8-4 基于Windows Sockets API的网络编程 206

8-4-1 基于类的网络程序设计 206

8-4-2 基于控件的网络程序设计 210

8-5 小结 217

8-6 习题 217

第9章 VMS操作系统下的DECnet网络编程 218

9-1 概述 218

9-1-1 VMS或OpenVMS 218

9-1-2 DECnet 219

9-2 DECnet网络编程基础 220

9-2-1 基本概念 220

9-2-2 任务到任务通信 221

9-2-3 所用系统服务调用 221

9-2-4 逻辑链路管理 222

9-2-5 非透明通信过程中利用的数据结构 222

9-2-6 非透明通信过程描述 225

9-2-7 常见错误分析 227

9-3 实例 228

9-4 小结 239

参考文献 240