opensips 2.0 a programmable sip framework · 2/1/11 opensips 2.0 a programmable sip framework...
TRANSCRIPT
![Page 1: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/1.jpg)
2/1/11
OpenSIPS 2.0a programmable SIP framework
Bogdan-Andrei IancuFounder OpenSIPS Project
![Page 2: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/2.jpg)
2/1/11
What is OpenSIPS ?!
![Page 3: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/3.jpg)
2/1/11
What is OpenSIPS:
● a SIP server....more than a proxy
● doing signaling only....not a media server
●....GPL, of course
● flexible and powerful in the same time
Where to use OpenSIPS ?
● more or less everywhere
![Page 4: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/4.jpg)
2/1/11
Where to use OpenSIPS
OpenSIPS SBC
SIP networkWild Internet
● nat traversal● security filter● SIP validation● Load balancer● dialog aware● HA
![Page 5: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/5.jpg)
2/1/11
OpenSIPSSIP Server
SIP network
● SIP router● Presence (SLA/BLA/BLF)● Back-2-Back – signaling● Call Center● Class 5 (non-media)● trunking server
●HTTP●shell●network●xmlrpc
Where to use OpenSIPS
![Page 6: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/6.jpg)
2/1/11
OpenSIPS Router
SIP networkWild Internet
● LCR● prefix routing● LNP server● GW controller● Topology Hiding
Where to use OpenSIPS
![Page 7: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/7.jpg)
2/1/11
OpenSIPSSBC
SIP network
OpenSIPSRouter
Freeswitch
cloud
The “OpenSIPS Sandwich”
![Page 8: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/8.jpg)
2/1/11
• a free VM show case of a simple provider setup
• ready to run SIP platform
• proof-of-concept o how to build a SIP platform
• reduces the learning curve
OpenSIPS DVD
![Page 9: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/9.jpg)
2/1/11
The Story
![Page 10: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/10.jpg)
2/1/11
Once upon a time there was a powerful and flexible SIP Server .......
....there was OpenSIPS doing tens of thousands CPS.
BUT....
The Story
![Page 11: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/11.jpg)
2/1/11
SIP Low level awareness
● you still need to be aware of and handle low level SIP bits and pieces (transactions, dialogs, NAT, etc) to make it work
● you cannot focus only on service creation
What to be addressed
![Page 12: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/12.jpg)
2/1/11
What to be addressed
Configuration skills
● you are required to learn the custom OpenSIPS scripting language
● you are limited to what OpenSIPS script language has to offer
● the script language is not integration friendly
![Page 13: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/13.jpg)
2/1/11
Horizontal Scalability
● cannot scale with a single instance, no matter how powerful it is
● clustering must be naturally achieved
● traffic and data sharing across all nodes in cluster
What to be addressed
![Page 14: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/14.jpg)
2/1/11
OpenSIPS 2.0 == 42
![Page 15: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/15.jpg)
2/1/11
STEP 1 – separation of SIP stack and routing logic
OpenSIPS OpenSIPS
monolithic&
mixedimplementation
Routing Engine
CoreSIP Stack
2.0 Genesis
![Page 16: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/16.jpg)
2/1/11
2.0 Genesis
STEP 2 – decouple routing & core to get separated &
independent applications
OpenSIPSOpenSIPS
Routing Engine
CoreSIP Stack
Routing Engine
CoreSIP Stack
Routing Engine
CoreSIP Stack
OpenSIPS
![Page 17: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/17.jpg)
2/1/11
Solves:
● no need to deal SIP low level, just to control and interact with it
● you can focus on service creation without taking care of SIP specific details
● achieve vertical scalability (routing logic and core may be on different machines)
● optimize the processing – the Core part (SIP stack) may automatically and transparent handle certain SIP events (like CANCEL, ACK, etc)
● core is based on an asynchronous reactor to avoid blocking during I/O ops (TCP, DB, DNS, etc)
![Page 18: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/18.jpg)
2/1/11
2.0 Genesis
Routing Engine
Network API
STEP 3 – programmable routing logic (Perl, Python, Java, etc)
Routing Engine
Routing Engine
Network API
Routing Engine
Network API
Python &modules
Perl &libs
Java &classes
![Page 19: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/19.jpg)
2/1/11
Solves:
● no more custom language for scripting – you can use your own favorite language (any)
● scripting is no more limited – you can take full advantages of the capabilities (as scripting) and already existing functionality from the ligh-level programming languages
● integration (with whatever other apps in whatever other languages) become trivial as what language is used is no more a limitation, but rather an advantage
● routing logic can be actually part of other larger application
![Page 20: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/20.jpg)
2/1/11
STEP 4 – horizontal scalability for both Core and Logic
Routing Engine
CoreSIP Stack
Routing Engine
Routing Engine
CoreSIP Stack
CoreSIP Stack
2.0 Genesis
![Page 21: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/21.jpg)
2/1/11
Solves:
● horizontal scalability – each part (core and logic) may individually scale across several machines.
● the logic will be responsible for clustering (service and data) by providing to Core part data storage support
● it is cheaper to scale (for same number of CPUs) with several machines, rather than only one
![Page 22: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/22.jpg)
2/1/11
Examples
![Page 23: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/23.jpg)
2/1/11
Intensive traffic, simple logic
CoreSIP Stack
Routing Engine
CoreSIP Stack
CoreSIP Stack
Java application forSIP trunking
Examples
![Page 24: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/24.jpg)
2/1/11
Heavy logic and integration
Routing Engine
Routing Engine
Routing Engine
CoreSIP Stack
Pythonservice
controller
Examples
![Page 25: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/25.jpg)
2/1/11
Examples
Specialized logics
Messages Routing Engine
Call Routing Engine
Presence Routing Engine
CoreSIP Stack
![Page 26: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/26.jpg)
2/1/11
Examples
Geographical Clustering
CoreSIP Stack
Routing Engine
CoreSIP Stack
CoreSIP Stack
Java abstract layer for clustering with distributed DB (P2P)
USA Europe Asia
Routing Engine
Routing Engine
Routing Engine
![Page 27: OpenSIPS 2.0 a programmable SIP framework · 2/1/11 OpenSIPS 2.0 a programmable SIP framework Bogdan-Andrei Iancu Founder OpenSIPS Project](https://reader033.vdocument.in/reader033/viewer/2022042116/5e93c8a598d8132d9f59c1ce/html5/thumbnails/27.jpg)
2/1/11
Thank you for your attentionYou can find out more at www.opensips.org
[email protected] are welcome