A long period of silence

Detection of what is referred to as ``a long period of silence'' in the RFC, is implemented by making the following changes to the existing link-sensing mechanism.

In link tuples the following is recorded, in addition to the fields specified in the RFC:

Upon receiving a HELLO, the next_hello_timer is set to now + (received htime * 1.5), and the last_htime is set to the received htime. The htime value is multiplied by 1.5 to add some slack since various issues like scheduler poll rate and transmission queuing could delay the reception of the next HELLO. The link set is constantly checked for timed out entries with regards to the next_hello_timer. If a links next_hello_timer is timed out, a long period of silence is considered detected and the instability rule is applied to that links link_quality. The next_hello_timer is then set to now + last_htime to be able to detect another long period of silence. Note that this time no slack is added.

Andreas 2004-07-29