Linux内核技术实战课
邵亚方
前蘑菇街技术专家,Linux Kernel活跃贡献者
新⼈⾸单¥9.9
2772 人已学习
课程目录
已更新 12 讲 / 共 23 讲
0/4登录后,你可以任选4讲全文学习。
开篇词 (1讲)
开篇词 | 如何让Linux内核更好地服务应用程序?
免费
Page Cache管理问题 (5讲)
01 基础篇 | 如何用数据观测Page Cache?
02 基础篇 | Page Cache是怎样产生和释放的?
03 案例篇 | 如何处理Page Cache难以回收产生的load飙高问题?
04 案例篇 | 如何处理Page Cache容易回收引起的业务性能问题?
免费
05 分析篇 | 如何判断问题是否由Page Cache产生的?
内存泄漏问题 (5讲)
06 基础篇 | 进程的哪些内存类型容易引起内存泄漏?
07 案例篇 | 如何预防内存泄漏导致的系统假死?
08 案例篇 | Shmem:进程没有消耗内存,内存哪去了?
09 分析篇 | 如何对内核内存泄漏做些基础的分析?
10 分析篇 | 内存泄漏时,我们该如何一步步找到根因?
TCP重传问题 (1讲)
11 基础篇 | TCP连接的建立和断开受哪些系统配置影响?
Linux内核技术实战课
15
15
1.0x
00:00/00:00
登录|注册

11 基础篇 | TCP连接的建立和断开受哪些系统配置影响?

邵亚方 2020-09-12
你好,我是邵亚方。
如果你做过 Linux 上面网络相关的开发,或者分析过 Linux 网络相关的问题,那你肯定吐槽过 Linux 系统里面让人眼花缭乱的各种配置项,应该也被下面这些问题困扰过:
Client 为什么无法和 Server 建立连接呢?
三次握手都完成了,为什么会收到 Server 的 reset 呢?
建立 TCP 连接怎么会消耗这么多时间?
系统中为什么会有这么多处于 time-wait 的连接?该这么处理?
系统中为什么会有这么多 close-wait 的连接?
针对我的业务场景,这么多的网络配置项,应该要怎么配置呢?
……
因为网络这一块涉及到的场景太多了,Linux 内核需要去处理各种各样的网络场景,不同网络场景的处理策略也会有所不同。而 Linux 内核的默认网络配置可能未必会适用我们的场景,这就可能导致我们的业务出现一些莫名其妙的行为。
所以,要想让业务行为符合预期,你需要了解 Linux 的相关网络配置,让这些配置更加适用于你的业务。Linux 中的网络配置项是非常多的,为了让你更好地了解它们,我就以最常用的 TCP/IP 协议为例,从一个网络连接是如何建立起来的以及如何断开的来开始讲起。

TCP 连接的建立过程会受哪些配置项的影响?

确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/1000字
划线
笔记
复制
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《Linux内核技术实战课》,如需阅读全部文章,
请订阅文章所属专栏新⼈⾸单¥9.9
立即订阅
登录 后留言

精选留言(6)

  • Q
    第一次看到把内核网络参数和TCP-IP建连和断连图结合起来的讲!!之前看陶辉老师的Nginx也有讲过,但只是文字版,理解起来有点费劲。这期课图文并茂,更容易理解了!
    2020-09-14
  • KennyQ
    这块内容学习到了,可以运用到自己在生产中碰到的问题,吹牛可以吹很久!
    2020-09-13
  • 欧阳
    老师好:
    FIN_WAIT_2 超时时间是 tcp_fin_timeout 控制,
    TIME_WAIT 默认也是 60s,但是 /proc/sys/net/ipv4/ 下没有wait相关文件名,
    TIME_WAIT 是与 FIN_WAIT_2 共用了同一个选项吗?
    2020-09-12
    4
  • 许童童
    不错, 老师总结得很好
    2020-09-12
  • Su
    高产啊.
    2020-09-12
  • 青生先森
    又涨知识了
    2020-09-12
收起评论
6
返回
顶部