When selecting the Ethernet protocols, it is
important that they have deterministic behaviour, bounded latency and precise
synchronization with Quality of service.
Avionics Full Duplex
Switched Ethernet (AFDX)
AFDX is a deterministic network
standard, developed by Airbus, for safety-critical applications that
utilizes dedicated bandwidth while providing deterministic quality of service(QoS). The AFDX is based on ethernet
data network (UDP, SNMP) and protocol specifications (IEEE 802.3 and ARINC 664,
Part 7) for the exchange of data between Avionics Subsystems . The primary features
of AFDX include full duplex, redundancy, determinism, high
speed performance, switched and profiled network. It supports for network based
on 10, 100 Mbps or 1 Gbps. The predecessor to AFDX, ARINC 429 is a bus system
that supports 1-1 and 1-n connections. Compared to the predecessor it has
higher data transfer rate (approximately one thousand times faster) and significant
reduce in wiring which reduces the weight .
AFDX uses the concept of Token
bucket (Asynchronous Transfer Mode –
virtual connection / circuit is being established before the actual data
exchange happens between the endpoints). The possibility for collision of data
is eliminated using full duplex switched network – one for receiving and the
other for transmitting. The network is designed for the critical data being
prioritized using the QoS policies there by achieving latency, jitter and
delivery within the set parameters. A highly intelligent switch is used which
is capable to buffer packets for both reception and transmission. The messages
are encapsulated with in the UDP/IP and then the Ethernet Headers are placed.
The main components in AFDX system are
End system: It is the interface between the sub systems (global positioning
system) and the network
Interconnect: A full duplex switched Ethernet interconnect consists of switches
that forward frames to the appropriate destinations
Virtual Links: It is a unidirectional virtual connection from 1 to 1 or 1 to n
Virtual Links and Message
the traditional Ethernet, the frames are routed based on the Ethernet
destination address. In AFDX the frames are routed using the 16-bit value
called as Virtual Links. The Virtual links shall partition the network into communication
channels with predefined scheduling time and link bandwidth. These are
unidirectional and the switched route the packets based on the virtual link ID.
Each virtual link should at least have one or even more predefined receiving end
systems that the packets are transmitted to.
When an application sends a message
to a communication port the source and destination end systems and the AFDX
network is configured to deliver the message successfully. For example, a
message M is transmitted to port S. Then the port connected to Endpoint S shall
encapsulate the message as per the AFDX protocol format and adds it on top UDP
and sends it to the AFDX switched network on VLID 50. The forwarding tables in
the network switch are configured to deliver the frame to the End system D1 and
End system D2. In the End systems, the message M is extracted from the frame
and is transmitted to the port D1 and D2.
Isolation and Scheduling
The virtual link is assigned with two
Allocation Gap (BAG) – it’s a value that range in the power of 2 from the
interval 1 to 128 ms. It represents the minimum interval that are transmitted
in milliseconds. Depending on the value configured for a virtual link the frame
can never be transmitted before that
– The largest frame in bytes that can be transmitted on the virtual link
For example, if a VLID 50 has the
Lmax of 100 bytes and BAG is of 4ms, then the maximum bandwidth for VLID 50 is
of (100*8*1000/4) 200 kbps. The choice of the BAG and Lmax depends on the
requirement of the application and the bandwidth capability.
AFDX switch forwards packets according to a static MAC table. And Each MAC
address in the table correspond to a virtual link Identifier. The Rx and Tx
buffers store packets in a FIFO and the I/O processing unit in the switch will
move the packets according to the virtual link identifier. AFDX switch contain
functions for filtering, policing and monitoring. Filtering is done based on
the frame integrity, frame length and valid destination. Traffic policing is
based on the token bucket algorithm which keeps token for all the virtual
links. When a frame is received, it checks the account and if enough credits
are available the packet is sent and credits debited. The tokens are credited
as time progress (depending on the BAG and Lmax). Monitoring is used to log the
switch operation and health of the network. The traffic policing makes sure
that no virtual links routed through the switch that exceeds the bandwidth.
AFDX Message Structure
Ethernet for Control
Automation Technology (EtherCAT)
EtherCAT is a high performance
industrial network based on Ethernet system invented by Beckhoff Automation.
The protocol is suitable for hard and soft real time requirements even for the
applications which require short update rates of less than 100 microsec with
precise synchronization of less than 1 microsec and is standardised in IEC
61158. It is used to achieve faster and more efficient communication network.
The main features of EtherCAT include highly flexible, short update rate, low
communication jitter and minimal hardware costs. It supports network up to 100
Mbps full duplex. The Ethernet frames shall have the capability of passing and receiving
the data at the same time, thereby the utilization of the data rate increases a
functions as a Master-slave network. The master shall control the network and
passage of the frames and slave shall provide I/O. The master instead of
transmitting data specifically for each node, it shall transmit the frames
through every node. The EtherCAT nodes shall read the data in a specific frame
which are addressed to them, when a frame passes through them. The frames in
EtherCAT contains telegrams. If the slave node needs to transmit a data then it
shall place it in the frame as a telegram. The frame is passed through to the
other node and that node shall absorb data and / or feed to the telegram. In
this process, frames are only delayed by a few nanoseconds. Instead of waiting
till the complete frame is received by the node, the node shall start
processing it immediately. After all the slave nodes received the frame, then
it shall be sent back to the master. Periodically the frames are send by the
master and the slaves shall process the data required and shall send back to
the master. The EtherCAT frames can be compared as a train and the telegrams
are like the compartments of the train.
EtherCAT protocol has its own the EtherType in the Ethernet frame, to specify a
frame as EtherCAT frame, the EtherType is set to be 0x88a4. The EtherCAT frames
has an option to be placed on top of the UDP. With the UDP, the EtherCAT
messages can be transmitted to another subnet with a router. If an EtherCAT
message is received by another subnet with the UDP packaging, the UDP unpacking
is done only at the first station. EtherCAT frames are still following the
standard frame sizes, the frames can be monitored using the standard tools.
The communication between the master
and slave can be either Process Data communication – Where the cyclic data
transfer between the master and slave is achieved by mapping the logical
process data space in the frame to each slave node by the master, or Mailbox
communication function – where the master sends a command to slaves and the
slaves shall respond to the master.
some distributed processes need to do a simultaneous task, precise
synchronization is particularly important. For the synchronization, the
accurate alignment of the distributed clocks through the network must be done.
This is taken care by the master. As the EtherCAT communication shall utilize a
logical ring structure (master sends data to slave and slave shall send the
data back to master), the master clock can determine the propagation delay
offset to the individual slave clocks accurately. The distributed clocks are
adjusted based by the value and the complete network shall achieve a precise
network wide timebase with a jitter less than 1 microsec. However, a high
resolution distributed clocks are required and the accurate information
regarding the local timing during the data acquisition.
was developed by TTTech Computertechnik AG to enable the time triggered
communication over Ethernet and achieving the deterministic real time communication
for safety related and highly real time applications. It’s been standardized by
SAE International as SAE AS6802. TTEthernet integrates the AFDX Virtual links,
so provides AFDX communication as Rate Constrained communication and being a transparent
synchronization protocol it can coexist with the other traffic on the same
physical communication network. It could be the solution for all the
applications ranging from control systems, Entertainment to safety related applications.
operates at the ISO/ OSI Level2, which is above the physical layer and below
the network layer. The network needs to be a 100 Mbps or 1 Gbps full duplex and
by the full duplex, it can avoid the unpredictable conflicts while accessing a
shared physical medium. All the devices in the TTEthernet network are synchronized
using the clock synchronization protocol and the traffic in the network is
managed for achieving the Quality of Service (QoS). All the nodes are
synchronized to the common time base to sub microsecond accuracy. Multiple redundant
masters are used such that if any one fails, the network shall recover
immediately with no loss of accuracy. During the initial startup phase, the
clocks in the network are synchronized and the periodic operation is
established. And the clocks are periodically synchronized to the common clock
to counter any possible deviation and this is called as integration cycle.
Data flow and traffic
integrates different time criticality traffic in one network and broadly the
traffic in TTEthernet is classified into three classes. They are in descending order of the priority
as Time Triggered (TT), Rate Constrained (RC) and Best Effort (BE) traffic.
Time Triggered Traffic
has the highest priority and nearly less than micro sec jitter can be achieved.
TT messages are transmitted periodically at the same time interval. The
synchronized local clocks play vital role for the TT messages to be transmitted
successfully. These class is suited for the deterministic distributed system.
The schedule shall be calculated offline and then shall be loaded individually
to all the devices. By this the temporal isolation is achieved and is fault
tolerant. As the frame is scheduled to be transmitted, so does the receiver is
aware that it should receive the frame at that time. If the message is received
after the acceptance window then the message is discarded. When a faulty device
send error frames, these are contained and prevents the network congestion.
Rate Constrained Traffic
class is used for traffic which are less stringent determinism and real time applications.
The bandwidth is predefined to each application with the temporal deviations
and delays. Typically, these are used for the multimedia systems. The frames
are event driven and is implemented in the virtual links fashion. The virtual
links determine the routing of the messages from one end system to the
destination end system. The parameters BAG, Lmax determine the bandwidth usage
of the bandwidth. It used traffic policing for the data to be placed at the
intervals and the bandwidth allocation. The RC messages are not with respect to
the system synchronized time as they are event based rather time based, so, the
RC messages are queued at the at the network switches as in AFDX.
Best Effort Traffic
are the lowest priority messages and doesn’t guarantee any maximum delay or even
when it will be delivered. Even the standard ethernet devices can communicate in
this traffic without knowing whether the other nodes are TTEthernet. This gives
the flexibility for the TTEthernet and can coexist with the other traffic in
the network. These use the remaining bandwidth of the network.
Messages are always transmitted in the predefined intervals with a precision of
micro second. If the message is received after the acceptance window the
message is discarded. Synchronization between the nodes in vital for the TT
messages to be delivered deterministically. To maintain the stable clocks at
all the end systems, TTEthernet shall transmit clock synchronization messages periodically.
And it relies on the hierarchical master – slave method where the master shall
provide time to the system. There are redundant masters in case a master fails,
the redundant master shall come into action. This shall guarantee fail safe
operation and high quality of synchronization.
synchronization happens two steps
the first step the masters sends the Protocol Control Frames (PCF) to the
the second step the compression masters calculates the average of the values from
the relative arrival time from these PCFs and sends the new PCF is sent back.
Each node uses the PCF from the compression master and adjusts their clocks
masters, clients and compression masters are predefined during the system
TT Ethernet Switch
switches play a crucial role for successful communication of TTEthernet
messages. They should can differentiate different time of traffic and accordingly
with the priority these messages should transmitted or buffered. Switches when
there is a contention, they follow Preemption – higher priority messages shall pre-empt
the lower priority messages, Timely Block – if time taken to transfer a lower
priority message shall interrupt on global time when a triggered message is
scheduled, then the lower priority is blocked and Shuffling – if a higher
priority message arrives when lower
priority message is already been transmitted, then the higher priority message
is suspended till the lower priority message is transmitted. The TT message
time schedule is uploaded to all the switches and the switch shall have the
information of about when a TT message shall arrive.