Session initiation protocol or SIP (RFC 3261 and various extensions) is a signaling and control protocol that operates at application layer and responsible for creating, modifying, and terminating multimedia session between one or more participants. While sending SIP requests, the session parameters are sent via SDP (SDP, RFC 4566) which enable users to agree on a set of compatible media types between them. When sessions are created, the voice or video is carried by RTP and optionally controlled by RTCP.
SIP defines endpoints as User Agents (UAs), and the process of creating a session involves UA negotiation in order to agree on a characterization of a session that they would like to create. For additional services such as locating session participants, registration, call forwarding, and others, SIP defines network hosts called...