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.clt_ipIEC 104 client addressIP addressYes
redundancy_groups.rg_namethis identifies the redundancy groupAny non empty stringYes
srv_ipServer IP addressIP address, machine's default IP for a given interface, default = 0.0.0.0No
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 = 12, range : 1 to 32767No
w_valueAcknowledge the reception latest after this number of APDU'sdefault = 8, range : 1 to 32767No
t0_timeouttime out of connection establishmentdefault = 30 seconds, range : 1 to 255No
t1_timeouttime out for send or test APDU'sdefault = 15 seconds, range : 1 to 255No
t2_timeouttime out for acknowledges in case of no data messages (t2 < t1)default = 10 seconds, range : 1 to 255No
t3_timeouttime out for sending test framesdefault = 20 seconds, range : 1 to 172800No
ca_asdu_sizesize of "Common Address of ASDU"default = 2 (byte), enum: 1 or 2No
ioaddr_sizesize of 'Information Object Address'default = 3 (byte), enum: 1, 2 or 3No
mode

"accept_always": accept connection or maintain connection with center independently from the south asset connection status 

"accept_if_south_connx_started": accept connection or maintain connection with center only if south asset connection is established and running

default = "accept_always", enum: "accept_always" or "accept_if_south_connx_started"
ca_asdu_sizesize of "Common Address of ASDU"default = 2 (byte), enum: 1 or 2No
ioaddr_sizesize of 'Information Object Address'default = 3 (byte), enum: 1, 2 or 3No
asdu_size

maximum ASDU size in

asdu_size

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

default = 0 (byte), range : 0 to 255No
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
cmd_exec_timeoutDefines the command execution monitoring timeout in seconds.default = 20 seconds, range : 1 to 3 600No
cmd_recv_timeoutThis parameter defines the highest allowable deviation of received command time tag and local clock in seconds. If the difference is too big, command is ignored.default = 0 (disabled), range : 0 to 3 600No
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 =1, enum: 0, 1 or 2No
filter_listList of Authorized Originatorsdefault = emptyNo
orig_addrOriginator addressenum: 0, 1, ..., N
cmd_destDefines the destination service on which to execute the command default = broadcastNo
south_monitoringconnection loss and gi failure handling feature
Yes
south_monitoring.assetsarray of assets name used to monitor the connection and gi status information from the southdefault = [CONSTAT-1, CONSTAT-2]No

Configuration JSON structure

Code Block
languagejs
{
   "protocol_stack":{
      "name":"iec104server",
      "version":"1.0",
      "transport_layer":{
         "redundancy_groups":[
            {
               "connections":[
                  {
                     "protocolclt_stackip":{
"192.168.0.10"
          "name":"iec104server",
        },
            "version":"1.0",
      "transport_layer":{
         "redundancy_groups":[
            {"clt_ip":"192.168.0.11"
               "connections":[   },
                  {
                     "clt_ip":"19210.168152.01.10"
                  },
                  {
                     "clt_ip":"19210.168152.01.11"
                  },

               ],
               {"rg_name":"red-group-1"
            },
         "clt_ip":"10.152.1.10"
   {
               },"connections":[
                  {
                     "clt_ip":"10192.152168.10.1110"
                  },
               ],
   {
            "rg_name":"red-group-1"
            },
       "clt_ip":"192.168.0.11"
     {
               "connections":[},
                  {
                     "clt_ip":"192.168.0.1012"
                  },
                  {
                     "clt_ip":"192.168.0.1114"
                  },
                  {
                     "clt_ip":"19210.168152.01.1210"
                  },
                  {
                     "clt_ip":"19210.168152.01.1411"
                  },
                  {
                     "clt_ip":"10.152.1.1012"
                  },
                  {
                     "clt_ip":"10.152.1.1113"
                  },

               ],
               "rg_name":"red-group-2"
         {
   }
         ],
         "cltsrv_ip":"100.1520.10.120",
         "port":2404,
         }"tls":false,
                  {
   "k_value":12,
         "w_value":8,
         "cltt0_iptimeout":"10.152.1.13"30,
         "t1_timeout":15,
         }
     "t2_timeout":10,
          ]"t3_timeout":20,
               "rg_namemode":"red-group-2accept_always"
      },
      }"application_layer":{
         ]"ca_asdu_size":2,
         "srv_ip":"0.0.0.0""ioaddr_size":3,
         "portasdu_size":24040,
         "tlsasdu_queue_size":false100,
         "ktime_valuesync":12false,
         "wcmd_exec_valuetimeout":820,
         "t0cmd_recv_timeout":300,
         "t1cmd_timeoutdest":15"broadcast",
         "t2_timeoutaccept_cmd_with_time":101,
         "t3filter_timeoutlist":20[
      },
      "application_layer":{
         "ca_asdu_size":2,
         "ioaddrorig_sizeaddr":3,1
         "asdu_size":0,
         "asdu_queue_size":100},
         "time_sync":false,
   {
      "cmd_exec_timeout":20,
         "cmdorig_recv_timeoutaddr":0,2
            "cmd_dest":"broadcast",}
         "accept_cmd_with_time":1,
 ]
      },
      "filtersouth_listmonitoring":[
            {
               "orig_addrasset":"CONSTAT-1"
            },
            {
               "orig_addrasset":"CONSTAT-2"
            }
         ]
      }
   }
}

TLS configuration

The CS 104 standard can also be used with TLS to realize secure and authenticated connections.

...