心跳机制

心跳包（）在计算机科学中指一种周期性的信号，通过硬件或软件的形式来检测行为的正常与否，或者与计算机系统是否一致。 通常，机器间会每隔几秒钟发送一次心跳包。 如果接收终端没有在指定时间内（通常是几个心跳包发送的时间间隔内）接收到心跳包，发送终端将会被判定发送失败。

心跳协议 
心跳协议通常用于与资源通信（如：浮动IP地址）并监控其有效性。 举个经典例子，在一台机器启动心跳机制，心跳机制将启动选举进程，让心跳机制所在的网络（心跳网络）的所有机器进行选举，决定哪一台机器拥有资源。

如果心跳网络存在两个以上的机器，是否分区是值得考量，如果分成两个区，那么可以保证其中一个失效时仍旧能正常运行，但是这个两个区并不能交互，势必会减少效率。上述的情况下，资源只能掌握在一台机器上，而不是说每个区都会有一台机器掌握资源。

心跳包会尝试去证明一台机器是否健康，心跳协议以及传输过程的可靠性是十分重要。因误报所造成的故障转移（这取决于资源），这是實務上不希望的。但另一方面又需要对实际的障碍进行迅速的反馈，所以心跳包而言可靠性十分重要。正因此，會希望心跳包运行在多条路线，从而提高可靠性。比如，一个心跳包通过以太网的 UDP/IP，另一个则用串行链路。

相關條目
看門狗計時器：電子式的計時器，偵測系統是否有正常工作，若有異常，會重置系統
Keepalive
心脏出血漏洞

参考文献 

叢集計算
嵌入式系统