Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Various changes of RTP timeout handling to handle timeouts on single streams #1403

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Commits on Nov 22, 2021

  1. Various changes of RTP timeout handling.

    - introduced timeout-mode parameter to control mode of operation off/any/all during session
      off - don't monitor timeouts / turn monitoring off
      any - react if a timeout occur on any RTP stream
      all - react if timeout occur on all streams (old behavior)
    - Don't monitor RTCP streams for timeout (to prevent false alarms if RTP timeout is very low)
    
    This patch introduces primary the possibility to react on RTP timeouts of a single stream.
    
    During call establishment / early-media, there is often only one stream direction active. To prevent false alarms
    for this case, the timeout-mode parameter for the call-interface was added. The logic is, that a call starts with
    a disabled timeout monitoring and when the session is established in both directions (for example 200OK Reply for
    an answer) the timeout will be activated.
    
    When activated, timeout_activated element of struct call will be set to earliest possible timeout occurence
    (activation time + timeout time). This should prevent false alarms immediatliy after session establishment
    
    There is still an unresolved problem at the moment. Even timeout_activated is used, it sometimes happens
    that on first check a timeout is detected. This occurs even, when timeout value (and timeout_activated
    in succession) is increased.
    To circumvent this, missed_packet_counter of struct packet_stream is used, so that the checks fails on the third
    missed package in a row.
    
    Signed-off-by: Arnd Schmitter <[email protected]>
    arnd-s committed Nov 22, 2021
    Configuration menu
    Copy the full SHA
    bffbea4 View commit details
    Browse the repository at this point in the history