内容简介
本书详细介绍了在Unix系统下基于TCP/IP网络套接口的基本编程方法,包括迭代与并发服务器编写方法、进程与线程编程技术、I/O编程技术、IPv4与IPv6的兼容性、原始套接口、数据链路访问技术、广播与多播技术等。为满足教学实际需要,在本书最后一章,给出了Socket基本编程、服务器与单客户的连接处理、多进程服务器模板、多线程编写模板、线程专用数据TSD实现模板等5个实验指导。在本书编写过程中,编著者参阅了国内外同类书籍及各类报刊杂志,将精华思想应用到教学实践中,形成的教学成果与体会反映在书中。在书中相关章节,编者都至少列举一个完整的例子来说明问题,学习者将书中的基础实验做好,再通过相关章节中的实验进行验证,就可以学习高级Linux/UNIX编程了。
本书在编写上力求由简到繁、由浅入深和循序渐进,读者不但可以学会程序设计的基本知识、设计思想和方法,还可以学会网络程序设计的通用方法与步骤。本书适合作为高等院校计算机及相关专业学生的教材,也可作为广大计算机爱好者、网络研究人员和网络程序开发人员的自学参考书。
本书配有免费电子教案,读者可以从中国水利水电出版社网站上下载,网址为:http://www.waterpub.com.cn/softdown/。
编辑推荐
丛书特点:
培养学生实际动手能力,加大了实战检验的比重。
教材体系合理,展现了高校计算机教育教学改革的最新科研成果。
采用“案例引导,任务驱动”的编写方式,便于激发学习兴趣。
教学资源丰富,提供电子教案和程序源代码。
媒体评论
第1章 TCP/IP简介
1.1 概述
1.1.1 基本的C/S服务模型
网络编程是指编写的网络通信程序可以与网络上的其他程序进行通信。相互通信的网络程序通常可以分为两部分:客户端(Client)和服务器端(Server)。在图中给出了一个最简单的C/S服务模型。
在此模型中,客户和服务器之间采用的是一对一的关系,即客户一次只与一个服务器通信。当然一个客户同时与多个服务器进行通信,一个服务器同时与多个客户通信的情况也存在。以最常用到的使用Web浏览器浏览网页为例,IE浏览器在这里就是客户端,而远程提供信息的服务器就是服务器端,可以在5分钟内与许多不同的Web服务器通信;反之从服务器的角度来看,一台Web服务器也可以同时处理多个客户的请求。
对刚开始学习网络编程的读者来说,当第一次看到对C/S服务模型的介绍时,可能对它的理解就只是图中所描述的逻辑关系(一端享受服务,一端提供服务)而已,而并不是非常清楚用户数据和服务器的数据是怎么完成相互传递的。
……
目录
序
前言
第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子网掩码(subnet mask)
1.3TCP协议介绍
1.3.1TCP连接的建立与终止
1.3.2 TCP状态转换图
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.4 isfdtype()函数
2.5值.结果参数
2.6本章小结
2.7实战检验
理论巩固
上机实战
第3章基本"l'CP套接字编程
3,1TCP套接字编程
3.1.1socket()函数
3.1.2connect()函数
3.1.3bind()函数
3.1.4 listen()函数
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.4 connect函数用于
4.5本章小结
4.6实战检验
理论巩固
上机实战
第5章并发服务器
5.1服务器的分类
5.2多进程并发服务器
5.2...
书摘
第1章 TCP/IP简介
1.1 概述
1.1.1 基本的C/S服务模型
网络编程是指编写的网络通信程序可以与网络上的其他程序进行通信。相互通信的网络程序通常可以分为两部分:客户端(Client)和服务器端(Server)。在图中给出了一个最简单的C/S服务模型。
在此模型中,客户和服务器之间采用的是一对一的关系,即客户一次只与一个服务器通信。当然一个客户同时与多个服务器进行通信,一个服务器同时与多个客户通信的情况也存在。以最常用到的使用Web浏览器浏览网页为例,IE浏览器在这里就是客户端,而远程提供信息的服务器就是服务器端,可以在5分钟内与许多不同的Web服务器通信;反之从服务器的角度来看,一台Web服务器也可以同时处理多个客户的请求。
对刚开始学习网络编程的读者来说,当第一次看到对C/S服务模型的介绍时,可能对它的理解就只是图中所描述的逻辑关系(一端享受服务,一端提供服务)而已,而并不是非常清楚用户数据和服务器的数据是怎么完成相互传递的。
……