Java Socket - 发送SSL段 - 如何抑制?

时间:2012-08-21 15:02:46

标签: java sockets ssl segment

我想通过java.net.Socket发送消息。

消息为:001C020000C0154C000404850D9583CC00000004560B00E42080004C

对于我的申请,我需要通过一个TCP packet发送此邮件。

但是,检查Wireshark发生了什么,我可以看到,它将消息分成了 两个重新组合的SSL段:

  1. 00
  2. 1C020000C0154C000404850D9583CC00000004560B00E42080004C
  3. 我怎么能抑制这种行为?

    我的代码是:

    OutputStream os = m_sslsocket.getOutputStream();
    os.flush();
    write(hex2Byte("001C020000C0154C000404850D9583CC00000004560B00E42080004C");
    os.flush();
    

    其中hex2Byte将十六进制字符串转换为bytearray。

    修改: 感谢您的评论。

    无论如何,通过WireShark观察我的协议栈如下所示: enter image description here

    正如您所看到的,有两个SSL段,其中一个是00 剩下的就是另一个。 如何压制它,只有一个片段?

    以上是我写入输出流的结果。

    (不要担心红色。这只是因为IP校验和卸载到网络设备。)

1 个答案:

答案 0 :(得分:2)

  

对于我的应用程序,我需要通过一个TCP数据包发送此消息。

运气不好,无论有无SSL,都无法使TCP无法做到这一点。调整你的期望。这是一个字节流协议。