《sip揭秘》读书笔记1
来源:互联网 发布:php安装教程详解 编辑:程序博客网 时间:2024/05/09 02:23
sip事务的概念:一个sip请求以及由它触发的一系列应答(包括临时应答和一个最终应答)。
sip请求有6种(核心规范定义的,也有扩展),也叫6个方法(Method字段标识):INVITE, ACK, OPTIONS, BYE, CANCEL, REGISTER
sip请求的格式包括请求行(如INVITE sip:192.168.101.30 SIP/2.0),sip应答的格式包括状态行(如SIP/2.0 100 Trying);sip应答的状态码从100到699,其中100~199是临时(provisional)应答。
INVITE请求是三次握手机制,其他请求都采用两次握手机制。
CANCEL请求用于取消悬而未决的事务,我的理解是一方发出INVITE,但是另一方始终没有做出应答,发出200OK消息(超过了默认的振铃时长),那么UAC会自动发出一个CANCEL请求,UAS返回200OK,并且同时发出487状态码的应答,UAC再对收到的487消息发出ACK确认,即最开始的INVITE和487以及ACK构成三次握手。
OPTIONS请求用于询问服务器的性能情况,包括这个服务器所支持的方法(可能会有扩展方法)和会话描述协议。
代理服务器的三种类型:保留呼叫状态代理、保留状态代理、不保留状态代理。这三种类型的代理在处理能力和所占用资源上有差别,在代理分发中我们采用网络核心无状态,而在流量较小的网络边界采用智能性高的保留(呼叫)状态服务器处理路由。
sip消息编码采用文本方式(即使用字符串),相对的是二进制的编码方式,前者易于调试和扩展,后者则有利于节省带宽。
sip标题头:
CALL-ID 字段用于标识一个特定邀请以及与这个邀请相关的所有后续事务(即标识一个会话),比如一方发起邀请加入一个国际象棋的会话,那么INVITE请求以及应答,BYE请求以及应答都共享一个CALL-ID,因为这两个事务都属于一个特定邀请。而两个用户之间可以同时存在多个邀请(比如在下象棋的同时发起聊天的邀请),那么一个邀请中的后续事务将通过这个邀请特有的CALL-ID来区分,如一方发出BYE消息来结束聊天,但是下棋仍然进行中,那么另一方将根据BYE消息的CALL-ID来确定要结束的究竟是哪一个会话。
CSeq 字段是用来给同一个会话中的事务进行排序的。可以理解为,会话由CALL-ID来标识,会话中的事务则由CSeq标识。除了ACK请求和CANCEL请求,INVITE之后的请求中CSeq字段的数字是最初请求(INVITE)的CSeq递增的结果。而ACK和CANCEL请求则拥有与它所确认(取消)的请求相同的CSeq数字部分,只是方法名不同。
- 《sip揭秘》读书笔记1
- 《sip揭秘》读书笔记1
- 《sip揭秘》读书笔记1
- 《SIP揭秘》读书笔记
- 《sip揭秘》读书笔记2
- 《sip揭秘》读书笔记3
- 《sip揭秘》读书笔记
- ASP.NET揭秘读书笔记1
- 《sip揭秘》格式详解
- 《sip揭秘》格式详解
- 《sip揭秘》格式详解
- ASP.NET 3.5揭秘-读书笔记1
- 网络扫描技术揭秘读书笔记1--简介
- RFC3261(SIP)读书笔记
- 《css揭秘》读书笔记
- ASP.NET揭秘读书笔记2
- ASP.NET揭秘读书笔记3
- ASP.NET揭秘读书笔记4
- Memory space manipulating in Java(Section one:Basic Concepts in Java)
- 制作bat文件的方法
- 庄户雕相亲
- 我喜欢简单:ant - java 构建工具
- 一些比较有用的URL
- 《sip揭秘》读书笔记1
- 关于一些activex的心得
- 一个“Spring轮子”引发的“血案”(6)
- 2006-07-14 存在的问题,问题的存在
- 对于学习的看法
- CSDN专帖系列之一: 根据某一特殊规律的概率生成随机数
- 《写给企业家的经济学》读书笔记 - Part 6
- 网络存储技术
- 有关Cookie的安全常识