6.1.5 Cseq(命令序列号)标题头
命令序列CSeq标题头是每个请求必须包含的标题头。每个请求的CSeq标题头包含一个自增长的十进制数。通常,除了CANCEL和ACK请求外,CSeq数字以INVITE请求的CSeq数字为基数,它在每个新的请求的CSeq值加1。
CSeq序列是UASs用来判定乱序的请求或者用来区分一个新的请求(不同的CSeq)或一个重传(相同的CSeq)。CSeq标题头是UACs用来匹配对应一个请求的应答。例如:一个UAC发送一个INVITE请求后跟着发送一个CANCEl请求,可以从一个200OK的应答中的CSeq方法中分辨出它是属于一个邀请的应答或者是属于取消的请求。例如表格6.5的例子。
表格6.5:CSeq标题头例子 | |
标题头 | 解释 |
CSeq: 1 INVITE | 命令序号已经初始化到1因为这这是个初始的INVITE请求。 |
CSeq: 432 REFER | 命令序号被设置到432因为这是一个REFER请求。 |
CSeq: 6787 INVITE | 如果这个最初的请求是由用户代理用于这个会话中,而且CSe被是初始化到6787,在基于上述请求的CALL-ID(或者是一个INVITE请求或者其他的请求)中将有一个CSeq值为6786或者以下。 |