TRILL Working Group Deepak Kumar Internet Draft Cisco Intended Status: Standard Track Yizhou Li Huawei Expires January 2017 July 20, 2016 TRILL Path Telemetry draft-kumar-trill-path-telemetry-00.txt 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), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. 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." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. This Internet-Draft will expire on May 2, 2016. Copyright Notice Copyright (c) 2016 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 Kumar et al. Expires January 21, 2017 [Page 1] Internet Draft TRILL Path Telemetry July 20, 2016 described in the Simplified BSD License. Abstract This document specifies Path Telemetry solution for network virtualization overlay networks. Methods in this document add TLVs to TRILL OAM Fault Management Path Trace Message and Path Trace Reply Message. Kumar et al. Expires January 21, 2017 [Page 2] Internet Draft TRILL Path Telemetry July 20, 2016 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Conventions used in this document . . . . . . . . . . . . . . . 3 3. Proposed TLV . . . . . . . . . . . . . . . . . . . . . . . . . 3 3.1 Telemetry Statistics Request . . . . . . . . . . . . . . . . 4 3.2 Telemetry Statistics Reply . . . . . . . . . . . . . . . . . 4 4. Encapsulation of new TLVs . . . . . . . . . . . . . . . . . . . 7 5 Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 5.1 PTM Transmit . . . . . . . . . . . . . . . . . . . . . . . . 8 5.2 PTM Receive and PTR Reply . . . . . . . . . . . . . . . . . 8 5.3 PTR Receive . . . . . . . . . . . . . . . . . . . . . . . . 8 4. Security Considerations . . . . . . . . . . . . . . . . . . . . 8 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 8 15. References . . . . . . . . . . . . . . . . . . . . . . . . . . 8 15.1. Normative References . . . . . . . . . . . . . . . . . . . 8 15.2. Informative References . . . . . . . . . . . . . . . . . . 8 16. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 9 1. Introduction This document provide TLVs to be added in RFC7455 defined Path Trace Message and Path Trace Reply Message to query telemetry data throughout the path for ingress and egress interface. 2. Conventions used in this document 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 RFC-2119 [RFC2119]. Acronyms used in the document include the following: PTM - Path Trace Message PTR - Path Trace Reply Message ECMP - Equal Cost Multipath 3. Proposed TLV This document introduces two new TLVs to query telemetry data inband using PTM and reply using PTR message. Kumar et al. Expires January 21, 2017 [Page 3] Internet Draft TRILL Path Telemetry July 20, 2016 3.1 Telemetry Statistics Request The Telemetry Statistics Request TLV is used as a command on Receiver devices to query Telemetry Data and include it in PTR reply. 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | Command | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Type (1 octet) = TBD-TLV-75 Length (2 octets) = 1. Type = TBD-75 Command = 0 - Get Telemetry Statistics In future Add Get and action for the statistics. Figure 3 Telemetry Statistics Request TLV 3.2 Telemetry Statistics Reply The Telemetry Statistics Reply TLV is used to pack telemetry data and reply as part of PTR reply. 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ingress_len | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | bitlist ingress | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | bytes | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | bytes | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | pkt_rate | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | pkt_rate | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | byte_rate | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | byte_rate | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | load | Kumar et al. Expires January 21, 2017 [Page 4] Internet Draft TRILL Path Telemetry July 20, 2016 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | load | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ucast | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ucast | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | mcast | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | mcast | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | bcast | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | bcast | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | discards | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | discards | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | errors | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | errors | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | unknown | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | unknown | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | queue depth | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Ingress Timestamp | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Ingress Timestamp | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Egress_len | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | bitlist egress | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | tx_bytes | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | tx_bytes | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | tx_pkt_rate | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | tx_pkt_rate | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | tx_byte_rate | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | tx_byte_rate | Kumar et al. Expires January 21, 2017 [Page 5] Internet Draft TRILL Path Telemetry July 20, 2016 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | tx_load | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | tx_load | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | tx_ucast | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | tx_ucast | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | tx_mcast | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | tx_mcast | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | tx_bcast | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | tx_bcast | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | tx_discards | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | tx_discards | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | tx_errors | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | tx_errors | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | tx_unknown | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | tx_unknown | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | tx queue depth | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Egress Timestamp | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Egress Timestamp | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 4 Telemetry Statistics Reply TLV Type (1 octet) = TBD-TLV-76 Length (2 octets) = Type = TBD-75 Value = For Each field please refer length in the diagram of TLV. Ingress_len = Length of Ingress interface statistics Kumar et al. Expires January 21, 2017 [Page 6] Internet Draft TRILL Path Telemetry July 20, 2016 bitlist Ingress = Indicating what statistics is valid. Bit 0 indicate bytes, and so on. Bitmap is 32 bits to cover 32 statistics. bytes = ifHCInOctets (Please refer RFC1573) pkt_rate = packets per second byte_rate = Bytes per second load = Interface load at scale of 255. ucast = ifHcInUcastPkts (Please refer RFC2863) mcast = ifHCMulticastPkts (Interface Multicast Receive Packet count) bcast = ifHCBroadcastPkts (Interface Broadcast Receive Packet count) discards = ifInDiscards (Interface Receive Discard Receive packet count) errors = ifInErrors (Interface Receive Error paket count) unknown = ifInUnknownProtos (Interface Uknown Protocol count) queue depth = Queue depth as percentage of max queue size Ingress timestamp = PTP timestamp tx_len = Length of Transmit statistics bitlist Egress = Indicating what statistics is valid. Bit 0 indicate bytes, and so on. tx_bytes = ifHCOutOctets (Please refer RFC1573) tx_pkt_rate = packets per second tx_byte_rate = Bytes per second tx_load = Interface load at scale of 255. tx_ucast = ifHcOutUcastPkts (Please refer RFC2863) tx_mcast = ifHCOutMulticastPkts (Interface Multicast transmit Packet count) tx_bcast = ifHCOutBroadcastPkts (Interface Broadcast Receive Packet count) tx_discards = ifOutDiscards (Interface transmit Discard Receive packet count) tx_errors = ifOutErrors (Interface transmit Error paket count) tx_unknown = ifOutUnknownProtos (Interface transmit Unknown Protocol count) tx queue depth = Transmit Queue depth as percentage of max queue size Egress Timestamp = PTP timestamp As Timestamp are in TLV it's more of software based Timestamp, as in trill Packet is delivered using hop count expiry hardware Timestamp is not applicable. 4. Encapsulation of new TLVs Use PTM and PTR defined in RFC7455 and add TLV as extension of the PTM and PTR procedure. 5 Operations Kumar et al. Expires January 21, 2017 [Page 7] Internet Draft TRILL Path Telemetry July 20, 2016 5.1 PTM Transmit Add Telemetry Statistics Request TLV after Mandatory TLV in PTM message. 5.2 PTM Receive and PTR Reply Process the PTM message as defined in RFC7455 and if telemetry request TLV is present then query the telemetry data on the switch and add Telemetry Statistics Reply TLV in PTR message after Mandatory TLVs. 5.3 PTR Receive Process the PTR message as defined in RFC7455. Parse the Telemetry Statistics Reply TLV and provide statistics to initiator. 4. Security Considerations Specific security considerations related methods presented in this document are currently under investigation. 5. IANA Considerations IANA is requested to allocate 2 CFM TLV types and add them in "CFM OAM IETF TLV Types" sub-reigistries: TBD values 75 - Telemetry Statistics Request 76 - Telemetry Statistics Reply 15. References 15.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [8021Q] IEEE, "Media Access Control (MAC) Bridges and Virtual Bridged Local Area Networks", IEEE Std 802.1Q-2011, August, 2011. 15.2. Informative References [RFC4379] Kompella, K. et.al, "Detecting Multi-Protocol Label Switched (MPLS) Data Plane Failures", RFC 4379, February 2006. [RFC6291] Andersson, L., et.al., "Guidelines for the use of the "OAM" Acronym in the IETF" RFC 6291, June 2011. Kumar et al. Expires January 21, 2017 [Page 8] Internet Draft TRILL Path Telemetry July 20, 2016 [Y1731] ITU, "OAM functions and mechanisms for Ethernet based networks", ITU-T G.8013/Y.1731, July, 2011. [RFC7455] IETF, senevirathne, et. all, Transparent Interconnection of Lots of Links (TRILL): Fault Management, March, 2015. 16. Acknowledgments This document was prepared using 2-Word-v2.0.template.dot. Authors' Addresses Deepak Kumar CISCO Systems 510 McCarthy Blvd, Milpitas, CA 95035, USA Phone : +1 408-853-9760 Email: dekumar@cisco.com Yizhou Li Huawei Technologies 101 Software Avenue, Nanjing 210012 China Phone: +86-25-56625375 Email: liyizhou@huawei.com Kumar et al. Expires January 21, 2017 [Page 9]