gpt4 book ai didi

c TCP 原始套接字选项

转载 作者:行者123 更新时间:2023-11-30 15:24:50 24 4
gpt4 key购买 nike

如何包含 TCP 选项MSS(最大段大小),WS(窗口比例),解雇允许。C 原始套接字中的选项

我们可以在 TCP 中包含其他选项,例如源、目标、syn、acktcp->src,tcp->dst,tcp->syn,tcp->ack。…………但是当我包含 tcp Reserverd 特殊选项 mss,ws 时tcp->mss,tcp->ws
它显示 MSS,WS 不在 tcp header 中的错误谁能告诉我如何在 tcp 原始套接字中包含这些选项

谢谢

最佳答案

Linux 中的 TCP WS

假设Linux,我相信你不能直接改变C中的TCP窗口大小。这是因为这是由内核直接处理的。

修改 TCP WS 的一种方法是混合使用以下 sysctl 变量(在 man tcp 中了解有关它们的更多信息):

  • tcp_wmem
  • tcp_rmem
  • tcp_window_scaling

根据 RFC 1323 ( https://www.ietf.org/rfc/rfc1323.txt ),TCP 窗口缩放允许最大 WS 为 65K。 Linux内核中默认的最大TCP WS是32K。根据 man tcp,您将增加套接字缓冲区的大小,此时将使用 TCP 窗口缩放。

Linux 中的 TCP MSS

我再次相信这只能在内核级别实现。您可以使用 iptables 内核模块覆盖 MSS 的默认计算(根据跃点距离动态计算)。具体来说,使用 --set-mss 选项。

参见:http://lartc.org/howto/lartc.cookbook.mtu-mss.html

如有错误,请指正。

关于c TCP 原始套接字选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28206091/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com