idnits 2.17.1 draft-ietf-xrblock-rtcp-xr-synchronization-01.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (October 18, 2012) is 4200 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) ** Obsolete normative reference: RFC 4566 (Obsoleted by RFC 8866) -- Possible downref: Non-RFC (?) normative reference: ref. 'TR-126' Summary: 1 error (**), 0 flaws (~~), 1 warning (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group H. Asaeda 3 Internet-Draft NICT 4 Intended status: Standards Track R. Huang 5 Expires: April 21, 2013 Q. Wu 6 Huawei 7 October 18, 2012 9 RTP Control Protocol (RTCP) Extended Report (XR) Blocks for 10 Synchronization Delay and Offset Metrics Reporting 11 draft-ietf-xrblock-rtcp-xr-synchronization-01 13 Abstract 15 This document defines two RTP Control Protocol (RTCP) Extended Report 16 (XR) Blocks and associated with SDP parameters that allow the 17 reporting of synchronization delay and offset metrics for use in a 18 range of RTP applications. 20 Status of this Memo 22 This Internet-Draft is submitted in full conformance with the 23 provisions of BCP 78 and BCP 79. 25 Internet-Drafts are working documents of the Internet Engineering 26 Task Force (IETF). Note that other groups may also distribute 27 working documents as Internet-Drafts. The list of current Internet- 28 Drafts is at http://datatracker.ietf.org/drafts/current/. 30 Internet-Drafts are draft documents valid for a maximum of six months 31 and may be updated, replaced, or obsoleted by other documents at any 32 time. It is inappropriate to use Internet-Drafts as reference 33 material or to cite them other than as "work in progress." 35 This Internet-Draft will expire on April 21, 2013. 37 Copyright Notice 39 Copyright (c) 2012 IETF Trust and the persons identified as the 40 document authors. All rights reserved. 42 This document is subject to BCP 78 and the IETF Trust's Legal 43 Provisions Relating to IETF Documents 44 (http://trustee.ietf.org/license-info) in effect on the date of 45 publication of this document. Please review these documents 46 carefully, as they describe your rights and restrictions with respect 47 to this document. Code Components extracted from this document must 48 include Simplified BSD License text as described in Section 4.e of 49 the Trust Legal Provisions and are provided without warranty as 50 described in the Simplified BSD License. 52 Table of Contents 54 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 55 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 56 2.1. Standards Language . . . . . . . . . . . . . . . . . . . . 3 57 3. Applicability . . . . . . . . . . . . . . . . . . . . . . . . 4 58 4. RTP Flows Initial Synchronization Delay Report Block . . . . . 4 59 4.1. Metric Block Structure . . . . . . . . . . . . . . . . . . 5 60 4.2. Definition of Fields in RTP Flow Initial 61 Synchronization Delay Metrics Block . . . . . . . . . . . 5 62 5. RTP Flows Synchronization Offset Metrics Block . . . . . . . . 6 63 5.1. Metric Block Structure . . . . . . . . . . . . . . . . . . 6 64 5.2. Definition of Fields in RTP Flow General 65 Synchronization Offset Metrics Block . . . . . . . . . . . 7 66 6. SDP Signaling . . . . . . . . . . . . . . . . . . . . . . . . 8 67 6.1. SDP rtcp-xr-attrib Attribute Extension . . . . . . . . . . 8 68 6.2. Offer/Answer Usage . . . . . . . . . . . . . . . . . . . . 8 69 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8 70 8. Security Considerations . . . . . . . . . . . . . . . . . . . 9 71 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 9 72 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 9 73 10.1. Normative References . . . . . . . . . . . . . . . . . . . 9 74 10.2. Informative References . . . . . . . . . . . . . . . . . . 10 75 Appendix A. Change Log . . . . . . . . . . . . . . . . . . . . . 10 76 A.1. draft-ietf-xrblock-rtcp-xr-syncronization-01 . . . . . . . 10 77 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 11 79 1. Introduction 81 This draft defines two new block types to augment those defined in 82 [RFC3611], for use in a range of RTP applications. 84 The first new block type supports reporting of Initial 85 Synchronization Delay to establish multimedia session. Information 86 is recorded about time difference between the start of RTP sessions 87 and the time the RTP receiver acquires all components of RTP sessions 88 in the multimedia session [RFC6051]. 90 The second new block type supports reporting of the relative 91 synchronization offset time of two arbitrary streams (e.g., between 92 audio and video streams), with the same RTCP CNAME included in RTCP 93 SDES packets [RFC3550]. Information is recorded about the 94 synchronization offset time of each RTP stream relative to the 95 reference RTP stream with the same CNAME and General Synchronization 96 Offset of zero. 98 These metrics belong to the class of transport level metrics defined 99 in [MONARCH]. 101 2. Terminology 103 2.1. Standards Language 105 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 106 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 107 document are to be interpreted as described in RFC 2119 [RFC2119]. 109 In addition, the following terms are defined: 111 Initial Synchronization Delay: 113 A multimedia session comprises a set of concurrent RTP sessions 114 among a common group of participants, using one RTP session for 115 each media type. The initial synchronization Delay is the average 116 time for receiver to synchronize all components of a multimedia 117 session [RFC6051]. 119 Synchronization Offset: 121 Synchronization between two media streams must be maintained to 122 ensure satisfactory QoE. Two media streams can be of the same 123 media type belonging to one RTP session or in different media 124 types belonging to one multimedia session. The Synchronization 125 Offset is the relative time difference of the two media streams 126 that need to be synchronized. 128 3. Applicability 130 The report blocks defined in this document could be used by dedicated 131 network monitoring applications. 133 When joining each session in layered video sessions [RFC6190] or the 134 multimedia session, a receiver may not synchronize playout across the 135 multimedia session or layered video session until RTCP SR packets 136 have been received on all components of RTP sessions. The component 137 RTP session are referred to as each RTP session for each media type 138 in multimedia session or separate RTP session for each layer in the 139 layered video session. For unicast session, the delay due to 140 negotiation of NAT pinholes, firewall holes, quality-of-service, and 141 media security keys is contributed to such initial synchronization 142 playout. For multicast session, such initial synchronization delay 143 varies with the session bandwidth, the number of members, and the 144 number of senders in the session. The RTP flow Initial 145 synchronization delay block can be used to report the initial 146 synchronization delay to receive all the RTP streams belonging to the 147 same multimedia session or layered video session. In the absence of 148 packet loss, the initial synchronization delay equals to the average 149 time taken to receive the first RTCP packet in the RTP session with 150 the longest RTCP reporting interval. In the presence of packet loss, 151 the media synchronization needs to based on the in-band mapping of 152 RTP and NTP-format timestamps [RFC6051] or wait until the reporting 153 interval has passed, and the next RTCP SR packet is sent. 155 In an RTP multimedia session, there can be an arbitrary number of 156 streams carried in different RTP sessions, with the same RTCP CNAME. 157 These streams may be not synchronized with each other. For example, 158 one audio stream and one video stream belong to the same session and 159 audio stream are transmitted lag behind video stream for multiple 160 tens of milliseconds [TR-126]. The RTP Flows Synchronization Offset 161 block can be used to report such synchronization offset between video 162 stream and audio stream. 164 4. RTP Flows Initial Synchronization Delay Report Block 166 This block is sent by RTP receivers and reports Initial 167 synchronization delay beyond the information carried in the standard 168 RTCP packet format. Information is recorded about time difference 169 between the start of RTP sessions and the time the RTP receiver 170 acquires all components of RTP sessions [RFC6051]. 172 4.1. Metric Block Structure 174 The RTP Flows Initial Synchronization Delay Report Block has the 175 following format: 177 0 1 2 3 178 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 179 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 180 | BT=RFISD | Reserved | Block length=2 | 181 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 182 | SSRC of Source | 183 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 184 | Initial Synchronization Delay | 185 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 187 4.2. Definition of Fields in RTP Flow Initial Synchronization Delay 188 Metrics Block 190 Block type (BT): 8 bits 192 The RTP Flows Initial Synchronization Delay Report Block is 193 identified by the constant . 195 Reserved: 8 bits 197 This field is reserved for future definition. In the absence of 198 such a definition, the bits in this field MUST be set to zero and 199 MUST be ignored by the receiver. 201 Block length: 16 bits 203 The constant 2, in accordance with the definition of this field in 204 Section 3 of RFC 3611 [RFC3611]. 206 SSRC of source: 32 bits 208 The SSRC of the media source SHALL be set to the value of the SSRC 209 identifier carried in any arbitrary component of RTP sessions 210 belonging to the same multimedia session. 212 Initial Synchronization Delay: 32 bits 214 The average delay, expressed in units of 1/65536 seconds, from the 215 RTCP packets received on all of the components RTP sessions to the 216 beginning of session [RFC6051]. The value is calculated based on 217 received RTCP SR packets or the RTP header extension containing 218 in-band mapping of RTP and NTP-format timestamps [RFC6051]. If 219 there is no packet loss, the initial synchronization delay is 220 expected to be equal to the average time taken to receive the 221 first RTCP packet in the RTP session with the longest RTCP 222 reporting interval or the average time taken to receive the first 223 RTP header extension containing in-band mapping of RTP and NTP- 224 format timestamps. 226 If the measurement is unavailable, the value of this field with 227 all bits set to 1 SHOULD be reported. 229 5. RTP Flows Synchronization Offset Metrics Block 231 In the RTP multimedia sessions, there can be an arbitrary number of 232 Media streams and each media stream (e.g., audio stream or video 233 stream) is sent in a separate RTP stream. The receiver associates 234 RTP streams to be synchronized by means of RTCP CNAME contained in 235 the RTCP Source Description (SDES) packets [RFC3550]. 237 This block is sent by RTP receivers and reports synchronization 238 offset of the arbitrary two RTP streams that needs to be synchronized 239 in the RTP multimedia session. Information is recorded about the 240 relative time difference between two media streams with the same 241 CNAME. In two media streams, one media stream is the reference 242 stream, which can be chosen as the arbitrary stream with minimum 243 delay according to the common criterion defined in section 6.2.2.1 of 244 [Y.1540]. 246 5.1. Metric Block Structure 248 The RTP Flow General Synchronization Offset Report Block has the 249 following format: 251 0 1 2 3 252 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 253 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 254 | BT=RFSO |L| Reserved | Block length=4 | 255 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 256 | SSRC of source | 257 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 258 | SSRC of reference | 259 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 260 | Synchronization Offset, most significant word | 261 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 262 | Synchronization Offset, least significant word | 263 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 265 5.2. Definition of Fields in RTP Flow General Synchronization Offset 266 Metrics Block 268 Block type (BT): 8 bits 270 The RTP Flow General Synchronization Offset Report Block is 271 identified by the constant . 273 Lag and Lead Indication (L): 1 bit 275 This field is used to indicate whether the reporting stream lead 276 before the reference stream or lag behind the reference stream. 277 The value of this field is set to 1, if the reporting stream lead 278 before the reference stream, 0 otherwise. 280 Reserved: 7 bits 282 This field is reserved for future definition. In the absence of 283 such a definition, the bits in this field MUST be set to zero and 284 MUST be ignored by the receiver. 286 Block length: 16 bits 288 The constant 4, in accordance with the definition of this field in 289 Section 3 of RFC 3611 [RFC3611]. 291 SSRC of Source: 32 bits 293 The SSRC of the media source SHALL be set to the value of the SSRC 294 identifier of the reporting RTP stream to which the XR relates. 296 SSRC of Reference: 32 bits 298 The SSRC of the reference stream SHALL be set to the value of the 299 SSRC identifier of the reference RTP stream to which the XR 300 relates. 302 Synchronization Offset: 64 bits 304 The synchronization offset of the reporting RTP stream relative to 305 the reference RTP stream with the same CNAME. The calculation of 306 Synchronization Offset is similar to Difference D calculation in 307 the RFC3550. That is to say,if Si is the RTP timestamp from the 308 reporting RTP packet i, and Ri is the time of arrival in RTP 309 timestamp units for reporting RTP packet i, Sj is the RTP 310 timestamp from the reference RTP packet j, and Rj is the time of 311 arrival in RTP timestamp units for reference RTP packet j, then 312 the value of the synchronization offset D may be expressed as 313 D(i,j) = (Rj - Ri) - (Sj - Si) = (Rj - Sj) - (Ri - Si) 314 The value of the synchronization offset is represented using a 64- 315 bit NTP-format timestamp as defined in [RFC5905], which is 64-bit 316 unsigned fixed-point number with the integer part in the first 32 317 bits and the fractional part in the last 32 bits. 319 If the measurement is unavailable, the value of this field with 320 all bits set to 1 SHOULD be reported. 322 6. SDP Signaling 324 [RFC3611] defines the use of SDP (Session Description Protocol) 325 [RFC4566] for signaling the use of XR blocks. XR blocks MAY be used 326 without prior signaling. 328 6.1. SDP rtcp-xr-attrib Attribute Extension 330 Two new parameters are defined for the two report blocks defined in 331 this document to be used with Session Description Protocol (SDP) 332 [RFC4566] using the Augmented Backus-Naur Form (ABNF) [RFC5234]. 333 They have the following syntax within the "rtcp-xr" attribute 334 [RFC3611]: 336 rtcp-xr-attrib = "a=rtcp-xr:" 337 [xr-format *(SP xr-format)] CRLF 339 xr-format = RTP-flows-init-syn-delay 340 / RTP-flows-syn-offset 342 RTP-flows-init-syn-delay = "RTP-flows-init-syn-delay" 343 RTP-flow-syn-offset = "RTP-flows-syn-offset" 345 Refer to Section 5.1 of RFC 3611 [RFC3611] for a detailed description 346 and the full syntax of the "rtcp-xr" attribute. 348 6.2. Offer/Answer Usage 350 When SDP is used in offer-answer context, the SDP Offer/Answer usage 351 defined in [RFC3611] applies. 353 7. IANA Considerations 355 New report block types for RTCP XR are subject to IANA registration. 356 For general guidelines on IANA allocations for RTCP XR, refer to 357 Section 6.2 of [RFC3611]. 359 This document assigns two new block type values in the RTCP XR Block 360 Type Registry: 362 Name: RFISD 363 Long Name: RTP Flows Initial Synchronization Delay 364 Value 365 Reference: Section 4 367 Name: RFSO 368 Long Name: RTP Flows Synchronization Offset Metrics Block 369 Value 370 Reference: Section 5 372 This document also registers two new SDP [RFC4566] parameters for the 373 "rtcp-xr" attribute in the RTCP XR SDP Parameters Registry: 375 * "RTP-flows-init-syn-delay" 376 * "RTP-flows-syn-offset" 378 The contact information for the registrations is: 380 Qin Wu 381 sunseawq@huawei.com 382 101 Software Avenue, Yuhua District 383 Nanjing, Jiangsu 210012, China 385 8. Security Considerations 387 The new RTCP XR report blocks proposed in this document introduces no 388 new security considerations beyond those described in [RFC3611]. 390 9. Acknowledgements 392 The authors would like to thank Bill Ver Steeg, David R Oran, Ali 393 Begen, Colin Perkins, Roni Even, Kevin Gross, Jing Zhao, Fernando 394 Boronat Segui, Youqing Yang, Wenxiao Yu and Yinliang Hu for their 395 valuable comments and suggestions on this document. 397 10. References 399 10.1. Normative References 401 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 402 Requirement Levels", BCP 14, RFC 2119, March 1997. 404 [RFC3550] Schulzrinne, H., Casner, S., Frederick, R., and V. 405 Jacobson, "RTP: A Transport Protocol for Real-Time 406 Applications", STD 64, RFC 3550, July 2003. 408 [RFC3611] Friedman, T., Caceres, R., and A. Clark, "RTP Control 409 Protocol Extended Reports (RTCP XR)", RFC 3611, 410 November 2003. 412 [RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session 413 Description Protocol", RFC 4566, July 2006. 415 [RFC5234] Crocker, D. and P. Overell, "Augmented BNF for Syntax 416 Specifications: ABNF", STD 68, RFC 5234, January 2008. 418 [RFC5905] Mills, D., Martin, J., Burbank, J., and W. Kasch, "Network 419 Time Protocol Version 4: Protocol and Algorithms 420 Specification", RFC 5905, June 2010. 422 [RFC6051] Perkins, C. and T. Schierl, "Rapid Synchronisation of RTP 423 Flows", RFC 6051, November 2010. 425 [RFC6190] Wenger, S., Wang, Y., Schierl, T., and A. Eleftheriadis, 426 "RTP Payload Format for Scalable Video Coding", RFC 6190, 427 May 2011. 429 [TR-126] BBF Forum, "Triple-play Services Quality of Experience 430 (QoE) Requirements", December 2006. 432 10.2. Informative References 434 [MONARCH] Wu, Q., "Monitoring Architectures for RTP", 435 ID draft-ietf-avtcore-monarch-22, September 2012. 437 [Y.1540] ITU-T, "ITU-T Rec. Y.1540, IP packet transfer and 438 availability performance parameters", November 2007. 440 Appendix A. Change Log 442 Note to the RFC-Editor: please remove this section prior to 443 publication as an RFC. 445 A.1. draft-ietf-xrblock-rtcp-xr-syncronization-01 447 The following are the major changes compared to previous version: 449 Editorial change based on comments raised on the list. 451 Authors' Addresses 453 Hitoshi Asaeda 454 National Institute of Information and Communications Technology 455 4-2-1 Nukui-Kitamachi 456 Koganei, Tokyo 184-8795 457 Japan 459 Email: asaeda@nict.go.jp 461 Rachel Huang 462 Huawei Technologies Co., Ltd. 463 101 Software Avenue, Yuhua District 464 Nanjing, Jiangsu 210012 465 China 467 Email: Rachel@huawei.com 469 Qin Wu 470 Huawei Technologies Co., Ltd. 471 101 Software Avenue, Yuhua District 472 Nanjing, Jiangsu 210012 473 China 475 Email: sunseawq@huawei.com