diff options
author | Antonio Quartulli <ordex@autistici.org> | 2012-07-06 01:38:29 +0400 |
---|---|---|
committer | Antonio Quartulli <ordex@autistici.org> | 2012-08-23 16:20:22 +0400 |
commit | 30cfd02b60e1cb16f5effb0a01f826c5bb7e4c59 (patch) | |
tree | df702e35ab213c98ae4090343e28c1afbd17e207 /net/batman-adv/main.h | |
parent | c67893d17a6bbd16328a1ee38ab0cb460511014a (diff) | |
download | linux-30cfd02b60e1cb16f5effb0a01f826c5bb7e4c59.tar.xz |
batman-adv: detect not yet announced clients
With the current TT mechanism a new client joining the network is not
immediately able to communicate with other hosts because its MAC address has not
been announced yet. This situation holds until the first OGM containing its
joining event will be spread over the mesh network.
This behaviour can be acceptable in networks where the originator interval is a
small value (e.g. 1sec) but if that value is set to an higher time (e.g. 5secs)
the client could suffer from several malfunctions like DHCP client timeouts,
etc.
This patch adds an early detection mechanism that makes nodes in the network
able to recognise "not yet announced clients" by means of the broadcast packets
they emitted on connection (e.g. ARP or DHCP request). The added client will
then be confirmed upon receiving the OGM claiming it or purged if such OGM
is not received within a fixed amount of time.
Signed-off-by: Antonio Quartulli <ordex@autistici.org>
Diffstat (limited to 'net/batman-adv/main.h')
-rw-r--r-- | net/batman-adv/main.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/net/batman-adv/main.h b/net/batman-adv/main.h index 574fca1bd434..61a0cfd3ceb4 100644 --- a/net/batman-adv/main.h +++ b/net/batman-adv/main.h @@ -43,6 +43,7 @@ #define BATADV_PURGE_TIMEOUT 200000 /* 200 seconds */ #define BATADV_TT_LOCAL_TIMEOUT 3600000 /* in milliseconds */ #define BATADV_TT_CLIENT_ROAM_TIMEOUT 600000 /* in milliseconds */ +#define BATADV_TT_CLIENT_TEMP_TIMEOUT 600000 /* in milliseconds */ /* sliding packet range of received originator messages in sequence numbers * (should be a multiple of our word size) */ |