SIP, short for Session Initiation Protocol is a signaling protocol used to create, manage and terminate sessions in an IP based network. SIP was developed by the IETF and published as RFC 3261. A session could be a simple two-way telephone call or it could be a collaborative multi-media conference session. This makes possible to implement services like voice-enriched e-commerce, web page click-to-dial or Instant Messaging with buddy lists in an IP based environment. Don’t worry if you don’t know about these services.
Session Initiation Protocol –
- Initiates communication session
- Terminates communications sessions
- Holds true for voice call and video conference.
Few key points on Sip protocol –
- SIP is an application layer protocol defined by IETF standard and defined in RFC 3261.
- SIP works on a client-server model and uses URL and URI from HTTP and a text encoding scheme and a header style from SMTP.
- SIP utilises SDP (Session Description Protocol) for describing a session and RTP (Real Time Transport Protocol) for delivering voice and video over IP network.
- SIP can be used for two-party or multiparty sessions.
- Other SIP applications include file transfer, instant messaging, video conferencing, online games, and steaming multimedia distribution.
- SIP clients uses TCP / UDP on port numbers 5060 or 5061 to connect to SIP servers and other SIP endpoints. While Port 5060 is used for non-encrypted signaling traffic , port 5061 is used for traffic encrypted with Transport Layer Security (TLS).
- SIP can be carried by several transport layer protocols including the Transmission Control Protocol (TCP), the User Datagram Protocol (UDP) or the Stream Control Transmission Protocol (SCTP).SIP can be used to establish two-party (unicast) or multiparty (multicast) sessions.
SIP provides the capabilities on:
- User location: Users can move to other locations and access their telephony or other application features from remote locations.
- User availability: This step involves determination of the called party to engage in communications.
- User capabilities: The media and media parameters to be used are determined.
- Session setup: Point-to-point and multiparty calls are set up, with agreed session parameters.
- Session management: This step includes transfer and termination of sessions, modifying session parameters, and invoking services.
SIP network uses the following key components:
- SIP Proxy Server – The proxy server works as an intermediate device that receives SIP requests from a client and then forwards the requests on the client’s behalf. Proxy servers can provide functions such as authentication, authorization, network access control, routing, reliable request retransmission, and security.
- Redirect Server – The redirect server provides the client with information about the next hop or hops that a message should take, and the client then contacts the next hop server or user agent server directly.
- Registrar Server – The registrar server processes requests from user agent clients for registration of their current location. Redirect or proxy servers often contain registrar servers.
- User Agent (UA) – A combination of user agent client (UAC) and user agent server (UAS) that initiates and receives calls. A UAC initiates a SIP request. A UAS is a server application that contacts the user when it receives a SIP request. The UAS then returns a response on behalf of the user. Cisco CallManager can act as both a server or client (a back-to-back user agent).