对话框和会话之间到底有什么区别?对话在信令意义上是否意味着"呼叫已经设置",而会话在媒体意义上是否表示"媒体已经设置"?
另外,"对话的一部分"是什么意思?是"INVITE"、"ACK"和回答被认为是"对话的一部分"?
来自RFC 3261:中的定义部分
Dialog: A dialog is a peer-to-peer SIP relationship between two
UAs that persists for some time. A dialog is established by
SIP messages, such as a 2xx response to an INVITE request. A
dialog is identified by a call identifier, local tag, and a
remote tag. A dialog was formerly known as a call leg in RFC
2543.
而
Session: From the SDP specification: "A multimedia session is a
set of multimedia senders and receivers and the data streams
flowing from senders to receivers. A multimedia conference is
an example of a multimedia session." (RFC 2327 [1]) (A session
as defined for SDP can comprise one or more RTP sessions.) As
defined, a callee can be invited several times, by different
calls, to the same session. If SDP is used, a session is
defined by the concatenation of the SDP user name, session id,
network type, address type, and address elements in the origin
field.
用我自己的话来说:SIP对话指的是两个对等体之间的信令关系。SIP对话可以用于建立呼叫(INVITE),但也有其他SIP方法可以建立对话(例如SUBSCRIBE)
(多媒体)会话通过INVITE方法发起的SIP对话进行交换,使用SDP offer/answer(见RFC 3264)