IP Performance Metrics Group Srivathsa. Sarangapani Internet-Draft Peyush. Gupta Intended status: Standards Track Juniper Networks Expires: January 18, 2017 V. Hegde Consultant Q. Wu Huawei July 17, 2016 Monitoring Service KPIs using TWAMP - Methodology draft-spv-ippm-monitor-methodology-services-kpi-02 Abstract The TWAMP protocol provides a common architecture for two way measurements in the IP network. However IP network performance are also affected by a set of L4-L7 service deployed in the network. Monitoring of these service performance in the IP network also plays a vital role in network optimization and application layer traffic optimization. This capability is not supported by the existing TWAMP protocol. In this document, we extend TWAMP protocol to support service performance monitoring and service KPIs calculation. Some of the existing fields in the TWAMP protocol are extended to support new modes for calculating these KPIs. A set of new messages are added in the control protocol between TWAMP client (session sender) and the TWAMP server (session reflector). Services here ranging from Layer 4 to Layer 7 services,such as Http based services, Traffic load balancer, DPI, Video caching, real time streaming and IPSec. The KPIs MAY be service latency, liveliness of an application, number of flows and sessions per service, load balancer statistics. There is a separate Draft[I.D-spv-ippm-monitor-implementation- services-kpi] that talks about implementation of monitoring these KPIs in the network using TWAMP. Monitoring of these KPIs in the service plane with in a network play a vital role in optimum usage of network resources and improving the overall performance and capacity. 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 Sarangapani, et al. Expires January 18, 2017 [Page 1] Internet-Draft Service KPIs using TWAMP methodology July 2016 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 January 18, 2017. 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 described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1. Conventions used in this document . . . . . . . . . . . . 3 1.1.1. Requirements Language . . . . . . . . . . . . . . . . 3 1.2. Terminology . . . . . . . . . . . . . . . . . . . . . . . 3 2. Purpose and Scope . . . . . . . . . . . . . . . . . . . . . . 4 3. Logical Model . . . . . . . . . . . . . . . . . . . . . . . . 5 4. TWAMP Extensions . . . . . . . . . . . . . . . . . . . . . . 6 4.1. TWAMP-Control Extensions . . . . . . . . . . . . . . . . 7 4.1.1. Connection Setup with Services KPIs Monitoring . . . 7 4.1.2. Services KPI-Monitor-REQ Command . . . . . . . . . . 7 4.1.3. Services KPI-Monitor-RSP Command . . . . . . . . . . 8 4.1.4. Services KPI-Monitor-IND Command . . . . . . . . . . 9 4.1.5. Services KPI-Monitor-ACK Command . . . . . . . . . . 10 4.1.6. Request-TW-Session Command Format . . . . . . . . . . 11 4.2. TWAMP-Test Extension . . . . . . . . . . . . . . . . . . 12 5. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 17 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 17 7. Security Considerations . . . . . . . . . . . . . . . . . . . 19 8. Normative References . . . . . . . . . . . . . . . . . . . . 19 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 19 Sarangapani, et al. Expires January 18, 2017 [Page 2] Internet-Draft Service KPIs using TWAMP methodology July 2016 1. Introduction The TWAMP protocol defined in RFC 5357 [RFC5357] provides a common architecture for two way measurements in the IP network. In large scale IP environment, there are also large number of L4 to L7 services being deployed. Measuring these service performance become important when we measure the whole IP network performance. However the existing TWAMP protocol does not provide such capability which allow interaction between service plane and IP forwarding plane and monitor service KPI in the IP network. The KPIs MAY include service latency, service load monitoring in terms of number of flows, number of sessions, number of subscribers, number of octets, liveliness of a service. In this document, we extend TWAMP protocol to calculate services KPIs and metrics in the network. Services KPI Monitoring using TWAMP MAY be used to measure service latency of DPI, number of CGNAT flows, number of TDF subscribers and so on. Similarly this MAY be used to monitor the liveliness of the DNS Server, HTTP Server and so on. As per the proposed extension, both the TWAMP-Control and the TWAMP- Test packet formats are modified. One TWAMP-Test session SHALL be used to monitor KPIs for a specific service. But there can be multiple KPIs monitored using a single test session for a specific service. A single TWAMP-Control connection MAY establish multiple TWAMP-Test sessions that measure KPIs for multiple services in the network. This extension can be used to monitor KPIs for standalone service or a set of services. 1.1. Conventions used in this document 1.1.1. Requirements Language 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]. 1.2. Terminology TWAMP: Two-Way Active Measurement Protocol OWAMP: One-Way Active Measurement Protocol KPI: Key Performance Indicator Sarangapani, et al. Expires January 18, 2017 [Page 3] Internet-Draft Service KPIs using TWAMP methodology July 2016 DPI: Deep Packet Inspection CGNAT: Carrier Grade Network Address Translation SFW: Stateful Firewall TDF: Traffic Detection Function DNS: Domain Name Server HTTP: Hyper Text Transfer Protocol FTP: File Transfer Protocol SKMC: Services KPI Monitoring Command SID: Session ID PDU: Protocol Data Unit MBZ: Must Be Zero HMAC: Hash Message Authentication Code IPVN: IP Version Number 2. Purpose and Scope The purpose of this extension is to provide a method to describe an additional optional feature for TWAMP RFC 5357 [RFC5357]. The scope of the extension is limited to specifications of the following features: 1. Extension of the modes of operation through assignment of a new value in the Modes field to communicate feature capability. 2. Addition of new command types to identify, negotiate and monitor the supported services and supported KPIs for each service between Control-Client and TWAMP Server. 3. Use of existing padding octets of TWAMP-Test session to carry the services KPI data that is being monitored as part of the TWAMP- Test session. The purpose for this feature is to enhance TWAMP protocol to monitor and calculate service-related KPIs in real-time that helps in network performance analysis and optimization. Sarangapani, et al. Expires January 18, 2017 [Page 4] Internet-Draft Service KPIs using TWAMP methodology July 2016 The actual method to calculate the KPIs is discussed in a separate draft on implementation 3. Logical Model The set of messages that are exchanged between the Control-Client and TWAMP Server to negotiate and monitor the services KPI is referred to as Service Block (Fig 1.) Service Block MAY be a part of the same network element or can be a different entity. Services KPI-Monitor-REQ is sent from Control-Client to TWAMP Server to get the list of supported services and the KPIs that can be monitored for each service. Once TWAMP Server receives this request, Services KPI-Monitor-RSP is sent with the number of services that can be monitored on this Control-Client connection. This message is followed by Services KPI-Monitor-IND message from the Server which contain a service ID to identify the service and the list of KPIs that are supported for this service.The client replies with the Services KPI-Monitor-ACK message that include the list of KPIs the client is interested in monitoring. This pair of two messages will be repeated for each of the services that Server can monitor. Then the client will initiate Request-TW-Session Message that contain the service ID for a specific service. Once Server replies with the Accept-Session Message, the client SHALL start sending test packets that MAY contain Service PDU. Sarangapani, et al. Expires January 18, 2017 [Page 5] Internet-Draft Service KPIs using TWAMP methodology July 2016 +--------+ +--------+ | Client | | Server | +--------+ +--------+ | | |<------TCP Connection------------->| | | |<------Greeting Message------------| | | |-------Set-Up-Response------------>| | | |<------Server-Start----------------| | | |-------Services KPI-Monitor-REQ--->| |<------Services KPI-Monitor-RSP----| | | |<-----Services KPI-Monitor-IND-----| |------Services KPI-Monitor-ACK---->| | . | | . | | . | |<-----Services KPI-Monitor-IND-----| |------Services KPI-Monitor-ACK---->| | | |------Request-TW-Session---------->| |<-----Accept Session---------------| | . | | . | |------Request-TW-Session---------->| |<-----Accept Session---------------| Figure 1 4. TWAMP Extensions The TWAMP connection establishment follows the procedure defined in Section 3.1 of OWAMP [RFC4656] and Section 3.1 of TWAMP [RFC5357] where the Modes field is used to identify and select specific communication capabilities. At the same time the Modes field been recognized and used as an extension mechanism of TWAMP Reflect Octets and Symmetrical Size Features [RFC6038]. The new feature requires a new bit position to identify the ability of a Session-Reflector to monitor Services KPIs. There are changes in both the Control-Client and TWAMP-Test packet formats to support this functionality. Sarangapani, et al. Expires January 18, 2017 [Page 6] Internet-Draft Service KPIs using TWAMP methodology July 2016 4.1. TWAMP-Control Extensions The TWAMP-Control is a derivative of the OWAMP-Control, and provides two-way measurement capability. TWAMP; [RFC5357] uses the Modes field to identify and select specific communication capabilities, and this field is a recognized extension mechanism. The following Sections describe one such extension. 4.1.1. Connection Setup with Services KPIs Monitoring TWAMP-Control connection establishment follows the procedure defined in Section 3.1 of OWAMP; [RFC4656]. The Services KPIs Monitoring using TWAMP mode requires one new bit position (and value) to identify the ability of the Server or the Session-Reflector to monitor the Services KPIs of the sessions. This new extension requires an additional TWAMP mode bit assignment as explained in Section 5.1. A Control-Client MAY request for Services KPIs monitoring for some of its sessions. To do so, it needs to know which services can be monitored and the corresponding KPIs (of those services)that can be monitored. Services KPI Monitoring Command (SKMC) consist of a set of messages which SHALL be used for monitoring the KPIs of a service. This new command requires an additional TWAMP Command Number as explained in Section 6. 4.1.2. Services KPI-Monitor-REQ Command A Control-Client MAY send Services KPI-Monitor-REQ command to the Server to obtain the list of services and their KPIs that can be monitored by the Session-Reflector. The format of the Services KPI-Monitor-REQ Command is as follows: 0 1 2 3 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Command Number| REQ | MBZ (2 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | HMAC (16 octets) | | | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 2: Services KPI-Monitor-REQ Command Sarangapani, et al. Expires January 18, 2017 [Page 7] Internet-Draft Service KPIs using TWAMP methodology July 2016 Since this is a new command, a Command Number value should be allocated by the IANA in the registry as mentioned in Section 6. The command number indicates that this is one of the Services KPI Monitoring Command. The Control-Client MUST compose this command, and the Server MUST interpret this command, according to the field descriptions below. The sub-type field MUST be REQ for this message. This message indicates that the Client is requesting Server to send the list of Services and the corrosponding KPIs that can be monitored. The message is terminated with a single block HMAC, as illustrated above. The Server MUST respond with Services KPI-Monitor-RSP Command Section 4.1.3. 4.1.3. Services KPI-Monitor-RSP Command The Server responds to the Services KPI-Monitor-REQ Command by sending a Services KPI-Monitor-RSP Command. The format of the Services KPI-Monitor-RSP Command is as follows: 0 1 2 3 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Command Number | RSP | MBZ (2 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Number of services | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | HMAC (16 octets) | | | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 3: Services KPI-Monitor-RSP Command The Command Number value here is same as mentioned in Section 6. The Server MUST compose this command, and the Control-Client MUST interpret this command, according to the field descriptions below. The sub-type field MUST be RSP for this command. The field "Number of Services" indicates the number of Services for which the Session- Reflector can monitor the KPI. The message is terminated with a single block HMAC, as illustrated above. Sarangapani, et al. Expires January 18, 2017 [Page 8] Internet-Draft Service KPIs using TWAMP methodology July 2016 4.1.4. Services KPI-Monitor-IND Command The Server MUST send the Services KPI-Monitor-IND Command after sending Services KPI Monitor-RSP message. This message includes the list of KPIs that can be monitored for a service. 0 1 2 3 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Command Number| IND | Service ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | Service Description (12 octets) | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | Supported Services KPIs Bitmask (2 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | HMAC (16 octets) | | | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 4: Services KPI-Monitor-IND Command The Command Number value here is same as mentioned in Section 6. The Server MUST compose this command, and the Control-Client MUST interpret this command, according to the field descriptions below. The sub-type field MUST be IND for this Command. This field indicates that the Server is responding to the Control-Client with the details of the KPIs of a service that can be monitored by Session-Reflector. Service ID is an identifier which would be set by the Server to identify a Service. This ID MUST be used in the TWAMP-Control and TWAMP-Test messages to identify a particular Service. The range of Service ID MUST be 1 to 65535; The value 0 is Reserved. Service Description MAY be set of alphanumeric characters that would provide a brief description of a particular Service. Example: "DPI" "CGNAT" "DNS-Server" "HTTP-Server". Supported Services KPIs Bitmask is a bitmask that would indicate the kind of KPI Monitoring using TWAMP is supported by the Session- Reflector for a particular Service. Sarangapani, et al. Expires January 18, 2017 [Page 9] Internet-Draft Service KPIs using TWAMP methodology July 2016 The message is terminated with a single block HMAC, as illustrated above. For each Services KPIs monitoring supported, the Server MUST send one Services KPI-Monitor-IND Command to the Control-Client. 4.1.5. Services KPI-Monitor-ACK Command The Control-client MUST respond back with a Services KPI-Monitor-ACK Command for each Services KPI-Monitor-IND Command. 0 1 2 3 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Command Number| ACK | Service ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | Service Description (12 octets) | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | Requested Services KPIs Bitmask (2 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | HMAC (16 octets) | | | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 5: Services KPI-Monitor-ACK Command The Command Number is same as mentioned in Section 6. The Server MUST frame this command, and the Control-Client MUST interpret this command, according to the field descriptions below. The sub-type field MUST be ACK for this message. This field indicates that the Control-client is acknowledging the Server with details of which KPIs of a particular service it is interested in. Service ID and Service Description MUST be same as that received in the Services KPI-Monitor-IND Command. These two fields together identify a particular Service. Requested Services KPIs Bitmask MUST be set by the Control-Client and that indicates the KPIs of the services that the Control-Client is interested in monitoring. The KPIs can be a subset or the full set of KPIs sent in the corresponding Service KPI-Monitor-IND Command. Sarangapani, et al. Expires January 18, 2017 [Page 10] Internet-Draft Service KPIs using TWAMP methodology July 2016 The Command is terminated with a single block HMAC, as illustrated above. For each Services KPI-Monitor-IND Command received at the control- client, it acknowledges by sending a Services KPI-Monitor-ACK Command. 4.1.6. Request-TW-Session Command Format 0 1 2 3 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 5 | MBZ | IPVN | Conf-Sender | Conf-Receiver | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Number of Schedule Slots | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Number of Packets | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sender Port | Receiver Port | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sender Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | Sender Address (cont.) or MBZ (12 octets) | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Receiver Address | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | Receiver Address (cont.) or MBZ (12 octets) | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | SID (16 octets) | | | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Padding Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Start Time | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Timeout, (8 octets) | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type-P Descriptor | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Octets to be reflected | Length of padding to reflect | Sarangapani, et al. Expires January 18, 2017 [Page 11] Internet-Draft Service KPIs using TWAMP methodology July 2016 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Service ID | MBZ (2 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | HMAC (16 octets) | | | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 6: Request-TW-Session Command This new feature requires 2 octets to indicate the Service ID as a part of Request-TW-Session Command. See Section 6 for details on the octet position. If Services KPIs Monitoring using TWAMP feature is not requested as a part of this TWAMP-Test Session, then the Service ID MUST be 0. If Service ID has a non-zero value, then the Padding Length field MAY not have any significance. The test packets between Session-Sender and Session-Reflector MAY be of different size based on the implementation. The actual test packets MAY contain valid data which SHOULD be interpreted by Session-Sender or Session-Reflector to monitor Services KPIs. Please refer TWAMP-Test Extension Section 4.2 for more details. 4.2. TWAMP-Test Extension As part of this extension, the existing Packet Padding octets in the Test Packet MAY be used for the monitoring of the Services KPIs as explained in KPI Implemnetation Draft. The Packet Padding octets which were either zero or filled with pseudo-random values MAY now have some valid data like timestamps, statistics, service PDUs and so on. The Session-Sender Test Session data packet formats are provided below. Sarangapani, et al. Expires January 18, 2017 [Page 12] Internet-Draft Service KPIs using TWAMP methodology July 2016 0 1 2 3 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sequence Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Timestamp | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Error Estimate | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | MBZ (6 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | . . . Packet Padding . . . | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 7: Unauthenticated Mode Session-Sender Data Packet Format As a part of the extension, 6 octets of MBZ are added after the Error Estimate field. Sarangapani, et al. Expires January 18, 2017 [Page 13] Internet-Draft Service KPIs using TWAMP methodology July 2016 0 1 2 3 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sequence Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | MBZ (12 octets) | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Timestamp | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Error Estimate | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | MBZ (6 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | HMAC (16 octets) | | | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | . . . Packet Padding . . . | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 8: Authenticated and Encrypted Mode Session-Reflector Data Packet Format The Session-Reflector Test Session data packet formats are provided below. Sarangapani, et al. Expires January 18, 2017 [Page 14] Internet-Draft Service KPIs using TWAMP methodology July 2016 0 1 2 3 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sequence Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Timestamp | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Error Estimate | MBZ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Receive Timestamp | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sender Sequence Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sender Timestamp | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sender Error Estimate | MBZ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sender TTL | MBZ | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | Monitored Services KPIs Bitmask (2 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | . . . Packet Padding . . . | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 9: Unauthenticated Mode Session-Reflector Data Packet Format As a part of this extension, The 3 octets of MBZ are added after the Error Estimate field to align the next set of fields. Monitored Services KPIs Bitmask indicates the services KPIs that are present in this message. The KPIs would be present in the Packet Padding area in the same order as indicated by Bitmask starting from bit 0 Position. 0 1 2 3 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sequence Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | MBZ (12 octets) | Sarangapani, et al. Expires January 18, 2017 [Page 15] Internet-Draft Service KPIs using TWAMP methodology July 2016 | | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Timestamp | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Error Estimate | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | MBZ (6 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Receive Timestamp | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | MBZ (8 octets) | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sender Sequence Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | MBZ (12 octets) | | | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sender Timestamp | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sender Error Estimate | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ + | MBZ (6 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sender TTL | | +-+-+-+-+-+-+-+-+ + | | | | | MBZ (15 octets) | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ | HMAC (16 octets) | | | | | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | Monitored Services KPIs Bitmask (2 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | . Packet Padding . . . | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Sarangapani, et al. Expires January 18, 2017 [Page 16] Internet-Draft Service KPIs using TWAMP methodology July 2016 Figure 10: Authenticated and Encrypted Mode Session-Reflector Data Packet Format As a part of this extension, Monitored Services KPIs Bitmask indicates the services KPIs that are present in this message. The KPIs would be present in the Packet Padding area in the same order as indicated by Bitmask starting from bit 0 Position. The set of KPIs defined for a service are listed in KPI Implementation draft 5. Acknowledgements We would like to thank Perceival A Monteiro for their comments, suggestions, reviews, helpful discussion, and proof-reading 6. IANA Considerations The TWAMP-Modes registry defined in [RFC6038]. IANA is requested to reserve a new bit in Modes registry for Services KPIs Monitoring Capability as follows: +------------+----------------------+-------------------+-----------+ | Value | Description | Semantics | Reference | +------------+----------------------+-------------------+-----------+ | X | Services KPIs | bit position | This | | (proposed | Monitoring | Y(proposed 8) | document | | 256) | Capability | | | +------------+----------------------+-------------------+-----------+ Table 1: Services KPIs Monitoring Capability TWAMP-Control Command Number Registry defined in [RFC5938].IANA is requested to reserve a Command Number for Services KPIs Monitoring Capability as follows: +----------------+-------------------------+-----------+------------+ | Value | Description | Semantics | Reference | +----------------+-------------------------+-----------+------------+ | SKMC (proposed | Services KPIs | | This | | 11) | Monitoring Command | | document | +----------------+-------------------------+-----------+------------+ Table 2: New Service Latency Monitoring Command TWAMP Services KPIs sub-type Registry IANA is requested to reserve and maintain the sub-types as a part of Services KPIs Monitoring Command as follows: Sarangapani, et al. Expires January 18, 2017 [Page 17] Internet-Draft Service KPIs using TWAMP methodology July 2016 +-------+-------------+---------------+ | Value | Description | Explanation | +-------+-------------+---------------+ | 0 | Reserved | | | 1 | REQ | Section 4.1.2 | | 2 | RESP | Section 4.1.3 | | 3 | IND | Section 4.1.4 | | 4 | ACK | Section 4.1.5 | +-------+-------------+---------------+ Table 3: TWAMP Services KPIs sub-type Registry TWAMP Services KPIs Registry IANA is requested to reserve and maintain the below Services KPIs: +-------+----------------+------------------------------------------+ | Value | Description | Explanation | +-------+----------------+------------------------------------------+ | 0 | None | | | 1 | Keepalive | Whether the respective service is | | | | running or not | | 2 | Service | Service Latency which SHALL include the | | | Latency | transit time and actual service time | | 4 | Serviced | Number of ingress and egress packets for | | | Packets Count | the respective service | | 8 | Serviced Bytes | Number of ingress and egress bytes for | | | Count | the respective service. | | 16 | Serviced | Number of subscribers currently active | | | Subscriber | for the respective service. | | | Count | | +-------+----------------+------------------------------------------+ Table 4: TWAMP Services KPIs Registry Request-TW-Session message defined in [RFC6038].IANA is requested to reserve 2 octets for Service ID as follows: +-------+-------------+--------------------------------+------------+ | Value | Description | Semantics | Reference | +-------+-------------+--------------------------------+------------+ | X | Service ID | 2 Octets starting from offset | This | | | | 92th Octet | document | +-------+-------------+--------------------------------+------------+ Table 5: New Services KPIs Monitoring Capability Sarangapani, et al. Expires January 18, 2017 [Page 18] Internet-Draft Service KPIs using TWAMP methodology July 2016 7. Security Considerations The TWAMP protocol (RFC 5357) supports authenticated and encrypted mode for TWAMP session and data. The new extension proposed in this draft supports the authenticated and encrypted mode and is therefore provides a secure mechanism to monitor services KPIs 8. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . [RFC4656] Shalunov, S., Teitelbaum, B., Karp, A., Boote, J., and M. Zekauskas, "A One-way Active Measurement Protocol (OWAMP)", RFC 4656, DOI 10.17487/RFC4656, September 2006, . [RFC5357] Hedayat, K., Krzanowski, R., Morton, A., Yum, K., and J. Babiarz, "A Two-Way Active Measurement Protocol (TWAMP)", RFC 5357, DOI 10.17487/RFC5357, October 2008, . [RFC5938] Morton, A. and M. Chiba, "Individual Session Control Feature for the Two-Way Active Measurement Protocol (TWAMP)", RFC 5938, DOI 10.17487/RFC5938, August 2010, . [RFC6038] Morton, A. and L. Ciavattone, "Two-Way Active Measurement Protocol (TWAMP) Reflect Octets and Symmetrical Size Features", RFC 6038, DOI 10.17487/RFC6038, October 2010, . Authors' Addresses Srivathsa Sarangapani Juniper Networks 89, Asthagrama Layout 2nd Stage, Basavehwaranagar Bangalore 560079 INDIA Phone: +91 9845052354 Email: srivathsas@juniper.net Sarangapani, et al. Expires January 18, 2017 [Page 19] Internet-Draft Service KPIs using TWAMP methodology July 2016 Peyush Gupta Juniper Networks Flat #206, Keerti Royal Apartment, Outer Ring Road Bangalore, Karnataka 560043 INDIA Phone: +91 9449251927 Email: peyushg@juniper.net Vinayak Hegde Consultant Brahma Sun City, Wadgaon-Sheri Pune, Maharashtra 411014 INDIA Phone: +91 944984401 Email: vinayakh@gmail.com Qin Wu Huawei 101 Software Avenue, Yuhua District Nanjing, Jiangsu 210012 China Phone: +86-25-84565892 Email: bill.wu@huawei.com Sarangapani, et al. Expires January 18, 2017 [Page 20]