我想通过java.net.Socket
发送消息。
消息为:001C020000C0154C000404850D9583CC00000004560B00E42080004C
对于我的申请,我需要通过一个TCP packet
发送此邮件。
但是,检查Wireshark发生了什么,我可以看到,它将消息分成了 两个重新组合的SSL段:
我怎么能抑制这种行为?
我的代码是:
OutputStream os = m_sslsocket.getOutputStream();
os.flush();
write(hex2Byte("001C020000C0154C000404850D9583CC00000004560B00E42080004C");
os.flush();
其中hex2Byte
将十六进制字符串转换为bytearray。
修改: 感谢您的评论。
无论如何,通过WireShark观察我的协议栈如下所示:
正如您所看到的,有两个SSL段,其中一个是00 剩下的就是另一个。 如何压制它,只有一个片段?
以上是我写入输出流的结果。
(不要担心红色。这只是因为IP校验和卸载到网络设备。)
答案 0 :(得分:2)
对于我的应用程序,我需要通过一个TCP数据包发送此消息。
运气不好,无论有无SSL,都无法使TCP无法做到这一点。调整你的期望。这是一个字节流协议。