摘要: 传输层负责请求和应答在网络上的实际传输。这包括了在面向连接的通讯方式下的请求和应答所使用的连接管理。传输层负责管理像TCP/SCTP之类通讯协议的长连接,或者在这些协议上的TLS连接,并且包括管理打开这些连接的使用者的管理。这包括了客户端或者服务端传输层打开的连接,这样在客户端服务端通讯函数可以共享这些连接。这些连接采用一组由远端的地址、端口、通讯协议的组合来索引。当传输层打开了一个连接,这个连接的索引就设置成为目的IP、端口、还有打开这个连接的通讯层的实例。当传输层受理了一个连接,那么这个连接的索引就被设置成为连接方的源IP地址、port、还有传输层的实例。注意,由于源端口通常是临时创建的, 阅读全文
posted @ 2012-11-06 22:12 坐看风起云涌 阅读(455) 评论(0) 推荐(0) 编辑
摘要: 本节描述了结束由SIP建立的会话的步骤。会话的状态和对话的状态是密切相关的。当一个会话由INVITE建立的时候,每一个不同UAS的1xx或者2xx应答会创建一个对话,而当完成了会话描述的请求/应答(offer/answer)交互之后,也就创建了一个会话。也就是说,每一个会话都和单个对话”相关”-会话是对话所创建的。如果初始化的INVITE产生了非2xx的终结应答,它也终结了由本次请求创建的任何会话(如果有的话),并且终结了所有的本次请求创建的对话(如果有的话)。由于事务完整性的保证,一个非2xx的终结应答同样也防止了本次INVITE以后可能创建的会话。BYE请求用于终结指定的会话或者尝试建立的 阅读全文
posted @ 2012-11-06 21:23 坐看风起云涌 阅读(344) 评论(0) 推荐(0) 编辑
摘要: 13.1概览当UAC希望初始化一个会话(比如,audio,video或者游戏),它首先构造一个INVITE请求。这个INVITE请求一个服务器来建立一个会话。这个请求可能会由proxy层层转发,最后到达一个或者多个可能能够处理这个邀请的UAS。这些UAS需要反复查看用户是否接收这个邀请。然后UAS可以接收这个请求(也就是会话建立了),通过发送2xx应答。如果邀请被拒绝,根据拒绝的原因,3xx,4xx,5xx或者6xx应答将会发送。在发送终结应答之前,UAS可以发送一些临时应答(1xx)应答给UAC,以便UAC能够掌握建立会话的进度。当收到了一个或者多个临时应答,UAC可能收到一个或者多个2xx 阅读全文
posted @ 2012-11-06 21:22 坐看风起云涌 阅读(325) 评论(0) 推荐(0) 编辑
摘要: 一个UA的核心概念就是对话。对代表了两个用户代理(UA)之间的持续一段时间的点对点的SIP关系。对话(Dialog)使得用户代理之间的消息顺序传递和两个用户代理之间的请求正确路由更加容易。对话(Dialog)可以认为是对SIP消息解释的上下文关系。第8节讲述了方法无关的UA处理和响应对话(Dialog)外的请求。本节将讨论如何通过请求和应答来创建一个对话(Dialog),并且在对话(Dialog)中如何发起和响应后续的请求。一个对话在参与对话的UA中都有一个dialogID作为标记,这个ID由Call-ID、一个本地tag和远程tag组成。各个UA的dialogID在对话中是不一样的。特别是, 阅读全文
posted @ 2012-11-06 21:21 坐看风起云涌 阅读(320) 评论(0) 推荐(0) 编辑