PROJECTENGRAM

SESSION INITIATION PROTOCOL

Tags: #◇Computer Science #◇NSCOM01 #◇Conceptual #◇SIP #◇VoIP


◇Overview

The Session Initiation Protocol (SIP), defined in RFC 3261, is an application-layer signaling protocol used for establishing, modifying, and terminating multimedia sessions (like VoIP calls) over IP networks. SIP's main vision is to route calls using mnemonic identifiers (like email addresses) rather than static phone numbers, enabling high mobility and device independence.

◇Key Definitions

  • SIP (Session Initiation Protocol): A signaling protocol used to set up and manage multimedia sessions.
  • Registrar Server: A SIP server that keeps track of the current IP addresses of registered users.
  • Proxy Server: A SIP server that routes requests to the user's current location, acting similarly to DNS.

◇Theoretical Framework / Core Concepts

SIP Services and Capabilities

  1. Call Setup: SIP facilitates the negotiation between caller and callee to agree upon media types, port numbers, and specific codecs (e.g., PCM mu-law vs. GSM).
  2. Name Translation / User Location: It maps a user-friendly identifier (e.g., alice@domain.com) to the dynamic IP address where the user's device is currently connected.
  3. Call Management: SIP allows active sessions to be modified. Users can add new media streams (e.g., upgrading a voice call to a video call), change codecs mid-session, transfer calls, or invite new participants to create a conference.

SIP Architecture: Servers

The SIP infrastructure relies on specialized servers to manage mobility and routing.

  • Registrar Server: When a user boots up their SIP client, it sends a REGISTER message to their domain's Registrar Server. This updates a database mapping the user's SIP URI to their current IP address.
  • Proxy Server: When a caller wants to reach a callee, they send an INVITE to their local Proxy Server. The proxy resolves the callee's domain, contacts the corresponding proxy or registrar, and routes the INVITE to the callee's current IP.

◇Protocol Walkthroughs

Call Setup Example

Assume Alice wants to call Bob using SIP. The default port for SIP messages is 5060.

  1. INVITE: Alice's client sends a SIP INVITE message. The payload contains a description (usually in SDP - Session Description Protocol) specifying Alice's IP address, her receiving port, and her preferred codec (e.g., PCM mu-law).
  2. Response:
    • If Bob accepts the call and supports the codec, his client sends a 200 OK message back. The response contains Bob's IP, his receiving port, and the agreed-upon codec.
    • If Bob does not support the codec, his client might reply with a 606 Not Acceptable, prompting Alice to try a different codec.
  3. ACK: Alice sends an ACK message to acknowledge Bob's 200 OK.
  4. Media Flow: The SIP signaling phase is complete. The actual audio/video data now flows directly between Alice and Bob over RTP.

◇Summary & Key Takeaways

  • SIP separates the signaling (call setup/teardown) from the actual media transport (which is handled by RTP).
  • It enables user mobility by mapping human-readable SIP URIs to dynamic IP addresses using Registrar and Proxy servers.
  • SIP allows dynamic negotiation of session parameters (IPs, ports, codecs) and in-call modifications.

◇References & Navigation

CONFIRMATION // 理解度の確認

ACTIVE RECALL VERIFICATION

Select an answer to verify conceptual comprehension and reveal the technical rationale.

Q1

What RFC formally defines the Session Initiation Protocol (SIP)?

Q2

What is the primary function of SIP?

Q3

Which of the following is NOT a core service provided by SIP?

Q4

Which server acts similarly to a local DNS server by routing INVITE messages to locate a callee?

Q5

What does a SIP client do when it first powers on to ensure it can receive calls?

Q6

What is the default port number used for SIP messages?

Q7

What message does Alice send to Bob to initiate a SIP call?

Q8

If Bob receives a call setup request but does not support the requested audio codec, what SIP response might he send?

Q9

After SIP negotiation is complete (INVITE, OK, ACK), how does the actual audio data travel?

Q10

Which protocol is typically used to format the payload of a SIP INVITE message to describe IP addresses, ports, and codecs?