
版权信息书 名: Linux/UNIX网络编程
作者:甘刚
出版社:中国水利水电出版社
出版时间: 2008
ISBN: 9787508454672
开本: 16
定价: 26.00 元
内容简介本书详细介绍了在Unix系统下基于TCP/IP网络套接口的基本编程方法,包括迭代与并发服务器编写方法、进程与线程编程技术、I/O编程技术、IPv4与IPv6的兼容性、原始套接口、数据链路访问技术、广播与多播技术等。为满足教学实际需要,在本书最后一章,给出了Socket基本编程、服务器与单客户的连接处理、多进程服务器模板、多线程编写模板、线程专用数据TSD实现模板等5个实验指导。在本书编写过程中,编著者参阅了国内外同类书籍及各类报刊杂志,将精华思想应用到教学实践中,形成的教学成果与体会反映在书中。在书中相关章节,编者都至少列举一个完整的例子来说明问题,学习者将书中的基础实验做好,再通过相关章节中的实验进行验证,就可以学习高级Linux/UNIX编程了。
本书在编写上力求由简到繁、由浅入深和循序渐进,读者不但可以学会程序设计的基本知识、设计思想和方法,还可以学会网络程序设计的通用方法与步骤。本书适合作为高等院校计算机及相关专业学生的教材,也可作为广大计算机爱好者、网络研究人员和网络程序开发人员的自学参考书。
编辑推荐培养学生实际动手能力,加大了实战检验的比重。教材体系合理,展现了高校计算机教育教学改革的最新科研成果。
采用“案例引导,任务驱动”的编写方式,便于激发学习兴趣。
教学资源丰富,提供电子教案和程序源代码。
目录序
前言
第1章TCP/IP简介
1.1概述
l.1.1基本的C/S服务模型
1.1.2OSI模型和TCP/IP四层结构
1.2IP协议介绍
1.2.lIP数据报的格式
1.2.2IP地址
1.2.3子网掩码(subnetmask)
1.3TCP协议介绍
1.3.1TCP连接的建立与终止
1.3.2TCP状态转换图
1.4LJDP协议
1.5端口号
1.6本章小结
1.7实战检验
理论巩固
第2章套接字编程简介
2.1套接字基础
2.2套接字的类型
2.3套接字地址结构
2.3.1I.Pv4套接字地址结构
2.3.2IPv6套接字地址结构
2.3.3两种套接字地址结构的比较
2.3.4通用套接字地址结构
2.4套接字基本函数
2.4.1字节排序函数
2.4.2字节操纵函数
2.4.3IP地址转换函数
.2.4.4isfdtype()函数
2.5值.结果参数
2.6本章小结
2.7实战检验
理论巩固
上机实战
第3章基本"l'CP套接字编程
3,1TCP套接字编程
3.1.1socket()函数
3.1.2connect()函数
3.1.3bind()函数
3.1.4listen()函数
3.1.5accept()函数
3.1.6数据传输函数
3.1.7close()函数
3.2TCP套接字编程实例
3.3服务器的3种异常情况
3.3.1服务器主机崩溃
3.3.2服务器主机崩溃后重启
3.3.3服务器主机关闭
3.4本章小结
3.5实战检验+
理论巩固
上机实战
第4章基本UDP套接口编程
4.1UDP套接字编程
4.1.1recvfrom()函数
4.1.2sendto函数
4.2UDP套接字编程实例
4.3UDP中对数据报的各项处理
4.3.1数据报的丢失
4.3.2验证收到的响应
4.3.3服务器进程未运行
4.4connect函数用于
4.5本章小结
4.6实战检验
理论巩固
上机实战
第5章并发服务器
5.1服务器的分类
5.2多进程并发服务器
5.2.1进程基础
5.2.2进程创建
5.2.3进程终止L
5.2.4多进程并发服务器
5.2.5多进程并发服务器实例
5.3多线程服务器
5.3.1线程基础
5.3.2线程基础函数
5.3.3给新线程传递参数
5.3.4多线程并发服务器实例
5.3.5线程安全函数
5.3.6线程安全实例
5.3.7用函数参变量实现线程安全性
5.4本章小结
5.5实战检验
理论巩固
上机实战
第6章名字与地址转换编程;
6.1概述.
6.2域名系统.
6.3gethostbyname()函数
6.4RES—USE—INET6解析器选项
6.5gethostbyname2函数对IPv6的支持
6.6gethostbyaddr()函数
6.7uname()函数
6.8gethostname函数
6.9getservbyname和getservbyport函数
6.10getaddrinfo、gai_strerror.和host—serv函数
6.11freeaddrinfo函数
6.12使用getaddrinfo的了CP和IJD
6.13getnameinfo函数
6.14gethostbyaddr实例
6.15本章小结
6.16实战检验
理论巩固
上机实战
第7章IPv4和IPv6编程
7.1IPv4客户与IPv6服务器
7.2IPv6客户与IPv4服务器
7.3IPv6一ADDRFORM套接口选顼
7.4IPv6地址测试宏
7.5源代码的可移植性
7.6本章小结
7.7实战检验
理论巩固
上机实战
第8章守护进程和inetd超级服务器
8.1守护进程的原理
8.1.1启动守护进程
8.1.2输出守护进程消息
8.1.3syslog函数
8.1.4创建守护进程
8.1.5以守护进程方式运行的时间服务器
8.2inetd的工作原理
8.2.1概念
8.2.2工作流程
8.2.3inetd处理并发
8.3本章小结
8.4实战检验
理论巩固
上机实战
第9章I/0编程
9.1I/O模型
9.2select函数
9.3shutdown函数
9.4poll函数
9.5使用select函数的TCP例子
9.6高级的I/O编程
9.6.1recv和send函数
9.6.2recvmsg和sendmsg函数
9.7非阻塞connect
9.8ioctl函数
9.8.1套接口操作
9.8.2文件操作
9.8.3接口配置
9.8.4接口操作
9.8.5ARP操作
9.8.6路由表操作
9.9本章小结
9.10实战检验
理论巩固
上机实战
第10章广播与多播编程
10.1广播的概念
10.1.1广播的原理
10.1.2广播的示例
10.2多播概念
10.2.1多播与广播的比较
10.2.2多播套接口选项
10.2.3多播的实例
10.3本章小结
10.4理论与巩固
实战检验
上机实战
第1P章路由套接口编程
11.1概念和数据链路套接口地址结构
1].2sysctl操作
11.3接口名和索引函数
]1.4本章小结
11.5实战检验
理论与巩固
上机实战
第72章信号量编程
12.1信号的概念
12.2信号的概念及常见信号介绍
12.2.1signal函数
12.2.2处理SIGCHLD信号
12.2.3wait和waitpid函数
12.2.4kill和raise函数
12.2.5SIGPIPE信号
12.2.6alarm和pause函数
12.2.7sigprocmask函数
12.2.8sigpending函数
12.2.9sigaction函数
12.2.10sigsetjmp和siglongjmp函数
12.2.l1sigsuspend函数
12.2.12abort函数
12.2.13system函数
12.2.14sleep函数
12.3例子:使用SIGIO的UDP回射服务器程序
12.4,本章小结
12.5实战检验
理论巩固
上机实战
第P3章原始套接口与数据链路访问编程
13.1原始套接口创建
13.2原始套接口输出
]3.3原始套接口输入
13.4原始套接字编程实例
13.4.1实例l:拒绝服务攻击
13.4.2实例2:ICMP包的构建、发送和接收
13.4.3实例3:ping程序
13.5数据链路层访问
13.5.1BPF:BSD分组过滤器
13.5.2数据链路提供者DLPI
13.5.3Linux的SOCKPACKET20
13.5.4分组捕获函数库libpca
13.5.5libpcap的库函数
13.5.6数据链路层访问实例
13.6本章小结
13.7理论与巩固
实战检验
上机实战
第P4章实验指导
14.1Socket基本编程
14.2服务器与单客户的连接处理
14.3多进程服务器模板
14.4多线程编写模板
14.5线程专用数据TSD实现模板
参考文献
……