SIP Protocol: Description

Session Initiation Protocol (SIP) is a protocol for signaling and managing multimedia communication sessions. The most common applications in Internet telephony are for voice and video calls, as well as instant messaging over IP (Internet Protocol) networks.

sip protocol

It defines messages that are sent between endpoints and regulate the creation, termination, and other essential elements of a call. The SIP protocol described above can be used to create, modify and end sessions consisting of one or more streams of multimedia data. It is an application layer protocol. Designed to be independent of the main transport layer. In other words, it is a text-based protocol that includes many HTTP (Hypertext Transfer) and Simple Mail Transfer Protocol (SMTP) elements.

sip protocol description

SIP protocol - what is it?

SIP works in conjunction with several other application layer protocols that identify and transmit multimedia sessions. Media discovery and matching is achieved in conjunction with the Session Description Protocol (SDP). To transmit multimedia streams - voice, video - it usually uses the real-time transport protocol (RTP) or Secure mode (SRTP). For secure messaging, SIP can be encrypted using Transport Layer Security (TLS).

Development history

The SIP protocol was originally developed by a team of specialists in 1996. It was standardized in RFC 2543 in 1999 (SIP 1.0). In November 2000, it was adopted as the GPP 3 signaling protocol and a permanent element of the IP Multimedia Subsystem (IMS) architecture for IP-based streaming multimedia services in cellular communication systems. The latest version (SIP 2.0) in the RFC 3261 specification was released in June 2002. With certain extensions and refinements, it is used in our time.

sip protocol what is it

Despite the fact that initially the SIP protocol was developed based on voice services. Today it supports a wide range of applications, including video conferencing, streaming multimedia, instant messaging, file and fax transfers over IP and online games.

SIP - Description and Operations

Session Initiation Protocol is independent of the underlying transport protocol. It operates on the basis of the Transmission Control Protocol (TCP), the user-defined Datagram Protocol (UDP), or the Stream Transmission Control Protocol (SCTP). It can be used both for data transfer between two parties (unicast) and for a multicast session.

sip protocol ports

It has design elements similar to the HTTP transaction request model. Each such operation consists of a client request, which calls a specific method or function on the server, and at least one response. The SIP protocol reuses most of the header fields, encoding rules, and HTTP status codes, providing a readable text format.

Each Session Initiation Protocol network resource — a user agent or voicemail box — is recognized by a resource allocation identifier (URI) based on a common standard syntax that is also used in web services and email. The URI scheme used for SIP has the form of a logical chain: username: password @ host: port.

sip protocol on android

Security policy

If secure data transfer is required , the scheme prescribes that each of the network elements through which the request is redirected to the target domain must be provided with Transport Layer Security (TLS). The last step from the proxy server to the target domain is required to function in accordance with local security settings. TLS protects against cybercriminals who attempt to intercept data at the time it is sent. But it does not provide real security to the end and cannot prevent tracking and theft of information. How does the SIP protocol, whose ports must be securely connected, work with other network services?

It works in conjunction with several other protocols and is involved only in the signaling session. SIP clients typically use TCP or UDP with port numbers 5060 or 5061 to connect to SIP servers and other SIP endpoints. Port 5060 is typically used for unencrypted signaling traffic, while port 5061 is closely friends with Transport Layer Security (TLS).

What is it used for?

In order to most accurately answer the question “SIP protocol - what is it?”, One should understand what it is used for. It is usually used in setting up and transmitting voice or video calls. It allows you to modify existing calls. Modification may include changing addresses or ports, inviting more participants to the conversation, adding or removing multimedia streams. SIP has also found application in messaging applications, as well as in event subscription and notification services.

The set of SIP rules associated with the Internet Engineering Task Force (IETF) defines the instructions for such applications. Voice and video streaming messages in applications are transferred to another application protocol in real time Transport Protocol (RTP). Parameters - port numbers, protocols, codecs - for these media streams are defined and agreed using the Session Description Protocol (SDP), which moves in the body of the Session Initiation Protocol (for example, SIP T).

The main prospect for the development of the protocol is that in the future it should provide the installation of signaling and call for IP communications on the basis of which can support a super-set of call processing functions and options present in the public switched telephone network (PSTN). He alone does not define them. More precisely, it only adjusts call and alarm settings. All actions that are aimed at performing such telephone operations (i.e. dialing, answering ringback tones or a busy signal) are performed by proxy servers and user agents. Their implementation and terminology is different in different countries of the world, but they operate on the same principle.

Value in telephone communication

SIP-enabled telephone networks can also provide many of the more advanced call processing features found in Signaling System 7 (SS7). Although both of these protocols are very different. SS7 is a centralized protocol. It is characterized by a complex central network architecture and blunt endpoints (traditional telephones). SIP is a client-server protocol. However, most devices that support Session Initiation Protocol can act as both a client and a server. In general, the client initiates the session, and the recipient of the call acts as a server. Thus, SIP functions are implemented at communicating endpoints, contrary to the traditional SS7 capabilities that are implemented on the network.

sip t protocol

SIP is fundamentally different in that this technology is developing in the IT sector, and not in the telecommunications industry. The SIP protocol is standardized and defined mainly by the IETF, while others (e.g. H.323) are traditionally associated with the International Telecommunication Union (ITU).

Network elements

SIP defines user agents, as well as several types of server network elements. The two SIP endpoints can communicate without any intermediate infrastructure. Nevertheless, this approach is often impractical for government communications, which require a directory service to search for available nodes on the network. SIP register cannot provide this functionality.

User agent

A SIP User Agent (UA) is a logical network of endpoints. They are used to create or receive messages and thereby control the SIP session. SIP-UA can act as a user agent client (UAC) that sends SIP requests, as well as its server (UAS), which receives requests and returns a SIP response. Such account and UAS control is carried out only during the SIP transaction.

Telephony

SIP telephony, in fact, is IP telephony, which implements client and server functions of a SIP agent user. In addition, it provides the traditional options for a phone call - dialing, answering, rejecting, holding / removing, and forwarding a call.

SIP phones can be implemented as a hardware device or as a softphone. As manufacturers increasingly use this protocol as a standard telephony platform (in recent years through 4G), the distinction between the hardware and software foundations of SIP phones remains blurred. In addition, the elements of the Session Initiation Protocol today are implemented in the basic functions of the firmware of many IP-compatible devices. Examples are many devices from Nokia and BlackBerry, and the SIP protocol on Android is currently an indispensable service.

sip register protocol

In SIP, as in HTTP, a user agent can identify itself using a message in the User-Agent header field containing a textual description of software / hardware / product names. The user agent field is transmitted in the request messages. This means that the receiving SIP server can see this information. Session Initiation Protocol network elements can sometimes store this information. And it can be useful in diagnosing compatibility issues.

Source: https://habr.com/ru/post/K7436/


All Articles