图书介绍

TCP/IP网络编程基础教程PDF|Epub|txt|kindle电子书版本网盘下载

TCP/IP网络编程基础教程
  • 王雷 著
  • 出版社: 北京:北京理工大学出版社
  • ISBN:9787568237628
  • 出版时间:2017
  • 标注页数:275页
  • 文件大小:30MB
  • 文件页数:287页
  • 主题词:计算机网络-通信协议-教材;计算机网络-程序设计-教材

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 TCP/IP参考模型的通信原理2

1.2 基于套接字的网络通信原理4

1.2.1 套接字概述4

1.2.2 基于套接字的TCP/IP网络通信原理5

1.2.3 基于套接字的TCP/IP网络通信软件实现流程8

1.3 基于套接字的TCP/IP网络通信过程中的相关问题10

1.3.1 客户算法中服务器套接字端点地址查找问题10

1.3.2 客户算法中本地端点地址的选择问题10

1.3.3 套接字端点地址的存储结构问题11

1.3.4 客户-服务器模型中的汇聚点问题12

1.3.5 主机字节顺序与网络字节顺序问题12

1.3.6 IP地址与端口号的查找问题13

1.3.7 由协议名查找协议号的问题15

1.3.8 服务器算法中熟知端口的绑定问题16

1.4 套接字API概述16

1.4.1 BSD UNIX套接字API系统函数简介16

1.4.2 Windows套接字API扩展系统函数简介24

1.5 基于套接字的TCP/IP网络通信模型与实现方法34

1.5.1 UNIX/Linux环境下UDP套接字通信模型与实现方法34

1.5.2 UNIX/Linux环境下TCP套接字通信模型与实现方法37

1.5.3 Windows环境下UDP套接字通信模型与实现方法41

1.5.4 Windows环境下TCP套接字通信模型与实现方法45

1.6 本章小结50

本章习题50

第2章 循环服务器软件的实现原理与方法51

2.1 客户/服务器模型中服务器软件实现的复杂性51

2.1.1 服务器设功能需求的复杂性51

2.1.2 服务器类型的复杂性51

2.2 循环服务器的进程结构53

2.2.1 循环UDP服务器的进程结构53

2.2.2 循环TCP服务器的进程结构54

2.3 循环服务器软件的设计流程54

2.3.1 循环UDP服务器软件的设计流程54

2.3.2 循环TCP服务器软件的设计流程56

2.4 基于循环服务器的网络通信例程剖析57

2.4.1 相关系统函数及其调用方法简介57

2.4.2 UNIX/Linux环境下基于TCP套接字的例程剖析72

2.4.3 Windows环境下基于TCP套接字的例程剖析77

2.4.4 UNIX/Linux环境下基于UDP套接字的例程剖析82

2.4.5 Windows环境下基于UDP套接字的例程剖析86

2.4.6 UNIX/Linux环境下基于TCP套接字的文件传输例程剖析91

2.4.7 UNIX/Linux环境下基于TCP套接字的音频传输例程剖析95

2.4.8 Windows环境下基于TCP套接字的图像传输例程剖析104

2.4.9 Windows环境下基于TCP套接字的视频传输例程剖析108

2.5 本章小结111

本章习题112

第3章 服务器与客户进程中的并发机制113

3.1 服务器与客户进程中的并发概念113

3.1.1 服务器进程中的并发问题113

3.1.2 客户进程中的并发问题114

3.1.3 服务器与客户端并发性的实现方法115

3.1.4 循环服务器与并发服务器115

3.1.5 多进程与多线程并发概念115

3.1.6 并发等级116

3.2 UNIX/Linux环境下基于多进程并发机制117

3.2.1 创建一个新进程117

3.2.2 终止一个进程118

3.2.3 获得一个进程的进程标识118

3.2.4 获得一个进程的父进程的进程标识119

3.2.5 僵尸进程的清除119

3.2.6 多进程例程剖析124

3.3 UNIX/Linux环境下基于多线程的并发机制125

3.3.1 创建一个新线程125

3.3.2 设置线程的运行属性127

3.3.3 终止一个线程132

3.3.4 获得一个线程的线程标识132

3.3.5 多线程例程剖析132

3.4 Windows环境下基于多进程的并发机制133

3.4.1 创建一个新进程133

3.4.2 打开一个进程137

3.4.3 终止/关闭一个进程137

3.4.4 获得进程的可执行文件或DLL对应的句柄138

3.4.5 获取与指定窗口关联在一起的一个进程和线程标识符138

3.4.6 获取进程的运行时间138

3.4.7 获取当前进程ID138

3.4.8 等待子进程/子线程的结束139

3.4.9 多进程例程剖析140

3.5 Windows环境下基于多线程的并发机制141

3.5.1 在本地进程中创建一个新线程141

3.5.2 在远程进程中创建一个新线程142

3.5.3 获取/设置线程的优先级143

3.5.4 终止一个线程144

3.5.5 挂起/启动一个线程145

3.5.6 获得一个线程的标识145

3.5.7 多线程例程剖析145

3.6 从线程/进程分配技术146

3.6.1 从线程/进程预分配技术146

3.6.2 延迟的从线程/进程分配技术146

3.6.3 两种从线程/进程分配技术的结合147

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

3.7.1 多进程与多线程的任务执行效率比较147

3.7.2 多进程与多线程的创建与销毁效率比较149

3.8 本章小结151

本章习题152

第4章 多进程并发机制的实现原理与方法153

4.1 多进程并发TCP服务器与客户端进程结构153

4.1.1 多进程并发TCP服务器进程结构153

4.1.2 多进程并发客户端进程结构154

4.2 UNIX/Linux环境下多进程并发TCP服务器软件设计流程154

4.2.1 不固定进程数的并发TCP服务器软件设计流程154

4.2.2 固定进程数的并发TCP服务器软件设计流程155

4.3 UNIX/Linux环境下多进程并发TCP服务器通信实现例程155

4.3.1 不固定进程数的多进程并发TCP服务器通信实现例程155

4.3.2 固定进程数的多进程并发TCP服务器通信实现例程160

4.3.3 UNIX/Linux服务器与Windows客户端通信实现例程164

4.3.4 基于SMTP和POP3协议的电子邮件收发实现例程166

4.4 本章小结173

本章习题174

第5章 多线程并发TCP服务器软件的实现原理与方法175

5.1 线程之间的协调与同步175

5.1.1 UNIX/Linux环境下线程之间的协调与同步175

5.1.2 Windows环境下线程之间的协调与同步192

5.2 基于多线程的并发TCP服务器软件设计流程202

5.2.1 不固定线程数的并发TCP服务器软件设计流程202

5.2.2 固定线程数的并发TCP服务器软件设计流程203

5.3 多线程并发TCP服务器实现例程203

5.3.1 UNIX/Linux环境下多线程并发TCP服务器实现例程203

5.3.2 Windows环境下多线程并发TCP服务器实现例程208

5.4 本章小结212

本章习题213

第6章 单线程并发机制的实现原理与方法214

6.1 单线程并发TCP服务器与客户端的进程结构214

6.1.1 单线程并发TCP服务器的进程结构214

6.1.2 单线程并发TCP客户端的进程结构215

6.2 单线程并发TCP服务器软件的设计流程216

6.2.1 UNIX/Linux环境下单线程并发TCP服务器软件设计流程216

6.2.2 Windows环境下单线程并发TCP服务器软件设计流程218

6.3 单线程并发TCP服务器实现例程219

6.3.1 UNIX/Linux环境下单线程并发TCP服务器实现例程219

6.3.2 Windows环境下单线程并发TCP服务器实现例程221

6.3.3 UNIX/Linux环境下单线程并发TCP客户端实现例程223

6.3.4 Windows环境下单线程并发TCP客户端实现例程228

6.4 本章小结230

本章习题230

第7章 基于POOL和EPOLL的并发机制与实现方法231

7.1 POOL简介231

7.1.1 POOL的定义231

7.1.2 线程池的基本工作原理232

7.1.3 线程池的应用范围233

7.1.4 使用线程池的风险234

7.2 UNIX/Linux环境下线程池的C语言实现例程235

7.2.1 线程池的主要组成部分235

7.2.2 线程池的C语言实现例程剖析236

7.2.3 基于线程池的并发TCP服务器例程240

7.4 EPOLL简介248

7.4.1 EPOLL的定义248

7.4.2 EPOLL的基本接口函数248

7.4.3 EPOLL的事件模式249

7.4.4 EPOLL的工作原理250

7.5 基于EPOLL线程池的C语言例程250

7.5.1 基于EPOLL线程池的C语言例程剖析250

7.5.2 基于EPOLL的并发TCP服务器例程254

7.6 本章小结257

本章习题257

第8章 客户/服务器系统中的死锁问题259

8.1 死锁的定义259

8.2 产生死锁的原因260

8.2.1 竞争资源引起进程死锁260

8.2.2 进程推进顺序不当引起死锁260

8.3 产生死锁的必要条件260

8.4 处理死锁的基本方法261

8.5 存在死锁问题的多线程例程262

8.6 本章小结263

本章习题264

附录A GCC编译器简介265

A.1 GCC编译器所支持的源程序格式265

A.2 GCC编译选项解析266

A.2.1 GCC编译选项分类266

A.2.2 GCC编译过程解析268

A.2.3 多个程序文件的编译269

A.3 GCC编译器的安装269

附录B 课程实验272

B.1 课程实验报告模板272

B.2 《SocketAPI函数调用方法》课程实验273

B.3 《电子邮件收发系统的设计与实现》课程实验273

B.4 《文本聊天系统的设计与实现》课程实验273

B.5 《多媒体网络聊天系统的设计与实现》课程实验274

参考文献275

热门推荐