我遇到过的一些网络问题
为什么我的 TCP 挥手只有 3 次
因为 fin 和 ack 一起返回了,所以 tcpdump 抓包显示三次
ESTABLISHED 的连接只在一端有,另一端却没有
应用端可以把 tcp 连接一端的 keepalive 关闭,就是 tcp 的探活机制,连接的这一端可能就会一直有 ESTABLISHED 的连接
CLOSE_WAIT 状态连接过多怎么办
该状态对端已经发出 fin 本地已经发出 ack,但是本端没有发出 fin,这种情况就是 tcp 的半关闭状态,这种情况下本端可能还会发送数据包,如果应用测确定没有问题可以设置 so_linger,就是 CLOSE_WAIT 持续多久之后就可以关闭了
一些其他的网络知识
delayed ack 与 nagle's 算法还有 tcp 连接的七个定时器
参考资料
nagle’s 算法(https://en.wikipedia.org/wiki/Nagle's_algorithm )
云网络丢包故障定位,看这一篇就够了(https://mp.weixin.qq.com/s/-Q1AkxUr9xzGKwUMV-FQhQ )
那些你不知道的 TCP 冷门知识!(https://mp.weixin.qq.com/s/6lop61UtnQ-vfWJy17V87w )
我之前写的一个分享 ( https://github.com/WisWang/blog/blob/main/2023/技术分享.pdf )
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
2021-11-11 运维常见问题总结
2016-11-11 delayed ack与nagle's算法