通过我的SSL Socket发送数据包变得非常大

时间:2018-04-23 05:10:26

标签: java sockets ssl sslsocketfactory

我最近尝试通过创建用于从服务器实时流式传输数据的SSL套接字来完成套接字编程,但当然没有成功。当我通过Wireshark分析数据包时,我意识到请求数据的大小已在数据包中放大了n倍,因此请求以片段形式到达服务器,因为实际的JSON请求是少数几个字节,应该到达服务器一次性。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

BufferedOutputStream的输出流周围包裹SSLSocket,并且在你真正得到之前不要冲洗它,这通常直到你要阅读回复。否则,您可以一次向SSLSocket发送一个字节,每个字节成为一条SSL消息,可以将数据扩展40倍以上。

然而:

  

请求以片段形式到达服务器

这可能随时发生。服务器必须能够处理接收数据,因为一次只能丢失一个字节。

  

其中,实际的JSON请求是少数字节,并且应该一次性到达服务器。

TCP中没有这样的保证。