From ace499fbbdd44cbb9c0d68d6aad40e0b280d54de Mon Sep 17 00:00:00 2001 From: Xavier Simonart Date: Thu, 2 Jul 2020 10:02:40 +0200 Subject: 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 --- VNFs/DPPD-PROX/eld.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'VNFs/DPPD-PROX/eld.h') diff --git a/VNFs/DPPD-PROX/eld.h b/VNFs/DPPD-PROX/eld.h index b5de59d7..2731beb8 100644 --- a/VNFs/DPPD-PROX/eld.h +++ b/VNFs/DPPD-PROX/eld.h @@ -76,7 +76,10 @@ static uint32_t early_loss_detect_add(struct early_loss_detect *eld, uint32_t pa old_queue_id = eld->entries[queue_pos]; eld->entries[queue_pos] = packet_index >> PACKET_QUEUE_BITS; - return (eld->entries[queue_pos] - old_queue_id - 1) & QUEUE_ID_MASK; + if (eld->entries[queue_pos] != old_queue_id) + return (eld->entries[queue_pos] - old_queue_id - 1) & QUEUE_ID_MASK; + else + return 0; } #endif /* _ELD_H_ */ -- cgit 1.2.3-korg