设为首页  
联系我们  
加入收藏  
网页制作 冲浪宝典 图形图像 操作系统 软件教学 编程开发 认证考试 安全技术 站长专区 文学驿站 娱乐天地 游戏天地 办公软件
文章搜索
您的位置: 首页 >> 文章首页 >> 编程开发 >> 文件格式 >> 一些和sip协议相关的FAQ
精品推荐
文件格式点击TOP10
·《IEEE754 学习总结》
·SIP on Mobile Device (运行在移动设备上的SIP协议终端)
·一个8583报文的简单例子
·FTP协议的分析和扩展
·SIP SAP及SDP协议组合应用的研究
·FTP协议的分析和扩展
·SIP IP 电话系统的呼叫路由
·PSF (Portable Sound Format)[可移植声音格式] 规范 v1.5
·网友的VOIP总结
·BitTorrent 协议规范1.0版
编程开发点击TOP10
·数字小键盘指法练习
·ASP.NET 程序中常用的三十三种代码
·用C语言编通讯录程序(初学者级别的)
·我写的Java学生成绩管理系统源代码
·CHK文件恢复工具
·Modem 常用AT指令集
·java笔试题
·异常java.sql.SQLException: Io exception:The Network Adapter could not establish connection
·单片机模拟I2C总线及24C02(I2C EEPROM)读写实例(源代码)
·C++经典电子书下载
精选专题

一些和sip协议相关的FAQ

作者: 来源:网络文章 时间:2005-12-17 23:45:53

 
 SIP FAQ
Subcategories:
CS.columbia.edu/~hgs/sip/faq.cgi?_recurse=1&file=1#file_2">SIP Basics
SIP Functionality
SIP Protocol Operation
Relationship to Other Protocols

Answers in this category:
How do I show this FAQ as a single page?
RTP Issues

[Add a New Answer in "SIP FAQ"]
mailto:hgs@cs.columbia.edu?subject=SIP FAQ, mailto:islepchin@dynamicsoft.com?subject=SIP FAQ, mailto:jdrosen@dynamicsoft.com?subject=SIP FAQ
2001-Apr-24 9:00pm
 (Category) SIP FAQ :
SIP Basics
Basic questions about SIP
2000-Jun-28 2:20pm mailto:hgs@cs.columbia.edu?subject=SIP FAQ
Subcategories:

Answers in this category:
(Answer) What is SIP?
(Answer) Who is implementing SIP?
(Answer) Where can I find more information about SIP?
(Answer) What is RFC2543bis?
(Answer) What is not described in the SIP spec?
(Answer) There are lots of SIP extensions. Will the protocol ever be stable?
(Answer) How do you test SIP implementations?
(Answer) What does 'bis' stand for?

[Add a New Answer in "SIP Basics"]
2001-Oct-01 7:21pm
 (Category) SIP FAQ : (Category) SIP Basics :
What is SIP?
SIP stands for Session Initiation Protocol. SIP is an Internet proposed standard documented in RFC 2543 for setting up, controlling and tearing down sessions in the Internet. Sessions include, but are not limited to, Internet telephone calls and multimedia conferences.
2000-Jun-28 2:22pm mailto:hgs@cs.columbia.edu?subject=SIP FAQ
SIP can initiate calls between regular telephones, if the switch is suitably equipped (so-called PINT mechanism).
[Append to This Answer]
2000-Dec-15 10:29pm
 (Category) SIP FAQ : (Category) SIP Basics :
Who is implementing SIP?
Lots of people. Take a look at the partial list at http://www.cs.columbia.edu/sip/implementations.html UCts.html">http://www.pulver.com/sip/products.html, and http://www.sipforum.org/. At the last SIP bake-off, there were approximately 60 implementations.
2000-Dec-15 10:31pm mailto:islepchin@dynamicsoft.com?subject=SIP FAQ, mailto:hgs@cs.columbia.edu?subject=SIP FAQ
[Append to This Answer]
2000-Dec-15 10:31pm
 (Category) SIP FAQ : (Category) SIP Basics :
Where can I find more information about SIP?
The SIP home page contains additional information about SIP.

Until September 1999, discussion about SIP took place on the MMUSIC mailing list. The working group and mailing list is still the appropriate place for discussions related to SDP, SAP and RTSP, among other topics.

SIP standardization has now moved to the SIP working group, with its own mailing list. The SIP Forum at http://www.sipforum.org also provides information about SIP.
2000-Dec-15 10:33pm mailto:islepchin@dynamicsoft.com?subject=SIP FAQ, mailto:hgs@cs.columbia.edu?subject=SIP FAQ

[Append to This Answer]
2000-Dec-15 10:33pm
 (Category) SIP FAQ : (Category) SIP Basics :
What is RFC2543bis?
RFC2543bis is an updated version of SIP protocol that incorporates bug fixes and enhancements that have surfaced since RFC2543 was issued. Most of the changes in RFC2543bis were discussed extensively on SIP mailing list; hence, most of them are very likely to be included into the next official version of SIP.
RFC 3261 incorporates these changes and obsoletes RFC 2543. There are only minor changes between bis-09 and RFC 3261. The changes between RFC 2543 and RFC 3261 are described in an appendix in RFC 3261.
The latest version of this document can be found at http://www.cs.columbia.edu/sip

2002-Jul-24 11:03am mailto:islepchin@dynamicsoft.com?subject=SIP FAQ, mailto:hgs@cs.columbia.edu?subject=SIP FAQ
[Append to This Answer]
2002-Jul-24 11:03am
(Answer) (Category) SIP FAQ : (Category) SIP Basics :
What is not described in the SIP spec?
The SIP specification describes what is necessary to create interoperable implementations. It does not describe or limit the functionality offered by implementations or impose minimum functionality beyond request handling. Thus, SIP doesn't tell you how to do any of the following:
- the color of the phones that use SIP;
- what operating system is used to implement a SIP phone;
- what language is used to display error messages;
- what sound, if any, is used to indicate ringback or ringing;
- whether a registrar, proxy or redirect server are implemented in one process, on one machine or distributed across a network;
- which media types or codecs the SIP implementation supports;
- which type of network SIP is used in;
- what type of security measures are required to be used;
- the GUI for SIP calls;
- how to build a network of proxy servers;
- whether a phone can make calls while it's in a call;
- qualifications for human beings to make use of SIP softphones;
- how generous an implementation should be in dealing with requests and responses that have mistakes and how much error detail information it should provide;
- how many simultaneous calls the device can be in.
- what parser generator tool, if any, should be used by implementations
- what threading model to use
[Append to This Answer]
mailto:hgs@cs.columbia.edu?subject=SIP FAQ, mailto:islepchin@dynamicsoft.com?subject=SIP FAQ
2000-Dec-07 3:10pm
(Answer) (Category) SIP FAQ : (Category) SIP Basics :
There are lots of SIP extensions. Will the protocol ever be stable?
Innovation will not stop, since this isn't the phone system. However, the basic protocol has been stable for quite a while and is sufficient to implement all basic phone services. Enhancements tend to be for specialized services, such as ISUP interworking, QoS negotiation, liveness detection, caller preferences or presence/instant messaging. All of these are backward-compatible with the basic protocol, with extensions negotiated if both sides support them. Basic calls will succeed without the extensions.
Note also that just because something is proposed doesn't mean it will ever become a standard. (Only about 10% of Internet drafts ever get published as RFCs.)
[Append to This Answer]
mailto:hgs@cs.columbia.edu?subject=SIP FAQ
2000-Dec-15 10:36pm
(Answer) (Category) SIP FAQ : (Category) SIP Basics :
How do you test SIP implementations?
ETSI is preparing a test specification, both prose and TTCN-3, for SIP. This work is to be completed by November/December 2001. Anthony Wiles http://www.cs.columbia.edu/~hgs/sip/Anthony.Wiles@etsi.fr can provide further details.
Also, roughly every four months, the SIP interoperability test events (SIPit) offer opportunities for implementors to test interoperability with other implementations.
The SIP call flows document also provides test cases.
[Append to This Answer]
mailto:hgs@cs.columbia.edu?subject=SIP FAQ
2001-Sep-19 2:29pm
(Answer) (Category) SIP FAQ : (Category) SIP Basics :
What does 'bis' stand for?
The suffixes 'bis' and 'ter' are often used for revisions of standards. For example, there is V.42bis for modems and V.25ter. 'bis' is the latin adverb for 'two', while 'ter' stands for 'three'. See
http://www.informalmusic.com/latinsoc/latnum.html
for details.
2001-Oct-01 7:24pm mailto:hgs@cs.columbia.edu?subject=SIP FAQ
[Append to This Answer]
2001-Oct-01 7:24pm
(Category) (Category) SIP FAQ :
SIP Functionality
Describes how to provide standard services with SIP.
Subcategories:

Answers in this category:
(Answer) Does SIP support the standard telephone features?
(Answer) How does SIP provide message waiting services?
(Answer) Why does CSeq not have a compact form?
(Answer) How does the location server communicate with a proxy?
(Answer) How does SIP support caller ID?
(Answer) How do I charge/bill for Internet telephony using SIP?
(Answer) How do prepaid calling cards work in a SIP network?
(Answer) Does SIP do conference control?
(Answer) How do I put a call on hold?
(Answer) How does SIP do "call progress tones" or "ring back"?
(Answer) Does SIP do admission control?
(Answer) Does SIP administer bandwidth?
(Answer) How does SIP support multipoint conferences?
(Answer) How does SIP support text chat and instant messaging?
(Answer) Does SIP support video or multimedia conferences?
(Answer) When do I use a proxy server vs. a redirect server?
(Answer) How do gateways register with a registrar?

[Add a New Answer in "SIP Functionality"]
2002-Jul-24 10:58am
(Answer) (Category) SIP FAQ : (Category) SIP Functionality :
Does SIP support the standard telephone features?
Yes. SIP supports, among others:
- call forwarding unconditional, busy, ...
- call transfer (call control spec)
- caller ID
- call hold
- 3-way conferences and multiparty conferencing (call control spec)
- call return ("*69")
- call park (with NOTIFY)
- follow-me
- find-me
- call waiting
- IVR systems
- multiple line presences
- camp on
- call queueing
- automatic call distribution
- do not disturb
Some services, like repetitive dialing, station speed dialing, last number redial, and distinctive ringing, are implemented purely in the end system and require no support from the signaling protocol.
The Telecommunications Industry Association (TIA) is working on a recommendation http://www.tiaonline.org/standards/ip/ for business PBX-style services and other Internet phone requirements.
[Append to This Answer]
mailto:hgs@cs.columbia.edu?subject=SIP FAQ
2000-Jun-28 2:47pm
(Answer) (Category) SIP FAQ : (Category) SIP Functionality :
How does SIP provide message waiting services?
First, there may well be other protocols that are more appropriate to indicating that voice or email messages are available, for example POP or IMAP. In particular, once one moves beyond a simple message waiting light to indication of message counts, urgency, senders, etc., it is likely that any SIP-based solution starts replicating POP or IMAP functionality.

A SIP-based solution has not been standardized yet. Using SUBSCRIBE and NOTIFY appears to be the most appropriate approach.

[Append to This Answer]
mailto:hgs@cs.columbia.edu?subject=SIP FAQ
2000-Jun-28 2:56pm
(Answer) (Category) SIP FAQ : (Category) SIP Functionality :
Why does CSeq not have a compact form?
This was an oversight, as all other SIP mandatory headers have a compact form. However, it's too late to change this since older implementations would not know what to do with the single-character form. Fortunately, the penalty is only three bytes.
[Append to This Answer]
mailto:hgs@cs.columbia.edu?subject=SIP FAQ
2000-Jun-30 7:38pm
(Answer) (Category) SIP FAQ : (Category) SIP Functionality :
How does the location server communicate with a proxy?
Location server and proxy server are logical entities, not physical ones. They can reside in one host or application or be distributed across several hosts or applications. The API or protocol used between them is not specified, as it is an implementation decision. (Generally, most implementations combine a location server with a proxy.)
[Append to This Answer]
2000-Jul-01 5:42pm
(Answer) (Category) SIP FAQ : (Category) SIP Functionality :
How does SIP support caller ID?
Caller-ID is provided by the From SIP header containing the caller's name and "number". The number would most likely be placed in the user field of a SIP URL or appear in a tel: URL.

Since the callee generally does not know or trust the callee's server, only cryptographic signatures can be used to ensure that the information is valid. For example, the outgoing proxy might be operated by an ISP, enterprise or phone company and sign for the identity of the caller, using the signed-by parameter, with the identity of the company verified by a public key certificate similar to those used by web sites. See section 13.2 of RFC2543bis for encryption details.
2000-Jul-02 10:50pm mailto:islepchin@dynamicsoft.com?subject=SIP FAQ

[Append to This Answer]
2000-Jul-02 10:50pm
(Answer) (Category) SIP FAQ : (Category) SIP Functionality :
How do I charge/bill for Internet telephony using SIP?
This depends on whether you plan to charge for SIP services like directory look-ups, call processing or mobility, for gateway services to the PSTN, or for carrying media data:
SIP services
The Authorization header can be used to indicate a customer identity that associates a SIP request with a billable entity.

Examples of possibly chargeable SIP services include:

  • Directory services such as SIP proxy/redirect lookups;
  • Customer profile management;
SIP server operations can be charged based on server logs or, for real-time billing, via AAA.
Media services
Media services include retrieving and storing voice mail, as well as transcoding of media streams. They are not initiated by SIP, but, for example, via RTSP.
Gateway services
Similar to SIP services. Care has to be taken to stop billing when (say) RTP voice data is no longer flowing through the gateway. The gateway will generate call detail records (CDRs) either directly or through RADIUS.
Transport (network services)
It seems unlikely that voice calls carried over a best-effort service will generate per-minute charges. When reserving bandwidth or guaranteeing other quality-of-service parameters, the resource reservation protocol or differentiated services are the appropriate mechanism for including charging. These reservation protocols will likely be used in applications that are not initiated by SIP, for example, audio/video on demand or VPNs. Actual accounting records may be generated by AAA protocols (e.g., by policy enforcement points (PEP) or policy decision points (PDP)) or log files.

Under some circumstances, a SIP proxy server may be useful to initiate such reservations or differentiated services treatment on behalf of a call, since it may be easier to authenticate the SIP request than the lower-layer reservation request or the end system may not be capable of making reservations or marking packets. In those cases, the SIP proxy would initiate a resource reservation and "charge back" the caller identified by the SIP request.

Dean Willis wrote with regards to billing for SIP services:

Why can't service providers make a living providing (at a fixed cost) Access to "free services"? Do carriers do per HTTP-transfer billing now? How much should they charge for an email? For a call, what parameters might be used? Bandwidth, duration, distance -- the Big Factors of the POTS bill -- are not issues that SIP is concerned with.

2000-Jul-02 10:55pm mailto:islepchin@dynamicsoft.com?subject=SIP FAQ
[Append to This Answer]
2000-Jul-02 10:55pm
(Answer) (Category) SIP FAQ : (Category) SIP Functionality :
How do prepaid calling cards work in a SIP network?
Note that, in general, prepaid calling cards only make sense in an IP network if there is a special-purpose VoIP internet, calls traverse a IP-to-PSTN gateway or VoIP packets receive special treatment. The SIP requests are forced to traverse a stateful proxy or a back to back User Agent (B2BUA), which controls the Internet telephony gateway, router QOS function or firewall, depending on the architecture. When the time is used up, the B2BUA or gateway issues a BYE request to both parties, using the existing call ID. It also disables the gateway connection, turns off any special QOS treatment for the RTP packets or closes the firewall for that stream. This requires no additions to either caller or callee. Sending a BYE suffices only if at least one of the end systems can be trusted to actually terminate the call when a BYE is received.
2001-Jan-22 10:57pm mailto:islepchin@dynamicsoft.com?subject=SIP FAQ, mailto:jdrosen@dynamicsoft.com?subject=SIP FAQ
[Append to This Answer]
2001-Jan-22 10:57pm
(Answer) (Category) SIP FAQ : (Category) SIP Functionality :
Does SIP do conference control?
SIP leaves conference control, such as the election of a chair or floor control, to other protocols. SIP can be used for non-conferencing applications and floor control may be used outside the scope of SIP-initiated calls, so it seemed best to separate the functionality. However, SDP may be used to indicate which media are subject to floor control and what tools and protocols are to be used. Unfortunately, there is no IETF-standardized floor control protocol.
2000-Jul-03 6:39pm mailto:islepchin@dynamicsoft.com?subject=SIP FAQ
[Append to This Answer]
2000-Jul-03 6:39pm
(Answer) (Category) SIP FAQ : (Category) SIP Functionality :
How do I put a call on hold?
The party wishing to put the other party on hold sends a (re)INVITE, with a session description containing a null (0.0.0.0) address. When used with SDP, the "c" address field of one or more media types is set to zero.
2000-Jul-03 7:07pm mailto:islepchin@dynamicsoft.com?subject=SIP FAQ
[Append to This Answer]
2000-Jul-03 7:07pm
(Answer) (Category) SIP FAQ : (Category) SIP Functionality :
How does SIP do "call progress tones" or "ring back"?
The SIP server being called, such as an Internet telephony gateway, can return any number of provisional status messages that indicate call progress. Typically, this is just 100 (Trying) followed by 180 (Ringing), but a server could produce elaborate feedback such as
100 Message received100 Looking up number100 Found number, looking up carrier according to profile100 Finding cheapest carrier which doesn't do animal testing100 Found carrier "AT&T"100 Dialing number180 Ringing182 Queued, 3 people in front of you182 Queued, 2 people in front of you

The language of the status message should be determined based on the Accept-Language request header in the call.

A 183 (Session Progress) status response will appear in RFC2543bis. It can be used for both progress tones as well as error messages.

One would use the 183 only if you:

  • Are able to determine that the audio being generated is something other than ringing (e.g. "comfort tone" or "pay tone" as defined in E.18x), or
  • Are unable to definitively determine that alerting is occuring. This really should only happen with older CAS protocols. ISUP and ISDN have sufficient information to determine what is happening on the far end.

One can also use 183 if the gateway is able to determine that an error has occured, but that there is a tone or announcement accompanying it (e.g., an ACM with a cause code present). In that case, the gateway can send a 183 to set up the media for the announcement (ideally with the announcement text as the text string), wait for a timer (on the order of 30 seconds), and then send an appropriate SIP error message.

However, this should only be done if the caller is likely a human being, as sending 183 would otherwise only delay failure handling.

Take a look at (now eXPired) draft-ietf-sip-183-00.txt for some details on using 183 responses for early media announcements.
2000-Jul-03 7:23pm mailto:islepchin@dynamicsoft.com?subject=SIP FAQ

[Append to This Answer]
2000-Jul-03 7:23pm
(Answer) (Category) SIP FAQ : (Category) SIP Functionality :
Does SIP do admission control?
Since this offers no real security (calls could always bypass a server), admission control is not supported by SIP. If an "outbound proxy" is used for outgoing calls, that proxy may control the firewall and thus restrict outgoing calls ans resources used.
2000-Jul-03 7:51pm mailto:islepchin@dynamicsoft.com?subject=SIP FAQ
[Append to This Answer]
2000-Jul-03 7:51pm
(Answer) (Category) SIP FAQ : (Category) SIP Functionality :
Does SIP administer bandwidth?
No, that is the role of a resource reservation protocol. There is no reason to assume that any Internet telephony signaling server (such as a proxy) would know the available bandwidth in real networks. Having such a central server would not scale. Administering bandwidth separately for each application is also likely to be difficult and inefficient.

There is a proposal for an SDP extension that allows SIP INVITE requests and responses to indicate that resource reservation must succeed before the callee is alerted. Several proposals can also be found at http://www.cs.columbia.edu/~hgs/sip/drafts_qos.html.
2000-Jul-03 7:55pm mailto:islepchin@dynamicsoft.com?subject=SIP FAQ

[Append to This Answer]
2000-Jul-03 7:55pm
(Answer) (Category) SIP FAQ : (Category) SIP Functionality :
How does SIP support multipoint conferences?
SIP has four ways to do multiparty conferencing:

1. Dialup conference bridge: call the bridge just like you call a person. Conference is identified by request URI. Works with rfc2543 - no extensions needed.

2. Distributed multiparty conferencing - no server. Fully distributed. This is what is described in the now-expired draft , and is work in progress (see http://www.softarmor.com/sipwg/teams/callcontrol/index.html for some recent drafts).

3. Multicast conferences - you can run your conference on multicast. Simply INVITE the person to join the multicast session. Works with baseline SIP. In fact, this was the initial purpose of SIP. In this case, there is not a full mesh of SIP signaling.

4. 3-way with local MC/MP function: A and B are talking. A wishes to add C to the call. A can simply call C, but also act as a mixer, so that the media it sends to B contains the A+C media, and the media to C is the A+B media. RTCP CSRC indicate who is in the conference. This also works with baseline SIP. It imposes additional burden on the UA, but otherwise provides this standard feature in a simple way.

There is no preferred way. It depends on the particular application. (Jonathan Rosenberg)
2000-Jul-06 9:16pm mailto:islepchin@dynamicsoft.com?subject=SIP FAQ

[Append to This Answer]
2000-Jul-06 9:16pm
(Answer) (Category) SIP FAQ : (Category) SIP Functionality :
How does SIP support text chat and instant messaging?
Text chat can be supported as part of SIP sessions using the RTP text conversation payload format (RFC 2793). Typically, text is sent one character at a time, although almost any number of characters can be packed into a single RTP packet.
Instant messaging (IM) differs from text chat in that:
- messages are sent as a whole and can be in any format, such as HTML;
- messages are independent of a session setup;
- store-and-forward or translation to email are feasible;

SIP can support IM through the use of the proposed MESSAGE method.

[Append to This Answer]
mailto:hgs@cs.columbia.edu?subject=SIP FAQ
2000-Aug-21 11:18am
(Answer) (Category) SIP FAQ : (Category) SIP Functionality :
Does SIP support video or multimedia conferences?
SIP was designed to support multimedia conferences, including video conferences, from the very beginning. It can use any media type, including one or more audio, video, shared application or text chat streams. For multiple participants, SIP can be used for
- dial-in-style conferences with a central "bridge" (MCU) or multicast
- dial-out conferences with a central bridge or multicast
- multicast conferences
- full or partial mesh conferences, where end systems replicate media streams.
[Append to This Answer]
mailto:hgs@cs.columbia.edu?subject=SIP FAQ
2000-Aug-22 12:13pm
(Answer) (Category) SIP FAQ : (Category) SIP Functionality :
When do I use a proxy server vs. a redirect server?
I believe the difference is fundmentally one of control.
You use a proxy when you want to control processing of the call from the point you receive it, and forward. A proxy can see the provisional and final responses to the request. It can record route so that it sees whats going on during the call. A redirect server, however, hands off control to the device that sent it the INVITE. It will never see the final response to the request, and not be contacted again for the remainder of the call. Its a one-shot deal.
As such, redirect servers are really good for high volume, lookup style transactions. They can almost be considered a form of database query, albeit a SIP specific one. Proxies are generally needed for services and more complex routing problems.
2000-Nov-14 10:50am mailto:jdrosen@dynamicsoft.com?subject=SIP FAQ
[Append to This Answer]
2000-Nov-14 10:50am
(Answer) (Category) SIP FAQ : (Category) SIP Functionality :
How do gateways register with a registrar?
In H.323, the entity can register to Gatekeeper as Terminal type or as Gateway type with a prefix. In SIP, the working group decided that registering PSTN prefixes is not the right approach, as it is insufficiently flexible and does not fit into the precise-match registration lookup mechanism. Rather, proxies make routing decisions based on local policy mechanisms, e.g., static tables, TRIP routing information, or SLP (with gateway registration template).
[Append to This Answer]
mailto:hgs@cs.columbia.edu?subject=SIP FAQ
2002-Jul-24 11:05am
(Category) (Category) SIP FAQ :
SIP Protocol Operation
Contains FAQ and clarifications on protocol operation.
Subcategories:

Answers in this category:
(Answer) What does the [H14.17] in RFC 2543 stand for?
(Answer) Do callers need to know the location of the Location Server?
(Answer) What is the difference between a call leg and a call id?
(Answer) What is the difference between tag and branch-id?
(Answer) How can one recognize a retransmitted, duplicate or looped request?
(Answer) What is the relationship between the From, Contact, Via and Record-Route/Route headers?
(Answer) How are URLs compared?
(Answer) What's the difference between the request URIs tel:+12125551212 and sip:12125551212@gw.com?
(Answer) Do I always need a proxy or redirect server?
(Answer) How does a caller find its local registrar?
(Answer) How do I ensure registrar reliability?
(Answer) Are ACK requests retransmitted?
(Answer) How are BYE requests routed?
(Answer) Can I CANCEL requests other than the first INVITE?
(Answer) How does a caller find its proxy server?
(Answer) What's the difference between a stateless and a stateful proxy server?
(Answer) Why can a forking SIP proxy not be stateless?
(Answer) How does a caller find the remote SIP client of the callee?
(Answer) How does SIP get through a firewall?
(Answer) Does SIP do keep-alive?
(Answer) Why does SIP not have a Content-Transfer-Encoding header?
(Answer) I want SIP to be more compact. What can I do?
(Answer) What are the different addresses in SIP?
(Answer) The BNF for header <put your favorite header here> allows a parameter to appear more than once. What does this mean?
(Answer) Can the request URI include a port number and/or transport parameter?
(Answer) Transport in Via
(Answer) What should I do if my re-INVITE fails?
(Answer) How long can SIP host names be?
(Answer) Can a User Agent also act as a Registrar?
(Answer) Can I remove an m= line from SDP in response or re-INVITE?
(Answer) I'm a UAC. I sent an INVITE, and then decide I want to hang up before getting a final response. Do I send BYE or CANCEL?
(Answer) I'm a proxy, and I forked a request, and forwarded multiple 200 OK upstream. Now, I get an ACK. What do I do with it?
(Answer) If I get a new SDP body in the ACK, and I don't like the media type, how can I indicate its unacceptable to me?
(Answer) Can a SIP UA register with multiple registrars?
(Answer) Is it possible for a UA to make a call to itself, and have the result be two separate calls on the same machine?
(Answer) Does a UAS use the request-URI or To field to determine if a call is for it?
(Answer) How are SIP parsers implemented?
(Answer) Is it possible to use Hide with Record-Route?
(Answer) How does a proxy handle a method other than the standard INVITE, ACK, BYE, etc.?
(Answer) Why does a proxy server doing TCP need to be stateful?
(Answer) In computing the Content-Length, does the newline in a body count as one byte or two (CR vs. CR-LF)?
(Answer) Can a proxy fork a non-INVITE request? If yes, what happens if it gets multiple responses?
(Answer) Should responses be sent to the host specified in Via? Is From ever used for sending responses?
(Answer) Once a SIP registrar gets a REGISTER request, how does it update the Location Server with the contact information?
(Answer) Is a SIP URI without a user name valid?
(Answer) Is there a specific order for header fields?
(Answer) When is a CANCEL used?
(Answer) What do I need to do to use SRV records?
(Answer) Why does SIP/SDP allow for multiple codecs to be used for the same media stream?
(Answer) What are spirals? Why does a proxy care?
(Answer) What's the difference between loose and strict source routing?

[Add a New Answer in "SIP Protocol Operation"]
mailto:islepchin@dynamicsoft.com?subject=SIP FAQ, mailto:jdrosen@dynamicsoft.com?subject=SIP FAQ, mailto:hgs@cs.columbia.edu?subject=SIP FAQ
2002-Mar-07 6:53pm
(Answer) (Category) SIP FAQ : (Category) SIP Protocol Operation :
What does the [H14.17] in RFC 2543 stand for?
This is explained in Section 3 of RFC 2543. It refers to the section number in the HTTP/1.1 specification.
[Append to This Answer]
mailto:islepchin@dynamicsoft.com?subject=SIP FAQ
2000-Jul-03 8:06pm
(Answer) (Category) SIP FAQ : (Category) SIP Protocol Operation :
Do callers need to know the location of the Location Server?
The caller doesn't interact with the location server directly. A redirect or proxy server asks the location server (which may be co-resident with the SIP server or not) for "advice". The location server is just a logical abstraction to indicate where the SIP server gets its information from. The protocol between SIP server and location server is beyond the scope of SIP. Examples of location servers include
  • finger;
  • LDAP/X.500;
  • whois, whois++;
  • ph and other local directories;
  • shared file systems with registration on login;
  • local SQL databases reached through TCP.

Also, callers don't register with the location server.

[Append to This Answer]
mailto:islepchin@dynamicsoft.com?subject=SIP FAQ
2000-Jul-03 8:11pm
(Answer) (Category) SIP FAQ : (Category) SIP Protocol Operation :
What is the difference between a call leg and a call id?
A call leg refers to the one-to-one signaling relationship between two user agents (UAs). The Call-ID is an identifier, carried in the SIP messages, that refers to the call. A call is a collection of call legs. A UAC starts by sending an INVITE; because of forking, it may receive multiple 200 OKs from different UAs. Each corresponds to a different call leg within the same call. Call is thus a grouping of call legs. In the call control spec, additional call legs are created through special mechanisms.

Call legs refer to end-to-end connections between user agents, rather than any relationship with proxies. Within a call leg, there are numerous transactions in both directions.

The request URI is not used in call leg identification.

The To and From field relate to local and remote in the following way. When Alice sends a request on a call leg to Bob, the From field contains the local address (Alice), and the To field the remote address (Bob). When a request is received by Bob, the To field is matched to Bob's local address, and the From field to the remote address (Alice).

The CSeq spaces in the two directions of a call leg are independent. Within a single direction, the sequence number is incremented for each transaction.

[Append to This Answer]
mailto:islepchin@dynamicsoft.com?subject=SIP FAQ
2000-Jul-03 8:19pm
(Answer) (Category) SIP FAQ : (Category) SIP Protocol Operation :
What is the difference between tag and branch-id?
Branch IDs allow proxies to match responses to forked requests. Without them, a proxy wouldn't be able to tell which branch a response corresponds to. Tags, in To headers, are of no help here since they are not known until responses arrive. Tags are used by the UAC to distinguish multiple final responses from different UASs.

A UAS has no reliable way of determining if the request has been forked or not. Thus, to be safe it needs to add a tag. Proxies only insert tags into the final responses they generate themselves; they never insert tags into requests or responses they forward.

Since a request can be forked several times on its way to UAS, a single "tag" (or whatever you like to call it) added to the request by one of the proxies is not sufficient for the next forking proxy along the chain to match responses on its own branches; every proxy that forked the request would need to add its own unique IDs to the branches it created. This is precisely what's being achieved by the branch parameter in the Via header.

[Append to This Answer]
mailto:islepchin@dynamicsoft.com?subject=SIP FAQ
2000-Jul-03 8:23pm
(Answer) (Category) SIP FAQ : (Category) SIP Protocol Operation :
How can one recognize a retransmitted, duplicate or looped request?
 header retransmittedduplicate matching responseFromsame samesame Tosame same same, but tag may have been addedCall-IDsame samesamerequest URI same samen/aCSeqsame samesameVia- -must be local host; check for branch parameter to identify which branch

Looped request are recognized by one of the following:

  • The server finds itself in the request's Via list, including any branch parameter. (The server should compute the branch parameter so that it depends on the request URI.) Take a look at sections 6.47.5 and 12.13.1 of RFC2543bis for details on computing and matching branch parameter for loop detection.
  • The Via header added by the server prior to proxying the request is the same as one of the Via's in the Via list.

[Append to This Answer]
mailto:islepchin@dynamicsoft.com?subject=SIP FAQ
2000-Jul-03 8:57pm
(Answer) (Category) SIP FAQ : (Category) SIP Protocol Operation :
What is the relationship between the From, Contact, Via and Record-Route/Route headers?
All these headers determine how requests and responses are routed in a network of SIP proxy servers. Roughly, the distinction is:

- From:
Used for subsequent requests from the callee to the caller if there is no Contact or Record-Route header. E.g., if Alice makes a call with

 From: Alice sip:alice@example.org 
to Bob, an INVITE request from Bob to Alice would use
 sip:alice@example.org 
as the To header and Request-URI.

- Contact:
Determines the destination placed in the Request-URI for subsequent requests and can be used to bypass proxies _not_ enumerated in a Record-Route header. Also used in responses by redirect servers and in REGISTER requests and responses.

- Record-Route/Route:
The Record-Route header is inserted into requests by proxies that want to be in the path of subsequent requests for the same call-id. It is then used by the user agent to route subsequent requests. The mechanism is similar to a source-route, as the Record-Route information is copied into a set of Route headers. The Request-URI is set to the first Route header.

- Via:
Via headers are inserted by servers into requests to detect loops and to allow responses to find their way back to the client. They have no influence on the routing of future requests (or responses).

Generally, in short, requests should be sent to Route if present, Contact if there is no Route, From if there is no Contact.

[Append to This Answer]
mailto:islepchin@dynamicsoft.com?subject=SIP FAQ
2000-Jul-06 1:03am
(Answer) (Category) SIP FAQ : (Category) SIP Protocol Operation :
How are URLs compared?
Two SIP URLs are compared for equality according to the following rules:

- the display name is ignored;

- tags must match;

- user, passWord, host, port and parameters of the URI must match. If a component is omitted, it matches based on its default value.

- string comparisons are case-sensitive except for the domain part;

- Characters other than those in the "reserved" and "unsafe" sets (see RFC 2396) are equivalent to their ""%" HEX HEX" encoding.

- An IP address that is the result of a DNS lookup on a hostname does not match that hostname.

This is TBD.
[Append to This Answer]
mailto:islepchin@dynamicsoft.com?subject=SIP FAQ
2000-Jul-03 9:11pm
(Answer) (Category) SIP FAQ : (Category) SIP Protocol Operation :
What's the difference between the request URIs tel:+12125551212 and sip:12125551212@gw.com?
Non-SIP URLs, such as tel:+12125551212 for a telephone number, may be used as request URIs in SIP INVITE requests. This only makes sense if all outbound calls are handled by a proxy server. In the case of a tel: URL, the proxy server would then translate the request URL to a SIP URL of a gateway server, if it is not handling the gateway duty itself. The proxy server might use the Telephony Routing over IP protocol (TRIP) to find the appropriate next-hop SIP server. The To header may always be a tel: URL even if the Request-URI is a SIP URL, although that breaks with the common practice that Request-URI and To start out the same.
[Append to This Answer]
mailto:islepchin@dynamicsoft.com?subject=SIP FAQ
2000-Jul-03 9:14pm
(Answer) (Category) SIP FAQ : (Category) SIP Protocol Operation :
Do I always need a proxy or redirect server?
No, two SIP user agents can contact each other directly.
[Append to This Answer]
mailto:islepchin@dynamicsoft.com?subject=SIP FAQ
2000-Jul-03 9:14pm