draft-ietf-drinks-usecases-requirements-03.txt | draft-ietf-drinks-usecases-requirements-04.txt | |||
---|---|---|---|---|
DRINKS S. Channabasappa, Ed. | DRINKS S. Channabasappa, Ed. | |||
Internet-Draft CableLabs | Internet-Draft CableLabs | |||
Intended status: Informational May 25, 2010 | Intended status: Informational October 25, 2010 | |||
Expires: November 26, 2010 | Expires: April 28, 2011 | |||
DRINKS Use cases and Protocol Requirements | DRINKS Use cases and Protocol Requirements | |||
draft-ietf-drinks-usecases-requirements-03 | draft-ietf-drinks-usecases-requirements-04 | |||
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 SIP Service | |||
Provider components, to assist with session routing. Specifically, | Provider components, to assist with session routing. Specifically, | |||
the current version of this document focuses on the provisioning of | the current version of this document focuses on the provisioning of | |||
one such element, termed the registry. | one such element, termed the registry. | |||
Status of this Memo | Status of this Memo | |||
skipping to change at page 1, line 34 | skipping to change at page 1, line 34 | |||
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 26, 2010. | This Internet-Draft will expire on April 28, 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 | |||
skipping to change at page 2, line 17 | 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: Lookup Keys . . . . . . . . . . . . . . . . . . 13 | |||
3.7. Category: Number Portability . . . . . . . . . . . . . . . 14 | 3.7. Category: Misc . . . . . . . . . . . . . . . . . . . . . . 14 | |||
3.8. Category: Misc . . . . . . . . . . . . . . . . . . . . . . 14 | ||||
4. Requirements . . . . . . . . . . . . . . . . . . . . . . . . . 16 | 4. Requirements . . . . . . . . . . . . . . . . . . . . . . . . . 16 | |||
5. Security Considerations . . . . . . . . . . . . . . . . . . . 18 | 4.1. Provisioning Mechanisms . . . . . . . . . . . . . . . . . 16 | |||
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 19 | 4.2. Interconnect Schemes . . . . . . . . . . . . . . . . . . . 16 | |||
7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 20 | 4.3. SED Exchange and Discovery Requirements . . . . . . . . . 16 | |||
8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 21 | 4.4. SED Record Content Requirements . . . . . . . . . . . . . 17 | |||
8.1. Normative References . . . . . . . . . . . . . . . . . . . 21 | 4.5. Data Management Requirements . . . . . . . . . . . . . . . 17 | |||
8.2. Informative References . . . . . . . . . . . . . . . . . . 21 | 4.6. Lookup Key Requirements . . . . . . . . . . . . . . . . . 18 | |||
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 22 | 4.7. Misc. Requirements . . . . . . . . . . . . . . . . . . . . 18 | |||
5. Security Considerations . . . . . . . . . . . . . . . . . . . 20 | ||||
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 21 | ||||
7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 22 | ||||
8. References . . . . . . . . . . . . . . . . . . . . . . . . . . 23 | ||||
8.1. Normative References . . . . . . . . . . . . . . . . . . . 23 | ||||
8.2. Informative References . . . . . . . . . . . . . . . . . . 23 | ||||
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 24 | ||||
1. Terminology | 1. 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]. | |||
This document reuses terms from [RFC3261] (e.g., SIP), [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. | establishment data (SED) and related information. A Registry can | |||
be part of an SSP as well as an independent entity. | ||||
Registrar An entity that provisions and manages data into the | ||||
registry. | ||||
Registrant An entity whose data is provisioned into the registry. | Registrar: An entity that provisions and manages data into the | |||
The registrant can act as its own registrar or - additionally or | registry. An SSP can act as its own registrar or - additionally | |||
alternatively - delegate this function to a third party who acts | or alternatively - delegate this function to a third party who | |||
as its registrar. | acts as its registrar. | |||
Local Data Repository: The data store component of an addressing | Local Data Repository: The data store component of an addressing | |||
server that provides resolution responses. | 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), an email address, or other identity as deemed appropriate, | (TN), a SIP address, or other identity as deemed appropriate, such | |||
such as a globally routable URI of a user address (e.g., | as a globally routable URI of a user address (e.g., | |||
mailto:john.doe@example.net). | sip:john.doe@example.net). | |||
TN Range: A numerically contiguous set of telephone numbers whose | TN Range: A numerically contiguous set (or, in the case of an open | |||
SED can be looked up (resolved). | numbering plan, a prefix) of telephone numbers whose SED can be | |||
looked up (resolved). | ||||
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. | TN Ranges, or RNs that share common SED which is exposed to a | |||
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, the destination groups that contain these | |||
public identifiers, and a routing group's SED records. | public identifiers, and a route group's SED records. | |||
Routing 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. | |||
Routing groups facilitate the management of SED records - which | Route groups facilitate the management of SED records for one or | |||
are common to a large number of public identifiers, TN Ranges or | more data recipients. | |||
RNs - for one or more data recipients. | ||||
2. Overview | 2. Overview | |||
The SPEERMINT WG specifies Session Establishment Data, or SED, as the | The SPEERMINT WG specifies Session Establishment Data, or SED, as the | |||
data used to route a call to the next hop associated with the called | data used to route a call to the next hop associated with the called | |||
domain's ingress point. More specifically, the SED is the set of | domain's ingress point. More specifically, the SED is the set of | |||
parameters that the outgoing signaling path border elements (SBEs) | parameters that the outgoing signaling path border elements (SBEs) | |||
need to establish a session. See [RFC5486] for more details. | need to establish a session. See Section 3.3 of [RFC5486] for more | |||
details. | ||||
The specification of the format and protocols to provision SED is a | The specification of the format and protocols to provision SED is a | |||
task taken up by the DRINKS WG. This document contains the use cases | task taken up by the DRINKS WG. This document contains the use cases | |||
and requirements that have been proposed in this regard. | and requirements that have been proposed in this regard. | |||
SED is typically created by the terminating SSP and consumed by the | SED is typically created by the terminating or next-hop SSP and | |||
originating SSP. To avoid a multitude of bilateral exchanges, SED is | consumed by the originating SSP. To avoid a multitude of bilateral | |||
often shared via intermediary systems - termed registries within this | exchanges, SED is often shared via intermediary systems - termed | |||
document. Such registries receive SED via provisioning transactions | registries within this document. Such registries receive data via | |||
from other SSPs, and then distribute the received data into Local | provisioning transactions from SSPs, and then distribute the received | |||
Data Repositories. These local data repositories are used for call | data into Local Data Repositories. These local data repositories are | |||
routing by outgoing SBEs. This is depicted in Figure 1. | used for call routing by outgoing SBEs. This is depicted in | |||
Figure 1. | ||||
*-------------* | *-------------* | |||
1. Provision SED | | | 1. Provision SED | | | |||
-----------------------> | Registry | | -----------------------> | Registry | | |||
| | | | | | |||
*-------------* | *-------------* | |||
/ \ | / \ | |||
/ \ | / \ | |||
/ \ | / \ | |||
/ \ | / \ | |||
skipping to change at page 6, line 5 | skipping to change at page 6, line 7 | |||
/ 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 version of the document, we primarily address the use cases | In this document, we primarily address the use cases and requirements | |||
and requirements for provisioning registries. Future revisions may | for provisioning registries. Future revisions may include data | |||
include data distribution to local data repositories. The resulting | distribution to local data repositories. The resulting provisioning | |||
provisioning protocol can be used to provision data into a registry, | protocol can be used to provision data into a registry, or between | |||
or between registries. This is depicted in Figure 2. | multiple registries operating in parallel. In Figure 2, 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 | +-----+ | | |||
| | | | | | | | | | |||
+-----------+ +-----------+ | +-----------+ +-----------+ | |||
skipping to change at page 6, line 39 | skipping to change at page 7, line 5 | |||
Where, LDR = Local Data Repository | 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 the following aggregation groups | |||
with regards to SED (refer to the use cases in Section 3.5 for the | with regards to SED (refer to the use cases in Section 3.5 for the | |||
rationale): | 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 Routing Group. | o Aggregation of SED records into a Route Group. | |||
The data model depicted in Figure 3 shows the various entities, | The data model depicted in Figure 3 shows the various entities, | |||
aggregations and the relationships between them. | aggregations and the relationships between them. | |||
+---------+ +--------------+ +---------+ | +---------+ +--------------+ +---------+ | |||
| Data |0..n 0..n| ROUTING | 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 | | | | |||
skipping to change at page 7, line 33 | skipping to change at page 7, line 37 | |||
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 Data Recipient object can be associated with zero or more | - A Public Identifier object can be directly related to zero or more | |||
Routing Group objects, and a Routing Group object can refer to | SED Record objects, and a SED Record object can be related to | |||
zero or more Data Recipient objects. | exactly one Public Identifier object. | |||
- A Routing Group object can contain zero or more SED Record | ||||
objects, and a SED Record object can be contained in exactly one | ||||
Routing Group object. | ||||
- A Routing Group object can be associated with zero or more | ||||
Destination Group objects, and a Destination Group object can be | ||||
associated with zero or more Routing Group objects. | ||||
- A Destination Group object can contain zero or more RN objects, | ||||
and an RN object can be contained in exactly one Destination Group | ||||
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, | ||||
and an RN object can be contained in exactly one Destination Group | ||||
object. | ||||
- A Route Group object can contain zero or more SED Record objects, | ||||
and a SED Record object can be contained in exactly one Route | ||||
Group object. | ||||
- A Route Group object can be associated with zero or more | ||||
Destination Group objects, and a Destination Group object can be | ||||
associated with zero or more Route Group objects. | ||||
- 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 | ||||
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 authorization. However, the act of authorization is considered to | |||
be out of scope within this document. | be out of scope of this document. | |||
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, in association | |||
with their SED. These systems often function in a manner | with their SED. These systems often function in a manner | |||
that expect or require that these provisioning activities | that expect or require that these provisioning activities | |||
be completed immediately, as apposed to an out-of-band or | be completed immediately, as apposed to an out-of-band or | |||
batch provisioning scheme that can occur at a later time. | batch provisioning scheme that can occur at a later time. | |||
This type of provisioning is referred to as real-time, or | This type of provisioning is referred to as real-time, or | |||
skipping to change at page 10, line 22 | skipping to change at page 10, line 22 | |||
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 | |||
provider when selecting a route to a public | provider when selecting a route to a public | |||
identifier. | identifier. | |||
UC INTERCONNECT #3 Intra-SSP SED: SSPs support the establishment of | UC INTERCONNECT #3 Intra-SSP SED: SSPs support the establishment of | |||
sessions between their own public identifiers, | sessions between their own public identifiers, | |||
not just to other SSPs public identifiers. | not just to other SSPs' public identifiers. | |||
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. | same set of public identifiers. | |||
UC INTERCONNECT #5 Provisioning of a delegated name server: An SSP | UC INTERCONNECT #5 Provisioning of a delegated hierarchy: An SSP may | |||
maintains a Tier 2 name server that contains the | decide to maintain its own infrastructure to | |||
NAPTR records that constitute the terminal step | contain the route records that constitue the | |||
in the LUF. The SSP needs to provision a | terminal step in the LUF. In such cases, the SSP | |||
registry to direct queries for the SSP's numbers | will provision registries to direct queries for | |||
to the Tier 2 name server. Usually queries to | the SSP's public identifiers to its own | |||
the registry should return NS records, but in | infrastructure, rather than provisioning the | |||
cases where the Tier 2 uses a different domain | route records directly. For example, in the case | |||
suffix from that used in the registry, CNAME and | of DNS-based route records, such a delegated | |||
NS records may be employed instead. | hierarchy would make use of NS and CNAME records, | |||
while a flat structure would make use of NAPTR | ||||
resource records. | ||||
3.3. Category: SED Exchange and Discovery Models | 3.3. Category: SED Exchange and Discovery Models | |||
UC SED EXCHANGE #1 SED Exchange and Discovery using unified LUF/LRF: | UC SED EXCHANGE #1 SED Exchange and Discovery using unified LUF/LRF: | |||
When establishing peering relationships some SSPs | When establishing peering relationships some SSPs | |||
wish to communicate or receive points of ingress | may wish to communicate or receive SED (e.g., | |||
and other SED that contain LUF and LRF. | points of ingress) that constitutes the | |||
aggregated result of both LUF and LRF. | ||||
UC SED EXCHANGE #2 SED Exchange and Discovery using LUF's Domain | UC SED EXCHANGE #2 SED Exchange and Discovery using LUF's Domain | |||
Name: When establishing peering relationships | Name: When establishing peering relationships | |||
some SSPs may not wish to communicate or receive | some SSPs may not wish to communicate or receive | |||
points of ingress and other SED using a registry. | points of ingress and other SED using a registry. | |||
They wish to only communicate or receive domain | They wish to only communicate or receive domain | |||
names resolvable via [RFC3263], and this query | names (LUF step only), and then independently | |||
will then return the points of ingress or other | resolvable those domain names via [RFC3263] to | |||
SED that form the LUF. | the final points of ingress data (and other SED). | |||
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 occurs outside the | |||
context of this protocol. | context of this protocol. | |||
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 described above, for the same set of | |||
lookup keys. | 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. | |||
skipping to change at page 12, line 30 | skipping to change at page 12, line 30 | |||
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 provisions 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. Groups of | for large numbers of public identifiers. For reasons of | |||
public identifiers that have the same SED are created. | efficiency, groups of public identifiers that have the | |||
This grouping is know as Destination Group. SED is then | same SED can be aggregated. These aggregations are known | |||
indirectly associated with that group rather than to each | as destination groups. The SED is then indirectly | |||
associated with destination groups rather than with each | ||||
individual public identity. | individual public identity. | |||
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, and then expose that | |||
relationship between a group of SED records and a group | relationship between a group of SED records and a group | |||
of public identifiers to one or more SSPs. This combined | of public identifiers to one or more SSPs. This combined | |||
grouping of SED records and Destination Groups | grouping of SED records and Destination Groups | |||
facilitates management of public identity SED | facilitates management of public identity SED | |||
relationships and the list of peers (data recipients) | relationships and the list of peers (data recipients) | |||
that can lookup those public identifiers and receive that | that can lookup those public identifiers and receive that | |||
skipping to change at page 14, line 22 | skipping to change at page 14, line 23 | |||
or TN Range. If the public identity or TN Range was | or TN Range. If the public identity or TN Range was | |||
previously associated with a different carrier-of- | previously associated with a different carrier-of- | |||
record then there are multiple possible outcomes, such | record then there are multiple possible outcomes, such | |||
as: a) the previous carrier-of-record is disassociated, | as: a) the previous carrier-of-record is disassociated, | |||
b) the previous carrier-of-record is relegated to | b) the previous carrier-of-record is relegated to | |||
transit status, or c) the new carrier-of-record is | transit status, or c) the new carrier-of-record is | |||
placed in inactive mode. The choice may be dependent | placed in inactive mode. The choice may be dependent | |||
on the deployment scenario, and is out of scope for | on the deployment scenario, and is out of scope for | |||
this document. | this document. | |||
3.7. Category: Number Portability | 3.7. Category: Misc | |||
UC NP #1 EDITOR's NOTE: Need to clarify this further. | ||||
The SSP wishes to provide in query response to public | UC MISC #1 | |||
identifiers an associated routing number or RN. This is | ||||
the case when a set of public identifiers is no longer | ||||
associated with original SSP but have been ported to a | ||||
recipient SSP who provides access to these identifiers via | ||||
a switch on the SS7 network identified by the RN. In this | ||||
case a destination group containing all numbers that should | ||||
be routed to this RN needs to be created and the route | ||||
group associated with this DG needs to contain the RN | ||||
3.8. Category: Misc | The SSP wishes to provide, in query response to public | |||
identifiers, an associated routing number (RN). This is | ||||
the case where a set of public identifiers is no longer | ||||
associated with original SSP but have been ported to a | ||||
recipient SSP, who provides access to these identifiers | ||||
via a switch on the SS7 network identified by the RN. | ||||
UC MISC #1 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 #2 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 such that the carrier- | numbering plan is used, which is where the carrier-of- | |||
of-record does not in fact know the complete number, but | record is only aware of a portion of the E.164 number | |||
instead only knows a portion of the E.164 number. The | (i.e., the prefix). The carrier-of-record may not know | |||
rest of the digits are handled by a PBX off of that | the complete number, or the number of digits in the | |||
carrier-of-record, and even the number of those digit is | number. The rest of the digits are handled offline | |||
not fixed. For example, an SSP can be the carrier-of- | (e.g., by a PBX). For example, an SSP can be the | |||
record for "+123456789", and is also the carrier-of- | carrier-of-record for "+123456789", and is also the | |||
record for every possible expansion of that number such | carrier-of-record for every possible expansion of that | |||
as "+12345678901" and "+123456789012", even though the | number such as "+12345678901" and "+123456789012", even | |||
SSP does not know what those expansions could be, because | though the SSP does not know what those expansions could | |||
the PBX decides that. This can be described as the | be. This can be described as the carrier-of-record | |||
carrier-of-record effectively being authoritative for a | effectively being authoritative for the prefix. | |||
"prefix". | ||||
4. Requirements | 4. Requirements | |||
This Section lists the requirements based on the use cases in | This Section lists the requirements based on the use cases in | |||
Section 3. Unless explicitly stated as optional, the registry | Section 3. Unless explicitly stated as optional, the registry | |||
provisioning interface must support these requirements. | provisioning interface must support these requirements. | |||
REQ1: a) Real-time, b) non-real-time bulk, and c) multi-request | 4.1. Provisioning Mechanisms | |||
provisioning. | ||||
REQ2: Inter-SSP SED with support for direct and indirect peering. | REQ-PROV-1: Real-time provisioning. | |||
REQ3: Intra-SSP SED. | REQ-PROV-2: Non-real-time bulk provisioning. | |||
REQ4: Selective peering. | REQ-PROV-3: Multi-request provisioning. | |||
REQ5: Provisioning of a delegated name server. | 4.2. Interconnect Schemes | |||
REQ6: The following SED Exchange and discovery models (concurrently | REQ-INTERCONNECT-1: Inter-SSP peering. | |||
for the same public identifier): a) unified LUF/LRF, b) LUF- | ||||
only with domain name, and c) LUF-only with administrative | ||||
domain. | ||||
REQ7: Provisioning of SED Record content | REQ-INTERCONNECT-2: Direct and Indirect peering. | |||
REQ8: (Optional) Communicate the TTL for a given SED Record. | REQ-INTERCONNECT-3: Intra-SSP SED. | |||
REQ9: Separation of responsibility of provisioning the points of | REQ-INTERCONNECT-4: Selective peering. | |||
ingress and other SED, from the responsibility of | ||||
provisioning public identifiers. | ||||
REQ10: Additions and deletions of public identifiers, TN ranges and | REQ-INTERCONNECT-5: Provisioning of a delegated hierarchy. | |||
RNs. | ||||
REQ11: Provisioning of, and modifications to, the following | 4.3. SED Exchange and Discovery Requirements | |||
aggregations: destination group and route groups. | REQ-SED-1: SED containing unified LUF and LRF content. | |||
REQ12: Support the distinction between an SSP as a carrier-of-record | REQ-SED-2: SED containing LUF-only data using domain names. | |||
provider versus transit provider. | ||||
REQ13: Support for lookup keys having identical business keys (the | REQ-SED-3: SED containing LUF-only data using administrative | |||
public identity string, the digits that comprise an RN, the | domains. | |||
start and end point of a TN range's range) that concurrently | ||||
exist across multiple destination groups and where each | ||||
destination group may be managed by different SSPs. | ||||
Editor's note: We need to simplify the above requirement. | REQ-SED-4: Support for all the other REQ-SED requirements, | |||
concurrently, for the same public identifier. | ||||
REQ14: Modification of lookup keys by allowing them to be moved to a | 4.4. SED Record Content Requirements | |||
different destination group via an atomic operation. | ||||
REQ15: SSPs to change their Carrier-Of- Record vs Transit role. | REQ-SED-RECORD-1: Ability to provision SED record content. | |||
REQ16: Support for modification of authority with the conditions | REQ-SED-RECORD-2: (Optional) Communication of an associated TTL for | |||
described in UC LOOKUP #6. | a SED Record. | |||
REQ17: Destination group offer and acceptance (optionally support | 4.5. Data Management Requirements | |||
auto-acceptance). | ||||
REQ18: Open numbering plans. | REQ-DATA-MGMT-1: Separation of responsibility for the provisioning | |||
the points of ingress and other SED, from the | ||||
responsibility of provisioning public identifiers. | ||||
REQ-DATA-MGMT-2: Ability to aggregate a set of public identifiers as | ||||
destination groups. | ||||
REQ-DATA-MGMT-3: Ability to create the aggregation termed route | ||||
group. | ||||
4.6. Lookup Key Requirements | ||||
REQ-LOOKUP-1: Provisioning of, and modifications to, the following | ||||
aggregations: destination group and route groups. | ||||
REQ-LOOKUP-2: Ability to distinguish an SSP as either the carrier- | ||||
of-record provider or transit provider. | ||||
REQ-LOOKUP-3: A given lookup key (e.g., public identity, RN, TN | ||||
Range) can reside in multiple destination groups at | ||||
the same time. | ||||
REQ-LOOKUP-4: Modification of lookup keys by allowing them to be | ||||
moved to a different destination group via an atomic | ||||
operation. | ||||
REQ-LOOKUP-5: SSPs can indicate a change to their role from carrier- | ||||
of-record provider to transit, or vice-versa. | ||||
REQ-LOOKUP-6: Support for modification of authority with the | ||||
conditions described in UC LOOKUP #6. | ||||
4.7. Misc. Requirements | ||||
REQ-MISC-1: Number portability support. | ||||
REQ-MISC-2: Ability for the SSP to be offered a peering | ||||
relationship, and for the SSP to accept (explicitly or | ||||
implicitly) or reject such an offer. | ||||
REQ-MISC-3: Support for open numbering plans. | ||||
5. Security Considerations | 5. Security Considerations | |||
Session establishment data allows for the routing of SIP sesions | Session establishment data allows for the routing of SIP sesions | |||
within, and between, SIP Service Providers. Access to this data can | within, and between, SIP Service Providers. Access to this data can | |||
compromise the routing of sessions and expose a SIP Service Provider | compromise the routing of sessions and expose a SIP Service Provider | |||
to attacks such as service hijacking and denial of service. The data | to attacks such as service hijacking and denial of service. The data | |||
can be compromised by vulnerable functional components and interfaces | can be compromised by vulnerable functional components and interfaces | |||
identified within the use cases. | identified within the use cases. | |||
A provisioning protocol or interface that implements the described | ||||
use cases MUST therefore provide data confidentiality, and MUST | ||||
ensure message integrity for the provisioning flow. Authentication | ||||
and authorization of the provisioning entities are REQUIRED features | ||||
of the protocol and interfaces. | ||||
6. IANA Considerations | 6. IANA Considerations | |||
This document does not register any values in IANA registries. | This document does not register any values in IANA registries, nor | |||
request the creation of a registry. | ||||
7. Acknowledgments | 7. Acknowledgments | |||
This document is a result of various discussions held by the DRINKS | This document is a result of various discussions held within the | |||
requirements design team, which is comprised of the following | DRINKS WG; specifically , in alphabetical order: Alexander Mayrhofer, | |||
individuals, in alphabetical order: Deborah A Guyton (Telcordia), | Deborah A Guyton, Gregory Schumacher, Jean-Francois Mule, Kenneth | |||
Gregory Schumacher (Sprint), Jean-Francois Mule (CableLabs), Kenneth | Cartwright, Manjul Maharishi, Penn Pfautz, Ray Bellis, Richard | |||
Cartwright (TNS, Inc.), Manjul Maharishi (TNS, Inc.), Penn Pfautz | Shockey, and Syed Ali. | |||
(AT&T Corp), Ray Bellis (Nominet), the co-chairs (Richard Shockey, | ||||
Nuestar; and Alexander Mayrhofer, enum.at GmbH), and the editors of | ||||
this document. | ||||
This specific version of the document is a result of contributions | This specific version of the document is a result of contributions | |||
from, primarily, David Schwartz (XConnect), Kenneth Cartwright (TNS, | from the following individuals: Alexander Mayrhofer, Otmar Lendl, | |||
Inc.) and Syed Ali (Neustar, Inc.). Other participants who reviewed | Sohel Khan, and Peter Koch. In addition, we also thank Brian Rose | |||
and provided comments include: Alexander Mayrhofer (enum.at GmbH), | and Jon Peterson for suggestions we incorporated. | |||
Jean-Francois Mule (CableLabs), Manjul Maharishi (TNS, Inc.), Hadriel | ||||
Kaplan (Acme Packet) and other participants on the DRINKS mailing | ||||
list. | ||||
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 | ||||
Interconnect (SPEERMINT) Terminology", RFC 5486, | ||||
March 2009. | ||||
8.2. Informative References | 8.2. Informative References | |||
[RFC3261] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, | [RFC3261] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, | |||
A., Peterson, J., Sparks, R., Handley, M., and E. | A., Peterson, J., Sparks, R., Handley, M., and E. | |||
Schooler, "SIP: Session Initiation Protocol", RFC 3261, | Schooler, "SIP: Session Initiation Protocol", RFC 3261, | |||
June 2002. | June 2002. | |||
[RFC3263] Rosenberg, J. and H. Schulzrinne, "Session Initiation | [RFC3263] Rosenberg, J. and H. Schulzrinne, "Session Initiation | |||
Protocol (SIP): Locating SIP Servers", RFC 3263, | Protocol (SIP): Locating SIP Servers", RFC 3263, | |||
June 2002. | June 2002. | |||
[RFC4694] Yu, J., "Number Portability Parameters for the "tel" URI", | ||||
RFC 4694, October 2006. | ||||
[RFC5067] Lind, S. and P. Pfautz, "Infrastructure ENUM | [RFC5067] Lind, S. and P. Pfautz, "Infrastructure ENUM | |||
Requirements", RFC 5067, November 2007. | Requirements", RFC 5067, November 2007. | |||
[RFC5486] Malas, D. and D. Meyer, "Session Peering for Multimedia | ||||
Interconnect (SPEERMINT) Terminology", RFC 5486, | ||||
March 2009. | ||||
Author's Address | Author's Address | |||
Sumanth Channabasappa | Sumanth Channabasappa | |||
CableLabs | CableLabs | |||
858 Coal Creek Circle | 858 Coal Creek Circle | |||
Louisville, CO 80027 | Louisville, CO 80027 | |||
USA | USA | |||
Email: sumanth@cablelabs.com | Email: sumanth@cablelabs.com | |||
End of changes. 62 change blocks. | ||||
168 lines changed or deleted | 212 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/ |