第一部分:简介和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. [agc011F]Train Service Planning-[线段树优化dp+神秘思考题]

    Description 传送门 Solution 请围观lhx大佬的博客(大佬写的太好了我都没有写的动力了em) Code #include<iostream> #include<c ...

  2. 在eclipse中通过git添加Maven 多重项目时会遇到的问题

    最近,项目换到了使用git作版本控制.于是就开始了,拉代码,测试的时候了. 再过程中遇到两个问题: 1.下载下来的不是项目,只是文档,转换为Maven项目之后 pom.xml报错(org.codeha ...

  3. VirtualBox虚拟机上安装windows7系统

    1.下载Windows7的镜像文件 http://www.xitongcheng.com/jiaocheng/win7_article_24156.html 2.在虚拟机上安装Windows7 htt ...

  4. 合并SQL 调优

    SELECT le.equipcode,sum(case when wo.ordertype=0 then 1 else 0 END) as wxcount,sum(case when wo.orde ...

  5. JAVA基础学习之路(九)[2]String类常用方法

    字符与字符串: 1.将字符数组变为字符串(构造方法) public String(char[] value) Allocates a new String so that it represents ...

  6. 套接口socket编程(Client/Server编程实例)

    基本概念 套接口也就是网络中的ID.网络通信,归根到底还是进程间通信(不同计算机上的进程间的通信).在网络中,每一个节点(计算机或路由器)都有一个网络地址,也就是IP地址. IP地址:在网络中唯一标识 ...

  7. 深度学习论文笔记:Deep Residual Networks with Dynamically Weighted Wavelet Coefficients for Fault Diagnosis of Planetary Gearboxes

    这篇文章将深度学习算法应用于机械故障诊断,采用了“小波包分解+深度残差网络(ResNet)”的思路,将机械振动信号按照故障类型进行分类. 文章的核心创新点:复杂旋转机械系统的振动信号包含着很多不同频率 ...

  8. Docker入门与实践之 docker安装与了解

    一.Docker 概述 Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源.Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后 ...

  9. Centos 7 zabbix 实战应用

    实际需求:公司已经有了100台服务器,现在需要使用zabbix全部监控起来. 先出个方案(规划) 常规监控:cpu,内存,磁盘,网卡 问题:怎样快速添加100台机器         方法1:使用克隆的 ...

  10. SAP(ABAP) ABAP内部外部数据转换常用function

    文本相关CONVERSION_EXIT_CUNIT_OUTPUT      将内部单位转为单位文本CONVERSION_EXIT_ISOLA_OUTPUT      根据语言代码取文本CONVERSI ...