SIP中的SDP offer/answer交换初探】的更多相关文章

1.引言 SDP的offer/answer模型本身独立与于利用它的高层协议.SIP是使用offer/answer模型的应用之一.RFC 3264 定义了offer/answer模型,但没有规定使用哪个SIP消息来携带一个offer或answer. 理论上,任何SIP消息的正文中都可以包含会话描述部分.但是,一个SIP中的会话描述并不一定是一个offer或一个answer,只有符合在SIP标准RFCs中所描述的规则的会话描述才会被解释为一个offer或一个answer.目前,关于如何在SIP中处理…
1.引入 在松耦合会议中,会话参数完全由会议创建者来确定,参与者能做的仅仅是根据这些会话参数来加入会议(当然也可以选择不加入).这种情况下,主要要做的就是会话描述,在这里SDP本身就足够了. 但是在更为普遍的两方会话的情况下,由于用户终端能力的差异,任何一方不能假设对方一定支持某种会话参数,所以必须双方协商来最终就会话的参数达成一致.显然,SDP能做到准确的描述会话的参数,但是它缺少双发如何根据各自提供的会话描述形成最终一致的会话描述的语义及操作上的细节. IETF RFC3264定义了一个基于…
http://stackoverflow.com/questions/35133331/difference-between-session-dialog-and-transaction-in-sip http://sipforum.org/pipermail/discussion/2007-August/003046.html http://stackoverflow.com/questions/34562635/difference-between-dialog-and-session-in…
如果你对Sip协议中Call, Dialog, Transaction和Message之间的关系感觉到迷惑,那么,那么我可以告诉你,你并不孤单,因为大多数初学者对于这些名词之间的关系都会感到疑惑.   Messages(消息) 消息是在服务器和客户端之间交换的独立文本, 有两种类型的消息,分别是请求(Requests)和响应(Responses).     Transaction(事务)  事务发生于客户端和服务器端之间,包含从客户端发出请求给服务器,到服务器响应给客户端的最终消息(non-1x…
1.引言 在传统的电话网环境中,第三方呼叫控制允许一个实体(这里称为控制器- controller) 建立并管理另外的两方或多方之间的通信关系,而其本身并不参与通信. 第三方呼叫控制经常用于运营商业务 (运营商常常会建立一个呼叫将两个用户连接起来)和会议. 同样地,许多SIP业务都可能通过3PCC实现.这包括从PSTN继承的传统的业务,也包括新的业务,例如点击拨号(click-to-dial).点击拨号允许用户在他们想与客服代表通话时点击一个Web页面上的链接,之后web服务器便会创建一个用户与…
目录 一. Sipdroid的请求超时和重传 二. SIP中超时和重传的定义 三. RFC中超时和重传的定义 一. Sipdroid的请求超时和重传 Sipdroid实现SIP协议栈系列, 之前的文章仅涉及了SIP消息的基本概念, 比如: 请求型消息: INVITE, REGISTER... 应答型消息: 100 Trying, 180 Ringing, 200 OK, BYE, ACK... 携带SDP信息 携带认证信息 这篇文章更深入一些, 介绍了SIP作为一种可靠传输, 涉及到的超时和重传…
用C语言把双向链表中的两个结点交换位置,考虑各种边界问题. [参考] http://blog.csdn.net/silangquan/article/details/18051675…
SIP中OPTIONS方法的用法及示例 用OPTIONS方法实现Keep Alive SIP keep-alive方法…
1           说明 本文详细描述了基于STUN系列协议实现的P2P SIP电话过程,其中涉及到了SIP信令的交互,P2P的原理,以及STUN.TURN.ICE的协议交互 本文所提到的各个服务单元的交互均使用UDP,不涉及TCP的打洞及其他和TCP相关的操作. 本文假设通信双方均没有防火墙对协议以及端口的限制. 本文不涉及客户端的资源的发布与查找. 本文适用于有一定基础的读者,比如说知道NAT设备的不同类型及其特点.知道STUN/TURN/ICE协议的基本概念.知道SIP协议的相关交互流…
1       说明 2       打洞和穿越的概念... 1 3       P2P中的打洞和穿越... 2 4       使用STUN系列 协议穿越的特点... 2 5       STUN/ TURN/ICE协议的关系... 3 6       STUN协议(RFC 5389) 3 6.1             为什么会用到STUN协议... 3 6.2             STUN协议的工作原理... 4 7       TURN协议... 4 7.1            …
转载申明:本文主要是用于自己学习使用,为了完善自己的只是框架,没有任何的商业目的. 原文来源:有关Java中两个整数的交换问题 如果侵权,麻烦告之,立刻删除. 在程序开发的过程,要交换两个变量的内容,是一种比较常见的事情.在排序算法中,就有一种就叫做“交换排序法”.在所有的排序算法,交换要排序的集合中的两个元素,几乎是必须的过程.在Java中交换两个元素的内容,如果你是程序员新手,你可能碰到意想不到的问题. 众所周知,java和C.C++中都不能通过值传递的方式实现两个整数的交换. 即下面的函数…
在 Java 中不使用多余变量交换两个字符串 public class Test { public static void main(String[] args) { String a = "Hello"; String b = "World"; System.out.println("Strings before swap: a = " + a + " and b = " + b); a = a + b; b = a.sub…
一.概述: BlockingQueue作为线程容器,可以为线程同步提供有力的保障.   二.BlockingQueue定义的常用方法 1.BlockingQueue定义的常用方法如下:   抛出异常 特殊值 阻塞 超时 插入 add(e) offer(e) put(e) offer(e, time, unit) 移除 remove() poll() take() poll(time, unit) 检查 element() peek() 不可用 不可用   1)add(anObject):把anO…
转载:http://eadgar.blogbus.com/logs/374635.html 注意:以下内容适用于SIP消息中,在具体的应用环境中,例如IMS,每个消息头都有其他独特的意义,但不会和以下的内容产生具体的冲突. From: 如果一个SIP消息中没有Contact或者Record-Route头域,那么callee就会根据From头域产生后续的Request.比如:如果Alice打一个电话给Bob,From头域的内容是 From:Alice<sip:alice@example.org>…
(转自:https://blog.csdn.net/wei_ya_wen/article/details/19344939 侵删) 在java多线程操作中, BlockingQueue<E> 常用的一种方法之一.在看jdk内部尤其是一些多线程,大量使用了blockinkQueue 来做的. 借用jdk api解释下: BlockingQueue 方法以四种形式出现,对于不能立即满足但可能在将来某一时刻可以满足的操作,这四种形式的处理方式不同:第一种是抛出一个异常,第二种是返回一个特殊值(nul…
为什么要使用 bigdecimal? 借用<Effactive Java>这本书中的话,float和double类型的主要设计目标是为了科学计算和工程计算.他们执行二进制浮点运算,这是为了在广域数值范围上提供较为精确的快速近似计算而精心设计的.然而,它们没有提供完全精确的结果,所以不应该被用于要求精确结果的场合.但是,商业计算往往要求结果精确,这时候BigDecimal就派上大用场啦. BigDecimal简介 BigDecimal 由任意精度的整数非标度值 和32 位的整数标度 (scale…
还得从一个很经典的面试题说起:不通过第三个变量来交换两个变量a,b的值... 一个很经典的答案是通过异或来解决: 第壹步:a=a^b; 第贰步:b=a^b; 第叁步:a=a^b; 以前提起"异或"运算,真的很疑惑? 今天看到"布尔代数简介",再次看到这个异或运算,才知道异或运算符"^"和"&"和"|"一个级别... 好吧,大家一起来温习下"~"."&"…
c语言交换两个字符: 方法一:利用指针传址,效率比较高 void swap(int *a,int *b) { int temp; temp = *a; *a = *b; *b = temp } 方法二:利用引用加减或乘除运算来交换,存在缺陷,有可能导致溢出 swap(int &a,int &b) { a = a+b;//a=a*b; b = a-b;//b=a/b; a = a-b; //a=a/b; } 方法三:引用异或 void swap(int &a,int &b)…
区别:两者都是往队列尾部插入元素,不同的时候,当超出队列界限的时候,add()方法是抛出异常让你处理,而offer()方法是直接返回false…
---恢复内容开始--- 新年第一篇,继续Python. 先来简单介绍线程和进程. 计算机刚开始发展的时候,程序都是从头到尾独占式地使用所有的内存和硬件资源,每个计算机只能同时跑一个程序.后来引进了一些机制来改进这种调用方法,包括流水线,多进程.我们开始并发执行程序,每个程序交替地被处理器调用,再极高的频率下,你会认为这些程序是在同时执行的,这也就是并发技术.用操作系统来管理并发,将程序读到内存中,然后被操作系统调用开始,它的生命周期就开始了.而每个程序的执行,都是用进程的方式执行,每个进程有自…
本文索引目录: 一.对Sort算法实现的个人阅读体会 二.Sort算法使用的三个排序算法的优点介绍 2.1 插入排序的优缺点 2.2 堆排序的优缺点 2.3 快速排序的优缺点 2.4 新的结合排序——内省式排序的出现 三.sort函数的具体实现 四.尾录 一.对Sort算法实现的个人阅读体会: 如同<STL源码剖析>中所说,人类生活在一个有序的世界中,没有排序,很多事情无法进展,但是对于排序来说,面对大数据的排序存在着效率的问题.我们不可能说对十万个数进行冒泡排序,这在时间成本上是极不现实的.…
v=0 o=- 1 0 IN IP4 164.135.25.51 #local ip ,即本机SIP信令交互地址 s=SNS call #用于传递会话主题 c=IN IP4 164.135.25.51 #media ip , 即接收RTP流的媒体地址,不一定是本机地址 t=0 0 #会话时间,一般由其它信令控制,故填0 m=audio 30254 RTP/AVP 0# 音频接收端口(必须为偶数) /表示音频通过RTP传输 /0表示允许音频的格式(见下一行"a=") a=rtpmap:0…
1.SDP的引入 SDP最初用于Mbone(组播骨干网)上的多媒体会议.Mbone 是Internet 的一部分,它的主要特征是对IP组播技术的使用.IP组播技术比较适合实现多方会话. 基于组播的会议称为松耦合会议(loosely coupled conferences),它的主要特点是:1)基于组播地址完成多方之间的媒体传送,每个参与方都向指定的组播地址发送媒体,并且都能接收到发往该组播地址上的媒体:2)参与方之间没有紧密的信令关系,没有控制中心点或会议服务器. 松耦合会议的建立过程比较简单,…
Session Initiation Protocol 介绍 SIP是VoIP技术最常使用的协议,它是一种应用程序层协议,可与其他应用程序层协议配合使用,以控制Internet上的多媒体通信会话. VoIP 技术 开始之前先对VoIP做些了解. VoIP是一项允许您通过Internet传递语音和多媒体(视频,图片)内容的技术.这是利用Internet的可用性随时随地进行通信的最便宜的方法之一. 其优点包括 便宜 可移植性 灵活性 视频会议 对于VoIP通话,您所需要的只是一台具有Internet…
Welcome Android http://code.google.com/p/imsdroid/ http://code.google.com/p/imsdroid/source/browse/#svn%253Fstate%253Dclosed 3GPP IMS (IP Multimedia Subsystem) is the next generation network for delivering IP multimedia services. IMS is standardized…
索引来源于http://www.packetizer.com/ipmc/sip/standards.html SIP Standards Core SIP Documents RFC Document Title RFC 2543 SIP: Session Initiation Protocol (obsolete) RFC 3261 SIP: Session Initiation Protocol RFC 3262 Reliability of Provisional Responses RF…
最近公司要实现在各种网络环境下面的多屏互动(机顶盒.android phone.iphone及PC端)的需求:由于IP地址资源有限的原因,目前我们使用的各种终端设备都位于局域网后面也就是多台设备共享同一个公网IP:例如:如果位于局域网里面的一个终端Agent A要与互联网上的另一个终端Agent B通信,当A发送的data packet经过局域网出口处的NAT设备时,NAT会将data packet里面的source address字段替换成相应的公网IP和Port,然后再发送data pack…
Status of This Memo This document specifies an Internet standards track protocol for the   Internet community, and requests discussion and suggestions for   improvements.  Please refer to the current edition of the "Internet   Official Protocol Stand…
1.各种网络环境下的P2P通信解决方法: (1)如果通信双方在同一个局域网内,这种情况下可以不借助任何外力直接通过内网地址通信即可:   (2)如果通信双方都在有独立的公网地址,这种情况下当然可以不借助任何外力直接通信即可: (3)如果通信双方一方拥有独立的公网地址另一方在NAT后面,那么可以由位于NAT后面的一方主动发起通信请求: (4)如果通信双方都位于NAT后面,且双方的NAT类型都是cone NAT,那么可以通过一个STUN服务器发现自己的NAT类型以及内网和外网传输地址映射信息,然后通…
转:http://www.cnblogs.com/javaminer/p/3575282.html 最近公司要实现在各种网络环境下面的多屏互动(机顶盒.android phone.iphone及PC端)的需求:由于IP地址资源有限的原因,目前我们使用的各种终端设备都位于局域网后面也就是多台设备共享同一个公网IP:例如:如果位于局域网里面的一个终端Agent A要与互联网上的另一个终端Agent B通信,当A发送的data packet经过局域网出口处的NAT设备时,NAT会将data packe…