第一部分:简介和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》读书笔记的更多相关文章

  1. csapp读书笔记-并发编程

    这是基础,理解不能有偏差 如果线程/进程的逻辑控制流在时间上重叠,那么就是并发的.我们可以将并发看成是一种os内核用来运行多个应用程序的实例,但是并发不仅在内核,在应用程序中的角色也很重要. 在应用级 ...

  2. CSAPP 读书笔记 - 2.31练习题

    根据等式(2-14) 假如w = 4 数值范围在-8 ~ 7之间 2^w = 16 x = 5, y = 4的情况下面 x + y = 9 >=2 ^(w-1)  属于第一种情况 sum = x ...

  3. CSAPP读书笔记--第八章 异常控制流

    第八章 异常控制流 2017-11-14 概述 控制转移序列叫做控制流.目前为止,我们学过两种改变控制流的方式: 1)跳转和分支: 2)调用和返回. 但是上面的方法只能控制程序本身,发生以下系统状态的 ...

  4. CSAPP 并发编程读书笔记

    CSAPP 并发编程笔记 并发和并行 并发:Concurrency,只要时间上重叠就算并发,可以是单处理器交替处理 并行:Parallel,属于并发的一种特殊情况(真子集),多核/多 CPU 同时处理 ...

  5. 读书笔记汇总 - SQL必知必会(第4版)

    本系列记录并分享学习SQL的过程,主要内容为SQL的基础概念及练习过程. 书目信息 中文名:<SQL必知必会(第4版)> 英文名:<Sams Teach Yourself SQL i ...

  6. 读书笔记--SQL必知必会18--视图

    读书笔记--SQL必知必会18--视图 18.1 视图 视图是虚拟的表,只包含使用时动态检索数据的查询. 也就是说作为视图,它不包含任何列和数据,包含的是一个查询. 18.1.1 为什么使用视图 重用 ...

  7. 《C#本质论》读书笔记(18)多线程处理

    .NET Framework 4.0 看(本质论第3版) .NET Framework 4.5 看(本质论第4版) .NET 4.0为多线程引入了两组新API:TPL(Task Parallel Li ...

  8. C#温故知新:《C#图解教程》读书笔记系列

    一.此书到底何方神圣? 本书是广受赞誉C#图解教程的最新版本.作者在本书中创造了一种全新的可视化叙述方式,以图文并茂的形式.朴实简洁的文字,并辅之以大量表格和代码示例,全面.直观地阐述了C#语言的各种 ...

  9. C#刨根究底:《你必须知道的.NET》读书笔记系列

    一.此书到底何方神圣? <你必须知道的.NET>来自于微软MVP—王涛(网名:AnyTao,博客园大牛之一,其博客地址为:http://anytao.cnblogs.com/)的最新技术心 ...

  10. Web高级征程:《大型网站技术架构》读书笔记系列

    一.此书到底何方神圣? <大型网站技术架构:核心原理与案例分析>通过梳理大型网站技术发展历程,剖析大型网站技术架构模式,深入讲述大型互联网架构设计的核心原理,并通过一组典型网站技术架构设计 ...

随机推荐

  1. BZOJ4034_树上操作_KEY

    题目传送门 这道题可以树链剖分+线段树. 其他操作模板,第二个操作只需要将x~x+size[x]-1区间加值即可. code: #include <cstdio> #include < ...

  2. 【vijos1049】送给圣诞夜的礼品

    题面 描述 当小精灵们把贺卡都书写好了之后.礼品准备部的小精灵们已经把所有的礼品都制作好了.可是由于精神消耗的缘故,他们所做的礼品的质量越来越小,也就是说越来越不让圣诞老人很满意.可是这又是没有办法的 ...

  3. JavaWeb(十三)——使用Session防止表单重复提交

    在平时开发中,如果网速比较慢的情况下,用户提交表单后,发现服务器半天都没有响应,那么用户可能会以为是自己没有提交表单,就会再点击提交按钮重复提交表单,我们在开发中必须防止表单重复提交. 一.表单重复提 ...

  4. Vue学习计划基础笔记(三)-class与style绑定,条件渲染和列表渲染

    Class与style绑定.条件渲染和列表渲染 目标: 熟练使用class与style绑定的多种方式 熟悉v-if与v-for的用法,以及v-if和v-for一起使用的注意事项 class与style ...

  5. html js div随鼠标移动

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  6. ERROR [IM002] [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序

    在用c#生成应用程序的时候,读写dbf时,open方法出错 ERROR [IM002] [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序 以前这个程序是用着好 ...

  7. Erlang/Elixir: 使用 OpenCV, Python 搭建图片缩略图服务器

    这篇文章是在OSX上测试和运行的的, Ubuntu下的安装和配置请移步到这里 应用程序进程树, 默认 Poolboy 中初始化10个用于处理图片的 Python 工作进程(Worker) 首先安装Op ...

  8. CS小分队第二阶段冲刺站立会议(5月28日)

    昨日成果:昨天对我们的软件的主界面进行了思考,考虑到许多人建议我们团队添加可以自主增加软件快捷键的功能,我对这一想法的可行性和项目总体策划进行评估分析后,决定正式实施:已经完成从电脑上添加文件在我们的 ...

  9. 用C++实现简单随机二元四则运算

    让我们想看看二元四则运算都需要实现什么: (1) 定制题目数量 (2) 是否有乘除法 (3) 题目数值范围 (4) 加减有无负数 (5) 除法有无余数 (6) 是否支持分数(真分数.假分数…) (7) ...

  10. Microsoft Orleans 之安装

    先决条件 Orleans 是一个.net 类库集,为了使用它,你需要.net 4.5.1 或者更高版本,开发工具集需要visual studio 2015 或者更高版本或者其他支持的开发工具,不支持V ...