From 2a60a11c48e8677fc6c75174a5a0d4db1da97d0a Mon Sep 17 00:00:00 2001 From: Holger Hans Peter Freyther Date: Wed, 12 Sep 2012 11:30:41 +0200 Subject: [PATCH] mgcp: Remove the lost_no from the mgcp statistics The RFC 3435 specifies a different formula for calculating the lost packages. It involves the number of received packages and the delta of the sequence number. --- openbsc/include/openbsc/mgcp_internal.h | 1 - openbsc/src/libmgcp/mgcp_network.c | 4 ---- openbsc/src/libmgcp/mgcp_vty.c | 5 ++--- 3 files changed, 2 insertions(+), 8 deletions(-) diff --git a/openbsc/include/openbsc/mgcp_internal.h b/openbsc/include/openbsc/mgcp_internal.h index 6e0451ebf..d04025f9b 100644 --- a/openbsc/include/openbsc/mgcp_internal.h +++ b/openbsc/include/openbsc/mgcp_internal.h @@ -47,7 +47,6 @@ struct mgcp_rtp_state { uint32_t orig_ssrc; uint32_t ssrc; uint16_t seq_no; - int lost_no; int seq_offset; uint32_t last_timestamp; int32_t timestamp_offset; diff --git a/openbsc/src/libmgcp/mgcp_network.c b/openbsc/src/libmgcp/mgcp_network.c index 8824dc835..b15d6f711 100644 --- a/openbsc/src/libmgcp/mgcp_network.c +++ b/openbsc/src/libmgcp/mgcp_network.c @@ -145,11 +145,7 @@ static void patch_and_count(struct mgcp_endpoint *endp, struct mgcp_rtp_state *s rtp_hdr->timestamp = htonl(timestamp); } - /* seq changed, now compare if we have lost something */ - if (state->seq_no + 1u != seq) - state->lost_no = abs(seq - (state->seq_no + 1)); state->seq_no = seq; - state->last_timestamp = timestamp; if (payload < 0) diff --git a/openbsc/src/libmgcp/mgcp_vty.c b/openbsc/src/libmgcp/mgcp_vty.c index 314faa809..122fa8437 100644 --- a/openbsc/src/libmgcp/mgcp_vty.c +++ b/openbsc/src/libmgcp/mgcp_vty.c @@ -128,13 +128,12 @@ static void dump_trunk(struct vty *vty, struct mgcp_trunk_config *cfg) struct mgcp_endpoint *endp = &cfg->endpoints[i]; vty_out(vty, " Endpoint 0x%.2x: CI: %d net: %u/%u bts: %u/%u on %s " - "traffic received bts: %u/%u remote: %u/%u transcoder: %u/%u%s", + "traffic received bts: %u remote: %u transcoder: %u/%u%s", i, endp->ci, ntohs(endp->net_end.rtp_port), ntohs(endp->net_end.rtcp_port), ntohs(endp->bts_end.rtp_port), ntohs(endp->bts_end.rtcp_port), inet_ntoa(endp->bts_end.addr), - endp->bts_end.packets, endp->bts_state.lost_no, - endp->net_end.packets, endp->net_state.lost_no, + endp->bts_end.packets, endp->net_end.packets, endp->trans_net.packets, endp->trans_bts.packets, VTY_NEWLINE); }