我一直在努力寻找添加一些TCP Option Headers的方法。我所说的选项是20个八位字节以下图像链接中的这些字节部分,依此类推。
所以我基本上创建了一个TcpClient,让我们说:
TcpClient _client = new TcpClient();
之后我基本上可以访问此TcpClient对象的Client属性。从那时起,我有一个方法SetSocketOption(),我希望使用它来设置我需要的所需TCP选项。以下是此方法所需的基本参数。基本上它需要两个在System.Net.Sockets库中预定义的Enum参数和一个OptionValue。
_client.Client.SetSocketOption(SocketOptionLevel optionLevel, SocketOptionName optionName, int optionValue);
但是问题是我没有需要的SocketOptionName,即No-Operation Option和Timestamp Option。参考下面的网站,这个套接字选项确实存在,所以我很好奇为什么DotNet库没有实现这个。
https://www.iana.org/assignments/tcp-parameters/tcp-parameters.xhtml
无论如何,还有其他方法可以实现它,因为参数需要我无法覆盖或扩展的Enum变量。
编辑:我在下面的DotNet文档中也了解到未提供No-Operation和Timestamp选项。只是想知道是否有机会超越这些。
https://msdn.microsoft.com/en-us/library/1011kecd(v=vs.110).aspx
提前致谢!