SIP trunking
Session Initiation Protocol (SIP) trunking is a digital communications technology that allows businesses to make phone calls over the Internet instead of traditional phone lines. Instead of using physical wires, SIP trunking sends voice data over the internet as packets of information. This can save businesses money on long-distance and international calls. SIP trunking also allows businesses to have greater flexibility and scalability in their phone systems as they can easily add or remove lines as needed. SIP trunking offers a more modern and efficient way for businesses to communicate with their customers and employees.
Businesses typically use SIP trunking for:
- Cost savings: SIP trunking can save businesses money on long-distance and international calls
- Scalability: SIP trunking allows businesses to easily add or remove lines as needed, making it a scalable solution for growing businesses
- Business continuity: SIP trunking can provide redundancy and failover options, ensuring that businesses can continue to make and receive calls even during an outage
To use SIP trunking, a business needs:
- An IP-based Private Branch Exchange (PBX) system - this is the phone system that manages internal and external calls - or an SBC (Session Border Controller) - which acts as a firewall between your business's internal network and the internet
- A reliable internet connection: since SIP trunking relies on the internet to make and receive calls, a stable and fast internet connection is crucial
Use cases with SIP trunking
Multiple usage scenarios can be considered:
Global reach and connectivity | Outbound (termination) |
Use your SIP infrastructure to send call requests to the Infobip platform that we terminate on PSTN destinations across the world. Infobip offers the widest reach of connectivity on the planet, with more than 200 countries in its global reach and nine geographically dispersed data center locations accepting your SIP trunk connections in self-service. |
Inbound (origination) |
Rent local DID numbers from Infobip, and calls received on these numbers are forwarded to your SIP infrastructure. |
|
Programmable SIP | SIP trunk management | Although SIP trunks can be fully managed from the Infobip web interface, you can integrate and automate the management of your trunks using our API (create, update, and delete). |
Your voice application | When using our Calls API platform to develop a voice application that implements your exact scenario, your application will be able to process inbound calls coming from your SIP trunks as well as create outbound calls to SIP endpoints. |
Supported SIP trunk types and characteristics
Infobip supports the following SIP Trunk types:
SIP Trunk type | Configuration | Authentication | Flexibility | Security |
---|---|---|---|---|
Static | Requires manual configuration of the trunk settings such as IP address and port number | Uses IP-based authentication where Infobip trusts traffic from your declared IP addresses | Changes to your or our IP addresses require manual configuration updates | Relies on IP-based authentication |
Registered (Coming soon) | Configured dynamically through the registration process between your PBX/SBC and our servers | Uses username and password authentication to validate the PBX/SBC's identity | Only changes to our IP address may require reconfiguration on your SBC/PBX | Additional layer of security through the enforcement of username and password |
SIP trunk channels and related billing plans
When creating a SIP trunk, whether static or registered (once available), you need to define the number of channels to be allocated. A channel represents a single concurrent call, so a 10-channel trunk means 10 concurrent calls can take place at any moment in time, whether inbound and/or outbound. Calls submitted to the trunk when the trunk has reached its channel capacity will be rejected.
You can choose between two different channel plans: metered or unlimited.
Metered channel plan
With the metered plan, the pricing per channel is unique whatever the call destination or location of the SIP trunk (Infobip hosting data center).
The voice traffic (between Infobip and the telco operators) is billed by usage, whatever the destination or origination.
Technical requirements
SIP methods
The following SIP methods are currently supported:
- INVITE and reINVITE
- ACK
- BYE
- CANCEL
- OPTIONS
Transport
The following transport mechanisms are supported:
- UDP (User Datagram Protocol): a connectionless transport mechanism to transmit voice data between endpoints. It is a lightweight and fast protocol that doesn't require any handshaking or acknowledgment of received packets, which makes it ideal for real-time applications like voice calls. However, UDP is also less secure than other protocols, as it doesn't provide encryption or authentication of packets.
- TLS/SRTP: TLS (Transport Layer Security) and SRTP (Secure Real-time Transport Protocol) are more secure transport mechanisms that use encryption and authentication to protect against eavesdropping, tampering, and other security threats. TLS is a protocol that encrypts the SIP signaling traffic between the PBX and our infrastructure, while SRTP encrypts the voice traffic itself. Both TLS and SRTP require a handshake and verification process between endpoints, which can cause some latency and overhead, but provide higher security and privacy.
Codecs and transcoding
Type | Support |
---|---|
Media |
G.711a (PCMA): high-quality audio with low latency (8khz sample rate and 64kbps bit rate) |
G.711µ (PCMU): high-quality audio with low latency (8khz sample rate and 64kbps bit rate) |
|
G.729: for networks with limited bandwidth, requires additional processing power (8khz sample rate and 8kbps bit rate. Uses a compression algorithm to reduce the bit rate while maintaining acceptable audio quality) |
|
DTMF |
RFC2833: sends DTMF separately from the audio stream using dedicated RTP (Real-Time Transport Protocol) event message. Allows for more precise transmission of the DTMF signals, and better compatibility with various network configurations and PBX systems. Increases the overall bandwidth usage and may require additional setup and configuration. |
Inband DTMF: DTMF signals are transmitted as part of the audio stream, using the same frequency range as the voice data. Simple and widely supported, but can lead to distortion or clipping of the audio signal, particularly in low-bandwidth or noisy environments. |
|
Fax |
T38: separates the fax signal from the audio signal and transmits it as a separate stream using UDP or TCP. Most reliable and error-free. |
Inband: transmits fax data as part of the audio stream using the same frequencies as voice data. Can lead to error and distortion in low-bandwidth or noisy environments. |
Custom headers
The following custom headers will be recognized and processed by our platform when you send us requests over SIP:
Custom Header |
Use Case |
---|---|
X-Client-Message-ID | Your unique call ID, when you send us calls to terminate over PSTN destinations. You can later use this value when you want to fetch call logs. |
X-IB-Application-Id | When developing an application using Calls API and this application needs to process inbound calls you will send us over SIP, specify the application identifier (applicationId) of your application in this header. |
SIP trunking redundancy
Infobip provides multiple levels of redundancy for SIP Trunks and routing of DID to SIP. At a high level, these capabilities fall into three categories.
Infobip SBC redundancy | For each SIP Trunk you order, Infobip provisions the trunk on two geographically-redundant SBCs within its core network. Upon failure of the primary SBC, calls automatically route to/from the secondary SBC. This capability is currently limited to Infobip's USA data centers. |
---|---|
Your SBC/PBX redundancy |
Static SIP trunks can be defined with multiple destination IPs (fixed public IPs that are exposed by you) and distribute calls according to your chosen policy (such as round-robin or failover). If you have redundant infrastructure in your network, you may also order multiple SIP trunks and source calls from either SIP Trunk. |
Infobip Call Routing |
If you have redundant infrastructure in your network, you may order multiple SIP trunks. Infobip call routing allows you to define routes that consist of SIP trunks and phone number entries. You can have up to 10 entries in a route. Incoming calls to an Infobip DID can be forwarded to a designated route and thereby trigger a hunting sequence. When building your route in Infobip call routing, the last entry in your route can be a phone number. Upon loss of connectivity to your SIP trunks defined in that route, calls destined to the DID will automatically be forwarded to the number you designate. There is no additional charge for using Infobip call routing, but regular per-usage rates apply for the traffic resulting from routing. For more information, see Call routing. |
Service address
Service address, also called Place of Primary Use (PPU), is the physical location where the SIP trunk service is primarily used or where the majority of the service is consumed. Specifically, it is the location of your SIP terminating equipment (SBC, PBX) connected to Infobip data centers. It is an important concept for regulatory and taxation purposes in the telecommunications industry, especially in countries such as the United States, for the following reasons:
- Taxation: telecommunications services in the United States are subject to various taxes and fees imposed at the federal, state, and local levels. The specific tax rates and regulatory requirements can vary based on the location where the service is being utilized. By specifying the service address or primary place of use, service providers can accurately determine the applicable taxes and ensure compliance with tax regulations.
- Regulatory Compliance: the telecommunications industry in the United States is regulated by various federal and state agencies. Compliance with these regulations is essential to ensure fair competition, consumer protection, and adherence to industry standards. The service address information helps service providers demonstrate compliance with regulatory requirements and jurisdictional boundaries.
- Jurisdictional Boundaries: telecom services can have jurisdictional implications, especially when crossing state or local boundaries. Determining the service address helps determine which regulatory requirements apply and ensures that services are appropriately governed and regulated based on the specific jurisdiction in which they are being provided.
For customers planning to consume SIP trunking services in the United States (PPU is in the United States independent of the Infobip datacenter to which you are connecting), it is mandatory to have a service address associated with your site trunk. For customers configuring SIP trunks outside of the United States with a PPU outside of the United States, associating a service address to a trunk is not mandatory but strongly recommended for documentation purposes.
Managing service addresses
You can manage service addresses using the Infobip web interface. Log in to your account and go to Channels and Numbers → Voice → SIP Trunking → Service Addresses.
Note the following:
- The same service address can be associated with multiple SIP trunks
- A service address can not be deleted as long as it is associated with at least one SIP trunk
- When a SIP trunk has been created, you may not change the associated service address
The association of a service address to a SIP trunk is performed during the definition of the trunk.
Setting up a static trunk
Static trunks can be created and managed both via the Infobip web interface and over API.
When you create a static trunk, it exposes public, fixed IP addresses. The following schema helps to clarify what is meant by source IPs and destination IPs.
If a SIP trunk definition does not include at least one source IP, then SIP traffic cannot be sent from your equipment to the Infobip infrastructure. Similarly, if a SIP trunk definition does not include at least one destination IP or FQDN, then incoming voice traffic to the Infobip platform can't be forwarded over your SIP trunk.
Using the Infobip web interface
SIP trunks are managed from the Infobip web interface. Go to Channels and Numbers → Voice → SIP Trunking.
If you intend to create a trunk in one of our USA data centers and/or have your Primary Place of Use (PPU) in the United States, ensure that you declare a service address first (see Service addresses).
Choose plan and options
First, choose between a Metered or Unlimited channel plan. For more information about these channel plans, see SIP trunk channels and related billing plans. Note that the "Unlimited US Domestic" channel plan will be released later in 2023.
Select the number of required channels.
Trunk settings
Complete the SIP trunk details. All fields are mandatory:
- SIP Trunk name: the name you wish to allocate to your new SIP trunk. This name will also be used as a reference in your invoice.
- SIP Trunk type: choose static. See Supported-sip-trunk-types-and-characteristic to understand the differences between static and registered trunks.
- Datacenter location: choose the Infobip data center in which the trunk should be provisioned
- Service address: the service address or Place of Primary Use (PPU) for your SIP equipment
- Equipment Location: the service location for your SIP equipment
- TLS encryption: enables to choose between UDP (TLS disabled) or TSL/SRTP (TLS enabled)
- Codec: add all of the CODECs you want to utilize on this SIP trunk. If you add multiple CODECs you can order them into your preferred priority
- DTMF: select how DTMF transcoding will be handled
- Fax: specify your preferred protocol for the transmission of fax calls
- Number format: choose the numbering format you want for this trunk:
- NATIONAL: 10-digit format, such as 13124441212
- E.164: 10-digits format with leading +, such as +13124441212
- US DOMESTIC: only available for traffic to/from US numbers. US Domestic is like 3124441212
- International calls: choose whether to block or allow calling to international numbers on this trunk. We consider a call to be international when A and B numbers are from different countries.
- SIP Options: request Infobip to send SIP Options to your SIP equipment. The sending interval is fixed to 60 seconds.
SIP OPTIONS
Infobip always answers to SIP options that you send towards our infrastructure. The response sent back is always a 200 OK.
For SIP OPTIONS, Infobip sends towards your infrastructure. If the SIP OPTIONS polling determines that your trunk is out of service, although that status is known to our infrastructure and taken into account for call routing, the OPTIONS status is not reflected on the Infobip web interface nor via the SIP trunk status API method.
IP configuration
Enter the list of source and destination IP addresses / FQDNs.
For destination IPs, if you do not have multiple redundant network elements, simply add your static IP, with the default SIP port of 5060. If you enter more than a single IP/FQDN, you may select the routing strategy that will be applied:
- Failover: when sending calls to your SIP equipment, we will select destination IPs in the order they are configured. If the first IP is unavailable, we will select the next one, and so on.
- Round robin: when sending calls to your SIP equipment, we will select destination IPs in the order they are configured. Round robin is best used with symmetrical trunks (that is, trunks with the same capacity).
For source IPs, specify all the IP addresses from which you will source traffic to our network. These may be different from the destination IPs.
Review order
Review all settings, then go on with the confirmation of the trunk creation. You may navigate back to previous steps if you wish to change any value.
When you click Pay now, your Trunk displays as PENDING status until the order is confirmed and the trunk has been provisioned on our infrastructure. In the case of failed provisioning, you may edit the failed trunk to correct its definition and resubmit it, or delete it and start over. Your account must be provisioned with enough credits or funds for the subscription to complete.
Once the trunk is created, a confirmation window displays. This window lists the IP addresses of our primary and backup SBCs (see SIP trunking redundancy). You should safelist the Infobip SBC IP addresses on your infrastructure to ensure the traffic can be processed on both sides.
Using API
For more information about the API methods used for managing locations and SIP trunks, see Calls API platform.
Understanding SIP trunk status
Status class | Status value | Description | Applies to |
---|---|---|---|
Administrative |
ENABLED | The SIP trunk is enabled for use by the user | Static & Registered trunks |
DISABLED |
The SIP trunk is disabled for use by the user. Calls sent to this trunk will not be processed. For registered trunks, setting the administrative status to disabled will force the deregistration of any registered clients. |
Static & Registered trunks | |
SYSTEM_DISABLED |
The SIP trunk has been disabled by the system and cannot be re-enabled by the user unless the root cause has been fixed. When the root cause is fixed, the trunk will be transitioned back to the disabled state. From that moment, the user can re-enable the trunk as required. |
Static & Registered trunks | |
Registration | REGISTERED | At least one client is registered on the trunk | Registered trunks |
UNREGISTERED | No client is registered on the trunk | Registered trunks | |
Action |
PENDING | The submitted action (create, edit) has been submitted and its status is pending. No further action can be submitted until this action completes. | Static & Registered trunks |
SUCCESS | The submitted action (create, edit) has been successfully completed or applied | Static & Registered trunks | |
RESET | The submitted action (edit) could not be completed and the trunk has been restored to its pristine state | Static & Registered trunks | |
FAILED | The submitted action (edit) could not be completed and the outcome has turned the trunk into an unusable state. No traffic is allowed on this trunk and the only possible user action is to delete the trunk definition. | Static & Registered trunks |
Infobip SBC locations
When creating a SIP trunk the system will return the primary and secondary Infobip SBC IP addresses you should configure on your environment.
For documentation, here is the list our main SBC IP addresses by data center.
Location Name | Geography | Infobip SBC Address |
---|---|---|
FRANKFURT | Frankfurt, Germany | 62.140.31.124 |
BOGOTA | Colombia | 81.23.252.124 |
NEW_YORK | New York, US | 185.255.9.23 |
SAO_POLO | Sao Paolo, Brazil | 81.23.253.104 |
SINGAPORE | Singapore | 81.23.254.103 |
JOHANNESBURG | Johannesburg, South Africa | 202.22.162.104 |
MOSCOW | Moscow, Russia | 202.22.163.127 |
ISTANBUL | Istanbul, Turkey | 202.22.169.124 |
KUALA_LUMPUR | Kuala Lumpur, Malaysia |
202.22.165.100 |
Setting up call routing
In this context, you rent one or several numbers from Infobip and would like calls received on these numbers to be forwarded to your telephony equipment over your newly created SIP trunk(s). Use Infobip call routing to implement this type of scenario.