draft-ietf-drinks-usecases-requirements-05.txt   draft-ietf-drinks-usecases-requirements-06.txt 
DRINKS S. Channabasappa, Ed. DRINKS S. Channabasappa, Ed.
Internet-Draft CableLabs Internet-Draft CableLabs
Intended status: Informational March 13, 2011 Intended status: Informational August 12, 2011
Expires: September 14, 2011 Expires: February 13, 2012
DRINKS Use cases and Protocol Requirements Data for Reachability of Inter/tra-NetworK SIP (DRINKS) Use cases and
draft-ietf-drinks-usecases-requirements-05 Protocol Requirements
draft-ietf-drinks-usecases-requirements-06
Abstract Abstract
This document captures the use cases and associated requirements for This document captures the use cases and associated requirements for
interfaces that provision session establishment data into SIP Service interfaces that provision session establishment data into Session
Provider components, to assist with session routing. Specifically, Initiation Protocol (SIP) Service Provider components, to assist with
the current version of this document focuses on the provisioning of session routing. Specifically, this document focuses on the
one such element, termed the registry. provisioning of one such element, termed the registry.
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
provisions of BCP 78 and BCP 79. provisions of BCP 78 and BCP 79.
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 September 14, 2011. This Internet-Draft will expire on February 13, 2012.
Copyright Notice Copyright Notice
Copyright (c) 2011 IETF Trust and the persons identified as the Copyright (c) 2011 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
skipping to change at page 2, line 16 skipping to change at page 2, line 17
1. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3. Registry Use Cases . . . . . . . . . . . . . . . . . . . . . . 9 3. Registry Use Cases . . . . . . . . . . . . . . . . . . . . . . 9
3.1. Category: Provisioning Mechanisms . . . . . . . . . . . . 9 3.1. Category: Provisioning Mechanisms . . . . . . . . . . . . 9
3.2. Category: Interconnect Schemes . . . . . . . . . . . . . . 9 3.2. Category: Interconnect Schemes . . . . . . . . . . . . . . 9
3.3. Category: SED Exchange and Discovery Models . . . . . . . 11 3.3. Category: SED Exchange and Discovery Models . . . . . . . 11
3.4. Category: SED Record Content . . . . . . . . . . . . . . . 12 3.4. Category: SED Record Content . . . . . . . . . . . . . . . 12
3.5. Category: Separation and Facilitation of Data 3.5. Category: Separation and Facilitation of Data
Management . . . . . . . . . . . . . . . . . . . . . . . . 12 Management . . . . . . . . . . . . . . . . . . . . . . . . 12
3.6. Category: Lookup Keys . . . . . . . . . . . . . . . . . . 13 3.6. Category: Public Identifiers, TN Ranges and RNs . . . . . 13
3.7. Category: Misc . . . . . . . . . . . . . . . . . . . . . . 14 3.7. Category: Misc . . . . . . . . . . . . . . . . . . . . . . 14
4. Requirements . . . . . . . . . . . . . . . . . . . . . . . . . 16 4. Requirements . . . . . . . . . . . . . . . . . . . . . . . . . 16
4.1. Provisioning Mechanisms . . . . . . . . . . . . . . . . . 16 4.1. Provisioning Mechanisms . . . . . . . . . . . . . . . . . 16
4.2. Interconnect Schemes . . . . . . . . . . . . . . . . . . . 16 4.2. Interconnect Schemes . . . . . . . . . . . . . . . . . . . 16
4.3. SED Exchange and Discovery Requirements . . . . . . . . . 16 4.3. SED Exchange and Discovery Requirements . . . . . . . . . 17
4.4. SED Record Content Requirements . . . . . . . . . . . . . 17 4.4. SED Record Content Requirements . . . . . . . . . . . . . 17
4.5. Data Management Requirements . . . . . . . . . . . . . . . 17 4.5. Data Management Requirements . . . . . . . . . . . . . . . 17
4.6. Lookup Key Requirements . . . . . . . . . . . . . . . . . 18 4.6. Public Identifier, TN Range and RN Requirements . . . . . 18
4.7. Misc. Requirements . . . . . . . . . . . . . . . . . . . . 18 4.7. Misc. Requirements . . . . . . . . . . . . . . . . . . . . 18
5. Security Considerations . . . . . . . . . . . . . . . . . . . 20 5. Security Considerations . . . . . . . . . . . . . . . . . . . 20
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 21 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 21
7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 22 7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 22
8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 23 8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 23
8.1. Normative References . . . . . . . . . . . . . . . . . . . 23 8.1. Normative References . . . . . . . . . . . . . . . . . . . 23
8.2. Informative References . . . . . . . . . . . . . . . . . . 23 8.2. Informative References . . . . . . . . . . . . . . . . . . 23
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 24 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 24
1. Terminology 1. Terminology
skipping to change at page 3, line 17 skipping to change at page 3, line 17
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].
This document reuses terms from [RFC3261] (e.g., SIP, SSP), [RFC5486] This document reuses terms from [RFC3261] (e.g., SIP, SSP), [RFC5486]
(e.g., LUF, LRF, SED) and [RFC5067] (carrier-of-record and transit (e.g., LUF, LRF, SED) and [RFC5067] (carrier-of-record and transit
provider). In addition, this document specifies the following provider). In addition, this document specifies the following
additional terms. additional terms.
Registry: The authoritative source for provisioned session Registry: The authoritative source for provisioned session
establishment data (SED) and related information. A Registry can establishment data (SED) and related information. A registry can
be part of an SSP as well as an independent entity. be part of an SSP or be an independent entity.
Registrar: An entity that provisions and manages data into the Registrar: An entity that provisions and manages data into the
registry. An SSP can act as its own registrar or - additionally registry. An SSP can act as its own registrar or - additionally
or alternatively - delegate this function to a third party who or alternatively - delegate this function to a third party (who
acts as its registrar. acts as its registrar).
Local Data Repository: The data store component of an addressing Local Data Repository(LDR): The data store component of an
server that provides resolution responses. addressing server that provides resolution responses.
Public Identifier: A public identifier refers to a telephone number Public Identifier: A public identifier refers to a telephone number
(TN), a SIP address, or other identity as deemed appropriate, such (TN), a SIP address, or other identity as deemed appropriate, such
as a globally routable URI of a user address (e.g., as a globally routable URI of a user address (e.g.,
sip:john.doe@example.net). sip:john.doe@example.net).
TN Range: A numerically contiguous set (or, in the case of an open Telephone Number (TN) Range: A numerically contiguous set of
numbering plan, a prefix) of telephone numbers whose SED can be telephone numbers.
looked up (resolved).
Telephone Number (TN) Prefix: A preceding portion of the digits
common across a series of E.164 numbers. A given TN prefix will
include all the valid E.164 numbers that satisfy the expansion
rules mandated by the country or the region that the TNs comply
with.
Routing Number (RN): A Routing Number. For more information, see
[RFC4694].
RN: A Routing Number. See [RFC4694] for details
Destination Group: An aggregation of a set of public identifiers, Destination Group: An aggregation of a set of public identifiers,
TN Ranges, or RNs that share common SED which is exposed to a TN Ranges, or RNs that share common SED, which is exposed to a
common set of peers. common set of peers.
Data Recipient: An entity with visibility into a specific set of Data Recipient: An entity with visibility into a specific set of
public identifiers, the destination groups that contain these public identifiers (or TN Ranges or RNs), the destination groups
public identifiers, and a route group's SED records. that contain these public identifiers (or TN Ranges and RNs), and
a route group's SED records.
Route Group: An aggregation that contains a related set of SED Route Group: An aggregation that contains a related set of SED
records, and is associated with a set of destination groups. records, and is associated with a set of destination groups.
Route groups facilitate the management of SED records for one or Route groups facilitate the management of SED records for one or
more data recipients. more data recipients.
2. Overview 2. Overview
The SPEERMINT WG specifies Session Establishment Data, or SED, as the [RFC5486] (Section 3.3) defines Session Establishment Data, or SED,
data used to route a call to the next hop associated with the called as the data used to route a call to the next hop associated with the
domain's ingress point. More specifically, the SED is the set of called domain's ingress point. More specifically, the SED is the set
parameters that the outgoing signaling path border elements (SBEs) of parameters that the outgoing signaling path border elements (SBEs)
need to establish a session. See Section 3.3 of [RFC5486] for more need to establish a session. However, [RFC5486] does not specify the
details. protocol(s) or format(s) to provision SED. To pave the way to
specify such a protocol, this document presents the use cases and
The specification of the format and protocols to provision SED is a associated requirements that have been proposed to provision SED
task taken up by the DRINKS WG. This document contains the use cases data.
and requirements that have been proposed in this regard.
SED is typically created by the terminating or next-hop SSP and SED is typically created by the terminating or next-hop SSP and
consumed by the originating SSP. To avoid a multitude of bilateral consumed by the originating SSP. To avoid a multitude of bilateral
exchanges, SED is often shared via intermediary systems - termed exchanges, SED is often shared via intermediary systems - termed
registries within this document. Such registries receive data via registries within this document. Such registries receive data via
provisioning transactions from SSPs, and then distribute the received provisioning transactions from SSPs, and then distribute the received
data into Local Data Repositories. These local data repositories are data into Local Data Repositories (LDRs). These LDRs are used for
used for call routing by outgoing SBEs. This is depicted in call routing by outgoing SBEs. This is depicted in Figure 1.
Figure 1.
*-------------* *-------------*
1. Provision SED | | 1. Provision SED | |
-----------------------> | Registry | -----------------------> | Registry |
| | | |
*-------------* *-------------*
/ \ / \
/ \ / \
/ \ / \
/ \ / \
skipping to change at page 6, line 7 skipping to change at page 6, line 5
/ 2.Distribute \ / 2.Distribute \
/ SED \ / SED \
V V V V
+----------+ +----------+ +----------+ +----------+
|Local Data| |Local Data| |Local Data| |Local Data|
|Repository| |Repository| |Repository| |Repository|
+----------+ +----------+ +----------+ +----------+
Figure 1: General Diagram Figure 1: General Diagram
In this document, we primarily address the use cases and requirements In this document, we address the use cases and requirements for
for provisioning registries. Future revisions may include data provisioning registries. Data distribution to local data
distribution to local data repositories. The resulting provisioning repositories is out of scope for this document. The resulting
protocol can be used to provision data into a registry, or between provisioning protocol can be used to provision data into a registry,
multiple registries operating in parallel. In Figure 2, the case of or between multiple registries operating in parallel. In Figure 2,
multiple registries is depicted with dotted lines. the case of multiple registries is depicted with dotted lines.
. . . . . . . . . . . . . .
. . . . . . . registry . . . . . . . . . . . . . . registry . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . .
. . . . . .
. . provision . . . provision .
+-----------+ . +-----------+ +-----------+ . +-----------+
| | provision +----------+ provision | | | | provision +----------+ provision | |
| SSP 1 |------------>| Registry |<-----------| SSP 2 | | SSP 1 |------------>| Registry |<-----------| SSP 2 |
| | +----------+ | | | | +----------+ | |
| +-----+ | /\ | +-----+ | | +-----+ | /\ | +-----+ |
| | LDR | <-------------------- ------------------>| LDR | | | | LDR | <-------------------- ------------------>| LDR | |
| +-----+ | distribute distribute | +-----+ | | +-----+ | distribute distribute | +-----+ |
| | | | | | | |
+-----------+ +-----------+ +-----------+ +-----------+
. . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
(provision / distribute) (provision / distribute)
Where, LDR = Local Data Repository
Figure 2: Functional Overview Figure 2: Functional Overview
In addition, this document proposes the following aggregation groups In addition, this document proposes two aggregation groups, as
with regards to SED (refer to the use cases in Section 3.5 for the follows:
rationale):
o Aggregation of public Identifiers into a destination group. o Aggregation of public Identifiers into a destination group.
o Aggregation of SED records into a Route Group. o Aggregation of SED records into a route group.
The data model depicted in Figure 3 shows the various entities, The use cases in Section 3.5 provide the rationale. The data model
aggregations and the relationships between them. depicted in Figure 3 shows the various entities, aggregations and the
relationships between them.
+---------+ +--------------+ +---------+ +---------+ +--------------+ +---------+
| Data |0..n 0..n| ROUTE | 1 0..n| SED | | Data |0..n 0..n| Route | 1 0..n| SED |
|Recepient|------------| GROUP | --------------| Record | |Recepient|------------| Group | --------------| Record |
+---------+ +--------------+ +---------+ +---------+ +--------------+ +---------+
|0..n |0..n |0..n |0..n
| | | |
| | | |
| | | |
|0..n | |0..n |
1 +--------------+ 0..1 | 1 +--------------+ 0..1 |
---------| DESTINATION |--------- | ---------| Destination |--------- |
| | GROUP | | | | | Group | | |
| +--------------+ | | | +--------------+ | |
| | | | | | | |
| 1| | | | 1| | |
| | | | | | | |
| | | | | | | |
0..n | 0..n | | 0..n | 0..n | 0..n | | 0..n |
+---------+ +---------+ +----------+ | +---------+ +---------+ +----------+ |
| RN | | TN | | Public |---- | RN | | TN | | Public |----
| | | Range | |Identifier| 1 | | | Range | |Identifier| 1
+---------+ +---------+ +----------+ +---------+ +---------+ +----------+
Figure 3: Data Model Diagram Figure 3: Data Model Diagram
The relationships are as described below: The relationships are as described below:
- A Public Identifier object can be directly related to zero or more - A public identifier object can be directly related to zero or more
SED Record objects, and a SED Record object can be related to SED Record objects, and a SED Record object can be related to
exactly one Public Identifier object. exactly one public identifier object.
- A Destination Group object can contain zero or more TN Range - A destination group object can contain zero or more TN Range
objects, and a TN Range object can be contained in exactly one objects, and a TN Range object can be contained in exactly one
Destination Group object. destination group object.
- A Destination Group object can contain zero or more Public - A destination group object can contain zero or more public
Identifier objects, and a Public Identifier object can be identifier objects, and a public identifier object can be
contained in exactly one Destination Group object. contained in exactly one destination group object.
- A Destination Group object can contain zero or more RN objects, - A destination group object can contain zero or more RN objects,
and an RN object can be contained in exactly one Destination Group and an RN object can be contained in exactly one destination group
object. object.
- A Route Group object can contain zero or more SED Record objects, - A route group object can contain zero or more SED Record objects,
and a SED Record object can be contained in exactly one Route and a SED Record object can be contained in exactly one route
Group object. group object.
- A Route Group object can be associated with zero or more - A route group object can be associated with zero or more
Destination Group objects, and a Destination Group object can be destination group objects, and a destination group object can be
associated with zero or more Route Group objects. associated with zero or more route group objects.
- A Data Recipient object can be associated with zero or more Route - A data recipient object can be associated with zero or more route
Group objects, and a Route Group object can refer to zero or more group objects, and a route group object can refer to zero or more
Data Recipient objects. data recipient objects.
3. Registry Use Cases 3. Registry Use Cases
This Section documents use cases related to the provisioning of the This Section documents use cases related to the provisioning of the
registry. Any request to provision, modify or delete data is subject registry. Any request to provision, modify or delete data is subject
to authorization. However, the act of authorization is considered to to several security considerations (see Section Section 5). This
be out of scope of this document. document does not address these considerations. The protocols that
implement these use cases (and associated requirements) will need to
explicitly identify and address them.
3.1. Category: Provisioning Mechanisms 3.1. Category: Provisioning Mechanisms
UC PROV #1 Real-Time Provisioning: Registrars have operational UC PROV #1 Real-Time Provisioning: Registrars have operational
systems that provision public identifiers, in association systems that provision public identifiers (or TN Ranges
with their SED. These systems often function in a manner or RNs), in association with their SED. These systems
that expect or require that these provisioning activities often function in a manner that expect or require that
be completed immediately, as apposed to an out-of-band or these provisioning activities be completed immediately,
batch provisioning scheme that can occur at a later time. as apposed to an out-of-band or batch provisioning scheme
This type of provisioning is referred to as real-time, or that can occur at a later time. This type of
on-demand provisioning. provisioning is referred to as real-time, or on-demand
provisioning.
UC PROV #2 Non-Real-Time Bulk Provisioning: Operational systems that UC PROV #2 Non-Real-Time Bulk Provisioning: Operational systems that
provision public identifiers and associated SED sometimes provision public identifiers (or TN Ranges or RNs) and
expect that these provisioning activities be batched up associated SED sometimes expect that these provisioning
into large sets. These batched requests are then activities be batched up into large sets. These batched
processed using a provisioning mechanism that is out-of- requests are then processed using a provisioning
band and occurs at a later time. mechanism that is out-of-band and occurs at a later time.
UC PROV #3 Multi-Request Provisioning: Regardless of whether a UC PROV #3 Multi-Request Provisioning: Regardless of whether a
provisioning action is performed in real-time or not, provisioning action is performed in real-time or not,
SSPs often perform several provisioning actions on SSPs often perform several provisioning actions on
several objects in a single request or transaction. This several objects in a single request or transaction. This
is done for performance and scalability reasons, and for is done for performance and scalability reasons, and for
transactional reasons, such that the set of provisioning transactional reasons, such that the set of provisioning
actions either fail or succeed atomically, as a complete actions either fail or succeed atomically, as a complete
set. set.
skipping to change at page 9, line 40 skipping to change at page 10, line 4
UC PROV #3 Multi-Request Provisioning: Regardless of whether a UC PROV #3 Multi-Request Provisioning: Regardless of whether a
provisioning action is performed in real-time or not, provisioning action is performed in real-time or not,
SSPs often perform several provisioning actions on SSPs often perform several provisioning actions on
several objects in a single request or transaction. This several objects in a single request or transaction. This
is done for performance and scalability reasons, and for is done for performance and scalability reasons, and for
transactional reasons, such that the set of provisioning transactional reasons, such that the set of provisioning
actions either fail or succeed atomically, as a complete actions either fail or succeed atomically, as a complete
set. set.
3.2. Category: Interconnect Schemes 3.2. Category: Interconnect Schemes
UC INTERCONNECT #1 Inter-SSP SED: SSPs create peering relationships UC INTERCONNECT #1 Inter-SSP SED: SSPs create peering relationships
with other SSPs in order to establish with other SSPs in order to establish
interconnects. Establishing these interconnects interconnects. Establishing these interconnects
involves, among other things, communicating and involves, among other things, communicating and
enabling the points of ingress and other SED used enabling the points of ingress and other SED used
to establish sessions to a set of public to establish sessions.
identifiers.
UC INTERCONNECT #2 Direct vs Indirect Peering: Some inter-SSP UC INTERCONNECT #2 Direct and Indirect Peering: Some inter-SSP
peering relationships are created to enable the peering relationships are created to enable the
establishment of sessions to the public establishment of sessions to the public
identifiers for which an SSP is the carrier-of- identifiers for which an SSP is the carrier-of-
record. This is referred to as direct peering. record. This is referred to as direct peering.
Other inter-SSP peering relationships are created Other inter-SSP peering relationships are created
to enable the establishment of sessions to public to enable the establishment of sessions to public
identifiers for which an SSP is a transit identifiers for which an SSP is a transit
provider. This is referred to as indirect provider. This is referred to as indirect
peering. Some SSPs take into consideration an peering. Some SSPs take into consideration an
SSP's role as a transit or carrier-of-record SSP's role as a transit or carrier-of-record
skipping to change at page 10, line 33 skipping to change at page 10, line 38
Enabling this involves, among other things, Enabling this involves, among other things,
communicating and enabling intra-SSP signaling communicating and enabling intra-SSP signaling
points and other SED that can differ from inter- points and other SED that can differ from inter-
SSP signaling points and SED. SSP signaling points and SED.
UC INTERCONNECT #4 Selective Peering (a.k.a. per peer policies): UC INTERCONNECT #4 Selective Peering (a.k.a. per peer policies):
SSPs create peering relationships with other SSPs SSPs create peering relationships with other SSPs
in order to establish interconnects. However, in order to establish interconnects. However,
SSPs peering relationships often result in SSPs peering relationships often result in
different points of ingress or other SED for the different points of ingress or other SED for the
same set of public identifiers. Selective same set of public identifiers. This is referred
peering is done on a Route Group basis. to as selective peering, and is done on a route
group basis.
UC INTERCONNECT #5 Provisioning of a delegated hierarchy: An SSP may UC INTERCONNECT #5 Provisioning of a delegated hierarchy: An SSP may
decide to maintain its own infrastructure to decide to maintain its own infrastructure to
contain the route records that constitute the contain the route records that constitute the
terminal step in the LUF. In such cases, the SSP terminal step in the LUF. In such cases, the SSP
will provision registries to direct queries for will provision registries to direct queries for
the SSP's public identifiers to its own the SSP's public identifiers to its own
infrastructure, rather than provisioning the infrastructure, rather than provisioning the
route records directly. For example, in the case route records directly. For example, in the case
of DNS-based route records, such a delegated of DNS-based route records, such a delegated
skipping to change at page 11, line 36 skipping to change at page 11, line 45
UC SED EXCHANGE #3 SED Exchange and Discovery using LUF's UC SED EXCHANGE #3 SED Exchange and Discovery using LUF's
Administrative Domain Identifier: When Administrative Domain Identifier: When
establishing peering relationships some SSPs may establishing peering relationships some SSPs may
not wish to communicate or receive points of not wish to communicate or receive points of
ingress and other SED using a registry. They ingress and other SED using a registry. They
wish to only communicate or receive an wish to only communicate or receive an
administrative domain identifier, which is not administrative domain identifier, which is not
necessarily resolvable via DNS. The subsequent necessarily resolvable via DNS. The subsequent
process of using that administrative domain process of using that administrative domain
identifier to select points of ingress or other identifier to select points of ingress or other
SED can be SSP specific and occurs outside the SED can be SSP specific and is out of scope for
context of this protocol. this document.
UC SED EXCHANGE #4 Co-existent SED Exchange and Discovery Models: UC SED EXCHANGE #4 Co-existent SED Exchange and Discovery Models:
When supporting multiple peering relationships When supporting multiple peering relationships
some SSPs have the need to concurrently support some SSPs have the need to concurrently support
all three of the SED Exchange and Discovery all three of the SED Exchange and Discovery
Models described above, for the same set of Models already described in this Section
Public Identifiers. (Section 3.3), for the same set of public
identifiers.
3.4. Category: SED Record Content 3.4. Category: SED Record Content
UC SED RECORD #1 SED Record Content: Establishing interconnects UC SED RECORD #1 SED Record Content: Establishing interconnects
between SSPs involves, among other things, between SSPs involves, among other things,
communicating points of ingress, the service types communicating points of ingress, the service types
(SIP, SIPS, etc) supported by each point of (SIP, SIPS, etc) supported by each point of
ingress, and the relative priority of each point of ingress, and the relative priority of each point of
ingress for each service type. ingress for each service type.
UC SED RECORD #2 Time-To-Live (TTL): For performance reasons, UC SED RECORD #2 Time-To-Live (TTL): For performance reasons,
querying SSPs sometimes cache SED that had been querying SSPs sometimes cache SED that had been
previously looked up for a given public identity. previously looked up for a given public identifier.
In order to accomplish this, SSPs sometimes specify In order to accomplish this, SSPs sometimes specify
the TTL associated with a given SED record. the TTL associated with a given SED record.
3.5. Category: Separation and Facilitation of Data Management 3.5. Category: Separation and Facilitation of Data Management
UC DATA #1 Separation of Provisioning Responsibility: An SSP's UC DATA #1 Separation of Provisioning Responsibility: An SSP's
operational practices often separate the responsibility operational practices often separate the responsibility
of provisioning the points of ingress and other SED, from of provisioning the points of ingress and other SED, from
the responsibility of provisioning public identifiers (or the responsibility of provisioning public identifiers (or
TN ranges or RNs). For example, a network engineer can TN ranges or RNs). For example, a network engineer can
establish a physical interconnect with a peering SSP's establish a physical interconnect with a peering SSP's
network and provision the associated domain name, host, network and provision the associated domain name, host,
and IP addressing information. Separately, for each new and IP addressing information. Separately, for each new
subscriber, the SSP's provisioning systems provision the subscriber, the SSP's provisioning systems provision the
associated public identifiers. associated public identifiers.
UC DATA #2 Destination Groups: SSPs often provision identical SED UC DATA #2 Destination Groups: SSPs often provision identical SED
for large numbers of public identifiers. For reasons of for large numbers of public identifiers (or TN Ranges or
efficiency, groups of public identifiers that have the RNs). For reasons of efficiency, groups of public
same SED can be aggregated. These aggregations are known identifiers that have the same SED can be aggregated.
as destination groups. The SED is then indirectly
associated with destination groups rather than with each These aggregations are known as destination groups. The
individual public identity. SED is then indirectly associated with destination groups
rather than with each individual public identifier (or TN
Ranges or RNs).
UC DATA #3 Route Groups: SSPs often provision identical SED for UC DATA #3 Route Groups: SSPs often provision identical SED for
large numbers of public identifiers, and then expose that large numbers of public identifiers (or TN Ranges or
relationship between a group of SED records and a group RNs), and then expose that relationship between a group
of public identifiers to one or more SSPs. This combined of SED records and a group of public identifiers (or TN
grouping of SED records and Destination Groups Ranges or RNs) to one or more SSPs. This combined
facilitates management of public identity SED grouping of SED records and destination groups
relationships and the list of peers (data recipients) facilitates efficient management of relationships and the
that can lookup those public identifiers and receive that list of peers (data recipients) that can lookup public
SED. This dual set of SED Records and Destination Groups identifiers and receive the associated SED. This dual
is termed as a Route Group. set of SED Records and destination groups is termed as a
route group.
3.6. Category: Lookup Keys 3.6. Category: Public Identifiers, TN Ranges and RNs
UC LOOKUP #1 Additions and deletions: SSPs often allocate and de- UC PI #1 Additions and deletions: SSPs often allocate and de-
allocate specific public identifiers to and from end- allocate specific public identifiers to and from end-users.
users. This involves, among other things, activating This involves, among other things, activating or
or deactivating specific public identifiers (or TN deactivating specific public identifiers (TN ranges or
ranges or RNs), and directly (or indirectly) RNs), and directly or indirectly associating them with the
associating them with the appropriate points of ingress appropriate points of ingress and other SED.
and other SED.
UC LOOKUP #2 Carrier-of-Record vs Transit Lookup Key Provisioning: UC PI #2 Carrier-of-Record vs Transit Provisioning: Some inter-SSP
Some inter-SSP peering relationships are created to peering relationships are created to enable the
enable the establishment of sessions to the lookup keys establishment of sessions to the public identifiers (or TN
for which an SSP is the carrier-of-record. Other Ranges or RNs) for which an SSP is the carrier-of-record.
inter-SSP peering relationships are created to enable Other inter-SSP peering relationships are created to enable
the establishment of sessions to lookup keys for which the establishment of sessions for which an SSP is a transit
an SSP is a transit provider. Some SSPs take into provider. Some SSPs take into consideration an SSP's role
consideration an SSP's role as a transit or carrier-of- as a transit or carrier-of-record provider when selecting a
record provider when selecting a route to a public route.
identifier.
UC LOOKUP #3 Multiplicity of Identical Lookup Keys: As described in UC PI #3 Multiplicity: As described in previous use cases, SSPs
previous use cases, SSPs provision lookup keys and provision public identifiers (or TN Ranges or RNs) and
their associated SED for multiple peering SSPs, and as their associated SED for multiple peering SSPs, and as both
both the carrier-of-record and transit provider. As a the carrier-of-record and transit provider. As a result, a
result, a given lookup key can reside in multiple given public identifier (or TN Range or RN) key can reside
destination groups at any given time. in multiple destination groups at any given time.
UC LOOKUP #4 Lookup Key Destination Group Modification: SSPs often UC PI #4 Destination Group Modification: SSPs often change the SED
change the SED associated with a given lookup key. associated with a given public identifier (or TN Range or
This involves, among other things, directly or RN). This involves, among other things, directly or
indirectly associating them with a different point of indirectly associating them with a different point of
ingress, different services, and/or different other ingress, different services, or different SED.
SED.
UC LOOKUP #5 Lookup Key Carrier-Of-Record vs Transit Modification: UC PI #5 Carrier-Of-Record vs Transit Modification: SSPs may have
SSPs may have the need to change their Carrier-Of- the need to change their Carrier-Of-Record vs Transit role
Record vs Transit role for lookup keys they previously for public identifiers (or TN Ranges or RNs) that they
provisioned. previously provisioned.
UC LOOKUP #6 Modification of authority: An SSP indicates that it is UC PI #6 Modification of authority: An SSP indicates that it is the
the carrier-of-record for an existing public identity carrier-of-record for an existing public identifier or TN
or TN Range. If the public identity or TN Range was Range. If the public identifier or TN Range was previously
previously associated with a different carrier-of- associated with a different carrier-of-record then there
record then there are multiple possible outcomes, such are multiple possible outcomes, such as: a) the previous
as: a) the previous carrier-of-record is disassociated, carrier-of-record is disassociated, b) the previous
b) the previous carrier-of-record is relegated to carrier-of-record is relegated to transit status, or c) the
transit status, or c) the new carrier-of-record is new carrier-of-record is placed in inactive mode. The
placed in inactive mode. The choice may be dependent choice may be dependent on the deployment scenario, and is
on the deployment scenario, and is out of scope for out of scope for this document.
this document.
3.7. Category: Misc 3.7. Category: Misc
UC MISC #1 Number Portability: The SSP wishes to provide, in query UC MISC #1 Number Portability: The SSP wishes to provide, in query
response to public identifiers, an associated routing response to public identifiers, an associated routing
number (RN). This is the case where a set of public number (RN). This is the case where a set of public
identifiers is no longer associated with original SSP but identifiers is no longer associated with original SSP but
have been ported to a recipient SSP, who provides access have been ported to a recipient SSP, who provides access
to these identifiers via a switch on the SS7 network to these identifiers via a switch on the Signaling System
identified by the RN. Number 7 network identified by the RN.
UC MISC #2 Data Recipient Offer and Accept: When a peering UC MISC #2 Data Recipient Offer and Accept: When a peering
relationship is established (or invalidated) SSPs relationship is established (or invalidated) SSPs
provision (or remove) data recipients in the registry. provision (or remove) data recipients in the registry.
However, a peer may first need to accept it's role (as a However, a peer may first need to accept it's role (as a
data recipient) before such a change is made effective. data recipient) before such a change is made effective.
Alternatively an auto-accept feature can be configured Alternatively an auto-accept feature can be configured
for a given data recipient. for a given data recipient.
UC MISC #3 Open numbering plans: In several countries, an open UC MISC #3 Open numbering plans: In several countries, an open
numbering plan is used, which is where the carrier-of- numbering plan is used, where the carrier-of-record is
record is only aware of a portion of the E.164 number only aware of a portion of the E.164 number (i.e., the TN
(i.e., the prefix). The carrier-of-record may not know prefix). The carrier-of-record may not know the complete
the complete number, or the number of digits in the number, or the number of digits in the number. The rest
number. The rest of the digits are handled offline of the digits are handled offline (e.g., by a Private
(e.g., by a PBX). For example, an SSP can be the Branch Exchange, or PBX). For example, an SSP can be the
carrier-of-record for "+123456789", and is also the carrier-of-record for "+123456789", and is also the
carrier-of-record for every possible expansion of that carrier-of-record for every possible expansion of that
number such as "+12345678901" and "+123456789012", even number such as "+12345678901" and "+123456789012", even
though the SSP does not know what those expansions could though the SSP does not know what those expansions could
be. This can be described as the carrier-of-record be. This can be described as the carrier-of-record
effectively being authoritative for the prefix. effectively being authoritative for the TN prefix.
4. Requirements 4. Requirements
This Section lists the requirements based on the use cases in This Section lists the requirements extracted from the use cases in
Section 3. Unless explicitly stated as optional, the registry Section 3. The objective is to make it easier for protocol designers
provisioning interface must support these requirements. to understand the underlying requirements, and to reference and list
the requirements that they support (or not). The requirements listed
here, unless explicitly indicated otherwise, are expected to be
supported. Protocol proposals are also expected to indicate their
compliance with these requirements, and highlight ones that they
don't meet (if any). Furthermore, the requirements listed here are
not meant to be limiting, i.e., protocol implementations and
deployments may choose to support additional requirements based on
use cases that are not listed in this document.
4.1. Provisioning Mechanisms 4.1. Provisioning Mechanisms
REQ-PROV-1: Real-time provisioning. REQ-PROV-1: Real-time provisioning.
REQ-PROV-2: Non-real-time bulk provisioning. REQ-PROV-2: (Optional) Non-real-time bulk provisioning.
REQ-PROV-3: Multi-request provisioning. REQ-PROV-3: Multi-request provisioning.
4.2. Interconnect Schemes 4.2. Interconnect Schemes
REQ-INTERCONNECT-1: Inter-SSP peering. REQ-INTERCONNECT-1: Inter-SSP peering.
REQ-INTERCONNECT-2: Direct and Indirect peering. REQ-INTERCONNECT-2: Direct and Indirect peering.
REQ-INTERCONNECT-3: Intra-SSP SED. REQ-INTERCONNECT-3: Intra-SSP SED.
skipping to change at page 17, line 4 skipping to change at page 17, line 8
REQ-INTERCONNECT-2: Direct and Indirect peering. REQ-INTERCONNECT-2: Direct and Indirect peering.
REQ-INTERCONNECT-3: Intra-SSP SED. REQ-INTERCONNECT-3: Intra-SSP SED.
REQ-INTERCONNECT-4: Selective peering. REQ-INTERCONNECT-4: Selective peering.
REQ-INTERCONNECT-5: Provisioning of a delegated hierarchy. REQ-INTERCONNECT-5: Provisioning of a delegated hierarchy.
4.3. SED Exchange and Discovery Requirements 4.3. SED Exchange and Discovery Requirements
REQ-SED-1: SED containing unified LUF and LRF content. REQ-SED-1: SED containing unified LUF and LRF content.
REQ-SED-2: SED containing LUF-only data using domain names. REQ-SED-2: SED containing LUF-only data using domain names.
REQ-SED-3: SED containing LUF-only data using administrative REQ-SED-3: SED containing LUF-only data using administrative
domains. domains.
REQ-SED-4: Support for all the other REQ-SED requirements, REQ-SED-4: Support for all the other REQ-SED requirements (listed in
concurrently, for the same public identifier. this Section), concurrently, for the same public
identifier (or TN Range or RN).
4.4. SED Record Content Requirements 4.4. SED Record Content Requirements
REQ-SED-RECORD-1: Ability to provision SED record content. REQ-SED-RECORD-1: Ability to provision SED record content.
REQ-SED-RECORD-2: (Optional) Communication of an associated TTL for REQ-SED-RECORD-2: (Optional) Communication of an associated TTL for
a SED Record. a SED Record.
4.5. Data Management Requirements 4.5. Data Management Requirements
REQ-DATA-MGMT-1: Separation of responsibility for the provisioning REQ-DATA-MGMT-1: Separation of responsibility for the provisioning
the points of ingress and other SED, from the the points of ingress and other SED, from the
responsibility of provisioning public identifiers. responsibility of provisioning public identifiers.
REQ-DATA-MGMT-2: Ability to aggregate a set of public identifiers as REQ-DATA-MGMT-2: Ability to aggregate a set of public identifiers as
destination groups. destination groups.
REQ-DATA-MGMT-3: Ability to create the aggregation termed route REQ-DATA-MGMT-3: Ability to create the aggregation termed route
group. group.
4.6. Lookup Key Requirements 4.6. Public Identifier, TN Range and RN Requirements
REQ-LOOKUP-1: Provisioning of, and modifications to, the following REQ-PI-TNR-RN-1: Provisioning of, and modifications to, the
aggregations: destination group and route groups. following aggregations: destination group and route
groups.
REQ-LOOKUP-2: Ability to distinguish an SSP as either the carrier- REQ-PI-TNR-RN-2: Ability to distinguish an SSP as either the
of-record provider or transit provider. carrier-of-record provider or transit provider.
REQ-LOOKUP-3: A given lookup key (e.g., public identity, RN, TN REQ-PI-TNR-RN-3: A given public identifier (or TN Range or RN) can
Range) can reside in multiple destination groups at reside in multiple destination groups at the same
the same time. time.
REQ-LOOKUP-4: Modification of lookup keys by allowing them to be REQ-PI-TNR-RN-4: Modification of public identifier (or TN Range or
moved to a different destination group via an atomic RN) by allowing them to be moved to a different
operation. destination group via an atomic operation.
REQ-LOOKUP-5: SSPs can indicate a change to their role from carrier- REQ-PI-TNR-RN-5: SSPs can indicate a change to their role from
of-record provider to transit, or vice-versa. carrier-of-record provider to transit, or vice-
versa.
REQ-LOOKUP-6: Support for modification of authority with the REQ-PI-TNR-RN-6: Support for modification of authority with the
conditions described in UC LOOKUP #6. conditions described in UC PI #6.
4.7. Misc. Requirements 4.7. Misc. Requirements
REQ-MISC-1: Number portability support. REQ-MISC-1: Number portability support.
REQ-MISC-2: Ability for the SSP to be offered a peering REQ-MISC-2: Ability for the SSP to be offered a peering
relationship, and for the SSP to accept (explicitly or relationship, and for the SSP to accept (explicitly or
implicitly) or reject such an offer. implicitly) or reject such an offer.
REQ-MISC-3: Support for open numbering plans. REQ-MISC-3: Support for open numbering plans.
skipping to change at page 22, line 7 skipping to change at page 22, line 7
and authorization of the provisioning entities are REQUIRED features and authorization of the provisioning entities are REQUIRED features
of the protocol and interfaces. of the protocol and interfaces.
6. IANA Considerations 6. IANA Considerations
This document does not register any values in IANA registries, nor This document does not register any values in IANA registries, nor
request the creation of a registry. request the creation of a registry.
7. Acknowledgments 7. Acknowledgments
This document is a result of various discussions held within the This document is a result of various contributions from (and
DRINKS WG; specifically , in alphabetical order: Alexander Mayrhofer, discussions within) the IETF DRINKS Working Group; specifically, in
Deborah A Guyton, Gregory Schumacher, Jean-Francois Mule, Kenneth alphabetical order: Alexander Mayrhofer, Deborah A Guyton, Gregory
Cartwright, Manjul Maharishi, Penn Pfautz, Ray Bellis, Richard Schumacher, Jean-Francois Mule, Kenneth Cartwright, Manjul Maharishi,
Shockey, and Syed Ali. Penn Pfautz, Ray Bellis, Richard Shockey, and Syed Ali.
This specific version of the document is a result of contributions The editor also wishes to thank the following for their comments and
from the following individuals: Alexander Mayrhofer, Otmar Lendl, suggestions: Otmar Lendl, Sohel Khan, Peter Koch, Brian Rosen, Jon
Sohel Khan, and Peter Koch. In addition, we also thank Brian Rose Peterson and Gonzalo Camarillo.
and Jon Peterson for suggestions we incorporated.
8. References 8. References
8.1. Normative References 8.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC5486] Malas, D. and D. Meyer, "Session Peering for Multimedia [RFC5486] Malas, D. and D. Meyer, "Session Peering for Multimedia
Interconnect (SPEERMINT) Terminology", RFC 5486, Interconnect (SPEERMINT) Terminology", RFC 5486,
 End of changes. 67 change blocks. 
198 lines changed or deleted 216 lines changed or added

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