我已经实现了一个应用程序,通过websocket发送多媒体内容。通过分析wireshark的流量,我发现使用http和websocket发送相同内容的有效负载有所不同。对于websocket,有效负载总是比http大6个字节。(很明显,头是完全不同的。)
我使用Node.js和服务器上的二进制it在javascript上实现了它。
Node.js或binaryjs库在多媒体数据的开头添加5个字节(看起来像0x93 0x02 0xda 0x5e0xcb),在它的末尾再增加一个字节(看起来像0x15)。知道这种开销是从哪里来的吗?
发布于 2014-01-03 16:58:28
正如robertklep所说,您提到的开销是元数据造成的。binarypack是由binaryjs用于序列化/反序列化(或打包/解压缩)二进制数据时添加的字节。binarypack使用了大量的信息包规范,并增加了一些额外的内容。
可能添加这些额外字节的函数是pack_bin,它适用于二进制文件。你可以看到那个这里。
https://stackoverflow.com/questions/20906779
复制相似问题