Механизм отслеживания целостности сетевых соединений позволяет сократить время реакции кластера на разрыв соединения. Этот механизм отслеживает внутренние соединения между процессами кластера, и внешние соединения между кластером и расширениями веб-серверов.
Проверка соединений осуществляется сразу для группы соединений, называемой направлением. Существуют правила, по которым платформа автоматически группирует несколько соединений в одно направление. Для каждого направления происходит периодическая отправка небольшого проверочного пакета данных, и ожидание ответа на него. Проверка осуществляется как на стороне источника этих соединений, так и на стороне приёмника.
Алгоритм проверки выглядит следующим образом. Пакеты отправляются по протоколу UDP. До наступления таймаута ожидается ответ. Если ответ получен, направление считается доступным, и проверка по протоколу UDP продолжается. Если в какой-то момент ответные пакеты UDP перестают приходить, направление считается недоступным.
Отдельно обрабатывается ситуация, когда за все время жизни направления не получено ни одного ответного пакета по протоколу UDP. В этом случае направление продолжает считаться доступным, но для дальнейшей его проверки будет использоваться протокол TCP. Устанавливается TCP соединение, и проверка идет через это новое соединение по тому же принципу. Если до наступления таймаута не пришло ни одного пакета от противоположной стороны по протоколу TCP, направление считается недоступным.
После того, как направление признано недоступным, все соединения этого направления помечаются как непригодные для использования, и будут разорваны при следующем обращении к ним. Кроме этого механизмы кластера оповещаются о разрыве соединений для оперативной реакции на это событие. В том числе для удаления блокировок, соответствующих недоступному процессу.
Стандартные значения выбраны так, чтобы с большим запасом исключить ложные срабатывания при штатной загрузке сети и другого оборудования. В то же время эти значения обеспечивают комфортное время реакции на аварии на сетевом оборудовании, или на узлах кластера.