gpt4 book ai didi

tcp - 模拟HTTP/TCP重传超时

转载 作者:可可西里 更新时间:2023-11-01 02:49:55 25 4
gpt4 key购买 nike

我在 Linux 上工作。我有一个 HTTP 客户端,它从 HTTP 服务器请求一些数据。 HTTP 客户端是用 C 编写的,HTTP 服务器是用 perl 编写的。我想在客户端模拟 TCP 重传超时。

我假设正常关闭套接字不会导致客户端重新传输请求。

所以我尝试了以下场景:

  1. 一旦收到 HTTP GET 请求就退出服务器。但是,我注意到一旦应用程序退出,套接字仍然正常关闭。我看到服务器向客户端发起 FIN.ACK 消息,即使应用程序没有在套接字上调用“关闭”。我在用 C 程序编写的简单 TCP 服务器和客户端上也注意到了这种行为。

  2. 服务器不会对客户端的 GET 请求发送任何响应。在这种情况下,我注意到服务器仍然发送了 FIN、ACK。似乎在这些情况下,操作系统 (linux) 负责关闭与对等方的套接字。有什么方法可以抑制这种行为(使用 ioctl 或 setsockopt 选项)或任何其他方法来模拟 TCP 重新传输超时。

最佳答案

您可以尝试设置防火墙规则来阻止从服务器到客户端的数据包,这会导致客户端重新传输任务。在 Linux 上,这可能会使用 iptables 来完成,但不同的发行版有不同的控制方法。

关于tcp - 模拟HTTP/TCP重传超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1709668/

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