Session Initiation Protocol (SIP) is a text-based standard put in place by the Internet Engineering Task Force (IETF) and is the primary protocol for Voice over Internet Protocol services. SIP is similar to a MGCP in that it's a signaling protocol that can create, maintain and terminate sessions in IP-based networks. These sessions include multimedia conferencing and two-way phone calls. SIP protocol can run on User Datagram Protocol (UDP), Stream Control Transmission Protocol (SCTP) and Transmission Control Protocol (TCP) because it was created to function independently from the underlying Transport Layer as an Application Layer.
SIP is a successful innovation from Mark Handley and Henning Schulzrinne, who first created the protocol in 1996. However, in late 2000, it was adapted as the 3GPP signaling protocol, making it a standard component in streaming multimedia on cellular systems. The protocol uses a model typical of an HTTP request/response system where in every transaction; a client request puts forth a specific function on a server, along with at least one response. It shares encoding rules and header fields of HTTP.
SIP can also define the following server elements: User Agent: An endpoint that serves as a User Agent Client (UAC) to send SIP requests and a User Agent Server (UAS) to receive requests and send responses. Proxy server: A UAC and UAS that formulates requests for other clients through routing. Registrar: A type of server that can accept REGISTER requests. The information is then placed into a location relative to the domain. Redirect server: The UAS generates responses as it receives requests and directs clients to an alternate uniform resource identifier (URI). A URL is used to identify resources or a name. Session border controller: A session border controller fall between a user agent and SIP server for a variety of purposes, such as NAT traversal or network topology hiding. It is used in VoIP to control signaling and media streams. Gateway: The SIP network uses a gateway to interface with other networks like PSTN.