最新NMS板卡安装与配置手册---副本.doc
Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-dateNMS板卡安装与配置手册-副本NMS板卡安装与配置手册-副本文档编号:NMS板卡安装与配置手册 日期:2007-11-29文档修改记录版本日期修改页作者批准人备注2007-11-20发布目录索引1介绍52软件安装53板卡基本配置53.1板卡配置ISDN环境:63.1.1板卡配置第一步63.1.2配置板卡的第二步63.1.3板卡配置第三步83.2板卡配置SIP环境143.2.1安装SIP驱动程序143.2.2申请SIP sip demo license143.2.3启动SIP Server143.2.4板卡中SIP配置153.2.5压力测试中配置SIP需注意的问题184会议配置184.1.1配置会议第一步184.1.2配置会议第二步214.1.3测试会议是否配置成功225传真配置236启动板卡247板卡启不来的解决方法258测试板卡279跟踪板卡信息281 介绍NMS通信公司是美国的一家从事语音通信领域研究的上市公司。NMS通信公司有各种语音板卡,其中AG系列和CG系列板卡是我们最常用的。AG4000C已经停产,它的升级产品是AG4040C,停产的原因是给NMS公司生产某些芯片的公司部再生产那些芯片了,推出了新的芯片升级产品,所以以后要想用AG卡,一般就只能找到AG4040C了。我们最常用的CG卡有CG6500C和CG6000。CG6500C最后的C代表是CPCI插槽,没有C的CG6000指的是PCI插槽,此规律对AG卡同样生效,AG4000C是CPCI插槽的板卡,AG4000是PCI插槽的板卡。AG系列的板卡的密度低,AG4000最多支持 四个E1,AG卡的DSP的资源少,最多不超过40个(我们常用的是8个或16个DSP)。CG系列的板卡密度高,CG6500最多支持32个E1,最多有96个DSP资源(我们常用的是64个DSP和96个DSP)。CG6000的密度低,最多有四个E1,我们常用的是16个DSP。本文主要讲述CG系列板卡,并以CG6500为主来介绍其安装与配置,同时把CG6565配置中与6500的不同之处,都加以介绍,因此此文档同时适合CG6565卡的配置。 2 软件安装2.1 安装NMS板卡驱动VoiceCenter 1.0的安装包中包含了板卡驱动的安装。在装语音网关时,会出现如下界面:选择“是”,出现 点击执行下一步,出现:点击下一步,出现如下界面,点击“Select All”:点击下一步,出现如下,并选择China.点击“NEXT”,出现:在这儿可以选择安装路径,不过,一般最好按默认路径装。一直点击下一步,出现:选择第一个,即让系统检查环境。点击下一步,下面会进行文件拷贝等安装过程。在遇到下面提示时,即提示你是否安装Hot Swap 热插拔,一定要选择“否”。目前NMS卡对我们项目选用的工控机的热插拔支持的不是很好。出现是否安装CoolEdit的提示,选择否。安装完毕后,选择重新启动计算机。如果有补丁包,当然也可以不用重启,把补丁包打完重启也可以。如有Patch包的补丁只需要解压后放到NMSbin下即可。安装完毕后,选择重新启动计算机。如果有补丁包,当然也可以不用重启,把补丁包打完重启也可以。如有Patch包的补丁只需要解压后放到NMSbin下即可。2.2 安装SIP驱动(1)SIP驱动程序选择1.1版本,双击该安装程序。选择下一步,选择接受协议,出现:在这儿可以选择安装路径,不过,建议按默认路径来装。选择曲型安装,下一步。开始复制文件,安装成功。如下。至此,SIP的驱动程序安装完毕,接下来的工作是加载SIP的license,启动SIP服务等,具体见下面的板置配置中SIP环境部分。3 板卡基本配置 板卡的配置需要配置以下几个文件:Ø NMSCTAccesscfgcta.cfg该文件可以修改NMS卡的运行参数,例如应答时间,信令差异等等。一般不会变动,除非项目的上端局和项目本身有特殊的要求。Ø NMSOAMcfgoamsys.cfg 该文件用来定位板卡,一般也是第一步需要需要配置的文件。Ø NMS板卡的key文件,即在oamsys.cfg中指定的板卡加载的资源文件,CG的key文件在NMScgcfg目录中。Ø NMSCTAccessCFGcnf.cfg 板卡使用会议资源的时候指定dsp会议资源。Ø 另外,若加ASR功能,则需要在资源池中加入回声消除,即加入echo_v3.ln20_apt100。另外注意:echo.ln20_apt25在CG6565的板卡中不再支持,它只在CG6500的板卡中支持,而echo_v3.ln20_apt100在CG6565中是支持的。Ø 如果接7号信令,则只需将资源池中的TCPs设置为nocc即可。3.1 板卡配置ISDN环境:3.1.1 板卡配置第一步板卡的驱动安装完毕,板卡正确插上(注意前后板都要插,且要对应)以后,先打开DOS窗口,执行pciscan,查找板卡,一般而言,该命令都可以正确执行。会看到如下信息:C:Documents and SettingsAdministrator>pciscanNMS PCI Boards ScannerBus Slot NMS ID- - - 2 13 0x6500 CG_6500C_16- - -There were 1 NMS PCI board(s) detected注意:当看到 2 13 0x6500 CG_6500C_16,说明找到板卡了,如果不是CG_6500C_16而是CG_6500C是不正确的,说明没有正确识别板卡,你可以把前后板都换个插槽试试,一般换几次插槽基本都能正确识别到板卡,如果换插槽还是不管用就重装板卡驱动。从以上的命令执行结果可看到一些板卡的信息:Bus板卡所在的bus(总线)号Slot 检测到的板卡插槽的位置ID 板卡型号这些信息在接下来的第二步中将要用来配置oamsys.cfg文件。3.1.2 配置板卡的第二步根据第一步执行的命令pciscan显示出的板卡信息,修改配置文件:oamsys.cfg,存放于NMSoamcfg目录中。打开oamsys.cfg文件,看到有用的(没有被注释掉的)很少,从第一步显示板卡信息的命令中,可以获得Bus,Slot及ID,ID对应oamsys.cfg文件中的Product配置项。于是可以这样来配置:Name0Product = CG_6500C_16Number = 0Bus = 2Slot = 13File = cg6500.cfgName0 标识一个配置块的名字,一般一块板卡有一个配置块Product = CG_6500C_16 填上板卡的型号,在pciscan里可以看到Number = 0 指第一块板卡Bus = 2 板卡所在的bus(总线)号Slot = 13检测到的板卡插槽的位置File = cg6500.cfg 指定一个配置文件,在这个配置文件中详细的规定了板卡配成什么协议,DSP资源怎么分等事项。这个名字可以随意定义,只要在NMSCGCFG下有这个配好的文件就行,具体内容需要根据项目的平台需求来配置。在nms的环境中,这个配置文件是对板卡硬件进行配置内容进行加载的key文件。如果有两块卡,在oamsys.cfg中,第二块板卡可以这样配置Name1Product = CG_6500C_16Number = 1Bus = 2Slot = 14File = cg6500_2.cfg当然Bus和Slot以及Product要和pciscan得到的信息一致。相当于每块板卡有一个自己的配置文件。那么一块是主板卡,另一块是从板卡。这样oamsys.cfg就配完了。下面就可以配置在oamsys.cfg 中指定的配置文件了。3.1.3 板卡配置第三步配置在oamsys.cfg 中指定的配置文件。这个配置文件对初学者稍微有点麻烦,建议没有经验的同事可以找配置好的模板来做稍微的改动就能用。下面是一个ISDN环境下配置好的CG6500C板卡文件,通过它来分别讲述每个参数的意思。蓝色字体表示要经常改动的。另外,#号后面表示是注释掉的,不需要去配置,下面这个配置文件已经包含了经常需要用到的功能。后面会有详细的注释说明。# c65isdn.cfg# CG 6500C configuration file# This file configures the board to run ISDN on T1 (8 trunks - 120 ports). # E1 configuration is commented out by default#Clocking.HBus.ClockMode = MASTER_AClocking.HBus.ClockSource = NETWORKClocking.HBus.ClockSourceNetwork = 1#*# NOTE: E1 configuration is commented out. If you want E configuration, uncomment below, # and comment out OR remove T1 configuration# NOTE: Adjust idle code and TCP Files for the country you are using accordingly#*#*# E1 configuration (! commented out by default)#*DSPStream.VoiceIdleCode0.15 = 0xD5 DSPStream.SignalIdleCode0.15 = 0x0D Hdlc0.15.Boot = YESHdlc0.15.Hardware.TxTimeSlot = 16Hdlc0.15.Hardware.RxTimeSlot = 16NetworkInterface.T1E10.15.Type = E1NetworkInterface.T1E10.15.Impedance = G703_120_OHMNetworkInterface.T1E10.15.LineCode = HDB3NetworkInterface.T1E10.15.FrameType = CEPTNetworkInterface.T1E10.15.SignalingType = PRINetworkInterface.T1E10.15.D_Channel = ISDNNetworkInterface.T1E10.15.CRCMFMode = C44OFFDSP.C5x0.63.Libs0 = cg6kliba DSP.C5x0.63.XLaw = A_LAW DSP.C5x0.1.Files = 8tsignal#*# Resource management#*Resource0.Name = RSC1Resource0.Size = 240Resource0.TCPs = isd0 Resource0.StartTimeslot = 0#*# Before modifying this resource definition string refer to the CG6500C# Installation and Developers Manual.#*Resource0.Definitions = ( dtmf.det_all & echo_v3.ln20_apt100 & tone.gen & ( (rvoice.rec_mulaw & rvoice.play_mulaw) | (rvoice.rec_alaw & rvoice.play_alaw) | (oki.rec_24 & oki.play_24_100 ) | (oki.rec_32 & oki.play_32_100 ) ) )Resource0.DSPs = 2 3 8 9 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63#*# NOTE: DLMs to download#*DLMFiles0 = cg6500runDLMFiles1 = c65igen# DLMFiles1 = c65dpnss #*# NOTE: Uncomment below if using IMGT service#*# DLMFiles2 = c65imgtDebugMask = 0x0Clocking.HBus.ClockMode = MASTER_A:常用的ClockMode有 STANDALONE 和 MASTER_A ,如果只有一块板卡,此处配成 STANDALONE ;如果有两块板卡,那么一块是主板卡,另一块是从板卡,如果是主板卡的配置文件配成:MASTER_A,如果是从板卡的配置文件配成:SLAVE,很显然这个配置文件是两块板卡的主卡配置文件。Clocking.HBus.ClockSource = NETWORK:此处建议使用:NETWORK,表示从网络上取时钟(上端交换机),如果是一块卡或两块卡的主卡可以使用NETWORK,从卡使用:A_CLOCK(指定使用CT_C8_A和CT_Frame_A时钟信号作为板卡的首要时钟参考),如果是一块卡此处也可以设成:OSC,使用板上的振荡器来驱动E1线传输时钟Clocking.HBus.ClockSourceNetwork = 1:在指定Clocking.HBus.ClockSource的值为NETWORK的时候该值有效。可选的值为1、2、3、4,一般配置为1。DSPStream.VoiceIdleCode0.15 = 0xD5:在指定的DSP语音流上给时间片设置语音空闲代码 ,所有的中继必须配置成一样的DSPStream.VoiceIdleCode,可以看到,0.15表示所有的16个E1 ,值0xD5不用变。 DSPStream.SignalIdleCode0.15= 0x0D: 在DSP信令流上给时间片设置空闲码 ,所有的中继必须配置成一样的DSPStream.SignalIdleCode,把所有中继都配上, 值0x0D不用改变。Hdlc0.15.Boot = YES:允许或者不允许高级数据链路控制(HDLC)通道和特定中继关联,此处值为yes,不用变Hdlc0.15.Hardware.TxTimeSlot = 16:指定特定中继(E1)HDLC通道TDM时间片,值16不用改变。Hdlc0.15.Hardware.RxTimeSlot = 16:指定接收特定中继(E1)HDLC通道TDM时间片,值16不用改变。NetworkInterface.T1E10.15.Type = E1:指定板卡上每个中继的类型,需要说明一点,一般用到的都是E1,所以只关注E1这组配置,至于下面的T1那组不用去关注。NetworkInterface.T1E10.15.Impedance = G703_120_OHM:指定连接CG6500和电话网的线缆类型,值G703_120_OHM不用改变,即使你连接的是75殴的E1,不平衡变压器会把75欧姆转成120欧姆。NetworkInterface.T1E10.15.LineCode = HDB3:是基带电信设备之间进行基带传输的编码,码(三阶高密度双极性码),值HDB3不用改变。NetworkInterface.T1E10.15.FrameType = CEPT:定义当前板卡的E1中继结构形式,值CEPT不用改变。NetworkInterface.T1E10.15.SignalingType = PRI:定义语音和信令信息从E1和DSP资源怎样被发送出去。值PRI不用改变。NetworkInterface.T1E10.15.D_Channel = ISDN:指定中继是有D通道以便ISDN跑在上面,值ISDN不用改变。NetworkInterface.T1E10.15.CRCMFMode = C44OFF:指定板卡是否需要执行CRC信号校验,值C44OFF不用改变。DSP.C5x0.63.Libs0 = cg6kliba:指定DSP的库文件名字,这些库文件定义了A律或u律转换。值cg6kliba不用改变。其中0.63表示总共有64个DSP资源。若有sip,则需要加 f_shared。并且必须将Libs后面的中括号去掉,即改为:DSP.C5x0.63.Libs= cg6kliba f_sharedDSP.C5x0.63.XLaw = A_LAW:定义DSP硬件压缩模式,我们都用A_LAW,值A_LAW不用改变。DSP.C5x0.1.Fi les = 8tsignal:指定被装载到CG卡上的DSP用来满足应用的数字信号 处理功能模式,0.1表示拿出两个DSP实现这个功能,在CG6500上用8tsignal,在CG6000上用qtsignal,且只用一个DSP即可,象这样:DSP.C5x0.Files = qtsignal下面使用一个资源池,目的是定义多少个DSP资源用来做什么:Resource0中的0表示第一个资源池;Resource0.Name = RSC1:是资源池的名字,可以随便定义,只要不重复;Resource0.Size =240: 指定在此DSP资源池中支持多少个通道或端口。具体能配成多少个通道和几方面有关:1、 你给这个资源池分配了多少个DSP资源2、 在这个资源池中你要支持的媒体功能,放什么格式的语音文件,是否支持录音,收键、Tone音等,每个媒体功有特定的mips,每个dsp能支持多少媒体功能与dsp能支持的mips总数和媒体功能的mips总和有关。你只需要配置你需要的媒体功能,以便节省DSP资源。Resource0.TCPs= isd0 :指定使用的协议类型,如果是接7号信令网关此处要写成nocc,如果是用ISDN信令,此处要写成isd0,注意是0不是o。本场景是ISDN环境。Resource0.StartTimeslot = 0:指定资源池的开始时隙,可以根据实际情况配置,一般都是0。Resource0.Definitions = ( dtmf.det_all & echo_v3.ln20_apt100 & tone.gen & callp.gnc& ( (rvoice.rec_mulaw & rvoice.play_mulaw) | (rvoice.rec_alaw & rvoice.play_alaw) | (wave.rec_11_8b & wave.play_11_8b) | (oki.rec_24 & oki.play_24_100 ) | (oki.rec_32 & oki.play_32_100 ) ) )下面说明资源池中配置支持的媒体功能的方法:dtmf.det_all: 这一项一般都要加上,支持DTMF功能tone.gen: Tone音检测,这项没有什么用,可以不加echo_v3.ln20_apt100::回音消除,如果语音网关需要ASR功能,需要加echo_v3.ln20_apt100.在6500的板卡中回音消除还支持另外一种格式即:echo.ln20_apt25,但是要注意在6565的板卡中并不支持此种格式。只支持echo_v3.ln20_apt100。callp.gnc; 呼叫控制的选项,没什么用,可以不加(rvoice.rec_alaw & rvoice.play_alaw ): 如果要想支持ALAW的WAV音,这项需要配上。(rvoice.rec_mulaw & rvoice.play_mulaw): 如果要想支持MULAW的WAV音,这项需要配上。(wave.rec_11_8b & wave.play_11_8b): 支持11k 8bit的语音文件,实际上是8k 8bit,(因为对于一个两兆的中继来说,一条线路最大是64k),如果需要16bit的可以配成(wave.rec_11_16b & wave.play_11_16b)(oki.rec_24 & oki.play_24_100):支持6k 8bit的VOX语音,这一项比较全的配置是(oki.rec_24 & (oki.play_24_100 | oki.play_24_150 | oki.play_24_200),后面的100、150、200是放音速率,我们一般只要配一个100就行了:(oki.rec_32 & oki.play_32_100) :说明支持8k 8bit的VOX语音文件,这一项比较全的配置是(oki.rec_32 & (oki.play_32_100 | oki.play_32_150 | oki.play_32_200),后面的100、150、200是放音速率,我们一般只要配一个100就行了。Resource0.DSPs = 2 3 8 9 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63:定义在这个资源池中都有哪些个DSP,总共有64个DSP,从0到63,第0个和第1个DSP用来处理信令 ,DSP.C5x0.1.Files = 8tsignal ,其余的DSP除了可以划分为普通媒体功能外,还可以配成给会议使用的DSP,给传真使用的DSP。读者发现这里面少了一些DSP,就是用来配置会议了,关于会议将在接下来的场景中描述。下面是通过配置文件指定传送给板卡的可选的执行时组件,DLM类型文件是运行模块的一种类型,对于CG卡来说,运行在板卡处理器上的软件有核心文件和一些运行模块组成:DLMFiles0= cg6500run:如果是CG6500的卡,DLMFiles0配成cg6500run;如果是CG6000的卡,此处配成cg6krun。DLMFiles1= c65igen:如果是CG6500的卡,DLMFiles1的配置有两种情况:1、 NMS板卡驱动是2003的,此处配成c65ietsi;2、 NMS板卡驱动是2005的,此处配成c65igen; 如果是CG6000的卡,DLMFiles1 的配置有两种情况:1、 NMS板卡驱动是2003的,此处配成isdnetsi;2、 NMS板卡驱动是2005的,此处配成isdngen;DebugMask= 0x0:指定跟踪板卡执行的标准,相当于一些Trace信息的等级,要想看Trace结果得用OAMMON命令。值DebugMask 一般都设为0x0,不用改变。注意:对于CG6565c的板卡来说,KEY文件板卡的主配置文件,在CGCFG目录下。的配置基本上与6500c差不多,只是会出现以下几项,与6500c的异同之处:DSP.C5x0.95.Os = dspos6u:指定当前板卡dsp内核所使用的数字信号处理模块DLMFiles0 = c6565igen:含义与前面6500板卡的类似,只是指定的文件不一样。DSPStream.SignalIdleCode0.15 = 0x09:含义与前面6500板卡的类似,只是指定的值不一样。Hdlc0.15.RxTimeSlot = 16:含义与前面6500板卡的类似,只是表达的格式有所不同。Hdlc0.15.TxTimeSlot = 16: 同上3.2 板卡配置SIP环境3.2.1 安装SIP驱动程序在安装之前,有几点需要确认,第一就是板卡驱动要装2005,其次就是板卡上的ip接口要插上网线,并且先装板卡驱动,再装SIP驱动。3.2.2 申请SIP sip demo license在安装好板卡驱动后,如果license(nccsip-eval.lic)文件在目录nmsoamcfg下,在目录C:nmsnmslm下执行如下命令:nmslm_tool -c nmsoamcfgnccsip-eval.lic注意:这个license可能会过期。3.2.3 启动SIP Server其配置文件nccsip.cfg(文件名必须是nccsip.cfg)放置于NMSOAMcfg目录下。启动命令:nmssip register nmssip startnccsip.cfg举例如下,具体的配置项请参考SIP_for_NCC 文档NMS SIP for Natural Call Control Developer's Reference Manual。general.sendProtocolEvents = falsegeneral.manualACK = falsegeneral.manualPRACK = falsegeneral.numPorts = 1200附带有模版。3.2.4 板卡中SIP配置板卡配置要改动或是添加几处:Ø 网络接口配置IPC.AddRoute0.DestinationAddress:该键值后面配板卡的IP地址,该IP地址为没有被占用的IP地址。IPC.AddRoute0.Mask :网络掩码,一般可以设为255.255.255.0IPC.AddRoute0.Interface : 一般设为1即可 IPC.AddRoute1.DestinationAddress:IPC.AddRoute1.Mask:网络掩码IPC.AddRoute1.GatewayAddress:网关地址例如:假如选择了板卡的IP地址为10.130.130.130,可以做如下配置:IPC.AddRoute0.DestinationAddress = 10.130.130.130IPC.AddRoute0.Mask = 255.255.255.0IPC.AddRoute0.Interface = 1IPC.AddRoute1.DestinationAddress = 0.0.0.0IPC.AddRoute1.Mask = 0.0.0.0IPC.AddRoute1.GatewayAddress = 10.130.1.5Ø DSP配置这个需要在资源池中加入配置项f_g711.cod & f_g711.dec,用于G.711编解码,但是加载f_g711.cod & f_g711.dec后会使Resource0.Size 变小,在项目应用中需要注意。