“SIP sets up the game. RTP plays it.”
🧩 So... What is SIP?
SIP (Session Initiation Protocol) is the VoIP equivalent of the game master — it sets the rules, gets the players into the arena, and then steps back once the game (the voice conversation) begins.
In plain terms:
SIP handles call setup, ringing, answering, and tear-down. It does not carry your voice — that’s RTP’s job.
Think of SIP like sending someone a party invite. It tells them:
- Who’s calling
- Where the call should happen
- How they can reach you
- And whether they want to accept it or ghost you
☎️ The Call Flow (Simplified)
Here’s how a basic SIP call between two softphones works:
User A SIP Server User B
| | |
|--- INVITE ------->| |
| |--- INVITE ------->|
| |<-- 180 RINGING ---|
|<-- 180 RINGING ---| |
| |<-- 200 OK --------|
|<-- 200 OK --------| |
|--- ACK ---------->| |
| |--- ACK ---------->|
| | |
|<==== RTP Media Stream (Voice) ======>|
| | |
|--- BYE ---------->| |
| |--- BYE ---------->|
| |<-- 200 OK --------|
|<-- 200 OK --------| |
🧠 Key SIP Messages
Message | What it Means |
---|---|
INVITE | “Hey, want to talk?” |
180 RINGING | “They’re being notified” |
200 OK | “They picked up!” |
ACK | “Cool, let’s connect” |
BYE | “Gotta go, bye!” |
🎯 SIP in Action — What You See in Logs
If you’ve ever looked at SIP logs (Wireshark, anyone?), you’ll see something like:
INVITE sip:bob@example.com SIP/2.0
From: "Alice" sip:alice@example.net
To: sip:bob@example.com
Call-ID: 789abc123@example.net
CSeq: 1 INVITE
Contact: sip:alice@192.168.1.10:5060
Content-Type: application/sdp
Content-Length: 151
Notice that last part? Content-Type: application/sdp
👀
Yup — SIP includes something called SDP inside it. It’s like the fine print in your call invitation — it lists what codecs you'll use, what port to send media to, and more.
🧩 SIP ≠ Voice
SIP doesn’t carry your voice.
Instead, once the SIP call is accepted, RTP (Real-time Transport Protocol) takes over to actually move the media (voice, video, etc.) between endpoints.
So:
- SIP = The call setup (the RSVP)
- RTP = The actual voice (the conversation)
🔁 What Happens When You Hang Up?
A typical SIP BYE exchange:
User A --> BYE --> SIP Server --> BYE --> User B
User B --> 200 OK --> SIP Server --> 200 OK --> User A
Simple. Fast. And very polite.
🎯 TL;DR
- SIP is a signaling protocol, not a media protocol
- It helps set up, modify, and end VoIP calls
- It uses messages like
INVITE
,RINGING
,ACK
, andBYE
- It wraps media setup details using SDP (coming next)
- After the call setup, RTP moves the actual voice packets
🧠 Up Next in SIP GAMES:
“What’s in the Envelope? Unpacking SDP”
SDP (Session Description Protocol) tells your devices what media codecs to use, how to send the audio, and more — it’s like the secret note inside your SIP envelope.
Stay tuned as we dive into how a voice call actually finds its voice.
🕹 Follow @sip_games for more VoIP magic — minus the RFC migraines.