I have a small home server (a ARM64 Rock64 4GB RAM) and am wondering if I want to install a sip server and/or a xmpp server.

In the sip case I would like to know if it can handle many active users connections (on the xmpp part I already know it can handle approximately maximum 3000 users).

So, to make my decision, I would like know:

For a sip connection between two clients, is the server used for all the traffic of the sip call OR is the sip server only used for establishing the connection between sip clients and then the sip traffic goes directly from one client to another client?

Thank you

  • Ok, thank you. Just because I said home server doesn't mean it is not a business. Jun 6, 2019 at 13:29

1 Answer 1


The actual SIP protocol just negotiates the connection, and the actual call is transferred over RDP, usually directly between endpoints.

For a direct connection to work, they must be able to reach each other, which usually means NAT traversal. Some SIP servers can set this up for you, by verifying that the endpoint has a deterministic mapping for UDP ports, and then using that mapping during connection setup.

Other SIP servers always terminate the call locally, which pulls all the traffic to your server, but enhances users' privacy because their peers can no longer see their IP address.

A typical server for the first category is "ser", the Sip Express Router. This is routing only, and cannot even terminate calls, but it is very good at avoiding being in the middle of a conversation.

Asterisk, on the other hand, will always terminate calls locally. You can often install both of them on the same machine by giving a different port number to Asterisk, setting it up so it is reachable only locally (i.e. bind to, and having ser do the complex connection setup.

  • Thank you for the complete answer. Opensips falls under the 1st or 2nd category? And how about kamailio? Jun 6, 2019 at 12:15

Not the answer you're looking for? Browse other questions tagged or ask your own question.