c#在没有TCP握手的情况下发送TCP数据包

时间:2015-10-02 13:24:50

标签: c# sockets networking tcp

我正在尝试与自定义硬件设备互操作。

它要求第一个TCP数据包包含数据有效负载

我尝试使用System.Net.Sockets中的TcpClient实现此目的

   TcpClient tcpclnt = new TcpClient();
   tcpclnt.Connect("192.168.1.11", 1500);
   Stream stm = tcpclnt.GetStream();
   byte[] ba = messagestr.StringToByteArray();                   
   stm.Write(ba, 0, ba.Length);

然而,wireshark显示此代码发送许多TCP / IP数据包以建立连接,数据包(包含messagestr)是第4-5个数据包。

如何让C#在FIRST TCP数据包中发送数据?

1 个答案:

答案 0 :(得分:1)

使用UDP仅发送一个打包而不建立会话。你确实要求TCP不是TCP。