diff options
author | Xavier Simonart <xavier.simonart@intel.com> | 2020-07-02 10:02:40 +0200 |
---|---|---|
committer | Xavier Simonart <xavier.simonart@intel.com> | 2020-09-21 09:56:18 +0200 |
commit | ace499fbbdd44cbb9c0d68d6aad40e0b280d54de (patch) | |
tree | 2c44572bc385b4975dc4aac8795f7cc874fdd548 /VNFs/DPPD-PROX/display_latency.c | |
parent | 163323cd8f9eec2390099ca4834827a28c46c6db (diff) |
Added support for reporting packet (mis)order.
The "Latency" screen has been updated with 3 columns:
- mis-ordered
Count the number of mis-ordered packets.
- extent:
Gives an indication of how mis-ordered the packets are.
Receiving packet "x - 5" after receiving packet "x" will
cause an extent of 5.
- duplicate:
Count number of duplicate packets.
Following commands have been added for the impair mode:
- proba no drop: replaces the former "probability" command.
Percentage of forwarded packets. So 99.5 means 0.5% of packet drop.
- proba delay
Percentage of delayed packets for the impair mode.
- proba duplicate
Percentage of duplicate packets.
Similar parameters are supported within the config files:
- proba no drop
- proba delay
- proba duplicate
Note: it is recommanded to use the signature when measuring packet
misorder, as otherwise unexpected packet would cause miscounts.
Change-Id: I037f606f264d6e2bd7f123df5ed57ab7df8386d7
Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
Diffstat (limited to 'VNFs/DPPD-PROX/display_latency.c')
-rw-r--r-- | VNFs/DPPD-PROX/display_latency.c | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/VNFs/DPPD-PROX/display_latency.c b/VNFs/DPPD-PROX/display_latency.c index 04382e46..f43dd69d 100644 --- a/VNFs/DPPD-PROX/display_latency.c +++ b/VNFs/DPPD-PROX/display_latency.c @@ -26,6 +26,9 @@ static struct display_column *stddev_col; static struct display_column *accuracy_limit_col; static struct display_column *used_col; static struct display_column *lost_col; +static struct display_column *mis_ordered_col; +static struct display_column *extent_col; +static struct display_column *duplicate_col; static struct display_page display_page_latency; static void display_latency_draw_frame(struct screen_state *screen_state) @@ -68,12 +71,18 @@ static void display_latency_draw_frame(struct screen_state *screen_state) used_col = display_table_add_col(acc); display_column_init(used_col, "Used Packets (%)", 16); accuracy_limit_col = display_table_add_col(acc); - display_column_init(accuracy_limit_col, "limit (us)", 16); + display_column_init(accuracy_limit_col, "limit (us)", 12); display_table_init(other, "Other"); lost_col = display_table_add_col(other); - display_column_init(lost_col, "Lost Packets", 16); + display_column_init(lost_col, "Lost", 12); + mis_ordered_col = display_table_add_col(other); + display_column_init(mis_ordered_col, "mis-ordered", 12); + extent_col = display_table_add_col(other); + display_column_init(extent_col, "extent", 12); + duplicate_col = display_table_add_col(other); + display_column_init(duplicate_col, "duplicate", 12); display_page_draw_frame(&display_page_latency, n_latency); @@ -117,8 +126,11 @@ static void display_stats_latency_entry(int row, struct stats_latency *stats_lat } display_column_print(accuracy_limit_col, row, "%s", print_time_unit_usec(dst, &accuracy_limit)); - display_column_print(lost_col, row, "%16"PRIu64"", stats_latency->lost_packets); + display_column_print(lost_col, row, "%12"PRIu64"", stats_latency->lost_packets); display_column_print(used_col, row, "%3u.%06u", used / AFTER_POINT, used % AFTER_POINT); + display_column_print(mis_ordered_col, row, "%12"PRIu64"", stats_latency->mis_ordered); + display_column_print(extent_col, row, "%12"PRIu64"", stats_latency->extent); + display_column_print(duplicate_col, row, "%12"PRIu64"", stats_latency->duplicate); } static void display_latency_draw_stats(struct screen_state *screen_state) |