Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

AttributeDescriptionExpected valuesMandatory
namethis identifies the protocol stackiec104client, iec104server, tase2client, tase2server, 61850client, 61850server, etc...Yes
versionversion number of the configuration file2 digits x.y => x = major change, y = minor changeYes
redundancy_groupsarray of redundancy groups
Yes
redundancy_groups.connectionsarray of connections of a given redundancy group
Yes
redundancy_groups.connections.srv_ipIP address to remote IEC 104 serverIP addressYes
redundancy_groups.connections.portport number to remote IEC 104 serverdefault = 2404No
redundancy_groups.connections.connestablish connection at startupTRUE, FALSE, default = TRUENo
redundancy_groups.connections.startstart data transfer at startupTRUE, FALSE, default = TRUENo
redundancy_groups.k_valueMaximum number of outstanding (unacknowledged) APDU's at a given timedefault = 12No
redundancy_groups.w_valueAcknowledge the reception latest after this number of APDU'sdefault = 8No
redundancy_groups.t0_timeouttime out of connection establishmentdefault = 1030No
redundancy_groups.t1_timeouttime out for send or test APDU'sdefault = 15No
redundancy_groups.t2_timeouttime out for acknowledges in case of no data messages (t2 < t1)default = 10No
redundancy_groups.t3_timeouttime out for sending test framesdefault = 20No
redundancy_groups.rg_namethis identifies the redundancy group
Yes
redundancy_groups.tlsactivation of TLS (see tls configuration chapter for details)TRUE, FALSE, default = FALSENo
orig_addrOriginator Addressdefault = 0No
ca_asdu_sizesize of "Common Address of ASDU"default = 2 (byte)No
ioaddr_sizesize of 'Information Object Address'default = 3 (byte)No
startup_timetime to wait for startup completiondefault = 180 (seconds)No
asdu_size

maximum ASDU size in transmission direction, if set to "0" => maximum possible value is automatically used.

default = 0 (byte)No
gi_timetime to wait for General Interrogation (GI) completiondefault = 0 (seconds)No
gi_cyclesend General Interrogation (GI) cyclically for the specified period of timedefault = 0 (seconds), if 0  => DEACTIVATEDNo
gi_all_casend a separate GI request to every CA; otherwise a broadcast GI request is usedTRUE, FALSE, default = FALSENo
gi_repeat_countrepeat GI for this number of times in case it is incompletedefault = 2No
disc_qualinformation object quality in case of interrupted connectionIV = Invalid, NT = Not Topical, default = NTNo
send_iv_timetime delay before infos are sent as invalid (0 = deactivated)default = 0No
tsivspecifies what to do with a time stamp marked as 'invalid'

remove, process, default = remove

remove: the time stamp will be removed from the information object

process: the time stamp will be processed on regular basis and additionally marked as 'not synchronized'

No
utc_timeUTC timezone (=TRUE) or local timezone (=FALSE) for time conversionTRUE, FALSE, default = FALSENo
comm_wttaguse commands with time tag (=TRUE) or without time tag (=FALSE)TRUE, FALSE, default = FALSENo
comm_parallelmaximum number of commands to be executed at in parallel (0 = unlimited)default = 0No
exec_cycl_testexecute cyclical test requests (C_TS_NA_1/C_TS_TA_1) in monitoring direction (=TRUE) or not (=FALSE)TRUE, FALSE, default = FALSENo
startup_statestartup in active mode (=TRUE) or in passive mode (=FALSE)TRUE, FALSE, default = TRUENo
reverseallow transmission of information objects in reverse direction (=TRUE) or only in standard direction (=FALSE)TRUE, FALSE, default = FALSENo
time_syncperform time synchronization (=TRUE)default = 0 (seconds), if 0  => DEACTIVATEDNo

...

AttributeDescriptionExpected valuesMandatory
namethis identifies the protocol stackiec104client, iec104server, tase2client, tase2server, 61850client, 61850server, etc...Yes
versionversion number of the configuration file2 digits x.y => x = major change, y = minor changeYes
redundancy_groupsarray of redundancy groups
Yes
redundancy_groups.connectionsarray of connections of a given redundancy group
Yes
redundancy_groups.connections.clt_ipaddress to local IEC 104 clientIP addressYes
redundancy_groups.rg_namethis identifies the redundancy group
Yesbind_on_ipbind on a dedicated local IP addressTRUE, FALSE, default = FALSENo
srv_ipServer IP addressIP address, machine's default IP for a given interfaceNo
portThis defines the TCP/IP port to be used by the server.default = 2404No
tlsactivation of TLS (see tls configuration chapter for details)TRUE, FALSE, default = FALSENo
k_valueMaximum number of outstanding (unacknowledged) APDU's at a given timedefault = 12No
w_valueAcknowledge the reception latest after this number of APDU'sdefault = 8No
t0_timeouttime out of connection establishmentdefault = 1030No
t1_timeouttime out for send or test APDU'sdefault = 15No
t2_timeouttime out for acknowledges in case of no data messages (t2 < t1)default = 10No
t3_timeouttime out for sending test framesdefault = 20Noorig_addrOriginator Addressdefault = 0No
ca_asdu_sizesize of "Common Address of ASDU"default = 2 (byte)No
ioaddr_sizesize of 'Information Object Address'default = 3 (byte)No
asdu_size

maximum ASDU size in transmission direction, if set to "0" => maximum possible value is automatically used.

default = 0 (byte)No
asdu_queue_sizeminimum number of ASDUs that can be stored in the asdu bufferdefault = 100No
time_syncIf set on "TRUE" this parameter allows to synchronize the clock of the local computer by the server. If set on "FALSE", the clock is not synchronized.TRUE, FALSE, default = FALSENo
commcmd_exec_timeoutDefines the command execution monitoring timeout in milliseconds. The default setting is 20 seconds.default = 20 seconds (20 000 ms)No
commcmd_recv_timeoutThis parameter defines the highest allowable deviation of received command time tag and local clock. If the difference is too big, command is ignored.default = 0 (disabled)No
tsivspecifies what to do with a time stamp marked as 'invalid'

ignore, process, default = ignore

ignore: the time stamp quality 'not synchronized' will be ignored and the time stamp will be processed on regular basis. IV-bit will remain 0

process: the time stamp will be send with IV-bit set to 1

No
resetreset/restart the system on C_RP_NA_1 ASDU (=TRUE) or not (=FALSE)TRUE, FALSE, default = FALSENo
accept_cmd_with_timeIf set to 0, then accept no commands with timestamp, if set to 1 accept only commands with timestamp, if set to 2, then accept bothdefault =1No
filter_origaccept commands only originated from an authorized originator (=TRUE) or accept all originators (=FALSE)TRUE, FALSE, default = FALSENo
filter_listList of Authorized Originators
No

...

Code Block
languagejs
{
   "protocol_stack":{
      "name":"iec104server",
      "version":"1.0",
      "transport_layer":{
         "redundancy_groups":[
            {
               "connections":[
                  {
                     "clt_ip":"192.168.0.10"
                  },
                  {
                     "clt_ip":"192.168.0.11"
                  },
                  {
                     "clt_ip":"10.152.1.10"
                  },
                  {
                     "clt_ip":"10.152.1.11"
                  }
               ],
			               "rg_name":"red-group-1"
            },
            {
               "connections":[
                  {
                     "clt_ip":"192.168.0.10"
                  },
                  {
                     "clt_ip":"192.168.0.11"
                  },
                  {
                     "clt_ip":"192.168.0.12"
                  },
                  {
                     "clt_ip":"192.168.0.14"
                  },
                  {
                     "clt_ip":"10.152.1.10"
                  },
                  {
                     "clt_ip":"10.152.1.11"
                  },
                  {
                     "clt_ip":"10.152.1.12"
                  },
                  {
                     "clt_ip":"10.152.1.13"
                  }
               ],
			               "rg_name":"red-group-2"
            }
         ],
         "bind_on_ip":false,
         "srv_ip":"0.0.0.0",
         "port":2404,
         "tls":false,
         "k_value":12,
         "w_value":8,
         "t0_timeout":1030,
         "t1_timeout":15,
         "t2_timeout":10,
         "t3_timeout":20
      },
      "application_layer":{
         "origca_asdu_addrsize":"0"2,
         "caioaddr_asdu_size":23,
         "ioaddrasdu_size":30,
         "asdu_queue_size":0100,
         "time_sync":false,
         "commcmd_exec_timeout":20000,
         "commcmd_recv_timeout":5000,
         "tsiv":"IGNORE",
         "reset":falseaccept_cmd_with_time":1,
         "filter_orig":false,
         "filter_list":[
            {
               "orig_addr":1
            },
            {
               "orig_addr":2
            }
         ]
      }
   }
} 

IEC 104 datapoint representation

...