home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / ietf / avt / avt-minutes-96dec.txt < prev    next >
Text File  |  1997-01-30  |  21KB  |  424 lines

  1. Editor's note:  These minutes have not been edited.
  2.  
  3. Minutes of the Audio/Video Transport Working Group
  4.  
  5. Reported by Steve Casner
  6.  
  7. 1.  Introduction and status
  8.  
  9. The AVT working group met for two sessions at the San Jose '96 IETF.
  10. AVT has produced the Real-time Transport Protocol, which was published
  11. in January 1996 as a Proposed Standard RFC 1889 along with the
  12. companion RTP profile for audio/video conferencing RFC 1890.  The
  13. minimum interval before advancement to Draft Standard has now passed;
  14. during that time, RTP use has grown with additional independent
  15. implementations and a broader range of applications.  Accordingly, at
  16. this meeting we discussed what changes to the spec may be required for
  17. advancement to Draft Standard.  In particular, the biggest topic was
  18. RTCP scalability for very large sessions, especially with asymmetric
  19. or low data rate links.  Also of significance for low-speed links was
  20. the second major topic of this meeting, an update on the IP/UDP/RTP
  21. header compression protocol.
  22.  
  23. Since the last meeting, RFCs 2029, 2032, 2035 and 2038 defining the
  24. RTP payload formats for CellB, H.261, JPEG and MPEG video encodings
  25. were also published as Proposed Standards, in October 1996.  In the
  26. second AVT session, a problem with RFC 2038 regarding packet loss
  27. resilience for MPEG2 was presented, as were RTP Payload Formats for
  28. Redundant Audio, H.728 audio and H.263 video.
  29.  
  30. A status report on development of an RTP MIB was presented; this is a
  31. potential future work item for the group, along with completion of the
  32. changes for transition of the RTP spec to Draft Standard and
  33. standardization of additional profiles and payload formats.
  34.  
  35.  
  36. 2.  RTCP scaling for large "broadcast" sessions
  37.  
  38. Before this IETF meeting, there were several messages to the AVT
  39. mailing list regarding use of RTCP in very large "broadcast"
  40. scenarios, especially those where endpoints are connected by
  41. low-speed modems or asymmetric cable systems with low-speed uplinks.
  42. Bernard Aboba and Henning Schulzrinne gave presentations on the
  43. problems that arise along with a variety of possible solutions.  
  44.  
  45. The interval between RTCP packets increases with the group size so
  46. that RTCP consumes a constant fraction of the session bandwidth.
  47. This keeps RTP well behaved as it scales to large groups.  However,
  48. there are scenarios for which the current spec is inadequate:
  49.  
  50.   - Because the initial RTCP report is sent within a fixed interval
  51.     after joining the session independent of the group size, there
  52.     can be a large bandwidth spike if many participants join at the
  53.     same time, e.g., for a scheduled event.  Convergence to the
  54.     proper report interval may take too long, in particular for
  55.     low-bandwidth sessions.
  56.  
  57.   - For sessions larger than a few thousand, the long RTCP interval
  58.     may preclude collection of the desired information.
  59.  
  60.   - The memory required by the suggested RTCP interval calculation
  61.     algorithm to track all the participant SSRC identifiers may be
  62.     excessive for very large sessions.
  63.  
  64.   - For some types of sessions, privacy of reception may be more
  65.     important than the feedback RTCP provides.
  66.  
  67.   - On low-speed modems, giving even 5% of the bandwidth to RTCP
  68.     draws cries from the people who have to squeeze the data to fit.
  69.  
  70.   - Network operators are concerned about the multicast routing state
  71.     required to track all the participants as multicast sources.
  72.  
  73. Several potential solutions for these problems were presented and
  74. evolved in the discussion that followed:
  75.  
  76.   - The initial bandwidth spike can be avoided if the report interval
  77.     is "reconsidered" before sending a report.  That is, sending is
  78.     delayed until the updated group size estimate at the end of the
  79.     interval is not much larger than it was at the start.  Group size
  80.     estimation can also be accelerated by having each participant send
  81.     the estimate it has counted, but use the maximum of all estimates
  82.     received to calculate the interval.
  83.  
  84.   - Memory requirements may be reduced by storing only a sampling of
  85.     the SSRC identifiers heard, based on a probability function.  The
  86.     probability can be scaled as needed to fit the group size.
  87.  
  88.   - The report interval can be reduced by having only some of the
  89.     participants report, perhaps controlled by a sampling function
  90.     from the sender, if partial feedback is appropriate.
  91.  
  92.   - Receiver RTCP reports could be sent via unicast to the sender or
  93.     some monitor, or sent on a separate multicast address, but the
  94.     report interval must be controlled by some external means since
  95.     the receiver can't calculate the interval itself.  There is a
  96.     danger that if receivers allow some other entity to control their
  97.     report rate and destination, this could be subverted to packet
  98.     bomb some innocent party.
  99.  
  100.   - It is always safe (from a network load point of view) if
  101.     receive-only participants do not send RTCP.  This avoids several
  102.     of the problems listed, but precludes feedback.  The development
  103.     of diagnostic tools such as mtrace makes RTCP less critical for
  104.     network diagnosis than before.
  105.  
  106.   - Report bandwidth can be reduced by summarization of reports by
  107.     selected receivers through self-organization using TTL scoping, or
  108.     by RTP translators explicitly interposed in the distribution tree.
  109.     This adds significant complication.
  110.  
  111. Many good points were brought up in the discussion of these possible
  112. solutions:
  113.  
  114.   - Using a distributed consensus algorithm driven by multicast is
  115.     robust because a single defector can't inflate the rate.
  116.  
  117.   - Encryption can be used for privacy, though this can add legal
  118.     complications in some countries.
  119.  
  120.   - The current RTCP algorithm represents a design point that we
  121.     believe works well for a wide range of applications and which has
  122.     been tested in experiments on the MBone.  But there may be changes
  123.     needed to extend operation to highly asymmetric networks or other
  124.     scenarios outside that range.
  125.  
  126. Each of the potential solutions has some drawbacks, and there is not
  127. one solution that is the clear answer in all cases.  Further
  128. experimentation is needed to test the proposed ideas.  However, it was
  129. agreed that the wording in the main RTP spec should be modified to
  130. allow more flexibility in how RTCP may be used, and that the means by
  131. which different modes should be defined and selected is through the
  132. specification of (a small number of) additional RTP Profiles.  These
  133. profiles might be specified in the description of a session, e.g., in
  134. SDP using "RTP/AVB" ("B" for broadcast) rather than "RTP/AVP".
  135.  
  136. Proposals are solicited in the form of Internet Drafts defining
  137. additional profiles to be the subject of experimentation and then
  138. consideration for standardization.
  139.  
  140.  
  141. 3.  IP/UDP/RTP header compression
  142.  
  143. Steve Casner presented an update on the proposal developed with Van
  144. Jacobson for hop-by-hop compression of IP/UDP/RTP headers to allow
  145. use over low-speed lines.  This proposal was introduced at the
  146. previous AVT meeting in Montreal.  The update incorporates changes
  147. agreed in Montreal and subsequent improvements:
  148.  
  149.   - The context ID is always sent, and in the first byte to allow
  150.     overlap with a link-level segmentation scheme when feasible.
  151.  
  152.   - The sequence number is increased to 4 bits and is changed to be
  153.     context-specific rather than global.
  154.  
  155.   - A new delta encoding scheme was designed to fit the patterns
  156.     encountered in typical RTP applications, replacing the temporary
  157.     use of the scheme from RFC 1144 TCP/IP header compression.
  158.  
  159.   - RTP header compression is now integrated into the IPv6 header
  160.     compression scheme (which also supports IPv4 and encapsulation in
  161.     multiple headers).
  162.  
  163.   - It is now specified that RTCP packets will not be compressed,
  164.     since the traffic fraction is small and the required increase in
  165.     shared context would be impractical.
  166.  
  167. Manoj Leelanivas presented a report on his implementation of the
  168. header compression algorithm and its performance.  He emphasized that
  169. since the identification of which UDP streams carry RTP is only though
  170. heuristics, it is essential to have a negative cache for UDP streams
  171. that don't compress; otherwise, the context cache will thrash as each
  172. new packet may fail to match any existing context.  The compression
  173. scheme performed as expected: most audio packet headers compressed to
  174. 2 bytes without UDP checksum or 4 with; most video packet headers
  175. compressed to 4 or 6 bytes.
  176.  
  177. During discussion of the proposal, it was agreed that the delta
  178. encoding should be specified to be table driven, with the default
  179. table being as presented but with holes in the encoding space used to
  180. encode negative deltas that may occur with MPEG or out-of-order
  181. packets.  Also, for use of header compression over higher-speed lines
  182. where there may be a larger number of contexts, either an 8- or 16-bit
  183. context ID should be allowed via negotiation.  The working group
  184. agreed that this proposal should go to Last Call with these revisions
  185. in place.
  186.  
  187. Steve Casner also made a short presentation in the PPPEXT working
  188. group meeting to coordinate the allocation of PPP packet types that
  189. will be required for this compression scheme.
  190.  
  191.  
  192. 4.  Transport aspects of RTSP Proposal
  193.  
  194. The Real-Time Streaming Protocol is under discussion primarily in the
  195. MMUSIC working group, but also has some transport aspects that were
  196. discussed briefly in AVT.  The RTSP proposal has included a
  197. reduced-sized variant of RTP that was termed "compressed RTP".  Since
  198. the AVT working group agreed in Montreal that the combined IP/UDP/RTP
  199. compression scheme described in the previous section should be
  200. standardized and that an end-to-end RTP-only compression scheme should
  201. not, the RTSP authors will extract the definition of RTP variant into
  202. a separate non-standards-track interim proposal named CUSH, for
  203. Compressed UDP Stream Header.  In the main RTSP specification, the
  204. means of specifying the underlying stream transport protocol will be
  205. made more flexible to provide better separation between control and
  206. transport.
  207.  
  208.  
  209. 5.  RTP payload formats
  210.  
  211. The second AVT session covered topics beyond the main RTP spec,
  212. primarily additional payload formats plus some potential new
  213. application areas for RTP.
  214.  
  215. 5.1  Redundant audio payload format
  216.  
  217. Colin Perkins gave an update on draft-perkins-rtp-redundancy-01.txt
  218. which defines a mechanism for carrying redundant audio formats in RTP
  219. to compensate for packet loss.  The redundant copy is usually more
  220. heavily compressed to reduce overhead.  This updated draft includes
  221. modifications suggested at the Montreal meeting.  Two interoperating
  222. implementations are in regular use.  The working group agreed that
  223. this proposal should go to Last Call after a few minor edits.
  224.  
  225. 5.2  Payload format for H.263 video
  226.  
  227. Chad Zhu presented revisions to the payload format for H.263 video in
  228. draft-ietf-avt-rtp-payload-02.txt.  These revisions reflect changes in
  229. the ITU H.263 spec in addition to suggested clarifications and other
  230. minor changes from the AVT group.  One change, prompted by the
  231. development of H.263+, was to add a version number in the payload
  232. format.  This change generated some discussion because it introduces
  233. another multiplexing point in the processing of each data packet.  The
  234. group concluded that it would be preferable to design the payload
  235. format to accommodate the expected changes as well as possible, and
  236. then assign a new payload type if an incompatibility arises.  The
  237. H.263 payload format spec should also be ready for Last Call after the
  238. version number is removed.
  239.  
  240. 5.3  Problems with MPEG2 payload format
  241.  
  242. The payload format spec for MPEG1 and MPEG2 was recently published as
  243. Proposed Standard RFC 2038.  Reha Civanlar has identified a problem
  244. with this spec in that the packet loss resilience information is
  245. insufficient for MPEG2.  He presented two recommendations for
  246. supplying the necessary information:
  247.  
  248.   - An optional second payload-specific header word would be added to
  249.     carry the additional picture layer information required, and
  250.     redundant sequence and GOP headers would be transmitted
  251.     periodically as needed to achieve the desired loss probability.
  252.     The overhead would be less than 1% for a 4 Mbps data rate assuming
  253.     2 sequence/GOP header retransmissions per second.
  254.  
  255.   - To reduce the redundancy overhead, the "high priority" header
  256.     information could be sent using a "reliable" protocol prior to the
  257.     main transmission of the video data using RTP.  Since inclusion of
  258.     the additional redundancy information in the payload header is
  259.     optional, use of this method does not require changes to RTP.
  260.  
  261. The group accepted the proposed extensions, and the chair asked Reha
  262. to write up the proposed change for inclusion into the MPEG payload
  263. format specification before its transition to Draft Standard.
  264.  
  265. Reha also proposed an alternate format for bundled audio + video MPEG
  266. payload format described in draft-civanlar-bmpeg-00.txt.  This format
  267. would give reduced overhead and better error resilience compared to
  268. the encapsulation defined in RFC 2038 for MPEG1 Systems or MPEG2
  269. Transport streams.  However, such improvements were considered in an
  270. early draft of RFC 2038 but were discarded because applications that
  271. have data in the Systems or Transport streams formats and can't afford
  272. the data handling required to take advantage of the benefits of
  273. separate audio and video Elementary streams also could not afford to
  274. use the more efficient bundled format.  Reha's proposal is put forth
  275. for comparison testing and will be considered as an alternate format.
  276.  
  277. 5.4  Payload format for G.728 audio
  278.  
  279. Ofer Shapiro has submitted text to be added to the RTP Audio/Video
  280. Profile to describe the payload format for G.728 audio.  No separate
  281. payload format spec is needed since only a few paragraphs are needed
  282. to describe the format.  The four 10-bit vectors per audio frame are
  283. simply packed into 5 bytes, MSB first.  Multiple frames may be packed
  284. into each packet.  This format has been accepted by the ITU study
  285. group covering the use of RTP in H.323.
  286.  
  287.  
  288. 6.  New applications of RTP
  289.  
  290. Several proposals for new applications of RTP have been recently
  291. submitted to the working group.  Two of them, a payload format for
  292. carrying HTTP over RTP in draft-aboba-rtp-http-01.txt, and a proposal
  293. for adding Scalable Reliable Multicast mechanisms to RTP, described in
  294. draft-parnes-rtp-ext-srm-01.txt, fall into the general area of
  295. reliable multicast which the Transport Area Directors want to organize
  296. as a separate IRTF Research Group and later IETF Working Groups.  The
  297. group discussed this plan and the fit of new work into the AVT
  298. charter, but discussion of these proposals was deferred until
  299. organization of the reliable multicast research area is sorted out.
  300.  
  301. 6.1  Using RTP with caching
  302.  
  303. Two presentations on new applications were made at this meeting.  The
  304. first was by Roger Kermode on the idea of layering audio and video
  305. streams in time as well as quality, then combining this layering with
  306. "proactive" caching to reduce latency and bandwidth requirements for
  307. on-demand playback.  Multiple RTP streams (layers) from a particular
  308. video subject would be used for the different access phases implied by
  309. (near) on-demand access as well as for multiple quality levels as
  310. desired by different receivers.  Receivers would combine multiple
  311. streams from caches and original sources with local storage to produce
  312. the desired quality of playback at the desired time.
  313.  
  314. This work is at the research stage, but is likely to draw on RTP
  315. (possibly with SRM extensions), RTCP, RTSP and SDP as building
  316. blocks.
  317.  
  318. 6.2  Aggregation Service within RTP
  319.  
  320. The second presentation was by Jonathan Rosenberg on multiplexing
  321. several RTP audio sessions into one packet stream.  This could be
  322. used, for example, to increase packet efficiency substantially between
  323. Internet Telephony gateways.  Such gateways have recently been
  324. developed and deployed to allow long-distance telephone callers to
  325. dial a local gateway which then establishes an RTP stream to another
  326. gateway near the desired destination and instructs the remote gateway
  327. to dial the callee's telephone.  There may be many parallel streams
  328. of small packets between these gateways; aggregating these streams
  329. into larger packets conserves header overhead without increasing delay
  330. as would be the case for large packets in a single stream.
  331.  
  332. Jonathan presented various methods for assigning individual streams to
  333. logical channels in the aggregate and for carrying the information
  334. that must remain specific to each stream.  The variations trade off
  335. efficiency and the extent to which interpretation of fields in the RTP
  336. header must change.  Full details of the options and efficiency
  337. results are given in draft-rosenberg-itg-00.txt and .ps.  Further work
  338. is needed before deciding whether some standardization should be
  339. undertaken.
  340.  
  341.  
  342. 7.  Status report on RTP MIB
  343.  
  344. Stan Naudus gave a status report on the development of an RTP MIB.
  345. While RTCP provides an efficient and scalable means to obtain feedback
  346. from end systems in a multicast session, it does not provide third
  347. party management of unicast sessions such as in Internet Telephony.
  348. There may also be a need for additional remote control of RTP mixers
  349. and translators beyond what would be practical to implement with RTCP.
  350.  
  351. The challenge in designing a MIB for RTP is to make it scalable over
  352. the wide variety of applications in which RTP might be used.  The
  353. design currently includes 8 tables and 62 objects.  Greg Minshall
  354. questioned whether 62 was too many objects for a practical MIB.  The
  355. goal of the authors is to continue work on the MIB, including
  356. implementation testing to assess practicality, and submit it for AVT
  357. consideration at the next meeting in Memphis.
  358.  
  359.  
  360. 8.  Advancing RTP to Draft Standard
  361.  
  362. As noted in the introduction, it is time to advance the RTP spec, RFC
  363. 1889, and the RTP Profile, RFC 1890 to Draft Standard.  Steve Casner
  364. presented a list of (potential) changes to be addressed for
  365. advancement:
  366.  
  367.   - changes for RTCP scaling as described earlier
  368.   - rule changes proposed for layered encodings as described in
  369.     draft-speer-avt-layered-video-01.txt 
  370.   - revision of the loop/collision algorithm for separate RTP and RTCP
  371.     source port numbers
  372.   - some clarifications of the wording and small changes such as
  373.     allowing separate unicast ports that have already been made in the
  374.     spec source files
  375.   - allowing separate multicast addresses for RTP/RTCP
  376.  
  377. These items are all straightforward or were previously discussed
  378. except for the last.  Should the specification of an RTP session be
  379. generalized to allow different addresses to be used for RTP and RTCP?
  380. This would allow RTCP delivery to be constrained for improved
  381. scalability in some scenarios.  After some discussion, the consensus
  382. of the group was that we should take the conservative approach and not
  383. make this change at this time.
  384.  
  385. In addition to any required revisions of the RTP specification,
  386. advancing to Draft Standard requires evidence that interoperability
  387. requirements have been met.  This should be easy to provide since
  388. there are several genetically distinct implementations of RTP, both
  389. research and commercial, in use.  The exact form required for the
  390. evidence has not been determined by the Area Directors yet, but it is
  391. likely that an applicability document will be needed to list the areas
  392. in which RTP has been successfully used and the areas to which we
  393. believe it can be extended.  We may also be required to document the
  394. scalability of RTP in a manner similar to that proposed by the Area
  395. Directors as a requirement for reliable multicast protocol proposals.
  396.  
  397.  
  398. 9.  Advancing RTP Profile to Draft Standard
  399.  
  400. Since the RTP Profile is a simpler document than the main RTP spec,
  401. there are fewer issues for its advancement.  One question of
  402. significance is whether the Profile should restrict the format of the
  403. RTCP SDES CNAME item beyond the suggestions of the RTP spec so that
  404. separate implementations of audio and video tools will be more likely
  405. to use a common format.  This commonality is important to allow audio
  406. and video streams to be associated for synchronization and other
  407. presentation management.  The group agreed that the profile should
  408. recommend use of only the numeric address form of the CNAME.
  409.  
  410. In addition to this change, there are several of the simple audio
  411. payload formats included in the Profile that need some additional
  412. details specified, such as bit and byte order for packing.  Some
  413. additional formats, such as G.723 and G.728, will also be added.
  414.  
  415.  
  416. 10.  Future work
  417.  
  418. The AVT meeting ended with a discussion of how much work remains,
  419. since the original charter has been completed.  The group agreed to
  420. meet again in Memphis, with the intention that work on new Profiles
  421. for RTCP scaling and the new Payload Formats currently in progress
  422. can be finished then.
  423.  
  424.