Introduce P2P speed and flexibility into your backup and synchronization jobs
GoodSync is a well-known backup and folder synchronization tool that is built on a standard client-server architecture. It does a solid job of transferring data and synchronizing two computers. GoodSync handles two major job types: synchronization and backup. The synchronization job makes sure a folder between two machines stays in sync, and all changes are propagated between them. The backup job is used to copy changes in a folder from one machine to another. The enterprise version of GoodSync has a central server to remotely configure and monitor jobs inside the enterprise.
GoodSync is based on the old approach of client/server, where data transfer happens between two machines. We’ve covered the issues enterprises can run into with the client-server approach in a previous post: What’s the difference between peer to peer and client server? But let’s recap some of them here in our GoodSync comparison as well.
P2P. There are several differences between Resilio Connect and GoodSync, but the major one is peer-to-peer vs. client-server. A GoodSync job is limited to only 2 computers, and if you need more computers synced, management becomes complex. In contrast, Connect transfer and synchronization jobs can include any amount of computers in a single job. You can synchronize 5 servers, backup data to several servers at the same time, or send updated files to as many computers as you need, from several servers.
Connect detects file changes that need to be propagated within a job and then splits file changes into blocks that travel independently between computers. This approach makes sure that all computers get the data as fast as possible, outperforming GoodSync, rsync or any other tool. This happens because additional computers participate in the data transfer, distributing the load from a single computer to several. You can see how much faster P2P is by trying our speed calculator.
TCP/IP vs uTP. GoodSync uses the TCP/IP protocol as the underlying data transfer media for file synchronization and backup. TCP/IP is a safe choice when you need reliable data transfer between two computers. However, it faces the following issues:
- NAT traversal. If your computer is placed behind NAT (usually it is WiFi, ADSL or Firewall) TCP/IP needs port forwarding to establish a direct connection between machines. Connect uses uTP and uTP2 protocols that are based on UDP so it can bypass NAT without the need for additional configuration.
- Slow speed over long connections (WAN networks). If two computers are placed far away (usually 2,000 miles apart or more) the packet latency becomes high and TCP/IP protocol reduces data transfer speed. For long distances, the probability of packet loss becomes higher and this reduces TCP/IP speed even further. GoodSync doesn’t have a solution for that and requires additional WAN optimized hardware or software to deal with packet latency and packet loss. The Connect uses a WAN-optimized UDP based protocol – uTP2. This protocol uses bulk based packet transfer with selective acknowledgments and will make sure that you can achieve the maximum speed of your network.
GoodSync can synchronize and backup between two computers within a local network only without additional configuration. Connect can synchronize, backup or transfer files between any amounts of computers across the globe without the need for any additional configuration.
Smart data routing. GoodSync uses direct IP addresses of computers to set up connections. It can discover other machines within a LAN using broadcast. Connect uses a smarter approach that is a combination of multicast and tracker server. The client registers on the tracker server and the tracker server announces the IP addresses of the other machines to all computers within a job. This way you can avoid job changes if machine IP addresses are changed and can set up a direct connection between machines over the Internet without any configuration.
File treatment. When a file is changed on one machine, Connect makes sure you transfer the minimum amount of data over the network. This reduces the time for synchronizing or backing up files. GoodSync uses block-based data deduplication. This approach is good but it doesn’t cover all scenarios. For example, when data is added to the beginning of a file – this approach doesn’t work. As soon as you add one bit to the beginning of the file, all consecutive blocks will be changed, due to a shift of the data. The fixed block-based algorithms will detect that all blocks are changed and need to be re-transmitted. Connect uses rsync like delta encoding algorithms, to minimize data for synchronization in all cases. This algorithm can detect shifted data and detect that only the first block is changed, while other are shifted – from the example above.
Resilio Connect offers data compression on the fly. While there is a debate whether this is necessary in the modern world, we wanted to give our users the flexibility to synchronize faster in all cases. Both deduplication and compression are applied on the fly to any changed files. There is no need for any additional operations form user perspective. You just get files faster.
API. GoodSync uses command line (CLI) approach to control operations. While Connect uses full blown RESTful based API that allows you to control, monitor your data transfer jobs remotely and develop any needed integration inside your business process.
We considered conceptual differences between GoodSync and Connect. Of course, Connect has all the other important enterprise features like: encryption of data transfer, scheduler, bandwidth scheduler, AD/LDAP integration and more.
|Agents in job||10,000+||2|
|Transfer job to several agents||+|
|Backup to several servers||+|
|Sync of several servers||+|
|NAT traversal (UDP)||+|
|WAN optimization (UDP)||+|
|Smart data routing||+|
|OS||Win, Linux, Mac, FreeBSD, NAS||Win, Mac, Linux|
To see how much faster your syncing could be with Resilio Connect set up a meeting through our chatbot. We’ll help you calculate your time savings over the LAN and WAN combined.