千家信息网

TCP滑动窗口消息堆积怎么办

发表于:2025-02-04 作者:千家信息网编辑
千家信息网最后更新 2025年02月04日,这篇文章主要介绍"TCP滑动窗口消息堆积怎么办",在日常操作中,相信很多人在TCP滑动窗口消息堆积怎么办问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"TCP滑动窗口消息
千家信息网最后更新 2025年02月04日TCP滑动窗口消息堆积怎么办

这篇文章主要介绍"TCP滑动窗口消息堆积怎么办",在日常操作中,相信很多人在TCP滑动窗口消息堆积怎么办问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"TCP滑动窗口消息堆积怎么办"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

线上问题:

客户端不能推送数据到服务端。

排查:

  • ping ip或者telnet port全是正常的,不奏效。

  • 通过wireshark抓取报文查看,发现一个奇怪现象是窗口不固定,但是整体趋势是逐渐减小,直到为0. 服务端报文如下:


15:41:29.680256 IP 110.89.84.123.1950 > 110.89.84.126.52021: Flags [.], ack 107925, win 38, options [nop,nop,TS val 1604471956 ecr 1606303303], length 0 0x0000: 0022 462c a12f d067 e50f e893 0800 4500 ."F,./.g......E. 0x0010: 0034 a79b 4000 4006 d417 0b0c 547b 0b0c .4..@.@.....T{.. 0x0020: 547e 079e cb35 0c6f 535c 531b 640c 8010 T~...5.oS\S.d... 0x0030: 0026 8383 0000 0101 080a 5fa2 4c94 5fbe .&........_.L._. 0x0040: 3e47 >G15:41:29.719474 IP 110.89.84.123.1950 > 110.89.84.126.52021: Flags [.], ack 112269, win 5, options [nop,nop,TS val 1604471996 ecr 1606303303], length 0 0x0000: 0022 462c a12f d067 e50f e893 0800 4500 ."F,./.g......E. 0x0010: 0034 a79c 4000 4006 d416 0b0c 547b 0b0c .4..@.@.....T{.. 0x0020: 547e 079e cb35 0c6f 535c 531b 7504 8010 T~...5.oS\S.u... 0x0030: 0005 7284 0000 0101 080a 5fa2 4cbc 5fbe ..r......._.L._. 0x0040: 3e47 >G15:41:29.934875 IP 110.89.84.126.52021 > 110.89.84.123.1950: Flags [P.], seq 112269:112909, ack 88, win 115, options [nop,nop,TS val 1606303559 ecr 1604471996], length 640 0x0000: d067 e50f e893 0022 462c a12f 0800 4500 .g....."F,./..E. 0x0010: 02b4 5a89 4000 4006 1eaa 0b0c 547e 0b0c ..Z.@.@.....T~.. 0x0020: 547b cb35 079e 531b 7504 0c6f 535c 8018 T{.5..S.u..oS\.. 0x0030: 0073 c1b7 0000 0101 080a 5fbe 3f47 5fa2 .s........_.?G_.15:41:29.975487 IP 110.89.84.123.1950 > 110.89.84.126.52021: Flags [.], ack 116613, win 10, options [nop,nop,TS val 1604472252 ecr 1606303559], length 0 0x0000: 0022 462c a12f d067 e50f e893 0800 4500 ."F,./.g......E. 0x0010: 0034 a79e 4000 4006 d414 0b0c 547b 0b0c .4..@.@.....T{.. 0x0020: 547e 079e cb35 0c6f 535c 531b 85fc 8010 T~...5.oS\S..... 0x0030: 000a 5f87 0000 0101 080a 5fa2 4dbc 5fbe .._......._.M._. 0x0040: 3f47 ?G15:41:30.191875 IP 110.89.84.126.52021 > 110.89.84.123.1950: Flags [P.], seq 116613:117893, ack 88, win 115, options [nop,nop,TS val 1606303816 ecr 1604472252], length 1280 0x0000: d067 e50f e893 0022 462c a12f 0800 4500 .g....."F,./..E. 0x0010: 0534 5a8d 4000 4006 1c26 0b0c 547e 0b0c .4Z.@.@..&..T~.. 0x0020: 547b cb35 079e 531b 85fc 0c6f 535c 8018 T{.5..S....oS\.. 0x0030: 0073 c437 0000 0101 080a 5fbe 4048 5fa2 .s.7......_.@H_. 0x0040: 4dbc 2037 3435 6634 3361 3238 3334 6534 M..745f43a2834e4 0x0050: 6465 3462 3561 3862 6630 3031 3333 6564 de4b5a8bf00133ed 0x0060: 6462 3401 0d01 0400 0000 5308 0b10 0000 db4.......S..... a315:41:30.192523 IP 110.89.84.123.1950 > 110.89.84.126.52021: Flags [.], ack 117893, win 0, options [nop,nop,TS val 1604472469 ecr 1606303816], length 0 0x0000: 0022 462c a12f d067 e50f e893 0800 4500 ."F,./.g......E. 0x0010: 0034 a79f 4000 4006 d413 0b0c 547b 0b0c .4..@.@.....T{.. 0x0020: 547e 079e cb35 0c6f 535c 531b 8afc 8010 T~...5.oS\S..... 0x0030: 0000 58b7 0000 0101 080a 5fa2 4e95 5fbe ..X......._.N._. 0x0040: 4048 @H15:41:30.406872 IP 110.89.84.126.52021 > 110.89.84.123.1950: Flags [.], ack 88, win 115, options [nop,nop,TS val 1606304031 ecr 1604472469], length 0 0x0000: d067 e50f e893 0022 462c a12f 0800 4500 .g....."F,./..E. 0x0010: 0034 5a8e 4000 4006 2125 0b0c 547e 0b0c .4Z.@.@.!%..T~.. 0x0020: 547b cb35 079e 531b 8afb 0c6f 535c 8010 T{.5..S....oS\.. 0x0030: 0073 bf37 0000 0101 080a 5fbe 411f 5fa2 .s.7......_.A._. 0x0040: 4e95 N.15:41:30.407143 IP 110.89.84.123.1950 > 110.89.84.126.52021: Flags [.], ack 117893, win 0, options [nop,nop,TS val 1604472683 ecr 1606303816], length 0 0x0000: 0022 462c a12f d067 e50f e893 0800 4500 ."F,./.g......E. 0x0010: 0034 a7a0 4000 4006 d412 0b0c 547b 0b0c .4..@.@.....T{.. 0x0020: 547e 079e cb35 0c6f 535c 531b 8afc 8010 T~...5.oS\S..... 0x0030: 0000 57e1 0000 0101 080a 5fa2 4f6b 5fbe ..W......._.Ok_. 0x0040: 4048


  • 至此服务端一直回复服务端窗口为0,导致客户端数据无法回传到服务端。

  • 通过 netstat -ano查看服务端TCP内核的发送和接受缓冲区,发现服务端接受缓冲一定字节,但一直不能发送。


[root@xdja tomcat]# netstat -antActive Internet connections (servers and established)Proto Recv-Q Send-Q Local Address Foreign Address Statetcp 0 0 110.89.84.123:14468 110.89.84.33:1950 ESTABLISHEDtcp 0 0 :::1950 :::* LISTENtcp 115005 0 ::ffff:110.89.84.123:1950 ::ffff:110.89.84.126:52021 ESTABLISHED


结论:

由此可以判断,客户端一直在发数据,但是服务端处理数据整体慢于客户端发送数据,导致服务端数据积压。

解决方案:

后台修改成异步处理,如果收到TCP消息,先缓存到业务中,然后启动线程消费。

到此,关于"TCP滑动窗口消息堆积怎么办"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

服务 数据 消息 怎么办 客户 客户端 学习 报文 整体 更多 问题 P. 处理 帮助 缓冲 实用 接下来 业务 内核 后台 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 我的世界基岩版服务器很卡怎么办 黑客文化与网络安全的好处 其他账户连接mysql服务器 在哪里找普查数据库 思特奇数据库开发工资 数据库不同的隔离 具发展潜力的桌面共享软件开发 江苏工厂的全球服务器 上海珍容互联网科技 网络安全在新基建中的运用 河北最好的计算机网络技术大专 网络安全文件颁布时间树 数据库日志文件过大怎么办 网络安全法 二十一 宜昌市伍家岗附近软件开发 济南租房网络安全 想不想修真各个服务器的大佬名称 数据库管理工程师考试 阿贝云服务器有哪些特点 网络安全创新举措 建立网络安全挑战 mysql更新数据库语言 软件开发是不是很赚钱 黄浦区无线网络技术展示 网络安全问题技术及解决办法 网信办宣传网络安全总结 网络安全检测招标公告 有关网络安全的ppt大学 花雨亭服务器怎么邀请好友 存储非结构化数据库
0