user788171
user788171

Reputation: 17553

C++ socket programming, multicast with compression, any good libraries/wrappers?

I am beginning to get into socket programming. Currently, I am transferring data between server and clients using scp which scales very poorly when dealing with streams of data (it seems like each new scp session needs to open a new TCP connection and this really slows down the speed).

I would like to transfer text to multiple clients, over a day, this text could reach a couple gigabytes in size so implementing some sort of compression is key.

Can anybody recommend some good libraries or wrappers which can simplify writing this code? The standard C++ sockets interface is quite cumbersome to work with. So far, my only lead is Boost ASIO but that doesn't seem to have compression capabilities. Any suggestions would be much appreciated.

Upvotes: 1

Views: 1197

Answers (3)

eile
eile

Reputation: 1153

Compression and multicast are two orthogonal issues. As said by previous posters, pick a compression library best suited for your data.

For multicast there are multiple options, OpenPGM and RSP are open source.

Upvotes: 1

Mark Adler
Mark Adler

Reputation: 112384

For the compression part, you can use zlib. There are many C++ interfaces out there for zlib, or you can use it directly to compress and decompress messages.

Upvotes: 2

Ulterior
Ulterior

Reputation: 2892

try UDT.

UDT is a reliable UDP based application level data transport protocol for distributed data intensive applications over wide area high-speed networks. UDT uses UDP to transfer bulk data with its own reliability control and congestion control mechanisms.

I dont really know if the compression is available ...

Upvotes: 1

Related Questions