《Unix网络编程卷1:套接字联网API》读书笔记
第一部分:简介和TCP/IP
第1章:简介
第2章:传输层:TCP、UDP和SCTP
TCP:传输控制协议,复杂、可靠、面向连接协议

UDP:用户数据报协议,简单、不可靠、无连接协议
SCTP:流控制传输协议,组合两个特性并提供tcp不备的特性

第二部分:基本套接字编程
第3章:套接字编程简介
第4章:基本TCP套接字编程
客户、服务调用:socket、connect、bind、listen、accept、close
大多数TCP服务器是并发的
大多数UDP服务器是迭代的
第5章:TCP客户/服务器程序示例
第6章:I/O复用:select和poll函数
I/O模型:阻塞式I/O模型、非阻塞式I/O模型、I/O复用模型、信号驱动式I/O模型、异步I/O模型
最常用也是默认的I/O模型是阻塞式I/O模型
第7章:套接字选项
第8章:基本UDP套接字编程

第9章:基本SCTP套接字编程
SCTP是多宿的


第10章:SCTP客户/服务器程序例子
第11章:名字与地址转换
域名系统(DNS):用于主机名字与IP地址间的转换
解析器:把主机名转成IP地址或做相反操转换的一组函数
第三部分:高级套接字编程
第12章:IPv4与IPv6的互操作性
第13章:守护进程和inetd超级服务器
守护进程:在后台运行且不与任何终端关联的进程
许多Unix服务器由inetd守护进程启动
第14章:高级I/O函数
第15章:Unix域协议
Unix域套接字是客户和服务器在同一机器上的IPC方法之一
与其他IPC相比,其API几乎等同于网络客户/服务器使用的API
同一机器上,与其他IPC相比,其性能增长表更优
第16章:非阻塞式I/O
可能阻塞的套接字调用:输入操作、输出操作、接受外来连接、发起外出链接
第17章:ioctl操作
ioctl命令分类:套接字操作、文件操作、接口操作、ARP表操作、路由表操作、流系统
第18章:路由套接字
第19章:秘钥管理套接字
密钥管理套接字用于在内核、密钥管理守护进程以及诸如路由守护进程等安全服务消费进程之间交换SA
第20章:广播
使用广播例子:ARP、DHCP、NTP、路由守护进程
第21章:多播
第22章:高级UDP套接字编程
广播和多播应用必须使用udp
第23章:高级SCTP套接字编程
心搏(TCP的保持存活)在SCTP关联上默认就在交换
第24章:外带数据
tcp无外带数据,但提供紧急模式和紧急指针
telnet、rlogin和ftp使用外带数据
第25章:信号驱动式I/O
指进程预先告知内核,使得但某个描述符上发生某事时,内核使用信号通知相关进程
第26章:线程
创建一个新线程通常比fork派生一个新进程快得多
同一进程内的所有线程共享全局变量和描述符
第27章:IP选项
第28章:原始套接字
提供普通tcp、udp不具备的能力:
进程可以读写ICMPv4、IGMPv4、ICMPv6等分组
进程可以读写内核不处理其协议字段的IPv4数据报
进程可以使用IP_HDRINCL套接字选项自行构造IPv4首部
第29章:数据链路访问
能监视由数据链路层接收的分组
能作为普遍应用进程而不是内核的一部分运行某些程序
第30章:客户/服务器程序设计范式
第31章:流
X/Open传输接口(XTI)一般使用流来实现
TPI是从上层进入传输层的SVR4流接口
《Unix网络编程卷1:套接字联网API》读书笔记的更多相关文章
- csapp读书笔记-并发编程
这是基础,理解不能有偏差 如果线程/进程的逻辑控制流在时间上重叠,那么就是并发的.我们可以将并发看成是一种os内核用来运行多个应用程序的实例,但是并发不仅在内核,在应用程序中的角色也很重要. 在应用级 ...
- CSAPP 读书笔记 - 2.31练习题
根据等式(2-14) 假如w = 4 数值范围在-8 ~ 7之间 2^w = 16 x = 5, y = 4的情况下面 x + y = 9 >=2 ^(w-1) 属于第一种情况 sum = x ...
- CSAPP读书笔记--第八章 异常控制流
第八章 异常控制流 2017-11-14 概述 控制转移序列叫做控制流.目前为止,我们学过两种改变控制流的方式: 1)跳转和分支: 2)调用和返回. 但是上面的方法只能控制程序本身,发生以下系统状态的 ...
- CSAPP 并发编程读书笔记
CSAPP 并发编程笔记 并发和并行 并发:Concurrency,只要时间上重叠就算并发,可以是单处理器交替处理 并行:Parallel,属于并发的一种特殊情况(真子集),多核/多 CPU 同时处理 ...
- 读书笔记汇总 - SQL必知必会(第4版)
本系列记录并分享学习SQL的过程,主要内容为SQL的基础概念及练习过程. 书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL i ...
- 读书笔记--SQL必知必会18--视图
读书笔记--SQL必知必会18--视图 18.1 视图 视图是虚拟的表,只包含使用时动态检索数据的查询. 也就是说作为视图,它不包含任何列和数据,包含的是一个查询. 18.1.1 为什么使用视图 重用 ...
- 《C#本质论》读书笔记(18)多线程处理
.NET Framework 4.0 看(本质论第3版) .NET Framework 4.5 看(本质论第4版) .NET 4.0为多线程引入了两组新API:TPL(Task Parallel Li ...
- C#温故知新:《C#图解教程》读书笔记系列
一.此书到底何方神圣? 本书是广受赞誉C#图解教程的最新版本.作者在本书中创造了一种全新的可视化叙述方式,以图文并茂的形式.朴实简洁的文字,并辅之以大量表格和代码示例,全面.直观地阐述了C#语言的各种 ...
- C#刨根究底:《你必须知道的.NET》读书笔记系列
一.此书到底何方神圣? <你必须知道的.NET>来自于微软MVP—王涛(网名:AnyTao,博客园大牛之一,其博客地址为:http://anytao.cnblogs.com/)的最新技术心 ...
- Web高级征程:《大型网站技术架构》读书笔记系列
一.此书到底何方神圣? <大型网站技术架构:核心原理与案例分析>通过梳理大型网站技术发展历程,剖析大型网站技术架构模式,深入讲述大型互联网架构设计的核心原理,并通过一组典型网站技术架构设计 ...
随机推荐
- PostgreSQL参数学习:wal_keep_segments
http://www.postgresql.org/docs/9.3/static/runtime-config-replication.html 参考官方文档: wal_keep_segments ...
- 运行ntpdate报错:Temporary failure in name resolution
一.问题报错: 忽然发现某台机器时间慢了些几分钟,之前没有搭建ntpd服务,目前都是使用的ntpdate加定时任务进行时间同步.直接执行ntpdate报错如下: # ntpdate cn.pool.n ...
- [FJOI2014]最短路径树问题 长链剖分
[FJOI2014]最短路径树问题 LG传送门 B站传送门 长链剖分练手好题. 如果你还不会长链剖分的基本操作,可以看看我的总结. 这题本来出的很没水平,就是dijkstra(反正我是不用SPFA)的 ...
- angularjs 路由机制
前言 AngularJS路由主要有内置的ngRoute和一个基于ngRoute开发的第三方路由模块ui-router,内置的ngRoute有时满足开发需求,使用ui-router可以解决很多原生ngR ...
- php缩放处理png和jpg图片
本例子介绍使用php自带的GD库对png和jpg图片进行放大和缩小处理 <?php$target_width = 120; //目标图片宽度 $target_height = 150; //目标 ...
- CentOS7.2安装mysql-5.7.19多实例
安装多实例之前首先需要先安装mysql,这里就不介绍如何安装mysql了,参考前面的博客:https://www.cnblogs.com/hei-ma/p/9505509.html 安装多实例之前需要 ...
- Mysql基础操作语句
SQL 简单的增删改查 不区分大小写, 表名和字段名可不加引号 查询语句 SELECT * FROM `table_name`; -- 注释 CTRL+/ : 注释 CTRL+/ : 取消注释 /* ...
- Scala基础知识笔记2
1 类 1.1 定义一个简单的类 1.2 field的getter 和 setter方法 感觉成员变量定义成 var 属性名=属性值即可, 不需要定义成 val 或者 private就行, // ...
- Spring学习(3):Spring概述(转载)
1. Spring是什么? Spring是一个开源的轻量级Java SE(Java 标准版本)/Java EE(Java 企业版本)开发应用框架,其目的是用于简化企业级应用程序开发. 在面向对象思想中 ...
- Python异常(基础) except
为什么要异常处理机制:在程序调用层数较深时,向主调函数传递错误信息需要层层return 返回比较麻烦,用异常处理机制可以较简单的传送错误信息 什么是错误 错误是指由于逻辑或语法等导致一个程序已无法正常 ...