draft-ietf-dime-extended-naptr-02.txt   draft-ietf-dime-extended-naptr-03.txt 
Diameter Maintenance and M. Jones Diameter Maintenance and M. Jones
Extensions (DIME) Bridgewater Systems Extensions (DIME) Bridgewater Systems
Internet-Draft J. Korhonen Internet-Draft J. Korhonen
Updates: 3588 (if approved) Nokia Siemens Networks Updates: 3588 (if approved) Nokia Siemens Networks
Intended status: Standards Track September 2, 2010 Intended status: Standards Track November 9, 2010
Expires: March 6, 2011 Expires: May 13, 2011
Diameter Extended NAPTR Diameter Extended NAPTR
draft-ietf-dime-extended-naptr-02 draft-ietf-dime-extended-naptr-03
Abstract Abstract
This document describes an extended format for the S-NAPTR The Diameter base protocol specifies mechanisms whereby a given realm
Application Service Tag used in dynamic Diameter agent discovery. may advertise Diameter nodes and the supported transport protocol.
The extended format allows NAPTR queries to contain Diameter However, these mechanism do not reveal the Diameter applications that
Application-Id information. each node supports. A peer outside the realm would have to perform a
Diameter capability exchange with every node in order to discover
which one supports a required application. This document describes
an improvement using an extended format for the Straightfoward-NAPTR
(S-NAPTR) Application Service Tag that allows for discovery of the
supported applications without doing Diameter capability exchange
beforehand.
Requirements Language Requirements Language
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].
Status of this Memo Status of this Memo
This Internet-Draft is submitted to IETF in full conformance with the This Internet-Draft is submitted to IETF in full conformance with the
skipping to change at page 1, line 47 skipping to change at page 2, line 8
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."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on March 6, 2011. This Internet-Draft will expire on May 13, 2011.
Copyright Notice Copyright Notice
Copyright (c) 2010 IETF Trust and the persons identified as the Copyright (c) 2010 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
skipping to change at page 3, line 15 skipping to change at page 3, line 15
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. Extended NAPTR Service Field Format . . . . . . . . . . . . . . 4 3. Extended NAPTR Service Field Format . . . . . . . . . . . . . . 4
4. Extended NAPTR-based Diameter Peer Discovery . . . . . . . . . 5 4. Extended NAPTR-based Diameter Peer Discovery . . . . . . . . . 5
5. Usage Guidelines . . . . . . . . . . . . . . . . . . . . . . . 6 5. Usage Guidelines . . . . . . . . . . . . . . . . . . . . . . . 6
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 7 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 7
6.1. IETF Diameter Application Service Tags . . . . . . . . . . 7 6.1. IETF Diameter Application Service Tags . . . . . . . . . . 7
6.2. Vendor-Specific Diameter Application Service Tags . . . . . 7 6.2. Vendor-Specific Diameter Application Service Tags . . . . . 7
6.3. Diameter Application Protocol Tags . . . . . . . . . . . . 7 6.3. Diameter Application Protocol Tags . . . . . . . . . . . . 8
7. Security Considerations . . . . . . . . . . . . . . . . . . . . 8 7. Security Considerations . . . . . . . . . . . . . . . . . . . . 8
8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 8 8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 8
8.1. Normative References . . . . . . . . . . . . . . . . . . . 8 8.1. Normative References . . . . . . . . . . . . . . . . . . . 8
8.2. Informative References . . . . . . . . . . . . . . . . . . 9 8.2. Informative References . . . . . . . . . . . . . . . . . . 9
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 9 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 9
1. Introduction 1. Introduction
The Diameter base protocol [RFC3588] specifies three mechanisms for The Diameter base protocol [RFC3588] specifies three mechanisms for
the Diameter peer discovery. One of these involves the Diameter the Diameter peer discovery. One of these involves the Diameter
skipping to change at page 4, line 26 skipping to change at page 4, line 26
document is based on the Straightfoward-NAPTR (S-NAPTR) Dynamic document is based on the Straightfoward-NAPTR (S-NAPTR) Dynamic
Delegation Discovery System (DDDS) Application defined in [RFC3958]. Delegation Discovery System (DDDS) Application defined in [RFC3958].
This document updates the Diameter peer discovery procedure described This document updates the Diameter peer discovery procedure described
in Section 11.6 of [RFC3588] and defines S-NAPTR Application Service in Section 11.6 of [RFC3588] and defines S-NAPTR Application Service
and Application Procotol Tag values that permit the discovery of and Application Procotol Tag values that permit the discovery of
Diameter peers that support a specific Diameter application and Diameter peers that support a specific Diameter application and
transport protocol. transport protocol.
2. Terminology 2. Terminology
The Diameter base protocol specification (Section 1.4 of RFC 3588) The Diameter base protocol specification (Section 1.4 of [RFC3588])
defines most of the terminology used in this document. and the Straightforward-NAPTR (S-NAPTR) DDDS application (section 2.1
in [RFC3958]) define the terminology used in this document.
3. Extended NAPTR Service Field Format 3. Extended NAPTR Service Field Format
The NAPTR Service Field format defined by the S-NAPTR DDDS in The NAPTR Service Field format defined by the S-NAPTR DDDS
[RFC3958] consists of a S-NAPTR Application Service tag and a S-NAPTR application in [RFC3958] consists of a S-NAPTR Application Service
Application Protocol tag delimited by a single colon (":") character. tag and a S-NAPTR Application Protocol tag delimited by a single
colon (":") character.
The S-NAPTR Application Service Tag ABNF specification for the The S-NAPTR Application Service Tag ABNF specification for the
discovery of Diameter agents supporting a specific Diameter discovery of Diameter agents supporting a specific Diameter
application is show below. application is shown below.
appln-svc-tag = iana-appln-tag / experimental-appln-tag appln-svc-tag = iana-appln-tag / experimental-appln-tag
iana-appln-tag = "aaa+ap" appln-id iana-appln-tag = "aaa+ap" appln-id
experimental-appln-tag = "x-aaa+ap" appln-id experimental-appln-tag = "x-aaa+ap" appln-id
appln-id = *DIGIT appln-id = *DIGIT
; Application identifier expressed as a ; Application identifier expressed as a
; decimal integer. ; decimal integer.
As stated in [RFC3958], application service tags that start with "x-" As stated in [RFC3958], application service tags that start with "x-"
are considered experimental, and no provision is made to prevent are considered experimental, and no provision is made to prevent
skipping to change at page 5, line 22 skipping to change at page 5, line 23
For example, a NAPTR service field value of: For example, a NAPTR service field value of:
'aaa+ap6:diameter.sctp' 'aaa+ap6:diameter.sctp'
Means that the Diameter node in the SRV or A/AAAA record supports Means that the Diameter node in the SRV or A/AAAA record supports
the Diameter Session Initiation Protocol (SIP) Application ('6') the Diameter Session Initiation Protocol (SIP) Application ('6')
and SCTP as the transport protocol. and SCTP as the transport protocol.
The maximum length of the NAPTR service field is 256 octets including The maximum length of the NAPTR service field is 256 octets including
one octet length field (see Section 4.1 of RFC 3403 and Section 3.3 one octet length field (see Section 4.1 of RFC 3403 and Section 3.3
of [RFC1035]). The DNS administrator of some domain SHOULD also of [RFC1035]). DNS administrators SHOULD also provision legacy RFC
provision base RFC 3588 style NAPTR records [RFC2915] in order to 3588 style NAPTR records [RFC2915] in order to guarantee backwards
guarantee backwards compatibility with legacy RFC 3588 compliant compatibility with legacy RFC 3588 compliant Diameter peers. If the
Diameter peers. If the DNS administrator provisions both extended DNS administrator provisions both extended S-NAPTR records as defined
S-NAPTR records as defined in this specification and legacy RFC 3588 in this specification and legacy RFC 3588 NAPTR records, then the
NAPTR records, then the extended S-NAPTR records MUST have higher extended S-NAPTR records MUST have higher priority (e.g. lower order
priority (e.g. lower order and/or preference values) than legacy and/or preference values) than legacy NAPTR records.
NAPTR records.
4. Extended NAPTR-based Diameter Peer Discovery 4. Extended NAPTR-based Diameter Peer Discovery
The basic Diameter Peer Discover principles are described in Section The Diameter Peer Discovery principles are described in Section 5.2
5.2 of [RFC3588]. This specification updates the NAPTR query of [RFC3588]. This specification updates the NAPTR query procedure
procedure in the Diameter peer discovery mechanism by allowing the in the Diameter peer discovery mechanism by allowing the querying
querying node to determine which applications are supported by node to determine which applications are supported by resolved
resolved Diameter peers. Diameter peers.
The extended format NAPTR records provide a mapping from a domain, to The extended format NAPTR records provide a mapping from a domain, to
the SRV record or A/AAAA record for contacting a server supporting a the SRV record or A/AAAA record for contacting a server supporting a
specific transport protocol and Diameter application. The resource specific transport protocol and Diameter application. The resource
record will contain an empty regular expression and a replacement record will contain an empty regular expression and a replacement
value, which is the SRV record or the A/AAAA record for that value, which is the SRV record or the A/AAAA record for that
particular transport protocol. If the server supports multiple particular transport protocol. If the server supports multiple
transport protocols, there will be multiple NAPTR records, each with transport protocols, there will be multiple NAPTR records, each with
a different Services Field value and potentially different list of a different Services Field value and potentially different list of
supported Diameter applications. supported Diameter applications.
skipping to change at page 6, line 20 skipping to change at page 6, line 21
deduced, for example, from the 'realm' in a NAI that a Diameter deduced, for example, from the 'realm' in a NAI that a Diameter
implementation needed to perform a Diameter operation on. implementation needed to perform a Diameter operation on.
b. If the returned NAPTR service fields contain entries formatted as b. If the returned NAPTR service fields contain entries formatted as
"aaa+apX:Y" where "X" indicates the Application Identifier and "Y" "aaa+apX:Y" where "X" indicates the Application Identifier and "Y"
indicates the transport protocol, the target realm supports the indicates the transport protocol, the target realm supports the
extended format for NAPTR-based Diameter peer discovery defined in extended format for NAPTR-based Diameter peer discovery defined in
this document. this document.
If "X" contains the required Application Identifier and "Y" If "X" contains the required Application Identifier and "Y"
matches a transport protocol supported by the client, the matches a supported transport protocol, the Diameter
client resolves the "replacement" field entry to a target host implementation resolves the "replacement" field entry to a
using the lookup method appropriate for the "flags" field. target host using the lookup method appropriate for the "flags"
field.
If "X" does not contain the required Application Identifier or If "X" does not contain the required Application Identifier or
"Y" does not match a transport protocol supported by the "Y" does not match a supported transport protocol, the Diameter
client, the peer discovery is abandoned. implementation abandons the peer discovery.
c. If the returned NAPTR service fields contain entries formatted as c. If the returned NAPTR service fields contain entries formatted as
"AAA+D2X" where "X" indicates the transport protocol, the target "AAA+D2X" where "X" indicates the transport protocol, the target
realm supports the NAPTR-based Diameter peer discovery defined in realm supports the NAPTR-based Diameter peer discovery defined in
[RFC3588]. [RFC3588].
If "X" matches a transport protocol supported by the client, If "X" matches a supported transport protocol, the Diameter
the client continues processing the NAPTR as described in implementation continues processing the NAPTR as described in
[RFC3588] and [RFC2915]. [RFC3588] and [RFC2915].
If "X" does not match a transport protocol supported by the If "X" does not match a supported transport protocol, the
client, the peer discovery is abandoned. Diameter implementation abandons the peer discovery.
d. If the target realm does not support NAPTR-based Diameter peer d. If the target realm does not support NAPTR-based Diameter peer
discovery, the client proceeds with the next peer discovery discovery, the client proceeds with the next peer discovery
mechanism described in Section 5.2 of [RFC3588]. mechanism described in Section 5.2 of [RFC3588].
5. Usage Guidelines 5. Usage Guidelines
Diameter is a peer to peer protocol whereas most of the applications Diameter is a peer to peer protocol whereas most of the applications
that extend the base protocol behave like client/server applications. that extend the base protocol behave like client/server applications.
The role of the peer is not advertised in the NAPTR tags and not even The role of the peer is not advertised in the NAPTR tags and not even
 End of changes. 15 change blocks. 
37 lines changed or deleted 46 lines changed or added

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