8.5.1
The ETBN Inauguration process is defined by the state transition diagram on Figure 33.
Definitions for this diagram are the following:
• entry: action performed once only at beginning of state
• exit: action performed once only at end of state
• do: action performed in a periodic loop
• NOT, AND, OR: logical NOT, AND, OR operators
IEC
Line A Line A
Line B Line B
Train Switch
Train Switch
Line A Line A
Line B Line B
Figure 33 – ETBN Inauguration state diagram Actions
8.5.2
EtbnConfigure
ETB switch ports are set in Forwarding state, IP forwarding is disabled, no IP configuration, ETB switch forwarding table cleared,etc.
IEC
[Power-up OR Reset]
[EtbTopoCntValid OR NodeRecovery]
[(NOT InaugInhibition) OR NodeRecovery]
[NOT ConnTableValid]
entry/SetEtbTopoCnt entry/SetIpMapAndServices entry/EnableRouting entry/StartTcnInauguration do/BuildPhysicalTopology do/BuildLogicalTopology do/ManageEtbLinkStatus do/ManageEndNode exit/AdvertiseTrainApp exit/DisableRouting exit/StopIpMapAndServices
INAUGURATED entry/AdvertiseTrainApp do/BuildPhysicalTopology do/BuildLogicalTopology do/ManageEtbLinkStatus READY_FOR_INAUGURATION
do/BuildPhysicalTopology do/BuildLogicalTopology do/ManageEtbLinkStatus
NOT_INAUGURATED entry/EtbnConfigure entry/EnableLinkAggr entry/StartTtdp entry/DisableRouting
INIT
[(NOT EtbTopoCntValid) AND (NOT InaugInhibition)]
EnableLinkAggr
DIR1 ETBN switch ports (respectively DIR2 ports) are configured to be statically aggregated together.
StartTtdp
Start TTDP daemon.
Initial Value configuration:
• ETBN ports state = “Forwarding”
• etbnInhibition = False (Inauguration is allowed at Consist level linked to ETBN)
• InaugInhibition = False (Inauguration is allowed at Train level, see description below)
• ConnTableCrc32 = “ConnTableCrc32 Default Value”
• Topology Counter = “etbTopoCnt DefaultValue”
NOTE etbnInhibition is Boolean value produced by each ETBN in TOPOLOGY frame. It is set to True when train application forbids new Inauguration (train moving in operational mode for example), set to False when train application enables Inauguration to modify all IP settings. This information is valid at local ETBN scope. At power up, etbnInhibition field in topology is set to False (Inauguration allowed).
DisableRouting
Forwarding between ETB and CN is disabled. Communication is not available between CNs.
BuildPhysicalTopology
TTDP daemon builds Connectivity Table (Physical Topology), calculates ConnTableCrc32 and updates “TTDP specific ETB” TLV in TTDP TOPOLOGY frames (see 8.7.6).
BuildLogicalTopology
TTDP daemon builds Train Network Directory (Logical Topology), calculates etbTopoCnt (see below) and updates “TTDP specific ETB” TLV in TTDP TOPOLOGY frames (see 8.7.6).
ManageEtbLinkStatus
ETBN shall manage status of ETB links with its neighbours using results of:
• TTDP HELLO frames
• Ethernet physical port status SetEtbTopoCnt
Memorize CRC of Train Network Directory as current Topology Counter (Inauguration Identifier). While the ETB node is in state INAUGURATED, etbTopoCnt field in TTDP TOPOLOGY frame is fixed to the memorized CRC of Train Network Directory.
SetIpMapAndServices
Initialize IP mapping (all IP parameters: IP address, network mask, name resolving, IP routes, etc.) and services (DHCP, NAT, DNS, etc.) using TTDP results (“ETBN Id” and “Subnet Id”).
(Re-)start services, clear ARP table, etc.
EnableRouting
Forwarding between ETB and CN is enabled. Communication between CNs is available.
AdvertiseTrainApp
New Inauguration is advertised to train application inside CN. Depending on CN technology, ETBN shall export train topology.
StartTcnInauguration
In state INAUGURATED, each ETBN shall allow TCN Inauguration to proceed as described by communication profile (see IEC 61375-2-3).
ManageEndNode
TTDP daemon manages end node identification and sets unconnected ports in Discarding state. Also, when an end node recovery has happened, this function is responsible for setting previously Discarding ports in Forwarding state (see 8.11.3).
StopIpMapAndServices
Clear IP mapping (all IP parameters: IP address, network mask, name resolving, IP routes, etc.) and stop services (DHCP, NAT, DNS, etc.).
Transitions 8.5.3
Power-up OR Reset
ETBN power on or reset event.
ConnTableValid
Boolean value, True when Physical Topology is shared by all ETBNs (same Connectivity table CRC for all ETBNs).
EtbTopoCntValid
Boolean value, True when Logical Topology is shared by all ETBNs (same Train Network Directory CRC for all ETBNs).
InaugInhibition
This flag is the result of ORing “etbnInhibition” field (considered as a boolean) of TOPOLOGY frames received from all other ETBNs and CN local value. To enable Inauguration all CNs shall enable it (i.e. all etbnInhibition flags advertised by ETBNs shall be False). At power up, InaugInhibition is not meaningful until ETBN reach at least once the INAUGURATED state (so its value at startup is set to False to allow first Inauguration).
NodeRecovery
True when own ETBN has a valid etbTopoCnt, even when TOPOLOGY frames received from other ETBNs indicate Inauguration inhibition (at least one True, in their etbnInhibition flags).
This can happen when own ETBN:
• is an intermediate node, was previously a known node, disappeared and is back again,
• is an intermediate node and wakes up late in a Consist containing at least an already inaugurated ETBN.
• is a node recovering in a group of lost end nodes. A certain delay shall be waited for when going from READY_FOR_INAUGURATION to INAUGURATED: it shall be long enough (around 200 ms) so as to:
– allow the temporary end node (connected to the group of real lost end nodes) to set its temporary extremity link back from Discarding to Forwarding state (when discovering the currently recovering nodes),
– let TOPOLOGY frames be transmitted to the recovering nodes.
This delay is necessary to avoid a race condition with previously lost end nodes performing a "fast local Inauguration on their own side" (i.e. without seeing the other ETB nodes): before going from READY_FOR_INAUGURATION to INAUGURATED state, the recovering end nodes wait long enough to see again TOPOLOGY frames from other ETB nodes and converge to already inaugurated ETB topology.