sips:bob@biboxi.com。对 sips uri 的呼叫是有安全保证的,TLS 被用于从呼叫方携带所有 SIP
消息到被呼叫方。但是安全机制依赖被呼叫方的域的机制。
SIP 是基于类似于 HTTP 的请求/响应传输模式。每一个事务由请求组成,该请求调用一个
特殊的方法或功能,并在服务器端至少有一个响应。在本例中,事务从 Alice 的软电话发送
一个 INVITE 请求给 Bob 开始。INVITE 是一个 SIP 方法,指明了 Alice 对 Bob 的行为要求。
一个 INVITE 请求包括一系列的头域。头域被命名为属性,可以提供消息的附加信息。本例
中包括呼叫方的唯一标示,目的地址,Alice 的地址,会话类型。如下所示
INVITE sip:bob@biloxi.com SIP/2.0
Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hG4bK776asdhds
Max-Forwards: 70
To: Bob <sip:bob@biloxi.com>
From: Alice <sip:alice@atlanta.com>;tag=1928301774
Call-ID: a84b4c76e66710@pc33.atlanta.com
CSeq: 314159 INVITE
Contact: <sip:alice@pc33.atlanta.com>
Content-Type: application/sdp
Content-Length: 142
第一行是一个文本编码的消息,包含方法的名字 INVITE,接下来是头域的列表,本例中
是最小的请求集合,描述如下|:
Via 包含 Alice 接受请求响应的地址,也包含一些用来描述事务的分支参数。
To 包含 Bob 的名字以及 SIP 或 SIPS URI。
FROM 包含 Alice 的名字以及 SIP 或 SIPS URI。该头域也包括一个标签参数,是一个随机
的字符串,被添加到 URI 中,用于鉴定目的。
CALL_ID 包含一个该呼叫的全球唯一标示,是由一个随机字符串和软电话主机或 IP 地址
组合而成的,TO, FROM, CALL_ID 三个标签组合定义了一个 Alice 和 Bob 之间对等 SIP 关系。
Cseq 包含一个整数和一个方法的名字,Cseq 号码随着对话中每一个新的请求而递增,是一
个传统的序列号。
Contact 包含 SIP 或 SIPS URI,描述一个联系 Alice 的路由,通常包含一个在 FQDN(fully
qualified domain name)用户名,参考 FQDN,很多终端系统不必注册域名,IP 地址及被允许
通过。Contact 头域告诉其它元素以后的消息应该发给谁。
MAX|_Forwards 用于限制请求到达目的地的跳跃次数,由一个整数在每一次跳跃的时候递
减而成。
Content_type 包含一个消息体的描述。
Content_Length 包含一个 8 位字节的消息体的长度。
完整的 sip 头域集合在第 20 章中定义。