随着VoIP和NGN技术的发展,H323时代即将过渡到SIP时代,在H323的开源协议栈中,Openh323占统治地位,它把一个复杂而又先进的H323协议栈展现在普通程序员的眼前,为H323普及立下了汗马功劳。而然当在SIP时代,则出现了群雄割据的状况,SIP相对于H323简单,灵活,于是各种协议栈层出不穷,下面将详细对比最具有代表性的5个开源项目:OPAL,VOCAL,sipX,ReSIProcate,oSIP
1、OPAL
OPAL是Open Phone Abstraction Library,是Openh323的下一个版本,它仍然使用了Openh323的体系结构,并在其基础上进行扩展,同时实现了SIP,H323,但在音频和视频的编码和传输部分有较大改动。OPAL初衷设计是包含任何电话通信协议,所以其底层进行了高度的抽象化,所以也能够很容易的支持MGCP,PSTN和将来会出现的协议。不过由于Openh323的最后一个版本还在开发中,所以原本6月发布的OPAL也被推迟,现有的OPAL还非常不完善,BUG也非常多,不过相信以Openh323的开发班底,一定能让OPAL十分优秀。
CVS : :pserver:anonymous@cvssourceforgenet:/cvsroot/openh323/opal
Language : C++
VxWorks port : Yes
Win32 port : Yes
Linux port : Yes
Supports RFC 3261 : Yes
Supports RFC 2327 : Yes
Supports RFC 3264 : Yes
Supports RFC 3263 : No
Supports RFC 3515 : Yes
Supports RFC 3262 : No
Supports RFC 3311 : No
TCP : Yes
UDP : Yes
SIZE : 8MB
License : MPL
Document : None
Samples : UA,GK
2、VOCAL
VOCAL是vovidaorg开发的SIP系统,VOCAL应该是目前功能最完善,使用者最多的开源SIP协议栈了它不只包括了协议栈,还包括了h323与sip转换网关,对SIP的各种Server的功能支持也非常完善不过很可惜,不支持windows平台,而且自从vovida被CISCO收购以后就停止了开发,最后的版本是2003年4月的150。
CVS : :pserver:anonymous@cvsvovidaorg:/cvsroot/vocal
Language : C++
VxWorks port : No
Win32 port : Partial
Linux port : Yes
Supports RFC 3261 : Partial
Supports RFC 2327 : Yes
Supports RFC 3264 :
Supports RFC 3263 :
Supports RFC 3515 : Yes
Supports RFC 3262 :
Supports RFC 3311 :
TCP : Yes
UDP : Yes
SIZE : 6MB
License: Vovida software licencse
Document : Few
Samples : UA,GK,GW
3、sipX
sipX是一个SIP系统,由SIPFoundry开发。sipX是从reSIProcate分离出来的,sipX除了包括SIP stack外,还包括了sipXphone,sipXproxy,sipXregistry等等,由它们构成了完整的SIP系统,而且sipx还支持嵌入式系统,各个模块可以按需取舍。不过可惜是几乎没有任何开发文档。
SVN : >物联网有四层平台:设备连接平台、设备管理平台、应用分析平台、应用开发平台,提供Paas服务。这都是使能平台。选择现有的IOT使能平台可以通过平台开发厂商的影响力、成功案例、全球通用性、服务持续提供能力、开发水平、方案解决能力等多方面综合考虑。
一、 提供统一的终端接入
通过使能平台,为不同业务类型的所有物联网应用终端提供统一的数据接入方案,极大降低了终端接入的难度和成本。终端数据接入支持多种通讯设备、通讯协议,对接收到的数据进行辨识、分发以及报警分析等预处理。
二、 提供统一的应用基础运行平台
物联网应用软件与传统的应用软件应用相比,有底层终端类型及数量多、行业应用复杂的特点,各种行业终端数量规模通过一定的发展往往能达到百万甚至更高级别,要求使能平台能维护大量共享数据和控制数据,提供物联网应用的统一运行环境,从概念、技术、方法与机制等多个方面无缝集成数据的实时处理与历史记录,实现数据的高时效调度与处理,并保证数据的一致性,以便能够支撑所有连接终端所需要呈现的各种应用。
三、 提供统一的安全认证
以用户信息、系统权限为核心,集成各业务系统的认证信息,提供一个高度集成且统一的认证平台。
四、 统一的数据管理及数据交换
不同种类及数终端的海量数据在平台上得以集中管理并且提供统一的数据交换功能,通过平台连接各种业务相关的异构系统、应用以及数据源,满足重要系统之间无缝共享和交换数据的需要。彻底解决了由于业务不同、应用不同、系统不同所导致的信息孤岛问题,数据平台的统一性让大数据分析成为可能,让更多的应用能够因数据的开发性得以实现。
五、 提供统一的门户支撑
提供一个灵活、规范的信息组织管理平台和全网范围的网络协作环境,实现集成的信息采集、内容管理、信息搜索,能够直接组织各类共享信息和内部业务基础信息,面向不同使用对象,通过门户技术实现个性化服务,实现信息整合应用。
六、 提供多种业务基础构件
为各行业应用业务提供开发辅助工具、快速定制、地理信息服务、权限管理、数据展现及挖掘等多种平台支撑服务。通过这些基础构件,实现系统的松散耦合,提高系统的灵活性和可扩展性,保障快速开发、降低运营维护成本。编程语言Toit开源了!
Toit 是一种面向对象的物联网编程语言,在 IoT设备上能够实现秒级代码部署(注:如果使用C语言,一个简单的代码更改需要几分钟才能重新部署);同时,Toit也是一种现代的、内存安全的编程语言,集成了先进的编辑器功能,如语法高亮、goto-definitions 、代码自动补全等等。
Toit 编程语言具备以下特征:
Toit的出现是因为有一群软件工程师对IoT开发的现状感到不满,凭借着在Google为Flutter构建V8 JavaScript 引擎和Dart语言的丰富经验,他们开始自己构建适用于IoT的最佳平台。也正是在平台构建过程中,他们意识到必须有一种高效的编程语言来满足物联网的需求。最开始,他们尝试使用了Python和JavaScript,但在微控制器上,这两种语言的速度都不够快。
为了解决性能和健壮性问题,Toit团队开始研究Toit语言,经过测试发现,Toit在 ESP32 上的执行代码速度比 MicroPython 快 30 倍以上,同时学习门槛也很低,Python开发人员在几小时内就可以学会它。
为什么会选择开源Toit?Toit团队表示:“从一开始,我们就明确知道Toit肯定是会在某个时刻开源的,因为所有主流的编程语言都是开源的。开源可以获得充满活力的生态系统,编程语言才能被大规模采用。经过多次迭代和实际环境的应用,Toit语言已经成为微控制器编写强大软件的利器,我们希望更多开发者能够从中受益,因此选择将它开源出来。”
链接:>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)