view doc/rt_default.conf.sample @ 1513:73e563165594

Add 3GPP TS 29.468 V15.8.0 (2019-12) Add AVPs: - BMSC-Address, Address, code 3500, section 6.4.2 - BMSC-Port, Unsigned32, code 3501, section 6.4.3 - Common-Tunnel-Endpoint-Identifier, OctetString, code 3524, section 6.4.26 - FEC-Request, OctetString, code 3525, section 6.4.27 - FEC-Result, Unsigned32, code 3531, section 6.4.33 - Local-M1-Information, Grouped, code 3518, section 6.4.20 - Local-MB2-U-Information, Grouped, code 3519, section 6.4.21 - MB2U-Security, Unsigned32, code 3517, section 6.4.19 - MBMS-Bearer-Event, Unsigned32, code 3502, section 6.4.4 - MBMS-Bearer-Event-Notification, Grouped, code 3503, section 6.4.5 - MBMS-Bearer-Request, Grouped, code 3504, section 6.4.6 - MBMS-Bearer-Response, Grouped, code 3505, section 6.4.7 - MBMS-Bearer-Result, Unsigned32, code 3506, section 6.4.8 - MBMS-eNB-IP-Multicast-Address, Address, code 3520, section 6.4.22 - MBMS-eNB-IPv6-Multicast-Address, Address, code 3521, section 6.4.23 - MBMS-GW-SSM-IP-Address-29.468, Address, code 3522, section 6.4.24 - MBMS-GW-SSM-IPv6-Address-29.468, Address, code 3523, section 6.4.25 - MBMS-Start-Time, Time, code 3507, section 6.4.9 - Radio-Frequency-29.468, Unsigned32, code 3508, section 6.4.10 - ROHC-Full-Header-Periodicity, Float32, code 3527, section 6.4.29 - ROHC-Max-CID, Unsigned32, code 3532, section 6.4.34 - ROHC-Profile, Unsigned32, code 3528, section 6.4.30 - ROHC-Request, Grouped, code 3526, section 6.4.28 - ROHC-Result, Unsigned32, code 3530, section 6.4.32 - TMGI-Allocation-Request, Grouped, code 3509, section 6.4.11 - TMGI-Allocation-Response, Grouped, code 3510, section 6.4.12 - TMGI-Allocation-Result, Unsigned32, code 3511, section 6.4.13 - TMGI-Deallocation-Request, Grouped, code 3512, section 6.4.14 - TMGI-Deallocation-Response, Grouped, code 3513, section 6.4.15 - TMGI-Deallocation-Result, Unsigned32, code 3514, section 6.4.16 - TMGI-Expiry, Grouped, code 3515, section 6.4.17 - TMGI-Number, Unsigned32, code 3516, section 6.4.18 - Userplane-Protocol-Result, Grouped, code 3529, section 6.4.31 Note: Name conflict with 3GPP TS 29.061 MBMS-GW-SSM-IP-Address (924). 3GPP TS 29.061 V10.4.0 (2011-09) CR 0355 added MBMS-GW-SSM-IP-Address (924). 3GPP TS 29.468 V14.0.0 (2016-12) CR 0021 added MBMS-GW-SSM-IP-Address (3522). Fix: MBMS-GW-SSM-IP-Address (3522) renamed to MBMS-GW-SSM-IP-Address-29.468 (3522). Note: Name conflict with 3GPP TS 29.061 MBMS-GW-SSM-IPv6-Address (925). 3GPP TS 29.061 V10.4.0 (2011-09) CR 0355 added MBMS-GW-SSM-IPv6-Address (925). 3GPP TS 29.468 V14.0.0 (2016-12) CR 0021 added MBMS-GW-SSM-IPv6-Address (3523). Fix: MBMS-GW-SSM-IPv6-Address (3523) renamed to MBMS-GW-SSM-IPv6-Address-29.468 (3523). Note: Name conflict with 3GPP TS 32.299 Radio-Frequency (3462). 3GPP TS 29.468 V12.0.0 (2014-09) added Radio-Frequency (3508). 3GPP TS 32.299 V13.1.0 (2015-06) CR 0638 added Radio-Frequency (3462). Fix: Radio-Frequency (3508) renamed to Radio-Frequency-29.468 (3508).
author Luke Mewburn <luke@mewburn.net>
date Tue, 07 Apr 2020 19:38:33 +1000
parents cec0812038bb
children
line wrap: on
line source

# This file contains the configuration for the rt_default extension of freeDiameter.
#
# This extension provides configurable routing properties for freeDiameter.

# This extension supports configuration reload at runtime. Send
# signal SIGUSR1 to the process to cause the process to reload its
# config.

# Lines starting with a # are comments and ignored.

##############################################################################
# The freeDiameter daemon will not allow forwarding a message to a peer that:
# - already forwarded the message (appear as Route-Record inside the message)
# - connection is not in STATE_OPEN state.
# We call here "eligible peer" a peer that is not screened out by one of these criteria.
#
# Even if a peer is specified as route for a message here, the daemon may
# choose to send a message to another peer, or return a UNABLE_TO_DELIVER error, if that peer is not eligible 
# at the time where the message is to be forwarded.
#
# Note also that defining a peer here will not result in the daemon trying to establish
# a connection to this peer. For this purpose, the peer must be defined in the main
# configuration (ConnectPeer), or connection established through other means (e.g. dynamic peer
# discovery extension).
#
# The default forwarding behavior of freeDiameter is:
# - if the message contains a Destination-Host AVP, and the designated peer is an eligible candidate, send to this peer.
# - if a peer does not support the message application or Relay application, give it a penalty for this message 
#    (it means that unless overwritten by an extension, the message will not be sent to that peer)
# - if one of the eligible peer advertised a realm matching the message's Destination-Realm, send to this peer.
#
# The mechanism is as follow:
# - the daemon builds a list of eligible peers, then attributes a score to these peers (see enum fd_rt_out_score in freeDiameter.h)
# - any number of extensions can register a callback and modify the score
# - after all callbacks have been called, the message is sent to the peer with the higher score. If an error is received, it is retried to the next peer in the list, and so on,
#   until the list is empty. In such situation, an error UNABLE_TO_DELIVER is generated.
#
# This extension allows to modify the score of some peers based on some criteria of the message.
#
# Finally, please note that the freeDiameter daemon does not support REDIRECT indications natively. 
# You have to load the rt_redir extension to add this support.
##############################################################################

# This file contains a list of RULE elements.
# Each RULE is made of three components:
#  - a CRITERIA, which specifies which messages the RULE apply to.
#  - a TARGET string, that specifies which peer(s) in the eligible list the rule is applied to
#  - and a SCORE, that is added to the matching peer's current score.
#
# In the following definitions, "STR/REG" stands for:
#   - a quoted string "some.peer" that will match exactly this string (case-insensitive), or
#   - a bracket-quoted string ["some regex"] that will be interpreted as a POSIX extended regular expression (case-sensitive), and attempt to match the string.
#
# The RULE is specified as:
#    CRITERIA : TARGET += SCORE ;
#
# The CRITERIA can be:
#    *   		-> matches any message.
#    oh="STR/REG"	-> selects the message if the string or regular expression matches the message's Origin-Host AVP content
#    or="STR/REG"   	-> idem with Origin-Realm
#    dh="STR/REG"   	-> idem with Destination-Host
#    dr="STR/REG"   	-> idem with Destination-Realm
#    un="STR/REG"   	-> idem with User-Name
#    si="STR/REG"   	-> idem with Session-Id
#
# The TARGET is also of a similar form:
#    "STR/REG"		-> Will apply the score to this peer if its Diameter-Id is matched by the string or regular expression.
#    rlm="STR/REG"	-> Idem with the peer's advertized Diameter-Realm.
#
# The SCORE is either numeric (positive or negative), or one of the following constants (see values in libfdcore.h):
#    NO_DELIVERY
#    DEFAULT
#    DEFAULT_REALM
#    REALM
#    REDIR_HOST     
#    REDIR_APP      
#    REDIR_REALM    
#    REDIR_REALM_APP
#    REDIR_USER     
#    REDIR_SESSION  
#    FINALDEST
#
#
# Here are some examples:
#  1) Rule to add a default next-hop peer to all messages:
#    * : "proxy.testbed.aaa" += DEFAULT ;
#
#  2) Rule to route messages for a given realm (realmA) through another realm (realmB):
#    dr="realmA" : rlm="realmB" += DEFAULT_REALM ;
#
#  3) Avoid sending messages with decorated NAI to the proxy A:
#    un=[".+!.+@.+"] : "proxy.A" += NO_DELIVERY ;



"Welcome to our mercurial repository"