图书介绍

TCP/IP网络编程技术基础pdf电子书版本下载

TCP/IP网络编程技术基础
  • 王雷编著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:7512109067
  • 出版时间:2012
  • 标注页数:185页
  • 文件大小:9MB
  • 文件页数:195页
  • 主题词:电子商务-高等职业教育-教材

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快] 温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页 直链下载[便捷但速度慢]   [在线试读本书]   [在线获取解压码]

下载说明

TCP/IP网络编程技术基础PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如 BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 TCP/IP网络通信原理 1

1.1 TCP/IP协议概述 1

1.1.1 TCP/IP参考模型 1

1.1.2 TCP/IP参考模型的通信原理 2

1.1.3 LINUX系统实现网络通信的基本原理 3

1.2 TCP/IP网络通信中的客户-服务器模型 9

1.2.1 客户-服务器模型 9

1.2.2 客户-服务器模型中的汇聚点问题及其解决方法 10

1.2.3 客户-服务器模型中服务器设计与实现的复杂性 10

1.2.4 服务器中的并发问题 11

1.2.5 服务器并发性的实现方法 11

1.2.6 服务器的分类 12

1.3 TCP/IP网络通信中的客户软件的设计流程 14

1.3.1 TCP客户算法 14

1.3.2 UDP客户算法 14

1.3.3 客户算法中服务器套接字端点地址的查找问题 14

1.3.4 客户算法中本地端点地址的选择问题 19

1.4 TCP/IP网络通信中的服务器软件的设计流程 20

1.4.1 主动套接字与被动套接字 20

1.4.2 TCP服务器算法 20

1.4.3 UDP服务器算法 20

1.4.4 服务器算法中熟知端口的绑定问题 21

1.5 本章小结 21

本章习题 21

第2章 套接字API 23

2.1 套接字API概述 23

2.2 套接字API中的主要系统函数 24

2.2.1 socket()函数 24

2.2.2 connect()函数 24

2.2.3 bind()函数 25

2.2.4 listen()函数 25

2.2.5 accept()函数 26

2.2.6 send()函数 26

2.2.7 recv()函数 27

2.2.8 sendto()函数 27

2.2.9 recvfrom()函数 28

2.2.10 close()函数 28

2.2.11 shutdown()函数 29

2.2.12 getpeername()函数 29

2.2.13 setsockopt()函数 30

2.2.14 getsockopt()函数 31

2.3 基于套接字API的C/S网络通信模型 32

2.3.1 基于UDP的C/S网络通信模型 32

2.3.2 基于TCP的C/S网络通信模型 34

2.4 本章小结 36

本章习题 36

第3章 循环服务器例程剖析 37

3.1 循环服务器进程结构 37

3.1.1 循环的UDP服务器进程结构 37

3.1.2 循环的TCP服务器进程结构 37

3.2 循环服务器软件设计流程 38

3.2.1 循环的UDP服务器软件设计流程 38

3.2.2 循环的TCP服务器软件设计流程 39

3.3 循环的无连接的TIME服务器例程 40

3.3.1 相关系统函数及其调用方法简介 40

3.3.2 服务器例程剖析 47

3.4 访问TIME服务的无连接的客户端例程 51

3.5 循环的面向连接的DAYTIME服务器例程 53

3.6 访问DAYTIME服务的面向连接的客户端例程 55

3.7 本章小结 56

本章习题 57

第4章 服务器中的并发机制 58

4.1 服务器中的并发概念 58

4.1.1 循环服务器与并发服务器 58

4.1.2 基于多进程或多线程的服务器并发概念 58

4.1.3 并发等级 59

4.2 基于多进程的服务器并发机制 60

4.2.1 创建一个新进程 60

4.2.2 终止一个进程 61

4.2.3 获得一个进程的进程标识 61

4.2.4 获得一个进程的父进程的进程标识 61

4.2.5 僵尸进程的清除 62

4.3 基于多线程的服务器并发机制 67

4.3.1 创建一个新线程 67

4.3.2 设置线程的运行属性 69

4.3.3 终止一个线程 74

4.3.4 获得一个线程的线程标识 75

4.3.5 多线程例程剖析 75

4.4 从线程/进程分配技术 76

4.4.1 从线程/进程预分配技术 76

4.4.2 延迟的从线程/进程分配技术 76

4.4.3 两种从线程/进程分配技术的结合 77

4.5 基于多进程与基于多线程的并发机制的性能比较 77

4.5.1 多进程与多线程的任务执行效率比较 77

4.5.2 多进程与多线程的创建与销毁效率比较 79

4.6 本章小结 82

本章习题 82

第5章 基于多进程并发的面向连接服务器例程剖析 83

5.1 基于多进程并发的面向连接服务器的进程结构 83

5.2 基于多进程并发的面向连接服务器软件的设计流程 84

5.2.1 不固定进程数的并发模型设计流程 84

5.2.2 固定进程数的并发模型设计流程 84

5.3 基于多进程并发的面向连接服务器例程 85

5.3.1 例程一 85

5.3.2 例程二 89

5.4 本章小结 95

本章习题 95

第6章 基于多线程并发的面向连接服务器例程剖析 96

6.1 线程之间的协调与同步 96

6.1.1 互斥锁 96

6.1.2 信号量 103

6.1.3 条件变量 112

6.2 基于多线程并发的面向连接服务器软件的设计流程 115

6.3 基于多线程并发的面向连接服务器例程 117

6.4 本章小结 120

本章习题 120

第7章 基于单线程并发的面向连接服务器例程剖析 121

7.1 单线程并发服务器的线程结构 121

7.2 单线程并发服务器程序设计流程 122

7.3 基于单线程并发的面向连接服务器例程 125

7.4 本章小结 130

本章习题 131

第8章 基于线程池并发的面向连接服务器例程剖析 132

8.1 线程池简介 132

8.1.1 线程池定义 132

8.1.2 线程池的基本工作原理 133

8.1.3 线程池的应用范围 134

8.1.4 使用线程池的风险 135

8.2 一个LINUX下线程池的C语言实现 135

8.3 基于线程池并发的面向连接服务器例程 140

8.4 本章小结 148

本章习题 148

第9章 基于Epoll的并发的面向连接服务器例程剖析 149

9.1 Epoll简介 149

9.2 Epoll的工作原理与调用方法 150

9.2.1 Epoll的基本接口函数 150

9.2.2 Epoll的事件模式 151

9.2.3 Epoll的工作原理 151

9.3 基于Epoll线程池的C语言例程 152

9.4 基于Epoll的并发的面向连接服务器例程 156

9.5 本章小结 160

本章习题 160

第10章 客户进程中的并发机制 161

10.1 实现并发客户的意义与进程结构 161

10.1.1 实现并发客户的意义 161

10.1.2 基于多线程/多进程的并发客户的进程结构 162

10.1.3 基于单线程的并发客户的进程结构 162

10.2 基于多线程的并发客户例程 163

10.3 基于单线程的并发客户例程 165

10.4 基于多进程的并发客户例程 167

10.5 本章小结 169

本章习题 169

第11章 客户-服务器系统中的死锁问题 170

11.1 死锁的定义 170

11.2 产生死锁的原因 170

11.2.1 竞争资源引起进程死锁 170

11.2.2 进程推进顺序不当引起死锁 171

11.3 产生死锁的必要条件 171

11.4 处理死锁的基本方法 172

11.5 存在死锁问题的多线程例程 173

11.6 本章小结 174

本章习题 175

第12章 GCC编译器简介 176

12.1 GCC编译器所支持的源程序格式 176

12.2 GCC编译选项解析 176

12.2.1 GCC编译选项分类 176

12.2.2 GCC编译过程解析 179

12.2.3 多个程序文件的编译 180

12.3 GCC编译器的安装 180

12.4 本章小结 182

本章习题 183

参考文献 184

精品推荐