So today Boys and Girls I studied Logical Partitioning.
What the heck is logical partitioning I hear you ask, and why should I care about yet another way to restrict calls in CUCM?
Very good question, and in the interest of full disclaimer I just want to mention at this point to potential CCIE Voice Candidates: I have absolutely no idea if this feature appears in the CCIE Voice Lab exam or not. I have a terrible habit of studying thing's for my CCIE Voice that may not even appear in the lab. I spent a very large amount of time studying VOIP Security in terms of cryptography , only to eventually find out that this is not even tested in the CCIE Voice. Doh!
Assuming you either heard it is in the exam (if you did, post a link in the comments below so we all know) or your just plain interested in knowing what it does, read on:
Logical partitioning fufils a pretty niche requirement, basically logical partitioning restricts calls from certain gateways to VOIP phones and vice versa. It differs from regular calling search space and partitions in that it can restrict mid-call features such as call transfers and call joins.
Let me explain with an example, and tell the story of the major reason why logical partitioning is even in the CUCM configuration.
In India, up until 2008, it was against the telephone regulations to have a VOIP system connected to the PSTN network. The Indian telco's successfully lobbied the government to keep these two systems separate so that they could hold onto there revenue streams and prevent toll bypass. The only way to run VOIP was to actually have two entirely separate Systems, many Cisco deployments utilized a two-line approach, with one line being part of the VOIP system while another line part of the PSTN system.
In 2008 this restriction was removed, but the law in India states that no form of toll-bypass is allowed on there network. So for example, an Indian VOIP user calling a new york number that's not part of his own VOIP cluster cannot use the VOIP gateway in new york to achieve toll bypass.
Easy I hear you say, just don't implement toll bypass for India, give them a separate calling search space, separate partition, a few translation patterns for there geographic numbering plan and translate it all to + dialing then route it out the local route group, easy as. I don't have to worry now: I am not doing any form of toll bypass for India.
Well Mr Smarty-pants, let me give you a situation where Calling Search Spaces and Partition's WON'T solve this problem and toll-bypass can be executed.
Bob and Mike work for India-US-MegaCo.
Sam is just a customer of India-US-MegaCo
Sam is a PSTN user is India, Sam Calls Bob in India and asks to speak to Mike in the American office. Bob say's no problem and transfers Sam to Mike.
That's not allowed under Indian regulations as it is now toll-bypass.
Logical partitioning will check against this kind of attempted transfer, if logical partitioning denies the call, a message "External transfer not allowed" will show.
Now, onto the configuration.
The first thing you should do is enable Logical Partitioning Globally, this can be found under the enterprise parameters:
Enable Logical Partitioning
Set this to true
The next step is to create some Geo locations, go to System -> Geo location and fill in the physical details as you require. You can get extremely specific here if you like or as specific as you need to be.
The next step is to apply a GeoLocation filter, this filter controls what actual settings from the Geolocation are going to apply to the device. With this you can say basically only the country is relevant for the use of the Logical Partitioning.
You need to go ahead and assign these settings to your gateways and phones, note that you can only apply the geolocation filter to the device pool of a phone and not directly to the phone itself, gateways you can apply both.
Now it is worth mentioning at this point the next part of logical partitioning: In logical partitioning devices are classified into two seperate elements; a border element or an interior element.
An interior element is any VOIP Phone, CTI Route Point, Voicemail SCCP Device etc. etc.
A border element is any type of gateway or trunk, for example, a H.323 Trunk, an MGCP E1 Port etc. etc.
Logical policies can apply to:
Interior to Border
Border to Interior
Border to Border
you can't use Logical partitions to restrict Interior to Interior calls, and why would you want to? they are both VOIP endpoints so no legal requirements are being breached here.
OK now that's explained, the logical partitioning page should make more sense, go to call routing -> logical partitioning.
Give the policy a name and select the identifiers that identify devices in this logical partition, this could be country for example.
Create at least two logical partition policies, you then can establish the relationship between the policies, lets say you create two policies:
you can then say "Border devices in Australia trying to reach Interior devices in India: Deny"
To test this, set a Gateway to Geolocation Australia, A phone to Geolocation Australia and another phone to Geolocation India, you should be able to call between the VOIP Handset in the Geolocation Australia and the handset in Geolocation India.
But to prove the deny is working, make an incoming call over your gateway in australia to your australian phone, then try having that australian phone attempt to transfer to the handset in india, while it will ring when you first try and transfer, if you click transfer again, you will receive the error on your phone "External transfer not allowed"
I hope this helps someone out there and be sure to post in the comments if you've heard somewhere that logical partitioning is in the exam (unless you'd be violating NDA, in which case please don't!)
Until next time.