协议设计:简单通信协议的心跳

来源:互联网 发布:白色车牌js是什么意思 编辑:程序博客网 时间:2024/05/22 05:18

/* *Author  : DavidLin        *Date    : 2014-12-25pm        *Email   : linpeng1577@163.com or linpeng1577@gmail.com        *world   : the city of SZ, in China        *Ver     : 000.000.001        *For     : threads for rxtx!     *history :     editor      time            do        *          1)LinPeng       2014-12-25      created this file!        *          2)        */   

        诸如蓝牙等无线通信协议,帧是通过空口传输,在通讯链路建立之后,如何确保通讯链路是一直保持的,还是已经断开?这就需要心跳功能了。假如有主从设备2台,主设备每隔1000ms给从设备发送一个心跳包,并设定超时等待时间为300ms,从设备在300ms(不考虑传输损耗时间)内给主设备应答,主设备在发送帧之后的300ms内收到从设备的应答帧,就可以认为从设备依然挂载在通信网络中。

        具体实现与超时重发类似,当然,具体实现中,可能会考虑连续限定次数(比如5次)接收不到应答帧,才判定链路状态断开。

       (未完待续)。

0 0
原创粉丝点击