`
jiagou
  • 浏览: 2531404 次
文章分类
社区版块
存档分类
最新评论

开源软交换系统 FreeSwitch 与 Asterisk 比较

 
阅读更多

我建了一个 Freeswitch 内核研究 交流群, 45211986, 欢迎加入, 另外,提供基于SIP的通信服务器及客户端解决方案。

csdn lidp http://blog.csdn.net/perfectpdl



Asterisk 与freeswitch都是流行的开源软交换服务器,Asterisk出现的比较早,大概在1999年开始此项目,应该是最流行的开源软交换服务器,整个社区上下游都已经很成熟。

freeswitch 算是后起之秀,2005年才开始,但性能和稳定性都明显优于Asterisk,但由于出现的 晚,导致其功能的多样性及与其他系统的集成难度高于asterisk.


下面为Asterisk与freeswitch比较。

1:Asterisk是针对百人左右的小型系统,相同的硬件配置下单系统并发也就几百路(不同版本性能有一定差异,大概在 200-400之间),而根据国外爱好者测试freeswitch 可达到2000-3000路sip通道(媒体流并发),

2:Asterisk用动态链表来管理每个打开的通道,这样在多线程中非常难于管理(需要频繁的锁定和解锁)。而freeswitch每个呼叫通道都会用一个线程来管理呼叫状态,大大减少了死锁发生的几率,freeswitch核心代码高度抽象,尽量将复杂代码集中化。


3:Asterisk用DUNDi协议设计分布式系统,Fs使用外部数据库实现分布系统,做得更好,甚至可以一台服务器通过数据库注册到另一台服务器上。

4:freeswitch 支持夸平台,linux, unix, windows 等,asterisk基本只支持 linux, bsd系列。

5. freeswitch配置采用xml,asterisk采用linux下面通用配置文件格式语法,而 采用xml格式配置文件是freeswich使用者抱怨最多的部分,对于不懂xml格式的开发者在刚开始使用时是个折磨。


学习freeswitch需要掌握的内容:


c/c++编程, socket编程 ,sip ,sdp,rtp ,tcp/ip 协议,XML,脚本语言JavaScript,lua,erlang,perl。数据库sqlite,mysql。


系统编程知识:多进程线程同步(临界区,互斥量,信号灯,事件),APR,模块动态共享机制。


分享到:
评论

相关推荐

    开源软交换系统:freeSwitch sip模块分析

    开源软交换系统:freeSwitch sip模块分析

    开源软交换系统:freeSwitch架构设计分析

    介绍freeswitch源码结构

    FreeSwitch搭建软交换中心指导

    FreeSwitch搭建软交换中心详细说明。 部署环境: centos7 freeswitch 1.6

    FreeSWITCH-106-eBook

    开源软交换系统FreeSWITCH创世人所著 整体分析了FREESWITCH的架构 使用方法

    Freeswitch配合TDM400P自建企业电话会议系统实战案例

    基于linux,采用开源软交换freeswitch和免费的启点IPPBX系统,自建企业电话会议系统。

    百问FreeSwitch-TB完整版-226页

    大体说来,本文档比较适合与搞软交换或者FreeSwitch初级和中级研发运营工程人员。 不适合的本文档读者对象: 本人上面说过百问FreeSwitch不是解决WHY的学术著作,因此以下这些人我认为不合适看(浏览随便看看免费的...

    web软电话 jssip+freeswitch 软电话条 jssip案例

    需要freeswitch开启ws 5066端口才可以用,需要用火狐浏览器,其他的浏览器测试不能使用,不能使用https链接,学习足够了,商业也可以使用,可以继承在crm上,非常不错,web电话条,jssip案例,jssip软电话,...

    一款ippbx用于可视化管理freeswitch

    一款ippbx,用于可视化管理freeswitch,一键安装

    freeswitch手册及语音包

    FreeSWITCH是一个开源的电话软交换平台,主要开发语言是C,以MPL1.1发布。 它有很强的可伸缩性──从最简单的软电话到商业级的软交换平台几乎无所不能。它支持SIP、Skype、H323、IAX及Google Talk等通信协议。另外...

    lemon:基于FreeSWITCH的开源呼叫中心系统

    lemon是基于FreeSWITCH的开源呼叫中心系统,是tenjin 3.0的升级版,并且正式更名为柠檬,网站系统主要使用PHP开发,核心控制模块使用C语言编写,单台服务器可多租户使用。主要功能和特性座席高度监控3种外呼模式简单...

    更新FreeSWITCH的Web管理端

    FreeSWITCH提供了一个xml_rpc组件,支持用Web的方式管理FreeSWITCH。但是功能相当有限。因此我在这里做了一点小的扩展,允许执行CLI命令行,并且获得结果。 需要把文件解压缩、覆盖htdocs下的portal目录。 需要...

    软交换技术综述

    NGN与软交换技术综述、了解业界关于NGN的发展思路、了解软交换的体系架构

    freeswitch权威指南

    FreeSWITCH是世界上第一个跨平台的、伸缩性极好的、开源免费的、多协议的软交换系统。, 本书是FreeSWITCH领域最为权威的著作之一,在这本书面前,FreeSWITCH了无秘密!, 由中国FreeSWITCH领域“第一人”、全球...

    Freeswitch

    [1]FreeSWITCH 支持多种通讯技术标准,包括 SIP, H.323, IAX2 以及 GoogleTalk ,可以方便的与其他开源的PBX系统进行对接,例如 sipX, OpenPBX, Bayonne, YATE 或者 Asterisk.[1]FreeSWITCH 支持许多高级的 SIP 特性...

    用FreeSWITCH构建高性能电话系统 FreeSwitch1.2 官方原版截图完整版(带html索引)

    使用FreeSWITCH构建高性能电话系统 FreeSwitch1.2 官方原版的截图(完整版,附带HTML索引文件),原文件是电子书,只能阅读无法拷贝。这个是我一张张截图下来的。使用Freeswitch开发VOIP电话应用的程序员必读。 国外...

    百问FreeSwitch完整版

    余洪涌对freeswitch中经常性的问题的一个整理与回答。本文档比较适合与搞软交换或者freeswitch初级和中级研发运营工程人员

    sepconf:适用于Freeswitch和Asterisk的Cisco SCCP设备配置生成器

    当前支持的配置格式是Freeswitch和Asterisk,因此您可以使用freeswitch.tmpl或asterisk.tmpl来提供脚本。 模板将首先在您当前的工作目录中搜索,然后在包的data / templates目录中搜索。 安装 要使用pip进行安装: ...

    Freeswitch权威指南,freeswitch权威指南 pdf,C,C++

    FreeSWITCH是一个开源的电话软交换平台,主要开发语言是C,某些模块中使用了C++

Global site tag (gtag.js) - Google Analytics