what is synchronization in distributed system