SIP实现号码移动
目前的通信方式要求人们在进行通信时要针对不同的通信服务记住一个特定的通信号码,如传真号码、移动电话号码、办公电话号码等等。那么,怎样才能从根本 上改变这一特性真正实现理想的通信模式呢?即人们只需要记住一个号码,就可以与拥有该号码的个人进行通信,而不论通信服务的性质如何,也不管该用户位于世 界上的哪个地方。目前科学家们正在致力于对该项工作的研究,SIP就是其中的一项研发课题。
会话初始化协议(SIP)(Session Initiation Protocol)是一个应用层控制协议,它能够建立、修改、终止多媒体会话或者呼叫。SIP主要有两种结构元素:用户代理UA和网络服务器。UA 驻留在SIP的终端站中,它包含两个部分:用户代理客户(UAC),该部分负责发布SIP请求;用户代理服务器(UAS),它负责响应SIP请求。其中用 户代理服务器有三种不同的类型:重定向服务器,代理服务器和注册服务器(register)。基本SIP 呼叫不需要服务器,但是其他一些增强特性需要服务器的支持。
重定向服务器作为用户代理服务器的三种类型之一,它是通过发送被呼叫者可获得的SIP URL地址来处理INVITE消息的。代理服务器执行应用层的SIP请求和响应路由。代理服务器可以是记忆的或者无记忆的,有记忆的代理服务器拥有整个呼 叫建立过程中的相关信息,而无记忆的代理服务器则在处理完一个呼叫后将完全忘记有关该呼叫的所有信息直到下一个消息的到达。另外,代理可以是有分支代理或 者无分支代理,例如,有分支代理可以在同时让几个电话都振铃直到有人拿起其中的一个电话为止。注册服务器一般用于记录SIP地址(SIP URL)和相关的IP地址。注册服务器经常用作启动后的注册,由于在REGISTER消息中使用了SIP URL地址的缘故,因此,当INVITE请求到达时,代理服务器或者重定向服务器可以直接正确地转发请求信息。这一基于注册服务器的转发特性形成了网络对 支持真正的号码移动性服务的基础。在此,我们需要注意的是,通常一个SIP网络服务器能够实现对不同种类服务器的组合。
SIP电话机
SIP电话机(硬件设备)是一种可以连接到以太网的电话装置。在大多数情况下,SIP电话机支持采用IP地址的IP协议,该IP地址可以是静态分配的或 者是通过动态主机配置协议(DHCP)获得的。SIP电话机主要有两大类型:信令栈和媒体引擎(media engine)。目前,虽然存在两种不同的标准(SIP 和H.323),但是信令栈现在已经有了几种自己的存在方式,媒体几乎都通过实时传输协议(RealTime Transfer Protocol)独自传送,媒体本身是在用户数据报UDP内携带的。
信令栈的目的是建立、管理并且断开呼叫连接。呼叫建立阶段需要查找端点的位置,需要交换诸如支持话音编码解码类型的通信能力。管理阶段建立话音信道,如果需要的话将邀请其他用户参与该通话过程。在连接断开阶段,呼叫就自然终止了。
SIP服务器
中心注册/代理服务器,我们通常称之为主SIP服务器,是所有SIP消息的主要目的地,它在管理域中生成并试图建立一个连接。它同时也是在 LAN之外代表在LAN上的所有SIP电话机客户通知SIP的唯一一个目的点。主SIP服务器将所有的SIP INVITE消息传递给最后的相关目的站点(或者其他的SIP代理),并且针对这些消息进行基于数据库的查找。它允许所有的移动客户用目前的位置信息进行 注册,而将是否接收呼叫的决定留给客户自己决定。这一方法需要客户端的智能性,而客户端的智能性又符合IP电话设想。该方法的主要优点是它不需要将潜在的 大文件(例如,PDA中存有的地址簿和约会信息),传输到服务器端。
基于SIP的号码移动性
在许多情况下,呼叫者在与被呼叫者通话前不想首先判断通过什么形式的通信方式可以找到被呼叫者(即连通哪个特定电话能与被呼叫者连通),而只是希望能够 与被呼叫者进行通信而不论被呼叫者的号码是哪种形式(移动电话号码或者办公电话号码等等),实现这种形式的通信也就是我们通常意义上所说的用户号码具有移 动性
随着设备的移动性,真正的号码移动性是基于SIP 请求的REGISTER信息。为了使用这一特性,人们通过用SIP电话机同步PDA来对自己进行认证。在信息同步后,SIP电话机就知道PDA的拥有者的 身份。通过阅读使用者的地址簿目录,SIP电话机可以知道使用者的SIP URL。在这一阶段,SIP电话机通过主SIP 服务器注册用户,将该注册用户表示为可以访问的SIP电话机的SIP URL地址。由于每一个输入的SIP请求都需要通过主服务器,所以这些请求都发送到正确的SIP电话机上。如果用户在移动并且与另外一个SIP电话机进行 了注册,则旧的注册信息将被删除并且按照新的位置写入新的注册信息。这些活动都是在主服务器中完成的。这种情况不仅在公司里适合,在酒店或者会议室或者其 他的会议中心都是可用的。在此,我们需要注意的是,在SIP 以太电话与PDA取得同步后,系统操作不再需要两个设备之间的进一步通信。当用户之间的通话完毕后,该用户将拆线,那么此时主SIP服务器所需做的工作就 是在该用户与另外一个电话取得同步前将所有对它的呼叫转发到话音邮件中。
除了以上提到的方法外,PSTN服务提供商们还能够通过另外的称之为Web站点的方法提供相同或者近似的服务,从而使得用户能够将呼叫转发到他们目前所 在的位置。但是,这种用法对于用户来说不很方便,由于计算机需要访问Web 站点,所以对于用户而言,当用户所在的地理位置不确定时(即用户的位置可以在任何可能的地方时),对PDA进行同步是一件很困难的事情。即使用户位于一个 固定的地点,要将用户连接到Web站点并且输入相关的转发信息也是一件耗时耗力的工作。但是如果能够使PDA 同步则将使得整个问题变得自动而且容易,因此,下一阶段人们所需要做的工作就是:怎样采取简单易行的方法来实现PDA同步。
随着通信的发展,人们对通信质量要求越来越高。人们不要求对于每一种通信服务都需要单独的一个通信号码,也不管该人现在是静止的还是移动的,就希望做到 通过该号码与他进行通信。这就是我们通常意义上所说的号码移动性,也是将来个人通信的理想目标。在该目标实现之前,基于SIP的号码移动性无疑在很大程度 上推动了该项通信的发展。
<!---->
SIP电话机
高 质量的SIP电话机,话音质量好。支持多种语音压缩方式,如G.711A、G.711u(64kbps)、G.729AB(8kbps)、 G.723.1A(6.4/5.3kbps),适合于不同带宽的用户。功能强大,特色多。内有16M内存,实际上相当于一台小电脑。2M的闪存 (flash),软件可以升级。电话机的外观如图。
此SIP 电话机可以连到本站的服务器上。它有两个网络接口(RJ45),一个网络接口可以接ADSLM Modem(或者集线器),另一个网络接口可以接计算机。话机自身支持PPPoE协议,不需要计算机,就可以用ADSL Modem拔号上网。很适合于ADSL包月上网的用户,把话机与电脑联到ADSL猫上,连集线器都不需要,而且在话机通话时,话机会自动限制电脑的带宽, 保证通话优先。话机当然也可以连到局域网上。在计算机关机时,电话机总是连在网上,随时可以拔通。
中小企业一般都有自己的宽带上网,可以使用这种话机节省话费。家有老爷爷、老奶奶不习惯用电脑,也可以使用这种话机。此SIP电话机可以自己设置功能,常用的几个电话号码,可以按一个键就拔通电话。
有意购买的用户,可以与本站联系,webmaster@sinosip.net。一台SIP电话机的价格为1100元。在本站购买的电话机,本站负责与服务器连通,连到服务器上使用是免费的。
实 际上用户买SIP电话机,类似于买电视机。用户买了电视机,可以收看很多个电视台,而看电视不需要交费,这将是下一代电话的发展趋势。SIP电话机连到服 务器上使用,这是免费的。就算有的服务提供商收费,最多像有线电视一样,每月交少量固定费用,也是很便宜的。用户已经购买了上网所需要的带宽,也买了网络 电话机和电脑,难道用这些打电话还需要交费吗?当然不用,这将是发展的必然趋势!实际上因特网中SIP服务器很多,此SIP话机可以同时连接到三个 SIP服务器上,拔打电话时,可以选择任何一个SIP服务器。
支持SIP的IP电话机有下面一些功能:
2个RJ-45以太网络端口,可同时接ADSL Modem(或者网络交换机、路由器等)与计算机。
支持话筒、内置双向免提听筒与耳机模式。
支持同时两路电话。
电话处理功能包括:保留、静音、来电显示、来电等待、转接、拒绝来电、重拨、来电回复与勿干扰。
通话历史纪录(已接来电、未接来电与已拨出号码,各10笔)。
指定呼叫转移(忙线、无人应答、勿干扰与出差模式)。
电话会议,可多方会谈,实现多点高质量会议
引导式菜单设定(支持Telnet)
可存储500笔地址电话簿
个人化设定:速拨键设定、屏蔽来电(20组)、自动重拨、是否自动跟随转接、8组可设定式个人化功能键
最多可同时支持两组不同的ISP号码、无ISP时自动定位或以点对点直接通讯
支持NAT与防火墙穿透
开放式软件接口:可配合运营商或服务商的增值服务供开放的接口
支持的协议:
SIP 2.0 (RFC3261与RFC2543)
RTP/RTCP(RFC1889/RFC1890)
DHCP或固定IP
SDP(RFC2327)与通话能力协商(RFC3264)
RTP/RTCP语音传输,并支持IP ToS与 802.1Q优先级语音传送
自动定位SIP 服务器(RFC3263、RFC2782)
电话号码与SIP AoR的 ENUM解析(RFC2916)
以TFTP设定话机与软件更新
Telnet设定配置参数
SNMPv2网络管理:MIB2(RFC1213)
SNMP校准网络时间
支持固定的NAT设定或以STUN(RFC3489)动态识别并通过NAT
<!---->
公司应用实例
由于SIP协议的出现,有分支机构的企业集团、工厂、政府机关等等都可以用比较低廉成本,实现自己的VoIP系统。甚至是小企业或者个人,都可以建立自己的VoIP系统,或者利用它。
比如,有一个公司在北京,它有一个分公司在上海,两者之间通话量很大。可以建立自己的VoIP系统,并在北京和上海都建立SIP到公众电话网(PSTN 网,即电信的电话)的网关。这样公司内部之间打电话都是免费的,如北京分公司打到上海分公司,或者上海分公司打到北就分公司,都是免费的。上海分公司打电 话到北京市内的公众电话网(PSTN)的电话上,是通过北京的网关到PSTN上,花费的只是市话费,当然是由北京分公司买单。同样,北京分公司的人员打电 话到上海市的普通电话,由上海的网关付市话费,也就是由上海分公司付钱。
VoIP系统节省的是长途电话的费用,要付出的是上网的费用。基于SIP协议构建的VoIP系统,比其它的协议,都要便宜得多。分支机构的企业有能力,也有必要建立自己的VoIP系统。
相关推荐
在"osip应用的一个例子 赛迪网技术社区.mht"这个文件中,很可能是包含了一个具体的SIP应用示例,例如,一个简单的SIP用户代理(UA)。用户代理是SIP网络中的两个主要角色之一,它可以发起、接收、转发或者终结SIP...
《基于Java开发SIP应用程序详解》 SIP(Session Initiation Protocol)协议是一种用于控制多媒体通信会话(如语音和视频通话)的应用层协议。在IT行业中,SIP被广泛应用于VoIP(Voice over Internet Protocol)系统...
运营商网络环境中的SIP应用实现.doc
电子行业:小型化、系统化趋势推动,SiP应用逐步拓展-35-广发证券-页.pdf
电子行业:小型化、系统化趋势推动,SiP应用逐步拓展-20200325-广发证券-19页.pdf
- JAIN SIP:这是Java与SIP技术的结合,本文将重点介绍如何在JAIN SIP开发环境中实现SIP应用。鉴于JAIN SIP API直接作用于SIP协议栈层面,开发者需具备较深的SIP协议理解。 #### 2. SIP协议 ##### 2.1 SIP协议概述...
C++的模板和面向对象特性使得构建可扩展和模块化的SIP应用成为可能。C++的SIP库,如PJSIP,提供了一套完整的API,方便开发者集成到自己的项目中。 源码学习的重要性: 1. 深入理解:阅读和分析源码是提升技术深度...
在Java环境中实现SIP应用,可以为开发者提供丰富的功能来构建VoIP(Voice over IP)系统和其他实时交互服务。 在Java中实现SIP主要依赖于Java SIP API(javax.sip),这是一个由Sun Microsystems开发的标准API,...
**SIPcore: Rust框架构建SIP应用** SIP(Session Initiation Protocol)是一种网络协议,主要用于控制多媒体通信会话,如语音和视频通话、多媒体会议等。在IT行业中,SIP广泛应用于VoIP(Voice over Internet ...
诺基亚提供了丰富的工具和支持来帮助开发者进行SIP应用的开发和测试。这些工具包括: - **SIP扩展**:适用于S60 2.0终端模拟器和实际终端。 - **SIP栈与API**:为开发者提供了一套完整的开发工具。 - **SIP服务器...
本资源提供了六个关键的SIP包,它们是Java开发SIP应用的基础。以下是这些包的功能及重要性的详细解释: 1. **JainSipApi1.2**:这是JAIN SIP API的实现,JAIN是Java电信接入接口(Java Advanced Intelligence ...
在Java中实现SIP协议,我们可以借助JSIP(Java SIP API)库,这是一个开放源代码的项目,为Java平台提供SIP应用开发的支持。JSIP-0.8是这个库的一个版本,包含了实现SIP协议所需的各种类和接口,使得开发者能够轻松...
Java提供了JSR 289(Java API for SIP)规范,使得开发者能够方便地构建SIP应用程序。 首先,我们需要了解SIP注册的基本流程。SIP注册是用户代理(UA)向SIP服务器发送一个注册请求(REGISTER),以告知服务器自己...
SIP(Session Initiation Protocol)协议栈是网络通信领域中的核心组件,主要用于建立、修改和终止...通过深入理解和熟练使用这个开源库,开发者能够创建出高效、可靠且功能丰富的SIP应用,满足各种现代通信需求。
标题"SIP Phone_sip_phone_"和描述"Manual fonte supplier"暗示了我们正在讨论与SIP(Session Initiation Protocol)电话相关的技术...开发者可以通过这些源代码了解SIP电话的实现细节,学习如何构建自己的SIP应用。
SIP(Session Initiation Protocol)协议是一种用于控制多媒体通信会话(如语音和视频通话)的信令...通过结合实际应用场景,开发者可以构建出高效、稳定的SIP应用,例如VoIP软电话、视频会议系统或者即时通讯平台。
JAIN SIP遵循JSR 116规范,是开发SIP应用的标准库。 在这个简单的客户端中,我们可能会遇到以下几个关键概念和组件: 1. **SipFactory**: 这是JAIN SIP中的核心类,用于创建SIP堆栈和其他必要的对象,如Sip...
SIP-api.jar是开发者进行SIP应用开发时常用的工具包,它包含了对SipServlet和JAIN-SIP的支持,为构建基于SIP协议的通信应用提供了便利。 SipServlet,是基于Servlet模型的SIP应用接口,它将HTTP服务器的概念引入到...
在开发SIP应用时,由于SIP协议的异步特性,开发者可能需要处理并发任务,因此concurrent.jar提供了必要的工具和API来实现高效的并发处理。 2. **JainSipApi1.2.jar**:JAIN SIP (Java API for IP Multimedia ...