A CPA client of ours runs a proprietary audit software called ProSystems Engagement that allows auditors to sync their data to each other. The auditors were having trouble syncing the data between their systems. The customer has some older Lenovo (T-42 and T-60/61) laptops and some new Lenovo W700 laptops. Their older laptops could sync with each other and their new laptops could sync to the old laptops. But neither could sync to the new laptops. I worked with the software vendor and ran about every query and test they had trying to pinpoint the cause. But was unable to determine why the new laptops could not be synced too. [more]

Luckily, the customer had order a new W-700 that I needed to setup. So using it as a test I began setting up the laptop as per their checklist. At every stage I tested the sync process. The last thing to be installed was the AT&T Communication management software for their 3G modems. (which they need) After completing the install Prosystems sync would not work. I uninstalled the AT&T software and sync worked. I reinstalled and it broke. I looked through the software settings and found that it installs a ByteMobile Acceleration program. I had previously, on another system, deselect the option to use the acceleration program and it still would not sync. I choose to uninstalled just the ByteMobile software and the sync worked, as well as the AT&T software and 3G modem.

The Bytemobile acceleration client is used to increased data reduction and speed-up the download process. It offers bidirectional optimization for dramatically reduced traffic on the uplink. It intercepts and optimizes all TCP network traffic generated from and received by the device. The software supports protocol-agnostic compression, lossy and lossless image file reduction, and delta compression techniques to ensure that the same data is not downloaded to the client repeatedly. It claims to preserves interoperability with third-party Windows applications such as internet security, personal firewall and VPN software. Client applications such as web browsers and remote applications such as web servers are suppose to be unaware of the application between them and operate as if communicating directly with each other. Since the sync process compare and transfers the same data throughout the process the acceleration client was causing the sync to fail.