Swarm service failover mechanism

Hi,
I would like to know the detailed swarm service failover mechanism and hope someone can help me. Thank you!

Suppose I have four docker nodes within a swarm(3 manager and one worker) and deploy a service with four replicas on it. Once a node is crashed, when and how a healthy node will launch a new container to meet four replicas requirement.

Any healthy check, timeout and recovery timing settings for a service to make sure its durability? How to inspect these settings?

Thanks and Regards,
Eric