Characteristics of CUC Manager
Lets take a look at the full-blown Communications Manager, that's the big guy. This is an application of the call managers what we call it, that's running on server blades and we can cluster several servers together to support up to 30,000 IP phones. Then we can actually take these clusters and tie them together. So, pretty much we could just recreate the PSTN, the Public Switch Telephone Network if we needed to. It is using IBM Informix database – that's going to be the platform that you're using, because it's going to be Linux. It also has a disaster recovery system of course for backing up and restoring all of this. We also have some tools that we can use to manage and monitor this environment.
Because we're using Linux we're really not going to be allowed to get to the root and start to do all kinds of coding. If you know Linux very well we're kind of blocked from that and it's almost to kind of to protect ourselves from messing up our phone system, but it is really nice. It's running on the Linux platform, it's got the Informix database that we're using and we're going to like. Get these tools, one of them is the Real-Time Monitoring Tool, RTMT tool that lets us manage this environment and we can see things like how many phones are registered and we can look at the processors and the memory utilization and they're just a ton of information tied into that RTMT tool that we can use to really monitor the solution and even run some reports.
Now with the Communications Manager Solution I mentioned that we're using servers. We have rack-mount blades that we can purchase or we can again check Cisco's website, we can use other vendor's equipment, but you want to make sure that it is supported and tested by Cisco. So, double check that, but if you're interested the Communications Manager Solution runs on MCS 7800 Series Servers and these servers are going to be purchased based on how many phones you want to support. Depending upon the phones that you're supporting that's going to determine which one of these server blades you're going to choose and then of course you want probably more than one, so that you have some type of redundancy and backup plan.
You do have those third party servers, but I just want to kind of throw this out there for you. You don't want to take an old e-machine that was sitting in the closet and run your phone system on it, because I think the phone system is relatively important for most of our businesses to make sure that its running efficiently and smoothly, phone calls are understood, we don't have downtime. That's why we want to use something that Cisco has tested and said "Yep, works great on this" or we choose the Cisco platform to run it on, because we don't want any problems and they do tell what the general processor and memory is, but just like I mentioned about routers, the day its printed things change, right? If you're buying this brand new double check again Cisco's website for the latest information on those servers.
Something that we're really excited about is Virtual Machines and VMware is now supported with the following telecommunication solutions:
- Call Manager
- Unity Connect
- Contact Center Solution
- Unity version 2
And there are some stipulations that you have to follow and it's very important that you do, because if you're not familiar with VMware when you install the VMware environment you can set how much memory that particular virtual machine has and what the CPU is and you have all kinds of things that you can fine tune. Cisco gives you what parameters you need to make sure that virtual machine is running so that the application performs well. So, you want to make sure you follow Cisco's guidelines. Again, I can't stress that enough because I see people make the mistake where they say "Well, I'm just going to give it a gig of RAM, because I only have maybe 200 phones that I'm supporting" and then things go wrong and we don't want that to happen. We want to make sure that you give the environment enough memory, enough processing power to make sure that it runs smoothly.
There are some guidelines I want to make sure that you look at Cisco's website when you're doing this. You want to make sure that you have the virtual server setup right. You want to make sure that you have the proper licensing used for the virtual machines, because there are MAC addresses that are tied to your licenses, so you want to make sure that all that’s good to go. So, make sure that when you're out purchasing this, maybe for the first time or your just looking at it, maybe you're a new administrator and you’re checking things out. You should be able to use a
show status command and that should allow you to look at your MAC addresses so that you know what your licenses are tied to. If you have an existing system you could do that to see what MAC addresses you're using or if you’re just installing this brand new, you can use that
show status command to find the MAC address, because when you go through this licensing process Ciscos going to want to know with the MAC address is, so they can tie the licenses to that particular environment.
Something we're all very worried about is making sure that our phone system, even our data network is up and running. So what do we do to make sure that that happens? Well, we make sure we put in some redundancy and we back things up all the time. With the Communications Manager Solution we're going to be installing this on server blades, so we have up to 30,000 IP phones that could be configured on all these different servers. So, we want to make sure that we have enough servers to also have a backup plan in place.
We can have eight subscribers running this Cisco Call Manager Service. Now, what's a subscriber? A subscriber is a server that has a read-only copy of the database for the most part. The publisher has a Read/Write copy of the database, so what happens is the publisher gets all the information and then pushes it back out to the subscribers, so the subscribers are up-to-date with the latest features, the number of phones and what those phones are doing out there. So, we have these subscribers they're kind of the work horse behind the scenes, we typically don’t have phones registering with the publisher, we usually leave that to its own device because it's busy doing other things.
There's also a TFTP server. Now the TFTP server is what houses the configuration files for your devices, so that's important. The phones need to be able to register first of all with your subscribers, but in that process they also need to get the TFTP information, so we need to have those TFTP servers available and they recommend up to two servers running that TFTP service. And your phones, when you go in to configure them, you're able to tell them "alright, here's your primary subscriber I want you to register with, but if that one's not available here’s the secondary and here's the tertiary in case maybe that primary one that they were choosing maybe was unavailable or down." So there's one way to have some redundancy two TFTP servers and there's another way to have some redundancy and we also typically will say we could put a dedicated server, maybe for Music on Hold. I mean when you’re supporting 30,000 phones that could be a lot of people on hold all at once, so you might have a dedicated server for like Music on Hold. With the Communications Manager Solution we can tie a lot of different servers into the solution to do various things like be a Music on Hold Server, like be a TFTP Server. They are dedicated to just doing that.
There is also something called the Enunciator service that is what plays out the messages that maybe you've dialed the number incorrectly and even some of the tones that you hear on the phone, so we might have a dedicated Enunciator server that just plays out Enunciator messages. We want to make sure that we have enough servers out there that are going to support the number of phones that we have tied into our solution.
Database Replication and User-Facing Features
The Informix database is pretty intelligent, compared to the old Microsoft solution with SQL and if the publisher went down you couldn't do anything, because that publisher again is the Read/Write copy of the database. With the Informix Solution it works a little bit differently. The publisher does own a Read/Write copy of that database that hasn't changed. There's one way replication that takes place from the publisher to the subscribers. The big difference here though is user-facing features; things like changing your call forwarding. That can now be done and stored locally on your subscriber, so if the publisher is down I can still change my call forwarding feature for example. Used to not be that way so this is a huge improvement and this really makes life much easier. So if that publisher's down my users can still perform their features without an issue. Now if I wanted to add a phone it might cause the problem, but the users can continue to function until that publisher comes back online. Once that publisher is back the subscribers send all the information to the publisher and then the publisher pushes it back out to all the subscribers, so everybody's up-to-date.
ICCS or Intra-Cluster Communication Signaling takes place over TCP Port 8002 and 8004 and what’s taking place here is the publisher and the subscribers are keeping the database in sync. Remember the publisher has that Read/Write copy of the database and the subscribers primarily collect information, so what happens is when the device registers with the subscriber we have to tell the publisher about that, so now the publisher gets that information and sends it back out Call Detail Records, Call Management Records all collected by subscribers who ultimately tell the publisher about this information, so the publisher is up-to-date. So, if we had something like a billing application we would take that billing application and really run it against the publisher who had the full copy of that database of all the information, so that we could pull the records out.
CUCM Data Streams
If I pick up the handset of my IP phone and I want to make a phone call, first of all I have to communicate with the Communications Managers, so I have to use a special protocol, it's either SIP or SCCP the Skinny Client Control Protocol. In this instance, this allows me to setup my call. If I’m streaming audio though between my IP phones I’m using RTP that’s a separate protocol. If I want to call out the PSTN I start off at RTP, but then when I hit that PSTN gateway it needs to convert that back to the Time-division multiplexing or analogue form, so I can head out to the public switched telephone network.
CUCM Key Features
The Communications Manager or Call Manager Application I like to call it, is really the solution that replaces your key system or PBX that separate solution. So we expected to perform call processing, setting up and tearing down of calls, but we also get some benefits because it's IP telephony. We also have Computer Telephony Integration, which allows us to really create any type of applications we want and tie that together. So if I want to take maybe an application on my data network and tie that into an application I’ve created on my IP telephony solution, CTI support really allows us to do that. We also have a graphical user interface that allows us to manage all of this and some extra benefits that we get, if you see those really large liquid crystal display devices or IP phones that Cisco makes, you can actually pull up an application just like you would on your desktop machine and you can tie into all of the different databases and pull up information. There are tons of applications that are out there already and you can create your own using this XML-based format. There's also the ability to leverage what you may already have on your PC. There's something called the Cisco Web Dialer for example, this allows you from your PC to be able to click and select a phone number and have it dial that phone number, so again because we can tie between the data and the voice network, because we can tie it together we really have the sky as the limit in what type of applications we can tie into this. Or in short:
- Call processing
- Signalling and device control
- High scalability
- Configuration via GUI
- Directlry service that can be stand-alone or integrated with an existing directory
- CTI support
- Phone application support (XML)