Wednesday, July 15, 2009

CVP Static Route for SIP Proxy Redundancy

When configuring static routes on CVP call servers to route to two SIP Proxy servers for redundancy, there are two ways to do it.

One is to add SRV DNS records in your DNS server, and the other one is to use local DNS SRV records.
• Static routes using DNS SRV records on a DNS Server
– Advantages:
Weighted load balancing and redundancy.
– Disadvantages:
Might not be able to use an existing DNS server, depending on the location of the DNS server.
The ability to share or delegate DNS server administration rights might not be possible in
some organizations.
Dial-plan configuration needs to be configured on each device individually (Cisco Unified
Communications Manager, Unified CVP, and gateways).
DNS SRV lookup is performed for each and every call by Unified CVP. If the DNS server is
slow to respond, is unavailable, is across the WAN, or so forth, this will affect performance.
• Static routes using local DNS SRV records
– Advantages:
Weighted load balancing and redundancy.
Does not depend on an external DNS Server, thus eliminating a point of failure, latency, and
DNS Server performance concerns.
– Disadvantages:
Dial plan must be configured on each device individually (Cisco Unified Communications
Manager, Unified CVP, and gateways).

Below is an example local SRV configuration file. It must be named in a text file named srv.xml and manually placed in the c:\cisco\cvp\conf directory of the Call Server where the SIP Service is running.

<?xml version="1.0" encoding="UTF-8" ?><locater>
<host name="cups.cisco.com">
<record weight="30" priority="1" destination="10.86.129.1" port="5060"/>
<record weight="30" priority="2" destination="10.86.129.2" port="5060"/>
</host>


<host name="vxml-gateway.cisco.com">
<record weight="30" priority="1" destination="10.86.129.23" port="5060"/>
<record weight="30" priority="2" destination="10.86.129.109" port="5060"/>
</host>


<host name="vgw.cisco.com">
<record weight="30" priority="1" destination="10.86.129.100" port="5060"/>
<record weight="30" priority="1" destination="10.86.129.101" port="5060"/>

</host>

</locater>

  • So in example above (host with cups.cisco.com), SIP request will always go to 10.86.129.1 and if 129.1 is failed it will go to .2
  • Because the priority is different (when priority is different, the weight is ignored)
  • CVP is going to wait till the SIP timer expires and then send it to 129.2
  • In the second example above (one with the vxml-gw.cisco.com) first record is on the top priority
  • So all calls will be routed always to 10.86.129.23.
  • Only when first host goes down, then the call will be sent to 10.86.129.109
  • But in this case CVP has no way of knowing about 10.86.129.23 going down dynamically
  • And after SIP retry timer kicks in, then it will send it to 10.86.129.109
  • So each and every call will have to wait before the timer expires and then it will be sent to 10.86.129.109
  • In the third example above (one with the vgw.cisco.com)
  • Since the priority and weight both are same, that means all calls will go into round-robin fashion
  • Lets assume that the first host is down, then every second call will have to wait till SIP timer expires and then it will switch to 10.86.129.109

Sunday, January 4, 2009

Post-installation Setup for CUPS

When lauching CUPS admin page first time after installation, some configuration needs to be done.

First, an AXL account needs to be created on CUCM. Create an application account, call it 'AXL' and create a group 'AXL', and assign 'Standard AXL API Access' role to the group. Assign the application user to the group.

Next, on CUPS, put in the CUCM publisher address, the AXL account info just created, and the security string configured when installing CUCM. Personally, I prefer to use the same key when installing CUCM and CUPS.

After completion, the user database should be synched with 'Sync Agent'.

Saturday, January 3, 2009

What after My CCIE Routing & Switching

I failed my CCIE Lab in June last year, on some really complicated topic even Cisco didn't recommend the way to do it, and I took it again in August. Finally I got my CCIE number. After all these years I've been working as a network engineer, I did it.

I was thinking about changing a job after I received my certificate, but, just not the right timing.

So I decided to take my next level -- CCIE Voice. Cisco is going to change content of the exam, which makes more sense. 6608 E1 blade for Catalyst 6500 switches is not on the list, which is a good news. In real world, my company replaced 6608 blade with CMM for most of the major sites, because only CMM is supported under native IOS. After UCCE is deployed, even the CMM will be replaced with 3845 ISRs.

My company is through the testing phase of corporate IM and unified communications, and currently, we are testing integrating MOC with CUPS (Cisco Unified Presence Server), and upgrading CUCM to version 7. So I got some exposure to the new version of the applications.

Meanwhile, my company is deploying UCCE (Unified Contact Centre Enterprise), so CUPS is heavily depended upon.

So, I decided to build my own lab. In my previous post, I mentioned I fixed a Quad-Core computer with 4GB memories, and recently, I upgraded the RAM to 8GB. It took me two days for the upgrade. I ordered additional 4GB RAM from ebay, and after I installed them, the OS crashes all the time. It took me some time to realize that it was the problem of BIOS firmware. To update BIOS firmware, floopy drive is needed. The problem was I didn't buy the floopy drive. Luckily, the mother board supports booting from USB drive. It took a while to create a USB boot disk with upgrading software and new BIOS firmware. The rest is just easy. Anyway, with the new RAM, I am able to install the new applications.

I started with installing CUCM 7 on the vmware server. I ran into some small problems when installing it, but after googling for some topics, problems gone. The trick is when setting up the vmware image, better choose IDE rather than SCSI.

Then I installed CUC 7 (Cisco Unity Connection) on another vmware server. After logging into the admin page, I found out that no service is enabled. Then I realized when choosing the country, I chose Australia instead of leaving it as default. I didn't want to reinstall it, so I downloaded the Locale file for Australia. After updating the OS, I was happy.

Installing CUPS 7 (Cisco Unified Presence Server) was quite smooth, but you need to run post installation setup the first time you lauch the application. I will cover it on later post.

The last bit was to install IPCC Express 7. Only after booting up the vmware server, I realized that it is some application running under Windows Server 2003 Standard. I tried the Windows 2003 server for the testing, not working. It requires Cisco supported platform. So I got the Cisco MCS 2003 OS image, and installed it, and then everything started working.

Another trick I forgot to mention is when configuring vmware, configure the memory to be 2GB. And after the installation, you can thrink down the memory size.

Now the four vmware servers running beautifully on my computer.

Wednesday, May 28, 2008

Triggered Update for RIP

To configure triggered update for RIP, you need to enable following command on the interface configuration mode:
ip rip triggered

This command only works on point-to-point sub-interface if it is a Frame-Relay interface.

Tuesday, May 20, 2008

Bridging over Frame Relay

Three routers connecting to the frame relay cloud with hub spoke topology, with R1 being the hub and R2 and R3 being the spokes.

R2 --(201)--(102)--R1--(103)--(301)--R3

IP address on R2 is 10.10.10.2/31, and IP address on R3 is 10.10.10.3/31.

Because the subnet mask is 31 bit, there is no space for R1. We have to run bridge over frame relay.

We will enable IRB on R2 and R3, and either IRB or CRB on R1. We will create two multipoint sub-interfaces on R1, to map the dlci with the bridge-group and bridge the DLCIs together.

Configurations below:

R1

bridge crb
!
interface Serial1/0
no ip address
encapsulation frame-relay
serial restart-delay 0
no frame-relay inverse-arp
!
interface Serial1/0.1 multipoint
frame-relay map bridge 102 broadcast
bridge-group 1
!
interface Serial1/0.2 multipoint
frame-relay map bridge 103 broadcast
bridge-group 1
!
bridge 1 protocol ieee


R2

bridge irb
!
interface Serial1/0
no ip address
encapsulation frame-relay
serial restart-delay 0
frame-relay map bridge 201 broadcast
no frame-relay inverse-arp
bridge-group 1
!
interface BVI1
ip address 10.10.10.2 255.255.255.254
!
bridge 1 protocol ieee
bridge 1 route ip
!


R3

bridge irb
!
interface Serial1/0
no ip address
encapsulation frame-relay
serial restart-delay 0
frame-relay map bridge 301 broadcast
no frame-relay inverse-arp
bridge-group 1
!
interface BVI1
ip address 10.10.10.3 255.255.255.254
!
bridge 1 protocol ieee
bridge 1 route ip
!


Pinging R2 from R3 to test:
R3#ping 10.10.10.2

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 10.10.10.2, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 168/228/276 ms
R3#

Tuesday, May 13, 2008

Catalyst 3550 and WCCP

To enable WCCP on Cisco Catalyst 3550 switch, first, you need to enable the SDM for routing with extended-match:
sdm prefer routing extended-match

Secondly, enable wccp globly:
ip wccp web-cache

Thirdly, WCCP on 3550 can only run inbound redirect, so under the user interface, run
ip wccp web-cache redirect in

Saturday, May 10, 2008

Frame-Relay Traffic Shaping and QoS

When configuring frame relay traffic shaping and applying service policy to the map-class, keep the followings in mind:
  • Use 'max-reserved-bandwidth' interface command to change the bandwidth available.
  • Configure the 'frame-relay mincir' under the map-class to guarantee the bandwidth.