Send gratuitous type 2 probe replies.
authorGuus Sliepen <guus@tinc-vpn.org>
Sun, 11 Jan 2015 16:44:50 +0000 (17:44 +0100)
committerGuus Sliepen <guus@tinc-vpn.org>
Sun, 11 Jan 2015 16:44:50 +0000 (17:44 +0100)
commitae5b56c03d1e1af7561d7f1d1d8a333c3a9691ff
treefa77ecf271005ab830d836d3ba0851c2c7202a9a
parent7b76b7ac35b49b8a94ad91c432886a0a54e144d1
Send gratuitous type 2 probe replies.

If we receive any traffic from another node, we periodically send back a
gratuitous type 2 probe reply with the maximum received packet length.
On the other node, this causes the udp and perhaps mtu probe timers to
be reset, so it does not need to send a probe request. Gratuitous probe
replies from another node also count as received traffic for this
purpose, so for nodes that also have a meta-connection, UDP keepalive
packets in principle can now solely be type 2 replies. This reduces the
amount of probe traffic even more.

To work, gratuitous replies should be sent slightly more often than
udp_discovery_keepalive_interval, so probe requests won't be triggered.
This also means that the timer resolution must be smaller than the
difference between the two, and at the moment it's kind of a hack.
src/net.c
src/net_packet.c
src/node.h