Copyright Hé - License GPL

SIP - Basic Call Flow

Tutorial on the session initiation protocol   2020-11-21 06:04:03

SIP - Basic call flow The following image shows the basic call flow for a SIP session. You will find below - below a step by step explanation of the above call flow - An INVITE request sent to a proxy server is responsible for initiating an session. The proxy server immediately sends a 100 Trying response to the caller (Alice) to stop retransmissions of the INVITE request. The proxy server looks for Bob"s address in the location server. After getting the address, he forwards the INVITE request further. Subsequently, 180 Ringing (provisional responses) generated by Bob returned to Alice. A response 200 OK is generated shortly after Bob picks up the phone. Bob receives an ACK from Alice , once it gets 200 OK . At the same time, the session is established and RTP packets (conversations) begin to flow from both sides. After the conversation, any participant (Alice or Bob) can send a BYE request to end the session. BYE reaches directly from Alice to Bob bypassing the proxy server. Finally, Bob sends a 200 OK response to confirm the BYE and the session is terminated. In the basic call flow above, three transactions are (marked as 1, 2, 3) available. The full call (from INVITE to 200 OK) is called Dialog box . SIP trapezoid How does a proxy help connect one user to another? Let"s find out with the help of the following diagram. The topology shown in the diagram is known as SIP trapezoid. The process is as follows - When a caller initiates a call, an INVITE message is sent to the proxy server. Upon receiving the INVITE, the proxy server attempts to resolve the called party"s address using the DNS server. After getting the following route, the caller"s proxy server (Proxy 1, also known as outbound proxy server) forwards the INVITE request to the proxy server of the called party which acts as an incoming proxy server (Proxy 2) for the called party. The incoming proxy server contacts the location server to get information about the called party address where the user has registered. After obtaining information from the location server, it transfers the call to its destination. Once user agents know their address, they can bypass the call, that is, conversations go directly.