Diameter Protocol: Difference between revisions

From VoIPmonitor.org
(Added AI Summary for RAG section)
 
(One intermediate revision by one other user not shown)
Line 271: Line 271:
* [[Sniffer_distributed_architecture]] - Distributed capture setup
* [[Sniffer_distributed_architecture]] - Distributed capture setup


== AI Summary for RAG ==
= AI Summary for RAG =


'''Diameter Protocol Support in VoIPmonitor'''
'''Summary:''' VoIPmonitor captures Diameter protocol traffic and correlates it with SIP calls in IMS (IP Multimedia Subsystem) environments. Diameter is used for authentication, authorization, subscriber data management (HSS), and policy control (PCRF). Configuration requires enabling <code>diameter = yes</code> in voipmonitor.conf and setting ports (default TCP/UDP 3868). Correlation works by extracting Public Identity (AVP 601), Session ID (AVP 263), and Calling Party Address (AVP 831) from Diameter messages and matching them against SIP From/To headers. Flexible matching options include <code>diameter_ignore_prefix</code> (matches sip: with tel: URIs) and <code>diameter_ignore_domain</code> (ignores IP vs FQDN mismatches). The <code>diameter_time_overlap</code> parameter (default 10 seconds) allows Diameter messages arriving before SIP sessions to be correlated. Supports all Diameter applications generically (Cx, Sh, Rx, Gx, Ro/Rf). Ribbon "Diameter+" is proprietary and not standard Diameter.


VoIPmonitor captures and correlates Diameter protocol traffic with SIP calls in IMS (IP Multimedia Subsystem) environments. Diameter is used for authentication, authorization, subscriber data management, and policy control in telecom networks.
'''Keywords:''' Diameter, IMS, HSS, CSCF, I-CSCF, S-CSCF, P-CSCF, PCRF, AVP, Public Identity, Session ID, Calling Party Address, VoLTE, telecom, 3GPP, diameter_ignore_prefix, diameter_ignore_domain, diameter_time_overlap, diameter_tcp_ports, diameter_udp_ports, 3868, correlation, authentication, Cx, Sh, Rx, Gx, Ro, Rf, UAR, MAR, LIR, Ribbon Diameter+


'''Key Configuration Parameters:'''
'''Key Questions:'''
* <code>diameter = yes</code> - Enable Diameter capture (disabled by default)
* How do I enable Diameter protocol capture in VoIPmonitor?
* <code>diameter_tcp_ports = 3868</code> - TCP ports for Diameter (default 3868)
* What is the default port for Diameter protocol?
* <code>diameter_udp_ports = 3868</code> - UDP ports for Diameter (default 3868)
* How does VoIPmonitor correlate Diameter with SIP calls?
* <code>diameter_time_overlap = 10</code> - Seconds before SIP session to accept Diameter packets
* Why is Diameter not being correlated with my SIP calls?
* <code>diameter_ignore_prefix = yes</code> - Match sip: URIs with tel: URIs
* How do I fix prefix mismatch between sip: and tel: URIs?
* <code>diameter_ignore_domain = yes</code> - Ignore domain mismatch between SIP and Diameter
* How do I fix domain mismatch between IP and FQDN?
 
* What Diameter applications are supported (Cx, Sh, Rx)?
'''Correlation Mechanism:'''
* How do I configure Diameter time overlap?
VoIPmonitor extracts Public Identity (AVP 601), Session ID (AVP 263), and Calling Party Address (AVP 831) from Diameter messages and matches them against SIP From/To headers. Correlated Diameter messages appear in CDR alongside SIP signaling.
* Does VoIPmonitor support Ribbon Diameter+?
 
* Where can I see Diameter messages in the CDR?
'''Supported Diameter Applications:'''
Cx (authentication), Sh (subscriber data), Rx (policy/charging), Ro/Rf (charging), Gx (policy control) - all processed generically via AVP extraction.
 
'''Common Issues:'''
* Diameter not captured → Enable <code>diameter = yes</code> and verify port 3868 traffic
* Correlation fails → Enable <code>diameter_ignore_prefix</code> and <code>diameter_ignore_domain</code>
* Missing Diameter for some calls → Increase <code>diameter_time_overlap</code>
 
'''Important Notes:'''
* Ribbon "Diameter+" is proprietary, not standard Diameter
* Place network TAP to capture both SIP and Diameter traffic
* Diameter generates significant signaling volume in IMS environments
 
'''Keywords:''' Diameter, IMS, HSS, CSCF, AVP, Public Identity, Session ID, Cx, Sh, Rx, Gx, Ro, Rf, 3868, correlation, authentication, PCRF, VoLTE, telecom

Latest revision as of 20:54, 15 January 2026


VoIPmonitor supports Diameter protocol capture and correlation with SIP calls, primarily for IMS (IP Multimedia Subsystem) environments where Diameter is used for authentication, authorization, and subscriber data management.

Overview

Diameter is the signaling protocol used in IMS networks for:

  • Authentication and Authorization - User identity verification
  • Subscriber Data Management - HSS (Home Subscriber Server) queries
  • Policy and Charging - PCRF interactions
  • Location Services - User location registration

VoIPmonitor passively captures Diameter traffic and correlates it with SIP calls based on subscriber identity matching.

How It Works

Capture

VoIPmonitor passively captures Diameter protocol traffic:

  • Default Port: TCP/UDP 3868
  • Transport: Supports both TCP and UDP
  • Capture Mode: Disabled by default, must be explicitly enabled

SIP-Diameter Correlation

The primary function is to correlate Diameter signaling messages with SIP calls based on subscriber identity matching.

Extracted Fields for Correlation:

AVP Code Field Name Description
601 Public Identity User's public identity (SIP URI or TEL URI)
263 Session ID Diameter session identifier
831 Calling Party Address Originating party address

Correlation Logic:

  1. VoIPmonitor extracts the public identity from Diameter messages
  2. Matches against SIP caller/called numbers (From/To headers)
  3. Associates Diameter signaling with the corresponding SIP call
  4. Diameter packets visible in call detail alongside SIP messages

Matching Flexibility

Since SIP and Diameter may use different URI formats, VoIPmonitor provides flexible matching options:

Scenario Example Solution
Prefix mismatch SIP: sip:+123456789@domain
Diameter: tel:+123456789
Enable diameter_ignore_prefix
Domain mismatch SIP: sip:user@10.0.0.1
Diameter: sip:user@ims.example.com
Enable diameter_ignore_domain
Timing offset Diameter authentication before SIP INVITE Configure diameter_time_overlap

Configuration

Enable and configure Diameter support in /etc/voipmonitor.conf:

#####################################
# Diameter Protocol Configuration

# Enable Diameter protocol capture (default: no)
diameter = yes

# Configure capture ports (default: 3868)
diameter_tcp_ports = 3868
diameter_udp_ports = 3868

# Time window for correlation - Diameter packets can arrive
# up to N seconds before SIP sessions (default: 10)
diameter_time_overlap = 10

# Allow matching when URI prefixes differ
# Example: sip:+123456789 matches tel:+123456789 (default: no)
diameter_ignore_prefix = yes

# Allow matching when domains differ
# Example: SIP uses IP, Diameter uses FQDN (default: no)
diameter_ignore_domain = yes

Configuration Parameters Reference

Parameter Default Description
diameter no Enable/disable Diameter protocol capture
diameter_tcp_ports 3868 TCP ports to monitor for Diameter traffic
diameter_udp_ports 3868 UDP ports to monitor for Diameter traffic
diameter_time_overlap 10 Seconds before SIP session that Diameter packets are accepted for correlation
diameter_ignore_prefix no Ignore URI scheme prefix (sip: vs tel:) when matching
diameter_ignore_domain no Ignore domain part when matching identities

Multiple Ports

If Diameter traffic uses non-standard ports, specify multiple ports:

diameter_tcp_ports = 3868,3869,3870
diameter_udp_ports = 3868

GUI Configuration

Diameter can also be configured via the VoIPmonitor GUI:

  1. Navigate to Settings > Sensors
  2. Click the wrench icon next to your sensor
  3. Search for diameter
  4. Configure the parameters as needed
  5. Save and restart the sensor

Supported Diameter Applications

VoIPmonitor processes Diameter messages generically without application-specific logic. This means it handles multiple Diameter applications uniformly:

Application Interface Typical Use Case
Cx I-CSCF/S-CSCF ↔ HSS User authentication, registration
Sh AS ↔ HSS Subscriber data queries
Rx P-CSCF ↔ PCRF Policy and charging rules
Ro/Rf Various ↔ OCS/OFCS Online/offline charging
Gx PCEF ↔ PCRF Policy control

ℹ️ Note: VoIPmonitor extracts correlation data (Public Identity, Session ID, Calling Party Address) from any Diameter application that includes these AVPs.

Viewing Diameter in CDR

When Diameter is correlated with a SIP call:

  1. Open the call detail record (CDR)
  2. In the SIP History section, Diameter messages appear alongside SIP messages
  3. Messages are displayed with their Diameter command codes and relevant AVP data

Deployment Considerations

Network Tap Placement

For complete call visibility:

  • Place TAP/SPAN to capture both SIP and Diameter traffic
  • Ensure the sensor can see traffic between CSCF and HSS
  • Consider Diameter traffic from multiple interfaces (Cx, Sh, Rx)

Traffic Volume

Diameter generates significant signaling traffic in IMS environments:

  • Every SIP transaction may trigger multiple Diameter exchanges
  • Plan sensor capacity accordingly
  • Consider filtering non-essential Diameter traffic if needed

Troubleshooting

Diameter Not Captured

Check configuration:

grep -i diameter /etc/voipmonitor.conf

Verify traffic on interface:

tcpdump -i eth0 -n port 3868 -c 10

Check sensor logs:

grep -i diameter /var/log/voipmonitor.log

Correlation Not Working

Symptom Possible Cause Solution
Diameter captured but not linked to SIP Identity format mismatch Enable diameter_ignore_prefix and/or diameter_ignore_domain
Diameter missing for some calls Timing issue Increase diameter_time_overlap
Wrong calls correlated Ambiguous identity Verify public identity uniqueness in your network

Debug Capture

Capture traffic for analysis:

# Capture Diameter and SIP traffic
tcpdump -i eth0 -w /tmp/diameter_debug.pcap \
  "port 3868 or port 5060 or port 5061"

Provide to support:

  • CDR ID of affected call
  • PCAP file
  • VoIPmonitor configuration (diameter settings)
  • voipmonitor --version

Ribbon Diameter+

ℹ️ Note: Ribbon's proprietary "Diameter+" protocol (used between Ribbon SBCs and PSX) is not standard Diameter. Contact VoIPmonitor support for compatibility information.

See Also

AI Summary for RAG

Summary: VoIPmonitor captures Diameter protocol traffic and correlates it with SIP calls in IMS (IP Multimedia Subsystem) environments. Diameter is used for authentication, authorization, subscriber data management (HSS), and policy control (PCRF). Configuration requires enabling diameter = yes in voipmonitor.conf and setting ports (default TCP/UDP 3868). Correlation works by extracting Public Identity (AVP 601), Session ID (AVP 263), and Calling Party Address (AVP 831) from Diameter messages and matching them against SIP From/To headers. Flexible matching options include diameter_ignore_prefix (matches sip: with tel: URIs) and diameter_ignore_domain (ignores IP vs FQDN mismatches). The diameter_time_overlap parameter (default 10 seconds) allows Diameter messages arriving before SIP sessions to be correlated. Supports all Diameter applications generically (Cx, Sh, Rx, Gx, Ro/Rf). Ribbon "Diameter+" is proprietary and not standard Diameter.

Keywords: Diameter, IMS, HSS, CSCF, I-CSCF, S-CSCF, P-CSCF, PCRF, AVP, Public Identity, Session ID, Calling Party Address, VoLTE, telecom, 3GPP, diameter_ignore_prefix, diameter_ignore_domain, diameter_time_overlap, diameter_tcp_ports, diameter_udp_ports, 3868, correlation, authentication, Cx, Sh, Rx, Gx, Ro, Rf, UAR, MAR, LIR, Ribbon Diameter+

Key Questions:

  • How do I enable Diameter protocol capture in VoIPmonitor?
  • What is the default port for Diameter protocol?
  • How does VoIPmonitor correlate Diameter with SIP calls?
  • Why is Diameter not being correlated with my SIP calls?
  • How do I fix prefix mismatch between sip: and tel: URIs?
  • How do I fix domain mismatch between IP and FQDN?
  • What Diameter applications are supported (Cx, Sh, Rx)?
  • How do I configure Diameter time overlap?
  • Does VoIPmonitor support Ribbon Diameter+?
  • Where can I see Diameter messages in the CDR?