1

I'm trying to understand SIP, and one thing that keeps confusing me is phone numbers and dialing plans vs SIP URI's like me@domain.com. What is the difference? How do they coexist/work together?

For example, do you connect using a me@domain.com URI and then send DTMF tones over that connection (I doubt it but I'm not sure how else that works?)

Azendale
  • 1,505
  • 2
  • 11
  • 14

1 Answers1

5

Phone numbers and "SIP URIs like me@domain.com" are different kinds of URIs. A phone number can be represented as a URI like this:

tel:+12125551212

whereas a "SIP URI like me@domain.com" can be represented as a URI like this:

sip:me@domain.com

Many SIP user agents don't actually use tel: URIs. Instead they just take the number that the user dialed and stick into a SIP URI as the local-part and use the configured proxy server as the host-part, like this:

sip:12125551212@my-sip-proxy.example.com

sip: URIs can be used directly to route a call over an IP network: just lookup the host-part of the SIP URI in DNS and forward the call to the location you find in the NAPTR/SRV/A/AAAA records.

tel: URIs must be routed according to rules configured in the SIP proxy. Examples of such rules could be:

  • Send the call over a circuit-switched PSTN channel to the phone number given in the URI
  • Forward the call to another SIP proxy, after possibly translating the phone number or even changing the URI from a tel: URI to a sip: URI.
  • Look up the phone number in DNS under e164.arpa and translate the URI as per the NAPTR records found there.

All of this is unrelated to sending DTMF tones through a call. That can only happen after a call is established, and the SIP proxies, switches, and routers on the signaling path generally won't pay any attention to them (they're just media content, even if they're represented as RFC2833 events rather than as audio).

Celada
  • 6,060
  • 1
  • 20
  • 17
  • Ok, that seems to help clear things up. Just to make sure I understand right, the only place SIP uses a telephone number is by using a proxy to get it into the PSTN network. – Azendale Oct 07 '12 at 22:19
  • 1
    No: sending a call that is dailed to a phone number is common bu not necessary: even if it's a phone number it doesn't mean it's going to go to the PSTN. For example, you can find my phone number in DNS under `e164.org` and that tells you how to route the call to me over the Internet without using the PSTN. Essentially the NAPTR record you find under `e164.org` tells you how to translate the phone number (`tel:` URI) to a `sip:` URI. – Celada Oct 07 '12 at 22:25