SIP INVITE
主叫方 Tesla 首先发起 INVITE 消息到被叫方 Marconi。
INVITE 消息包含会话类型和一些呼叫所必须的参数。会话类型可能是单纯的语音,也可能
是网络会议所用的多媒体视频,还可能是游戏会话。
下面是消息体范例,我们来详细分析各个字段的意义。
Session Initiation Protocol (INVITE)
1、INVITE sip:marconi@radio.org SIP/2.0
<= 请求方法、请求地址(Request-URI)、SIP 版本号(目前都是 SIP/2.0)
=请求地址一般就是【被叫方地址】,跟中好友地址类似
2、From: Nikola Tesla <sip:n.tesla@high-voltage.org>;tag=76341
3、To: G. Marconi <sip:Marconi@radio.org>
<=表示请求消息的【发送方】和【目标方】=如果里面有用户名标签,地址要求用尖括号包起来
=对于消息,可以在字段中包含,它也是个随机码
4、Call-ID: 123456789@lab.high-voltage.org
【<=呼叫 ID 是由本地设备生成的,全局唯一值。每次呼叫该值唯一不变】
=对于用户代理发送 消息,本地将生成 和 全局唯一码,被叫方代理则生成
全局唯一码。这三个随机码做为整个对话中对话标识()在通话双方使用。
5、CSeq: 1 SIP INVITE
=CSeq,又叫命令队列(Command Seqence),每发送一个新的请求,该数自动加
以上几个字段是所有消息体所必须的,其它头字段有些是可选的,有些在特定请求也是必须
6、Via: SIP/2.0/UDP lab.high-voltage.org:5060;branch=z9hG4bKfw19b
=SIP 版本号(2.0)、传输类型(UDP)、呼叫地址、
= 是一随机码,它被看作传输标识
=字段中地址是消息发送方或代理转发方设备地址,一般由主机地址和端口号组成
=传输类型可以为 、、!、
Subject: About That Power Outage...
1