
tcp
zgb40302
这个作者很懒,什么都没留下…
展开
-
wireshark解析grpc/protobuf的方法
wireshark解析grpc/protobuf的方法原创 2024-04-03 20:46:47 · 1867 阅读 · 0 评论 -
tcp 超时参数
建立连接过程中的超时:tcp_syn_retries:对于一个新建连接,内核要发送多少个 SYN 连接请求才决定放弃。tcp_synack_retries:对于远端的连接请求SYN,内核会发送SYN + ACK数据报,以确认收到上一个 SYN连接请求包。这是所谓的三次握手( threeway handshake)机制的第二个步骤。这里决定内核在放弃连接之前所送出的 SYN+ACK 数目。数据传输过程中的超时:tcp_retries1:一旦重传超过阈值tcp_ret...原创 2021-03-18 14:36:20 · 1315 阅读 · 0 评论 -
TCP 底层处理流程图
setsockopt设置 SO_LINGER 选项此选项指定函数close对面向连接的协议如何操作(如TCP)。内核缺省close操作是立即返回,如果有数据残留在套接口缓冲区中则系统将试着将这些数据发送给对方。SO_LINGER选项用来改变此缺省设置。使用如下结构:struct linger {int l_onoff...原创 2021-03-18 11:29:52 · 316 阅读 · 0 评论 -
TCP 拥塞避免
拥塞避免思想主要用到慢启动 和 拥塞控制 两种算法:1. 当cwnd <ssthresh,使用慢启动算法,2.当cwnd >ssthresh,使用拥塞控制算法,停用慢启动算法。3.当cwnd = ssthresh,这两个算法都可以。如果出现超时或者收到3个ACK 包的话,1,从数据传输方面来讲,需要进行快重传;2,从拥塞避免方面来讲,需要进行快恢复;...原创 2021-03-18 11:21:14 · 286 阅读 · 0 评论 -
tcp一端断开,另一端还是established 状态
遇到一个奇怪的问题:当服务端处理不过来的时候,把客户端kill 掉,使用netstat 查看,还有established 状态的tcp 连接;原因:由于服务器处理不过来,导致tcp 缓冲区堆积,FIN的数据包不是丢了就是还未被处理,netstat 信息如下:tcp 129 0 0.0.0.0:15613 0.0.0.0:* LISTEN 37407/AAAAAtcp 5346128 0 127.0.0.1:15613 127.0.0.1:56210 ESTABLISHED 37407/AAAAA原创 2020-12-07 15:01:49 · 4248 阅读 · 0 评论 -
Linux下TCP延迟确认(Delayed Ack)机制导致的时延问题分析
转载:https://cloud.tencent.com/developer/article/1004356转载 2019-04-18 14:46:28 · 864 阅读 · 0 评论