TICTOC Working Group S. Davari Internet-Draft A. Oren Intended status: Standards Track Broadcom Corp. Expires: December 17, 2013 M. Bhatia P. Roberts Alcatel-Lucent L. Montini L. Martini Cisco Systems June 15, 2013 Transporting Timing messages over MPLS Networks draft-ietf-tictoc-1588overmpls-05 Abstract This document defines the method for transporting Timing messages such as PTP and NTP over an MPLS network. The method allows for the easy identification of these PDUs at the port level to allow for port level processing of these PDUs in both LERs and LSRs. The basic idea is to transport Timing messages inside dedicated MPLS LSPs. These LSPs only carry Timing messages and possibly Control and Management packets, but they do not carry customer traffic. Two methods for transporting Timing messages over MPLS are defined. The first method is to transport Timing messages directly over the dedicated MPLS LSP via UDP/IP encapsulation, which is suitable for MPLS networks. The second method is to transport Timing messages inside a PW via Ethernet encapsulation. Status of this Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. 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." This Internet-Draft will expire on December 17, 2013. Davari, et al. Expires December 17, 2013 [Page 1] Internet-Draft Transporting Timing over MPLS June 2013 Copyright Notice Copyright (c) 2013 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 5 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 7 3. Problem Statement . . . . . . . . . . . . . . . . . . . . . . 8 4. Timing over MPLS Architecture . . . . . . . . . . . . . . . . 9 5. Dedicated LSPs for Timing messages . . . . . . . . . . . . . . 12 6. Timing over LSP Encapsulation . . . . . . . . . . . . . . . . 13 6.1. Timing over UDP/IP over MPLS Encapsulation . . . . . . . . 13 6.2. Timing over PW Encapsulation . . . . . . . . . . . . . . . 13 6.3. Other Timing Encapsulation methods . . . . . . . . . . . . 14 7. Timing message Processing . . . . . . . . . . . . . . . . . . 15 8. Protection and Redundancy . . . . . . . . . . . . . . . . . . 16 9. ECMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 10. PHP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 11. Entropy . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 12. OAM, Control and Management . . . . . . . . . . . . . . . . . 20 13. QoS Considerations . . . . . . . . . . . . . . . . . . . . . . 21 14. FCS and Checksum Recalculation . . . . . . . . . . . . . . . . 22 Davari, et al. Expires December 17, 2013 [Page 2] Internet-Draft Transporting Timing over MPLS June 2013 15. Behavior of LER/LSR . . . . . . . . . . . . . . . . . . . . . 23 15.1. Behavior of Timing-capable/aware LER . . . . . . . . . . . 23 15.2. Behavior of Timing-capable/aware LSR . . . . . . . . . . . 23 15.3. Behavior of non-Timing-capable/aware LSR . . . . . . . . . 24 16. Other considerations . . . . . . . . . . . . . . . . . . . . . 25 17. Security Considerations . . . . . . . . . . . . . . . . . . . 26 18. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 27 19. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 28 20. References . . . . . . . . . . . . . . . . . . . . . . . . . . 29 20.1. Normative References . . . . . . . . . . . . . . . . . . . 29 20.2. Informative References . . . . . . . . . . . . . . . . . . 29 Appendix 1. Routing extensions for Timing-aware Routers . . . . . 32 Appendix 2. Signaling Extensions for Creating Timing LSPs . . . . 33 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 34 Davari, et al. Expires December 17, 2013 [Page 3] Internet-Draft Transporting Timing over MPLS June 2013 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC2119 [RFC2119]. When used in lower case, these words convey their typical use in common language, and are not to be interpreted as described in RFC2119 [RFC2119]. Davari, et al. Expires December 17, 2013 [Page 4] Internet-Draft Transporting Timing over MPLS June 2013 1. Introduction The objective of Precision Time Protocol (PTP) and Network Timing Protocol (NTP) are to synchronize independent clocks running on separate nodes of a distributed system. [IEEE-1588] defines PTP messages for frequency, phase and time synchronization. The PTP messages include PTP PDUs over UDP/IP (Annex D and E of [IEEE-1588]) and PTP PDUs over Ethernet (Annex F of [IEEE-1588]). This document defines mapping and transport of the PTP messages defined in [IEEE-1588] over MPLS/MPLS-TP networks. PTP defines several clock types: ordinary clocks, boundary clocks, end- to-end transparent clocks, and peer-to-peer transparent clocks. Transparent clocks require intermediate nodes to update correction field inside PTP message that reflects the transit time in the node. [RFC5905] defines NTP messages for clock and time synchronization. The PTP messages (PDUs) are transported over UDP/IP. This document defines mapping and transport of the NTP messages defined in [RFC5905] over MPLS networks. One key attribute of all of these Timing messages is that the Time stamp processing should occur as close as possible to the actual transmission and reception at the physical port interface. This targets optimal time and/or frequency recovery by avoiding variable delay introduced by queues internal to the clocks. To facilitate the fast and efficient recognition of Timing messages at the port level when the Timing messages are carried over MPLS LSPs, this document defines the specific encapsulations that should be used. In addition, it can be expected that there will exist LSR/ LERs where only a subset of the physical ports will have the port- based Timing message processing capabilities. In order to ensure that the LSPs carrying Timing packets always enter and exit ports with this capability, routing extensions are defined to advertise this capability on a port basis and to allow for the establishment of LSPs that only transit such ports. While this path establishment restriction may be applied only at the LER Ingress and/or egress ports, it becomes more important when using transparent clock capable LSRs in the path. Port based Timing message processing involves Timing message recognition. Once the Timing messages are recognized they can be modified based on the reception or transmission Time-stamp. This document provides two methods for transporting Timing messages over MPLS. One is applicable to MPLS environment and the other one is applicable to MPLS/MPLS-TP environment Davari, et al. Expires December 17, 2013 [Page 5] Internet-Draft Transporting Timing over MPLS June 2013 The solution involves transporting Timing messages over dedicated LSPs called Timing LSPs. These LSPs carry Timing messages and MAY carry Management and control messages, but not data plane client traffic. Timing LSPs can be established statically or via signaling. Extensions to control plane (OSPF, ISIS, etc.) is required to enable routers to distribute their Timing processing capabilities over MPLS to other routers. However such extensions are outside the scope of this document. When signaling is used to setup the PTP LSP, Extensions to signaling protocols (e.g., RSVP-TE) are required for establishing PTP LSPs. However such extensions are outside the scope of this document. While the techniques included herein allow for the establishment of paths optimized to include Time-stamping capable links, the performance of the Slave clocks is outside the scope of this document. At the time of publishing this specification, Transparent Clocking (TC) is only defined for PTP. Therefore at this time any part of this specification that talks about Transparent Clocking applies only to PTP. Davari, et al. Expires December 17, 2013 [Page 6] Internet-Draft Transporting Timing over MPLS June 2013 2. Terminology 1588: The timing and synchronization as defined by IEEE 1588. NTP: The timing and synchronization protocol defined by IETF RFC-1305 and RFC-5905. PTP: The timing and synchronization protocol used by 1588. Master Clock: The source of 1588 timing to a set of slave clocks. Master Port: A port on a ordinary or boundary clock that is in Master state. This is the source of timing toward slave ports. Slave Clock: A receiver of 1588 timing from a master clock. Slave Port: A port on a boundary clock or ordinary clock that is receiving timing from a master clock. Ordinary Clock: A device with a single PTP port. Transparent Clock. A device that measures the time taken for a PTP event message to transit the device and then updates the correctionField of the message with this transit time. Boundary Clock: A device with more than one PTP port. Generally boundary clocks will have one port in slave state to receive timing and then other ports in master state to re-distribute the timing. PTP LSP: An LSP dedicated to carry PTP messages PTP PW: A PW within a PTP LSP that is dedicated to carry PTP messages. CW: Pseudowire Control Word LAG: Link Aggregation ECMP: Equal Cost Multipath CF: Correction Field, a field inside certain PTP messages (message type 0-3)that holds the accumulative transit time inside intermediate switches Timing messages: Timing Protocol messages that are exchanged between routers in order to establish a synchronized clock. Davari, et al. Expires December 17, 2013 [Page 7] Internet-Draft Transporting Timing over MPLS June 2013 3. Problem Statement [IEEE-1588] has defined methods for transporting PTP messages over Ethernet and IP networks. [RFC5905] has defined the method of transporting NTP messages over IP networks. There is a need to transport Timing messages over MPLS networks while supporting the Transparent Clock (TC), Boundary Clock (BC) and Ordinary Clock (OC) functionality in the LER and LSRs in the MPLS network. There are multiple ways of transporting Timing over MPLS. However, there is a requirement to limit the possible encapsulation options to simplify the Timing message identification and processing required at the port level. When Timing-awareness is needed, Timing messages should not be transported over LSPs or PWs that are carrying customer traffic because LSRs perform Label switching based on the top label in the stack. To detect Timing messages inside such LSPs require special hardware to do deep packet inspection at line rate. Even if such hardware exists, the payload can't be deterministically identified by LSRs because the payload type is a context of the PW label, and the PW label and its context are only known to the Edge routers (PEs/ LERs); LSRs dont know what is a PWs payload (Ethernet, ATM, FR, CES, etc). Even if one restricts an LSP to only carry Ethernet PWs, the LSRs dont have the knowledge of whether PW Control Word (CW) is present or not and therefore can not deterministically identify the payload. A generic method is defined in this document that does not require deep packet inspection at line rate, and can deterministically identify Timing messages. This method can be used to detect Timing Messages in both one-step and two-step clock implementations of ordinary, boundary and transparent clocks. Davari, et al. Expires December 17, 2013 [Page 8] Internet-Draft Transporting Timing over MPLS June 2013 4. Timing over MPLS Architecture Timing messages are exchange between Timing ports on ordinary and boundary clocks. Boundary clocks terminate the Timing messages and act as master for other boundary clocks or for slave clocks. End-to- End Transparent clocks do not terminate the Timing messages but they do modify the contents of the Timing messages as they transit across the transparent clock. Master/Slave clocks (OCs), Boundary Clocks (BC) and Transparent Clock (TC) could be implemented in either LERs or LSRs. An example is shown in Figure 1, where the LERs act as Ordinary Clock (OC) and are the initiating/terminating point for Timing messages. The ingress LER encapsulates the Timing messages in Timing LSP and the Egress LER terminates the Timing LSP. The LSRs act as Transparent Clock (TC) and just update the Timing field in the Timing messages. +--------+ +-------+ +-------+ +-------+ +--------+ |Switch, | | | | | | | |Switch, | | Router |-----| LER |-----| LSR |-----| LER |-----| Router | | | | OC | | TC | | OC | | | +--------+ +-------+ +-------+ +-------+ +--------+ / \ +-------+ / \ +-------+ | LER | / \ | LER | | Master|---/ \---| Slave | | Clock | | Clock | +-------+ +-------+ Figure (1) - Deployment example 1 of timing over MPLS network Another example is shown in Figure2, where LERs terminate the Timing messages received from switch/routers that are outside of the MPLS network acting as OC or BC. In this example LERs regenerate the clock and initiate timing messages encapsulated in Timing LSP toward the MPLS network, while the LSRs act as Transparent Clock (TC) and just update the Timing field in the Timing messages, which are already encapsulated in Timing LSPs. Davari, et al. Expires December 17, 2013 [Page 9] Internet-Draft Transporting Timing over MPLS June 2013 +--------+ +-------+ +-------+ +-------+ +--------+ |Switch, | | | | | | | |Switch, | | Router |-----| LER |-----| LSR |-----| LER |-----| Router | | OC/BC | | BC | | TC | | BC | | OC/BC | +--------+ +-------+ +-------+ +-------+ +--------+ Figure (2) - Deployment example 2 of timing over MPLS network Another example is shown in Figure 3, where LERs do not terminate the Timing messages received from switch/routers that are outside of the MPLS network acting as OC, TC or BC. The LERs act as TC and update the Timing field in the Timing messages as they transit the LER, while encapsulating them in timing LSP. The LSRs also act as Transparent Clock (TC) and just update the Timing field in the Timing messages which are already encapsulated in Timing LSPs. +--------+ +-------+ +-------+ +-------+ +--------+ |Switch, | | | | | | | |Switch, | | Router |-----| LER |-----| LSR |-----| LER |-----| Router | |OC/TC/BC| | TC | | TC | | TC | |OC/TC/BC| +--------+ +-------+ +-------+ +-------+ +--------+ Figure (3) - Deployment example 3 of timing over MPLS network Another example is shown in Figure 4, where LERs and LSRs support Boundary Clocks. A single-hop LSP is created between two adjacent LSRs engaged in BC operation. Other methods such as PTP transport over Ethernet MAY be used for transporting timing messages if the link between the two routers is Ethernet. +--------+ +-------+ +-------+ +-------+ +--------+ |Switch, | | | | | | | |Switch, | | Router |-----| LER |-----| LSR |-----| LER |-----| Router | | OC/BC | | BC | | BC | | BC | | OC/BC | +--------+ +-------+ +-------+ +-------+ +--------+ Figure (4) - Deployment example 3 of timing over MPLS network An MPLS domain MAY serve multiple customers. In these cases the MPLS domain (maintained by a service provider) may provide timing services to multiple customers, each having their own Timing domain. The Timing over MPLS architecture assumes full mesh of Timing LSPs between all LERs supporting this specification. It supports Point-to- point (VPWS) and Multipoint (VPLS) services. This means that a customer may purchase a Point-to-point Timing service between two customer sites or a Multipoint Timing service between more than Davari, et al. Expires December 17, 2013 [Page 10] Internet-Draft Transporting Timing over MPLS June 2013 two customer sites. The Timing over MPLS architecture supports P2P or P2MP Timing LSPs. This means that the Timing Multicast messages such as PTP Multicast event messages can be transported over P2MP Timing LSP or be replicated and transported over many P2P Timing LSPs. Timing messages, that do not require Time stamping or Correction Field update MAY be transported over Timing LSPs to simplify hardware and software. PTP Announce messages that determine the Timing LSP terminating point behavior such as BC/OC/TC SHOULD be transported over the Timing LSP to simplify hardware and software. Davari, et al. Expires December 17, 2013 [Page 11] Internet-Draft Transporting Timing over MPLS June 2013 5. Dedicated LSPs for Timing messages Many methods have been considered for identifying the Timing messages when they are encapsulated in MPLS such as using GAL/G-ACH or a new reserved label. These methods were not attractive since they either required deep packet inspection at line rate in the intermediate LSRs or they required use of a scarce new reserved label. Also one of the goals was to reuse existing OAM mechanisms. The method defined in this document can be used by LER and LSRs to identify Timing messages in MPLS tunnels by just looking at the top label in the MPLS label stack, which only carry Timing messages as well as OAM, but not data plane client traffic. Compliant implementations MUST use dedicated LSPs to carry Timing messages over MPLS. These LSPs are herein referred to as "Timing LSPs" and the labels associated with these LSPs as "Timing LSP labels". The Timing LSPs that runs between Ingress and Egress LERs MUST be co-routed. Alternatively, a single bidirectional co-routed LSP can be used. Co-routing of the two directions is required to limit the difference in the delays in the Master clock to Slave clock direction compared to the Slave clock to Master clock direction. The Timing LSP MAY be MPLS/MPLS-TP LSP. The Timing LSPs could be configured or signaled via RSVP-TE/GMPLS. New Extensions to RSVP-TE/GMPLS TLVs are required; however they are outside the scope of this document. The Timing LSPs MAY carry essential MPLS/MPLS-TP OAM traffic such as BFD and LSP Ping but the LSP data plane client plane traffic MUST be Timing packets only. Davari, et al. Expires December 17, 2013 [Page 12] Internet-Draft Transporting Timing over MPLS June 2013 6. Timing over LSP Encapsulation This document defines two methods for carrying Timing messages over MPLS. The first method is carrying UDP/IP encapsulated Timing messages over Timing LSPs, and the second method, is carrying Ethernet encapsulated Timing messages over Ethernet PWs inside Timing LSPs. 6.1. Timing over UDP/IP over MPLS Encapsulation The simplest method of transporting Timing messages over MPLS is to encapsulate Timing PDUs in UDP/IP and then encapsulate them in Timing LSP. This format is shown in Figure 4. +----------------------+ | Timing LSP Label | +----------------------+ | IPv4/6 | +----------------------+ | UDP | +----------------------+ | Timing PDU | +----------------------+ Figure (4) - Timing over UDP/IP over MPLS Encapsulation This encapsulation is very simple and is useful when the network between Timing Master Clock and Slave Clock is MPLS network. In order for an LER/LSR to process Timing messages, the Timing LSP Label must be at the top label of the label stack. The LER/LSR MUST know that the Timing LSP Label is used for carrying Timing messages. This can be accomplished via static configuration or via RSVP-TE signaling. The UDP/IP encapsulation of PTP MUST follow Annex D and E of [IEEE-1588]. While the UDP/IP encapsulation of NTP MUST follow [RFC5905]. 6.2. Timing over PW Encapsulation Another method of transporting Timing over MPLS networks is by encapsulating Timing PDUs in PW which in turn is transported over Timing LSPs. In case of PTP, Ethernet PW encapsulation [RFC4448], shown in Fig 5(A) MUST be used and the Ethernet encapsulation of PTP MUST follow Annex F of [IEEE-1588]. Davari, et al. Expires December 17, 2013 [Page 13] Internet-Draft Transporting Timing over MPLS June 2013 The RAW mode or Tagged mode defined in [RFC4448] MAY be used and the Payload MUST have 0, 1, or 2 VLAN tags (S-VLAN and C-VLAN). The Timing over PW encapsulation MUST use the Control Word (CW) as specified in [RFC4448] to ensure proper detection of PTP messages inside the MPLS packets for Timing over LSP and Timing over PW encapsulation. The use of Sequence Number in the CW is optional. Timing over PW encapsulation for NTP MUST use NTP over UDP/IP over PW (the IP PW discussed in [RFC4447]) shown in Fig 5(B). +----------------+ +----------------+ |Timing LSP Label| |Timing LSP Label| +----------------+ +----------------+ | PW Label | | PW Label | +----------------+ +----------------+ | Control Word | | IP | +----------------+ +----------------+ | Ethernet | | UDP | | Header | +----------------+ +----------------+ | Timing PDU | |S-VLAN(Optional)| | | +----------------+ +----------------+ |C-VLAN(Optional)| (B) +----------------+ | Timing PDU | | | +----------------+ (A) Figure (5) - Timing over PW Encapsulations In order for an LSR to process PTP messages, the top label of the label stack (the Tunnel Label) MUST be a Timing label. 6.3. Other Timing Encapsulation methods In future other timing encapsulation methods may be introduced, such as a new shim header after the Bottom of Stack to carry the Timing information. Such new encapsulations are outside the scope of this document. Davari, et al. Expires December 17, 2013 [Page 14] Internet-Draft Transporting Timing over MPLS June 2013 7. Timing message Processing Each Timing protocol such as PTP and NTP, define their set of Timing messages. For example PTP defines SYNC, DELAY_REQ, DELAY_RESP, FOLLOW_UP, etc messages. Some of the Timing messages require time stamping or correction field update at port level and some dont. It is the job of the LER/LSR to parse the timing message and find out the type of the Timing message and decide whether and how to Time- stamp it (e.g., BC) or update correction field(e.g., TC). For example the following PTP messages (called Event messages) require time-stamping or correction field update: o SYNC o DELAY_REQ (Delay Request) o PDELAY_REQ (Peer Delay Request) o PDELAY_RESP (Peer Delay Response) SYNC and DELAY_REQ are exchanged between Master Clock and Slave Clock and MUST be transported over PTP LSPs. PDELAY_REQ and PDELAY_RESP are exchanged between adjacent PTP clocks (i.e. Master, Slave, Boundary, or Transparent) and SHOULD be transported over single hop PTP LSPs. If Two Step PTP clocks are present, then the FOLLOW_UP, and PDELAY_RESP_FOLLOW_UP messages MUST also be transported over the PTP LSPs. For a given instance of 1588 protocol, SYNC and DELAY_REQ MUST be transported over two PTP LSPs that are in opposite directions. These PTP LSPs, which are in opposite directions MUST be congruent and co- routed. Alternatively, a single bidirectional co-routed LSP can be used. Except as indicated above for the two-step PTP clocks, Non-Event PTP message types do not need to be processed by intermediate routers. These message types MAY be carried in PTP Tunnel LSPs. Davari, et al. Expires December 17, 2013 [Page 15] Internet-Draft Transporting Timing over MPLS June 2013 8. Protection and Redundancy In order to ensure continuous uninterrupted operation of slave clocks, usually as a general practice, slave clocks (or ports) track redundant master clocks. It is the responsibility of the network operator to ensure that physically disjoint Timing LSPs are established between a slave clock (or port) and redundant master clocks (or ports). When a slave clock (or port) listens to redundant master clocks or ports, any prolonged Timing LSP outage will trigger the slave clock or port to switch to a redundant master clock or port. LSP/PW protection such as Linear protection Switching (1:1, 1+1), Ring protection switching or MPLS Fast Reroute (FRR) generally switch alternative path that usually cause a change in delay, which if undetected by slave clock can reduce accuracy of the slave clock. Therefore protection switching MAY be used, as long as phase jumps upon switchover due to differences in path latency are detected and compensated for (such compensation not being required if BCs or peer- peer TCs are used throughout). Note that any protection or reroute mechanism that adds additional MPLS label to the label stack, such as Facility Backup Fast Reroute, MUST ensure that the pushed label is also a Timing Label to ensure recognition of the MPLS frame as containing Timing messages, as it transits the backup path. Davari, et al. Expires December 17, 2013 [Page 16] Internet-Draft Transporting Timing over MPLS June 2013 9. ECMP To ensure the optimal operation of slave clocks and avoid error introduced by forward and reverse path delay asymmetry, the physical path for Timing messages from master clock to slave Clock and vice versa must be the same for all Event Timing messages listed in section 7. Therefore the Timing LSPs MUST not be subject to ECMP (Equal Cost Multipath). Davari, et al. Expires December 17, 2013 [Page 17] Internet-Draft Transporting Timing over MPLS June 2013 10. PHP To ensure that the label on the top of the label stack is the Timing LSP Label, PHP MUST not be used. Davari, et al. Expires December 17, 2013 [Page 18] Internet-Draft Transporting Timing over MPLS June 2013 11. Entropy To ensure all Timing messages in a Timing LSP take the same path, Entropy Label MUST NOT be used for the Timing LSP[RFC6790] and Entropy Label MUST NOT be used for the PWs that are carried inside Timing LSP [RFC6391]. Davari, et al. Expires December 17, 2013 [Page 19] Internet-Draft Transporting Timing over MPLS June 2013 12. OAM, Control and Management In order to monitor Timing LSPs and their encapsulated PWs, they MUST be able to carry OAM and management messages. These management messages MUST be differentiated from Timing messages via already defined IETF methods. For example BFD [RFC5880], [RFC5884] and LSP-Ping [RFC4389] MAY run over PTP LSPs via UDP/IP encapsulation or via GAL/G-ACH. These Management protocols can easily be identified by the UDP Destination Port number or by GAL/G-ACH respectively. Also BFD, LSP-Ping and other management messages MAY run over the PWs encapsulated in Timing LSP via one of the defined VCCVs (Type 1, 3 or 4) [RFC5085] (note that VCCV Type 2 using Router Alert Label is going to be deprecated by IETF). In this case G-ACH, PW label (TTL=1) or GAL-ACH are used to identify such management messages. Davari, et al. Expires December 17, 2013 [Page 20] Internet-Draft Transporting Timing over MPLS June 2013 13. QoS Considerations In network deployments where not every LSR/LER is Timing-aware, it is important to reduce the impact of the non-Timing-aware LSR/LERs on the timing recovery in the slave clock. The Timing messages are time critical and must be treated with the highest priority. Therefore Timing over MPLS messages must be treated with the highest priority in the routers. This can be achieved by proper setup of Timing LSPs. It is recommended that the Timing LSPs are setup or configured properly to indicate EF-PHB [RFC3246]for the CoS and Green [RFC2697] for drop eligibility. Davari, et al. Expires December 17, 2013 [Page 21] Internet-Draft Transporting Timing over MPLS June 2013 14. FCS and Checksum Recalculation When time-stamp generation and timing packet adjustment is performed near the physical port hardware, the process MUST include recalculation of the Ethernet FCS. Also FCS retention for the payload Ethernet described in [RFC4720] MUST NOT be used. For UDP/IP encapsulation mode of Timing over MPLS, the UDP checksum may be required as per UDP transport standards. When UDP checksum is used, each Timing-aware LER/LSR must either incrementally update the UDP checksum after Time stamping or Correction Field update or verify the UDP checksum on reception from upstream and recalculate the checksum completely on transmission to downstream node after Time stamping or Correction Field update. Davari, et al. Expires December 17, 2013 [Page 22] Internet-Draft Transporting Timing over MPLS June 2013 15. Behavior of LER/LSR Timing-capable/aware LERs and LSRs are routers that have one or more interfaces that can perform Timing operations (OC/BC/TC) on Timing packets and are configured to do so. Timing-capable/aware LERs and LSRs can advertise their Timing-capability per-interface via control plane such as OSPF or IS-IS. The Timing-capable/aware LERs can then signals Timing LSPs via RSVP-TE signaling. Alternatively the Timing capability of LER and LSRs may be configured in a centralized controller and the Timing LSP may be setup using manual configuration or other methods such as SDN. 15.1. Behavior of Timing-capable/aware LER When a Timing-capable/aware LER behaves as a Transparent clock and receives a Timing message from a Timing-capable/aware non-MPLS interface, the LER updates the Correction Field (CF) and encapsulates and forwards the timing message over previously established Timing LSP. Also when a Timing message is received from a Timing-capable/ aware MPLS interface, LER updates the Correction Filed (CF) and decapsulates the MPLS encapsulation and forwards the timing message to a non-MPLS interface. When a Timing-capable/aware LER behaves as a Boundary clock and receives a Timing message from a Timing-capable/aware non MPLS interface, the LER Timestamps the Timing packet and sends it to the LERs Boundary clock processing module. Also when a Timing message is received from a Timing- capable/aware MPLS interface, the LER Timestamps the Timing packet and sends it to the LERs Boundary clock processing module. When a Timing-capable/aware LER behaves as an Ordinary Clock toward the MPLS network, and receives a Timing message from a Timing- capable/aware MPLS interface, the LER Timestamps the Timing packet and sends it to the LERs Ordinary clock processing module. 15.2. Behavior of Timing-capable/aware LSR When a Timing-capable/aware LSR behaves as a Transparent clock and receives a Timing message from a Timing-capable/aware MPLS interface, The LSR updates the Correction Filed (CF) and forwards the timing message over another MPLS interface. When a Timing-capable/aware LSR behaves as a Boundary clock and receives a Timing message from a Timing-capable/aware MPLS interface. The LSR performs the functions of a Boundary Clock in terminating the received Timing message and re-generating a new timing message over another (or the same) MPLS interface. Davari, et al. Expires December 17, 2013 [Page 23] Internet-Draft Transporting Timing over MPLS June 2013 15.3. Behavior of non-Timing-capable/aware LSR It is most beneficial when all LSRs in the path of a Timing LSP be timing-Capable/aware LSRs. This would ensure the highest quality time and clock synchronization by Timing Slave Clocks. However, this specification does not mandate that all LSRs in path of a Timing LSP be Timing- capable/aware. Non-Timing-capable/aware LSRs just switch the packets encapsulated in Timing LSPs and dont perform any Timing operation (TC or BC). However as explained in QoS section the Timing over MPLS packets MUST be still be treated with the highest priority based on their Traffic Class (TC) marking. Davari, et al. Expires December 17, 2013 [Page 24] Internet-Draft Transporting Timing over MPLS June 2013 16. Other considerations [IEEE-1588] defines an optional peer-to-peer Transparent clocking that requires peer delay measurement between two adjacent Timing- capable/ aware routers/switches. Peer delay measurement messages need to be time stamped and terminated by the Timing-capable/aware routers/ switches. This means that two adjacent LSRs may be engaged in a peer delay measurement. For transporting such peer delay measurement messages a single-hop LSP SHOULD to be created between the two adjacent LSRs engaged in peer delay measurement to carry peer delay measurement messages. Other methods such as PTP transport over Ethernet MAY be used for transporting peer delay measurement messages if the link between the two routers is Ethernet. In Peer-to-peer transparent clocking (P2P TC), a Timing-capable/ ware routers/switches MUST maintain a list of all the neighbors it needs to send a PDelay_Req to, where each neighbor corresponds to a timing LSP. The use of Explicit Null Label (Label= 0 or 2) is acceptable as long as either the Explicit Null label is the bottom of stack label (applicable only to UDP/IP encapsulation) or the label below the Explicit Null label is a PTP label. Davari, et al. Expires December 17, 2013 [Page 25] Internet-Draft Transporting Timing over MPLS June 2013 17. Security Considerations MPLS PW security considerations in general are discussed in [RFC3985] and [RFC4447],and those considerations also apply to this document. An experimental security protocol is defined in [IEEE-1588].The PTP security extension and protocol provides group source authentication, message integrity, and replay attack protection for PTP messages. When the MPLS network (provider network) serves multiple customers, it is important to maintain and process each customers clock and Timing messages separately from other customers to ensure there is no cross- customer effect. For example if an LER BC is synchronized to a specific grandmaster, belonging to customer A, then the LER MUST use that BC clock only for customer A to ensure that customer A cannot attack other customers by manipulating its time. Timing messages MAY be encrypted or authenticated, provided that the LERs/LSRs that are Timing capable/aware can authenticate/ decrypt the timing messages. Davari, et al. Expires December 17, 2013 [Page 26] Internet-Draft Transporting Timing over MPLS June 2013 18. Acknowledgements The authors would like to thank Ron Cohen, Yaakov Stein, Tal Mizrahi, Stefano Ruffini, Peter Meyer, and other members of IETF for reviewing and providing feedback on this draft. Davari, et al. Expires December 17, 2013 [Page 27] Internet-Draft Transporting Timing over MPLS June 2013 19. IANA Considerations There are no IANA requirements in this specification. Davari, et al. Expires December 17, 2013 [Page 28] Internet-Draft Transporting Timing over MPLS June 2013 20. References 20.1. Normative References [IEEE-1588] IEEE 1588-2008, "IEEE Standard for a Precision Clock Synchronization Protocol for Networked Measurement and Control Systems". [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC3985] Bryant, S. and P. Pate, "Pseudo Wire Emulation Edge-to- Edge (PWE3) Architecture", RFC 3985, March 2005. [RFC4389] Thaler, D., Talwar, M., and C. Patel, "Neighbor Discovery Proxies (ND Proxy)", RFC 4389, April 2006. [RFC4447] Martini, L., Rosen, E., El-Aawar, N., Smith, T., and G. Heron, "Pseudowire Setup and Maintenance Using the Label Distribution Protocol (LDP)", RFC 4447, April 2006. [RFC4448] Martini, L., Rosen, E., El-Aawar, N., and G. Heron, "Encapsulation Methods for Transport of Ethernet over MPLS Networks", RFC 4448, April 2006. [RFC4720] Malis, A., Allan, D., and N. Del Regno, "Pseudowire Emulation Edge-to-Edge (PWE3) Frame Check Sequence Retention", RFC 4720, November 2006. [RFC5085] Nadeau, T. and C. Pignataro, "Pseudowire Virtual Circuit Connectivity Verification (VCCV): A Control Channel for Pseudowires", RFC 5085, December 2007. [RFC5880] Katz, D. and D. Ward, "Bidirectional Forwarding Detection (BFD)", RFC 5880, June 2010. [RFC5884] Aggarwal, R., Kompella, K., Nadeau, T., and G. Swallow, "Bidirectional Forwarding Detection (BFD) for MPLS Label Switched Paths (LSPs)", RFC 5884, June 2010. 20.2. Informative References [I-D.ietf-pwe3-fat-pw] Bryant, S., Filsfils, C., Drafz, U., Kompella, V., Regan, J., and S. Amante, "Flow Aware Transport of Pseudowires over an MPLS Packet Switched Network", draft-ietf-pwe3-fat-pw-07 (work in progress), July 2011. Davari, et al. Expires December 17, 2013 [Page 29] Internet-Draft Transporting Timing over MPLS June 2013 [ISO] ISO/IEC 10589:1992, "Intermediate system to Intermediate system routeing information exchange protocol for use in conjunction with the Protocol for providing the Connectionless-mode Network Service (ISO 8473)". [RFC1195] Callon, R., "Use of OSI IS-IS for routing in TCP/IP and dual environments", RFC 1195, December 1990. [RFC2328] Moy, J., "OSPF Version 2", STD 54, RFC 2328, April 1998. [RFC2697] Heinanen, J. and R. Guerin, "A Single Rate Three Color Marker", RFC 2697, September 1999. [RFC3246] Davie, B., Charny, A., Bennet, J., Benson, K., Le Boudec, J., Courtney, W., Davari, S., Firoiu, V., and D. Stiliadis, "An Expedited Forwarding PHB (Per-Hop Behavior)", RFC 3246, March 2002. [RFC3630] Katz, D., Kompella, K., and D. Yeung, "Traffic Engineering (TE) Extensions to OSPF Version 2", RFC 3630, September 2003. [RFC3784] Smit, H. and T. Li, "Intermediate System to Intermediate System (IS-IS) Extensions for Traffic Engineering (TE)", RFC 3784, June 2004. [RFC4970] Lindem, A., Shen, N., Vasseur, JP., Aggarwal, R., and S. Shaffer, "Extensions to OSPF for Advertising Optional Router Capabilities", RFC 4970, July 2007. [RFC4971] Vasseur, JP., Shen, N., and R. Aggarwal, "Intermediate System to Intermediate System (IS-IS) Extensions for Advertising Router Information", RFC 4971, July 2007. [RFC5120] Przygienda, T., Shen, N., and N. Sheth, "M-ISIS: Multi Topology (MT) Routing in Intermediate System to Intermediate Systems (IS-ISs)", RFC 5120, February 2008. [RFC5305] Li, T. and H. Smit, "IS-IS Extensions for Traffic Engineering", RFC 5305, October 2008. [RFC5329] Ishiguro, K., Manral, V., Davey, A., and A. Lindem, "Traffic Engineering Extensions to OSPF Version 3", RFC 5329, September 2008. [RFC5340] Coltun, R., Ferguson, D., Moy, J., and A. Lindem, "OSPF for IPv6", RFC 5340, July 2008. Davari, et al. Expires December 17, 2013 [Page 30] Internet-Draft Transporting Timing over MPLS June 2013 [RFC5905] Mills, D., Martin, J., Burbank, J., and W. Kasch, "Network Time Protocol Version 4: Protocol and Algorithms Specification", RFC 5905, June 2010. [RFC6391] Bryant, S., Filsfils, C., Drafz, U., Kompella, V., Regan, J., and S. Amante, "Flow-Aware Transport of Pseudowires over an MPLS Packet Switched Network", RFC 6391, November 2011. [RFC6790] Kompella, K., Drake, J., Amante, S., Henderickx, W., and L. Yong, "The Use of Entropy Labels in MPLS Forwarding", RFC 6790, November 2012. Davari, et al. Expires December 17, 2013 [Page 31] Internet-Draft Transporting Timing over MPLS June 2013 1. Routing extensions for Timing-aware Routers MPLS-TE routing relies on extensions to OSPF [RFC2328] [RFC5340] and IS-IS [ISO] [RFC1195] in order to advertise Traffic Engineering (TE) link information used for constraint-based routing. Indeed, it is useful to advertise data plane TE router link capabilities, such as the capability for a router to be Timing-aware. This capability MUST then be taken into account during path computation to prefer or even require links that advertise themselves as Timing-aware. In this way the path can ensure the entry and exit points into the LERs and, if desired, the links into the LSRs are able to perform port based time-stamping thus minimizing their impact on the performance of the slave clock. extensions are required to OSPF and IS-IS in order to advertise Timing-aware capabilities of a link. Such extensions are outside the scope of this document; however such extension SHOULD be able to signal the following information per Router Link: o Capable of processing PTP, NTP or other Timing flows o Capable of performing Transparent Clock operation o Capable of performing Boundary Clock operation Davari, et al. Expires December 17, 2013 [Page 32] Internet-Draft Transporting Timing over MPLS June 2013 2. Signaling Extensions for Creating Timing LSPs RSVP-TE signaling MAY be used to setup the timing LSPs. When RSVP-TE is used to setup Timing LSPs, some information that indicates that the LSP is carrying Timing flows MUST be included in the new Extensions to RSVP-TE: The following information MAY also be included in the new Extensions to RSVP-TE: o Offset from Bottom of Stack (BoS) to the start of the Time-stamp field o Number of VLANs in case of PW encapsulation o Timestamp field Type * Correction Field, Timestamp o Timestamp Field format * 64-bit PTPv1, 80-bit PTPv2, 32-bit NTP, 64-bit NTP, 128-bit NTP, etc. Note that in case the above optional information is signaled with RSVP-TE for a Timing LSP, all the Timing packets carried in that LSP must have the same signaled characteristics. For example if Timestamp format is signaled as 64-bit PTPv1, then all Timing packets must use 64-bit PTPv1 time-stamp. Davari, et al. Expires December 17, 2013 [Page 33] Internet-Draft Transporting Timing over MPLS June 2013 Authors' Addresses Shahram Davari Broadcom Corp. San Jose, CA 95134 USA Email: davari@broadcom.com Amit Oren Broadcom Corp. San Jose, CA 95134 USA Email: amito@broadcom.com Manav Bhatia Alcatel-Lucent Bangalore, India Email: manav.bhatia@alcatel-lucent.com Peter Roberts Alcatel-Lucent Kanata, Canada Email: peter.roberts@alcatel-lucent.com Laurent Montini Cisco Systems San Jose CA USA Email: lmontini@cisco.com Davari, et al. Expires December 17, 2013 [Page 34] Internet-Draft Transporting Timing over MPLS June 2013 Luca Cisco Systems San Jose CA USA Email: lmartini@cisco.com Davari, et al. Expires December 17, 2013 [Page 35]