Internet DRAFT - draft-sun-ippm-flowbased-pm

draft-sun-ippm-flowbased-pm






IPPM                                                              L. Sun
Internet-Draft                                                      BUPT
Intended status: Informational                                     F. Yu
Expires: April 15, 2013                              Huawei Technologies
                                                                 W. Wang
                                                                    BUPT
                                                        October 12, 2012


                   Flow-based Performance Measurement
                     draft-sun-ippm-flowbased-pm-00

Abstract

   The performance measurements of service flow are becoming significant
   important for administrators monitoring the fitness of the network.
   This memo defines an end-to-end flow-based performance measurement
   method, which is achieved by generating synthetic measurement
   packets, injecting them to the network and analyzing the statistics
   carried in the measurement packets.This measurement method can
   measure flow characteristics such as delay, ipdv (IP Packet Delay
   Variation) and packet loss.

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 April 15, 2013.

Copyright Notice

   Copyright (c) 2012 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



Sun, et al.              Expires April 15, 2013                 [Page 1]

Internet-Draft     Flow-based Performance Measurement       October 2012


   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.

   This document may contain material from IETF Documents or IETF
   Contributions published or made publicly available before November
   10, 2008.  The person(s) controlling the copyright in some of this
   material may not have granted the IETF Trust the right to allow
   modifications of such material outside the IETF Standards Process.
   Without obtaining an adequate license from the person(s) controlling
   the copyright in such materials, this document may not be modified
   outside the IETF Standards Process, and derivative works of it may
   not be created outside the IETF Standards Process, except to format
   it for publication as an RFC or to translate it into languages other
   than English.

































Sun, et al.              Expires April 15, 2013                 [Page 2]

Internet-Draft     Flow-based Performance Measurement       October 2012


Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  4
   2.  Problems statement . . . . . . . . . . . . . . . . . . . . . .  4
   3.  Conventions and Terminology  . . . . . . . . . . . . . . . . .  6
     3.1.  Conventions Used in This Document  . . . . . . . . . . . .  6
     3.2.  Terminology  . . . . . . . . . . . . . . . . . . . . . . .  6
   4.  Overview . . . . . . . . . . . . . . . . . . . . . . . . . . .  6
     4.1.  Goals and Motivation . . . . . . . . . . . . . . . . . . .  6
     4.2.  Protocol overview  . . . . . . . . . . . . . . . . . . . .  7
     4.3.  Logical Model  . . . . . . . . . . . . . . . . . . . . . .  8
   5.  Connection Control . . . . . . . . . . . . . . . . . . . . . .  9
     5.1.  Connection Activation  . . . . . . . . . . . . . . . . . .  9
     5.2.  Connection Deactivation  . . . . . . . . . . . . . . . . . 11
   6.  Measurement Process  . . . . . . . . . . . . . . . . . . . . . 12
     6.1.  FPM Initiator behavior . . . . . . . . . . . . . . . . . . 12
     6.2.  FPM Responder behavior . . . . . . . . . . . . . . . . . . 14
   7.  Metrics  . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
     7.1.  Example of loss rate . . . . . . . . . . . . . . . . . . . 16
   8.  Exception Handling . . . . . . . . . . . . . . . . . . . . . . 17
     8.1.  FM/BR Packet Loss  . . . . . . . . . . . . . . . . . . . . 17
     8.2.  Packet Reordering  . . . . . . . . . . . . . . . . . . . . 17
   9.  Use Case . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
   10. Security Considerations  . . . . . . . . . . . . . . . . . . . 19
   11. IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 19
   12. Acknowledgments  . . . . . . . . . . . . . . . . . . . . . . . 20
   13. References . . . . . . . . . . . . . . . . . . . . . . . . . . 20
     13.1. Normative Reference  . . . . . . . . . . . . . . . . . . . 20
     13.2. Informative References . . . . . . . . . . . . . . . . . . 20
   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 21





















Sun, et al.              Expires April 15, 2013                 [Page 3]

Internet-Draft     Flow-based Performance Measurement       October 2012


1.  Introduction

   The IETF IP Performance Metrics (IPPM) working group has defined a
   series of standard metrics that can be applied to the quality,
   performance and reliability of Internet data delivery services.  The
   WG has produced protocols to enable communication among test
   equipment that implements the one- and two-way metrics (OWAMP and
   TWAMP respectively).

   This memo introduces a new measurement method which is called FPM.
   It continues as follows.  Section 2 discusses the existing problems
   and puts forward the motivation of FPM.  Section 3 introduces
   terminology, followed by the overview of the FPM in Section 4.
   Section 5 and Section 6 introduce connection control and measurement
   process of the FPM respectively.  Section 7 describes the usage of
   metrics in FPM which are defined in the current IPPM working group.
   Section 8 describes some exceptions and handling.  At last it
   introduces a use case, which describes the deployment,
   characteristics and applications of FPM.


2.  Problems statement

   The TWAMP protocol proposed by IPPM WG provides a simple and useful
   network performance measurement method.  It aims at using a safe and
   effective way to measure the performance of the IP network.  TWAMP
   uses TWAMP-Control protocol to initiate, start, and stop test
   sessions, making the measurement process with more flexibility and
   security.  It uses TWAMP-Test protocol for the actual network test by
   injecting test packets into network, so that various properties of
   the network can be measured offline effectively.  However, while
   TWAMP is able to achieve most network measurement situations, it does
   not work well in some cases on the performance testing for real time
   business.

   In some cases, it needs to monitor the various time-varying
   performance indexes of the IP network, the performance measurement
   should be based on real service stream and reflect the real
   performance of the network.  For measuring the performance of the
   real service stream, TWAMP has the following defects due to the limit
   of measurement parameters and its framework.

   o  TWAMP is mainly used to measure the performance of the network.
      It cannot be well applied to the real-time performance measurement
      of a particular or one kind of applications.

   o  In the case of real time measurement of network performance, if
      the test packets are sent too frequently, the network load will be



Sun, et al.              Expires April 15, 2013                 [Page 4]

Internet-Draft     Flow-based Performance Measurement       October 2012


      increased and application flows will be affected.  Otherwise, if
      the number of test packets is small, the performance of the
      network cannot be reflected accurately by the measurement.

   For example, for real time streaming media services such as IPTV and
   video conference, packets carry QoS parameters to ensure service
   quality for different application flows.  Network needs to real time
   monitor the performance of these application flows, in order to
   adjust the allocation of resources in network according to the
   monitoring results in real time, thereby ensuring the QoS
   requirements of different applications.  For the performance
   measurement of such business discussed above, TWAMP cannot meet all
   the requirements well as a result of the above defects.

   For the problems discussed above, it is required to define a new
   measurement framework, which is able to meet the demand for real time
   measurement of application flows, and does not have much impact on
   the data flow itself.  At the same time, this new measurement method
   will be able to meet the following goals of the IPPM measurement:
   guarantee the Service Level Agreement (SLA) provided to the
   customers, detect/locate the network performance defects, react in
   response to performance degradation or the failures promptly, and
   optimize the network resources utilization.

   In the following section, we discuss the requirements of IP
   performance measurement in IP mobile backhaul network.

   In mobile operator's backhaul network, there must be a performance
   monitoring mechanism to check the traffic status in the network.
   With the status information, some strategies can be implemented on
   entities.  For example, eNodeB can implement online congestion
   control and bandwidth adjustment strategy based on the performance
   monitoring result.  Hence, IPPM mechanism is required to provide a
   reasonable estimate of the amount of delay, ipdv (IP Packet Delay
   Variation) and packet loss in the backhaul network connecting it to
   the GW.

   In order to avoid adding superfluous traffic to the backhaul and
   leading to the increase of the load level in the network, it is
   necessary that the frequency of measurement packets generation is
   kept at a minimum.  Moreover, these packets should not lead to an
   excessive computational overload on the eNodeB and the GW.  In other
   words, the process of generation of these probe packets should be
   simple and must not overload the transport interface.  The packets
   must be small and infrequent so as to not cause un-necessary overload
   on the backhaul bandwidth.

   Applications or traffic in mobile backhaul network are divided into



Sun, et al.              Expires April 15, 2013                 [Page 5]

Internet-Draft     Flow-based Performance Measurement       October 2012


   multiple bearers with proper mobile QoS parameters (e.g.  QCI).  If
   the mobile network would manage bearers as QoS and applications, then
   the performance of backhaul is more like to be based on applications
   or QoS.  The currently active measurement method (e.g.  TWAMP) may be
   able to do flow-based measurement by specifying DSCP for the TWAMP-
   test packets.  But it can not well support the online measurement and
   the length of test packet is changeless and not varying as the real
   service packets.  The average performance indexes measured by the
   active measurement method may not be suitable in these cases.

   A new measurement method can be applied into backhaul network, by
   deploying an end-to-end performance monitor on eNodeB to assist
   eNodeB to execute the congestion control and flow scheduling.  Played
   as sender entity, eNodeB sends out the OAM packets periodically to
   trigger the other end (e.g. another eNodeB or an SGW) replying
   acknowledgement packets, then to estimate the delay, ipdv (IP Packet
   Delay Variation) and packet loss of each application flow by
   collecting and calculating status information.


3.  Conventions and Terminology

3.1.  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 [RFC2119].

3.2.  Terminology

   FPM: Flow-based Performance Measurement

   FM:Forward Monitoring

   BR:Backward Reporting


4.  Overview

4.1.  Goals and Motivation

   It is required to provide a reasonable estimation measurement of
   delay, ipdv (IP Packet Delay Variation) and packet loss in IP network
   (such as backhaul network).  The above parameters are functions of
   time, which are stochastic in nature.  Therefore, the mechanism is
   required to provide statistical condition estimations of the IP link
   status.  Since measurement injects some OAM packets to the network,
   it is necessary that the frequency of packet generation is kept at a



Sun, et al.              Expires April 15, 2013                 [Page 6]

Internet-Draft     Flow-based Performance Measurement       October 2012


   minimum.  Moreover, these packets should not lead to an excessive
   computational overload on the measure device.  In other words, the
   generation process of these measurement packets should be simple and
   must not overload the transport interface.  The packets must be small
   and infrequent so as not to cause unnecessary overload on the network
   bandwidth or influence the service running on the network.

4.2.  Protocol overview

   Firstly we make some statement for FPM.  We define a measurement
   method that can be used in some scene.  The method proposed here is
   an end-to-end measurement method over IP layer; it can be implemented
   under the tunnel mode of IPSec.  Two types of logical entities are
   defined, the FPM Initiator and the FPM Responder.  The FPM process
   consists of two parts: Connection control and Measurement Process.

   During Connection control phase, the FPM initiator sends a request to
   the FPM Responder on a random port to set up the FPM connection
   activation.  The FPM Responder SHOULD listen to a well-known port
   (This port number is introduced to be assigned by the IANA.).  Second
   the FPM Responder responds with an ACK packet including some
   parameters based on the request.  When the FPM Initiator receives the
   ACK, it will prepare for starting the measurement process.

   After the measurement, FPM Initiator sends Connection Deactivation
   request packet called DEA to the FPM Responder.  The FPM Responder
   sends DEA-ACK packets back to the FPM Initiator after it receives the
   DEA packets to stop the measurement.

   During the measurement process, the FPM Initiator periodically
   generates Forward Monitor (FM) packets with the source and
   destination IP addresses, and other classification information (for
   example DSCP class) of the service packets , which are sent to the
   FPM Responder.  The generation and transmission of FM packets can be
   periodical with a specific time interval, or a certain number of
   business packets should be sent between two contiguous FM packets.
   The FPM Responder receives the FM packets and sends Backward
   Reporting (BR) packets which are constructed according to the FM
   packets.  The path performance such as the delay, ipdv (IP Packet
   Delay Variation) and loss rate etc. are calculates by the FPM
   Initiator according to the information in the BR packets.

   The FM packets have the same source and destination IP addresses,
   even the same DSCP class in some cases with the business packets.  So
   they are carried through the transport network just most like the
   business packets, and delay, ipdv(IP Packet Delay Variation) and
   packet loss encountered by them resembles the performance as seen by
   the packets of the actual business flows.  The FM and BR packets used



Sun, et al.              Expires April 15, 2013                 [Page 7]

Internet-Draft     Flow-based Performance Measurement       October 2012


   in FPM are small enough to produce influence to actual service flow
   as little as possible.

   Essential differences exist between FPM and IPPM WG-defined
   measurement, such as TWAMP and OWAMP.  The solutions adopted in TWAMP
   and OWAMP are counting the information of measurement packets sent to
   network by Sender, and actively obtaining the measurement results.
   FPM is based on the running traffic of applications, and it collects
   the statistics of real business flow.  Additional OAM packets are
   sent among business flow.  Those OAM packets can be small and the
   inserted frequency can be lower.  The OAM packets are used to carry
   flow/application statistics, which can be used to measure and
   estimate the business flow performance.

4.3.  Logical Model

   The role and definition of the logical entities and measurement
   packets in FPM are defined as follows.

   FPM is an end-to-end measurement, so two logical entities are
   defined.

   o  FPM Initiator: FPM Initiator serves as the sending endpoint, and
      charges for generating and sending the request to initiate a FPM
      connection.  It could also send FM packets to collect measurement
      data and generate statistical report.

   o  FPM Responder: FPM Responder serves as the data receiving
      endpoint, and charges for responding the request of initiating a
      link.  It could also send back a BR packet to the sending endpoint
      once it receives the FM packet from the FPM Initiator.

   One possible scenario of relationships between these roles is shown
   below.

          +---------------+                     +----------------+
          |               |-------------------->|                |
          | FPM Initiator |<--------------------|  FPM Responder |
          +---------------+                     +----------------+


     Figure 1: One possible relationship between FPM Initiator and FPM
                                 Responder

   Note that the FPM Initiator can also serve as the data receiving
   endpoint, and the FPM Responder serves as the data sending endpoint.
   In this case the FM packets are sent by the FPM Responder and the BR
   packet is sent by the corresponding FPM Initiator.  In later sections



Sun, et al.              Expires April 15, 2013                 [Page 8]

Internet-Draft     Flow-based Performance Measurement       October 2012


   the method is described for the first case.  To avoid repetition,
   detail of this case is not described.

   There are six types of packets in total, which include four types of
   control packets and two types of measurement packets.

   Control packet:

   o  ACT: It is sent from the FPM Initiator to a specific UDP port on
      FPM Responder, carries parameters used in negotiation process when
      initiating a FPM connection.

   o  ACT-ACK: It is a response for ACT sent by the FPM Responder to the
      FPM Initiator.

   o  DEA: It is sent by the FPM Initiator to the FPM Responder for
      disconnecting the FPM connection.

   o  DEA-ACK: It is a response for DEA sent by the FPM Responder to the
      FPM Initiator.

   Measurement packet:

   o  FM (Forward Monitoring): It is sent by the FPM Initiator.  The
      format of FM packet payload as defined by this document will be
      shown below.

   o  BR (Backward Reporting): It is sent by the FPM Responder.  The
      format of BR packet payload as defined by this document will be
      shown blow.  It is a response for FM.


5.  Connection Control

5.1.  Connection Activation

   In the FPM connection activation process, a Flow ID is assigned for a
   defined flow (the Flow ID is unique in a connection between the FPM
   Initiator and the FPM Responder).  It should specify how to define
   the Flow corresponding to the measurement instance.  Flow can be
   defined by different combinations of source IP address (SIP),
   destination IP address (DIP), protocol type (PT), DSCP, source port
   number (sPort) and destination port number (dPort).  Three types of
   combinations are suggested: (SIP, DIP, PT), or (SIP, DIP, PT, DSCP)
   or (SIP, DIP, PT, sPort, dPort).  The more the combinational
   dimensions are, the more fine-grained can be the monitoring of
   business flow.




Sun, et al.              Expires April 15, 2013                 [Page 9]

Internet-Draft     Flow-based Performance Measurement       October 2012


   Before starting the measurement, a connection should be established.
   When the FPM Initiator wants to start the measurement process, it
   enables the measurement capabilities to the FPM Responder by sending
   ACT packet to the specific UDP port on the FPM Responder.  When the
   FPM Responder receives the ACT, it enables its measurement function
   and responses to the FPM Initiator with ACT-ACK packet.  The
   connection activation process is finished after the FPM Initiator
   receiving the ACT-ACK packet from the FPM Responder, then the FPM
   Initiator can send FM packet after one cycle.  The definition of
   flow, FlowID, and the sending period of FM packets must be consulted
   by two ends during the connection activation process.

   The format of ACT packet is defined 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
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |  Ver  |  Type |   periods     |   FlowType    |      PT       |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                              SIP                              |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                              DIP                              |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |         sPort                 |           dPort               |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |         FlowId                |      DSCP     |   Reserved    |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+



   Ver and Type existed in all packets in this memo indicate the version
   and type of packet.  Type in these packets MUST be 0X1 indicates that
   this is an ACT packet.

   Periods defined by FPM Initiator indicates the sending period of FM
   packets.

   FlowType indicates how a flow is defined.0x0 in this field is for
   (SIP, DIP, PT, sPort, dPort), while 0x1 is for (SIP, DIP, PT, DSCP)
   and 0x2 is for (SIP, DIP, PT).  The other values are not defined.

   PT is the protocol type value of the service flow needed to be
   measured.  It may be UDP, TCP, SCTP or other types.

   SIP is the source IP address of the service flow, and DIP is the
   destination IP address of the service flow.  SPort and DPort which
   are valid only when the flow is defined by (SIP, DIP, PT, sPort,
   dPort) indicate source/destination port number of the ACT packets.



Sun, et al.              Expires April 15, 2013                [Page 10]

Internet-Draft     Flow-based Performance Measurement       October 2012


   If the FlowType is not defined by (SIP, DIP, PT, sPort, dPort), this
   filed is 0xFF.

   FlowId is the flow id assigned for the defined flow.  It is defined
   by the FPM Initiator.  The FlowId field in others control packets and
   measurement packets have the same meaning.

   DSCP is valid only when the flow is defined by (SIP, DIP, PT, DSCP).
   It indicates the value of the DSCP filed in IP header of service
   flow.

   Reserved is reserved for extensions in future and MUST be set to 0x0
   currently.

   The format of ACT-ACK packet is defined 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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |  Ver  |  Type |    periods    |            FlowId             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |    Accept     |                     Reserved                  |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


   Type of 0X2 indicates ACT-ACK.

   Accept is 0x0 means Connection Activation is OK.  Accept is 0x01
   means Connection Activation is failure and the reason is unspecified.

5.2.  Connection Deactivation

   When the FPM Initiator wants to stop the measurement, it sends
   Connection Deactivation request packet called DEA to the FPM
   Responder.  The FPM Responder sends DEA-ACK packets back to the FPM
   Initiator after it receives the DEA packets.

   The format of DEA packet is defined 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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |  Ver  |  Type |    Reserved   |            FlowId             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


   Type of 0X5 indicates DEA.




Sun, et al.              Expires April 15, 2013                [Page 11]

Internet-Draft     Flow-based Performance Measurement       October 2012


   The format of DEA-ACK packet is defined 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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |  Ver  |  Type |    Reserved   |            FlowId             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


   Type of 0X6 indicates DEA-ACK.


6.  Measurement Process

   This section describes FPM Measurement process.  It runs over UDP,
   and its packet header is constructed in accordance with the business
   packet except the source port number and destination port number.
   The destination port number is a well-known port number, and the
   source port number can be assigned a random port number.  Its packets
   function is similar to the OAM packets, they can be small and the
   inserted frequency can be lower.

6.1.  FPM Initiator behavior

   In the measurement phase, FPM Initiator major responsibility is to
   structure and send FM measurement packet, as well as receive and
   process BR measurement packet.

   When the connection is established successfully, the FPM Initiator
   sends FM packets according to the given time-interval.  Regardless of
   any scheduling delays, each packet that is actually sent MUST have
   the best possible approximation of its real time of departure as its
   timestamp (in the packet).

   The format of FM packet is defined as follows:
















Sun, et al.              Expires April 15, 2013                [Page 12]

Internet-Draft     Flow-based Performance Measurement       October 2012


      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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |  Ver  |  Type |      SN       |            FlowId             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                           FwdTxPkt                            |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                           FwdTxByte                           |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                         FMsTimestamp                          |
     |                                                               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                           Reserved                            |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


   Type of 0X3 indicates FM.

   SN is the sequence number of the flow, which distinguishes the
   different FM packets and indicates the correspondence between FM
   packets and BR packets.  Each FPM flow SHOULD maintain a set of
   sequence numbers (SN).

   FwdTxPkt is the accumulation of the number of the packets sent by the
   FPM Initiator.  FwdTxByte is the accumulation of the number of bytes
   sent by the FPM Initiator.  In order to determine the value of the
   fields of FwdTxPkt and FwdTxByte, the FPM Initiator maintains two
   counters, SPN and SBN, for each FPM flow that is incremented every
   time a business packet is sent.  When the FM packets are to be sent,
   the FwdTxPkt and FwdTxByte are set to the then value of the counters
   respectively.

   FMsTimestamp is the timestamp when the FPM Initiator sends the first
   bit of the FM packets.

   The format of the FMsTimestamp is the same as in [RFC5905] and is as
   follows: the first 32 bits represent the unsigned integer number of
   seconds elapsed since 0h on 1 January 1900; the next 32 bits
   represent the fractional part of a second that has elapsed since
   then.  The timestamp follows the above format in the below sections.











Sun, et al.              Expires April 15, 2013                [Page 13]

Internet-Draft     Flow-based Performance Measurement       October 2012


      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
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                   Integer part of seconds                     |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                 Fractional part of seconds                    |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+



6.2.  FPM Responder behavior

   FPM requires the FPM Responder to transmit a packet to the FPM
   Initiator in response to each FM packet it receives.

   When the FPM Responder receives a FM packet, it copies the value of
   FwdTxPkt, FwdTxByte and Timestamp in FM packet into the corresponding
   fields of the BR packet, and sets the fields of Sender Timestamp,
   FwdRxPkt and FwdRxByte and sends the BR packet.

   The format of BR packet is defined 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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |  Ver  |  Type |      SN       |            FlowId             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                           FwdTxPkt                            |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                           FwdTxByte                           |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                         FMsTimestamp                          |
     |                                                               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                         FMrTimestamp                          |
     |                                                               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                           FwdRxPkt                            |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                           FwdRxByte                           |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                           Reserved                            |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


   Type of 0X4 indicates BR.

   SN is copied from the SN field of the corresponding FM packet.



Sun, et al.              Expires April 15, 2013                [Page 14]

Internet-Draft     Flow-based Performance Measurement       October 2012


   The FwdTxPkt and FwdTxByte are copied from the corresponding FM
   packet.

   FwdRxPkt is the accumulation of the number of the packets received by
   the FPM Responder.

   FwdRxByte is the accumulation of the number of bytes received by the
   FPM Responder.

   In order to determine the value of the fields of FwdRxPkt and
   FwdRxByte, the FPM Responder maintains two counters, RPN and RBN, for
   each FPM flow that is incremented every time a business packet is
   received.  When the BR packets are to be sent, the FwdRxPkt and
   FwdRxByte are set to the then value of the counters respectively.

   FMsTimestamp is copied from the Timestamp field of the FM packets;
   FMrTimestamp is the timestamp when the FPM Responder receives the
   last bit of the FM packets.  The format of the timestamp is the same
   as in FM packets.

   Note that the FPM Initiator could start multiple measurement engines;
   each engine is corresponding to an active logical path (with a
   different Flow).  These measurement engines operate in parallel, and
   send FM packets with the flow id of the logical path, collect the
   corresponding BR packets, and maintain the collected statistical
   values.


7.  Metrics

   FPM method can measure most of the Metrics defined by IPPM WG.  We
   assume that the reader is familiar with IPPM working group document,
   some terms in these documents may be used as described below.

   [RFC2679] describes the one-way delay metrics between the IP hosts.
   Delay is dT means that Src sent the first bit of a Type-P packet to
   Dst at time T and that Dst received the last bit of that packet at
   time T+dT[RFC2679].  In FPM, FMsTimestamp in FM packet is the
   timestamp when the FPM Initiator sent the first bit of the FM packet,
   and FPM Responder records the timestamp when the FPM Responder
   received the last bit of the FM packets.  Assuming that time in both
   ends are synchronous, one-way delay in one measurement can be derived
   through FMrTimestamp-FMsTimestamp.

   [RFC2679]also describes a pseudo-random Poisson sampling method for
   sampling T between the designated T0 and Tf (T0 and Tf is the
   sampling time boundary value).  FPM can sample the set of results
   measured in FPM Initiator, and the sampling method can be the pseudo-



Sun, et al.              Expires April 15, 2013                [Page 15]

Internet-Draft     Flow-based Performance Measurement       October 2012


   random Poisson sampling or other methods.  Error handling and other
   operations are described in [RFC2679].

   [RFC2680] defines the one-way packet loss metrics between the IP
   hosts.  If the packet can reach the destination host, the data loss
   value is 0.  If the packet is lost during transmission, the data loss
   value is 1[RFC2680].  The host records whether the business packet is
   lost or not during the measurement cycle and it can calculate the
   unidirectional IP packet loss for this period of time.  FPM uses this
   method to get statistics of the business packet loss.  In the
   measurement process, FPM Initiator uses a counter to count the actual
   number of packets sent by it.  FPM Responder records whether business
   packet has arrived or not, if the packet reaches the FPM Responder,
   business packet loss value is 0; if the packet is lost during
   transmission, the business packet loss value is 1.  FPM Responder
   cumulates the loss value, and calculates the number of packets
   actually received.  The above parameters, carried by measurement
   packets, are exchanged between both sides, used to calculate packet
   loss and loss rate in FM Initiator ultimately.

   As described above, measurement packet only needs to carry statistics
   information of both sides in the FPM.  The measurement packet size
   and the transmission frequency are relatively small, so FPM will not
   cause too much impact on the original business.

   Similarly, the FPM methods can also measure metrics defined in
   [RFC3393] and [RFC4737].

   Note that the statistics is carried in the IP layer.  They are
   calculated before packet fragmentation at the FPM Initiator and after
   packet reassembly at the FPM Responder.  If both the FPM Initiator
   and the FPM Responder support IPSec, the parameter statistics,
   including number of bytes/packets, Delay and ipdv (IP Packet Delay
   Variation), are carried before IPSec process is executed.  If IPHC
   (IP Header Compression) is used at the two ends, the parameter
   statistics should be carried before IPHC.

7.1.  Example of loss rate

   Using the statistics of loss data, we can calculate the value of loss
   rate.  The flowing is an example.

   When the dth BR packet is received at the FPM Initiator, the loss
   rate plr based on the dth BR packet and (d-1)th BR packet is
   calculated as:






Sun, et al.              Expires April 15, 2013                [Page 16]

Internet-Draft     Flow-based Performance Measurement       October 2012


                       (SPN(d)-SPN(d-1))-(RPN(d)-RPN(d-1))
                 plrd = -------------------------------------
                                 SPN(d)-SPN(d-1)



   (SPN(d)-SPN(d-1))indicates the number of service packets sent by the
   FPM Initiator during dth measurement, and (RPN(d)-RPN(d-1)) indicates
   the actual number of service packets received by the FPM Responder
   during dth measurement.

   The loss rate needs to be aggregated over the reporting interval.
   Let's assume that N BR packets were received during the dth reporting
   interval.  Therefore, the packet loss rate for that interval can be
   calculated as:

                                   1      N
                           PLRd = --- *  sum plrd
                                   N     d=1




8.  Exception Handling

8.1.  FM/BR Packet Loss

   In some cases the FM or BR packet may be lost in transit, then no
   statistics can be obtained from this round of measurement.

   So the loss rate of the mth measurement can be calculated as:

                        (SPN(m)-SPN(n))-(RPN(m)-RPN(n))
                plrd = -------------------------------------
                                SPN(m)-SPN(n)


   where m is the SN of the BR packet currently received and n is the SN
   of the latest BR received.

8.2.  Packet Reordering

   In the receive side if the received packets are out of order, the FM
   packet may arrive earlier than the last service packet sent before
   it, or later than the first service packet sent after it.  Then
   statistical error of packet loss will be result in.

   There are several reasons for packet reordering.  When a network node



Sun, et al.              Expires April 15, 2013                [Page 17]

Internet-Draft     Flow-based Performance Measurement       October 2012


   receives a fragmented IP packet, it has to reassemble the datagram
   and the extra time spent on the IP fragment reassembly may cause
   packet reordering; Some load sharing schemes for network (e.g.  ECMP,
   ML-PPP) may create multipath for packets, which can also cause packet
   reordering; Multi-core CPU processing and multi-threading of packets
   in the sender and receiver may also lead to packet reordering.

   In the simplest case that data transmits along a single path, DSCP
   can be used to classify the flow in order to avoid the packet
   reordering.

   Note that the packet loss calculation is based on sample statistic,
   and by increasing the monitoring period, the error caused by the
   occasional packet reordering can be smoothed.


9.  Use Case

   This section describes a typical scene using the measurement method.
   The wireless mobile backhaul networks based on IP, share the
   available capacity between the connected eNodeBs.  Compared to the
   traditional SDH/ATM transport network, in IP-RAN, the data transfer
   speed is unstable and data transfer is lacks of QoS guarantee and
   there is no perfect testing method on packet loss, delay and ipdv (IP
   Packet Delay Variation).  So it is necessary for the nodes in the RAN
   side to detect the network quality of the connection between RNC and
   NodeB or eNodeB and SAE.

   Take the eNodeB and SAE for example; in order to make sure that the
   amount of generated traffic is aligned with the available capacity,
   it is important that the eNodeB probes the backhaul network to
   determine the actual delay, jitter and packet loss encountered by
   typical packets.  The proposed method in this document can be used to
   detect the IP Performance of the connections between the eNB and
   S-GW.

   As shown below, FPM Initiator is deployed in eNodeB, and FPM
   Responder is deployed in S-GW.













Sun, et al.              Expires April 15, 2013                [Page 18]

Internet-Draft     Flow-based Performance Measurement       October 2012


         ________________                        _________________
        |                |     connection       |                 |
        |                |  <---------------->  |                 |
        |                |         FM           |                 |
        |     eNodeB     |  ----------------->  |      S-GW       |
        |                |         BR           |                 |
        |----------------|  <-----------------  |-----------------|
        :                :         ...          :                 :
        :  FPM Initiator :    disconnection     :   FPM Responder :
        :................:  <---------------->  :.................:



               Figure 2: Example of FPM in backhaul network

   At the eNodeB, FM packets are generated periodically with the source
   and destination IP addresses, and DSCP class.  At the S-GW, after
   receiving the FM packets, BR packets are constructed.  They are then
   forwarded back to the eNodeB.

   We sent a similar packet of OAM, packet size and the transmission
   frequency is relatively small, so FPM will not cause too much impact
   on the original business between eNodeB and S-GW.  Since the
   measurement packet is constructed according to the business packet,
   the network path of measurement packet and business packet is the
   same (Tunneling is used for the data transmission between eNodeB and
   S-GW, the parameter statistics of FPM should be carried before the
   tunnel.  Measurement packet and business packet are encapsulated into
   a same tunnel and they are passed in the same path).  The data
   obtained through FPM can represent the performance of the business
   flows between the eNodeB and the S-GW accurately.

   Upon receiving the BR packets at the logical port the eNodeB exactly
   knows the current congestion extent in transport network.  The
   bandwidth of the logical port is reduced if congestion is detected
   according to the measurement result; otherwise, the bandwidth is
   increased slowly.


10.  Security Considerations

   To be defined.


11.  IANA Considerations

   The destination port number of the newly defined packets for
   measurement needs to be assigned by the IANA.



Sun, et al.              Expires April 15, 2013                [Page 19]

Internet-Draft     Flow-based Performance Measurement       October 2012


12.  Acknowledgments

   The authors gratefully acknowledge reviews and contributions from
   Peter McCann.

   The authors would like thank Xiangyang Gong and Xirong Que for their
   technical guidance towards to this draft.

   The authors would like to thank Yuehui Ding for editing problem
   statement.


13.  References

13.1.  Normative Reference

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2679]  Almes, G., Kalidindi, S., and M. Zekauskas, "A One-way
              Delay Metric for IPPM", RFC 2679, September 1999.

   [RFC2680]  Almes, G., Kalidindi, S., and M. Zekauskas, "A One-way
              Packet Loss Metric for IPPM", RFC 2680, September 1999.

   [RFC5905]  Mills, D., Martin, J., Burbank, J., and W. Kasch, "Network
              Time Protocol Version 4: Protocol and Algorithms
              Specification", RFC 5905, June 2010.

13.2.  Informative References

   [RFC2330]  Paxson, V., Almes, G., Mahdavi, J., and M. Mathis,
              "Framework for IP Performance Metrics", RFC 2330,
              May 1998.

   [RFC3393]  Demichelis, C. and P. Chimento, "IP Packet Delay Variation
              Metric for IP Performance Metrics (IPPM)", RFC 3393,
              November 2002.

   [RFC4656]  Shalunov, S., Teitelbaum, B., Karp, A., Boote, J., and M.
              Zekauskas, "A One-way Active Measurement Protocol
              (OWAMP)", RFC 4656, September 2006.

   [RFC4737]  Morton, A., Ciavattone, L., Ramachandran, G., Shalunov,
              S., and J. Perser, "Packet Reordering Metrics", RFC 4737,
              November 2006.

   [RFC5357]  Hedayat, K., Krzanowski, R., Morton, A., Yum, K., and J.



Sun, et al.              Expires April 15, 2013                [Page 20]

Internet-Draft     Flow-based Performance Measurement       October 2012


              Babiarz, "A Two-Way Active Measurement Protocol (TWAMP)",
              RFC 5357, October 2008.


Authors' Addresses

   Lishun Sun
   Beijing University of Posts and Telecommunications
   Xitucheng road 10
   Haidian District, Beijing  100876
   P. R. China

   Email: lishunsun@Gmail.com


   Fang Yu
   Huawei Technologies
   Huawei Building, Q20 No.156 Beiqing Rd.Z-park
   Haidian District, Beijing  100095
   P. R. China

   Email: grace.yufang@huawei.com


   Wendong Wang
   Beijing University of Posts and Telecommunications
   Xitucheng road 10
   Haidian District, Beijing  100876
   P. R. China

   Email: wdwang@bupt.edu.cn




















Sun, et al.              Expires April 15, 2013                [Page 21]