[asterisk-bugs] [JIRA] (ASTERISK-20806) Strange values reported by CHANNEL(rtpqos, audio, all) - outbound call

Matt Jordan (JIRA) noreply at issues.asterisk.org
Thu Feb 7 08:45:59 CST 2013


    [ https://issues.asterisk.org/jira/browse/ASTERISK-20806?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=202677#comment-202677 ] 

Matt Jordan edited comment on ASTERISK-20806 at 2/7/13 8:45 AM:
----------------------------------------------------------------

This is a bug in whatever device is sending the RTCP packets to Asterisk.

RTT times are computed using three values: the timestamp a source received this Reception Report (RR), the timestamp of the last Source Report (SR), and the delay since the last Source Report (del). RTT is calculated as follows:

{{RTT = RR - SR - del}}

Asterisk calculates the RTT appropriately, as seen in {{res_rtp_asterisk}}, where {{comp}} is {{RR}}, {{lsr}} is {{SR}}, and {{dlsr}} is {{del}}:

{noformat}
				comp = ((msw & 0xffff) << 16) | ((lsw & 0xffff0000) >> 16);
				lsr = ntohl(rtcpheader[i + 4]);
				dlsr = ntohl(rtcpheader[i + 5]);
				rtt = comp - lsr - dlsr;
{noformat}

In your pcap, the RTCP packets received from the external device have a correctly populated Reception Report time and Source Delay time. However, the last Source Report timestamp is always 0. This means the device is not informing us correctly of the time it last saw a source report, and the calculated RTT time is skewed.
                
      was (Author: mjordan):
    This is a bug in whatever device is sending the RTCP packets to Asterisk.

RTT times are computed using three values: the timestamp a source received this Reception Report (RR), the timestamp of the last Source Report (SR), and the delay since the last Source Report (del). RTT is calculated as follows:

{{RTT = RR - SR - del}}

Asterisk calculates the RTT appropriately, as seen in {{res_rtp_asterisk}}, where {{comp}} is {{RR}}, {{lsr}} is {{SR}}, and {{dls}}r is {{del}}:

{noformat}
				comp = ((msw & 0xffff) << 16) | ((lsw & 0xffff0000) >> 16);
				lsr = ntohl(rtcpheader[i + 4]);
				dlsr = ntohl(rtcpheader[i + 5]);
				rtt = comp - lsr - dlsr;
{noformat}

In your pcap, the RTCP packets received from the external device have a correctly populated Reception Report time and Source Delay time. However, the last Source Report timestamp is always 0. This means the device is not informing us correctly of the time it last saw a source report, and the calculated RTT time is skewed.
                  
> Strange values reported by CHANNEL(rtpqos,audio,all) - outbound call 
> ---------------------------------------------------------------------
>
>                 Key: ASTERISK-20806
>                 URL: https://issues.asterisk.org/jira/browse/ASTERISK-20806
>             Project: Asterisk
>          Issue Type: Bug
>      Security Level: None
>          Components: Core/RTP, Functions/func_channel
>    Affects Versions: 1.8.18.0
>         Environment: CentOS 6.2
>            Reporter: Leonard Andre
>            Assignee: Leonard Andre
>            Severity: Minor
>         Attachments: PBX.zip, PBX.zip
>
>
> the reported rtt value is "strange" for outbound calls.
> (measures logged from [macro-hangupcall])
> Example: 
> ssrc=1888837987;themssrc=2540558895;lp=0;rxjitter=0.001343;rxcount=6207;txjitter=0.000000;txcount=6220;rlp=0;rtt=65535.005000
> ssrc=1533549072;themssrc=399931211;lp=0;rxjitter=0.001413;rxcount=20608;txjitter=0.000000;txcount=20627;rlp=0;rtt=65535.389000

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira



More information about the asterisk-bugs mailing list