1. 概念
SIP(Session Initiation Protocol),即会话发起协议。是一个VOIP信令协议,其目的是在IP网络中实现电话功能,即软电话功能。SIP协议是纯文本协议(消息体全部由代码自定义显示),通常为UDP承载,使用端口5060,本文对SIP协议的流程作简单描述,然后对格式进行分析。
注意:网络流量中SIP协议还会使用TCP承载,也会使用其它端口。
2. 组成
请求行(request-line)or状态行(status-line)
消息头(message header)
正文(message body可选)
3. SIP消息分类:请求消息 和 响应消息
请求消息(Request):客户端为了激活特定操作而发给服务器的SIP消息,包括INVITE,ACK,OPTIONS,BYE,CANCEL和REGISTER消息
响应消息(Response):服务器向客户端反馈对应请求的处理结果的SIP消息,包括1xx,2xx,3xx,4xx,5xx,6xx响应消息
UAC用于发起请求(request),而UAS用于产生响应(response)。
4. 请求行方法
5. 状态行状态码
488 Not acceptable here 语音编解码不匹配
6. 案例分析-注册报文
注册的时机
SIP用户终端登记:“登记”即“注册Register”。Sip用户终端上电后即向注册服务器(登记服务器)进行“登录/注册”,主动向注册服务器发送Register。
7. 案例分析-会话报文
8. 语音编码问题
9. 呼叫转接