summaryrefslogtreecommitdiffstats
path: root/VNFs/DPPD-PROX/display_latency.c
diff options
context:
space:
mode:
authorXavier Simonart <xavier.simonart@intel.com>2020-07-02 10:02:40 +0200
committerXavier Simonart <xavier.simonart@intel.com>2020-09-21 09:56:18 +0200
commitace499fbbdd44cbb9c0d68d6aad40e0b280d54de (patch)
tree2c44572bc385b4975dc4aac8795f7cc874fdd548 /VNFs/DPPD-PROX/display_latency.c
parent163323cd8f9eec2390099ca4834827a28c46c6db (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.c18
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)