RFC 2762 (rfc2762) - Page 2 of 12


Sampling of the Group Membership in RTP



Alternative Format: Original Text Document



RFC 2762                      RTP Sampling                 February 2000


   systems can be used for both small conferences and TV broadcasts in a
   smooth, scalable fashion.

   Previous work [2] has identified three major scalability problems
   with RTP. These are:

   1. Congestion due to floods of RTCP packets in highly dynamic groups;

   2. Large delays between receipt of RTCP packets from a single user;

   3. Large size of the group membership table.

   The reconsideration algorithm [2] helps to alleviate the first of
   these. This document addresses the third, that of large group size
   tables.

   Storage of an SSRC table with one million members, for example,
   requires at least four megabytes. As a result, embedded devices with
   small memory capacity may have difficulty under these conditions.  To
   solve this problem, SSRC sampling has been proposed. SSRC sampling
   uses statistical sampling to obtain a stochastic estimate of the
   group membership. There are many issues that arise when this is done.
   This document reviews these issues and discusses the mechanisms which
   can be applied by implementors. In particular, it focuses on three
   methods for adapting the sampling probability as the group membership
   varies. It is important to note that the IETF has been notified of
   intellectual property rights claimed in regard to some or all of the
   specification contained in this document, and in particular to one of
   the three mechanisms: the binning algorithm described below. For more
   information consult the online list of claimed rights. The two other
   approaches presented are inferior to the binning algorithm, but are
   included as they are believed to be unencumbered by IPR.

2 Basic Operation

   The basic idea behind SSRC sampling is simple. Each participant
   maintains a key K of 32 bits, and a mask M of 32 bits. Assume that m
   of the bits in the mask are 1, and the remainder are zero. When an
   RTCP packet arrives with some SSRC S, rather than placing it in the
   table, it is first sampled. The sampling is performed by ANDing the
   key and the mask, and also ANDing the SSRC and the mask. The
   resulting values are compared. If equal, the SSRC is stored in the
   table. If not equal, the SSRC is rejected, and the packet is treated
   as if it has never been received.

   The key can be anything, but is usually derived from the SSRC of the
   user who is performing the sampling.




Rosenberg & Schulzrinne       Experimental