[rtcweb] JSEP-19: Impact of BYE on ssrc table (Appendix B)

Bernard Aboba <bernard.aboba@gmail.com> Fri, 10 March 2017 22:31 UTC

Return-Path: <bernard.aboba@gmail.com>
X-Original-To: rtcweb@ietfa.amsl.com
Delivered-To: rtcweb@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A7E59129401 for <rtcweb@ietfa.amsl.com>; Fri, 10 Mar 2017 14:31:33 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level:
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 9GGYO9DCllmb for <rtcweb@ietfa.amsl.com>; Fri, 10 Mar 2017 14:31:32 -0800 (PST)
Received: from mail-ua0-x22f.google.com (mail-ua0-x22f.google.com [IPv6:2607:f8b0:400c:c08::22f]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 23B20127735 for <rtcweb@ietf.org>; Fri, 10 Mar 2017 14:31:32 -0800 (PST)
Received: by mail-ua0-x22f.google.com with SMTP id 72so128504309uaf.3 for <rtcweb@ietf.org>; Fri, 10 Mar 2017 14:31:32 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=NObd8RNmLuwafaEk7l8rf0qHY1HU4DAj78F+77ccHHM=; b=IEaNDXpQT6VKPFuVcdit9jweRIK6lpjQAtOkc7WhHZBH9NOJmc7Ga+Ph/Yss4DXS/A trFJJO5Ok9lqCPDyilH2RaRYb8laMO+QCFfhyraiq71IJIt7I/eOCIT/iBuq1YA8csNE 6ucrqIQ7GPIi3xWKWCkUy9jZXanmc5cL3mrr51Y6DA8ZwCUpN+rVL51WGgSv6Q+/wCSg RuqplNQrRjDoGd56lhzFhuZKicvaCyPryvUjjPPOA32brMez+FIC3npGdpg9oPIz0frs dowMsDmAKAofQMBqvR/yLraS77mWXcerlaX6d+LRBETZMDfMtL1bw6KOBaQh+uMKSdvF iRSQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=NObd8RNmLuwafaEk7l8rf0qHY1HU4DAj78F+77ccHHM=; b=W4x4d2XJfqEzFuJIb8qERWtwUBASbtUODnmhhZTsxGSUKkRVDQ+pNGWJ9T7Xp3B4bJ LYtBLH73l3QjO3SsWxG7FcguhAP6KVPD97rJAwMrf8ApOfYr7Alj/i/wT98xvu/PaSRQ Sf9tR7JIb9lzQVo/VTURSSCRlndECvfdDHRyyrml26W6hAKfh1TmIOmh2QwV4cTa6Psx 5Ymo9maj5rUMvBRLebKE7ONyS8iHjSXzLoFHump+J0+Ew7sxOfiOCFNGIEKrxOjof/7N VJou/nQFEpSTaSZ7bTAsYqdHyY9s1hRV6TIWFQdi4rb5hz6hssxzbzVHLj0HDxAr0GL4 AA3Q==
X-Gm-Message-State: AMke39ljcN4joE2ZH/1EyD1LOiHn94JB6+OGj1zd+QQmJ+z7ZTjCQWqrmbyOcYJLkCmMOsTZFaug6ApV8mn/Lw==
X-Received: by 10.31.238.1 with SMTP id m1mr8917975vkh.109.1489185090938; Fri, 10 Mar 2017 14:31:30 -0800 (PST)
MIME-Version: 1.0
Received: by 10.176.88.90 with HTTP; Fri, 10 Mar 2017 14:31:10 -0800 (PST)
From: Bernard Aboba <bernard.aboba@gmail.com>
Date: Fri, 10 Mar 2017 14:31:10 -0800
Message-ID: <CAOW+2dvyV=mpY1Qh9ZQVirgAC3YUHT6dLxs+RPicKPGg9fKenw@mail.gmail.com>
To: "rtcweb@ietf.org" <rtcweb@ietf.org>
Content-Type: multipart/alternative; boundary="94eb2c149d7e59ace6054a67ec01"
Archived-At: <https://mailarchive.ietf.org/arch/msg/rtcweb/GhcE3yi50Rpbyw2Vsal1Q5GXLuI>
Subject: [rtcweb] JSEP-19: Impact of BYE on ssrc table (Appendix B)
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: Real-Time Communication in WEB-browsers working group list <rtcweb.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/rtcweb/>
List-Post: <mailto:rtcweb@ietf.org>
List-Help: <mailto:rtcweb-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 10 Mar 2017 22:31:33 -0000

In the algorithm described in Appendix B, SSRCs that are entered into the
SSRC table due to signalling are not distinguished from those that are
"latched" into the table dynamically.

The distinction is important because only "latched" SSRCs should be removed
due to receipt of a BYE (or a timeout).

My suggestion of how to address this is to add a "D" flag to an SSRC table
entry, indicating that the entry was added dynamically.

For example:

      If the packet has a MID, and the packet's extended sequence number
      is greater than that of the last MID update, as discussed in
      [RFC7941], Section 4.2.6
<https://tools.ietf.org/html/rfc7941#section-4.2.6>, update the
incoming SSRC mapping table
      to include an entry [with the "D" flag set] that maps the packet's
      SSRC to the "m=" line for that MID.


Also:

      If the packet's payload type is in the payload type table, update
      the the incoming SSRC mapping table to include an entry

      [with the "D" flag set] that maps the packet's SSRC to the "m="

      line for that payload type.  In addition, route the packet to the

      associated "m=" line and stop.


Then when a BYE is received, check the "D" flag:


      If the packet is of type BYE, it indicates that the RTP streams
      referenced in the packet are ending.  Therefore, for each SSRC
      indicated in the packet that is found in the incoming SSRC table,
      first deliver a copy of the packet to the "m=" line associated
      with that SSRC, but then [if the "D" flag is set] remove the

      entry for that SSRC from the incoming SSRC table.