From a877cf9f3980f9721246887f67b22b6591cb873f Mon Sep 17 00:00:00 2001 From: Vladimir Ratnikov Date: Sat, 21 Dec 2019 06:27:52 -0500 Subject: [PATCH] ip: more detailed show reassembly commands Options like: expire_walk_interval_ms,max_reassemblies,timeout_ms can be configured via API, but it's impossible to check them using vppctl, but this can be a useful feature Type: feature Signed-off-by: Vladimir Ratnikov Change-Id: Iac8a96201a7a70b82e9852edc89b819c5d451a58 --- src/vnet/ip/reass/ip4_full_reass.c | 10 ++++++++-- src/vnet/ip/reass/ip4_sv_reass.c | 8 +++++++- src/vnet/ip/reass/ip6_full_reass.c | 11 +++++++++-- src/vnet/ip/reass/ip6_sv_reass.c | 11 +++++++++-- 4 files changed, 33 insertions(+), 7 deletions(-) diff --git a/src/vnet/ip/reass/ip4_full_reass.c b/src/vnet/ip/reass/ip4_full_reass.c index d492e5e4541..b1d8a56fb93 100644 --- a/src/vnet/ip/reass/ip4_full_reass.c +++ b/src/vnet/ip/reass/ip4_full_reass.c @@ -1654,11 +1654,17 @@ show_ip4_reass (vlib_main_t * vm, clib_spinlock_unlock (&rt->lock); } vlib_cli_output (vm, "---------------------"); - vlib_cli_output (vm, "Current IP4 reassemblies count: %lu\n", + vlib_cli_output (vm, "Current full IP4 reassemblies count: %lu\n", (long unsigned) sum_reass_n); vlib_cli_output (vm, - "Maximum configured concurrent IP4 reassemblies per worker-thread: %lu\n", + "Maximum configured concurrent full IP4 reassemblies per worker-thread: %lu\n", (long unsigned) rm->max_reass_n); + vlib_cli_output (vm, + "Maximum configured full IP4 reassembly timeout: %lums\n", + (long unsigned) rm->timeout_ms); + vlib_cli_output (vm, + "Maximum configured full IP4 reassembly expire walk interval: %lums\n", + (long unsigned) rm->expire_walk_interval_ms); return 0; } diff --git a/src/vnet/ip/reass/ip4_sv_reass.c b/src/vnet/ip/reass/ip4_sv_reass.c index c50cf6d6728..29877cf5dfd 100644 --- a/src/vnet/ip/reass/ip4_sv_reass.c +++ b/src/vnet/ip/reass/ip4_sv_reass.c @@ -1115,8 +1115,14 @@ show_ip4_reass (vlib_main_t * vm, vlib_cli_output (vm, "Current IP4 reassemblies count: %lu\n", (long unsigned) sum_reass_n); vlib_cli_output (vm, - "Maximum configured concurrent IP4 reassemblies per worker-thread: %lu\n", + "Maximum configured concurrent shallow virtual IP4 reassemblies per worker-thread: %lu\n", (long unsigned) rm->max_reass_n); + vlib_cli_output (vm, + "Maximum configured shallow virtual IP4 reassembly timeout: %lums\n", + (long unsigned) rm->timeout_ms); + vlib_cli_output (vm, + "Maximum configured shallow virtual IP4 reassembly expire walk interval: %lums\n", + (long unsigned) rm->expire_walk_interval_ms); return 0; } diff --git a/src/vnet/ip/reass/ip6_full_reass.c b/src/vnet/ip/reass/ip6_full_reass.c index 7bcfdfc9f00..7d6a31e170a 100644 --- a/src/vnet/ip/reass/ip6_full_reass.c +++ b/src/vnet/ip/reass/ip6_full_reass.c @@ -1674,8 +1674,15 @@ show_ip6_full_reass (vlib_main_t * vm, unformat_input_t * input, vlib_cli_output (vm, "---------------------"); vlib_cli_output (vm, "Current IP6 reassemblies count: %lu\n", (long unsigned) sum_reass_n); - vlib_cli_output (vm, "Maximum configured concurrent IP6 reassemblies per " - "worker-thread: %lu\n", (long unsigned) rm->max_reass_n); + vlib_cli_output (vm, + "Maximum configured concurrent full IP6 reassemblies per worker-thread: %lu\n", + (long unsigned) rm->max_reass_n); + vlib_cli_output (vm, + "Maximum configured full IP6 reassembly timeout: %lums\n", + (long unsigned) rm->timeout_ms); + vlib_cli_output (vm, + "Maximum configured full IP6 reassembly expire walk interval: %lums\n", + (long unsigned) rm->expire_walk_interval_ms); vlib_cli_output (vm, "Buffers in use: %lu\n", (long unsigned) sum_buffers_n); return 0; diff --git a/src/vnet/ip/reass/ip6_sv_reass.c b/src/vnet/ip/reass/ip6_sv_reass.c index 5f46966b19b..b928bb0e01f 100644 --- a/src/vnet/ip/reass/ip6_sv_reass.c +++ b/src/vnet/ip/reass/ip6_sv_reass.c @@ -1151,8 +1151,15 @@ show_ip6_sv_reass (vlib_main_t * vm, unformat_input_t * input, vlib_cli_output (vm, "---------------------"); vlib_cli_output (vm, "Current IP6 reassemblies count: %lu\n", (long unsigned) sum_reass_n); - vlib_cli_output (vm, "Maximum configured concurrent IP6 reassemblies per " - "worker-thread: %lu\n", (long unsigned) rm->max_reass_n); + vlib_cli_output (vm, + "Maximum configured concurrent shallow virtual IP6 reassemblies per worker-thread: %lu\n", + (long unsigned) rm->max_reass_n); + vlib_cli_output (vm, + "Maximum configured shallow virtual IP6 reassembly timeout: %lums\n", + (long unsigned) rm->timeout_ms); + vlib_cli_output (vm, + "Maximum configured shallow virtual IP6 reassembly expire walk interval: %lums\n", + (long unsigned) rm->expire_walk_interval_ms); vlib_cli_output (vm, "Buffers in use: %lu\n", (long unsigned) sum_buffers_n); return 0; -- 2.16.6