draft-ietf-ippm-ipsec-10.txt   draft-ietf-ippm-ipsec-11.txt 
IPPM WG K. Pentikousis, Ed. IPPM WG K. Pentikousis, Ed.
Internet-Draft EICT Internet-Draft EICT
Intended status: Standards Track E. Zhang Updates: 4656, 5357 (if approved) E. Zhang
Expires: November 30, 2015 Y. Cui Intended status: Standards Track Y. Cui
Huawei Technologies Expires: February 27, 2016 Huawei Technologies
May 29, 2015 August 26, 2015
IKEv2-derived Shared Secret Key for O/TWAMP IKEv2-derived Shared Secret Key for O/TWAMP
draft-ietf-ippm-ipsec-10 draft-ietf-ippm-ipsec-11
Abstract Abstract
The One-way Active Measurement Protocol (OWAMP) and Two-Way Active The One-way Active Measurement Protocol (OWAMP) and Two-Way Active
Measurement Protocol (TWAMP) security mechanisms require that both Measurement Protocol (TWAMP) security mechanisms require that both
the client and server endpoints possess a shared secret. This the client and server endpoints possess a shared secret. This
document describes the use of keys derived from an IKEv2 security document describes the use of keys derived from an IKEv2 security
association (SA) as the shared key in O/TWAMP. If the shared key can association (SA) as the shared key in O/TWAMP. If the shared key can
be derived from the IKEv2 SA, O/TWAMP can support certificate-based be derived from the IKEv2 SA, O/TWAMP can support certificate-based
key exchange, which would allow for more operational flexibility and key exchange, which would allow for more operational flexibility and
skipping to change at page 1, line 40 skipping to change at page 1, line 40
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on November 30, 2015. This Internet-Draft will expire on February 27, 2016.
Copyright Notice Copyright Notice
Copyright (c) 2015 IETF Trust and the persons identified as the Copyright (c) 2015 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. Scope and Applicability . . . . . . . . . . . . . . . . . . . 4 3. Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
4. O/TWAMP Security . . . . . . . . . . . . . . . . . . . . . . 4 4. O/TWAMP Security . . . . . . . . . . . . . . . . . . . . . . 4
4.1. O/TWAMP-Control Security . . . . . . . . . . . . . . . . 5 4.1. O/TWAMP-Control Security . . . . . . . . . . . . . . . . 4
4.2. O/TWAMP-Test Security . . . . . . . . . . . . . . . . . . 6 4.2. O/TWAMP-Test Security . . . . . . . . . . . . . . . . . . 6
4.3. O/TWAMP Security Root . . . . . . . . . . . . . . . . . . 7 4.3. O/TWAMP Security Root . . . . . . . . . . . . . . . . . . 6
5. O/TWAMP for IPsec Networks . . . . . . . . . . . . . . . . . 7 5. O/TWAMP for IPsec Networks . . . . . . . . . . . . . . . . . 7
5.1. Shared Key Derivation . . . . . . . . . . . . . . . . . . 7 5.1. Shared Key Derivation . . . . . . . . . . . . . . . . . . 7
5.2. Server Greeting Message Update . . . . . . . . . . . . . 8 5.2. Server Greeting Message Update . . . . . . . . . . . . . 8
5.3. Set-Up-Response Update . . . . . . . . . . . . . . . . . 9 5.3. Set-Up-Response Update . . . . . . . . . . . . . . . . . 9
5.4. O/TWAMP over an IPsec tunnel . . . . . . . . . . . . . . 11 5.4. O/TWAMP over an IPsec tunnel . . . . . . . . . . . . . . 10
6. Security Considerations . . . . . . . . . . . . . . . . . . . 11 6. Security Considerations . . . . . . . . . . . . . . . . . . . 10
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 11 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10
8. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 12 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 12
9. References . . . . . . . . . . . . . . . . . . . . . . . . . 12 9. References . . . . . . . . . . . . . . . . . . . . . . . . . 12
9.1. Normative References . . . . . . . . . . . . . . . . . . 12 9.1. Normative References . . . . . . . . . . . . . . . . . . 12
9.2. Informative References . . . . . . . . . . . . . . . . . 13 9.2. Informative References . . . . . . . . . . . . . . . . . 13
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 13 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 14
1. Introduction 1. Introduction
The One-way Active Measurement Protocol (OWAMP) [RFC4656] and the The One-way Active Measurement Protocol (OWAMP) [RFC4656] and the
Two-Way Active Measurement Protocol (TWAMP) [RFC5357] can be used to Two-Way Active Measurement Protocol (TWAMP) [RFC5357] can be used to
measure network performance parameters such as latency, bandwidth, measure network performance parameters such as latency, bandwidth,
and packet loss by sending probe packets and monitoring their and packet loss by sending probe packets and monitoring their
experience in the network. In order to guarantee the accuracy of experience in the network. In order to guarantee the accuracy of
network measurement results, security aspects must be considered. network measurement results, security aspects must be considered.
Otherwise, attacks may occur and the authenticity of the measurement Otherwise, attacks may occur and the authenticity of the measurement
results may be violated. For example, if no protection is provided, results may be violated. For example, if no protection is provided,
an adversary in the middle may modify packet timestamps, thus an adversary in the middle may modify packet timestamps, thus
altering the measurement results. altering the measurement results.
The currently-standardized O/TWAMP security mechanism [RFC4656] According to [RFC4656] [RFC5357], the O/TWAMP security mechanism
[RFC5357] requires that endpoints (i.e. both the client and the requires that endpoints (i.e. both the client and the server) possess
server) possess a shared secret. In today's network deployments, a shared secret. In today's network deployments, however, the use of
however, the use of pre-shared keys is far from optimal. For pre-shared keys is far from optimal. For example, in wireless
example, in wireless infrastructure networks, certain network infrastructure networks, certain network elements, which can be seen
elements, which can be seen as the two endpoints from an O/TWAMP as the two endpoints from an O/TWAMP perspective, support
perspective, support certificate-based security. For instance, certificate-based security. For instance, consider the case in which
consider the case in which one wants to measure IP performance one wants to measure IP performance between a E-UTRAN Evolved Node B
between a E-UTRAN Evolved Node B (eNB) and Security Gateway (SeGW). (eNB) and Security Gateway (SeGW), both of which are 3GPP Long Term
Both eNB and SeGW are 3GPP Long Term Evolution (LTE) nodes and Evolution (LTE) nodes and support certificate mode and the Internet
support certificate mode and the Internet Key Exchange Protocol Key Exchange Protocol Version 2 (IKEv2).
Version 2 (IKEv2).
The O/TWAMP security mechanism specified in [RFC4656] [RFC5357] only The O/TWAMP security mechanism specified in [RFC4656] [RFC5357]
supports the pre-shared key mode hindering large scale deployment of supports the pre-shared key mode only, hindering large-scale
O/TWAMP. Furthermore, deployment and management of "shared secrets" deployment of O/TWAMP: provisioning and management of "shared
for massive equipment installation consumes a tremendous amount of secrets" for massive deployments consumes a tremendous amount of
effort and is prone to human error. At the same time, recent trends effort and is prone to human error. At the same time, recent trends
point to wider Internet Key Exchange Protocol Version 2 (IKEv2) point to wider IKEv2 deployment which, in turn, calls for mechanisms
deployment which, in turn, calls for mechanisms and methods that and methods that enable tunnel end-users, as well as operators, to
enable tunnel end-users, as well as operators, to measure one-way and measure one-way and two-way network performance in a standardized
two-way network performance in a standardized manner. manner.
With IKEv2 widely deployed, employing shared keys derived from IKEv2 With IKEv2 widely deployed, employing shared keys derived from an
security association (SA) can be considered as a viable alternative IKEv2 security association (SA) can be considered a viable
through the method described in this document. If the shared key can alternative through the method described in this document. If the
be derived from the IKEv2 SA, O/TWAMP can support certificate-based shared key can be derived from the IKEv2 SA, O/TWAMP can support
key exchange and practically increase operational flexibility and certificate-based key exchange and practically increase operational
efficiency. The use of IKEv2 also makes it easier to extend flexibility and efficiency. The use of IKEv2 also makes it easier to
automatic key management. extend automatic key management.
In general, O/TWAMP measurement packets can be transmitted inside the In general, O/TWAMP measurement packets can be transmitted inside the
IPsec tunnel, as it occurs with typical user traffic, or transmitted IPsec tunnel, as it occurs with typical user traffic, or transmitted
outside the IPsec tunnel. This may depend on the operator's policy outside the IPsec tunnel. This may depend on the operator's policy
and the performance evaluation goal, and is orthogonal to the and the performance evaluation goal, and is orthogonal to the
mechanism described in this document. When IPsec is deployed, mechanism described in this document. When IPsec is deployed,
protecting O/TWAMP traffic in unauthenticated mode using IPsec is one protecting O/TWAMP traffic in unauthenticated mode using IPsec is one
option. Another option is to protect O/TWAMP traffic using the O/ option. Another option is to protect O/TWAMP traffic using the O/
TWAMP layer security established using the Pre-Shared Key (PSK) TWAMP layer security established using the Pre-Shared Key (PSK)
derived from IKEv2 but bypassing the IPsec tunnel. Protecting derived from IKEv2 and bypassing the IPsec tunnel.
unauthenticated O/TWAMP control and/or test traffic via
Protecting unauthenticated O/TWAMP control and/or test traffic via
Authentication Header (AH) [RFC4302] or Encapsulating Security Authentication Header (AH) [RFC4302] or Encapsulating Security
Payload (ESP) [RFC4303] cannot provide various security options, Payload (ESP) [RFC4303] cannot provide various security options,
e.g. it cannot authenticate part of a O/TWAMP packet as mentioned in e.g. it cannot authenticate part of a O/TWAMP packet as mentioned in
[RFC4656]. [RFC4656]. For measuring latency, a timestamp is carried in O/TWAMP
test traffic. The sender has to fetch the timestamp, encrypt it, and
For measuring latency, a timestamp is carried in O/TWAMP test send it. When the mechanism described in this document is used,
traffic. The sender has to fetch the timestamp, encrypt it, and send partial authentication of O/TWAMP packets is possible and therefore
it. When the mechanism described in this document is used, partial the middle step can be skipped, potentially improving accuracy as the
authentication of O/TWAMP packets is possible and therefore the
middle step can be skipped, potentially improving accuracy as the
sequence number can be encrypted and authenticated before the sequence number can be encrypted and authenticated before the
timestamp is fetched. The receiver obtains the timestamp without the timestamp is fetched. The receiver obtains the timestamp without the
need for the corresponding decryption step. In such cases, need for the corresponding decryption step. In such cases,
protecting O/TWAMP traffic using O/TWAMP layer security but bypassing protecting O/TWAMP traffic using O/TWAMP layer security but bypassing
the IPsec tunnel has its advantages. the IPsec tunnel has its advantages.
This document specifies a method for enabling network measurements This document specifies a method for enabling network measurements
between a TWAMP client and a TWAMP server, as discussed in Section 3. between a TWAMP client and a TWAMP server. In short, the shared key
In short, the shared key used for securing TWAMP traffic is derived used for securing TWAMP traffic is derived from IKEv2 [RFC7296].
from IKEv2 [RFC7296]. From an operations and management perspective TWAMP implementations signal the use of this method by setting
IKEv2Derived (see Section 7). IKEv2-derived keys SHOULD be used
instead of shared secrets when O/TWAMP is employed in a deployment
using IKEv2. From an operations and management perspective
[RFC5706], the mechanism described in this document requires that [RFC5706], the mechanism described in this document requires that
both the TWAMP Control-Client and Server support IPsec. both the TWAMP Control-Client and Server support IPsec.
IKEv2-derived keys SHOULD be used instead of shared secrets when O/
TWAMP is employed in a deployment using IKEv2.
After clarifying the terminology and scope in the subsequent The remainder of this document is organized as follows. Section 4
sections, the remainder of this document is organized as follows. summarizes O/TWAMP protocol operation with respect to security.
Section 4 summarizes O/TWAMP protocol operation with respect to Section 5 presents the method for binding TWAMP and IKEv2 for network
security. Section 5 presents the method for binding TWAMP and IKEv2 measurements between the client and the server which both support
for network measurements between the client and the server which both IKEv2. Finally, Section 6 discusses the security considerations
support IKEv2. Finally, Section 6 discusses the security arising from the proposed mechanisms.
considerations arising from the proposed mechanisms.
2. Terminology 2. Terminology
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC2119]. document are to be interpreted as described in [RFC2119].
3. Scope and Applicability 3. Scope
TWAMP implementations signal the use of this method by setting
IKEv2Derived (see Section 7)
Although the control procedures described in this document are This document specifies a method using keys derived from an IKEv2
applicable to OWAMP per se, the lack of an established IANA registry security association (SA) as the shared key in O/TWAMP. O/TWAMP
for OWAMP Mode values akin to that listed in Section 7 technically implementations signal the use of this method by setting IKEv2Derived
prevents us from extending OWAMP Mode values. Therefore, independent (see Section 7).
OWAMP implementations SHOULD be checked for full compatibility with
respect to the use of this Mode value. Until an IANA registry for
OWAMP Mode values is established, the use of this feature in OWAMP
implementations MUST be arranged privately among consenting OWAMP
users.
4. O/TWAMP Security 4. O/TWAMP Security
Security for O/TWAMP-Control and O/TWAMP-Test are briefly reviewed in Security for O/TWAMP-Control and O/TWAMP-Test are briefly reviewed in
the following subsections. the following subsections.
4.1. O/TWAMP-Control Security 4.1. O/TWAMP-Control Security
O/TWAMP uses a simple cryptographic protocol which relies on O/TWAMP uses a simple cryptographic protocol which relies on
skipping to change at page 6, line 27 skipping to change at page 5, line 52
Figure 1: Initiation of O/TWAMP-Control Figure 1: Initiation of O/TWAMP-Control
Encryption uses a key derived from the shared secret associated with Encryption uses a key derived from the shared secret associated with
KeyID. In the authenticated, encrypted and mixed modes, all further KeyID. In the authenticated, encrypted and mixed modes, all further
communication is encrypted using the AES Session-key and communication is encrypted using the AES Session-key and
authenticated with the HMAC Session-key. After receiving the Set-Up- authenticated with the HMAC Session-key. After receiving the Set-Up-
Response the Server responds with a Server-Start message containing Response the Server responds with a Server-Start message containing
the Server-IV. The Control-Client encrypts everything it transmits the Server-IV. The Control-Client encrypts everything it transmits
through the just-established O/TWAMP-Control connection using stream through the just-established O/TWAMP-Control connection using stream
encryption with Client- IV as the IV. Correspondingly, the Server encryption with Client-IV as the IV. Correspondingly, the Server
encrypts its side of the connection using Server-IV as the IV. The encrypts its side of the connection using Server-IV as the IV. The
IVs themselves are transmitted in cleartext. Encryption starts with IVs themselves are transmitted in cleartext. Encryption starts with
the block immediately following that containing the IV. the block immediately following that containing the IV.
The AES Session-key and HMAC Session-key are generated randomly by The AES Session-key and HMAC Session-key are generated randomly by
the Control-Client. The HMAC Session-key is communicated along with the Control-Client. The HMAC Session-key is communicated along with
the AES Session-key during O/TWAMP-Control connection setup. The the AES Session-key during O/TWAMP-Control connection setup. The
HMAC Session-key is derived independently of the AES Session-key. HMAC Session-key is derived independently of the AES Session-key.
4.2. O/TWAMP-Test Security 4.2. O/TWAMP-Test Security
The O/TWAMP-Test protocol runs over UDP, using the Session-Sender and The O/TWAMP-Test protocol runs over UDP, using the Session-Sender and
Session-Reflector IP and port numbers that were negotiated during the Session-Reflector IP and port numbers that were negotiated during the
Request-Session exchange. O/TWAMP- Test has the same mode with O/ Request-Session exchange. O/TWAMP-Test has the same mode with O/
TWAMP-Control and all O/TWAMP-Test sessions inherit the corresponding TWAMP-Control and all O/TWAMP-Test sessions inherit the corresponding
O/TWAMP-Control session mode except when operating in mixed mode. O/TWAMP-Control session mode except when operating in mixed mode.
The O/TWAMP-Test packet format is the same in authenticated and The O/TWAMP-Test packet format is the same in authenticated and
encrypted modes. The encryption and authentication operations are, encrypted modes. The encryption and authentication operations are,
however, different. Similarly with the respective O/TWAMP-Control however, different. Similarly with the respective O/TWAMP-Control
session, each O/TWAMP-Test session has two keys: an AES Session-key session, each O/TWAMP-Test session has two keys: an AES Session-key
and an HMAC Session-key. However, there is a difference in how the and an HMAC Session-key. However, there is a difference in how the
keys are obtained: keys are obtained:
O/TWAMP-Control: the keys are generated by the Control-Client and O/TWAMP-Control: the keys are generated by the Control-Client and
communicated to the Server during the control connection communicated to the Server during the control connection
establishment with the Set-Up-Response message (as part of establishment with the Set-Up-Response message (as part of
the Token). the Token).
O/TWAMP-Test: the keys are derived from the O/TWAMP-Control keys and O/TWAMP-Test: the keys are derived from the O/TWAMP-Control keys and
the session identifier (SID), which serve as inputs of the the session identifier (SID), which serve as inputs to the
key derivation function (KDF). The O/TWAMP-Test AES Session- key derivation function (KDF). The O/TWAMP-Test AES Session-
key is generated using the O/TWAMP- Control AES Session-key, key is generated using the O/TWAMP-Control AES Session-key,
with the 16-octet session identifier (SID), for encrypting with the 16-octet session identifier (SID), for encrypting
and decrypting the packets of the particular O/TWAMP-Test and decrypting the packets of the particular O/TWAMP-Test
session. The O/TWAMP-Test HMAC Session-key is generated session. The O/TWAMP-Test HMAC Session-key is generated
using the O/TWAMP-Control HMAC Session-key, with the 16-octet using the O/TWAMP-Control HMAC Session-key, with the 16-octet
session identifier (SID), for authenticating the packets of session identifier (SID), for authenticating the packets of
the particular O/TWAMP-Test session. the particular O/TWAMP-Test session.
4.3. O/TWAMP Security Root 4.3. O/TWAMP Security Root
As discussed above, the AES Session-key and HMAC Session-key used by As discussed above, the O/TWAMP-Test AES Session-key and HMAC
the O/TWAMP-Test protocol are derived from the AES Session-key and Session-key are derived, respectively, from the O/TWAMP-Control AES
HMAC Session-key which are used in the O/TWAMP-Control protocol. The Session-key and HMAC Session-key. The AES Session-key and HMAC
AES Session-key and HMAC Session-key used in the O/TWAMP-Control Session-key used in the O/TWAMP-Control protocol are generated
protocol are generated randomly by the Control-Client, and encrypted randomly by the Control-Client, and encrypted with the shared secret
with the shared secret associated with KeyID. Therefore, the associated with KeyID. Therefore, the security root is the shared
security root is the shared secret key. Thus, for large deployments, secret key. Thus, for large deployments, key provision and
key provision and management may become overly complicated. management may become overly complicated. Comparatively, a
Comparatively, a certificate-based approach using IKEv2 can certificate-based approach using IKEv2 can automatically manage the
automatically manage the security root and solve this problem, as we security root and solve this problem, as we explain in Section 5.
explain in Section 5.
5. O/TWAMP for IPsec Networks 5. O/TWAMP for IPsec Networks
This section presents a method of binding O/TWAMP and IKEv2 for This section presents a method of binding O/TWAMP and IKEv2 for
network measurements between a client and a server which both support network measurements between a client and a server which both support
IPsec. In short, the shared key used for securing O/TWAMP traffic is IPsec. In short, the shared key used for securing O/TWAMP traffic is
derived using IKEv2 [RFC7296]. derived using IKEv2 [RFC7296].
5.1. Shared Key Derivation 5.1. Shared Key Derivation
In the authenticated, encrypted and mixed modes, the shared secret In the authenticated, encrypted and mixed modes, the shared secret
key MUST be derived from the IKEv2 Security Association (SA). Note key MUST be derived from the IKEv2 Security Association (SA). Note
that we explicitly opt to derive the shared secret key from the IKEv2 that we explicitly opt to derive the shared secret key from the IKEv2
SA, rather than the child SA, since the use case whereby an IKEv2 SA SA, rather than the child SA, since it is possible that an IKEv2 SA
can be created without generating any child SA is possible [RFC6023]. is created without generating any child SA [RFC6023].
When the shared secret key is derived from the IKEv2 SA, SK_d must be When the shared secret key is derived from the IKEv2 SA, SK_d must be
generated first. SK_d must be computed as per [RFC7296]. generated first. SK_d must be computed as per [RFC7296].
The shared secret key MUST be generated as follows: The shared secret key MUST be generated as follows:
Shared secret key = prf( SK_d, "IPPM" ) Shared secret key = prf( SK_d, "IPPM" )
Wherein the string "IPPM" is encoded in ASCII and "prf" is a Wherein the string "IPPM" is encoded in ASCII and "prf" is a
pseudorandom function. pseudorandom function.
skipping to change at page 8, line 44 skipping to change at page 8, line 19
feasible, they are in fact implementation-specific. feasible, they are in fact implementation-specific.
If rekeying for the IKEv2 SA or deletion of the IKEv2 SA occurs, the If rekeying for the IKEv2 SA or deletion of the IKEv2 SA occurs, the
corresponding shared secret key generated from the SA MUST continue corresponding shared secret key generated from the SA MUST continue
to be used until the O/TWAMP session terminates. to be used until the O/TWAMP session terminates.
5.2. Server Greeting Message Update 5.2. Server Greeting Message Update
To trigger a binding association between the key generated from IKEv2 To trigger a binding association between the key generated from IKEv2
and the O/TWAMP shared secret key, the Modes field in the Server and the O/TWAMP shared secret key, the Modes field in the Server
Greeting Message (Figure 2) will need to allow for support of key Greeting Message (Figure 2) must support key derivation as discussed
derivation as discussed in Section 5.1. Therefore, when this method in Section 5.1. Support for deriving the shared key from the IKEv2
is used, the Modes value extension MUST be supported. Support for SA is indicated by setting IKEv2Derived (see Section 7). Therefore,
deriving the shared key from the IKEv2 SA is indicated by setting when this method is used, the Modes value extension MUST be
IKEv2Derived (see Section 7). supported.
0 1 2 3 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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| Unused (12 octets) | | Unused (12 octets) |
| | | |
|+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-++-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Modes | | Modes |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 10, line 4 skipping to change at page 9, line 25
purely [RFC4656]/[RFC5357] compatible client. purely [RFC4656]/[RFC5357] compatible client.
5.3. Set-Up-Response Update 5.3. Set-Up-Response Update
The Set-Up-Response Message Figure 3 is updated as follows. When a The Set-Up-Response Message Figure 3 is updated as follows. When a
O/TWAMP Control-Client implementing this method receives a Server O/TWAMP Control-Client implementing this method receives a Server
Greeting indicating support for Mode IKEv2Derived it SHOULD reply to Greeting indicating support for Mode IKEv2Derived it SHOULD reply to
the O/TWAMP Server with a Set-Up response that indicates so. For the O/TWAMP Server with a Set-Up response that indicates so. For
example, a compatible O/TWAMP Control-Client choosing the example, a compatible O/TWAMP Control-Client choosing the
authenticated mode with IKEv2 shared secret key derivation should set authenticated mode with IKEv2 shared secret key derivation should set
Mode to 130, i.e. set the bits in positions 1 and 7 to one (see Mode bits as per Section 7.
Section 7).
0 1 2 3 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 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Mode | | Mode |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| Key ID (80 octets) | | Key ID (80 octets) |
| | | |
| | | |
skipping to change at page 10, line 31 skipping to change at page 9, line 51
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
| Client-IV (12 octets) | | Client-IV (12 octets) |
| | | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Figure 3: Set-Up-Response Message Figure 3: Set-Up-Response Message
The Security Parameter Index (SPI)(see [RFC4301] [RFC7296]) uniquely The Security Parameter Index (SPI)(see [RFC4301] [RFC7296]) uniquely
identifies the Security Association (SA). If the Control-Client identifies the Security Association (SA). If the Control-Client
supports the derivation of shared secret key from IKEv2 SA, it will supports IKEv2 SA shared secret key derivation, it will choose the
choose the corresponding mode value and carry SPIi and SPIr in the corresponding Mode value and carry SPIi and SPIr in the Key ID field.
Key ID field. SPIi and SPIr MUST be included in the Key ID field of
the Set-Up-Response Message to indicate the IKEv2 SA from which the
O/TWAMP shared secret key derived from. The length of SPI is 8
octets. Therefore, the first 8 octets of Key ID field MUST carry
SPIi and the second 8 octets MUST carry SPIr. The remaining bits of
the Key ID field MUST be set to zero.
A O/TWAMP Server implementation of this method, MUST obtain the SPIi SPIi and SPIr MUST be included in the Key ID field of the Set-Up-
and SPIr from the first 16 octets and ignore the remaining octets of Response Message to indicate the IKEv2 SA from which the O/TWAMP
the Key ID field. Then, the Control-Client and the Server can derive shared secret key derived from. The length of SPI is 8 octets.
the shared secret key based on the Mode value and SPI. If the O/ Therefore, the first 8 octets of Key ID field MUST carry SPIi and the
TWAMP Server cannot find the IKEv2 SA corresponding to the SPIi and second 8 octets MUST carry SPIr. The remaining bits of the Key ID
SPIr received, it MUST log the event for operational management field MUST be set to zero.
purposes. In addition, the O/TWAMP Server SHOULD set the Accept
field of the Server-Start message to the value 6 to indicate that the A O/TWAMP Server implementation MUST obtain the SPIi and SPIr from
Server is not willing to conduct further transactions in this O/ the first 16 octets and ignore the remaining octets of the Key ID
TWAMP-Control session since it can not find the corresponding IKEv2 field. Then, the Control-Client and the Server can derive the shared
SA. secret key based on the Mode value and SPI. If the O/TWAMP Server
cannot find the IKEv2 SA corresponding to the SPIi and SPIr received,
it MUST log the event for operational management purposes. In
addition, the O/TWAMP Server SHOULD set the Accept field of the
Server-Start message to the value 6 to indicate that the Server is
not willing to conduct further transactions in this O/TWAMP-Control
session since it can not find the corresponding IKEv2 SA.
5.4. O/TWAMP over an IPsec tunnel 5.4. O/TWAMP over an IPsec tunnel
IPsec Authentication Header (AH) [RFC4302] and Encapsulating Security IPsec Authentication Header (AH) [RFC4302] and Encapsulating Security
Payload (ESP) [RFC4303] provide confidentiality and data integrity to Payload (ESP) [RFC4303] provide confidentiality and data integrity to
IP datagrams. An IPsec tunnel can be used to provide the protection IP datagrams. An IPsec tunnel can be used to provide the protection
needed for O/TWAMP Control and Test packets, even if the peers choose needed for O/TWAMP Control and Test packets, even if the peers choose
the unauthenticated mode of operation. In order to ensure the unauthenticated mode of operation. In order to ensure
authenticity and security, O/TWAMP packets between two IKEv2 systems authenticity and security, O/TWAMP packets between two IKEv2 systems
SHOULD be configured to use the corresponding IPsec tunnel running SHOULD be configured to use the corresponding IPsec tunnel running
skipping to change at page 11, line 31 skipping to change at page 10, line 49
The strength of a key derived from a Diffie-Hellman exchange using The strength of a key derived from a Diffie-Hellman exchange using
any of the groups defined here depends on the inherent strength of any of the groups defined here depends on the inherent strength of
the group, the size of the exponent used, and the entropy provided by the group, the size of the exponent used, and the entropy provided by
the random number generator employed. The strength of all keys and the random number generator employed. The strength of all keys and
implementation vulnerabilities, particularly Denial of Service (DoS) implementation vulnerabilities, particularly Denial of Service (DoS)
attacks are as defined in [RFC7296]. attacks are as defined in [RFC7296].
7. IANA Considerations 7. IANA Considerations
During the production of this document, the authors and reviewers During the production of this document, the authors and reviewers
noticed that the TWAMP-Modes registry, which should describe a noticed that the TWAMP-Modes registry should describe a field of
bitfield of flags, instead is defined as a registry of integer single bit position flags, rather than the current registry
values. In addition, the Semantics Definition column seems to have construction with assignment of integer values. In addition, the
spurious information in it. The registry should be changed to Semantics Definition column seems to have spurious information in it.
correct these issues, as follows:
The registry should be re-formatted to simplify future assignments.
Thus, the current contents of the TWAMP-Modes Registry should appear
as follows:
Bit|Description |Semantics |Reference| Bit|Description |Semantics |Reference|
| |Definition | | Pos| |Definition | |
---|-------------------------------------------|------------|---------| ---|-------------------------------------------|------------|---------|
0 Unauthenticated Section 3.1 [RFC4656] 0 Unauthenticated Section 3.1 [RFC4656]
1 Authenticated Section 3.1 [RFC4656] 1 Authenticated Section 3.1 [RFC4656]
2 Encrypted Section 3.1 [RFC4656] 2 Encrypted Section 3.1 [RFC4656]
3 Unauth.TEST protocol,Encrypted CONTROL Section 3.1 [RFC5618] 3 Unauth.TEST protocol,Encrypted CONTROL Section 3.1 [RFC5618]
4 Individual Session Control [RFC5938] 4 Individual Session Control [RFC5938]
5 Reflect Octets Capability [RFC6038] 5 Reflect Octets Capability [RFC6038]
6 Symmetrical Size Sender Test Packet Format [RFC6038] 6 Symmetrical Size Sender Test Packet Format [RFC6038]
Figure 4: TWAMP Modes registry Figure 4: TWAMP Modes registry
In addition, this document adds a new entry to this registry: The new description and registry management instructions follow.
Registry Specification: TWAMP-Modes are specified in TWAMP Server
Greeting messages and Set-up Response messages consistent with
section 3.1 of [RFC5357]. Modes are indicated by setting single bits
in the 32-bit Modes Field.
Registry Management: Because the "TWAMP-Modes" are based on only 32
bit positions with each position conveying a unique feature, and
because TWAMP is an IETF protocol, this registry must be updated only
by "IETF Consensus" as specified in [RFC5226]. IANA SHOULD allocate
monotonically increasing bit positions when requested.
Experimental Numbers: No experimental bit positions are currently
assigned in the Modes Registry, as indicated in the initial contents
above.
In addition, this document requests allocation of a new entry in the
TWAMP-Modes registry:
Bit|Description |Semantics |Reference| Bit|Description |Semantics |Reference|
| |Definition | | Pos| |Definition | |
---|-------------------------------------------|------------|---------| ---|-------------------------------------------|------------|---------|
7 IKEv2Derived Mode Capability Section 5 [RFCxxxx] X IKEv2Derived Mode Capability Section 5 [RFCxxxx]
(where RFCxxxx refers to draft-ietf-ippm-ipsec). where IANA is requested to assign new bit position, X, and RFCxxxx
refers to this memo when published.
Figure 5: IKEv2 Derived Mode Capability Figure 5: TWAMP IKEv2-derived Mode Capability
8. Acknowledgments For the new OWAMP-Modes Registry, see the IANA Considerations in
[I-D.ietf-ippm-owamp-registry].
8. Acknowledgements
We thank Eric Chen, Yaakov Stein, Brian Trammell, Emily Bi, John We thank Eric Chen, Yaakov Stein, Brian Trammell, Emily Bi, John
Mattsson, Steve Baillargeon, Spencer Dawkins, Tero Kivinen, Fred Mattsson, Steve Baillargeon, Spencer Dawkins, Tero Kivinen, Fred
Baker, Meral Shirazipour, Hannes Tschofenig, Ben Campbell, Stephen Baker, Meral Shirazipour, Hannes Tschofenig, Ben Campbell, Stephen
Farrell, Brian Haberman, and Barry Leiba for their reviews, comments Farrell, Brian Haberman, and Barry Leiba for their reviews, comments
and text suggestions. and text suggestions.
Al Morton deserves a special mention for his thorough reviews and Al Morton deserves a special mention for his thorough reviews and
text contributions to this document as well as the constructive text contributions to this document as well as the constructive
discussions over several IPPM meetings. discussions over several IPPM meetings.
9. References 9. References
9.1. Normative References 9.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [I-D.ietf-ippm-owamp-registry]
Requirement Levels", BCP 14, RFC 2119, March 1997. Morton, A., "Registries for the One-Way Active Measurement
Protocol - OWAMP", draft-ietf-ippm-owamp-registry-00 (work
[RFC4302] Kent, S., "IP Authentication Header", RFC 4302, December in progress), July 2015.
2005.
[RFC4303] Kent, S., "IP Encapsulating Security Payload (ESP)", RFC [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
4303, December 2005. Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>.
[RFC4656] Shalunov, S., Teitelbaum, B., Karp, A., Boote, J., and M. [RFC4656] Shalunov, S., Teitelbaum, B., Karp, A., Boote, J., and M.
Zekauskas, "A One-way Active Measurement Protocol Zekauskas, "A One-way Active Measurement Protocol
(OWAMP)", RFC 4656, September 2006. (OWAMP)", RFC 4656, DOI 10.17487/RFC4656, September 2006,
<http://www.rfc-editor.org/info/rfc4656>.
[RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an
IANA Considerations Section in RFCs", BCP 26, RFC 5226,
DOI 10.17487/RFC5226, May 2008,
<http://www.rfc-editor.org/info/rfc5226>.
[RFC5357] Hedayat, K., Krzanowski, R., Morton, A., Yum, K., and J. [RFC5357] Hedayat, K., Krzanowski, R., Morton, A., Yum, K., and J.
Babiarz, "A Two-Way Active Measurement Protocol (TWAMP)", Babiarz, "A Two-Way Active Measurement Protocol (TWAMP)",
RFC 5357, October 2008. RFC 5357, DOI 10.17487/RFC5357, October 2008,
<http://www.rfc-editor.org/info/rfc5357>.
[RFC5618] Morton, A. and K. Hedayat, "Mixed Security Mode for the [RFC5618] Morton, A. and K. Hedayat, "Mixed Security Mode for the
Two-Way Active Measurement Protocol (TWAMP)", RFC 5618, Two-Way Active Measurement Protocol (TWAMP)", RFC 5618,
August 2009. DOI 10.17487/RFC5618, August 2009,
<http://www.rfc-editor.org/info/rfc5618>.
[RFC7296] Kaufman, C., Hoffman, P., Nir, Y., Eronen, P., and T. [RFC7296] Kaufman, C., Hoffman, P., Nir, Y., Eronen, P., and T.
Kivinen, "Internet Key Exchange Protocol Version 2 Kivinen, "Internet Key Exchange Protocol Version 2
(IKEv2)", STD 79, RFC 7296, October 2014. (IKEv2)", STD 79, RFC 7296, DOI 10.17487/RFC7296, October
2014, <http://www.rfc-editor.org/info/rfc7296>.
9.2. Informative References 9.2. Informative References
[RFC2898] Kaliski, B., "PKCS #5: Password-Based Cryptography [RFC2898] Kaliski, B., "PKCS #5: Password-Based Cryptography
Specification Version 2.0", RFC 2898, September 2000. Specification Version 2.0", RFC 2898,
DOI 10.17487/RFC2898, September 2000,
<http://www.rfc-editor.org/info/rfc2898>.
[RFC4301] Kent, S. and K. Seo, "Security Architecture for the [RFC4301] Kent, S. and K. Seo, "Security Architecture for the
Internet Protocol", RFC 4301, December 2005. Internet Protocol", RFC 4301, DOI 10.17487/RFC4301,
December 2005, <http://www.rfc-editor.org/info/rfc4301>.
[RFC4302] Kent, S., "IP Authentication Header", RFC 4302,
DOI 10.17487/RFC4302, December 2005,
<http://www.rfc-editor.org/info/rfc4302>.
[RFC4303] Kent, S., "IP Encapsulating Security Payload (ESP)",
RFC 4303, DOI 10.17487/RFC4303, December 2005,
<http://www.rfc-editor.org/info/rfc4303>.
[RFC5706] Harrington, D., "Guidelines for Considering Operations and [RFC5706] Harrington, D., "Guidelines for Considering Operations and
Management of New Protocols and Protocol Extensions", RFC Management of New Protocols and Protocol Extensions",
5706, November 2009. RFC 5706, DOI 10.17487/RFC5706, November 2009,
<http://www.rfc-editor.org/info/rfc5706>.
[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,
<http://www.rfc-editor.org/info/rfc5938>.
[RFC6023] Nir, Y., Tschofenig, H., Deng, H., and R. Singh, "A [RFC6023] Nir, Y., Tschofenig, H., Deng, H., and R. Singh, "A
Childless Initiation of the Internet Key Exchange Version Childless Initiation of the Internet Key Exchange Version
2 (IKEv2) Security Association (SA)", RFC 6023, October 2 (IKEv2) Security Association (SA)", RFC 6023,
2010. DOI 10.17487/RFC6023, October 2010,
<http://www.rfc-editor.org/info/rfc6023>.
[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,
<http://www.rfc-editor.org/info/rfc6038>.
Authors' Addresses Authors' Addresses
Kostas Pentikousis (editor) Kostas Pentikousis (editor)
EICT GmbH EICT GmbH
EUREF-Campus Haus 13 EUREF-Campus Haus 13
Torgauer Strasse 12-15 Torgauer Strasse 12-15
10829 Berlin 10829 Berlin
Germany Germany
 End of changes. 47 change blocks. 
147 lines changed or deleted 193 lines changed or added

This html diff was produced by rfcdiff 1.42. The latest version is available from http://tools.ietf.org/tools/rfcdiff/