IP传真分析论文

时间:2022-10-11 10:58:00

IP传真分析论文

摘要随着世界范围内Internet网络基础设施的高速发展,基于IP技术的各种应用,比如IP传真技术,取得迅速的发展。本文针对目前存在的IP传真进行了研究与分析,并在此基础上提出了一种改进方法,能大大地提高IP传真的成功率和质量。

关键词软交换,媒体网关,IP传真

1背景技术

在IP网络中的传真按照采用的协议,可以分为两类:一类是透传,透传是把PSTN侧的G3传真机发送的PCM信号直接进行语音编码,比如采用G711A,G711U编码,所占用带宽为64K+IP报头约80K。另一类是T38[3]传真,T38传真会把PCM信号进行解调制,恢复为原来的V.21/V.27/V.17控制/数据流,然后再由主机按照T38协议对解调过的数据进行IP打包,处理后的数据带宽大约为20K。这两种传真方式各有利弊:透传方式对DSP能力要求不高,但是由于没有冗余机制,纠错机制,并且带宽需求大,对网络质量和带宽要求较高;T38传真对网络的丢包率具有很好的鲁棒性,并且对带宽要求只有透传的25%左右,只是对DSP能力需求较大,对TI芯片来说,一路T38编码所占用的资源,是G711编码的1.8倍。

2现有IP传真建立方法分析

2.1现有IP传真的组网结构

一个IP传真的组网[6]如图1所示,其中软交换和媒体网关是一个VoIP分组交换系统,软交换本身并没有通话资源,它是管理媒体网关的设备,通过H.248协议与媒体网关进行交互,它可以控制呼叫的建立与释放;媒体网关则负责PSTN侧的各种事件,比如摘机,挂机,排叉的检测与上报,通话所需各种资源,比如DSP通道,UDP端口号,用户侧时隙的分配和管理等。

不同于PSTN网络,IP网络是一个无连接的网

图1IP传真的组网图

络,存在着时延,抖动,丢包等较之PSTN网络恶劣的环境[5],这些不良因素,将对IP传真的质量和成功率产生较大影响,为了克服这些不利因素,在网关上采用了设置动态jitbuffer,纠错[7][8]等措施。

2.2现有IP传真的建立方法

2.2.1透传的建立方法

透传传真的流程[1]如图2所示,其中传真发送方在媒体网关MG1下,传真接受方在媒体网关MG2下,为了重点说明传真流程,传真建立前的通话建立过程加以省略。

图2透传传真的建立过程

(1)软交换下发命令,要求媒体网关检测传真开始事件

(2)媒体网关检测到传真接受方用户按下传真键,上报传真开始事件

(3)软交换接收到传真开始事件,给传真收发双方下发指示:切换到传真模式,并且把静音检测关闭掉,如果现在通话用的是G729,G721等压缩率较大的编码,那么就把编码切换到G711编码(RTP/AVP8);这几个步骤对传真成功起着关键作用,切换到传真模式,会把jitbuffer设置为动态值,能够根据网络时延抖动调节jitbuffer的大小,避免造成帧乱序,帧乱序,尤其是控制帧乱序产生的冲突,将会导致传真失败的后果。关闭静音检测,可以避免网关将一些传真信号当作噪声而过滤掉,设置编码模式为G711,是因为这种编码模式是一种无损编码,虽然占用了较大的带宽,却可以避免在编码时对信号造成损伤。

2.2.2T38传真的建立方法

T38传真[2]如图3所示:

图3T38传真的建立过程

(1)同透传传真

(2)同透传传真

(3)软交换要求传真双方切换到传真模式,设置UDP端口号为语音端口号加2,设置编解码方式为T38,检测传真结束事件

(4)传真发送方上报传真结束事件

(5)软交换要求传真双方把UDP端口号设置为语音端口号,恢复DSP的编解码方式为G711A

其中需要说明的是,设置传真端口号为语音端口号加2,是因为有的DSP芯片不能支持传真通道和语音通道共用相同的UDP端口号。

2.3现有IP传真的劣势

从图2和图3可以看到,对于现有编码方案来说,必须要软交换的支持才能把DSP的工作模式切换到传真模式,设置编码方式等,如果电信运营商使用的软交换因为产商或者采购时间较早的原因,只能支持通话的建立,而不能支持传真的建立,那么在透传模式下,如果一开始采用的编码为G729等压缩率较大,对信号有损伤的编码,网关不能切换到无损编码G711,也不会把静音抑制关闭,把DSP的工作模式设置为传真模式,这样由于信号损伤,网络时延等因素,传真成功率将会大大下降。采用GenoaTechnology公司的Faxlab,当传真模型选择为模拟CanonL777传真机,传真发送方Orig:TX3PgECMBestEncV.1714400BestRes,传真发接收方Ans:RX3PgBestECMBestEncV.3314400BestRes在丢包率为1%,通话语音编码为G729,并且设置软交换不检测传真信号音以模拟支持传真的软交换,这样模拟20次传真,其中只有11次成功;如果设置软交换检测传真信号音,那么20次完全可以成功。在T38编码时,如果设置软交换不检测传真信号音,那么传真根本就不会切换到T38的编码方式,还是以开始的语音编码方式进行传真,因此效果和透传是一样的。所以,很有必要采取一种改进手段,让媒体网关可以在没有软交换支持传真的情况下,自己把编码,静音检测等参数调整为最佳。

3改进方案的提出

3.1改进思路

媒体网关从功能上可以分为几大模块[9],跟传真相关的模块如图4所示,其中协议处理模块负责信令的编码解码,处理软交换下发的信令,创建给控制器的信令,并调用业务处理模块处理相应的业务;业务处理模块,主要负责呼叫的接续和业务的处理,资源管理模块主要是对网片资源和DSP资源进行有效的管理,支撑业务的运行;端控模块主要负责用户端口消息的处理,并完成协议的转换,以标准统一的内部原语与业务模块进行交互,从而屏蔽用户物理端口的信息;PM模块还负责用户物理端口状态的维护以及用户端口资源的申请和记录;驱动模块则负责对DSP进行操作;对传真的处理如图4所示:

图4媒体网关对传真的处理

对于T38传真,处理流程为:

(1)启动检测到传真接收方发送的传真开始信号,上报给业务模块

(2)业务通过协议模块上报传真开始事件给软交换

(3)媒体网关下发编码方式,端口号给业务

(4)业务通过资源管理模块分配T38所用的全速率资源,下发传真所用的UDP端口号给驱动,要求驱动打开DSP通道

从处理流程可以看到,媒体网关需要从软交换获取编码方式,传真端口号,静音检测等的设置,控制器发出的信令中的这些设置都是网关上报了传真开始或者传真结束事件才下发的,所以,如果传真发送接收方都能够监测到传真开始,结束。我们就可以把这一部分“智能”下移到网关中来。通过这样的改进,就产生了两种新的传真方式,一种是不需要软交换参与的透传,叫做自交换透传,一种是不需要软交换参与的T38传真,称之为自切换T38。

3.2具体方法

3.2.1透传自切换

如图1所示,尽管在网关之间的信号是G711编码信号或者是T38编码信号,但是在网关之下,IP传真中传真发送出去,接收到的信号还是和PSTN网络中一样的PCM信号,传真机信号所遵循的协议也是在PSTN网络上的传真协议T.30,根据协议,传真接收方在发送完被叫用户标识CED之后,会发送能力标识信号DIS,向发送端标识自己是第三类传真终端,同时DIS中携带了传真接收终端性能的字段,告知发送终端自己所具有的全部能力,在DIS信号前会有一个长达1秒的前导信号(Preamble)[4],传真发送方接受到DIS信号后,会发送DCS信号,根据本终端设置的能力并考虑接收终端所具有的能力,给出本次通信所采用的性能,在DCS前也会有前导信号。在原来的传真流程里是把DIS前的前导信号作为传真开始事件的,因此,可以做一个改进,把DIS前和DCS前的前导信号都作为传真开始信号。驱动上报这个信号后,由业务自己来设置编码和静音检测等,业务模块的伪码如下:

if(驱动上报的消息)

{

If(传真开始消息)

{

设置DSP工作模式为FAX;

设置DSP工作模式为G711;

关闭静音检测;

/*透传模式下传真端口就是语音端口*/

设置传真端口号为语音端口号;

调用驱动函数,以设置的参数打开DSP;

}

else

{

……

}

}

else

{

……

}

驱动模块的伪码如下:

if(前导信号)

{

if(DIS的前导信号)

{

上报传真开始信号;

}

elseif(DCS的前导信号)

{

上报传真开始信号;

}

}

else

{

……

}

3.2.2T38自切换

和透传自切换相比,T38自切换要复杂,这主要是因为以下三点原因:

(1)传真接收方上报前导信号后,把自己的编解码方式切换到T38,而传真发送方的DSP这是还是普通的语音编解码方式,如G711,所以无法解码出T38格式的DIS,因此不会回应DCS,这样也就没有DCS的前导信号,传真发送方就无法上报传真事件;

(2)T38是专为传真而设置的一种编码方式,传真结束后,一定要切换到语音编码,否则用户无法通话。

(3)T38传真时,端口号可能和语音端口号不同(可能加2),没有软交换的支持,无法告知对方网关自己采用的端口号;

现在Minspeed公司提供的Miro芯片可以检测到T38报文,因此,传真发送方可以通过检测对方发送的DIS的报文为T38格式,来上报传真开始事件。而对于第三点,我们只能要求两个网关设置的传真端口号一致,要么全是语音通道,要么全是语音端口号加2;自切换T38的业务模块伪码如下:

if(是驱动上报的传真开始信号)

{

设置DSP工作模式为FAX;

设置编码方式为T38;

/*是语音端口加2,还是语音端口*/

根据系统参数设置传真端口号;

以设置的新参数打开DSP;

}

elseif(是驱动上报的传真结束信号)

{

恢复传真前的工作模式,编码,端口;

}

else

{

……

}

驱动模块伪码如下:

if(前导信号)

{

if(DIS的前导信号)

{

上报传真开始消息;

}

else

{

……

}

}

elseif(T38报文信号)

{

上报传真开始消息;

}

else

{

……

}

3.3效果验证

在没有软交换支持传真的情况下,采用GenoaTechnology公司的Faxlab,当传真模型选择位模拟CanonL777传真机,传真发送方Orig:TX3PgECMBestEncV.1714400BestRes,Ans:RX3PgBestECMBestEncV.3314400BestRes,自切换透传在丢包率为1%的情况下全部成功;自切换T38在丢包率为10%的情况下可以成功,并且传真结束后能够切换到语音通话态。

参考文献:

ITU-TRFC3015MegacoProtocolVersion1.0.[S]2000.11

ITU-TRFC3525GatewayControlProtocolVersion1.[S]2003.06

TU-TRec.T.38(04/2002)-Prpublishedversion[S]

ITU-TRecommendationT.30:Proceduresfordocumentfacsimiletransmissioninthegeneralswitchedtelephonenetwork[S].1999.04

舒华英,赖平章等.IP电话技术及其应用[M].人民邮电出版社,1999.11

桂海源.IP电话技术与软交换[M].北京:北京邮电大学出版社,2004.6

中国VOIP论坛相关资料[Z]

黄永峰.因特网语音通信技术及其应用[M].北京:人民邮电出版社.2003.5

张登银,孙精科.Voip技术分析与系统设计.人民邮电出版社[M].2003.6