How easier would it be if there was an infrastructure that could connect all devices all communication protocols, old legacy PSTN phones, VOIP ones like SIP all the PBXs of the world, GSM handsets even the very new WebRTC! I have assembled my thoughts on an ideal communication platform in this blog post.
Functional Req :
- 1 on 1 calls
- Group Calls
Non Functioanl Req :
- No latency , no buffering
- Data loss is ok , Straeming protocols can absord droppped frames
- HA ( high avaialiability )
Mid Scale RTC Application
One to One Call
High Level archietcture
Large Scale / Enterprise Communication Platform using SIP and GSM
It involves GSM PLMN PBX IP with their respective gateways, meeting at a particular point that understands all protocols and provides a single registry service for telecom network operations like OSS ( Operation Service), BSS ( Billing service ).
Embedding a bit from NGN ( next generation network) , since I like the concept of softswitch ( Signalling gateway + Media Gateway controller ) .
All the above should connect to an IP network . why ? Because the future lies in IP telephony . Also because it becomes easier to make provisioning system for the admin to add new policies , review real-time statistics and for the users to avail new servers and customize their services settings any time .
Ofcourse there will arise codec inter- operability issues, firewall ICE issues so on … yet all great inventions start with an idea , dont they 🙂
Also Read the follow up post on a practicle Sclaable VoIP platform building ( written years later )
which discusses Multi-tier cluster architecture for VoIP provider
- Multi geography Scaled RTC platform + Universal Router
- Clusterd SIP telephony Server -> High Availability
- Containerrization + auto reboot -> Failure Recovery
Role Abstraction / Micro-Service based architecture
- Load Balancer/ Message Dispatcher
- Backend Dynamic Routing and REST API services
- OSS/BSS layer
Distributed Event management and Event-Driven architecture
Autoscaling Cloud Servers
- ScaleUP / Vertical Scaling
- Scale OUT / Horizontal scaling
- Open standards and Data Privacy
Feedback and Proactive Issue Tracking
- Pro-active Call Analysis
- Predicting Low Audio / Call quality
It also touches upon the importance to
- Develop on programmer-friendly , ease to use and interactive and populator frameworks like webRTC
- Social Media Platform Integration such as Skype for Business, Slack, WebEx
- Product Innovation and Market Differentiator, Competitive Pricing with Low or No Servicing cost
- Flexibility for inter-working
Scalable and Flexible platform. Let’s go in-depth to discuss how can one go about achieving scalability in SIP platforms. ulti geography Scaled via Universal Router, Cluster SIP telephony Server for High Availability, Multi-tier cluster architecture, Role Abstraction / Micro-Service based architecture, uted Event management and Event Driven architecture , Containerization, autoscaling , security , policies and market differentiator, ticketing and issue tracking.