Project

General

Profile

Bug #2440

Osmux: Improve lost packet recreation mechanism

Added by pespin about 1 month ago. Updated about 1 month ago.

Status:
New
Priority:
Normal
Assignee:
Start date:
08/14/2017
Due date:
% Done:

0%

Spec Reference:

Description

With current implementation, only up to a maximum of 6-7 rtp lost packets can be replayed in best-case scenario. In other scenarios, big gaps can easily occur, for instance if a lot of packets are lost when the current batch is still empty.

If we forget to replay some lost RTP packets, then those are not taken into account in the Osmux stream, which means sequence numbers and timestamps will become different when Osmux re-generates the frames into RTP packets on the other side, and some receivers may not play nice with this jumps in time, eg. audio delays.

This new implementation [1] tries to maintain status on the whole circuit level rather than only on current batch. To simplify things, it clones payload from latest packet to enqueue rather than last previosuly packet enqueued.

After this patchset is merged, issue #2439 should be easy and helpful to implement.

[1] https://git.osmocom.org/libosmo-netif/log/?h=pespin/osmux-lostpkt

With the current branch I'm facing the following issue:
The call starts correctly and I see both sides sending Osmux, ie A->B:UDP[CID 0, CID 1] and B->A:UDP[CID 0, CID 1]. However, sometimes, at some point during the call some legs start falling, in the sense that I cannot see one or more of the CID being sent anymore in one or both direction. Some examples I can end up with so far:

  • A->B:UDP[CID 0] + B->A:UDP[CID 0, CID 1]
  • A->B:UDP[CID 1]
  • A->B:UDP[CID 1] + B->A:UDP[CID 1]

Related issues

Blocks libosmo-netif - Bug #2439: Osmux: overwrite duplicated RTP packets instead of dropping them New 08/14/2017

History

#1 Updated by pespin about 1 month ago

  • Description updated (diff)

#2 Updated by pespin about 1 month ago

  • Blocks Bug #2439: Osmux: overwrite duplicated RTP packets instead of dropping them added

Also available in: Atom PDF