C ++套接字编程,带压缩的多播,任何好的库/包装器?

时间:2012-07-08 18:26:38

标签: c++ sockets compression multicast

我开始进入套接字编程。目前,我正在使用scp在服务器和客户端之间传输数据,这在处理数据流时非常差(似乎每个新的scp会话都需要打开一个新的TCP连接,这确实会降低速度)。

我想将文本传输到多个客户端,一天之内,这个文本的大小可能达到几千兆字节,因此实现某种压缩是关键。

任何人都可以推荐一些可以简化编写此代码的好的库或包装器吗?标准的C ++套接字接口使用起来非常麻烦。到目前为止,我唯一的领导是Boost ASIO,但似乎没有压缩功能。任何建议都会非常感激。

3 个答案:

答案 0 :(得分:2)

对于压缩部分,您可以使用zlib。 zlib有很多C++ interfaces,或者您可以直接使用它来压缩和解压缩消息。

答案 1 :(得分:1)

尝试UDT

UDT是一种可靠的基于UDP的应用级数据传输协议,适用于广域高速网络上的分布式数据密集型应用。 UDT使用UDP通过自己的可靠性控制和拥塞控制机制来传输批量数据。

我真的不知道压缩是否可用......

答案 2 :(得分:1)

压缩和多播是两个正交问题。如前面的海报所述,选择一个最适合您数据的压缩库。

对于多播,有多个选项,OpenPGM和RSP是开源的。

相关问题