1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- Diameter services DTD -->
4 <!ELEMENT services (stack*, node*)>
7 <!ATTLIST stack id CDATA #REQUIRED dictionary CDATA #REQUIRED validationMode (BeforeEncoding | AfterDecoding | Always | Never) #IMPLIED validationDepth (Complete | FirstError) #IMPLIED fixMode (BeforeEncoding | AfterDecoding | Always | Never) #IMPLIED ignoreFlagsOnValidation (yes | no) #IMPLIED>
11 id: Normally the id corresponds to the Application-Id for which the dictionary provided is designed
12 (in multistack applications, it shall be mandatory respect such association to know the stack used
13 for processed messages).
14 dictionary: Path to the dictionary file.
15 validationMode: Sets the validation mode. Default is 'AfterDecoding'.
16 validationDepth: Sets the validation depth. Default is 'FirstError'.
17 fixMode: Sets the fix mode. Default is 'BeforeEncoding'.
18 ignoreFlagsOnValidation: Ignore flags during message validation. Default is 'no'.
22 <!ATTLIST node originRealm CDATA #REQUIRED applicationId CDATA #REQUIRED originHost CDATA #IMPLIED cer CDATA #IMPLIED dwr CDATA #IMPLIED allowedInactivityTime CDATA #IMPLIED tcpConnectDelay CDATA #IMPLIED answersTimeout CDATA #IMPLIED ceaTimeout CDATA #IMPLIED watchdogPeriod CDATA #IMPLIED entity CDATA #IMPLIED entityServerSessions CDATA #IMPLIED diameterServer CDATA #IMPLIED diameterServerSessions CDATA #IMPLIED balance (yes | no) #IMPLIED sessionBasedModelsClientSocketSelection (SessionIdLowPart | SessionIdHighPart | SessionIdOptionalPart | RoundRobin) #IMPLIED retries CDATA #IMPLIED log CDATA #IMPLIED splitLog (yes | no) #IMPLIED detailedLog (yes | no) #IMPLIED dumpLog (yes | no) #IMPLIED burstLog (yes | no) #IMPLIED>
26 originRealm: Node identifier (Origin-Realm name).
27 applicationId: The Application-Id provided must exists as a registered 'stack id'.
28 originHost: Diameter application host name (system name). If missing, process sets o.s. hostname.
29 Note that if you have two or more realms, the names must be different.
30 cer: User defined CER path file to be encoded to establish diameter connections.
31 If missing, will be harcoded.
32 dwr: User defined DWR path file to be encoded for diameter protocol keep alive.
33 If missing, will be harcoded.
34 allowedInactivityTime: Milliseconds for the maximum allowed inactivity time on server sessions born over the
35 local server before being reset. If missing, default value of 90000 will be assigned.
36 tcpConnectDelay: Milliseconds to wait TCP connect to any server. If missing, default value of 200 will
38 answersTimeout: Milliseconds to wait pending application answers from diameter peers. If missing,
39 default value of 10000 will be assigned.
40 ceaTimeout: Milliseconds to wait CEA from diameter server. If missing, default value of 'answersTimeout'
42 watchdogPeriod: Milliseconds for watchdog timer (Tw) for diameter keep-alive procedure. If missing, default
43 value of 30000 will be assigned.
44 entity: Target diameter entity (comma-separated '<address>:<port>' format).
45 For example: 10.20.30.40:3868,10.20.30.41:3868. If missing, no entity will be enabled.
46 entityServerSessions: Diameter entity server sessions (0: diameter entity disabled). Default value of 1.
47 diameterServer: Diameter own server address in '<address>:<port>' format. For example: 10.20.30.40:3868.
48 If missing, no local server will be enabled.
49 diameterServerSessions: Diameter own server available connections (0: diameter server disabled). Default value of 1.
50 Negative value implies no limit accepting incoming connections.
51 balance: Balance over entity servers instead of doing standard behaviour (first primary, secondary
52 if fails, etc.). Default value 'no'.
53 sessionBasedModelsClientSocketSelection: By default, round-robin will be applied for IEC model (SMS/MMS), and Session-Id Low Part
54 will be analyzed for ECUR/SCUR model (data, voice and content). You could change ECUR/SCUR
55 analysis behaviour providing 'SessionIdHighPart', 'SessionIdOptionalPart' (atoi applied;
56 usually subscriber id data, i.e. MSISDN or IMSI) and 'RoundRobin' (also 'SessionIdLowPart')
57 retries: Expired responses will cause a number of request retransmissions. Disabled by default (0 retries).
58 log: Process log file (operations result, traffic log, etc.). By default '<originRealm>.launcher.log'.
59 Empty string or "null" name, to disable. Warning: there is no rotation for log files
60 (use logrotate or whatever you consider).
61 splitLog: Splits log file (appends to log filename, extensions with the type of event: see help on
62 startup information-level traces). No log files for code/decode and load operations are created.
64 detailedLog: Insert detailed information at log files. Should be disabled on automatic tests. Useful on
65 'balance' mode to know messages flow along the sockets. Default value 'no'.
66 dumpLog: Write to disk every incoming/outcoming message named as:
67 '<originRealm>.<hop by hop>.<end to end>.<message code>.<request|answer>.<type of event>.xml'
69 burstLog: Burst operations log file. By default '<originRealm>.launcher.burst'. Empty string or "null" name, to disable.
70 Warning: there is no rotation for log files (use logrotate or whatever). Output: dot (.) for each
71 burst message sent/pushed, cross (x) for popped ones, and order number when multiple of 1% of burst
72 list size, plus OTA requests when changed.