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]