Business Productivity

Configuring Multi-Region Routing in Amazon Chime Voice Connector

Voice communications are often the front-line of a company’s identity. Companies require highly-available voice calling services to ensure they are always reachable by their customers. To ensure these requirements are met, businesses often build redundancy in their voice infrastructure and their connectivity to the Public Switched Telephone Network (PSTN).

This post shows how you can use multiple AWS regions to create a redundant Session Initiation Protocol (SIP) trunking solution with Amazon Chime Voice Connector.

Solution Overview

Most modern phone systems have the ability to use one or more routes for outbound calling. This capability is often used to provide an alternate path for outbound calling when the primary route is unavailable. With Amazon Chime Voice Connector, you can create voice connectors in multiple regions and use them to provide redundancy or load balancing for outbound calling.

For inbound calling, phone numbers can be associated with a single voice connector or a voice connector group. Voice connector groups allow you to add voice connectors from multiple regions and give each a priority ranking. When a number associated to a voice connector group is called, the service will attempt to deliver the inbound call to the members of the voice connector group in the order in which they are ranked. Once an inbound call is successfully routed to a member of the voice connector group, the call is routed to your voice infrastructure using the origination settings of the target voice connector.

Multi-Region Outbound Calling

Let’s look at the steps required to configure a regionally-redundant outbound calling solution using Amazon Chime Voice Connector

Diagram - Outbound calling with regional redundancy

Assumptions

  • You already have a voice connector configured and in use for outbound calling in the US East (N. Virginia) region. We’ll assume this voice connector is named VC-East
  • You will use US West (Oregon) as your second region for sending outbound calls using Amazon Chime Voice Connector. We’ll assume this voice connector will be named VC-West
  • You know how to configure your voice infrastructure for outbound failover routing

Configuration Steps

  1. From the AWS management console, select Amazon Chime
  2. Navigate to the Voice connectors tab and select the Create new voice connector button.
  3. Enter “VC-West” for the name of the voice connector, choose US West (Oregon) for the region, and choose the applicable encryption option then select Create.
  4. In the Voice connectors list, select the VC-West voice connector you created in the previous step.
  5. Select the Termination tab and change the Termination status from Disabled to Enabled. Make note of the Outbound host name as you will need this to complete the configuration on your voice infrastructure.
  6. Next, under the Allowed hosts list section select the New button and enter the public IP address or network of your voice infrastructure (in CIDR notation) then select Add. You can repeat this step for additional IP addresses or networks you may need to add.
  7. Configure the remaining termination parameters as required. In most cases, you should be able to use the same parameters that you have used on your existing voice connector.
  8. Once you’ve entered the other parameters, scroll to the bottom of the page and select Save.
  9. Lastly, configure your voice infrastructure for failover routing using the outbound host name of the newly created voice connector.

Failure Scenarios

This architecture provides a redundant outbound calling path for your phone system in the event of an outage.

Diagram - Outbound calling connectivity outage

  1. Your phone system attempts to make an outbound call using its primary route to your existing voice connector, VC-East, in the US East (N. Virginia) region. Due to a connectivity issue, your voice infrastructure is unable to connect to VC-East.
  2. Based on your voice infrastructure’s outbound failover routing configuration, it attempts to make the call using the VC-West voice connector that you created earlier in the US West (Oregon) region.
  3. Since your voice infrastructure is able to connect to the US West (Oregon) region and ultimately VC-West voice connector, the call is successfully delivered to the PSTN.

 

Multi-Region Inbound Calling

Now that you have configured regionally-redundant outbound calling, let’s look at how you can configure regional redundancy for inbound calling as well using Amazon Chime Voice Connector.

Assumptions

  • You have at least one phone number available in your Voice Connector phone number inventory. For simplicity let’s assume this number will be 646-555-1234
  • You already have a voice connector named VC-East in the US East (N. Virginia) region that you use for inbound and outbound calling; you will use this as the primary voice connector for inbound routing of the test phone number
  • You already have a voice connector named VC-West in the US West (Oregon) region that is used for outbound calling; this is what described in the previous section. You will enable inbound calling as part of the remaining configuration steps.
  • Both voice connectors will be added to a voice connector group named East-Primary

Configuration Steps

  1. From the AWS management console, select Amazon Chime
  2. Navigate to the Voice connectors tab and select the VC-West voice connector.
  3. Select the Origination tab and change the Origination status from Disabled to Enabled.
  4. Next, under the Inbound routes section select the New button and enter the information below and select the Add button:
    • Host name(s) or public IP address(es) of your voice infrastructure’s SIP hosts
    • Port
    • Protocol
    • Priority
    • Weight
  5. You can repeat the previous step to add additional SIP hosts as needed. Once you have finished adding your SIP hosts, select the Save button to update the Origination configuration.
  6. Next, navigate to the Voice connector groups tab
  7. Create a new voice connector group by selecting the Create group button. Enter “East-Primary” for the name of the group then select the Create button to create the group
  8. Select the East-Primary voice connector group, select the Actions button and then select Add.
  9. Add the voice connectors, VC-East and VC-West, to the group by selecting the checkbox for the desired voice connectors then selecting the Add button
  10. Once you have added the voice connectors to the group, you will need to give each voice connector a priority ranking. To do this, select Actions and then Edit priority. In the Priority field, enter 1 for VC-East and enter 2 for VC-West. Once you have ranked the voice connectors in the group select the Save button. NOTE: If the voice connectors are already prioritized in this order then you can skip this step.
  11. Next, select the Phone numbers tab and select the Assign from inventory button.
  12. On the next page, select the checkbox next to the test phone number (646-555-1234), and then select Assign from inventory button to assign the number to the voice connector group.

Failure Scenarios

Let’s take a look at the call flows for inbound calling during a few outage scenarios.

Diagram - Outbound Calling: Connectivity Outage

  1. A call is placed from the PSTN to your phone number 646-555-1234.
  2. The call is delivered to the East-Primary voice connector group. The first voice connector in the routing order is VC-East. Unfortunately, due to an outage, the US East (N. Virginia) region and ultimately your VC-East voice connector are unreachable.
  3. The call is automatically rerouted to the second voice connector in the order, VC-West, which was created in a different region (in this case, Oregon) where there are no impediments.
  4. Once the call is successfully routed to the VC-West voice connector, the call will be delivered to your voice infrastructure using the inbound routes configured on that voice connector.

  1. A call is placed from the PSTN to your phone number 646-555-1234.
  2. The call is delivered to the East-Primary voice connector group. The first voice connector in the routing order is VC-East.
  3. Unfortunately, due to a network connectivity issue, the VC-East voice connector is unable to reach your voice infrastructure.
  4. Using the AWS network, the call is automatically rerouted to the second voice connector in the order, VC-West in the US West (Oregon) region.
  5. Once the call is successfully routed to the VC-West voice connector, it will attempt to deliver the call to your voice infrastructure using the inbound routes configured on that voice connector.

Best Practices: Putting it all together

Now that you understand how to easily enable regional redundancy in Amazon Chime Voice Connector, let’s take a look at some best practices.

You can also scale out inbound calling by creating an additional voice connector group in which the ranking order of the voice connectors are reversed. You can then split your phone numbers across the two voice connector groups to prioritize the routing order and minimize the impact of any outages.

Diagram - Inbound Calling with regional redundancy: Phone numbers distributed across regions

Assumptions

  • Inbound calls to numbers in your New York office (ex: 646-555-1234) will be delivered to the East-Primary voice connector group. The first voice connector in the routing order is VC-East whose first inbound route is the New York office’s voice infrastructure.
  • If there is an outage along the primary inbound path for a call destined for the New York office, it is automatically rerouted to the second voice connector in the order, VC-West, which is serviced out of a different region (in this case, Oregon) where there are no impediments.
  • Inbound calls to numbers in your Seattle office (ex: 206-555-1234) will be delivered to the West-Primary voice connector group. The first voice connector in the routing order is VC-West whose first inbound route is the Seattle office’s voice infrastructure.
  • If there is an outage in the primary inbound path for a call destined for the Seattle office, it is automatically rerouted to the second voice connector in the order, VC-East, which is serviced out of a different region (in this case, N. Virginia) where there are no impediments.

Conclusion

This blog post has demonstrated how you can easily create a regionally-redundant calling solution with Amazon Chime Voice Connector and use it to provide resilient SIP-based voice communications to your organization.

As always, when introducing redundancy into any architecture you should always perform initial and periodic testing of the solution to validate that failovers occur as expected.

To learn more about Amazon Chime Voice Connector, consider reading the AWS Whitepaper: Leveraging Amazon Chime Voice Connector for SIP Trunking