SlideShare a Scribd company logo
Snappy Kamailio
from 0 to … with snaps
(snapcraft.io)
TADHack Global - Berlin
October 2016
Daniel-Constantin Mierla
asipto.com
@miconda
Goal
• make Kamailio friendly to be built as a snap and run it
yesterday at noon
• first look at snapcraft.io following the Ubuntu TADHack resources
• http://tadhack.com/2016/global/developer-resources/
Kamailio
• www.kamailio.org
• open source SIP server
• IETF - RFC3261
• developed since 2001
• aka SIP Express Router (SER) or OpenSER
• UDP, TCP, TLS, SCTP - IPv4 and IPv6
• telephony engine, voice, video, instant messaging, presence
• high capacity (large number of devices or number of active calls)
• IMS and VoLTE extensions
• load balancer, least cost routing, DID routing, AAA, SIP firewall, …
snapcraft.io
• Package any app for every Linux desktop, server, cloud or
device, and deliver updates directly.
• How do snaps work?
• A snap is a fancy zip file containing an application together
with its dependencies, and a description of how it should
safely be run on your system, especially the different ways it
should talk to other software.
• Most importantly snaps are designed to be secure,
sandboxed, containerised applications isolated from the
underlying system and from other applications. Snaps allow
the safe installation of apps from any vendor on mission
critical devices and desktops
First touch
• snapcraft file
• yaml format
• easy to understand
• documentation - some improvements won’t hurt for sure
• conclusion: not hard to get started with
Challenges
• sorting out how to set or release the restrictions
• what an application is allowed to do
The Work With Stock Kamailio
• snapcraft.yml - not hard to get first version
• there are some examples on snapcraft.io to inspire from
• 4 patches to make it friendly to build and run as a snap
• temporary files in runtime directory
• fifo and control socket files
• creating raw sockets
• disabled
• dedicated starting script
• changes to kamailio.cfg have to be done from starting script
• moving from SNAP dir to SNAP_DATA dir
The Commits
Future Work
• deploy the tools in the snap
• kamctl, kamcmd, …
• inter-working with other snaps
• mysql server, …
• performance evaluation
• snaps, containers, virtual machine and bare metal
Results
• available at:
• https://github.com/miconda/kamailio-snapcraft
Thank You!
Daniel-Constantin Mierla
asipto.com
@miconda
TADHack Global - Berlin
October 2016

More Related Content

PDF
Kamailio :: A Quick Introduction
PDF
Kamailio - Large Unified Communication Platforms
PDF
Kamailio - The Story for Asterisk
PPTX
FreeSWITCH as a Kickass SBC
PDF
FOSS Sthlm: Realtime Communication Update
PDF
Kamailio on Docker
PDF
SIP Testing with FreeSWITCH
PDF
Introduction to FreeSWITCH
Kamailio :: A Quick Introduction
Kamailio - Large Unified Communication Platforms
Kamailio - The Story for Asterisk
FreeSWITCH as a Kickass SBC
FOSS Sthlm: Realtime Communication Update
Kamailio on Docker
SIP Testing with FreeSWITCH
Introduction to FreeSWITCH

What's hot (20)

PDF
Kamailio with Docker and Kubernetes
PDF
Media Handling in FreeSWITCH
PDF
Kamailio World 2018: Having fun with new stuff
PDF
Scaling FreeSWITCH Performance
PDF
TAD Summit 2016 - The Mobile World Up Side Down
PDF
Rethinking the PBX
PDF
ICE: The ultimate way of beating NAT in SIP
PDF
WebRTC and Janus intro for FOSS Stockholm January 2019
PDF
Astricon 10 (October 2013) - SIP over WebSocket on Kamailio
PDF
FreeSWITCH on Docker
ODP
Expanding Asterisk with Kamailio
PDF
Freeswitch
PDF
FreeSWITCH as a Microservice
PDF
Developing rich SIP applications with SIPSIMPLE SDK
PPT
Astricon 2010: Scaling Asterisk installations
PDF
The Future of the PBX
PPTX
High Availability Asterisk and FreePBX on Microsoft Azure
PDF
From SIP to WebRTC and vice versa
PPTX
Asterisk Deployments
PDF
SIP and DNS - federation, failover, load balancing and more
Kamailio with Docker and Kubernetes
Media Handling in FreeSWITCH
Kamailio World 2018: Having fun with new stuff
Scaling FreeSWITCH Performance
TAD Summit 2016 - The Mobile World Up Side Down
Rethinking the PBX
ICE: The ultimate way of beating NAT in SIP
WebRTC and Janus intro for FOSS Stockholm January 2019
Astricon 10 (October 2013) - SIP over WebSocket on Kamailio
FreeSWITCH on Docker
Expanding Asterisk with Kamailio
Freeswitch
FreeSWITCH as a Microservice
Developing rich SIP applications with SIPSIMPLE SDK
Astricon 2010: Scaling Asterisk installations
The Future of the PBX
High Availability Asterisk and FreePBX on Microsoft Azure
From SIP to WebRTC and vice versa
Asterisk Deployments
SIP and DNS - federation, failover, load balancing and more
Ad

Similar to Snappy Kamailio (20)

PDF
TADHack Winner: Snappy Kamailio: Carnival of the Creators
PDF
Fuzzing RTC @ Kamailio World 2019
PDF
Spinnaker workshop
PDF
Stackato v6
PPTX
DockerDay2015: Keynote
PPTX
Open Source Investments in Mainframe Through the Next Generation - Showcasing...
PDF
Ubuntu Core 技术详解
PPTX
Top 5 benefits of docker
PDF
Stackato
DOC
Srikanth_PILLI_CV_latest
PDF
DEF CON 27 - workshop - RICHARD GOLD - mind the gap
PPTX
Modern Software Development
PDF
Linux Distribution Collaboration …on a Mainframe!
PDF
An Introduction to the Model-View-Controller Pattern
PDF
Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...
PDF
Web Application Detection with SNORT
PDF
PyData Boston 2013
PPTX
Advanced Internet of Things firmware engineering with Thingsquare and Contiki...
PDF
Stackato v4
PDF
UplinQ - ubuntu linux on the qualcomm® snapdragon™ 600 processor
TADHack Winner: Snappy Kamailio: Carnival of the Creators
Fuzzing RTC @ Kamailio World 2019
Spinnaker workshop
Stackato v6
DockerDay2015: Keynote
Open Source Investments in Mainframe Through the Next Generation - Showcasing...
Ubuntu Core 技术详解
Top 5 benefits of docker
Stackato
Srikanth_PILLI_CV_latest
DEF CON 27 - workshop - RICHARD GOLD - mind the gap
Modern Software Development
Linux Distribution Collaboration …on a Mainframe!
An Introduction to the Model-View-Controller Pattern
Provisioning Windows instances at scale on Azure, AWS and OpenStack - Adrian ...
Web Application Detection with SNORT
PyData Boston 2013
Advanced Internet of Things firmware engineering with Thingsquare and Contiki...
Stackato v4
UplinQ - ubuntu linux on the qualcomm® snapdragon™ 600 processor
Ad

More from Daniel-Constantin Mierla (19)

PDF
FOSDEM 2017 - RTC Services With Lua and Kamailio
PDF
Kamailio Updates - VUC 588
PDF
Designing High Performance RTC Signaling Servers
PDF
Kamailio - Surfing Big Waves Of SIP With Style
PDF
SIP Server Optimizations for Mobile Networks
PDF
Kamailio and VoIP Wild World
PDF
Kamailio - API Based SIP Routing
PDF
Kamailio - Secure Communication
PDF
Kamailio - SIP Routing in Lua
PDF
10 Years SER - Awards
PDF
Sculpturing SIP World
PDF
CPDL - Charging Plan Definition Language
PDF
SER - SIP Express Router
PDF
SIP Router Project
PDF
Kamailio - Unifying SIP and Web Worlds with Lua
PDF
Kamailio - SIP Servers Everywhere
PDF
Kamailio - SIP Firewall for Carrier Grade Traffic
PDF
Kamailio - Load Balancing Load Balancers
PDF
Aynchronous Processing in Kamailio Configuration File
FOSDEM 2017 - RTC Services With Lua and Kamailio
Kamailio Updates - VUC 588
Designing High Performance RTC Signaling Servers
Kamailio - Surfing Big Waves Of SIP With Style
SIP Server Optimizations for Mobile Networks
Kamailio and VoIP Wild World
Kamailio - API Based SIP Routing
Kamailio - Secure Communication
Kamailio - SIP Routing in Lua
10 Years SER - Awards
Sculpturing SIP World
CPDL - Charging Plan Definition Language
SER - SIP Express Router
SIP Router Project
Kamailio - Unifying SIP and Web Worlds with Lua
Kamailio - SIP Servers Everywhere
Kamailio - SIP Firewall for Carrier Grade Traffic
Kamailio - Load Balancing Load Balancers
Aynchronous Processing in Kamailio Configuration File

Recently uploaded (20)

PDF
Approach and Philosophy of On baking technology
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Modernizing your data center with Dell and AMD
PDF
KodekX | Application Modernization Development
PDF
Electronic commerce courselecture one. Pdf
PPT
Teaching material agriculture food technology
PDF
cuic standard and advanced reporting.pdf
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
Machine learning based COVID-19 study performance prediction
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
Cloud computing and distributed systems.
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Approach and Philosophy of On baking technology
Agricultural_Statistics_at_a_Glance_2022_0.pdf
NewMind AI Weekly Chronicles - August'25 Week I
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Modernizing your data center with Dell and AMD
KodekX | Application Modernization Development
Electronic commerce courselecture one. Pdf
Teaching material agriculture food technology
cuic standard and advanced reporting.pdf
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Machine learning based COVID-19 study performance prediction
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
The AUB Centre for AI in Media Proposal.docx
Cloud computing and distributed systems.
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
20250228 LYD VKU AI Blended-Learning.pptx
Spectral efficient network and resource selection model in 5G networks
Build a system with the filesystem maintained by OSTree @ COSCUP 2025

Snappy Kamailio

  • 1. Snappy Kamailio from 0 to … with snaps (snapcraft.io) TADHack Global - Berlin October 2016 Daniel-Constantin Mierla asipto.com @miconda
  • 2. Goal • make Kamailio friendly to be built as a snap and run it yesterday at noon • first look at snapcraft.io following the Ubuntu TADHack resources • http://tadhack.com/2016/global/developer-resources/
  • 3. Kamailio • www.kamailio.org • open source SIP server • IETF - RFC3261 • developed since 2001 • aka SIP Express Router (SER) or OpenSER • UDP, TCP, TLS, SCTP - IPv4 and IPv6 • telephony engine, voice, video, instant messaging, presence • high capacity (large number of devices or number of active calls) • IMS and VoLTE extensions • load balancer, least cost routing, DID routing, AAA, SIP firewall, …
  • 4. snapcraft.io • Package any app for every Linux desktop, server, cloud or device, and deliver updates directly. • How do snaps work? • A snap is a fancy zip file containing an application together with its dependencies, and a description of how it should safely be run on your system, especially the different ways it should talk to other software. • Most importantly snaps are designed to be secure, sandboxed, containerised applications isolated from the underlying system and from other applications. Snaps allow the safe installation of apps from any vendor on mission critical devices and desktops
  • 5. First touch • snapcraft file • yaml format • easy to understand • documentation - some improvements won’t hurt for sure • conclusion: not hard to get started with
  • 6. Challenges • sorting out how to set or release the restrictions • what an application is allowed to do
  • 7. The Work With Stock Kamailio • snapcraft.yml - not hard to get first version • there are some examples on snapcraft.io to inspire from • 4 patches to make it friendly to build and run as a snap • temporary files in runtime directory • fifo and control socket files • creating raw sockets • disabled • dedicated starting script • changes to kamailio.cfg have to be done from starting script • moving from SNAP dir to SNAP_DATA dir
  • 9. Future Work • deploy the tools in the snap • kamctl, kamcmd, … • inter-working with other snaps • mysql server, … • performance evaluation • snaps, containers, virtual machine and bare metal
  • 10. Results • available at: • https://github.com/miconda/kamailio-snapcraft Thank You! Daniel-Constantin Mierla asipto.com @miconda TADHack Global - Berlin October 2016