第一部分:简介和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. 【SQLSERVER】如何找出字符串中的数字

    可以通过写自定义函数实现,以下提供两种思路来解决: 1.通过正则匹配,找到字符串中的数字,一个一个拼起来 /*方法一: 一个一个找出来*/ CREATE FUNCTION [dbo].[Fun_Get ...

  2. Yii2.0 高级模版编写使用自定义组件(component)

    翻译自:http://www.yiiframework.com/wiki/760/yii-2-0-write-use-a-custom-component-in-yii2-0-advanced-tem ...

  3. 一个奇怪的JS函数

    今天在分析一个jQuery插件源码的时候,发现了一个奇怪的函数. 这个函数的目的是为数字补零,如传入7,输出07,传入12输出12.由于是对时间补零,只截取后两位. // add leading ze ...

  4. 移动端推广APP防作弊机制之依我见

    本文来自网易云社区 在广告投放过程中,虚假流量常常给广告运营人员带来麻烦,影响广告投放的效果,如何预防作弊,不妨先来重现一下流量产生的场景,用户点击广告之后,一般都会落到广告主的网页,或者安装广告主的 ...

  5. idea项目 run、debug变灰色的问题

    点击如图所示位置的下来三角按钮,然后选择Edit Configurations,或者点击菜单栏Run>Edit Configurations 2 在运行配置窗口,选择一条springboot的运 ...

  6. Ubuntu用户设置文件说明

    Ubuntu用户设置文件说明 Ubuntu作为Linux的一个发行版本,自然具有Linux系统的多用户特性.因为经常会使用和管理Ubuntu的用户,现将Ubuntu系统下的User的个性化配置整理如下 ...

  7. 2.1 Oracle之DML的SQL语句之单表查询以及函数

    1.SQL简介 对于不同的数据库来说,SQL语句是相通的,关系型数据库都以SQL语句为操作的标准,只是相应的数据库对应的函数不相同. SQL(Structured Query Language,结构化 ...

  8. Python常用模块之VideoCapture

    官方网址:http://videocapture.sourceforge.net/   功能介绍: VideoCapture是Win32版Python的一个扩展,可以访问视频采集设备(如USB摄像头) ...

  9. Amazon.com 购物 信用卡预售期

    I understand and thanks for confirming. In this case, the $1.00 is not a charge.  It is an authoriza ...

  10. Python如何对折线进行平滑曲线处理?

    在用python绘图的时候,经常由于数据的原因导致画出来的图折线分界过于明显,因此需要对原数据绘制的折线进行平滑处理,本文介绍利用插值法进行平滑曲线处理: 实现所需的库 numpy.scipy.mat ...