Session Initiation Protocol (SIP)

Basic SIP Call Flows

Session Initiation Protocol (SIP) as defined by RFC 3261 makes your cellphone ring, enables first responders, and critical communicators like air-traffic controllers. A basic SIP call flow originating from a cellular phone or desk phone (SIP dialog) commonly looks like the following:

Alice Bob

INVITE + SDP ——————————————>

<———————————————————— 100

<———————————————————— 180

<————————————————- 200 + SDP

ACK ———————————————————->

<======= RTP (MULTIMEDIA) =======>

<———————————————————— BYE

200 ————————————————————->

In the above call flow, Alice picks up the phone and calls Bob. This triggers a SIP INVITE with Session Description Protocol (SDP) to be sent towards Bob. Where the SIP message is routable, the SDP is just “hitching a ride” and defines the type of multimedia (audio, video, or both) Alice wants to exchange with Bob.

Upon receipt of the INVITE+SDP, Bob immediately sends a provisional SIP 100 message. The provisional 100 indicates receipt of the INVITE+SDP and implies processing. As Bob’s phone begins ringing, it returns a 180. Upon receipt of this 180, Alice’s User Agent handset (a SIP endpoint is called a User Agent or UA) will begin playing a ringing tone in Alice’s ear locally. This is different from the way classic phone systems worked, which produced ringtone from a switch within the telephone network, and sent to the handset.

Upon picking up the phone, Bob will send a 200 + SDP. The 200 indicates the INVITE has been answered successfully, where the attached SDP specifies the multimedia session(s) Bob is willing to participate in, as well as his specific capabilities.

At this time an Realtime Transport Protocol (RTP) exchange begins. With phone calls, this typically means an audio stream, but may also include a video stream (the audio and video streams are separate).

Once the call concludes and someone hangs-up a BYE is sent. In the above ladder diagram, Bob hangs up first, so a BYE is sent to Alice. Alice must respond to this SIP request by sending a 200, which is Alice confirming the conclusion of the call.

SIP Training & Consulting

Looking for SIP consulting or training? I can provide both! For more information, please reach out using my contact page. Events can take place on-line or on-site.

Next
Next

Generative AI Webinar with Sunset Learning & Alta3 Research