语音 over IP/VoIP 网关和 PABX 集成
本章介绍了复杂 VoIP 网关系统的世界。这些系统负责提供一定程度的呼叫控制和从 VoIP 电话设备的路由。
这些系统中的每一个都负责通过支持的 VoIP 协议接收来自 VoIP 手持设备、ATA 或软电话设备的呼叫,查询拨号计划或其他呼叫路由表,并正确路由呼叫。其他由这些网关提供的一些或所有功能包括
身份验证 - 确保客户端有权使用 VoIP 资源。
呼叫计费 - 通过网关提供对呼叫的跟踪,包括报告和成本控制。
复杂拨号计划 - 配置在简单设备(如 ATA 和软电话)上的大多数拨号计划只允许非常简单的拨号计划配置。使用 Asterisk 等 VoIP 网关,可以利用一天中的时间或来自外部源的值来确定呼叫应走哪条路径。
硬件集成 - 大多数网关提供与物理硬件(如 FXS(内部线路)和 FXO(PSTN 线路)卡)的接口功能,以创建 PBX 系统。它们还提供拨号计划配置以确定哪些呼叫应通过 IP 路由,哪些应使用卡。在选择网关软件时,重要的是要评估它们支持哪些设备,并确保你的设备在列表中。某些设备(例如,Cisco 线卡)可能需要供应商的特定 VoIP 网关实现才能提供任何支持。
内部号码 - 一些网关提供为客户端提供内部分机号码的功能,允许一台 VoIP 设备使用短的内部分机号码拨打注册在你本地网关上的另一台设备。
在哪些情况下使用 VoIP 网关产品?
通常,如果需要高级配置(例如用于计费、成本控制、复杂拨号计划或分机之间通话功能的高级呼叫计费),则应实施网关解决方案。
如果你有兴趣集成额外的硬件(例如 FXO 卡(到 PSTN 的接口)),则必须使用网关产品。
如果你正在为中大型企业设计 VoIP 解决方案,或者需要 IVR(交互式语音应答)功能,则应实施 VoIP 网关。
开源网关 | 商业网关 |
Asterisk | |
Bayonne | |
OpenSER | |
SIP Express Router | |
Yate | |
YXA |
Asterisk 是一个非常流行的开源 PBX 系统,它运行在 BSD、Linux、Mac OS X 和 Windows 上。该项目由 Digium(一家 PBX 硬件制造商)赞助。
Asterisk 支持 ENUM、e911、来电显示、所有呼叫控制(如转发、会议、保持、转移和呼叫等待)。还存在其他功能,例如呼叫监控、呼叫录音和隐私控制。
除了以上内容,Asterisk 还能够提供 IVR 功能,支持交互式语音提示、呼叫排队以及许多高级呼叫路由功能。
总而言之,Asterisk 是一个功能齐全的商用级 PBX 系统,可免费使用。
OpenSER 是一款功能强大且稳健的 SIP 服务器。OpenSER 在 GPL 许可下发布,是第一个集成 TLS 的免费服务器,提供安全的 VoIP 通信。它具有针对可扩展性和灵活性以及高性能设计的架构。
主要特征
- SIP 代理/注册/重定向服务器 (RFC3261)
- 事务状态
- 支持 UDP/TCP/TLS
- 模块化架构
- 使用伪变量的脚本配置文件
- 通过数据库、radius 或文本文件进行身份验证、授权和计费
- 支持 enum
- NAT 穿越系统
- 格式化日志记录
- 最低成本路由
- 呼叫处理语言 (CPL)
- MySQL/Postgres/平面文件数据库后端
- 服务器监控
SIP Express Router (SERi) 是一款高性能、可配置的免费 SIP 服务器,在开源 GNU 许可下授权。它可以充当 SIP (RFC 3261) 注册器、代理或重定向服务器。可以将 SER 配置为服务专门用途,例如负载平衡或 SIP 前端到应用程序服务器(例如 SEMS)。
SER 功能
- 完全支持 RFC 3261 功能,
- 多种数据库后端(mysql、oracle、postgres、radius、文本数据库),
- 管理功能(通过 XML-RPC 进行远程管理、负载平衡),
- NATi 穿越、电话功能(LCR、速拨),
- 多域托管、ENUM、状态,以及更多。
SER 还通过各种额外的 SIP 工具得到增强,这些工具提供管理、媒体处理、CDRi 处理等功能。
如今,SER 是许多操作系统及其发行版的默认部分:Debian、FreeBSD、Gentoo、NetBSD、OpenBSD、OpenSUSE、Solaris。
SER 的历史可以追溯到上个世纪。自 2002 年以来,SER 已被用于各种不同的目的,经常被行业中的主要 ISP/ASP 和大学用于启用 VoIPi 服务。SER 的独特优势在于它的性能(即使在大量用户群或异常操作条件导致的负载很重的情况下,SER 运行良好),灵活性(SER 的真正配置文件语言和模块接口允许高度自定义)以及互操作性(经过测试并与过去数十年的数十种 SIP 产品一起运行,包括但不限于(Microsoft、Cisco、Mitel、snom、Pingtel、Siemens、xten 等等)。
Yate 是一款下一代电话引擎;虽然目前主要关注语音 over 互联网协议 (VoIP),但它的强大之处在于它易于扩展。语音、视频、数据和即时消息都可以统一到 Yate 的灵活路由引擎下,最大限度地提高通信效率,最大限度地降低企业的基础设施成本。
Yate 可用作
- VoIP 服务器 ****
- VoIP 客户端
- VoIP 到 PSTN 网关
- PC2Phone 和 Phone2PC 网关
- H.323 网关
- H.323 多端点服务器
- SIP 会话边界控制器
- SIP 路由器
- SIP 注册服务器
- IAX 服务器和客户端
- IP 电话服务器和客户端
- 呼叫中心服务器
- IVR 引擎
- 预付费和后付费卡系统
YXA 是一个用 Erlang 编程语言 [1] 编写的 SIP 服务器,由瑞典皇家理工学院和斯德哥尔摩大学共同开发。Erlang 由爱立信公司开发,旨在用于编程传统电话交换机,其目标是打造一个容错且健壮的编程系统。
这使得 YXA 成为一个能够为数万用户提供服务的健壮的 SIP 服务器/堆栈。该项目的目标是使 YXA 符合所有与 SIP 相关的 RFC 标准。
- 这是一个符合 RFC3261 标准的 SIP 服务器,能够满足通用域的所有需求。
- 注册器,用于跟踪您的用户。
- 处理传入您的域的 SIP 请求。
- 处理来自您的用户到远程域的请求路由。
- 支持 TCP、UDP 和 TLS(包括 SIPS)。
- 如果您的用户电子邮件地址存在于 LDAP 中,则会自动将用户的电子邮件地址映射到其 SIP 地址。
- 使用单个服务器实例处理多个域。
- 只要有可能,都支持 ENUM 用于 PSTN 旁路。
- 支持 IPv6。
- 支持并行和顺序分叉。
- 支持 CPL (RFC3880),以便用户可以高级控制事件(目前仅限传入呼叫)。
- 模块化用户数据库,目前支持 LDAP、Mnesia、MySQL 和文本文件后端。
- 支持 PSTN 目的地访问控制(针对每个用户或匿名用户)。