Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
VoIP peering – a snapshot Henning Schulzrinne w/Charles Shen Dept. of Computer Science Columbia University http://www.cs.columbia.edu/~hgs May 22, 2006 Overview • • • • • • Review: What is VoIP peering? Why VoIP peering? Scaling peering to millions of users Challenges for VoIP peering Beyond PSTN replacement Resources May 22, 2006 What is VoIP peering? • Definitions from IETF SPEERMINT Working Group: – “Peering … refers to the negotiation of reciprocal interconnection arrangements, settlement-free or otherwise, between operationally independent service providers.” (draft-ietf-speermint-res-and-terminology-01) – Layer 5 peering refers to interconnection of two service providers for the purposes of exchanging SIP signaling. Note that in the layer 5 peering case, there is no requirement for any intervening "Layer 5 Transit Network". Each service provider is expected to interconnect directly with other service providers, although a service provider is allowed to interconnect through another domain (ex: a federation) to act on its behalf. (SPEERMINT, IETF 65) • Cable Labs – “The notion of IP Service Peering (and VoIP Peering) … extends the relationship between network operators above the IP layer, by handling the IP-based services and applications that can be exchanged.” May 22, 2006 Why VoIP peering? • Near-term motivations – avoid PSTN hops between VoIP service providers – codify provider trust relationships – bridge wait until global ENUM • Longer term motivations – no PSTN in the middle • • • • advanced signaling services no transcoding better audio quality wideband audio codecs video, IM, … – possibly increase in trust • smaller number of players spam, spit May 22, 2006 Why is VoIP peering needed? • Non-reasons – SIP: providers can talk directly to each other if SIP URIs are available • sip:[email protected] look up SIP server for example.com (NAPTR, SRV) and connect • email-like no email peering – L3: probably best to avoid triangle routing • Reasons – E.164 numbering: who serves the customer with +1 212 555 1234? • absence of global ENUM – interoperability – billing May 22, 2006 Session interconnect E.164 number peer discovery ENUM lookup of NAPTR in DNS SIP URI aka call routing data (CRD) derived from ENUM record service location (lookup of NAPTR and SRV) in DNS host name addressing and session establishment lookup of A and AAAA in DNS IP address routing protocols, ARP, … MAC address May 22, 2006 Peering evolution VoIP Service Providers interconnect via PSTN using E.164 numbers for addressing VSP VSP VSP +4315056416 PSTN Plane Otmar Lendl, March 2006 (SPEERMINT) May 22, 2006 VSP VSP Messy reality Private Interconnection Network Private Interconnection Network sip:[email protected] VSP VSP Public Internet PSTN Plane Otmar Lendl, March 2006 (SPEERMINT) May 22, 2006 VSP VSP VSP Closed SIP federation Example: Cable operators • MSOs want to avoid PSTN traversal • Call Management Server Signaling (CMSS) = SIP Administrative Domain 2 Administrative Domain 1 ` ` SIP MSO A Zone 1 CMS CMSS CMS MSO B Zone 3 PSTN Gateway SIP Managed IP Backbone CMSS ` MSO A Zone 2 PSTN SIP SIP CMS Servers CMS CMSS ` PSTN Gateway PSTN MSO C Zone 4 ` PSTN Gateway PSTN Administrative Domain 3 May 22, 2006 Jean-François Mulé, IETF 63 Peering: decomposed model domain A May 22, 2006 domain B draft-penno-message-flows-02 Peering: collapsed model ~~~~ ~~~~ ~~~~ ~~~~ B2BUA domain A May 22, 2006 domain B draft-penno-message-flows-02 Peering authorization P1 • On-demand INVITE – “email model” – as needed when exchanging SIP messages – usually, mutual TLS authentication – proposed SUBSCRIBE/NOTIFY key exchange • Static – established ahead of signaling – e.g., TLS or IPsec – proposed SUBSCRIBE/NOTIFY key exchange May 22, 2006 P2 draft-penno-message-flows-02 100 Trying SUBSCRIBE w/PeerAuth 401 Unauthorized SUBSCRIBE w/auth 202 Accepted NOTIFY w/P2key INVITE 401 Unauthorized INVITE + P2Key INVITE 100 Trying Role of ENUM in peering • Core service: look up provider for E.164 number • ENUM models – Public ENUM: e164.arpa – Private ENUM: limited access to DNS records (e.g., by VPN) – Carrier ENUM: • Options: – resolve to subscriber SIP URI • +1 212 555 1234 sip:[email protected];user=phone – resolve to neutral peering provider • +1 212 555 1234 sip:[email protected];user=phone • peering.com proxy translates to actual provider – resolve to carrier ENUM DNS server • +1 212 555 1234 enum.vsp.com NAPTR query on enum.vsp.com – service provider identifier (SPID) • +1 212 555 1234 NXXX May 22, 2006 ENUM in a Nutshell • Take an E.164 number • Convert it to FQDN • Query DNS for NAPTRs • Apply resulting regexs to get list of URIs: +1-734-913-4257 7.5.2.4.3.1.9.4.3.7.1.e164.arpa. e164.arpa. 1.e164.arpa. 4.3.7.1e164.arpa. x.x.x.1.e164.arpa. sip:[email protected] mailto:[email protected] sip:[email protected] May 22, 2006 Ben Teitelbaum, John Todd, Dennis Baron: “ISN Numbers: Fast, Free, and Forever Yours” March 16, 2006 Spring VON, San Jose, CA Who serves an E.164 number? • Find “point of interconnection” (PoI) for given E.164 number • Peering provider can answer question locally • Likely to have dozens of such peering exchanges and federations – each provider will be a member of some subset of these • Kludge: originating provider asks all its peering providers in parallel – via DNS ENUM lookup • Possibly federate peering providers – flood number information, pointing to peering ENUM – multiple resolutions can’t be DNS May 22, 2006 Carrier (infrastructure) ENUM • User ENUM – “entity or person having the right-to-use of an E.164 number has the sole discretion about the content of the associated domain and thus the zone content” (draft-haberler-carrier-enum-02) – end user as registrant • Carrier (now, infrastructure) ENUM – "carrier of record" (COR) as registrant • Proposal: branch under e164.arpa: – 4.9.7.1.carrier.e164.arpa or – 4.9.7.carrier.1.e164.arpa May 22, 2006 Carrier ENUM • COR = registrant – block holder allocated by National Regulatory Authority (NRA) – "International Networks" (+882) or "Universal Personal Telecommunications (UPT)" (+878) allocated by ITU – recipient of a port (service provider) – has been contracted by a user to route a number assigned to a user directly (without COR being in the number assignment path) • corporate network numbers • 800/900 type numbers in many countries • Include all E.164 numbers in block – avoid ability to detect listed vs. unlisted numbers May 22, 2006 Provider hiding • Some providers worry about exposing their identity to competitors – competitors could target customers for marketing efforts – unclear if more than theoretical issue • Solution: – send calls to peering provider SIP proxy, not directly to VSP proxy • ENUM: [email protected] – peering provider does database (or internal ENUM) lookup May 22, 2006 Challenge: provisioning ENUM entries • Dynamic DNS not suitable: security, scaling • Options: – bulk upload via ftp, HTTP, … – EPP (Extensible Provisioning Protocol) – RFC 3730 • XML-based protocol designed originally for domain number management May 22, 2006 SPEERMINT discussion: federations • A federation is a group of VoIP service providers / enterprises which – agree to receive calls from each other via SIP – agree on a set of administrative rules for such calls (settlement, abusehandling, ...), and – agree on specific rules for the technical details of the interconnection • Federations have a unique identifier • TLS-based – Public Internet, SIP over TLS, federation acts as X.509 Certification Authority. • Private network – Federation builds its own network; members connect directly over this network. • SIP hubs / transit networks – Calls are routed via a central SIP proxy May 22, 2006 Otmar Lendl, “The Domain Policy DDDS Application”, IETF 65, March 2006 Domain Policy DDDS basics • The domain is the key to the destination policy – Use the DNS as rule store – No special translation rules necessary – Infrastructure is in place • Example: example.com. IN NAPTR 10 50 "U" "D2P+SIP:fed" "!^.*$!http://sipxconnect.example.org/!" . “Regarding SIP, example.com is a member of the federation identified by this URI.” • Non-terminal NAPTR for customer domains referring to provider domains • Protocol agnostic – SIP is just a special case May 22, 2006 Otmar Lendl, “The Domain Policy DDDS Application”, IETF 65, March 2006 Longer-term opportunities for peering • Enterprise trunk backup management – PSTN as primary, VoIP as backup (or vice versa) • Spam/SPIT prevention – accountable carriers – trustable user identification (“caller ID”) – exchange of abuse information • Billing and settlements – if per-call billing May 22, 2006 ENUM performance • Busy hour traffic estimate: – 0.1 Erlang 2 calls/hour/user – 100 mio users roughly 55,000 calls/second lookup rate • Post-dial delay bounds: few seconds – includes signaling latency – DNS unlikely to be a significant contributor (except if packet loss) • DNS server platform: – OS: Linux version 2.6.11 – 1 or 2 Intel Pentium 4 CPU 3.00GHz, 1 GB memory • DNS servers: – BIND – PowerDNS (PDNS) • • • • Open Source Authoritative Nameserver Used by 50% of .de and 20% rest of the world, including e164.org. Runs on Linux, FreeBSD, NetBSD, OpenBSD, Solaris Serves data from MySQL, PostgreSQL, LDAP, BIND zone files, … – Nominum ANS May 22, 2006 Preliminary Black Box Test ENUM server Client 5 Client 1 May 22, 2006 Client 2 Client 3 Client 4 Black-box Comparison Results IRT BIND 9.3.2 Nominum BIND 9.3.0 IRT PDNS + BIND Nominum PDNS +BIND IRT PDNS +MySQL Nominum PDNS +MySQL Nominum ANS * 10 M Records Load Pass Pass Pass Fail Pass Not Tested Pass Queries per Second 521 143 9,208 N/A 2,051 Not Tested 43,135 Average Latency (s) 0.190 0.618 0.011 N/A 0.048 Not Tested 0.0016 •All columns denoted as Nominum are from the Nominum white paper “ENUM Scalability and Performance Testing”. •The last column, Nominum ANS is tested with 200M records, all the rest are tested with 10M records. •PDNS test uses its default settings. May 22, 2006 PDNS response time – record exists May 22, 2006 PDNS: Throughput – record exists May 22, 2006 Throughput: PDNS and caching May 22, 2006 Throughput – BIND May 22, 2006 Throughput - ANS May 22, 2006 ITAD Subscriber Numbers (ISN) • 4257*260 locally assigned Internet Telephony Administrative Domain (ITAD) • ITADs – – – – Defined by Telephony Routing over IP (TRIP) [RFC3219] Globally unique Lots of them (256 through 232-1) IANA is already set up to allocate • ISN resolution works just like ENUM May 22, 2006 Ben Teitelbaum et al, March 2006 ISN in a Nutshell • Take an ISN • Convert it to FQDN • Query DNS for NAPTRs • Apply resulting regexs to get list of URIs: 4257*260 7.5.2.4.260.freenum.org. freenum.org. 260.freenum.org. sip:[email protected] mailto:[email protected] sip:[email protected] May 22, 2006 Note: We are working to ensure that the ISN root zone will be administered on behalf of the ISN user community by a neutral, non-profit organization. Following the trial, the root may or may not be “freenum.org”. Ben Teitelbaum, John Todd, Dennis Baron: “ISN Numbers: Fast, Free, and Forever Yours” March 16, 2006 Spring VON, San Jose, CA ISN vs ENUM vs SIP AOR Example ISN 7031*260 ENUM +1-734-352-7031 SIP AOR [email protected] Familiarity Huh? Phone numbers Email address Delegating Authority IANA ITU, national government, ICANN, TLD registrars … Address Structure local*domain Hierarchical / geographical local@domain Portability With domain owner’s cooperation Varies by country ??? With domain owner’s cooperation Fragmentation One space Public ENUM + multiple private ENUMs One space May 22, 2006 Ben Teitelbaum, John Todd, Dennis Baron: “ISN Numbers: Fast, Free, and Forever Yours” March 16, 2006 Spring VON, San Jose, CA Conclusion • Peering as crucial next step for large-scale VoIP – weaning off the PSTN… – needed to get beyond black-phone service • ENUM as core peering service – needed as long as phone numbers are in use – slow transition from private to public ENUM • Peering is ENUM + – security associations – privacy protections (for carrier and users) – billing and settlements? • Peering issues – provisioning of E.164 records – which peer? • Need for high-performance service architecture May 22, 2006 Resources • ENUM: RFC 3761 – carrier ENUM: draft-haberler-carrier-enum-02 • tel URIs: RFC 3966 • IETF SPEERMINT working group – definitions and terminology: draft-ietfs-speermint-reqs-and-terminology01 – message flows: draft-penno-message-flows-02 • CableLabs VoIP Peering RFI • GSMA GRX/IPX Requirements • ECMA/TISPAN Next-Gen Corporate-Core Interconnection Requirements • SIP Forum IP PBX / Service Provider Interoperability • ISNs: http://www.internet2.edu/sip.edu/isn/ May 22, 2006