diff options
author | Florin Coras <fcoras@cisco.com> | 2019-07-26 10:18:51 -0700 |
---|---|---|
committer | John Lo <loj@cisco.com> | 2019-07-26 20:54:17 +0000 |
commit | 1f42101f2708452301c62ff2e07eaaad3bbcd31a (patch) | |
tree | ad5830af6da0caf136a2c42eca14b9be7c956e14 /src | |
parent | 559ee0f54c5a08c9975ed197b41081827b766485 (diff) |
tcp: count resets sent
Type:feature
Change-Id: Ie1ab4b24af9c654d5e0ed94b7fa96ca195b01c56
Signed-off-by: Florin Coras <fcoras@cisco.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/vnet/tcp/tcp.h | 3 | ||||
-rw-r--r-- | src/vnet/tcp/tcp_output.c | 4 |
2 files changed, 7 insertions, 0 deletions
diff --git a/src/vnet/tcp/tcp.h b/src/vnet/tcp/tcp.h index 8f2665d2a6a..698173ee28a 100644 --- a/src/vnet/tcp/tcp.h +++ b/src/vnet/tcp/tcp.h @@ -577,6 +577,9 @@ extern vlib_node_registration_t tcp6_rcv_process_node; extern vlib_node_registration_t tcp4_listen_node; extern vlib_node_registration_t tcp6_listen_node; +#define tcp_node_index(node_id, is_ip4) \ + ((is_ip4) ? tcp4_##node_id##_node.index : tcp6_##node_id##_node.index) + always_inline tcp_main_t * vnet_get_tcp_main () { diff --git a/src/vnet/tcp/tcp_output.c b/src/vnet/tcp/tcp_output.c index 79cc95e9f0b..58d2167deb2 100644 --- a/src/vnet/tcp/tcp_output.c +++ b/src/vnet/tcp/tcp_output.c @@ -843,6 +843,8 @@ tcp_send_reset_w_pkt (tcp_connection_t * tc, vlib_buffer_t * pkt, tcp_enqueue_to_ip_lookup_now (wrk, b, bi, is_ip4, fib_index); TCP_EVT_DBG (TCP_EVT_RST_SENT, tc); + vlib_node_increment_counter (vm, tcp_node_index (output, tc->c_is_ip4), + TCP_ERROR_RST_SENT, 1); } /** @@ -892,6 +894,8 @@ tcp_send_reset (tcp_connection_t * tc) } tcp_enqueue_to_ip_lookup_now (wrk, b, bi, tc->c_is_ip4, tc->c_fib_index); TCP_EVT_DBG (TCP_EVT_RST_SENT, tc); + vlib_node_increment_counter (vm, tcp_node_index (output, tc->c_is_ip4), + TCP_ERROR_RST_SENT, 1); } static void |