Flipkart

Monday, February 6, 2012

H323 Gateway Configuration and Troubleshooting

H323 PROTOCOL:


  • H.225 handles call setup and teardown and q.931 operations.
  • H.225 RAS
  • H.245 Feature negotiation (codec negotiation)
  • H.261/H.263 -->Video Register admission status-->Handles the   gatekeeper conferencing
  • H.450 Supplementary services (Hold etc)
  • H323 Fast start(default)-->combining the H.225 and H.245 signalling in a single message.
  • T.120-->Data Transfer 
  •  Video codec -->H.261 & H.263 
  •  H.245 Control signalling & Capabilities exchange 
  •  H.225 Call signalling, Registration & RAS control  port 1720


Why would we use H323?

1) Widely supported and interoperated(h323 is the default protocol for Cisco)
2) It supports Fractional PRI
3) You want caller-id support on FXO or T1 CAS-->H323 Supports whereas MGCP doest not support.
Explanation: you are getting an incoming call from PSTN through FXO port on MGCP gateway and MGCP Gateway is connected to call manager. The caller id information you will not get when using the MGCP.
4) PRI Call preservation:
When the call agent CUCM goes down then h323 doesn’t not drop call.  In case of MGCP also call will not be dropped but for MGCP PRI backhaul the calls are dropped.
5) Many call routing and manipulation options
6) Supports NFAS( Non facility associated signaling): one signaling for multiple PRI lines--Result you will have more channels.
7) H.323 gatekeeper support-->Call admission control

H.323 configuration

Enabling  the H.323 service in the Voice Gateway
conf t
voice service voip
h323
no shutdown

Verify gateway status
show gateway


H323 Gateway Addition in call Manager:

·         H323 and SIP gateway never registers with the Call Manager.
·         Call Manager shows the status of the H323/SIP Gateway as Unknown.
·         When adding the H323 Gateway always select the option H323 Gateway in the add Gateway option. For MGCP Gateway addition you need to select the appropriate model.
Cisco CM Administration----->device menu--->Gateway--->Add new-->H323 gateway-->device name==>ip-address
·         Assign the gateway to the Route Pattern for routing the calls to the gateway
In the Main menu Call routing--->Route Hunt---> Route pattern-->Add new-->
Route Pattern ==>  e.g 5001
Gateway/Route list  ==> Ip-address of h323 gateway.

Configuration of H323 Gateway to communicate with CallManager:

Step 1: Create a Loop back interface

H323 Gateways do a recursive route table lookup for finding the destination network and use the router closest interface as the source address for commmunicating with the CUCM.
H323 bind command ensures the H323 gateway uses the same address every time it communicating with the CUCM.
conf  t
int loopback 0
ip address 192.168.1.19 255.255.255.255
h323-gateway voip interface
h323-gateway voip

Step 2: To route calls from the H323 Gateway to the CUCM --> Configure atleast one VOIP dial-peer

Step 3: Enabling the H323 Service
Enters voice-service voip configuration mode
Router(config)#voice service  voip   //This commands will let you to enable H.323 as VoIP service and enters h323 configuration mode
Roter(config-voi-serv)#h323
Router(config-serv-h323)#telephony-service ccm-compatible // This command will enable Call Manager compatibility for H323

 Step 4: Interaction between the call manager and the H323 Gateway
Router# conf t
Router(Config)# int fa0/0
Router(config-fa)# ip address 192.168.1.10 255.255.255.0
Router(config-fa)h323-gateway voip interface // This command will bind interface IP Address with H323 for signaling. It used because H323 signaling contains different source address so to make it a single ip address need to bind with interface


Router(config-fa)#h323-gateway voip h323-id HVoiceGW1 //Giving the  ID HVoiceGW1 to the gateway
Router(config-if)#h323-gateway voip bind srcaddr   // Assign the ip address of the interface connected to the call manager or the ip address of the Loop back interface

Note for H323 gateway

·         Fast connect(fast start) -->In a sense, this tunnels H.245 traffic inside H.225 messages-->enabled by default
·         For call to connect both the end points should support the fast start.
·         The IP phone communicates with its CallManager using Skinny Client Control Protocol (SCCP). The CallManager exchanges H.323 messages with the H.323 voice gateway using Fast Start.
·         After creating the h323 gateway in the call manager press the reset button and reset the gateway otherwise it will not work

Enable Call survivability on all the VOIP dial-peers on the Router

voip service voip
h323
call preserve

ISSUES FACED IN H323 gateway:

1) Calls not connecting from gateway to another gateway
conf t
voice service voip
allow-connections h323 to h323

allow-connections h323 to sip
allow-connections sip to h323

2) SRST issue with H323 gateway:

An H.323 gateway exchanges H.225 keepalives with CallManager.
To prevent active calls from being terminated when the CallManager becomes unreachable, turn off H.225 keepalives between the gateway and CallManager.
GW1(config)#voice service voip
GW1(conf-voi-serv)#h323
GW1(conf-serv-h323)#no h225 timeout keepalive

3)Inbound calls not failovering to backup callmanager:

Especially if the gateway has a PRI connection for inbound calls. When a call comes in that should be forwarded to a CallManager, the router attempts to set up an H.225 TCP session to its preferred VoIP dial peer.

The TCP session must time out before it will try another dial peer. This takes 30 seconds by default. ISDN Q.931 has a Call Proceeding timeout of 10 seconds. A call that comes in over a PRI line will time out before the router can fail over to an alternate CallManager. Even without a PRI connection, 15 seconds might be longer than you want to wait.

To remedy this, change the H.225 TCP session establishment timer. The voice class h323 10 command creates a voice class in global configuration mode that reduces the timer to three seconds:

NYCgateway(config)#voice class h323 10
NYCgateway(configs-class)#h225 timeout tcp establish 3

4) Calls are Dropped

When the call manager Fails then H323 Gateway is configured for SRST--->H323 gateway drops the active calls. When the Call Manager comes online again the calls are droppped.
CUBE (Cisco border element has no effect by enabling the no h225 timeout keepalive)-->IP to IP calls will be traversing the CUBE

voice service voip
no h225 timeout keepalive ---> disabels the keepalive messages.
voice class h323 1
h225 timeout tcp establish 2
h225 timeout setup 2
call preserve

H323 Gateway Failover Configuration

Cisco IOS gateways also handle Cisco CallManager failover situations. By using several enhancements to the dial-peer and voice class commands in Cisco IOS Release 12.1(2)T, Cisco IOS gateways can support redundant Cisco CallManagers. The command, h225 tcp timeout seconds, specifies the time that it takes for the Cisco IOS gateway to establish an H.225 control connection for H.323 call setup.


The following example shows the configuration for H.323 gateway failover:

interface FastEthernet0/0
ip address 10.1.1.10 255.255.255.0  --->10.1.1.10 (Ip address of CUCM)

voice class h323 1
h225 timeout tcp establish 3
h225 timout setup 2

dial-peer voice 101 voip
destination-pattern 1111
session target ipv4:10.1.1.101
preference 0                     ---->Preference 0 (This is the primary route for connecting with CUCM)
voice class h323 1

dial-peer voice 102 voip
destination-pattern 1111
session target ipv4:10.1.1.102
preference 1                     ---->(Backup route)
voice class h323 1

h225 timeout tcp establish 3 -->If the H323 Gateway cannot establish a TCP connection with CUCM within 3 seconds then it will try the next dial-peer with inferior preference.
h225 timeout tcp setup 2 --> The H.225 setup message is sent to the CUCM and the CUCM is not responding for the setup message within 2 seconds then next dial-peer with inferior preference is used. H.225 message is sent after establishment of TCP connection.

H323 Gateway Status Verification
·         show h323 gateway
·         clear h323 gateway --clears the statistics

·         show debug --->command to display the debug commands applied
·         show dial-peer voice summary  --->shows the summary of the dial peers
·         show dialplan number 9790523431 --->shows which dial peers are matched.
·         csim start phone-number command--->You can simulate a phone call from the router

Debugging a H323 Call:

·         debug cch323 h225 and debug cch323 h245 -->call setup and tear down checking.
·         debug  voip dialpeer --->good one for troubleshooting
·         debug ip tcp transaction ----> to make sure that the TCP session for H.225 and H.245 is being established.

Other configurations on H323:

·         call service stop --->Stops the h323 call processing
·         The faststart is enabled by default
call start slow ---> disable the h323 faststart.


Sunday, February 5, 2012

MGCP Protocol and Gateway configuration

MGCP PROTOCOL:



·         Plain text protocol that uses the server to client relationship
·         MGCP protocol contains a central component call agent(Media Gateway controller) to remotely control various devices
·         MGCP uses UDP port 2427 for Control traffic and TCP port 2428 for backhaul.
·         Call agent ---> Gateway (UDP Port used by the call agent:2427 to talk to Gateway)
·         Gateway  --->  Call agent (UDP Port used by the Gateway:2727 to talk to Call agent)

MGCP GATEWAY CONFIGURATION:
·         MGCP allows CUCM to take control of the Gateway voice ports.
·         Dial-plan completely administered from the CUCM.
·         An endpoint can be either the source or the destination for a media stream
·         Endpoint names have two components a local identifier, and a gateway identifier. The entire name consists of the local identifier, followed by the @ symbol, and then the gateway identifier.
Example: local_identifier@gateway_identifier.domain_name
The format of a local identifier varies depending on the type of interface. The local identifier for analog ports uses the following syntax:
Endpoint type/Slot #/Subunit #/Port #
For example, an endpoint name for an FXO port might look something like this: AALN/S0/SU0/1@Router1
AALN (Analog Access Line Endpoint) means that it is either an FXS or FXO interface.
S0 is the slot number that contains the voice module.
SU0 (for Subunit 0) is the slot within the network module that holds the voice interface card (VIC) or voice/WAN interface card (VWIC). 1 is the number of the voice port on the VIC or VWIC.
Router 1 is the hostname of the gateway.
·         You can get the domain name of the router by the command sh run | begin domain.

Configuration of MGCP Gateway:
      Router1(config)#mgcp
      Router1(config)#mgcp call-agent [ip-address|hostname] [port] service-type mgcp [version 0.1 | 1.0 | rfc3435-1.0] -->specifies the primary call manager ip address
      Router1(config)#ccm-manager mgcp    --->enables the mgcp to support call manager

To download much of its MGCP configuration from CallManager
      Router1(config)#ccm-manager config server {ip-address of call manager | dns-name}
Router1(config)#ccm-manager config

·         Next, you need to bind MGCP to the voice ports. You do this by configuring a dial peer for each voice port and binding MGCP to it using the application MGCPAPP command
·         Note: the directory number is not specified in the port since its configured in call manager
 Router1(config)#dial-peer voice 100 pots
Router1(config-dial-peer)#application MGCPAPP
Router1(config-dial-peer)#port 1/0/0

Configuring MGCP Fallback:
    Router1(config)#application
    Router1(config-app)#global
    Router1(config-app-global)#service alternate Default

When using MGCP fallback, you must also configure at least one dial peer with a destination pattern so that it can route outbound calls when CallManager is not available
      Router1(config)#dial-peer voice 200 pots
       Router1(config-dial-peer)#destination-pattern 9T
       Router1(config-dial-peer)#incoming called-number .

 Configuration of PRI Backhaul:
·         PRI Backhaul is the reliable transport layer connection between the CUCM and the MGCP Gateway.
·         It is the encapsulation of the Q.931 signalling in the D channel of the ISDN TDM interface.
·         Q.921 is handled by the gateway and the Layer3 in isdn q.931 is sent to the call manager.
·         The protocol q.931 is the signalling protocol and it contains the ANI, DNIS numbers.
·         The Q.931(Q.931 contains the call setup and teardown signalling) messages are tunnelled to the Voice gateway using the port 2428.

MGCP GATEWAY ADDITION IN CALL MANAGER:
Cisco CM Administration------->Device menu----->Add Gateway----->select the cisco model--->protocol=MGCP
Domain name ==>host.domainname
host==>host name of the router
domain name ===>sh run | begin domain.

MGCP REGISTRATION PROCESS:

1) gateway opens a TCP connection to Call manager
2) Gateway sends the Restart in Progress(RSIP) message to CCM
3) CCM acknowledges it
4) CCM sends audit end point(AUEP) message to gateway
5) Gateway acknowledges it
6) CCM sends Notification Request message.

MGCP Interaction with call manager:
·         MGCP uses nine types of messages between the gateway and CallManager to control the endpoints and connections.
·         The receiver must acknowledge each message. Messages between the CallManager and the gateway are sent by default to port 2427.

MGCP Gateway verification:
·         show ccm-manager  ---- > show mgcp registration status & this gives the call amanger ip address and other important details.
·         show mgcp endpoints ---- > when MGCP Gateway is registered and the end point in question is not registered. So end point registration can be verified by this command.
·         show mgcp statistics---- > to see the messages exchanged between the gateway
·         show mgcp connections---- >to check for the active calls
·         show isdn status ---- > when MGCP is controlling the T1/E1 link.

MGCP TROUBLESHOOTING STEPS:
·         Verify network connectivity ping from both directions
·         Verify call manager service is running
·         Verify CCM/IOS for compatability.
·         Verify the Hostname and domain name match.
·         Verify CCM MGCP port configuration match

Issue: MGCP Gateway is  not registering with the call manager
·         Try the command no ccm-manager config server followed by the ccm-manager config server
·         Another method no mgcp followed by mgcp will reset the MGCP Gateway-->it will drop the existing calls-->not to be used when calls volume is high.
·         Use show voice port summary--it will display the active calls in the TDM interface.