《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫

本节书摘来异步社区《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一书中的第1章,第1.2节,作者: 【美】Kevin Wallace 译者: 刘丹宁, 田果, 责编: 傅道坤,更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.2 语音网关如何路由呼叫

实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)
Cisco UC网关的首要功能就是路由呼叫。呼叫路由选择的过程包括对入站呼叫线路和出站呼叫线路进行处理。本节将描述网关是如何创建呼叫线路的,并描述网关是如何匹配入向和出向Dial Peer的。本节提供了Dial Peer匹配的详细过程,并阐述了DID(直接向内拨号)特性。除此之外,本节还解决了POTS Dial Peer的配置问题,VoIP Dial Peer的配置将在第2章中进行介绍。

1.2.1 网关呼叫路由选择组成部分

Dial Peer(拨号对等体)对于实施拨号计划以及在IP包交换网络中提供语音服务是至关重要的。Dial Peer用于识别呼叫的源端和目的端,也用于定义呼叫连接中,每条呼叫线路的特点。

PSTN网络中的传统语音呼叫使用专用的64 kbit/s端到端线路。而在包交换网络中,语音呼叫是由许多分离的部分或许多呼叫线路构成的。前文已经提到,一条呼叫线路就是两台路由器之间的逻辑连接,或者是路由器与电话通讯设备之间的逻辑连接。每个语音网关需要至少建立两条呼叫线路,其中入站呼叫线路与入向(源)Dial Peer相关联,而出站呼叫线路与出向(目的)Dial Peer相关联,详见图1-28。由管理员定义在Dial Peer中的属性会被应用到相应的呼叫线路上。


《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫

呼叫线路的定义是以路由器为中心的。当一个入向呼叫到达网关时,网关首先要查找入向Dial Peer并执行其中的设置。若设置是可行的,网关就会查找出向Dial Peer并建立出站呼叫线路,由此呼叫就从入站呼叫线路被交换到了出站呼叫线路。管理员需要在网关上配置Dial Peer,以便在网关上启用呼叫路由选择。

1.拨号对等体
Dial Peer(拨号对等体)通常分为POTS Dial Peer和网络Dial Peer,详见表1-2。


《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫

如图1-29所示,一台模拟电话连接在Cisco UC网关上。这台网关上需要配置两个Dial Peer,其中POTS Dial Peer的配置中至少需要包含模拟电话的电话号码及其连接的语音接口。这样一来,网关就能够根据上述信息,通过指定接口,将呼叫转发给相应的电话。


《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫

VoIP Dial Peer连接着IP网络。VoIP Dial Peer的配置中至少需要包含目的地电话号码(或号码范围)和下一跳(用于进一步处理呼叫)IP地址或名称。为了能够在双方向上成功转发呼叫,就需要在每个语音处理系统上配置如下的呼叫路由选择参数。

配置正确的POTS Dial Peer,指明电话所连的语音接口。这个配置只应用于边界语音处理系统。
配置正确的VoIP Dial Peer,指明接收者目的地址,或者至少指明下一跳地址。
根据Dial Peer类型的不同,dial-peer参数也有所不同。在VoIP Dial Peer中,管理员可以将这个Dial Peer指向H.323设备或SIP设备,但MGCP设备并不在可选项中,因为MGCP设备依靠呼叫代理执行呼叫路由选择。当CUCM使用MGCP协议来控制语音网关时,拨号计划由CUCM维护,呼叫路由决策也由CUCM作出。MGCP网关只需要知道如何处理语音线路。

VoIP Dial Peer中的参数包括编码/解码(编解码)、QoS(服务质量)、VAD(语音活动检测)、DTMF(双音多频)中继和传真速率。

如图1-30所示,VoIP Dial Peer将一个号码串映射到了一台远端网络设备。这台远端网络设备可以是如下设备。

CUCM集群。
另一台语音网关。
SIP代理。

《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫

语音邮件服务器。
H.323网守。
2.呼叫线路
表1-3将IP数据包路由选择和呼叫路由选择的原则进行了对比,有助于读者理解呼叫路由的选择过程。


《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫

由于多条Dial Peer共同定义了如何转发呼叫,且所有Dial Peer共同构成了拨号计划(Dial Plan),因此Dial Peer等同于IP路由表。Dial Peer具有静态属性。

逐跳路由选择是建立在呼叫线路的理论上的。在做出呼叫路由决策前,网关必须确认入向Dial Peer并处理其中设置的参数。这个过程中可能会涉及VoIP参数协商。

网关做出呼叫路由的决策就是选择出向Dial Peer的过程。当使用了destination-pattern命令时,这一选择过程是基于被叫号码进行的。但选择过程也可以基于其他信息进行,并且其他选择标准可能比被叫号码拥有更高的优先级。当管理员使用被叫号码来查找出向Dial Peer时,网关会应用最长匹配原则。

若多个Dial Peer都等价地匹配了一个号码串,那么路由器就会用这些匹配上的Dial Peer组成一个轮询组。路由器会尝试使用这个轮询组中的所有Dial Peer来建立出向呼叫线路,直到出向呼叫线路建立成功为止。轮询组中的选择顺序可以由管理员配置的优先级来决定。

在进行号码匹配时,管理员可以使用特殊字符来配置缺省呼叫路由。

VoIP网关经常要为指定目的号码选出最佳路径。通常优选路径是IP WAN链路,但当IP WAN链路不可用或链路上带宽资源不足时,网关需要选择备份PSTN路径来路由呼叫。

图1-31所示场景中的两个站点分别连接了IP WAN和PSTN。当呼叫通过PSTN进行路由时,网关需要对其号码(主叫号码和被叫号码)进行修改,使它们成为在PSTN网络中可路由的号码。否则,PSTN交换机将无法识别被叫号码,从而导致呼叫失败。


《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫


图1-32描述了网关对于呼叫线路的处理,即网关从本地连接的一台电话收到呼叫请求后,初始化一个VoIP会话。

当网关R1连接的电话(1001)所拨打的电话号码位于另一个位置(2001)时,网关R1会建立这些呼叫线路。当网关R1接收到一个呼叫时,它会首先根据入向(Inbound)Dial Peer,建立一条入向(Inbound)呼叫线路,同时查找出向(Outbound)Dial Peer,作出路由决策后,建立一条出向(Outbound)呼叫线路,将呼叫转发到目的地。若路由决策最终选择使用IP WAN链路来路由呼叫,则出向呼叫线路就是VoIP;若最终选择使用PSTN链路来路由呼叫,则出向呼叫线路就是POTS。

图1-33描述了目的地网关对于呼叫线路的处理过程,该网关终结了VoIP会话,并把呼叫转发到本地连接的电话(2001)。

目的地网关接收到呼叫后(无论它是通过IP WAN还是通过PSTN网络接收到该呼叫),就会建立入向呼叫线路。目的地网关通过选择适当的出向Dial Peer,来作出呼叫路由决策。本例中,与POTS Dial Peer相对应的出向呼叫线路指向了语音接口1/0/0,目的电话正连接在这个接口上。这时网关以信令的方式告知该接口有来电,之后电话振铃。


《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫

1.2.2 配置POTS Dial Peer

图1-34展示了使用POTS Dial Peer的案例。

本节介绍了如何有效配置POTS Dial Peer,使呼叫得以通过PSTN链路进行转发。稍后将介绍主用VoIP路径的配置方法。本例中并不包含号码处理的配置需求。

根据图1-35所示案例,例1-1和例1-2所示配置允许分机1001拨打分机2001。


例1-1 路由器R1的配置
《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫


《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫


例1-2 路由器R1的配置
《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫


网关R1上的出向Dial Peer类型是POTS,这是因为目的地号码2001是通过网关R1上的POTS语音接口1/1/0连接的。在这个Dial Peer中需要指定两个基本参数—电话号码和语音接口。

命令destination-pattern用于对被叫号码进行匹配。网关R1使用了destination pattern“2001”。

命令port指明了对应的语音接口。在本例中,接口1/1/0表明了这个接口的位置—模块1、语音卡(VIC)槽位1和语音接口0。

命令forward-digits all让网关把呼叫信令中的被叫号码,完整地发送到下一跳网关。默认情况下,网关在通过出向POTS呼叫线路转发呼叫时,会丢弃所有精确匹配的号码。在本例中,目的地模式“2001”精确匹配了4位被叫号码,因此在默认情况下,网关在将该呼叫发送到PSTN时,并不会发送任何号码。这种号码处理规则仅应用于出向POTS呼叫线路。当通过出向VoIP呼叫线路转发呼叫时,网关在默认情况下并不进行任何号码丢弃的操作,也就是说它会把完整的号码串发送给下一跳VoIP设备。

例1-3和例1-4给出的配置使两个分机号码能够互拨。网关R1上配置的POTS Dial Peer 2与分机号码1001相匹配并指向语音接口1/0/0,这个语音接口连接了一台电话。网关R2上除了指向直连电话的POTS Dial Peer之外,还添加了POTS Dial Peer 2,它与分机号码1001相匹配并指向了PSTN。


例1-3 路由器R1的配置(续)
《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫


例1-4 路由器R2的配置(续)
《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫

在两个网关上,指向PSTN的Dial Peer中都使用了命令forward-digits all。若不使用这条命令,网关就会在将呼叫发送到PSTN之前,丢弃精确匹配的号码,在本例中就是不转发任何号码。

1.2.3 Dial Peer匹配原则

除了使用呼叫的入站语音接口(也就是用port命令配置的接口)来进行Dial Peer匹配外,管理员还可以使用下面三条命令来对电话号码进行匹配。

《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫

一个呼叫中通常携带两个电话号码—主叫号码(在ISDN中称为ANI[自动号码识别])和被叫号码(也称为DNIS[被叫号码识别服务])。网关可以使用这两个号码来查找入向和出向Dial Peer。

命令destination-pattern最明显的用途是基于被叫号码,来匹配出向Dial Peer。但网关在进行入向Dial Peer匹配时,也会将这条命令考虑进去,只是此时需要将主叫号码与destination pattern中的号码串进行匹配。

网关只有在选择入向Dial Peer时,才会考虑命令incoming called-number中的号码串。需要与这个号码串相匹配的是原始的被叫号码。

网关只有在选择入向Dial Peer时,才会考虑命令answer-address中的号码串。需要与这个号码串相匹配的是原始的主叫号码。

destination-pattern、incoming called-number和answer-address这三条命令后面都跟着字符串参数,网关使用这些参数进行号码匹配,即网关把接收到的号码与定义在相应命令中的字符串进行匹配。这个字符串可能与电话号码(0-9、A-D、*、#)精确匹配,还可能包含特殊表达式,详见表1-4。


《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫

注释:在这里并不把星号(*)和井号(#)当作特殊字符。在标准的按键式电话键盘上有这两个字符,用户可能会在呼叫自动应答应用的时候使用这两个字符,以便实现某些特殊特性。举例来说,当用户呼叫IVR(交互式语音应答)系统时,该系统可能会要求用户在进入系统前输入一个代码。比如用户拨出的号码是5551212888#,前面的5551212是用户拨打的电话号码,然后用户输入888并以井号结束。

表1-5提供了一些号码匹配的案例。


《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫


入向Dial Peer的作用是为入站方向的呼叫确定其呼叫性质。为了将入向呼叫线路与Dial Peer相匹配,路由器会用到呼叫建立消息中的3个参数和5个可配置的Dial Peer属性,如图1-36所示。


《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫

在ISDN中,这三个呼叫建立元素如下所示。

被叫号码(DNIS):定义了呼叫目的地,该信息携带在ISDN建立消息或CAS(随路信令)DNIS中。
主叫号码(ANI):指明呼叫的源,该信息携带在ISDN建立消息或CAS ANI中。
语音接口:承载了入站呼叫。
网关选择入向Dial Peer的方法是将呼叫建立消息中的相关信息与Dial Peer属性进行匹配。这些信息的匹配顺序如下所示。

步骤1  被叫号码与incoming called-number相匹配。

首先,网关会尝试将呼叫建立请求中的被叫号码,与每个Dial Peer中配置的incoming called-number参数进行匹配。这个参数的匹配优先级高于answer-address和destination-pattern。当有多个incoming called-number参数与DNIS相匹配时,网关将根据最长匹配原则进行选择。

步骤2  主叫号码与answer-address相匹配。

若被叫号码无法与步骤1相匹配,网关会尝试使用呼叫建立请求中的主叫号码与每个Dial Peer中配置的answer-address参数进行匹配。当管理员希望根据主叫号码来对呼叫进行匹配时,就可以使用这个参数。当有多个answer-address参数与ANI相匹配时,网关将根据最长匹配原则进行选择。

步骤3  主叫号码与destination-pattern相匹配。

若主叫号码无法与步骤2相匹配,网关会尝试使用呼叫建立请求中的主叫号码与每个Dial Peer中配置的destination-pattern参数进行匹配。当有多个destination-pattern参数与ANI相匹配时,网关将根据最长匹配原则进行选择。

步骤4  语音接口(与入站呼叫建立请求相关联的接口)与Dial Peer中配置的port参数(能够应用于入向POTS呼叫线路)相匹配。

若主叫号码无法与步骤3相匹配,网关会尝试将Dial Peer中配置的port参数与入站呼叫相关联的语音接口相匹配。当有多个Dial Peer配置了相同的语音接口时,网关将选择最先配置上的Dial Peer。

步骤5  当所有匹配条件都不符合时,网关将会使用默认Dial Peer。默认Dial Peer将在本章后面的内容中进行介绍。

根据这个流程,呼叫最终仅会与一个参数相匹配,且必须匹配一个参数。一旦找到相匹配的Dial Peer后,网关就会停止匹配过程。

图1-37给出了匹配入向Dial Peer的案例。当目的地网关接收到呼叫建立请求后,它会开始进行入向Dial Peer匹配。本例中的ANI是1001,DNIS是2001。根据匹配流程,命令incoming called-number拥有最高优先级,且管理员在Dial Peer 3中配置了该参数,但这里配置的100.无法与DNIS相匹配。命令answer-address拥有次高优先级,Dial Peer 2中配置了该参数,且这里配置的100.与ANI相匹配。因此网关会选择Dial Peer 2作为入站Dial Peer。


《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫

当管理员希望根据地理区域来匹配主叫方时,就可以使用answer-address命令。这种方法适用于以下环境。

  • 需要把来自某一国家的主叫方定向到提供相应语言的服务组。
  • 需要把来自某一地区的主叫方定向到相应区域的销售组。
  • 管理员可以在任何情况下使用incoming called-number命令。因为每种类型的呼叫建立消息和信令中,都携带DNIS信息,Cisco建议在进行入向Dial Peer匹配时,使用incoming called-number命令。尤其(比如在下列情况中)当管理员要进行服务选择时,incoming called-number命令就格外有用。

使用不同的号码来呼叫销售部门和技术支持部门。
使用不同的号码来呼叫采购服务、订单追踪服务和撤销服务。

1.2.4 出向Dial Peer匹配原则

当呼叫建立请求到达语音网关时,网关会使用入站呼叫的被叫号码串,与出向Dial Peer中的destination pattern进行匹配。在出向Dial Peer匹配过程中,网关会同时考虑两种类型的Dial Peer——POTS和VoIP。

一旦网关找到与呼叫相匹配的出向Dial Peer,呼叫建立过程将会被推进到呼叫路径上的下一跳设备。在出向POTS Dial Peer中,用于转发呼叫的命令是port。在出向VoIP Dial Peer中,用于转发呼叫的命令是session target。

图1-38所示为一个出向Dial Peer匹配案例。


《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫

假设用户使用分机号为1001的电话发出了4个呼叫。

用户拨打2001,最佳匹配项为Dial Peer 4。
用户拨打2001,Dial Peer 1也匹配该号码,但它是最不精确的匹配项。
用户拨打2002,Dial Peer 2与之相匹配,且同时与20个号码相匹配(2000~2019)。Dial Peer 3与之相匹配,且同时与10个号码相匹配(2000~2009)。因此Dial Peer 3为最佳匹配项。
用户拨打2011,Dial Peer 1和2与之相匹配,后者符合最长匹配原则。
用户拨打2111,只有Dial Peer 1能够与之相匹配。
1.2.5 默认Dial Peer
图1-39所示案例仅配置了单向呼叫路由。这一场景为双方网关带来了入向Dial Peer选择的问题。

当管理员配置的参数都无法与入向呼叫相匹配时,网关会使用默认Dial Peer。默认Dial Peer也称为Dial Peer 0。默认Dial Peer仅用于入向匹配,网关从不使用它去匹配出向呼叫。管理员无法修改Dial Peer 0中的各项参数。


《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫

用于入向VoIP匹配的Dial Peer 0具有如下参数。

  • 支持G.729和G.711编码。
  • IP优先级(IP Precedence)设置为0。
  • 启用VAD(活动语音检测)。
  • 不支持RSVP(资源预留协议)。
  • 支持传真速率(Fax-Rate)服务。
  • 用于入向POTS匹配的Dial Peer 0具有如下参数。
  • 不支持任何应用。
  • 不支持DID(直接向内拨号)。
  • 管理员无法更改Dial Peer 0的默认配置。默认Dial Peer(也就是Dial Peer 0)无法与对端设备协商非默认的能力、服务和应用,比如DTMF中继或禁用VAD。当入向POTS呼叫线路匹配了默认Dial Peer,则网关不在该接口上启用默认IVR应用。也就是说用户会听到拨号音,进而继续拨号。

为了避免使用Dial Peer 0,管理员应该在网关上正确配置incoming called-number参数,这样用户通过网关发起出向呼叫时,网关总可以将该呼叫与适当的Dial Peer相匹配。在通过Cisco IOS网关发起出向呼叫的时候,若呼叫与Dial Peer 0相匹配,常会因编码、VAD和DTMF中继协商不一致,导致呼叫出现很多问题。当管理员使用Cisco AS5350、AS5400或AS5850通用网关平台时,若呼叫无法精确匹配某个入站Dial Peer,最终会与Dial Peer 0相匹配,这时网关会将该呼叫当作调制解调器呼叫。这种呼叫处理方式会导致用户听到的是Modem音,而非入向呼叫的拨号音。在这几个语音平台上,入向Dial Peer的精确匹配原则只使用前文中介绍的前三个参数(incoming called-number、answer address、destination-pattern),并忽略入站接口(即port参数)信息。因此在这些平台上,若呼叫无法与incoming called-number、answer address和destination-pattern参数相匹配,则会被网关当作Modem呼叫进行处理。

1.2.6 DID(直接向内拨号)

在以前的传统电话通讯环境中,企业使用二次拨号(Two-Stage Dialing)来允许外部主叫方拨打企业的内部电话。企业中的PBX通过模拟或数字中继线路与PSTN相连。当这条中继接收到一个入向呼叫时,CO(中心局)交换机就会占用相应的语音接口。这时PBX提供拨号音并开始收集号码。主叫方从企业PBX听到二次拨号音并再次拨出号码,以便拨打企业的内部电话。

随着20世纪70年代开发出的新技术DID(Direct Inward Dialing,直接向内拨号),使一次拨号成为了可能。通过使用一次拨号,主叫方可以一次性输入完整的被叫方号码(其中包含拨打企业内部电话所需的号码),并不再听到二次拨号音。PSTN CO会将完整的DNIS发送给企业PBX,然后PBX将呼叫转发到其相应的内部电话。

语音网关也可以使用DID,前提是管理员在入向POTS Dial Peer上启用了DID特性。所有数字语音接口和模拟FXS-DID接口都可以支持该特性。模拟FXS(Foreign Exchange Station,外部交换站)语音接口、FXO(Foreign Exchange Office,外部交换局)语音接口或E&M(Ear and Mouth)语音接口则不支持该特性。

二次拨号
图1-40显示出了二次拨号的处理过程,其详细步骤如下所示。

步骤1  用户摘机后听到拨号音,并拨打555。

步骤2  PSTN接收到用户拨出的号码并将其转发到目的地网关。去往目的地网关的中继线路由目的地网关毗邻的CO交换机所占用。目的地交换机向主叫方提供二次拨号音并开始收集号码,直到它能够把号码匹配到一个出向Dial Peer时,网关便停止收集号码。Dial Peer的匹配是逐个数字进行的,无论号码是由人工输入的(拨号间隔不等),还是由电话设备输入的(拨号间隔相等,电话先收集号码再拨号)。这就是说网关会在收到每个数字后,尝试将号码串与Dial Peer进行匹配。

步骤3  用户听到二次拨号音并拨打2001。

步骤4  网关使用号码2001来匹配出向Dial Peer。

目的地网关以信令的方式通知接口1/1/1所连接的电话有来电,这时电话振铃。

图1-41给出了使用二次拨号的隐患。


《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫

本例中的目的地网关使用了错误的拨号计划。由于目的地网关逐数字在带内收集被叫号码,因此在它收到完整的号码前,Dial Peer 2就会首先被匹配上,从而导致呼叫无法被转发到正确的目的地。

为了解决拨号计划的设计缺陷和二次拨号所带来的问题,管理员可以在Dial Peer 2的destination pattern中使用通配符,如图1-42所示。

这样做可以使目的地网关在做出呼叫路由决策前,等待用户拨出4位号码,从而将呼叫转发到正确的目的地。


《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫

图1-43显示出二次拨号在多个网关间的处理过程。


《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫

图1-43显示出下列过程。

1.用户摘机并听到本地网关R1播放的拨号音。

2.用户拨出55且拨号间隔不等。

3.R1收集到两位数字(55),55与出向Dial Peer相匹配,因此R1占用了去往R2的中继线路1/0/1。

4.R2向主叫方播放二次拨号音。

5.用户听到二次拨号音并拨出数字4。

6.R2找到了与数字4相匹配的出向Dial Peer并占用了去往R3的中继线路1/0/1。

7.R3向主叫方播放三次拨号音。

8.用户听到三次拨号音并拨出号码2001,拨号间隔不等。

9.R3持续收集号码,直到收到号码2001。该号码匹配了出向Dial Peer。

10.R3以信令的方式通知语音接口1/0/1有来电,之后电话振铃。

在某些情况中,管理员不希望限制号码串的长度。这时管理员就可以在Dial Peer的destination-pattern命令中使用T计时器字符,来配置一个变长的Dial Peer。当destination pattern的末尾以计时器字符(T)结束时,路由器就会持续收集用户拨出的号码,直到拨号间隔计时器超时为止(默认情况下等待10 s),或者直到用户拨出了终止字符(#)为止,如图1-44所示。


《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫

一次拨号
当管理员在目的地语音网关的入向POTS Dial Peer上配置了DID特性后,也就启用了一次拨号。使用一次拨号时,目的地网关不用为主叫方播放拨号音。因此主叫方可以输入完整的被叫号码,且不会听到二次拨号音。PSTN可以使用以下两种方式将被叫号码转发到目的地网关。

通过数字接口:CO交换机发送的呼叫建立消息中包含完整的DNIS。在目的地网关上,DNIS被映射到出向Dial Peer,网关按照配置将呼叫直接转发到目的地;
通过模拟接口(FXS-DID):交换机自动以信令的方式将号码发送给目的地网关,目的地网关无需提供二次拨号音。
图1-45给出了一次拨号的案例。


《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫

图1-45所示流程如下所示。

1.用户摘机并听到拨号音后,拨打555-2001。

2.PSTN将呼叫转发到目的地网关。目的地网关从一个呼叫建立消息中获得,或通过模拟FXS DID中继线路接收到后4位号码。

3.目的地网关将收到的号码进行出向Dial Peer匹配,并以信令的方式通知接口1/1/1有来电。之后相应的电话振铃。

图1-46所示案例解释了DID如何解决不良拨号计划所带来的问题。目的地网关通过数字中继与PSTN相连,并在入向POTS Dial Peer上启用了DID特性。由于PSTN会将被叫号码中的前几位数字剥除,因此目的地网关会从呼叫建立消息中接收到被叫号码的后4位数字。本例中目的地网关将Dial Peer 2选为最佳匹配项,并将呼叫转发到正确的目的地。


《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫

图1-47显示出一次拨号在多个网关间的处理过程。


《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫

图1-47显示出下列过程。

1.用户摘机并听到本地网关R1播放的拨号音。

2.用户拨出554-2001且拨号间隔不等。

3.R1收集所有数字(该号码与出向Dial Peer相匹配)并发现出站呼叫线路需要通过数字中继1/0/1:0进行建立。由于出站语音接口是数字中继线路,因此R1会在一个呼叫建立消息中发送被叫号码。R1并不会转发号码的前两位(55),因为这两位号码与destination pattern精确匹配,在默认情况下(未配置forward-digits all命令的情况下),网关通过POTS接口转发呼叫时,会剥除与destination pattern参数精确匹配的数字。

4.R2接收到被叫号码(42001),该号码与出向Dial Peer 1相匹配,这时R2会在呼叫建立消息中携带被叫号码(2001),并将其通过出站数字中继转发到R3。由于第1位数字(4)与destination pattern精确匹配,因此被R2剥除。

5.R3从呼叫建立消息中接收到被叫号码(2001),该号码匹配了出向Dial Peer。

6.R3以信令的方式通知语音接口1/0/1有来电,之后电话振铃。

注释:若上例中使用的是模拟中继线路,则网关会继续发送号码。主叫方将不会听到任何二次或三次拨号音。

如图1-48所示,管理员在入站Dial Peer中使用命令direct-inward-dial配置了DID特性。网关能够通过不同方式来进行入向Dial Peer匹配。Cisco推荐的匹配方式是使用incoming called-number命令进行匹配。图1-48给出了最常见的DID配置案例,该案例中就使用了incoming called-number命令。需要注意的是,尽管本例在destination pattern中使用了计时器字符(T),但并没有将它用在incoming called-number命令中。


《实施Cisco统一通信VoIP和QoS(CVOICE)学习指南(第4版)》一1.2 语音网关如何路由呼叫


下面是两个字符串的解释。

字符串.(1个点号)与任意至少拥有1位数字的号码相匹配。它在使用destination-pattern命令进行出向匹配时非常有用,并且在使用incoming called-number命令进行入向匹配时格外有用。
字符串.T(1个点号后面跟着T)与任意至少拥有1位数字的号码相匹配。计时器字符会与拨号间隔超时时间相匹配,或者与终结字符(#)相匹配。它在使用destination-pattern命令进行出向匹配时非常有用。
额外视频:读者可以在1ExamAMonth.com网站(http://oneexamamonth.com/)的CVOICE页面,找到作者讨论Dial Peer理论和Dial Peer案例配置的视频。有关Dial Peer视频的名称是Dial Peer Pressure。该网站提供的其他视频资料将在本书的后续内容中进行介绍。

上一篇:算法专家解读 | 开放搜索教育搜题能力和实践


下一篇:DataWorks 批量生成同步任务|学习笔记