VOIP explained for enthusiasts
VoIP in depth:
- Definition & Overview
- Protocols & procedure
- Technical Details
- Features & Functionality
- Future Prospects
Definition & Overview:
The term VoIP represents Voice communication over/via IP-network. There are many advantages of having voice communication over IP network, termed as PS ( packet switching), over traditionally voice communication, over CS( Circuit switching), like fast, easy and efficient resource utilization with enhanced features. People who wish to communicate with each other with VoIP must support TCP/IP packing, called IP-nodes/Host. VoIP is also used to establish sessions/calls to different networks like circuit switches PSTN or GSM/UMTS users.
It is a technique of sending voice/media packets over IP-network. This solution of establishing session between two parties is adopted by next generation mobile communication like 4G. VoIP is incorporated with underline protocol stack like SIP, H.323, SDP, TCP/IP suit, etc. VoIP solutions are mainly driven with the help of supporting APPLICATION layer protocol, namely SIP (Session Initiation protocol) or H.323.
Protocols & procedure:
Predominantly SIP is a versatile text based protocol mostly used in enhance technology. SIP defines request and response mechanism like INVITE, Register, Option, Publish etc and 1xx, 2xx, 3xx, 4xx, 5xx, 6xx responses respectively. It also defines routing mechanisms with the help of SIP-proxy server to discover called user details. A session is established between two nodes (IP-based) who wish to communicate by routing request to proxy server and querying database termed location server. Once two nodes (calling party and called party) learn each other IP-addresses, voice RTP packets are sent between them. SIP stacks maintains and control the established the voip session until it is closed. Session is released or cleared by sending BYE request to other party. SIP protocol standard is defined by IETF standards of 3261rfc and is being adopted by many new upcoming technologies. H.323 protocol on other hand is a protocol suit used earlier for VoIP solution. It is still used within certain old technology and enterprise solutions.
This section describes VoIP architecture and solution in details based on SIP protocol. VoIP architecture is defined based on three tier model.
• User-plan or Application layer mainly consists of IP-nodes who are either Calling User/Nodes or Called User/Nodes. SIP based IP-nodes are termed as UA (User Agent). SIP based IP-Node that initiates session request is termed as UAC (User Agent Client) and SIP based IP-nodes who respond to the request is termed as UAS (User Agent Server).
• Middle tier is a Server-plan or a Routing plane which help in routing SIP based request to the destination and fetching relevant data. SIP based server like SIP-proxy server, Promedia Server, Gatekeeper (for H.323 protocol) is grouped in this tier. Promedia servers are used for establishing session between SIP and H.323 based UAs.
• Database tier of the VoIP architecture consists of servers who maintains data regarding User agents, session billing and session authentication and other. Location server, Registrar server, Authentication server, Billing Server, IVR server are such example servers of this layer. The protocol which is used between the SIP proxy server and the database layer server is RADIUS, which is mainly transaction based protocol.
Procedure of VoIP Session:
SIP session/signalling are done using either TCP or UDP as a transport layer, with TCP as a recommendation to achieve fast session establishment.
• SIP based IP-node which is either a calling party or called party, is configured with IP-address and can be located anywhere physically and connected through internet.
• Called Party must be registered to the VoIP network via preconfigured REGISTRAR Server IP-address and Proxy server
• Calling Party has to be VoIP registered in order to initiate a call to the called user, it must also be configured with a Proxy server
• Called Party registers itself by sending REGISTER request to the Proxy Server. The Proxy server in turn updates the REGISTRAR server with Called Party IP-address, and/or domain and/or MSIDN/sip-URI. SIP-URI is nothing but a Unique Resource Identifier in sip format like ‘sip:[email protected]’. This association created in REGISTRAR server is uploaded into Location Server which is called as AOR – Address of Record. In most cases both REGISTRAR server and LOCATION server can be colocated into one box.
• Calling Party that wish to establish a communication with called user, sends INVITE request to the Proxy or Out-bound Proxy server with called party MSISDN or SIP-URI. Outbound Proxy server is nothing but a proxy server, configured separately for handling calls/session, which is again a deployment specific. Here Calling User will act as a UAC- User agent client and Proxy server acts as UAS – User agent server.
• Out-bound Proxy server receives INVITE request, response with 100 Trying response to the Calling user/UAC acknowledging Calling user that INVITE request is received and is being processed so it does not send multiple INIVITE request. The proxy server fetches called user AOR from the location server and receives the called user IP-address.
• Proxy server routes the INVITE request to the called user IP-address received in AOR from the location server.
• Called Party upon receiving INVITE request, will to start ring with tone, notifying the user about the incoming call, acknowledging back with 180 ringing response. In the 180 Ringing, called party adds its own IP-address which is traversed backed to the calling party.
• When called party picks the calls, it response with 200 OK.
• Calling party upon receiving 200 OK response send another SIP request ACK, which indicates the flow of voice RTP packet.
• Session can be broken by either party, by sending a BYE request.
RTP and Voice Packets:
Voice packets are being transmitted between calling party and called party directly end to end in particular codec format. SDP – session description protocol suit is also deployed along with SIP stack which maintains all voice packets stream and their measurement reports. Both RTP and RTCP packets are sent over UDP as a transport protocol to achieve real time streaming. RTCP provides feedback about RTP packets sends in reverse direction.
Features & Functionality:
SIP based protocol leverage to add call features like call hold, Call Park, call conference, both audio and video call, multi user support and many other call functionality. It is easy to deploy and flexible enough to twist to achieve desired result of Voice over IP.
Future Prospects and Deployment:
VoIP solution is key to fourth generation mobile communication supporting multimedia services like audio, video, chat, conference, announcement services. This technology is commonly known as IMS – IP Multimedia Subsystem, a standards of 3GPP project. SIP session createс high voice quality via dedicated bearer reserved for each SIP session. If the access type is LTE, then the voip session is termed as VoLTE( Voice over LTE) and if access type is Wifi, the voip session is termed as VoWIFI.