INTERNET-DRAFT Bernard Aboba Microsoft Corporation Alternatives for Enhancing RTP Scalability 1. Status of this Memo This document is an Internet-Draft. Internet-Drafts are working docu- ments of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute work- ing documents as Internet-Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as ``work in progress.'' To learn the current status of any Internet-Draft, please check the ``1id-abstracts.txt'' listing contained in the Internet-Drafts Shadow Directories on ds.internic.net (US East Coast), nic.nordu.net (Europe), ftp.isi.edu (US West Coast), or munnari.oz.au (Pacific Rim). The distribution of this memo is unlimited. It is filed as , and expires June 1, 1997. Please send com- ments to the authors. 2. Abstract This document discusses current issues with RTP scalability as well as describing the advantages and disadvantages of possible solutions. 3. Requirements In evaluating a solution to the RTP scaling problem, it is important to have an understanding of the requirements that a proposed solution must meet. This document proposes three requirements: Decrease in convergence time Decrease in effective RTCP sending population Improvement in receiver reporting information 3.1. Decrease in convergence time Currently RTCP relies on multicasting of receiver reports to establish a receiver-population estimate. This shared-state is then used by receivers to establish the receiver reporting interval. This mechanism appears to function satisfactorily for conferences with several thou- sand members. However, for larger conferences the result is very slow convergence of receiver population estimates, resulting in long Aboba [Page 1] INTERNET-DRAFT 26 November 1996 receiver reporting intervals, and RTCP bandwidth usage well in excess of the 5 percent recommendation. This is particularly problematic for dialup clients, which can experience severe RTCP-induced congestion. For example, in a large conference the algorithm described in [1] ini- tially results in a flood of reports from receivers joining the con- ference, even though some random delay is imposed. This is because the delay interval will initially be set low since receivers will set the initial membership estimate to one. For dialup users, the result is severe RTCP-induced congestion. However, even if all available band- width is devoted to listening to RTCP receiver reports, a user con- nected via a 14.4 Kbps modem can only receive a maximum of 1440 receiver reports a minute (assuming 60 octet receiver reports). In reality, the number of actual reports that can be received will be much less, since it is likely that the user will want to receiver other traffic, such as audio/video from the conference they are attempting to subscribe to. This is likely to reflect itself in having RTCP packets set at lower priority than RTP packets, resulting in dropping of RTCP packets during periods of congestion. Therefore in reality a more realistic maximum convergence rate might be closer to 200 receiver reports a minute. This implies very long convergence times. In a 20,000 user conference, the algorithm described in [1] could take well over an hour and a half to converge. By the time we have achieved convergence, the average reporting interval will be 1.9 hours. 3.2. Decrease in effective RTCP sending population Today the MBONE uses DVMRP as its multicast routing protocol. DVMRP generates forwarding cache entries on demand for each (source network, destination group) pair, and supports source-specific prune messages. The typical forwarding cache expiration time is 200 seconds. Since the current RTCP mechanism requires each RTP receiver to become a sender on the RTCP group, for large conferences, the result is cre- ation of groups with a large number of senders. For example, an RTP session with a single sender and 20,000 listeners would result in a companion RTCP group with 20,001 senders and receivers. Even given the slow convergence of receiver population estimates, it is likely that the reporting interval will exceed the forwarding cache expiration time within the first few minutes after conference initia- tion. As a result, only a portion of all (source network, destination group) pairs would be cached by a DVMRP implementation at a given time. Nevertheless, the router will expend considerable resources in adding and flushing forwarding cache entries, as well as in responding to source-specific prune requests. While future versions of DVMRP may prove more scalable, it is unlikely that these versions will be widely deployed within the next 18 months. As a result, it would desirable for an RTP scaling solution to provide for a decrease in the number senders on the RTCP group. Aboba [Page 2] INTERNET-DRAFT 26 November 1996 3.3. Improvement in receiver reporting information The RTCP receiver report mechanism provides important information on listenership, reception quality, and bandwidth availability. This information is important useful both for engineering and business pur- poses. Engineers use reception quality information to diagnose prob- lems with the network. Sending systems can use reception quality and bandwidth availability information to modify transmission parameters such as compression ratio and sending rate. Business people use infor- mation on listenership to track the size of the audience, and recep- tion quality information to measure the quality of the user experi- ence. Since in large conferences the algorithm described in [1] leads to underestimates of the receiver population and infrequent receiver reporting, it can be argued that it does not meet the requirements for accurate and timely receiver reporting. Therefore any scaling "improvement" should not hamper the ability to collect this informa- tion, and probably should be expected to result in improved reporting. 4. Scaling alternatives Several alternatives have been proposed for improving the scalability of RTCP. These include: Turning off RTCP receiver reports Improved convergence algorithms Use of separate multicast groups for receiver and sender reports Unicasting of receiver reports Selective reporting Use of TTL scoping and summary messages Use of RTP translators These alternatives are discussed in turn. 4.1. Turning off RTCP receiver reports In some applications (such as satellite transmission) it may not be possible to offer an upstream channel for transmission of RTCP receiver reports. As a result, it may be desirable to allow receiver reporting to be turned off. Since there is no receiver reporting, there would be no way to estimate the receiver population. Influence on RTCP receivers could be exercised via the SDP announce- ment mechanism. For example, Mark Handley has proposed that the ses- sion profile specified in SDP via the "m=" line be used to define the desired RTCP behavior. This would allow for turning off of RTCP receiver reports, or another desired mechanism. While this proposal would eliminate the congestion problem for receivers, it would deprive interested parties of information on lis- tenership and reception quality. This will prevent senders from making Aboba [Page 3] INTERNET-DRAFT 26 November 1996 adjustments to their transmission parameters, and would also prevent RTP monitors from providing listenership estimates needed to justify advertising rates. 4.2. Improved convergence algorithms Just as non-linear equation solvers can benefit from improved algo- rithms, it may be possible to improve RTP receiver population esti- mates via improvements in the algorithm. These may include improving the initial population estimate, as well as improve the algorithm by which receivers estimate the overall population. Currently the receiver population estimate has an initial value of 1, but it is possible for an initial population estimate to be supplied in the session announcement. Successive population estimates could then be derived via an averaging of the initial estimate and the receiver's own estimate, so that the effect of the initial estimate would die out over time. It is also possible to improve the speed of convergence by allowing the receiver to use information on the rate at which receiver reports are being sent, and incorporate this into the population estimate and receiver reporting interval. For example, due to bandwidth limita- tions, receivers on higher bandwidth connections have greater knowl- edge of the overall receiver population. Thus if a receiver were to note a receiver report from a system advertising high bandwidth avail- ability, that report could be weighed more heavily in determining the overall population estimate. It is also possible to incorporate the receiver report rate into the reporting interval calculation. For example, if my current population estimate results in a receiver reporting interval of 3 minutes, and I am receiving 200 receiver reports/minute, it may be desirable to incorporate the rate of receiver reports into my calculations, increasing the reporting interval accordingly. However, the utility of such methods is limited in the case of dialup clients, since they will only be able to receive a modest number of receiver reports/minute, and thus the rate at which receiver reports are flowing in may not be reflective of the overall population. Thus, while an improved initial population estimate would result in improved convergence times, were the initial estimate to be way off, converging to a better estimate could still take a long time. This leads to the conclusion that we need to be able to make better use of those receiver reports that can be received. Thus while this proposal could lessen the congestion problem for higher-bandwidth receivers, it would not necessarily improve things markedly for dialup clients, and would not result in a lower number of senders on the RTCP receiver report group. Aboba [Page 4] INTERNET-DRAFT 26 November 1996 4.3. Use of separate multicast groups for receiver and sender reports Currently RTCP sender and receiver reports are sent to the same multi- cast group, and both RTP senders and receivers join this group. Were sender and receiver reports to be multicast on different groups, RTP receivers could be allowed to only join the sender report group, thus allowing them to avoid listening to receiver report traffic. RTP senders would still join both groups in order to receive feedback on listenership and transmission quality, and would need to provide information on the estimated receiver population within the sender reports. While this proposal would lessen the congestion problem for receivers, it would not improve things for senders who could still be deluged. It also would only result in improved convergence of receiver population estimates to the extent that senders can be assumed to have higher bandwidth connections than receivers. Finally, it would not result in a lower number of senders on the RTCP receiver report group. 4.4. Unicasting of receiver reports Instead of multicasting receiver reports, it is possible to unicast them back to the senders. This would allow RTP listeners to avoid receiver report traffic, while RTP senders would still receive feed- back on listenership and transmission quality. In order to control the receiver report transmission rate, senders would need to provide information on the estimated receiver population within sender reports. While this proposal would lessen the congestion problem for receivers, it would not necessarily improve things for senders who could still be deluged. It also would only result in improved convergence of receiver population estimates to the extent that senders can be assumed to have higher bandwidth connections than receivers. However, it would elimi- nate multicasting of RTCP receiver reports, which will be of benefit to overtaxed routers. 4.5. Selective reporting RTCP receiver reports serve multiple purposes. One of these is to pro- vide information on listenership; another is to provide information on reception quality and bandwidth availability. Given that receiver reporting intervals will tend to be very long for large conferences, it can be argued that absent an emergency, it makes sense to provide information on listenership, reception quality and bandwidth avail- ability within the RTCP Bye message. Thus on leaving the conference, the receiver would send a message providing information on the time period in which they joined the conference, the overall reception quality and other information. Conventional receiver reports would then either not be sent at all, or would be sent with a TTL of 1. How- ever, in order to supply engineers with timely information on network- related problems, it is necessary to add a mechanism by which Aboba [Page 5] INTERNET-DRAFT 26 November 1996 receivers could report packet losses exceeding some threshold. While this proposal would lessen the congestion problem at the begin- ning of a session, it could result in a deluge of receiver reports toward the end of the session. Given that no receiver population esti- mate would be available, it appears that this approach could actually worsen convergence times, unless it were combined with some kind of summarization mechanism. It would also not reduce the number of RTCP senders. 4.6. Use of TTL scoping and summary messages In this approach, RTCP receiver reports would be sent with a TTL of 1, and a designated summarizer would be elected to provide summary reports with a larger TTL. This approach has the advantage of increas- ing the leverage of those RTCP receiver reports that are sent, and is likely to be particularly effective for conferences in which member- ship is densely distributed. However, in sparsely distributed confer- ences, the effect of summarization will be small unless multiple lev- els of summarization are used. The designated summarizer would not necesarily be a router; it could also be another receiver, although this brings up the possibility of how a new summarizer could be elected if the current summarizer leaves the conference. Since in this scheme receiver reports are not forwarded, non- summarizing RTP receivers should use the population estimate gleaned from local scope reports to calculate their reporting interval. Summa- rizers and RTP senders will then use global estimates gleaned from global scope summary reports to calculate their reporting interval. A recommended bandwidth allocation for reporting is 25 percent for sender reports, 25 percent for summary reports, and 50 percent for receiver reports. Since this proposal decreases the scope of RTCP announcements, it would substantially reduce the congestion problem. It would also reduce the number of RTCP senders visible to the multicast backbone, and would decrease convergence times, since those messages that were sent would include more information on the receiver population. How- ever, it would also require substantial modifications in RTP client behavior. 4.6.1. Summary reports Via the use of summary reports, privacy can be provided while simulta- neously providing senders with improved listenership and receiver quality reporting. This is possible because in the existing implemen- tation much of the information gained from receiver reports is redun- dant. For example, if congestion results in packets being dropped on a particular link, then all receivers downstream from that link will report the same problem. This overabundance of redundant information obscures the information of greatest interest, which is information on global listenership and reception quality. Via introduction of summary Aboba [Page 6] INTERNET-DRAFT 26 November 1996 reports, it is possible to provide more accurate and timely reporting on listenership and reception quality. Information useful in summary reports would include: Total number of systems being summarized Packets received and lost Histogram of reception quality (fraction lost) Histogram of receiver bandwidth Information on users registering The total systems summarized number is used in order to provide for faster convergence times. Information on packets received and lost will typically be used by network engineers looking to diagnose prob- lems with the MBONE. The histograms of reception quality and receiver bandwidth are propagated in order to allow senders to deduce informa- tion relating to the global user experience. In order to allow for location of individuals participating in a conference, the summarizer may wish to relay information on the users in the conference. Alterna- tively, it may register users in a directory service via use of the LDAP extensions defined in [4]. 4.7. Use of RTP translators Through the use of RTP translators, it is possible to divide RTP receivers into areas in much the same way as is accomplished by OSPF. Through the use of summary receiver reports, information on listener- ship and receiver report quality can be propagated between areas while reducing RTCP bandwidth usage and the RTCP sending population on the MBONE. In order to insulate receivers within an area from external receiver reports, the RTP translator must filter external receiver reports, while allowing external summary reports and sender reports to pass through. Similarly, the RTP translator will listen to receiver reports generated from within its area, but will not pass them on to external areas. Instead, it would issue to external areas two types of summary reports. The first will be based on the packets it receives and will be identical to a conventional receiver report, except for the use of the summary report type; the second will be a true summary report based on area receiver reports. It is useful to allow receiver reports from RTP translators to pass through so as to allow diagnosis of internal distribution problems. The RTP translator will allow internal sender reports to pass through unmodified. The introduction of RTP translators has several advantages: Improved convergence of the receiver population estimate Decreased RTCP bandwidth Improved privacy Listenership and reception quality information available to senders While most of the above advantages are also available in the receiver Aboba [Page 7] INTERNET-DRAFT 26 November 1996 summary approach, one advantage of the translator approach is that it provides for greater control by the network administrator. For exam- ple, since summary reports would be sent by RTP translators rather than by client summarizers, it would be possible for administrators to control the propagation of user information on a site-by-site basis, rather than on a per-session basis. For example, rather than having this sent in the summary report, it could be stored as a temporary attribute in the area directory server. This may be perceived as a substantial advantage by corporations looking to control access to directory information. For those cases where it is desirable to allow external access to area registration information, the IP address of the area directory server may be advertised in the summary report. This allows senders with appropriate privileges to retrieve conference registration data from the area directory server via LDAP. The RTP translator approach has several major disadvantages. These include: Requires modifications to routers Increases loading on routers that now must function as RTP translators 5. Acknowledgements Thanks to Steve Casner of Precept, Mark Handley of ISI, Bob Hinden of Ipsilon and Thomas Pfenning and Stefan Solomon of Microsoft for useful discussions of this problem space. 6. References [1] H. Schulzrinne, S. Casner, R. Frederick, V. Jacobson. "RTP: A Transport Protocol for Real-Time Applications." RFC 1889, GMD Fokus, January 1996. [2] H. Schulzrinne. "RTP Profile for Audio and Video Conferences with Minimal Control." RFC 1890, GMD Fokus, January 1996. [3] M. F. Speer, S. McCanne. "RTP Usage with Layered Multimedia Streams." draft-speer-avt-layered-video-01.txt, Sun Microsystems, LBNL, June 1996. [4] Y. Yaacovi, M. Wahl, K. Settle, T. Genovese. "Lightweight Direc- tory Access Protocol: Extensions for Dynamic Directory Services." draft-ietf-asid-ldapv3ext-02.txt, Microsoft, Critical Angle, October, 1996. 7. Authors' Addresses Bernard Aboba Microsoft Corporation One Microsoft Way Redmond, WA 98052 Aboba [Page 8] INTERNET-DRAFT 26 November 1996 Phone: 206-936-6605 EMail: bernarda@microsoft.com Aboba [Page 9]