FileSyncer: Design, Implementation, and Performance Evaluation

Full Text (PDF, 880KB), PP.32-43

Views: 0 Downloads: 0


Oluwafemi Osho 1,* Anthony Ugbede Faruna 1

1. Department of Cyber Security Science Federal University of Technology, Minna

* Corresponding author.


Received: 21 Apr. 2016 / Revised: 10 Jul. 2016 / Accepted: 12 Aug. 2016 / Published: 8 Nov. 2016

Index Terms

File synchronization, backup, recovery, update detection, reconciler, security


With the pervasiveness of information technology, one of the growing trends today is a phenomenon which can be termed one-user-to-many-computing-devices. In many cases, the need to manage information across multiple electronic devices and storage media arises. The challenge therefore is finding a file synchronization system that can effectively replicate files across these different devices. This paper presents the design, implementation, and evaluation of FileSyncer, a rapid and efficient file synchronization tool that, in addition to the traditional synchronization capabilities, supports manual update selection and mechanism to revert a synchronization process back to the last previous state. The system employs last modified time, file size and CRC checksum for update detection and to ensure integrity of synchronized files. The synchronization times of the system for files of different sizes were compared with those of four existing file synchronization systems. Results showed increased efficiency in terms of time taken by FileSyncer to complete a synchronization operation with increase in file size compared to the other systems. In the future, we plan to release FileSyncer to the open source community for further development.

Cite This Paper

Oluwafemi Osho, Anthony Ugbede Faruna, "FileSyncer: Design, Implementation, and Performance Evaluation", International Journal of Computer Network and Information Security(IJCNIS), Vol.8, No.11, pp.32-43, 2016. DOI:10.5815/ijcnis.2016.11.04


[1]B. C. Pierce, and J. Vouillon, “What's in Unison? A formal specification and reference implementation of a file synchronizer,” 2004. Retrieved June 17th, 2015 from
[2]N. Ramsey, and E. Csirmaz, “An algebraic approach to file synchronization,” ACM SIGSOFT Software Engineering Notes, vol. 26(5), pp. 175-185, 2001.
[3]S. Han, H. Shen, T. Kim, A. Krishnamurthy, T. Anderson, and D. Wetherall, “MetaSync: File synchronization across multiple untrusted storage services,” 2015. Retrieved July 29th, 2015 from
[4]C. Liang, L. Hu, Z. Lei, and J. Wang, “SyncCS: a cloud storage based file synchronization approach,” Journal of Software, vol. 9(7), pp. 1679-1686, 2014.
[5]B. Muruganantham, and T. K. Pandey, “Replica synchronization in distributed File system using asynchronous replication,” SSRG International Journal of Computer Science and Engineering, vol. 2, pp. 12-17, 2015.
[6]M. S. Seemadevi, S. Y. Ramesh, and P. B. Dhainje, “Adaptive replica synchronization for distributed file systems,” International Journal of Advanced Research in Computer Science and Software Engineering, vol. 5, pp. 1368-1371, 2015.
[7]M. J. Vini, R. Nallathamby, and C. R. Robin, “A Novel Approach for Replica Synchronization in Hadoop Distributed File Systems,” Procedia Computer Science, vol. 50, pp. 590-595, 2015.
[8]A. Lareida, T. Bocek, S. Golaszewski, C. Luthold, and M. Weber, “Box2Box - A P2P-based file-sharing and synchronization application,” In Peer-to-Peer Computing (P2P), 2013 IEEE Thirteenth International Conference, pp. 1-2, September 2013.
[9]J. Lindblom, M. Huang, J. Burke, and L. Zhang, “File Sync/NDN: Peer-to-peer fileSync over Named Data Networking. NDN, Technical Report (NDN-0012),” 2013. Retrieved July 29th, 2015 from
[10]H. Zhang, C. Yeo, and K. Ramchandran, “VSYNC — a novel video file synchronization protocol,” In proceedings of the 16th ACM international conference on multimedia, pp. 757-760, October 2008.
[11]Balasubramaniam, S., & Pierce, B. (1998). What is a File Synchronizer? In Proc. of the ACM/IEEE MOBICOM’98 Conference, pages 98–108, October 1998.
[12]Aspera, “Aspera sync. Scalable, multidirectional synchronization of big data – over distance,” Retrieved August 10th, 2015 from aWP.pdf
[13]TGRMN Software, “FAQ and Knowledge Base,” Retrieved from 34.htm
[14]S. Khanna, K. Kunal, and B. C. Pierce, “A formal investigation of diff3,” International Conference on Foundations of Software Technology and Theoretical Computer Science, pp. 485-496, December 2007, Springer Berlin Heidelberg.
[15]D. Gupta, and K. Sagar, “Remote file synchronization single-round algorithms,” International Journal of Computer Applications, vol. 4(1), pp. 32-36, 2010.
[16]T. Suel, and N. Memon, “Algorithm for delta compression and remote file synchronization,” 2002. Retrieved March 16th, 2015 from
[17]T. Suel, P. Noel, and D. Trendafilov, “Improved file synchronization techniques for maintaining large replicated collections over slow networks,” Proceedings 20th International Conference on Data Engineering, pp. 153–164, 2004, IEEE.
[18]A. Tridgell, and P. Mackerras, “The Rsync algorithm, “Joint Computer Science Technical Report Series, pp. 1-6, 1996. Retrieved July 29th, 2015 from
[19]U. Irmak, S. Mihaylov, and T. Suel, “Improved single-round protocols for remote file synchronization,” Proceedings IEEE 24th Annual Joint Conference of the IEEE Computer and Communications Societies, vol. 3, pp. 1665-1676, March 2005.
[20]G. Shial, and S. Majhi, “Techniques for file synchronization: a survey,” Journal of Global Research in Computer Science, vol. 5(11), pp. 1-4, 2014.
[21]H. Yan, U. Irmak, and T. Suel, “Algorithms for low-latency remote file synchronization,” INFOCOM 2008. The 27th Conference on Computer Communications. IEEE. IEEE, April 2008.
[22]A. Dennis, B. H. Wixom, and R. M. Roth, “System Analysis and Design, 5th ed., Danvers, MA: John Wiley and Sons, 2012.
[23]FastSum, “Frequently Asked Questions: Basic Concepts. What is MD5 hash?,” 2011. Retrieved October 16, 2015 from
[24]Synkron, “Folder Synchronization,” 2011. Retrieved October 17th, 2015 from
[25]FreeFileSync, “About FreeFileSync,” 2015. Retrieved October 17th, 2015 from
[26]DirSync Pro, “What is it?,” 2015. Retrieved October 17th, 2015 from