This is what Nagios does: (Correct me if I’m wrong)
When something is unreachable/down it goes in a SOFT state.
In SOFT state, it rechecks x many times, where x is the amount you’ve selected.
When reaching the last check, for example 10/10, and still no response, it enters a HARD state.
After some time it will go to 1/10 HARD state, and remains 1/10, since it has already done it’s checks.
BUT, it could be that I’m just wrong about this.