[Home]

Summary:ASTERISK-27252: RTP: One way audio with direct media and strictrtp=yes.
Reporter:Richard Mudgett (rmudgett)Labels:
Date Opened:2017-09-05 14:45:39Date Closed:2017-09-19 10:25:24
Priority:MajorRegression?Yes
Status:Closed/CompleteComponents:Resources/res_rtp_asterisk
Versions:13.17.1 14.6.1 Frequency of
Occurrence
Constant
Related
Issues:
is related toASTERISK-27013 res_rtp_asterisk: Media can be hijacked even with strict RTP enabled
Environment:Attachments:
Description:The patch for ASTERISK-27013 broke the direct media RTP learning case that the "always learning" patch (80b8c2349c427a94a428670f1183bdc693936813) was created for in the first place.

The broken scenario is as follows:
{noformat}
PhoneA --> Ast1 --> Ast2 --> PhoneB
{noformat}

When PhoneA calls PhoneB, you get one way audio where PhoneA cannot hear PhoneB when Ast2 sets up direct media between Ast1 and PhoneB.  When PhoneB answers in this scenario RTP media initially flows through Ast2 to get to PhoneA.  Ast2 notices that direct media is possible so it reinvites Ast1 and PhoneB to send media directly between them.  Since the reinvites can happen quickly and there is usually a delay of around 500 ms in actually switching the RTP streams, the strictrtp learning code may not have learned the first stream source before it needs to relearn for the second stream source.  Under these conditions, the recent strictrtp change causes Ast1 to learn and lock onto the first RTP source from Ast2 even though the reinvites change the media stream to come directly from PhoneB.

If PhoneB places the call on hold and then takes the call off hold, PhoneA will be able to hear PhoneB.
Comments:By: Friendly Automation (friendly-automation) 2017-09-19 10:25:24.906-0500

Change 6515 merged by Joshua Colp:
AST-2017-008: Improve RTP and RTCP packet processing.

[https://gerrit.asterisk.org/6515|https://gerrit.asterisk.org/6515]

By: Friendly Automation (friendly-automation) 2017-09-19 10:25:43.887-0500

Change 6514 merged by Joshua Colp:
AST-2017-008: Improve RTP and RTCP packet processing.

[https://gerrit.asterisk.org/6514|https://gerrit.asterisk.org/6514]

By: Friendly Automation (friendly-automation) 2017-09-19 10:39:21.538-0500

Change 6516 merged by Joshua Colp:
AST-2017-008: Improve RTP and RTCP packet processing.

[https://gerrit.asterisk.org/6516|https://gerrit.asterisk.org/6516]

By: Friendly Automation (friendly-automation) 2017-09-19 10:39:22.868-0500

Change 6410 merged by Jenkins2:
AST-2017-008: Improve RTP and RTCP packet processing.

[https://gerrit.asterisk.org/6410|https://gerrit.asterisk.org/6410]

By: Friendly Automation (friendly-automation) 2017-09-19 10:58:56.558-0500

Change 6412 merged by Joshua Colp:
AST-2017-008: Improve RTP and RTCP packet processing.

[https://gerrit.asterisk.org/6412|https://gerrit.asterisk.org/6412]

By: Friendly Automation (friendly-automation) 2017-09-19 10:59:32.634-0500

Change 6511 merged by Joshua Colp:
AST-2017-008: Improve RTP and RTCP packet processing.

[https://gerrit.asterisk.org/6511|https://gerrit.asterisk.org/6511]

By: Friendly Automation (friendly-automation) 2017-09-19 10:59:47.605-0500

Change 6512 merged by Joshua Colp:
AST-2017-008: Improve RTP and RTCP packet processing.

[https://gerrit.asterisk.org/6512|https://gerrit.asterisk.org/6512]

By: Friendly Automation (friendly-automation) 2017-09-19 11:00:08.389-0500

Change 6513 merged by Joshua Colp:
AST-2017-008: Improve RTP and RTCP packet processing.

[https://gerrit.asterisk.org/6513|https://gerrit.asterisk.org/6513]

By: Friendly Automation (friendly-automation) 2017-09-21 14:50:15.806-0500

Change 6413 merged by Joshua Colp:
AST-2017-008: Improve RTP and RTCP packet processing.

[https://gerrit.asterisk.org/6413|https://gerrit.asterisk.org/6413]

By: Friendly Automation (friendly-automation) 2017-09-21 14:50:30.383-0500

Change 6414 merged by Joshua Colp:
AST-2017-008: Improve RTP and RTCP packet processing.

[https://gerrit.asterisk.org/6414|https://gerrit.asterisk.org/6414]

By: Friendly Automation (friendly-automation) 2017-09-21 14:50:45.634-0500

Change 6517 merged by Joshua Colp:
AST-2017-008: Improve RTP and RTCP packet processing.

[https://gerrit.asterisk.org/6517|https://gerrit.asterisk.org/6517]