SIP Message Normalization

The device supports a built-in SIP message normalization feature that can be enabled per manipulation rule. This is enabled by configuring the 'Action Type' field to Normalize. Normalization removes unknown or non-standard SIP message elements before forwarding the message. These elements can include SIP headers, SIP header parameters, and SDP body fields. Message normalization is typically configured per SIP header, but can also be configured for all headers (including SDP).

The device normalizes the following SIP elements:

URL: You can normalize the URL of SIP headers, which is enclosed in angled <...> brackets.

For example:

Before normalization - URL contains a non-standard user part "phone-context=1" and an unknown parameter "UnknownUrlParam":
<sip:+1-800-229-229;phone-context=1@10.33.2.17;user=phone;UnknownUrlParam> 
After normalization - non-standard user part "phone-context=1" and an unknown parameter "UnknownUrlParam" are removed:
<sip:+1800229229@10.33.2.17;user=phone> 

Configuration: To normalize only the URL of a SIP header (e.g., To):

'Action Subject' field: Header.To.Url
'Action Type' field: Normalize
Non-URL part: For SIP headers that contain a URL, you can normalize everything outside of the URL (i.e., not enclosed in angled <...> brackets).

For example:

Before normalization - an unknown parameter "UnknownHeaderlParam" outside the URL:
To: <sip:100;phone-context=1@10.33.2.17;user=phone;UnknownUrlParam>;UnknownHeaderlParam
After normalization - unknown parameter removed:
To: <sip:100;phone-context=1@10.33.2.17;user=phone;UnknownUrlParam>

Configuration:

'Action Subject' field: header.<header name> (e.g., header.to)
'Action Type' field: Normalize
Headers: 
Alert-Info: unknown header parameters are removed
P-Called-Party-ID: unknown header parameters are removed, URL is normalized
P-Charging-Vector: unknown header parameters are removed
P-Associated-URI: unknown header parameters are removed, URL is normalized
P-Preferred-Identity: URL is normalized
Diversion: unknown header parameters are removed, URL is normalized
P-Asserted-Identity: URL is normalized
Privacy: unknown header parameters are removed
Remote-Party-ID: unknown header parameters are removed, URL is normalized
Reason: unknown header parameters are removed
Max-Forwards: value is changed to 70
History-Info: unknown header parameters are removed, URL is normalized
From: unknown header parameters are removed, URL is normalized
To: unknown header parameters are removed, URL is normalized
Via: unknown header parameters are removed
Refer-To: unknown header parameters are removed, URL is normalized
Referred-By: unknown header parameters are removed, URL is normalized
Event: unknown header parameters are removed
Session-Expires: unknown header parameters are removed
Min-SE: unknown header parameters are removed
Min-Expires: unknown header parameters are removed
Request-URI: URL is normalized
Contact: unknown header parameters are removed
Subscription-State: unknown header parameters are removed

Configuration:

'Action Subject' field: header.<header name> (e.g., header.min-expires)
'Action Type' field: Normalize

For SIP headers that contain a URL (e.g., Contact, Diversion, and Referred-By), to normalize the URL (i.e., everything enclosed in angled <...> brackets), use the following syntax for the 'Action Subject' field: Header.<header name>.Url (e.g., Header.Contact.Url). To normalize everything except the URL (i.e., everything outside of <...>), use this syntax: Header.<header name> (e.g., Header.Contact). For more information, see the descriptions above for URL and non-URL normalization.

SDP Body: Removes unnecessary SDP fields (except v=, o=, s=, c=, t=, and r=) and unknown media with all its attributes. For example, the bold is removed before sending the message:
v=0
o=SMG 791285 795617 IN IP4 10.33.2.17
s=Phone-Call
i=A Seminar on the session description protocol
u=http://www.example.com/seminars/sdp.pdf
e=j.doe@example.com (Jane Doe)
c=IN IP4 10.33.2.26
t=0 0
m=unknown 6000 RTP/AVP 8
a=unknown
a=sendrecv
a=ptime:20
m=audio 6000 RTP/AVP 8
a=rtpmap:8 pcma/8000
a=sendrecv
a=unknown
a=ptime:20

Configuration:

'Action Subject' field: body.sdp
'Action Type' field: Normalize
Message: Normalization of the entire message. Headers and bodies not listed below are removed while those listed are retained and normalized (if necessary and if listed as supported for normalization, as previously mentioned):
Headers:
Request-URI
Via
Max-Forwards
From
To
Call-ID
Cseq
Contact
Record-Route
Route
Supported
Allow
P-Preferred-Identity
Privacy
Diversion
Rack
Required
RSeq
Authorization
Proxy-Authorization
WWW-Authenticate
Proxy-Authenticate
Event
Refer-To
Referred-By
Replaces
User-Agent
P-Asserted-ID
History-Info
Priority
Resource-Priority
Unsupported
Expires
Session-Expires
Min-SE
Min-Expires
Bodies:
SDP
DTMF

Configuration:

'Action Subject' field: message
'Action Type' field: Normalize

Configuration Examples:

Normalization Examples

Message Type

Action Subject

Action Type

Description

invite

message

Normalize

Normalizes the entire SIP message (headers and SDP) in INVITE messages.

invite

body.sdp

Normalize

Normalizes only the SDP body in INVITE messages.

invite

header.max-forwards

Normalize

Normalizes the Max-Forwards header in INVITE messages.

invite

header.contact.url

Normalize

Normalizes only the URL of the Contact header in INVITE messages.