idnits 2.17.1 draft-ietf-avtcore-leap-second-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 : ---------------------------------------------------------------------------- ** The document seems to lack a both a reference to RFC 2119 and the recommended RFC 2119 boilerplate, even if it appears to use RFC 2119 keywords. RFC 2119 keyword, line 174: '...a leap-second-bearing reference SHOULD...' RFC 2119 keyword, line 188: '...ap second has been scheduled SHOULD be...' RFC 2119 keyword, line 195: '...ap-second-bearing reference SHOULD NOT...' RFC 2119 keyword, line 197: '...cond. Receivers SHOULD ignore timesta...' RFC 2119 keyword, line 202: '...ond-bearing reference SHOULD take leap...' Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year ** The document contains RFC2119-like boilerplate, but doesn't seem to mention RFC 2119. The boilerplate contains a reference [1], but that reference does not seem to mention RFC 2119 either. (Using the creation date from RFC3550, updated by this document, for RFC5378 checks: 1998-04-07) -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (October 19, 2012) is 4206 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) -- Possible downref: Non-RFC (?) normative reference: ref. '1' -- Possible downref: Non-RFC (?) normative reference: ref. '2' -- Possible downref: Non-RFC (?) normative reference: ref. '3' -- Possible downref: Non-RFC (?) normative reference: ref. '4' -- Possible downref: Non-RFC (?) normative reference: ref. '5' -- Possible downref: Non-RFC (?) normative reference: ref. '6' -- Possible downref: Non-RFC (?) normative reference: ref. '7' Summary: 2 errors (**), 0 flaws (~~), 1 warning (==), 9 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 AVTCore K. Gross 3 Internet-Draft AVA Networks 4 Updates: 3550 (if approved) R. van Brandenburg 5 Intended status: Standards Track TNO 6 Expires: April 22, 2013 October 19, 2012 8 RTP and Leap Seconds 9 draft-ietf-avtcore-leap-second-01 11 Abstract 13 This document discusses issues that arise when RTP sessions span 14 Universal Coordinate Time (UTC) leap seconds. It updates RFC 3550 to 15 describe how RTP senders and receivers should behave in the presence 16 of leap seconds. 18 Status of this Memo 20 This Internet-Draft is submitted in full conformance with the 21 provisions of BCP 78 and BCP 79. 23 Internet-Drafts are working documents of the Internet Engineering 24 Task Force (IETF). Note that other groups may also distribute 25 working documents as Internet-Drafts. The list of current Internet- 26 Drafts is at http://datatracker.ietf.org/drafts/current/. 28 Internet-Drafts are draft documents valid for a maximum of six months 29 and may be updated, replaced, or obsoleted by other documents at any 30 time. It is inappropriate to use Internet-Drafts as reference 31 material or to cite them other than as "work in progress." 33 This Internet-Draft will expire on April 22, 2013. 35 Copyright Notice 37 Copyright (c) 2012 IETF Trust and the persons identified as the 38 document authors. All rights reserved. 40 This document is subject to BCP 78 and the IETF Trust's Legal 41 Provisions Relating to IETF Documents 42 (http://trustee.ietf.org/license-info) in effect on the date of 43 publication of this document. Please review these documents 44 carefully, as they describe your rights and restrictions with respect 45 to this document. Code Components extracted from this document must 46 include Simplified BSD License text as described in Section 4.e of 47 the Trust Legal Provisions and are provided without warranty as 48 described in the Simplified BSD License. 50 Table of Contents 52 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 53 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . 3 54 3. Leap seconds . . . . . . . . . . . . . . . . . . . . . . . . . 3 55 3.1. UTC behavior during leap second . . . . . . . . . . . . . . 4 56 3.2. NTP behavior during leap second . . . . . . . . . . . . . . 4 57 3.3. POSIX behavior during leap second . . . . . . . . . . . . . 4 58 3.4. Summary of leap-second behaviors . . . . . . . . . . . . . 4 59 4. Recommendations . . . . . . . . . . . . . . . . . . . . . . . . 5 60 4.1. RTP Sender Reports and Receiver Reports . . . . . . . . . . 5 61 4.2. RTP Packet Playout . . . . . . . . . . . . . . . . . . . . 5 62 5. Security Considerations . . . . . . . . . . . . . . . . . . . . 5 63 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 6 64 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 6 65 8. Normative References . . . . . . . . . . . . . . . . . . . . . 6 66 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 6 68 1. Introduction 70 In some media networking applications, RTP streams are referenced to 71 a wall-clock time (absolute date and time). This is accomplished 72 through use of the NTP timestamp field in the RTCP sender report (SR) 73 to create a mapping between RTP timestamps and the wall clock. When 74 a wall-clock reference is used, the play-out time for RTP packets is 75 referenced to the wall clock. Smooth and continuous media play out 76 requires a smooth and continuous time base. The time base used by 77 the wall clock may include leap seconds which are not rendered 78 smoothly. 80 This document provides recommendations for smoothly rendering 81 streamed media referenced to common wall clocks which do not have 82 smooth or continuous behavior in the presence of leap seconds. 84 2. Terminology 86 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 87 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 88 document are to be interpreted as described in [1] and indicate 89 requirement levels for compliant implementations. 91 3. Leap seconds 93 The world time standard is International Atomic Time (TAI) which is 94 based on vibrations of cesium atoms in an atomic clock. The more 95 common Universal Coordinated Time (UTC) is based on the rotation of 96 the Earth. In 1971 UTC was redefined in terms of TAI and the concept 97 of leap seconds was introduced to allow UTC to remain synchronized 98 with with the rotation of the Earth. Leap seconds are scheduled by 99 the International Earth Rotation and Reference Systems Service. Leap 100 seconds may be scheduled at the last day of any month but are 101 preferentially scheduled for December and June and secondarily March 102 and September.[2] Because Earth's rotation is unpredictable, leap 103 seconds are typically not scheduled more than six months in advance. 104 Leap seconds can be scheduled to either add or remove a second from 105 the day. All leap second events since their introduction in 1971 106 have been scheduled in June or December and all have added seconds. 107 This is a situation that is expected to but not guaranteed to 108 continue. 110 NOTE- The ITU is studying a proposal which could eventually eliminate 111 leap seconds from UTC. As of January 2012, this proposal is expected 112 to be decided no earlier than 2015.[3] 114 3.1. UTC behavior during leap second 116 UTC clocks insert a 61st second at the end of the day when a leap 117 second is scheduled. The leap second is designated "23h 59m 60s". 119 3.2. NTP behavior during leap second 121 Under NTP [4] a leap second is inserted at the beginning of the last 122 second of the day. This results in the clock freezing or slowing for 123 one second immediately prior to the last second of the affected day. 124 This results in the last second of the day having a real-time 125 duration of two seconds. 127 3.3. POSIX behavior during leap second 129 Most POSIX systems insert the leap second at the end of the last 130 second of the day. This results in repetition of the last second. A 131 timestamp within the last second of the day is therefore ambiguous in 132 that it can refer to a moment in time in either of the last two 133 seconds of a day containing a leap second. 135 3.4. Summary of leap-second behaviors 137 Table 1 summarizes behavior across a leap second for the wall clocks 138 discussed above. 140 The table illustrates the leap second that occurred June 30, 2012 141 when the offset between International Atomic time (TAI) and UTC 142 changed from 34 to 35 seconds. The first column shows RTP timestamps 143 for an 8 kHz audio stream. The second column shows the TAI 144 reference. Following columns show behavior for the leap-second- 145 bearing wall clocks described above. Time values are shown at half- 146 second intervals. 148 +-------+--------------+--------------+--------------+--------------+ 149 | RTP | TAI | UTC | POSIX | NTP | 150 +-------+--------------+--------------+--------------+--------------+ 151 | 8000 | 00:00:32.500 | 23:59:58.500 | 23:59:58.500 | 23:59:58.500 | 152 | 12000 | 00:00:33.000 | 23:59:59.000 | 23:59:59.000 | 23:59:59.000 | 153 | 16000 | 00:00:33.500 | 23:59:59.500 | 23:59:59.500 | 23:59:59.500 | 154 | 20000 | 00:00:34.000 | 23:59:60.000 | 23:59:59.000 | 00:00:00.000 | 155 | 24000 | 00:00:34.500 | 23:59:60.500 | 23:59:59.500 | 00:00:00.000 | 156 | 28000 | 00:00:35.000 | 00:00:00.000 | 00:00:00.000 | 00:00:00.000 | 157 | 32000 | 00:00:35.500 | 00:00:00.500 | 00:00:00.500 | 00:00:00.500 | 158 +-------+--------------+--------------+--------------+--------------+ 160 Table 1 162 4. Recommendations 164 Senders and receivers which are not referenced to a wall clock are 165 not affected by issues associated with leap seconds and no special 166 accommodation is required. 168 RTP implementation using a wall-clock reference is simplified by 169 using a clock with a timescale which does not include leap seconds. 170 IEEE 1588 [5], GPS [6] and other TAI [7] references do not include 171 leap seconds. NTP time, operating system clocks and other UTC 172 (Coordinated Universal Time) references include leap seconds. 174 All participants working to a leap-second-bearing reference SHOULD 175 recognize leap seconds and have a working communications channel to 176 receive notification of leap second scheduling. Without prior 177 knowledge of leap second schedule, NTP servers and clients may become 178 offset by exactly one second with respect to their UTC reference. 179 This potential discrepancy begins when a leap second occurs and ends 180 when all participants receive a time update from a server or peer. 181 Depending on the system implementation, the offset can last anywhere 182 from a few seconds to a few days. A long-lived discrepancy can be 183 particularly disruptive to RTP operation. 185 Because of the ambiguity leap seconds can introduce and the 186 inconsistent manner in which different systems accommodate leap 187 seconds, generating or using NTP timestamps during the entire last 188 second of a day on which a leap second has been scheduled SHOULD be 189 avoided. Note that the period to be avoided has a real-time duration 190 of two seconds. In the Table 1 example, the region to be avoided is 191 indicated by RTP timestamps 12000 through 28000 193 4.1. RTP Sender Reports and Receiver Reports 195 RTP Senders working to a leap-second-bearing reference SHOULD NOT 196 generate sender reports containing an originating NTP timestamp in 197 the vicinity of a leap second. Receivers SHOULD ignore timestamps in 198 any such reports inadvertently generated. 200 4.2. RTP Packet Playout 202 Receivers working to a leap-second-bearing reference SHOULD take leap 203 seconds in their reference into account in determining play-out time 204 from RTP timestamps for data in RTP packets. 206 5. Security Considerations 208 It is believed that the recommendations herein introduce no new 209 security considerations beyond those already discussed in [8]. 211 6. IANA Considerations 213 This document has no actions for IANA. 215 7. Acknowledgements 217 The authors would like to thank Steve Allen for his valuable comments 218 in helping to improve this document. 220 8. Normative References 222 [1] Bradner, S., "Key words for use in RFCs to Indicate Requirement 223 Levels", March 1997. 225 [2] ITU-R, "Recommendation ITU-R TF.460-4 - Standard-frequency and 226 time-signal emissions", February 2002. 228 [3] ITU-R Working Party 7A, "Question SG07.236", February 2012. 230 [4] Mills, D., Delaware, U., Martin, J., Ed., Burbank, J., and W. 231 Kasch, "Network Time Protocol Version 4: Protocol and Algorithms 232 Specification", June 2010. 234 [5] IEEE, "IEEE Standard for a Precision Clock Synchronization 235 Protocol for Networked Measurement and Control Systems", 236 July 2008. 238 [6] Global Positioning Systems Directorate, "Navstar GPS Space 239 Segment/Navigation User Segment Interfaces", September 2011. 241 [7] BIPM, "Circular T", May 2012. 243 [8] Schulzrinne, H., Casner, S., Frederick, R., and V. Jacobson, 244 "RTP: A Transport Protocol for Real-Time Applications, RFC3550", 245 July 2003. 247 Authors' Addresses 249 Kevin Gross 250 AVA Networks 251 Boulder, CO 252 US 254 Email: kevin.gross@avanw.com 256 Ray van Brandenburg 257 TNO 258 Brassersplein 2 259 Delft 2612CT 260 the Netherlands 262 Phone: +31-88-866-7000 263 Email: ray.vanbrandenburg@tno.nl