如何禁用数据包丢失预防TCP c#

如何禁用数据包丢失预防TCP c#,c#,sockets,networking,tcp,C#,Sockets,Networking,Tcp,在尝试将TCP用于快节奏和高数据包的游戏时,我想禁用TCP的数据包丢失检测(如果一个数据包失败,它会发送另一个),因为这会增加时间,而且实际上并不需要(我不在乎是否1-3个数据包丢失更多数据包会在几秒钟内覆盖它)那么,我如何使用c#编程语言实现这一点呢?使用UDP! 你不能禁用它 更新: 因此,我只是查找有关此问题的信息,发现操作系统可以禁用重新传输,但会导致连接中止,这支持我最初的说法。而这对整个操作系统的副作用是有问题的 对于Windows: 当然,其他OSs也会有设置。希望避免使用UDP

在尝试将TCP用于快节奏和高数据包的游戏时,我想禁用TCP的数据包丢失检测(如果一个数据包失败,它会发送另一个),因为这会增加时间,而且实际上并不需要(我不在乎是否1-3个数据包丢失更多数据包会在几秒钟内覆盖它)那么,我如何使用c#编程语言实现这一点呢?

使用UDP! 你不能禁用它

更新:
因此,我只是查找有关此问题的信息,发现操作系统可以禁用重新传输,但会导致连接中止,这支持我最初的说法。而这对整个操作系统的副作用是有问题的

对于Windows:


当然,其他OSs也会有设置。

希望避免使用UDP,因为我希望有实际的连接状态。我还能做什么?在程序中实现连接状态。然后使用UDP。TCP要求接收端确认所有数据包。这是TCP的一个基本特性。我还没有找到任何关于修改它的文档,所以没有太多的尝试。但是,我尝试了TcpClient.NoDelay=true;这和我想的不一样。