--- 1/draft-ietf-speermint-architecture-11.txt 2010-10-23 00:13:57.000000000 +0200 +++ 2/draft-ietf-speermint-architecture-12.txt 2010-10-23 00:13:57.000000000 +0200 @@ -1,19 +1,19 @@ SPEERMINT D. Malas, Ed. Internet-Draft CableLabs Intended status: Informational J. Livingood, Ed. -Expires: March 3, 2011 Comcast - August 30, 2010 +Expires: April 25, 2011 Comcast + October 22, 2010 SPEERMINT Peering Architecture - draft-ietf-speermint-architecture-11 + draft-ietf-speermint-architecture-12 Abstract This document defines a peering architecture for the Session Initiation Protocol (SIP) [RFC3261], it's functional components and interfaces. It also describes the components and the steps necessary to establish a session between two SIP Service Provider (SSP) peering domains. Status of this Memo @@ -24,21 +24,21 @@ Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." - This Internet-Draft will expire on March 3, 2011. + This Internet-Draft will expire on April 25, 2011. Copyright Notice Copyright (c) 2010 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents @@ -49,67 +49,71 @@ described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Reference Architecture . . . . . . . . . . . . . . . . . . . . 3 3. Procedures of Inter-domain SSP Session Establishment . . . . . 4 4. Relationships Between Functions/Elements . . . . . . . . . . . 5 5. Recommended SSP Procedures . . . . . . . . . . . . . . . . . . 5 5.1. Originating SSP Procedures . . . . . . . . . . . . . . . . 5 - 5.1.1. The Look-Up Function (LUF) . . . . . . . . . . . . . . 5 + 5.1.1. The Look-Up Function (LUF) . . . . . . . . . . . . . . 6 5.1.1.1. Target Address Analysis . . . . . . . . . . . . . 6 5.1.1.2. ENUM Lookup . . . . . . . . . . . . . . . . . . . 6 5.1.2. Location Routing Function (LRF) . . . . . . . . . . . 7 5.1.2.1. DNS resolution . . . . . . . . . . . . . . . . . . 7 5.1.2.2. Routing Table . . . . . . . . . . . . . . . . . . 7 5.1.2.3. LRF to LRF Routing . . . . . . . . . . . . . . . . 7 - 5.1.3. The Signaling Path Border Element (SBE) . . . . . . . 7 + 5.1.3. The Signaling Path Border Element (SBE) . . . . . . . 8 5.1.3.1. Establishing a Trusted Relationship . . . . . . . 8 5.1.3.2. IPSec . . . . . . . . . . . . . . . . . . . . . . 8 5.1.3.3. Co-Location . . . . . . . . . . . . . . . . . . . 8 5.1.3.4. Sending the SIP Request . . . . . . . . . . . . . 8 - 5.2. Target SSP Procedures . . . . . . . . . . . . . . . . . . 8 - 5.2.1. The Ingress SBE . . . . . . . . . . . . . . . . . . . 8 + 5.2. Target SSP Procedures . . . . . . . . . . . . . . . . . . 9 + 5.2.1. The Ingress SBE . . . . . . . . . . . . . . . . . . . 9 5.2.1.1. TLS . . . . . . . . . . . . . . . . . . . . . . . 9 5.2.1.2. Receive SIP Requests . . . . . . . . . . . . . . . 9 5.3. Data Path Border Element (DBE) . . . . . . . . . . . . . . 9 - 6. Address Space Considerations . . . . . . . . . . . . . . . . . 9 + 6. Address Space Considerations . . . . . . . . . . . . . . . . . 10 7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 10 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 9. Security Considerations . . . . . . . . . . . . . . . . . . . 10 - 10. Contributors . . . . . . . . . . . . . . . . . . . . . . . . . 10 - 11. Change Log . . . . . . . . . . . . . . . . . . . . . . . . . . 11 - 12. Open Issues . . . . . . . . . . . . . . . . . . . . . . . . . 11 - 13. References . . . . . . . . . . . . . . . . . . . . . . . . . . 11 - 13.1. Normative References . . . . . . . . . . . . . . . . . . . 11 - 13.2. Informative References . . . . . . . . . . . . . . . . . . 12 - Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 13 + 10. Contributors . . . . . . . . . . . . . . . . . . . . . . . . . 11 + 11. Change Log . . . . . . . . . . . . . . . . . . . . . . . . . . 12 + 12. Open Issues . . . . . . . . . . . . . . . . . . . . . . . . . 12 + 13. References . . . . . . . . . . . . . . . . . . . . . . . . . . 13 + 13.1. Normative References . . . . . . . . . . . . . . . . . . . 13 + 13.2. Informative References . . . . . . . . . . . . . . . . . . 14 + Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 15 1. Introduction - This document defines a reference peering architecture in the context - of session peering for multimedia interconnects. In this process, we - define the peering reference architecture, its functional components, - and peering interface functions from the perspective of a SIP Service - providers [RFC5486] network. + This document defines a reference peering architecture for the + Session Initiation Protocol (SIP)[RFC3261], it's functional + components and interfaces, in the context of session peering for + multimedia interconnects. In this process, we define the peering + reference architecture, its functional components, and peering + interface functions from the perspective of a SIP Service providers + [RFC5486] network. Thus, it also describes the components and the + steps necessary to establish a session between two SIP Service + Provider (SSP) peering domains. - This architecture allows the interconnection of two SSPs in layer 5 - peering as defined in the SIP-based session peering requirements - [I-D.draft-ietf-speermint-requirements-09]. + This architecture enables the interconnection of two SSPs in layer 5 + peering, as defined in the SIP-based session peering requirements + [I-D.ietf-speermint-requirements]. Layer 3 peering is outside the scope of this document. Hence, the figures in this document do not show routers so that the focus is on - Layer 5 protocol aspects. + layer 5 protocol aspects. This document uses terminology defined in the Session Peering for - Multimedia Interconnect Terminology document [RFC5486]. + Multimedia Interconnect (SPEERMINT) Terminology document [RFC5486]. 2. Reference Architecture The following figure depicts the architecture and logical functions that form peering between two SSPs. +=============++ ++==============+ || || +-----------+ +-----------+ | SBE | +-----+ | SBE | @@ -183,93 +187,97 @@ * LRF can communicate with SF and SBE 5. Recommended SSP Procedures This section describes the functions in more detail and provides some recommendations on the role they would play in a SIP call in a Layer 5 peering scenario. Some of the information in the section is taken from - [I-D.draft-ietf-speermint-requirements-09] and is put here for - continuity purposes. + [I-D.ietf-speermint-requirements] and is put here for continuity + purposes. 5.1. Originating SSP Procedures + This section describes the procedures of the originating SSP. + 5.1.1. The Look-Up Function (LUF) Purpose is to determine the SF of the target domain of a given request and optionally develop Session Establishment Data. 5.1.1.1. Target Address Analysis When the originating SSP receives a request to communicate, it analyzes the target URI to determine whether the call needs to be routed internal or external to its network. The analysis method is internal to the SSP; thus, outside the scope of SPEERMINT. If the target address does not represent a resource inside the originating SSP?s administrative domain or federation of domains, then the originating SSP performs a Lookup Function (LUF) to determine a target address, and then is resolves the call routing data by using the Location routing Function (LRF). For example, if the request to communicate is for an im: or pres: URI - type, the originating SSP follows the procedures in [8]. If the - highest priority supported URI scheme is sip: or sips: the - originating SSP skips to SIP DNS resolution in Section 5.1.3. - Likewise, if the target address is already a sip: or sips: URI in an - external domain, the originating SSP skips to SIP DNS resolution in - Section 4.1.2.1. + type [RFC3861] [RFC3953], the originating SSP follows the procedures + in [8--NEED TO CORRECT REFERENCE]. If the highest priority supported + URI scheme is sip: or sips: the originating SSP skips to SIP DNS + resolution in Section 5.1.3. Likewise, if the target address is + already a sip: or sips: URI in an external domain, the originating + SSP skips to SIP DNS resolution in Section 4.1.2.1 [CORRECT REFERENCE + HERE]. If the target address corresponds to a specific E.164 address, the SSP may need to perform some form of number plan mapping according to local policy. For example, in the United States, a dial string beginning "011 44" could be converted to "+44", or in the United Kingdom "00 1" could be converted to "+1". Once the SSP has an E.164 address, it can use ENUM. 5.1.1.2. ENUM Lookup If an external E.164 address is the target, the originating SSP consults the public "User ENUM" rooted at e164.arpa, according to the - procedures described in RFC 3761. The SSP must query for the "E2U+ - sip" enumservice as described in RFC 3764 [11], but MAY check for - other enumservices. The originating SSP MAY consult a cache or - alternate representation of the ENUM data rather than actual DNS - queries. Also, the SSP may skip actual DNS queries if the - originating SSP is sure that the target address country code is not - represented in e164.arpa. If a sip: or sips: URI is chosen the SSP - skips to Section 5.1.6. + procedures described in [RFC3761]. The SSP must query for the "E2U+ + sip" enumservice as described in [RFC3764], but MAY check for other + enumservices. The originating SSP MAY consult a cache or alternate + representation of the ENUM data rather than actual DNS queries. + Also, the SSP may skip actual DNS queries if the originating SSP is + sure that the target address country code is not represented in + e164.arpa. If a sip: or sips: URI is chosen the SSP skips to Section + 5.1.6 [CORRECT REFERENCE HERE]. - If an im: or pres: URI is chosen for based on an "E2U+im" [8] or - "E2U+pres" [9] enumserver, the SSP follows the procedures for - resolving these URIs to URIs for specific protocols such a SIP or + If an im: or pres: URI is chosen for based on an "E2U+im" [RFC3861] + or "E2U+pres" [RFC3953] enumserver, the SSP follows the procedures + for resolving these URIs to URIs for specific protocols such a SIP or XMPP as described in the previous section. 5.1.2. Location Routing Function (LRF) The LRF of an Originating SSP analyzes target address and target domain identified by the LUF, and discovers the next hop signaling function (SF) in a peering relationship. The resource to determine the SF of the target domain might be provided by a third-party as in the assisted-peering case. The following sections define mechanisms which may be used by the LRF. These are not in any particular order and, importantly, not all of them may be used. 5.1.2.1. DNS resolution - The originating SSP uses the procedures in RFC 3263 [4] Section 4 to - determine how to contact the receiving SSP. To summarize the RFC - 3263 procedure: unless these are explicitly encoded in the target - URI, a transport is chosen using NAPTR records, a port is chosen - using SRV records, and an address is chosen using A or AAAA records. + The originating SSP uses the procedures in Section 4 of [RFC3263] to + determine how to contact the receiving SSP. To summarize the + [RFC3263] procedure: unless these are explicitly encoded in the + target URI, a transport is chosen using NAPTR records, a port is + chosen using SRV records, and an address is chosen using A or AAAA + records. When communicating with another SSP, entities compliant to this document should select a TLS-protected transport for communication from the originating SSP to the receiving SSP if available. 5.1.2.2. Routing Table If there are no End User ENUM records and the Originating SSP cannot discover the carrier-of-record or if the Originating SSP cannot reach the carrier-of-record via SIP peering, the Originating SSP may @@ -303,21 +311,21 @@ Optionally, a SF may perform additional functions such as Session Admission Control, SIP Denial of Service protection, SIP Topology Hiding, SIP header normalization, SIP security, privacy, and encryption. The SF of a SBE can also process SDP payloads for media information such as media type, bandwidth, and type of codec; then, communicate this information to the media function. Signaling function may optionally communicate with the network to pass Layer 3 related - policies [10]. + policies [10--NEED TO CORRECT REFERENCE]. 5.1.3.1. Establishing a Trusted Relationship Depending on the security needs and trust relationships between SSPs, different security mechanism can be used to establish SIP calls. These are discussed in the following subsections. 5.1.3.2. IPSec In certain deployments the use of IPSec between the signaling @@ -331,27 +339,33 @@ messages between the originating and terminating SSPs would be sent as clear text. 5.1.3.4. Sending the SIP Request Once a trust relationship between the peers is established, the originating SSP sends the request. 5.2. Target SSP Procedures + [ANY TEXT HERE?] + 5.2.1. The Ingress SBE + + [ANY TEXT HERE?] + 5.2.1.1. TLS When the receiving SSP receives a TLS client hello, it responds with its certificate. The Target SSP certificate should be valid and rooted in a well-known certificate authority. The procedures to - authenticate the SSP?s originating domain are specified in [24]. + authenticate the SSP's originating domain are specified in [24- + CORRECT REFERENCE-IS THIS FOR RFC5922?]. The SF of the Target SSP verifies that the Identity header is valid, corresponds to the message, corresponds to the Identity-Info header, and that the domain in the From header corresponds to one of the domains in the TLS client certificate. 5.2.1.2. Receive SIP Requests Once a trust relationship is established, the Target SSP is prepared to receive incoming SIP requests. For new requests (dialog forming @@ -390,88 +404,154 @@ 7. Acknowledgments The working group thanks Sohel Khan for his initial architecture draft that helped to initiate work on this draft. John Elwell, Mike Hammer, Otmar Lendl, Jason Livingood, Alexander Mayrhofer, Jean- Francois Mule, Jonathan Rosenberg, David Schwartz, Richard Shockey, Jim McEachern, and Dan Wing all made valuable contributions to versions of this document. A significant portion of this draft is taken from - [I-D.draft-mahy-speermint-direct-peering-02] with permission from the - author R. Mahy. + [I-D.mahy-speermint-direct-peering] with permission from the author + R. Mahy. 8. IANA Considerations This memo includes no request to IANA. 9. Security Considerations In all cases, cryptographic-based security should be maintained as an optional requirement between peering providers conditioned on the presence or absence of underlying physical security of SSP connections, e.g. within the same secure physical building. In order to maintain a consistent approach, unique and specialized security requirements common for the majority of peering relationships, should be standardized within the IETF. These standardized methods may enable capabilities such as dynamic peering relationships across publicly maintained interconnections. + Additional security considerations have been documented separately in + [I-D.ietf-speermint-voipthreats]. + 10. Contributors Adam Uzelac - Reinadlo Penno + Global Crossing + + Rochester, NY - USA + + Email: adam.uzelac@globalcrossing.com + + -------------------------------------------------------------- + + Reinaldo Penno + + Juniper Networks + + Sunnyvale, CA - USA + + Email: rpenno@juniper.net + + -------------------------------------------------------------- Mike Hammer - Sohel Khan + Cisco Systems + + Herndon, VA - USA + + Email: mhammer@cisco.com + + -------------------------------------------------------------- + + Sohel Khan, Ph.D. + + Comcast Cable + + Philadelphia, PA - USA + + Email: sohel_khan@cable.comcast.com + + -------------------------------------------------------------- Hadriel Kaplan + Acme Packet + + Burlington, MA - USA + Email: hkaplan@acmepacket.com + + -------------------------------------------------------------- + David Schwartz - Richard Shockey + XConnect Global Networks + + Jerusalem - Israel + + Email: dschwartz@xconnnect.net + + -------------------------------------------------------------- + + Rich Shockey + + Shockey Consulting + + USA + + Email: Richard@shockey.us 11. Change Log NOTE TO RFC EDITOR: PLEASE REMOVE THIS SECTION PRIOR TO PUBLICATION. - o -11 - Quick update to refresh the I-D since it expired, and - cleaned up some of the XML for references. A real revision is - coming soon. + o 12: Closed out several open issues. Properly XML-ized all + references. Updated contributors list. + + o 11: Quick update to refresh the I-D since it expired, and cleaned + up some of the XML for references. A real revision is coming + soon. 12. Open Issues NOTE TO RFC EDITOR: PLEASE REMOVE THIS SECTION PRIOR TO PUBLICATION. - o Cleanup odd spacing in XML + o Do all the references need to remain if they are not cited? If + they do, then add text to cite them. If not, remove them. - o Revise contributors list, which are really authors, due to - document masthead constraint + o Are the references in the correct sections? - o Lots of clean-up + o Validate references to RFC 3861, RFC 3953, and old references to + "reference 8" and "reference 10" and "reference 24". 13. References 13.1. Normative References [I-D.ietf-speermint-requirements] Mule, J., "SPEERMINT Requirements for SIP-based Session Peering", draft-ietf-speermint-requirements-09 (work in progress), October 2009. - [I-D.lee-speermint-use-case-cable] - Lee, Y., "Session Peering Use Case for Cable", - draft-lee-speermint-use-case-cable-01 (work in progress), - September 2006. + [I-D.ietf-speermint-voip-consolidated-usecases] + Uzelac, A. and Y. Lee, "VoIP SIP Peering Use Cases", + draft-ietf-speermint-voip-consolidated-usecases-18 (work + in progress), April 2010. + + [I-D.ietf-speermint-voipthreats] + Seedorf, J., Niccolini, S., Chen, E., and H. Scholz, + "SPEERMINT Security Threats and Suggested + Countermeasures", draft-ietf-speermint-voipthreats-05 + (work in progress), September 2010. [I-D.lendl-speermint-federations] Lendl, O., "A Federation based VoIP Peering Architecture", draft-lendl-speermint-federations-03 (work in progress), September 2006. [I-D.mahy-speermint-direct-peering] Mahy, R., "A Minimalist Approach to Direct Peering", draft-mahy-speermint-direct-peering-02 (work in progress), July 2007. @@ -503,20 +583,31 @@ June 2002. [RFC3263] Rosenberg, J. and H. Schulzrinne, "Session Initiation Protocol (SIP): Locating SIP Servers", RFC 3263, June 2002. [RFC3761] Faltstrom, P. and M. Mealling, "The E.164 to Uniform Resource Identifiers (URI) Dynamic Delegation Discovery System (DDDS) Application (ENUM)", RFC 3761, April 2004. + [RFC3764] Peterson, J., "enumservice registration for Session + Initiation Protocol (SIP) Addresses-of-Record", RFC 3764, + April 2004. + + [RFC3861] Peterson, J., "Address Resolution for Instant Messaging + and Presence", RFC 3861, August 2004. + + [RFC3953] Peterson, J., "Telephone Number Mapping (ENUM) Service + Registration for Presence Services", RFC 3953, + January 2005. + [RFC5486] Malas, D. and D. Meyer, "Session Peering for Multimedia Interconnect (SPEERMINT) Terminology", RFC 5486, March 2009. 13.2. Informative References [I-D.lewis-peppermint-enum-reg-if] Lewis, E., "ENUM Registry Interface Requirements", draft-lewis-peppermint-enum-reg-if-01 (work in progress), November 2007.