i need to synchronize data between our main Server and local Client Servers

both contain Patient Records, but the Local Client server contain only patient records related to that client

please give me the ways we can synchronize this data

and suggest a better solution of synchronization.

things to be considered

the synchronization process should be controller by the client application (or some front end)i.e. the synchronization should take place when the user wants it to be done and he should be able to pause or resume the synchronization optionally he may choose data for synchronization (i.e. he may not want few details that has bulk data to be synchronized)