idnits 2.17.1 draft-ietf-avtcore-leap-second-00.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 (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 (June 21, 2012) is 4327 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. 'CircularT' -- Possible downref: Non-RFC (?) normative reference: ref. 'IEEE1588-2008' -- Possible downref: Non-RFC (?) normative reference: ref. 'IS-GPS-200F' Summary: 0 errors (**), 0 flaws (~~), 1 warning (==), 5 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: December 23, 2012 June 21, 2012 8 RTP and Leap Seconds 9 draft-ietf-avtcore-leap-second-00 11 Abstract 13 This document discusses issues that arise when RTP sessions span 14 (UTC) leap seconds. It updates RFC 3550 to describe how RTP senders 15 and receivers should behave in the presence of leap seconds. 17 Status of this Memo 19 This Internet-Draft is submitted in full conformance with the 20 provisions of BCP 78 and BCP 79. 22 Internet-Drafts are working documents of the Internet Engineering 23 Task Force (IETF). Note that other groups may also distribute 24 working documents as Internet-Drafts. The list of current Internet- 25 Drafts is at http://datatracker.ietf.org/drafts/current/. 27 Internet-Drafts are draft documents valid for a maximum of six months 28 and may be updated, replaced, or obsoleted by other documents at any 29 time. It is inappropriate to use Internet-Drafts as reference 30 material or to cite them other than as "work in progress." 32 This Internet-Draft will expire on December 23, 2012. 34 Copyright Notice 36 Copyright (c) 2012 IETF Trust and the persons identified as the 37 document authors. All rights reserved. 39 This document is subject to BCP 78 and the IETF Trust's Legal 40 Provisions Relating to IETF Documents 41 (http://trustee.ietf.org/license-info) in effect on the date of 42 publication of this document. Please review these documents 43 carefully, as they describe your rights and restrictions with respect 44 to this document. Code Components extracted from this document must 45 include Simplified BSD License text as described in Section 4.e of 46 the Trust Legal Provisions and are provided without warranty as 47 described in the Simplified BSD License. 49 Table of Contents 51 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 52 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . 3 53 3. Leap seconds . . . . . . . . . . . . . . . . . . . . . . . . . 3 54 3.1. UTC behavior during leap second . . . . . . . . . . . . . . 3 55 3.2. NTP behavior during leap second . . . . . . . . . . . . . . 4 56 3.3. POSIX behavior during leap second . . . . . . . . . . . . . 4 57 4. Recommendations . . . . . . . . . . . . . . . . . . . . . . . . 4 58 4.1. RTP Sender Reports and Receiver Reports . . . . . . . . . . 5 59 4.2. RTP Packet Playout . . . . . . . . . . . . . . . . . . . . 5 60 5. Security Considerations . . . . . . . . . . . . . . . . . . . . 5 61 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 5 62 7. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 5 63 8. Normative References . . . . . . . . . . . . . . . . . . . . . 5 64 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 6 66 1. Introduction 68 In some applications, RTP streams are referenced to a walllock time 69 (absolute date and time). This is typically accomplished through use 70 of the NTP timestamp field in the RTCP sender report (SR) to create a 71 mapping between RTP timestamps and the wallclock. When a wallclock 72 reference is used, the playout time for RTP packets is referenced to 73 the wallclock. Smooth and continuous media playout requires a smooth 74 and continuous timebase. The timebase used by the wallclock may 75 include leap seconds which, in many cases, are not rendered smoothly. 77 This document provides recommendations for smoothly rendering 78 streamed media referenced to common wallclocks which may not have 79 smooth or continuous behavior in the presence of leap seconds. 81 2. Terminology 83 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 84 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 85 document are to be interpreted as described in [RFC2119] and indicate 86 requirement levels for compliant implementations. 88 3. Leap seconds 90 Leap seconds are intended to keep UTC time synchronized with the 91 rotation of the earth. Leap seconds are scheduled by the 92 International Earth Rotation and Reference Systems Service. Leap 93 seconds may be scheduled at the last day of any month but are 94 preferentially scheduled for December and June and secondarily March 95 and September.[TF.460-6] Because earth's rotation is unpredictable, 96 leap seconds are typically not scheduled more than six months in 97 advance. Leap seconds can be scheduled to either add or remove a 98 second from the day. All leap second events thus far have been 99 scheduled in June or December and have all added seconds. This is a 100 situation that is expected but not guaranteed to continue. 102 NOTE- The ITU is studying a proposal which could eventually eliminate 103 leap seconds from UTC. As of January 2012, this proposal is expected 104 to be decided no earlier than 2015. 106 3.1. UTC behavior during leap second 108 UTC clocks insert a 61st second at the end of the day when a leap 109 second is scheduled. The leap second is designated "23h 59m 60s". 110 The sequence of the second markers near the UTC leap second 111 transition are: 113 Day 0, 23h 59m 59s 115 Day 0, 23h 59m 60s <-- leap second 117 Day 1, 0h 0m 0s 119 3.2. NTP behavior during leap second 121 Under NTP [RFC5905] a leap second is inserted at the beginning of the 122 last second of the day. This results in the clock freezing or 123 slowing for one second immediately prior to the last second of the 124 affected day. This results in the last second of the day having a 125 real-time 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 either of the last two seconds of a day 133 containing a leap second. 135 4. Recommendations 137 Senders and receivers which are not referenced to a wallclock are not 138 affected by issues associated with leap seconds and no special 139 accommodation is required. 141 RTP implementation using a wallclock reference is simplified by using 142 a clock with a timescale which does not include leap seconds. IEEE 143 1588 [IEEE1588-2008], GPS [IS-GPS-200F] and other TAI (International 144 Atomic Time) [CircularT] references do not include leap seconds. NTP 145 time, operating system clocks and other UTC (Coordinated Universal 146 Time) references include leap seconds. 148 All participants working to a leap-second-bearing reference SHOULD 149 recognize leap seconds and have a working communications channel to 150 receive notification of leap second scheduling. Without prior 151 knowledge of leap second schedule, NTP servers and clients may become 152 offset by exactly one second with respect to their UTC reference. 153 This potential discrepancy begins when a leap second occurs and ends 154 when all participants receive a time update from a server or peer. 155 Depending on the system implementation, the offset can last anywhere 156 from a few seconds to a few days. A long-lived discrepancy can be 157 particularly disruptive to RTP operation. 159 Because of the ambiguity leap seconds can introduce and the 160 inconsistent manner in which different systems accommodate leap 161 seconds, generating or using NTP timestamps during the entire last 162 second of a day on which a leap second has been scheduled SHOULD be 163 avoided. Note that the period to be avoided has a real-time duration 164 of two seconds. 166 4.1. RTP Sender Reports and Receiver Reports 168 RTP Senders working to a leap-second-bearing reference SHOULD NOT 169 generate sender reports containing an originating NTP timestamp in 170 the vicinity of a leap second. Receivers SHOULD ignore timestamps in 171 any such reports inadvertently generated. 173 4.2. RTP Packet Playout 175 Receivers working to a leap-second-bearing reference SHOULD take leap 176 seconds in their reference into account in determining playout time 177 from RTP timestamps for data in RTP packets. 179 5. Security Considerations 181 It is believed that the recommendations herein introduce no new 182 security considerations beyond those already discussed in [RFC3550]. 184 6. IANA Considerations 186 This document has no actions for IANA." 188 7. Acknowledgements 190 The authors would like to thank Steve Allen for his valuable comments 191 in helping to improve this document. 193 8. Normative References 195 [CircularT] 196 BIPM, "Circular T", May 2012. 198 [IEEE1588-2008] 199 IEEE, "IEEE Standard for a Precision Clock Synchronization 200 Protocol for Networked Measurement and Control Systems", 201 July 2008. 203 [IS-GPS-200F] 204 Global Positioning Systems Directorate, "Navstar GPS Space 205 Segment/Navigation User Segment Interfaces", 206 September 2011. 208 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 209 Requirement Levels", March 1997. 211 [RFC3550] Schulzrinne, H., Casner, S., Frederick, R., and V. 212 Jacobson, "RTP: A Transport Protocol for Real-Time 213 Applications, RFC3550", July 2003. 215 [RFC5905] Mills, D., Delaware, U., Martin, J., Ed., Burbank, J., and 216 W. Kasch, "Network Time Protocol Version 4: Protocol and 217 Algorithms Specification", June 2010. 219 [TF.460-6] 220 ITU-R, "Recommendation ITU-R TF.460-4 - Standard-frequency 221 and time-signal emissions", February 2002. 223 Authors' Addresses 225 Kevin Gross 226 AVA Networks 227 Boulder, CO 228 US 230 Email: kevin.gross@avanw.com 232 Ray van Brandenburg 233 TNO 234 Brassersplein 2 235 Delft 2612CT 236 the Netherlands 238 Phone: +31-88-866-7000 239 Email: ray.vanbrandenburg@tno.nl