Wednesday, February 12, 2014

Troubleshooting Voice Gateway incoming issue when using ISDN


If the incoming call is getting disconnected with the message "The call cannot be connected" then mostly it could be because of the IVR down issue.
To troubleshoot the same first enable the debug "debug isdn q931" on the voice gateway. See if you are seeing any cause for the call disconnection.


045951: Feb  4 02:38:28.074: ISDN Se0/0/0:23 Q931: SETUP pd = 8  callref = 0x1943
Bearer Capability i = 0x8090A2
Standard = CCITT
Transfer Capability = Speech 
Transfer Mode = Circuit
Transfer Rate = 64 kbit/s
Channel ID i = 0xA98381
Exclusive, Channel 1
Progress Ind i = 0x8283 - Origination address is non-ISDN 
Calling Party Number i = 0x1180, '919902384363'
Plan:ISDN, Type:International
Called Party Number i = 0xA1, '--------------'
Plan:ISDN, Type:National
045953: Feb  4 02:38:28.074: ISDN Se0/0/0:23 Q931: Received SETUP  callref = 0x9943 callID = 0x221B switch = primary-ni interface = User
045954: Feb  4 02:38:28.078: ISDN Se0/0/0:23 SERROR: process_pri_simple: NO name in GTD
 --More--         045955: Feb  4 02:38:28.082: ISDN Se0/0/0:23 Q921: User TX -> INFO sapi=0 tei=0, ns=29 nr=1
045956: Feb  4 02:38:28.082: ISDN Se0/0/0:23 Q931: CALL_PROC pd = 8  callref = 0x9943
Channel ID i = 0xA98381
Exclusive, Channel 1
045959: Feb  4 02:38:28.322: ISDN Se0/0/0:23 Q931: DISCONNECT pd = 8  callref = 0x9943
Cause i = 0x8081 - Unallocated/unassigned number


The above casue indicates that there is some issue with called party number.

Check where the incoing call lands:

Check the incoming calls translations configuration on done properly or not.
The easiest way to do this is enable "debug dialpeer" on the vgw and see if it through any errors.
or check the voice-port configuration for incoming call translation rule name using the "show run | sec voice-port <port number>"

voice-port 0/0/0:23
 translation-profile incoming pstn-in
 timeouts call-disconnect 5


Then check the translation-profile and respective translation rule for the pstn-in.
This will show you the extension number where the call lands after the translation. This may be your IVR system extension number.
check the status of your IVR system.


P.S: Use http://ipsubnetcalculator.net/  for calculating IP subnet mask Online


Tuesday, February 11, 2014

How to find the pixel points of an image

This is simple one but most of us will be searching for it all the time.
Finding the pixel point will be useful when you want to point some specific place in the image. This will be usefull in some apps like Cacti weathermap, or nagviz.
when you code the config for those app you can just mention the pixel values to create a point on the image.

To find the pixel of a image just open the image on ms paint (windows inbuilt app) and look at the status bar at last you will find the pixel of the particular point where your mouse exists.



Tuesday, February 4, 2014

Link Load Balancing using MPLS TE

Why MPLS TE?

There are multiple IGP  protocols which can do load sharing, but the condition is that both the links has to be connected on a single router. Even if we use  OSPF & ISIS, they can only do equal cost load balancing.
Eigrp can do unequal cost load balancing but practically it is not preferred to use in network because of its proprietary feature.

But  MPLS-TE can do unequal cost load balancing and also it can do load balancing with two links which are not connected on a single router. This protocol  was mainly designed for the purpose of load balancing.

MPLS - TE is supported by both the IGP (OSPF and ISIS). Hence you will need to have the IGP running in the network.

Configuring MPLS TE:

Consider the below topology  and assume that we are running  ISIS as routing protocol between the routers.
In ISIS protocol lower the metric is preferred. Hence the normal ISIS path is mentioned in blue line below.

We can use MPLS - TE tunnels from R1 to R3 to do the load balancing on both the links.
The Traffic Engineering tunnel T0 has to be configured with dynamic path and the Traffic Engineering  tunnel T1 has to be configured with explicit path mentioning the explicit path to go via R1-> R2->R4->R3.
Once the te tunnels are created and up the Traffic Engineering tunnels will take the IGP metric and will get added in the routing table. Say if the IGP between R1 and R3 has a metric of 100 the tunnels between R1 and R3 will use the same metric(We also can change this by using "tunnel mpls traffic-eng path-selection metric te" inside tunnel config). so now for POP-A to reach POP-B it has two routes one through Te0 and Te1.
When you have the Te tunnels up the physical path will not be shown in the routing table.
if Airtel link goes down the Te0 tunnel will go down and the traffic will go via T1 tunnel.



What happens when you have another POPs connects to POP-B.
For POP-A To reach POP-C or POP-D we might have already learned a route on R1 saying go via R3(learned via IGP), once the Te tunnels are up for those subnets also the traffic will flow through the Te tunnels.


Configuration of R1.

mpls traffic-eng tunnels
router isis core
   net 49.0000.0004.0000.0251.00
   metric-style wide
   fast-flood 10
   mpls traffic-eng router-id Loopback162
   mpls traffic-eng level-2

interface GigabitEthernet0/2/4
   description LINK_TO_R3_AIRTEL
   ip address 10.128.1.1 255.255.255.252
   ip router isis core
   mpls traffic-eng tunnels
   isis circuit-type level-2-only
   isis metric 100
   ip rsvp bandwidth

interface Tunnel0
  description TUNEL_TO_R3_VIA_AIRTEL
  ip unnumbered Loopback162
  tunnel mode mpls traffic-eng
  tunnel destination 10.1.1.3
  tunnel mpls traffic-eng autoroute announce
  tunnel mpls traffic-eng priority 1 1
  tunnel mpls traffic-eng bandwidth 100
  tunnel mpls traffic-eng path-option 1 dynamic


interface Tunnel1
  description TUNEL_TO_R3_VIA_TATA
  ip unnumbered Loopback162
  tunnel mode mpls traffic-eng
  tunnel destination 10.1.1.3
  tunnel mpls traffic-eng autoroute announce
  tunnel mpls traffic-eng priority 1 1
  tunnel mpls traffic-eng bandwidth 100
  tunnel mpls traffic-eng path-option 1 explicit name R2-R4-R3

ip explicit-path name R2-R4-R3 enable
 next-address  <R2 Ip address)
 next-address  <R4 IP address)
 next-address  <R3 IP address)

Please note MPLS TE tunnels are one way traffic , we have to configure the R3 also with the Tunnel configurations to get the reverse path also to do load balancing.


Advantages of using MPLS TE
  • More Control on traffic
  • Utilizing all the links in the network.
  • You can have part of your network running MPLS te and other network 
Disadvantage of using MPLS TE
  • It is not supported on Port channel interface.
  • VRF interfaces are not supported.
  • Cisco lower end routers and ISR's are not supported with this features