summaryrefslogtreecommitdiffstats
path: root/VNFs/DPPD-PROX/packet_utils.h
diff options
context:
space:
mode:
authorXavier Simonart <xavier.simonart@intel.com>2018-12-13 12:52:02 +0100
committerXavier Simonart <xavier.simonart@intel.com>2019-01-28 12:14:20 +0100
commitfd72a6505e18c66a31843708bb69a41739b97a84 (patch)
tree299d281a1d229282560588250a888d30ea6bb61b /VNFs/DPPD-PROX/packet_utils.h
parent8bffdf8c09100f8a923c37bd9be39a13cbc49862 (diff)
Add support for configurable arp timers in L3 mode
L3 mode supports two timers: - arp_update_time, defaulted to 1 second, which makes PROX to send arp request every second for active flows - arp_timeout, previously defaulted to 30 seconds, which makes PROX consider a MAC address as invalid if no arp_reply was received within those 30 seconds. Those timers values were hardcoded. They can now be configured through the configuration file (within the core section), using resp. "arp update time" and "arp timeout" keywords. Unit is milli seconds. The default becomes respectively 1 second and 2 weeks. Change-Id: I35e46e97df32ca44c2cdfae85a20ee015de5d6e1 Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
Diffstat (limited to 'VNFs/DPPD-PROX/packet_utils.h')
-rw-r--r--VNFs/DPPD-PROX/packet_utils.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/VNFs/DPPD-PROX/packet_utils.h b/VNFs/DPPD-PROX/packet_utils.h
index 74a3f60e..cb4dc913 100644
--- a/VNFs/DPPD-PROX/packet_utils.h
+++ b/VNFs/DPPD-PROX/packet_utils.h
@@ -33,6 +33,8 @@ enum {
SEND_ARP,
DROP_MBUF
};
+#define DEFAULT_ARP_TIMEOUT (1000 * 3600 * 24 * 15) // ~15 days = disabled by default
+#define DEFAULT_ARP_UPDATE_TIME (1000) // 1 second
struct task_base;
struct task_args;
@@ -50,6 +52,8 @@ struct l3_base {
uint8_t reachable_port_id;
uint8_t core_id;
uint8_t task_id;
+ uint32_t arp_timeout;
+ uint32_t arp_update_time;
struct arp_table gw;
struct arp_table optimized_arp_table[4];
struct rte_hash *ip_hash;