SIP (Session Initiation Protocol) is a free IP telephony standard developed by the international community of IETF. Its development began in 1996, and in November 2000 it was approved as a signaling protocol in 3G systems and the main protocol of the IMS (IP Multimedia Subsystem) architecture. Now almost everywhere where there is a telephone connection based on IP, this standard is very likely applied. Your telephone operator may well use SIP and allow you to connect to it using this protocol.
So, let;s figure out what is SIP protocol and SIP trunking for dummies?
Open Protocol SIP
The openness of the protocol means that all of its specifications are publicly available, it does not have a right holder, and nobody should pay for its use. Any developer can implement SIP support in his product, and this product will be compatible with other SIP devices and software. Another result of SIP openness is security. The protocol does not represent a “black box”. All his actions are understandable and predictable.
In SIP, there is also no single registration and management node; there are many different servers-registrars. You can give an analogy with email or XMPP accounts. In addition, any organization or the individual user can create his own server and not depend on external registrars and the Internet in general, for example for VoIP communication within the local network.
Free Registration of a SIP account
Registration on a public SIP provider is generally free, as well as the calls to any SIP addresses, but almost all providers provide a paid service to access traditional telephone networks. Due to competition, prices are low, and the user can see and compare the rates on the provider’s websites. This is probably the cheapest way to call abroad.
Another advantage of SIP is that you can call from many countries by local access numbers, while for you this will not cost anything, and for the caller – like a normal telephone conversation inside the country. We will talk about this little bit later.
Any SIP address (sip URI) consists of the user name and server address, and is similar to email, for example, [email protected] or [email protected] Sometimes the port is also indicated if it differs from the standard one: [email protected]: 5678. You can have an unlimited number of SIP accounts on one or different servers for different purposes.
To establish communication, subscribers do not necessarily have to be on the same server. At the same time, during the conversation, their customers can connect directly to each other, providing an optimal route for media coverage and minimum delays. The connection process usually takes no more than a second. In the graphical representation, it looks something like this: http://ru.wikipedia.org/wiki/File:Sample_S_SIP.JPG
To join SIP-telephony, you need to select a registrar and a client. Since SIP is an open standard, there are a lot of software and hardware clients that are compatible with each other and with servers. If you have Windows PC and you’re completely new in this topic, you can rely on the user feedback on the Internet. It almost does not have to be adjusted, but this option imposes some restrictions (impossibility to change the SIP provider, not very convenient set of external addresses and other subtleties), so if possible, I advise you to master universal options.
Different registrars can provide a different set of services and amenities. Some are more focused on calls to the telephone network (PSTN termination), the others provide more online services. Choose the one that suits you best or use several at once, for SIP it is quite normal practice. The geographical position of the registrar is of no great importance since the media traffic between clients in most cases will still go directly.
The registration is made directly from the website, after which you get the number, password, data to connect (or download the program with presets) and can immediately use your SIP account. Calls within the network, to other networks and from them, from the ordinary telephone network through the gateways – are free of charge. You do not need to specify any means of payment, if you do not expect to call ordinary city/cell numbers, contain a personal direct access number or use some other exotic services.
When setting up an account in the client, the basic parameters are your number (login), password and server address for connection (sip proxy). Sometimes the STUN server is also specified. This is a special protocol for facilitating work in NAT environments. In addition, modern servers allow you to do without it, in some cases, it makes sense to apply it.
After a successful connection, you will want to test your client. Almost all registrars have service numbers for verification, a list of which they have on the site. In this case, the most useful is the “echo test” or auto responders with recording and subsequent playback.
Often such numbers work only within the network, but there are also open ones accessible from everywhere, for example:
[email protected] – an answering machine with recording/playback
[email protected] – echo test
If you use a softphone and do not hear yourself in the echo test, make sure that you have a microphone. Try to record your voice in WAV in any suitable program. On other possible problems – at the end of the article.
Another frequently occurring in the SIP service conference
When calling this line, you can create your virtual room with your number and pin-code or join the already created one. Thus, 3 or more participants can communicate. However, the way of connection and the type of equipment of customers does not matter. Someone can call from a softphone, someone from a hardware SIP phone, and someone from a regular telephone network through a gateway.
Talking about SIP, it’s impossible not to tell about SIP Broker.
This is a non-commercial system that allows you to easily connect SIP networks to each other, and also to call almost any SIP number with a huge number of phone numbers in different countries around the world. For each network, its own code is highlighted, through which it can be called from other networks or incoming telephone gateways. For example, we go to Germany and from there we want to be able to call home to our SIP number from any local phone to a local number.
Further, in the list of PSTN numbers we find the necessary input telephones. In Germany, we just call one of the numbers, after the answer we are donating * 419 7555755 and talking to the house. If some SIP registrar is not yet on the list of the sip broker (which happens very rarely), you can add it directly from the site and get the code right away. Also with the help of this service, it is possible to create aliases (for example, for easy memorization) of already existing SIP addresses, to call free numbers in some countries and to do other interesting things. Owners of SIP-servers are offered a simple way of integration, which allows all users of this server to automatically have access to all the services of the SIP broker.
Some of the SIP providers may have their own gateways. And one more interesting possibility of communication is Inum. In 2008 Belgian VoIP company Voxbone put forward a project to create a global system of telephone numbers that are not geographically and accessible from anywhere. Having once received such a number, the person no longer needs to change it. All calls arriving at it, come exactly to where its owner is. This is done thanks to SIP-telephony. The project was named Inum – International Number. The International Telecommunication Union (ITU) has allocated for Inum the code of +883 5100, and now some telephone operators already provide direct dialing of this code. Also in Inum you can call from GoogleTalk / GoogleVoice (for free) and Skype (per minute billing). And of course, in Inum it is possible to make free and free calls using SIP, according to the sip: [email protected] scheme.
In addition, the project has its own network of incoming telephone gateways. Their list is located at:
After dialing to the gateway, simply dial the desired number and contact it. When calling from Inum phone gateways, you can omit “883510” and dial only the next 9 digits of the number.)
Inum can be dialed through the gateways of the brokers’ SIP, in this case, it is necessary to dial the entire number.
For testing, you can use the echo test from Inum: 883510000000091.
You can get your Inum for free from any SIP provider that cooperates with the project. The list of such providers:
At the same time, nothing needs to be set up in the client part, and the call to Inum for its owner is no different from the usual incoming call on the selected provider.
Perhaps for someone, there is useful information about the fact that in some countries it is absolutely free to get direct (without the dial-up) phone number, all calls to which will arrive at the SIP address you specify. The only condition is that once in a while (usually a month) someone calls to him and the connection was established for at least a couple of seconds. Keywords for search: free DID number.
In SIP, you can receive presence information and exchange text messages, but it’s much more convenient to use XMPP (“jabber”) for this purpose. Some SIP clients even have a built-in jabber client, but I would recommend a separate one. Then you will have more choices.
Separately it is necessary to say about codecs. Often, when you compare the quality of the connection “in the SIP and skype” they forget about them, namely the codec determines the band of audio frequencies and some other factors. As a rule, clients support a whole set of codecs, from which they choose the one suitable at the time of connection establishment. In the client settings, they can change the priority or even disable (if you know what you are doing). The most advanced and quality for today are OPUS, SILK, SPEEX.
In conclusion, a few words about cryptography.
The SIP connection uses 2 main protocols – signaling sip (control, dialing and connection status information) and transport RTP (directly audio/video streams). If both clients have stream encryption (ZRTP) support, then the conversation can be conducted over an encrypted channel. If the server and the client support TLS, then the signaling traffic will be protected.