您当前的位置是:  首页 > 新闻 > 国内 >
 首页 > 新闻 > 国内 >

SIP系列讲座-传真讨论

2017-12-11 15:36:13   作者: james.zhu   来源:asterisk   评论:0  点击:


  传真已经是日常工作中必须使用的一个通信工具,很多公司的一些业务仍然需要传真来收业务。通过PSTN来收发传真是大部分企业使用的一种方式,但是因为VOIP网络的介入,通过SIP网络收发传真也开始变得越来越普遍。以下是IDC的数据报告,从这份报告中我们可以看到, 2017年传真的需求量仍然在不断增加。
  通过Spiceworks的调查报告说明,大约89%的中小型企业仍然使用传真,大约62%的TI部门仍然使用物理传真机。
  在今天的VOIP网络中,传真的使用虽然在不断增加,但是用户可以选择很多方式来实现传真发送,而且传真的话题也不是我们SIP系列中重要的话题,所以,笔者不打算花很多篇幅做非常深入的讨论,只是通过几个方面的介绍,帮助读者能够掌握SIP网络中的传真使用情况。我们涉及的内容包括传真的背景介绍,传真的协议使用,传真的几种方式,带宽和传真问题排查等几个方面进行讨论。
  1、传真最早是在1843年发明的,但是传真大规模的使用是在1970年后。当时使用的协议是T.30,通过PSTN网络在不同地区的部署来实现传真收发。
  首先让我们看看T.30环境下,收发传真是如何工作的。
  1. 发送传真方首先启动一个发送传真音,通知对端需要发送传真。
  2. 接收传真方返回一个CED表示可以接收传真。
  3. 接下来,接收传真方发送一个DIS表示所支持的能力,例如,速率等可选参数。
  4. 发送传真方收到接收方所提供的可选参数,然后做一个协商,最后返回发送方所支持的最佳匹配参数(DCS)。
  5. 发送方然后发送一个TCF。
  6. 接收方发送一个确认信息(CFR)。
  7. 发送方开始正式发送传真内容,发送传真完成以后,发送一个(EOP)表示传真发送结束。
  8. 收发互发传真结束确认消息,挂断传真。
  以下是不同阶段所使用的相关语音和协议,这里大家注意,V.21是负责处理收发协议握手协商机制,V.27ter/V.17/V34,V.29则负责传真传输协议。各自的速率完全不同。
  2、在上面的介绍中,我们可以看到,如果通过传统的T30方式发送传真需要经过普通的PSTN网络,使用成本比较高,同时需要购买传真机和其他的硬件设备。和传统的传真方式相比,基于VOIP网络的传真具有一下几个方面的优势:
  • 和PSTN发送传真成本,通过IP发送传真可节约成本。
  • 无需昂贵的传真设备。
  • IP传真方案可灵活拓展。
  • 无纸化传真方式节省了大量传真用纸,绿色环保。
  • 是当前融合通信的主要功能之一,用户可以通过客户端直接发送传真。
  基于SIP-TDM的传真实现方式如下,传真服务器迁移到了IPPBX中,IPPBX支持了PCI的语音板卡,语音板卡接口可以支持运营商的PSTN接入,当然,这里的语音板卡也可以通过外置的语音网关来代替,语音网关通过SIP对接IPPBX。
  如果用户完全使用SIP trunk的话,用户可以通过以下拓扑方式实现传真的收发。这里的FoIP表示Fax Over IP(使用了T.38)。传真机通过网关发送到SIP trunk,运营商然后通过PSTN发送到客户端的模拟传真机。
  具体的应用细节如下:
  如果我们看详细的应用场景,可能会发现,发送传真的路径可能经过了多次协议的转换,在整个路径的不同用户可以需要不同的传真协议支持,这样就可能导致很多传真的问题,例如因为转换的时延,可能导致传真失败或者传真不能发送等问题。
  3、在FoIP中,传真收发是通过三种协议来获得支持, 它们是G.711 Pass-through,T.37和T38。
  笔者分别介绍三种协议的具体内容:
  G.711 pass-through 的工作原理类似于普通的VOIP呼叫,pass-through 可以支持IP网络和PSTN,终端可能仍然需要T.30来进行转换。
  Pass-through具有以下几个方面的特点:
  • 协议相对比较简单。
  • 支持实时传输方式。
  • 工作方式和VoIP呼叫类似。
  • 可以使用RTP和RTCP。
  • 如果使用SG3的话,传输速度可以超过T.38。
  • 对网络延迟,抖动,丢包比较敏感,如果出现前面所说的情况,传真数据可能丢失。
  • 需要消耗很多带宽支持传输。
  • 仅支持编码选择,不能压缩编码。
  • 可以使用SRTP支持加密传输。
  T.37的工作原理是通过存储转发到方式来实现。用户传真以PDF或者邮件的形式发送,然后在客户端进行经过邮件处理,和传真机协商后发送到传真机。
  T.37如果通过PSTN接收传真时,传真会通过T.38发送到本地的传真网关,然后传真文件被转换成传真文件格式Tiff或者PDF,邮件服务器会存储这个传真文件,然后通过邮箱附件形式转发到客户邮箱。
  T.37存储转发到方式具有以下几个方面的特点:
  • 支持存储转发传真文件,传真文件保存在邮件服务器。
  • 协议支持非常简单。
  • 需要传真机和邮件服务器支持,使用SMTP协议。
  • 传真之间不能互相协商。
  • 无接收方接收传真,这样的话,发送方可能不知道传真是否被成功接收接收或者是否成功发送。
  • 非实时传输方式,因为是通过邮件服务器来发送传真,传输速度可能取决于邮件服务器本身。
  • T.38 Relay方式通过T.38 发送传真,传真机则通过T.30来接收传真,终端传真机没有意识到是通过多次IP网络传输的传真数据。
  T.38 Relay具有以下几个方面的特点:
  • 支持标准的实时传输方式。
  • 避免了G.711 pass-through 的丢包带来的影响。
  • 可以确认接收方信息。
  • 可以支持终端逃生方式来支持传真接收。
  • 和G.711相比,需要相对比较低的带宽。
  • T.38使用UDPTL和RTP协议发送传真。以下是通过UDPTL和UDP发送传真的数据标识。
  T.38 通过RTP发送传真的方式虽然很多公司在尝试使用,允许对传真发送也是一个比较好的选择。这里假设我们有两个传真需要发送(IFP3和IFP2),用户可以通过RTP选择UDP或者TCP方式发送。
  通过RTP发送T.38 传真具有以下几个方面的特点,用户可以考虑:
  • 支持UDP传输可以更好兼容很多第三方设备,兼容性可能比UDPTL好。
  • 支持RTCP可以获得传真发送数据报告。
  • 支持SRTP可以对传真进行加密处理。
  • 支持cRTP可以支持对RTP头进行压缩,节省带宽。
  • 如果使用TCP传输的话,无需重发,支持更小的T.38 数据包。
  4、使用FoIP发送时,用户需要了解基本的传真发送流程。现在我们看看实际场景中SIP消息和SDP中的fax消息。在下面的图例中,通过SIP消息发起INVITE,然后建立RTP媒体通道,通道建立后,接收方检测到传真音信号,然后再发起一个T.38 INVITE, 经过双方协商后,开始传输传真数据,最后双方发送Bye消息。
  以下图例说明了SDP中的fax 支持能力描述。具体的传真SDP定义,建议用户参考RFC3407。这里的sqn必须以0开始,此值介于0-255之间递增。
  5、FoIP传真业务很大程度上有赖于企业网络带宽,这里的图例介绍了各种传输协议下单带宽占用情况,目前,T.38 仍然主宰着传真市场,对于比较大的文件很多客户仍然选择G.711传输。这里的R的值表示一个冗余,R3表示级别最高。主要的协议包括V.29/V.17。
  6、在传统的PSTN环境下,传真问题不是一个非常普遍的问题,但是基于IP的传真可能经常会遇到一些问题导致传真不能超过发送。通常情况下,这些问题包括:
  SIP响应慢导致的T.38 Re-INVITE失败。在前面的讨论中,我们已经介绍过,双方在收到200 OK之前,要启动一个T.38的请求消息,如果双方都没有收到T.38的请求,则传真就可能失败。导致这个问题发生的原因可能是网络带宽有问题,或者网络比较慢,可能有延时,抖动或者丢包现象出现。建议用户检查网络。
  T.38 V3版本的问题,因为运营商可能会根据管理策略对一些路径进行静音设置,这样可能导致无语音传输包括传真音的测试。需要运营商检查此参数。
  V.34支持问题,很多传真机可能不支持V34。如果对端传真机不支持V.34的话,需要重新协商通过V.17来重新发送。如果对端使用的是G.711方式发送到话,则可能传真失败。
  ECM是彩色传真,V.34 和MMP必须要求的参数,有一些运营商可能不支持ECM功能。所以,为了保证传真能够成功发送,可能需要关闭ECM,这样用户仅能收到黑白色的传真文件。
  编码问题可能导致传真发送失败。G.711语音编码完全可以在Pass-through 模式下工作,但是如果遇到G.729编码环境下的SIP trunk时,如果传真在V.21和其他版本切换时,例如切换到V.29环境下时,编码带宽则可能出现问题。因此,笔者建议用户如果用户经常通过SIP trunk发送传真的话,最好再创建一个G.711的pass-through 的中继线路,支持传真的收发。
  终端的回声抑制或者语音压缩功能可能导致传真失败。回声抑制和语音压缩时可能会消除传真音本身的数据,这样可能传真音不能被成功检测。同时,如果从普通语音切换到传真时,终端的回声抑制或语音压缩功能也可能出现错误的判断。如果传真发送失败的话,笔者也建议用户关闭回声抑制和压缩功能。
  在本章节的讨论中,我们首先讨论了企业用户对传真的需求,然后简单回顾了传统PSTN收发传真的基本知识背景和协议构成。另外,笔者也介绍了FoIP的三种方式和各自的特点,另外介绍了关于传真带宽占用的介绍,最后罗列了几个使用传真时遇到的问题。笔者希望通过几个方面的介绍,帮助用户能够快速掌握基本的FoIP知识,同时可以快速排查问题所在。
  参考资料:
  https://www.rfc-editor.org/info/rfc3206
  https://www.qualitylogic.com/2013/04/30/v-34-to-v-17-can-be-a-hard-fall/
  关注微信公众号:asterisk-cn,获得有价值的行业分享。访问开源IPPBX论坛获得技术帮助:www.issabel.cn/forum
【免责声明】本文仅代表作者本人观点,与CTI论坛无关。CTI论坛对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。请读者仅作参考,并请自行承担全部责任。

相关阅读:

专题