Design of synchronization and communication mechanism between client and server programs