sip协议的基本概念
SIP(Session Initiation Protocol,即初始会话协议)是IETF提出的基于文本编码的IP电话/多媒体会议协议。用于建立、修改并终止多媒体会话。SIP协议可用于发起会话,也可以用于邀请成员加入已经用其它方式建立的会话。一个会议呼叫或电话呼叫可以包含一个或多个请求・・响应事务(transaction)
SIP协议模型定义了User Agent和Server等两类主要实体,分组终端设备以及媒体网关、媒体设备都是包括user agent client 和user agent server在内的user agent,注意proxy server 也要完成user agent的功能。
SIP协议定义了Proxy Server、Redirect Server和Register Server等三类主要Server。其中redirect server用于登记当前终端的位置信息,根据示意图,当前终端像proxy server发送呼叫信息之前,当前终端与redirect server进行通信得到当前中毒那的位置信息。
同理register server获取被呼叫端的位置信息,并将信息返回给user agent server--proxy server
一个成功的SIP邀请包括2个事务:一个INVITE请求,后面跟一个ACK请求
SIP事务(SIP Transaction):一个SIP事务是发生在客户和服务器之间的,包括从客户向服务器发出的第一个请求直到服务器发给客户一个最终响应这期间所有的消息。事务是由一个呼叫支路(Call leg)中的Cseq 顺序号来标识的。一个ACK请求与对应的INVITE请求拥有相同的CSeq,构成自己的事务;
SIP协议将Server和User Agent之间的通讯的消息分为两类:请求消息和响应消息
请求消息:客户端为了激活特定操作而发给服务器的SIP消息,包括INVITE、ACK、BYE、CANCEL、OPTION和UPDATE消息。
响应消息:服务器向客户反馈对应请求的处理结果的SIP消息,包括1xx、2xx、3xx、4xx、5xx、6xx响应