Netwatch Timeout Function Question

Using the Netwatch feature as a simple status monitor for devices in my network, the "Timeout" function doe not function as I understand that it should.

Even though I set my Interval at 8s and the Timeout at 20s, the device status goes to "DOWN" status at first missed ping. I thought that my Timeout setting of 20s would not give a "Down" status until 3 pings are missed.

Am I misunderstanding the "Timeout" function?

Thanks,
Wes


[admin@ROUTER] /tool netwatch> export

aug/13/2012 08:54:16 by RouterOS 5.19

/tool netwatch
add comment="Tower Ping" disabled=no down-script="" host=172.168.0.100
interval=8s timeout=20s up-script=""
add comment="Station 1 Ping" disabled=no down-script="" host=172.168.0.110
interval=8s timeout=20s up-script=""
add comment="Station 2 Ping" disabled=no down-script="" host=172.168.0.120
interval=8s timeout=20s up-script=""
add comment="Station 3 Ping" disabled=no down-script="" host=172.168.0.130
interval=8s timeout=20s up-script=""
add comment="Station 4 Ping" disabled=no down-script="" host=172.168.0.140
interval=8s timeout=20s up-script=""
add comment="Station 5 Ping" disabled=no down-script="" host=172.168.0.150
interval=8s timeout=20s up-script=""
add comment="Station 6 Ping" disabled=no down-script="" host=172.168.0.160
interval=8s timeout=20s up-script=""
add comment="Picnic Ping" disabled=no down-script="" host=172.168.0.170
interval=8s timeout=20s up-script=""
add comment="Garage Ping" disabled=no down-script="" host=172.168.0.180
interval=8s timeout=20s up-script=""

Hi wwooley,

The interval is how often the remote host will be polled and the timeout is how long it will wait for the response before determining the host is down, unfortunately this does not mean it will ping again in the interim and check if the host is back up.

I wrote a modified script to work with netwatch that will run multiple pings and only mark the host as down if it fails multiple times; this might be of some assistance to you: http://www.mikrotik-routeros.com/2011/01/improved-netwatch-style-script/

Thanks omega-00, for your reply and information.

I have seen and used your scripts as examples during my “Getting familiar with MT” stage. Very helpful! …and I am sure others appreciate your expertise as well.

In this case, I am working to troubleshoot a couple of issues in my MT WiFi Network. One issue is to monitor possible “flapping” of the backhaul links - which is where I am using the /Tools/Netwatch list. My Netwatch rules are built to just give me a quick (real-time “kind-of”) status of my device connectivity. The rules don’t need to activate any scripts at this time.

The rules as noted in my original post, and the Netwatch Table give me an “UP” or “DOWN” status based on the ping response. The Netwatch “Timeout” feature as described in the MT Wiki is:
< timeout (time; Default: 1s) Timeout in seconds after which host is considered down >

My intent is to use the Timeout feature to give me a “20 Second Buffer” before the Netwatch Table rule considers the device “DOWN” on a missed ping. Currently, the Netwatch Table gives a “DOWN” status immediately upon a missed ping - irregardless of the Timeout setting. It would appear by the above definition that the Timeout feature is for implementing a delay in “Down” response — otherwise it doesn’t have much functionality other than a basic threshold for latency - hence the default 1s setting.

Just wondered if my expectations were off, or that there may be an issue in the timeout function - and if anyone else had experienced the same.

< Using v5.20 >

Thanks!

This is a great example of a simple change that Mikrotik can make that will reduce a lot of complexity for its users. Reasonable timeout periods are mandatory for human-friendly failovers triggered by scripts, and netwatch has the potential to make it a lot simpler.

Do you guys think they will consider this as a feature request?