SIP INVITE header fields

Understanding common header fields in a SIP INVITE

The SIP INVITE is the foundation for every SIP phone call. It is simple and flexible, but often poorly understood by users. The purpose of this article is to provide a quick and easy reference to the critical headers in a SIP INVITE.

The SIP INVITE request is the message sent by the calling party, inviting the recipient for a session. The SIP headers included in this SIP INVITE request provide information about the message.

Consider the following SIP message, with the common SIP headers highlighted:

INVITE sip:bob@biloxi.example.com SIP/2.0
Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9
Max-Forwards: 70
From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
To: Bob <sip:bob@biloxi.example.com>
Call-ID: 3848276298220188511@atlanta.example.com
CSeq: 2 INVITE
Contact: <sip:alice@client.atlanta.example.com;transport=tcp>
Diversion: Carol <sip:carol@atlanta.example.com>;privacy=off;reason=no-answer;counter=1;screen=no
Remote-Party-ID: Alice <sip:alice@atlanta.example.com>
P-Asserted-Identity: Alice <sip:alice@atlanta.example.com>
P-Charge-Info: <sip:eve@atlanta.example.com>
P-Source-Device: 216.3.128.12
Content-Type: application/sdp
Content-Length: 151
X-BroadWorks-DNC: network-address=sip:+9876543210@127.0.0.101;user=phone
User-Agent: X-Lite release 1104o stamp 56125 v=0 o=alice 2890844526 2890844526 IN IP4 client.atlanta.example.com s=- c=IN IP4 192.0.2.101 t=0 0 m=audio 49172 RTP/AVP 0 a=rtpmap:0 PCMU/8000

The following sections explain these header fields.

Request URI

INVITE sip:bob@biloxi.example.com SIP/2.0

The Request URI is the contact information of the next hop in the call route. In the above example, the username of the next hop is bob, who is hosted by biloxi.example.com.

Via

Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9
Max-Forwards: 70

The Via header field indicates the path taken by the request so far and helps in routing the responses back along the same path. If the SIP INVITE passed through multiple SIP proxies, there will be multiple VIA headers. In the given example, the responses will be sent back to client.atlanta.example.com at the port 5060.

book

From

From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl

The From header field indicates contact information of the initiator of the SIP INVITE request, Alice in this case.

To

To: Bob <sip:bob@biloxi.example.com>

The To header field contains the information about the called party or the recipient of the request, Bob in this example.

Call-ID

Call-ID: 3848276298220188511@atlanta.example.com

The Call-ID header field is a unique ID identifying the SIP call. All messages containing this call-id will be assigned to the same SIP call.

Contact

Contact: <sip:alice@client.atlanta.example.com;transport=tcp>

The Contact header field provides a SIP or SIPS URI that should be used to contact the sender of the INVITE, Alice.

Diversion

Diversion: Carol <sip:carol@atlanta.example.com>;privacy=off;reason=no-answer;counter=1;screen=no

The diversion header contains the redirection information of the call. It includes the contact information of the device that forwards the INVITE, and also the reason for diversion.

Remote Party ID

Remote-Party-ID: Alice <sip:alice@atlanta.example.com>

This SIP header is considered obsolete, but is still used to convey the calling telephone number and source IP address.

P-Asserted-Identity

P-Asserted-Identity: Alice <sip:alice@atlanta.example.com>

The P-Asserted-Identity header field is an important SIP header used among trusted SIP entities (typically intermediaries) to carry the identity of the user sending a SIP message as it was verified by authentication. This header is commonly used in call centers who need to present the calling number of its customer, rather than it actual telephone number.

P-Charge-Info

P-Charge-Info: <sip:eve@atlanta.example.com>

The P-Charge-Info header is used to convey billing information about the party to be charged.

P-Source-Device

>P-Source-Device: 216.3.128.12
Content-Type: application/sdp
Content-Length: 151

This is a special header and includes the IP address of the source device through a Back to Back User Agent

X-Header

X-BroadWorks-DNC: network-address=sip:+9876543210@127.0.0.101;user=phone

A SIP header that begins with X can be used to convey any information. For example, an X-Header in a SIP INVITE is often used to convey a subscriber account number for billing.

User-Agent

User-Agent: X-Lite release 1104o stamp 56125

The User-Agent header field contains information about the UAC originating the request. It describes the source device that generated the SIP INVITE.

Connection Information

c= IN IP4 192.0.2.101

This is the source IP address and connection type for the audio stream.

This was one of the simpler SIP INVITE requests, and it could be more complex depending on the call flow.

The SIP INVITE is an important request method, and the information it contains could be used not just for session initiation, but also for such crucial applications as fraud detection. A SIP Analytics-driven Fraud Detection allows for real-time call blocking or call diversion.


March 4, 2024

STIR/SHAKEN statistics from February 2024

February 14, 2024

STIR/SHAKEN statistics from January 2024

January 25, 2024

Compliance dates announced for updated SHAKEN rules

January 3, 2024

STIR/SHAKEN statistics from December 2023

December 18, 2023

SHAKEN deadline for non-gateway intermediate providers

December 6, 2023

STIR/SHAKEN statistics from November 2023

November 8, 2023

STIR/SHAKEN statistics from October 2023

October 18, 2023

Out-of-Band SHAKEN revisions

September 20, 2023

How to monitor SHAKEN signer reputation

August 30, 2023

U.K. progress on central number database for STIR/SHAKEN

July 27, 2023

Rich Call Data and caller identity

June 19, 2023

Can Rich Call Data solve incorrect spam call labeling?

May 31, 2023

Branded calling, Know-Your-Customer, and STIR/SHAKEN