免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3602 | 回复: 1
打印 上一主题 下一主题

一台Asterisk服务器上应用D430实现高达32个E1接口 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-05-30 12:54 |只看该作者 |倒序浏览
Contents [hide]
1 测试环境
2 第一章 概述
3 第二章 硬件连接
4 第三章 软件测试
5 ToDo


测试环境
CentOS-5.7<br>
内核版本: 2.6.18-274.e15PAE <br>
DAHDI: dahdi-linux-complete-2.4.1.2+2.4.1 <br>
Asterisk: asterisk-1.8.9.0 l<br>
ibpri: libpri-1.4.12 <br>
硬件: 2张PCI-E_IF_card<br>         
      2张PCI-E backplane   
      8张D430E 语音卡   
      ATX电源功率:300W(最大)
第一章 概述
====1.1 背景====
如何让Asterisk支持更多的并发呼叫或者更多的电话接口一直是一个挑战。为此,OpenVox作了大量研究投入,最终我们发现降低中断频率和减少I/O操作是两个行之有效的办法。




====1.2 关于D430====
OpenVox D430 是4口E1/T1/J1语音卡,可以支持PCI或者PCI-Express接口。此产品具备很多业界领先的性能特点,如动态修改中断号,中断频率,现场固件升级等。OpenVox一直在不断的改进D430的固件,以实现更高的性能。现在,固件版本V1.5已经可以完美的实现在一台Asterisk服务器上支持高达32个E1接口,也就是说实现960路SIP 到 TDM 并发呼叫。




====1.3 关于固件====
从V1.5开始,配合新的驱动D430 提供了两个可选的增强功能:apu功能 (嵌入式应用处理器:embedded Application specific processor unit) 和IRQ代理 (interrupt agent) 功能。<br>
Apu 功能:该功能将几十甚至几百次的PCI 读写传输汇总成PCI 的突发传输。该功能大大降低了每张卡对PCI 总线的占用率,为一台机运行多张卡创造了条件。<br>

IRQ 代理功能:该功能只允许一张卡注册并申请中断,其余的卡都不注册不申请中断。该功能避免了多张卡共享一个中断号时导致的各种问题,同时也降低了系统任务切换的开销。

通过使用OpenVox专用的dahdi驱动程序软件,同时允许通过驱动中的两个参数 use_apu 和 irq_agent进行控制,在新驱动中默认使能这两个功能。<br>

第二章 硬件连接
将8张D430 V1.5运行在同一台PC机上测试的硬件环境:
1. 本实验使用的计算机的主板型号为:Intel S5500B,支持两颗CPU
2. CPU型号:Intel(R) Xeon(R) CPU E5506 @ 2.13GHz



3.由于该主板只有4个PCI-E插槽和1个PCI 插槽,最多只能插5张卡,所以必须用PCI桥进行扩展才能支持8张D430。下图是openvox生产的PCI-E延长/扩展产品,可以用来把主板上的PCI-E接口通过普通CAT6双绞线延伸到1m的距离,并扩展出更多的PCI-E接口。



4.PCI-E接口扩展的硬件连接,以及供电连接见下图:



5.将8张D430 V1.5按如下图连接后,在dahdi-channels.conf中,将其中4张D430的接口设为NET,另外四张设为CPE,NET和CPE通过E1线(RJ48:线序为1245)对接。用Winsip呼叫NET口,NET口通过E1线呼叫CPE接口,在CPE侧应答并放音。以一对NET、CPE接口为例来说明呼叫流程,如图所示。  [1]

6.按照以上图连接并给PCI-E扩展卡通过ATX电源线供电之后,就可以开机进行测试了。

第三章 软件测试
1.开机后,执行“lspci” 查看系统是否能够正确的识别D430V1.5,只有V1.5以后的版本才支持8张卡一起运行,如果是1.5以前的版本,可以通过openvox-update软件升级到1.5。



2.由于8张卡一起运行,Asterisk需要打开的文件数(8192)已经超过了系统默认允许的范围(1024),所以需要用 “ulimit –n” 进行修改。由于不同的系统修改方法不一样,此方法为临时处理方式。所以用户每次开机运行一个终端时,都需要执行“ulimit –n”进行修改,或将文件数写入相关的配置文件。
[


3.系统 [正确安装]http://downloads.openvox.cn/pub/manuals/V2.2/Chinese/D430E%20DE430E_on_DAHDI_Chinese_User_Manual.pdf 并加载驱动后,可以看到初始化了的992个通道,即31*4*8=992路。


4.执行“cat /proc/interrupts”命令后,可以看到只有一个wct4xxp的驱动注册了193号中断。在使用中断代理之前,会有8个wct4xxp注册中断。



5.启动Asterisk, 可以看到有32个span 状态已经为up。



6.用Winsip呼叫NET口,以下是运行3小时50分钟时的情况。



7.用“top”命令查看CPU 占用率,可以看到CPU 占用率为292%,经过一段时间观察,在整个运行期间CPU 占用率在50%-400%之间。所以如果用单CPU双核心或者单CPU四核心运行8张卡是有些勉强的。建议用支持双CPU的主板,用2颗4核心的CPU来处理8张D430E的应用。



ToDo
绝大多数服务器主板现在并不能安装8张4口E1卡,通常只能够安装4张左右。为此,OpenVox会在不久的将来提供8或16张4E1语音卡来解决这一问题。客户目前也可以利用OpenVox研发的PCI-Express扩展卡来搭建解决方案。我们也尝试过在双志强服务器上运行16张4口E1卡,但是发现Asterisk软件不允许打开超过992路DAHDI通道,OpenVox会在将来继续跟踪研究这一问题,以满足客户对更多E1接口安装在同一台服务器上的需求。

论坛徽章:
1
2015元宵节徽章
日期:2015-03-06 15:50:39
2 [报告]
发表于 2012-06-02 15:54 |只看该作者
前段时间认识个Openvox的销售,他说他们面向的本来就是中小企业级应用。一般中小企业,4E1,120路座席已经规模不小了,8E1的应用不太现实,向运营靠拢了,这不是他们的强项。
但看楼主好像就是打算运营,32E1,1000个话路,这是要做话批么?不过看图片这种设备放置法,实验室里倒是可以,机房咋办?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP