This article covers the creation and use of Trunk Groups in VX, including their relationship to call equipment, use in call routing and considerations for configuring Trunk Groups for your environment.
Trunk Groups: An Overview
In the VX system, a Trunk Group is a logical grouping of a physical call source or call destination that enables highly flexible management of calls. Trunk Groups can represent multiple pieces of call equipment, a single device or line, a subset of the channels of a device or line, a group of resources, or a combination of these options.
|title||Possible Relationships between Call Equipment and Trunk Groups|
The ability to represent carrier lines, PBXs, VoIP server and other call equipment individually, in subsets or as groups makes the VX system a powerful tool for organizing and managing your call-related resources. Trunk Groups give you the ability to consolidate or sub-divide call resources in the manner that best suits your needs. Create a Trunk Group to represent multiple carrier lines as a single call resource for simplicity of management, or carve out a single channel from a call resource as its own Trunk Group for fine-grain control; the VX system allows you to choose the best configuration for your needs.
Trunk Groups are an essential part of call routing in VX. Every call traversing VX has a Trunk Group as its source (call ingress) and a Trunk Group as its destination (call egress). When configuring a Trunk Group for call routing in VX, you assign it a Call Routing Table which then has overall responsibility for routing calls received on that Trunk Group. Within the assigned Call Routing Table, there are one or more Call Routes, each of which has a Trunk Group as a call destination.
|title||Relationship of Trunk Groups, Call Route Tables and Call Routes|
As the above diagram illustrates, call routing in VX requires Trunk Groups to identify sources and destinations for calls. You must configure Trunk Groups in the VX system in order to route calls. How you configure Trunk Groups in VX and considerations for configuring Trunk Groups for your environment are covered in the rest of this article.
Configuring Trunk Groups: The Basics
Trunk Groups are created and defined using the VXbuilder tool. Within VXbuilder, call equipment connections are represented as Slot and Port. For Time Division Multiplex (TDM) connections such as ISDN, SS7, CAS or Analog, the Slots and Ports represent physical slots and ports on the VX chassis. For Internet Protocol (IP) connections such as SIP, H.323 and BSP, the Slots and Ports are virtual representations that receive the voice call packets transmitted over the Ethernet adapter(s) on the VX system.
|title||Relationship of Slots, Ports and Trunk Groups for TDM and IP Connections|
Serial and BRI connections are configured and represented differently in VX, and those types of connections are beyond the scope of this article.
In VXbuilder, TDM and IP connections must be configured as sets of Slots and Ports, which are configured in the Chassis section of the VXbuilder Configuration Tree. TDM connections are represented in the VXbuilder configuration tree Chassis element as a Slot (expansion card) and Port (cable connection). IP connections are configured under the VXbuilder configuration tree Networking element (usually as an Ethernet Adapter), however for call routing purposes, IP connections are mapped to a virtual Slot (Slot 15) and then further defined as virtual Ports. Once the Ports are configured for these connections, they can be mapped to Trunk Groups, as illustrated below.
|title||Slots and Ports for TDM and IP Connections|
To Create a Trunk Group
- In VXbuilder, select the Trunk Group element in the configuration tree (Configuration Tree > Telephony > Trunk Groups).
- Add a Trunk Group by selectnig Edit > Insert... and clicking OK.
- Double-click the new Trunk Group or select Edit > Edit... and adjust the settings as needed.
Trunk Groups must mapped to a Port or channel, otherwise no calls are routed to the Trunk Group.
To Map a Port to a Trunk Group
- In VXbuilder, add a Slot in VXbuilder in the Chassis element in the configuration tree. (Configuration Tree > Chassis).
If you are creating a virtual Slot for IP-based call equipment, the Slot number must be 15.
- Add a Port in the new Slot element (Configuration Tree > Chassis > Slot x: slot-name).
- In the configuration tree, select a Slot element (Configuration Tree > Chassis > Slot x: slot-name).
- Select a Port from the Slot x Ports list for that Slot.
- Edit the Port by double-clicking it or select Edit > Edit...
- In the Edit Slot x Port x dialog, in the TrunkGroup field, select the Trunk Group you created in the previous procedure.
Configuring Inbound Trunk Groups for IP Connections
The configuration of inbound Trunk Groups for call connections over IP networks require an additional configuration step beyond mapping a virtual Port to a Trunk Group. For inbound IP-based calls (SIP, H.323 or BSP), you must also configure a protocol-specific Inbound Call Route to map the call source to a Trunk Group. This additional configuration step allows the VX system to identify IP-based call traffic as coming from a particular call resource.
|title||Configuring Inbound Call Routes for IP Calls in VXbuilder|
|title||Inbound Call Route is Required for SIP, H.323 and BSP|
Simply creating a Inbound Trunk Group for SIP, H.323 or BSP traffic is not enough for VX to handle inbound (ingress) calls from these sources. Inbound IP-based calls must be mapped to a Trunk Group using an Inbound Call Route, otherwise inbound calls from these sources will fail.
To Map Inbound SIP Calls to a Trunk Group
- In the VXbuilder configuration tree, select the SIP Inbound Call Routing element (Configuration Tree > Telephony > SIP Inbound Call Routing).
- Add a SIP Inbound Call Route by selecting Edit > Insert... and clicking OK.
- Edit the Inbound Call Route by double-clicking it or select Edit > Edit...
- In the Address/FQDN field, enter an IP address or a fully qualified domain name (FQDN), for the SIP-based call equipment.
- In the Mask fiend, enter a subnet mask for the SIP-based call equipment.
- In the Trunk Group field, select your inbound SIP Trunk Group.
To Map Inbound H.323 Calls to a Trunk Group
- In the VXbuilder configuration tree, select the H.323 Inbound Call Routing element (Configuration Tree > Telephony > H.323 Inbound Call Routing).
- Add a H.323 Inbound Call Route by selecting Edit > Insert... and clicking OK.
- Edit the Inbound Call Route by double-clicking it or select Edit > Edit...
- In the dialog, enter an Address and Mask for the H.323-based call equipment.
- In the Trunk Group field, select your inbound H.323 Trunk Group.
To Map Inbound BSP Calls to a Trunk Group
- In the VXbuilder configuration tree, select the BSP Inbound Call Routing element(Configuration Tree > Telephony > BSP Inbound Call Routing).
- Add a BSP Inbound Call Route by selecting Edit > Insert... and clicking OK.
- Edit the Inbound Call Route by double-clicking it or select Edit > Edit...
- In the dialog, select an NodeID for the BSP-based call equipment (typically another VX node).
If the NodeID for the call resource is not listed, configure it in the Peer Table (Configuration Tree > Networking > Peer Table).
- In the Trunk Group field, select your inbound BSP Trunk Group.
Configuring Trunk Groups for Your Environment
The configuration of Trunk Groups is intentionally very flexible. Any number of Trunk Groups can be configured to represent any number of call resources from a bulk grouping of carrier lines down to a single voice channel. The question is what makes the most sense for your environment and call routing goals? This section provides some best practices and considerations for planning and configuring Trunk Groups for your environment.
Best Practice: Indicating Call Direction and Routing Control
The call routing configuration system within VX allows call routing logic to be applied to the Trunk Group bringing a call into the VX unit (the inbound or ingress call leg), using the call routing logic in the selected Call Routing Table for that Trunk Group (as described in the Overview section). The Trunk Group that sends a call out of the VX system to another piece of call equipment (the outbound or egress call leg) does not have any call routing control. For this reason, a best practice for defining Trunk Groups in VX is to always identify them as Inbound (ingress) or Outbound (egress), so that it is clear which Trunk Groups control call routing decisions and which do not.
For example, a T1 line that is both a source of calls and a destination for calls should be represented by at least two Trunk Groups, an T1 Inbound Trunk Group and a T1 Outbound Trunk Group.
|title||Inbound and Outbound Trunk Groups for a T1 Line|
This configuration makes it clear that the call routing logic for the T1 line is controlled by the Inbound T1
Trunk Group, while the Outbound T1
Trunk Group is merely a destination for calls.
Consideration: Indicating Call Source or Destination
If you are deploying VX as part of your call network, it is likely you are using more than one line or device to receive or send calls. Most organizations have some combination of Time Division Multiplexing (TDM) based devices (such as CAS, SS7, ISDN or Analog) and Internet Protocol (IP) based devices (such as SIP or H.323) deployed in their call network. Since individual devices can have different call routing requirements -- such as different call addressing schemes -- you should consider configuring your VX Trunk Groups to indicate the equipment sending or receiving calls.
For example, if your organization is operating Microsoft Office Communicator (MOC) server, an H.323 gateway and you have an AT&T ISDN line for outside calls, you might consider creating six Trunk Groups, two to represent each protocol sending calls into and receiving calls out of the VX system.
|title||Trunk Group Mapping Based on Source|
This configuration allows for a great deal of control of call routing based on the protocol of the incoming call, since you can apply a completely separate Call Routing Table to each inbound source of calls.
Grouping Call Sources or Destinations
Trunk Groups also allow you to group similar call resources, for example, one Trunk Group can be used to group carrier service lines, another Trunk Group can be used to group similar call equipment. For example, in an organization with two H.323 gateways and long distance service lines from two separate carriers, the H.323 gateways can be mapped to a single set of H.323 Gateway Trunk Groups and the long distance lines can also be mapped to a single set of Long Distance Trunk Groups:
|title||Trunk Groups Consolidating Similar Call Resources|
This configuration allows you to manage two of more similar resources as a single entity in VX. When your call network includes a large number of similar call resources, this type of configuration makes a large scale call network much easier to manage.
For organizations that are geographically dispersed, you may consider creating Trunk Groups to represent connections to global offices and call centers. For example, if your organization receives support calls at a central office and has call centers in India and the Philippines, you might consider creating outbound Trunk Groups specifically for routing calls to these call centers.
VX Peer to Peer Connection
Some voice network environments employ two or more VX units which communicate in a peer to peer relationship. The connection between two VX gateways requires a specific Trunk Group configuration, where a set of inbound and outbound Trunk Groups are created specificallly to send calls to and receive calls from the other VX peer (and then to other call end-points). For example, an organization has two VX gateways are located in different geographic locations (VX-1 is located in San Francisco and VX-2 is located in Paris) which have a bi-directional connection and use NET's BestFlow Signaling Protocol (BSP). In this case, each VX system has one inbound and one outbound Trunk Group each dedicated to communicating with its peer.
|title||VX Peer to Peer Configuration|
Consideration: Trunk Groups to Support Functions
Depending on the purpose and layout of your calling network, you may need to consider setting up Trunk Groups based on how you want to apply VX functionality, including using a script to enable Interactive Voice Response (IVR) applications or complex call routing logic.
Use of Scripts
Scripts are used to provide advanced call handling functionality such as Interactive Voice Response (IVR) phone menu applications or complex call routing logic including Active Directory lookups, number normalization, and other functions. IVR scripts -- also known as phone menus -- provide callers with interactive touch-tone or verbal menus for gathering information and routing calls. The VX system allows you so apply a script to a Trunk Group. This means that if you want to apply a script to some calls inbound to a VX unit and not others, you must set up separate Trunk Groups, for example: An organization has a 1-800 access number is associated with an ISDN line. Half the channels of the ISDN line are for 1-800 calls where an IVR script should be applied, the other half is for regular business calls. In this case the ISDN channels must be split between two Trunk Groups. The first, 1-800 Trunk Group has the IVR applied to it, and the second Trunk Group does not.
|title||Trunk Groups to Selectively Apply Scripts|
Consideration: Call Resource Management
Depending on the type of call network your organization supports, you may need to consider setting up Trunk Groups based on a high volume of calls being handled, the relative cost of your call resources or the geographic location of call handling resources. Here are some of the possible scenarios and considerations:
In a high-volume, call center environment you may need to set up Trunk Groups for load balancing of calls and maintaining high call resource availability. For example, your company may have multiple inbound call sources including a CAS line and a SIP proxy that could be routed to one of three possible call handling resources: a SIP server, a Voice T1 line and a H.323 gateway. In this case, you could set up the two inbound Trunk Groups (one for the CAS line and one for SIP) and map both these Trunk Groups to the same Call Route Table. On the egress (outbound) side you could configure three additional Trunk Groups to represent the SIP Server, Voice T1 line and H.323 gateway.
|title||Trunk Groups for Call Load Balancing|
By enabling Load Balancing for the call routes defined in Call Route Table 1, the VX would be able to load balance the incoming calls across these three call handling resources.
Managing the cost of telecommunications resources is often a consideration for organizations trying to keep their operational costs under control. By grouping high-cost call resources within one or more Trunk Groups, adminstrators can then configure call routing schemes with VX to minimize the use of high-cost telecommunications lines for calls.
For your call routing environment, you may want to indicate that a specific encoding algorithm (codec) or payload type is being used for a call source or destination, for example; The VX gateway receives calls from one or more virtual SIP ports, where each SIP port represents a different SIP proxy. The first SIP proxy supports G.711U and the second proxy support G.729 and G.723.1. In this case, you could set up two inbound Trunk Groups, called Inbound SIP G.711U and Inbound SIP G.72x, each of which are using different Media Classes, as shown in the illustration below.
|title||Using Trunk Groups to Indicate Media Type|
Setting up the Trunk Groups in this manner helps manage calls from these sources by indicating the preferred codec and potentially avoiding routing calls to devices that are incompatible with a given codec.
Trunk Groups in the VX system are a powerful way to manage call resources and routing in your call network, providing a way to represent, consolidate and subdivide your call resources in any way that you need. The inherent flexibility of Trunk Groups makes it difficult to prescribe a "correct" or "standard" Trunk Group configuration, but this article has hopefully provided some insight into how to use Trunk Groups effectively for call routing and resource management in your organization.