在一台 Linux 服务器(Gentoo 强化版)上,我们不时会在 dmesg 中遇到以下消息的突发:
TCP: Treason uncloaked! Peer xx.xx.xxx.xxx:65039/80 shrinks window 4094157295:4094160199. Repaired.
我们需要注意什么吗?或者这是正常的吗?
更新:可能相关,我们正在使用net.ipv4.tcp_congestion_control = cubic
。内核版本是 2.6.28,带有 Gentoo 强化补丁。
更新:这可能确实与硬件/驱动程序问题有关,因为我们有时会看到交换机出现“故障”:端口关闭后又重新打开。直到最近,我们才发现与这些端口故障相关的以下 dmesg 输出:
[5781269.910133] e1000: eth0: e1000_clean_tx_irq: Detected Tx Unit Hang
[5781269.910136] Tx Queue <0>
[5781269.910137] TDH <e0>
[5781269.910139] TDT <76>
[5781269.910140] next_to_use <76>
[5781269.910141] next_to_clean <da>
[5781269.910143] buffer_info[next_to_clean]
[5781269.910144] time_stamp <22750e54>
[5781269.910146] next_to_watch <e2>
[5781269.910147] jiffies <22750f5f>
[5781269.910148] next_to_watch.status <0>
通常在这些记录的行之后还会跟着一些“揭露叛国罪”的行(但反之则不然,这意味着这些行并不总是在“揭露叛国罪”之前记录)。
答案1
当人们决定在远程系统上“优化” TCP 参数时,您会收到此消息,但这也可能是 syn flood 攻击。
有几个已知的内核错误导致此消息错误出现。我相信它们已在 2.6.26 内核中修复。
答案2
原因可能是以下之一:
- 错误的 tcpstack 参数
- 远程攻击
- 内核或网络适配器驱动程序中的错误(我以前使用 Intel EtherExpress PRO/100 和 eepro100 驱动程序时遇到过这些问题)
- 网络适配器故障
- 电缆损坏或损坏
答案3
你使用的 Linux 版本是哪个?可能是内核中的一个错误。