Bug #1801
closed
AMR DTX: downlink logic flawed
Added by laforge over 7 years ago.
Updated about 7 years ago.
Description
The AMR DTX logic operates as follows:
- if there is an incoming downlink RTP frame in the queue for this lchan, send it
- else, generate PH-EMPTY-FRAME.req or PH-DATA.req with SID payload, depending on time (also broken, see #1799)
This is flawed, as it assumes that the incoming RTP stream is always well-formed and -timed. It would for example also mean that a RTP stream with lots of extra SID frames (more than every 160ms) would result in all of those SID frames transmitted over the radio interface, where the spec says we should only transmit one SID_UPDATE every 160ms.
To quote a rule from IETF: we should be conservative in what we send and tolerant in what we receive.
- Description updated (diff)
- Related to Bug #1799: AMR DTX: last_sid should operate on codec frame intervals (20ms), not gsm frame number added
- Related to Bug #1800: AMR DTX: lchan->tch.last_sid is never populated with save_last_sid() added
- Related to Bug #1803: osmo-bts-litecell15: AMR FR: some RTP buffers are never released added
- Assignee changed from 4368 to msuraev
- Status changed from New to In Progress
- % Done changed from 0 to 20
Fix available as gerrit #858.
- % Done changed from 20 to 80
Should be fixed by gerrit # 1029 and corresponding fixes from related bugs.
- Related to Bug #1802: AMR DTX Downlink: We are not sending ONSET ?!? added
Not sure what's the right place for .dot file so attaching current version here for the time being.
AMR FR is working fine with #rtp jitter-buffer 0'.
Je serai absent pour la période du 19 décembre 2016 au 3 février 2017 inclusivement. Pour toute question, contactez M. David Bourget à l'adresse david.bourget@nutaq.com. ************************************************* I'll be out of the office from December 19th 2016 to February 3rd 2017 inclusively. If you need immediate assistance, please contact Mr David Bourget at david.bourget@nutaq.com.
Remaining AMR HR issues:
- FACCH insertion: proper use of SID_FIRST_INH (if SID_FIRST_P1 was used before FACCH) and SID_UPDATE_INH (if SID_UPDATE was used before FACCH)
- SID_UPDATE_INH is not sent to L1 in downlink
- SID_FIRST_INH is not sent to L1 in downlink
- Undesired speech frame during DTX seems to mess up the FSM. SID_UPDATE becomes SID_FIRST_P1
Note: this has not been re-tested with latest master yet.
- Related to Bug #1892: AMR half rate crashes osmo-bts added
gerrit# 1508 should fix AMR HR problem with inhibition by voice frames. FACCH for AMR HR is WIP.
Gerrit # 1611 should fix the issue with FACCH for AMR HR.
- Status changed from In Progress to Stalled
- Status changed from Stalled to Resolved
- % Done changed from 80 to 100
All fixes has been merged, docs update will follow up shortly.
- Status changed from Resolved to Closed
Also available in: Atom
PDF