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.connectionsconnection.patharray of connection pathsconnection.path.srv_ipIP address to remote IEC 104 serverIP addressYes
connection.path.clt_ipclient IP in case of multiple network interfaces server access

IP address, machine's default IP for a given interface

No
connection.pathredundancy_groups.connections.portport number to remote IEC 104 serverdefault = 2404No
tlsactivation of TLS (see tls configuration chapter for details)TRUE, FALSE, default = FALSENo
redundancy_groups.connections.k_valueMaximum number of outstanding (unacknowledged) APDU's at a given timedefault = 12No
redundancy_groups.connections.w_valueAcknowledge the reception latest after this number of APDU'sdefault = 8No
redundancy_groups.connections.t0_timeouttime out of connection establishmentdefault = 10No
redundancy_groups.connections.t1_timeouttime out for send or test APDU'sdefault = 15No
redundancy_groups.connections.t2_timeouttime out for acknowledges in case of no data messages (t2 < t1)default = 10No
redundancy_groups.connections.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
conn_allestablish all paths within one connection at the same time (=TRUE) or only one (=FALSE)TRUE, FALSE, default = FALSENo
start_allstart communication on all established paths at the same time (=TRUE) or on only one (=FALSE)TRUE, FALSE, default = FALSENo
conn_passvestablish connection even in passive mode (=TRUE) or not (=FALSE)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) cyclicallyTRUE, FALSE, default = FALSENo
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)TRUE, FALSE, default = FALSENo

...

Code Block
languagejs
{
   "protocol_stack":{
      "name":"iec104client",
      "version":"1.0",
      "transport_layer":{
         "redundancy_groups":[
            {
               "connections":[
                  {
                     "srv_ip":"192.168.0.10",
                     "port":2404,
                     "conn":true,
                     "start":true,
                     }"k_value":12,
                  {   "w_value":8,
                     "srvt0_iptimeout":"192.168.0.11"10,
                     "portt1_timeout":240415,
                     "connt2_timeout":true10,
                     "startt3_timeout":false20
                  },
                 ],
 {
                     "rgsrv_nameip":"red-group-1192.168.0.11",
                     "tlsport":false2404,
             },
        "conn":true,
    {
                 "connectionsstart":[false,
                     {"k_value":12,
                     "srvw_ipvalue":"192.168.0.12"8,
                     "portt0_timeout":240410,
                     "connt1_timeout":false15,
                     "startt2_timeout":false10,
                  },
   "t3_timeout":20
               {
   }
                  "srv_ip":"192.168.0.13"],
                     "port":2404,
      "rg_name":"red-group-1",
               "conntls":false,
            },
            "start":false{
               "connections":[
   }
               ],{
               "rg_name":"red-group-2",
      "srv_ip":"192.168.0.12",
                     "tlsport":false2404,
            }
         ]"conn":false,
           "k_value":12,
          "w_valuestart":8false,
            "t0_timeout":10,
         "t1k_timeoutvalue":1512,
         "t2_timeout":10,
            "w_value":8,
                     "t3t0_timeout":2010,
                     "connt1_alltimeout":true15,
             "start_all":false,
        "t2_timeout":10,
                     "connt3_passv":falsetimeout":20
                  },
                  {
                     "srv_ip":"192.168.0.13",
                     "port":2404,
                     "conn":false,
                     "start":false,
                     "k_value":12,
                     "w_value":8,
                     "t0_timeout":10,
                     "t1_timeout":15,
                     "t2_timeout":10,
                     "t3_timeout":20
                  }
               ],
               "rg_name":"red-group-2",
               "tls":false
            }
         ]
      },
      "application_layer":{
         "orig_addr":0,
         "ca_asdu_size":2,
         "ioaddr_size":3,
         "startup_time":180,
         "asdu_size":0,
         "gi_time":60,
         "gi_cycle":false,
         "gi_all_ca":false,
         "gi_repeat_count":2,
         "disc_qual":"NT",
         "send_iv_time":0,
         "tsiv":"REMOVE",
         "utc_time":false,
         "comm_wttag":false,
         "comm_parallel":0,
         "exec_cycl_test":false,
         "startup_state":true,
         "reverse":false,
         "time_sync":false
      }
   }
}

...