What is a Session Border Controller (SBC)?
The Session Border Controller (SBC) is a SIP B2BUA entity that is commonly used in the borders of network providers. The SBC receives and processes requests as a UAS, which then regenerates and sends as a UAC. In this way it is acting as an intermediary between the origin and destination of VoIP sessions. But what are an SBC’s main functions and advantages?
- Topology hiding
One of the advantages of an SBC is that it can provide topology hiding, which means that it works like a NAT, translating all IP addresses (on IP and SIP level) that the SIP messages contain, between the core (private network) and public side. In this way, the core network can be protected, since it can keep its “identity” private.
An SBC can be considered as a “SIP/RTP Firewall”. It protects the core network from unwanted messages with the help of access-lists (on IP and SIP level) as well as it provides admission control in order to put restrictions in the VoIP traffic (for example restrict the amount of concurrent calls, in order not to overload the network). Such restrictions help also in the protection of the network from attacks, for example DoS attacks. Finally different traffic policies can be applied in order to control better the RTP/media traffic.
An SBC usually provides the possibility to change/manipulate the SIP messages that are coming through it. That means that an SBC can change the content of the SIP messages by manipulating the SIP or SDP headers. This functionality is particularly useful in order to achieve interoperability between different vendor implementations.
This post covered the most essential and basic functionalities in an SBC. There are many more purposes that an SBC serves, for example billing, quality-of-service, policy-based routing, etc.
- A Basic SIP Call Flow (telconotes.wordpress.com)
- Introduction to SIP (telconotes.wordpress.com)
- VoIP Basics (telconotes.wordpress.com)