《Linux高性能服务器编程》——导读

前  言 为什么要写这本书 目前国内计算机书籍的一个明显弊病就是内容宽泛而空洞。很多书籍长篇大论,恨不得囊括所有最新的技术,但连一个最基本的技术细节也无法解释清楚。有些书籍给读者展现的是网络上随处可见的知识,基本没有自己的观点,甚至连一点自己的总结都没有。反观大师们的经典书籍,整本书只专注于一个问题...

《Linux高性能服务器编程》——3.10 拥塞控制

3.10 拥塞控制 3.10.1 拥塞控制概述 TCP模块还有一个重要的任务,就是提高网络利用率,降低丢包率,并保证网络资源对每条数据流的公平性。这就是所谓的拥塞控制。 TCP拥塞控制的标准文档是RFC 5681,其中详细介绍了拥塞控制的四个部分:慢启动(slow start)、拥塞避免(conge...

Linux Shell 编程

4 课时 |
2099 人已学 |
免费

Linux 运维自动化课程

4 课时 |
1478 人已学 |
免费

Linux Web服务器Nginx搭建与配置

5 课时 |
13872 人已学 |
免费
开发者课程背景图

《Linux高性能服务器编程》——3.8 带外数据

3.8 带外数据 有些传输层协议具有带外(Out Of Band,OOB)数据的概念,用于迅速通告对方本端发生的重要事件。因此,带外数据比普通数据(也称为带内数据)有更高的优先级,它应该总是立即被发送,而不论发送缓冲区中是否有排队等待发送的普通数据。带外数据的传输可以使用一条独立的传输层连接,也可以...

《Linux高性能服务器编程》——3.5 复位报文段

3.5 复位报文段 在某些特殊条件下,TCP连接的一端会向另一端发送携带RST标志的报文段,即复位报文段,以通知对方关闭连接或重新建立连接。本节讨论产生复位报文段的3种情况。 3.5.1 访问不存在的端口 3.4.1小节提到,当客户端程序访问一个不存在的端口时,目标主机将给它发送一个复位报文段。考虑...

《Linux高性能服务器编程》——2.6 重定向

2.6 重定向 图2-3显示了ICMP重定向报文也能用于更新路由表,因此本节我们简要讨论ICMP重定向。 2.6.1 ICMP重定向报文 ICMP重定向报文格式如图2-4所示。 我们在1.1节讨论过ICMP报文头部的3个固定字段:8位类型、8位代码和16位校验和。ICMP重定向报文的类型值是5,代码...

《Linux高性能服务器编程》——2.3 IP分片

2.3 IP分片 前文曾提到,当IP数据报的长度超过帧的MTU时,它将被分片传输。分片可能发生在发送端,也可能发生在中转路由器上,而且可能在传输过程中被多次分片,但只有在最终的目标机器上,这些分片才会被内核中的IP模块重新组装。 IP头部中的如下三个字段给IP的分片和重组提供了足够的信息:数据报标识...

《Linux高性能服务器编程》——1.6 DNS工作原理

1.6 DNS工作原理 我们通常使用机器的域名来访问这台机器,而不直接使用其IP地址,比如访问因特网上的各种网站。那么如何将机器的域名转换成IP地址呢?这就需要使用域名查询服务。域名查询服务有很多种实现方式,比如NIS(Network Information Service,网络信息服务)、DNS和...

《Linux高性能服务器编程》——1.3 分用

1.3 分用 当帧到达目的主机时,将沿着协议栈自底向上依次传递。各层协议依次处理帧中本层负责的头部数据,以获取所需的信息,并最终将处理后的帧交给目标应用程序。这个过程称为分用(demultiplexing)。分用是依靠头部信息中的类型字段实现的。标准文档RFC 1700定义了所有标识上层协议的类型字...

《Linux高性能服务器编程》——1.2 封装

1.2 封装 上层协议是如何使用下层协议提供的服务的呢?其实这是通过封装(encapsulation)实现的。应用程序数据在发送到物理网络上之前,将沿着协议栈从上往下依次传递。每层协议都将在上层数据的基础上加上自己的头部信息(有时还包括尾部信息),以实现该层的功能,这个过程就称为封装,如图1-4所示...

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

产品推荐

社区圈子

Linux宝库
Linux宝库
1+人已加入
加入
相关电子书
更多
冬季实战营第二期:Linux操作系统实战入门
Decian GNU/Linux安全合规之路
从 Linux 系统内核层面来解决实际问题的实战经验
立即下载 立即下载 立即下载