Product overview

The user interacts with the system model via the graphical user frontend that presents a topology graph of the network or system architecture, all the individual devices and components of the system model etc. Here is a short description of the general workflow:

Below follows a more detailed explantion of how you build a system model from a clean slate, run a simulation, how the simulation results are presented etc.

The graphical user frontend consists of the following parts.

Topology View

The Topology View illustrates the relationships between network elements in a drawing. Elements of different types are visualized by Nodes having different characteristics such as shape and color.

❷ Tree View

The Tree View reveals hierarchical dependencies between the network and traffic elements.

❸ Object Inspector

The Inspector displays the details of the selected element(s) attributes.

❺ Tab Bar

Allows you to switch between the Topology View and the Simulation results.

Toolbar

The Toolbar contains commands for the majority of actions that can be performed in the Topology View.

Statusbar

Contains various settings for the Topology View.

Building a network topology

You build your network topology by creating new components and connecting ports with links - much like you would with a physical network.

Host

A Host represents a computer node whose operating system schedules applications that can send messages to applications running in other Hosts in the network. These applications then generate outbound network traffic on the Host’s Ports, like for example CAN- and Ethernet packets.

Switch

Switches comprise the building blocks of switched Ethernet networks and forward Ethernet frames between the Hosts connecting to a specific Ethernet network.

Sensor

A sensor is a device that has the capability to create a traffic flow comprised of the Ethernet frames stored in a capture file. Thus, the Sensor can be the source of a Stream.

CAN/LIN Bus

The CAN and LIN buses are traditionally used within vehicles and other industrial systems to allow different control units exchange small data messages (IPDUs) carried in CAN and LIN frames, respectively.

FlexRay Bus

Compared to CAN and LIN, the FlexRay communications bus allows higher communcations speeds, is time-deterministic and also fault-tolerant.

A Link represents for example a Cat cable or an optical fiber connecting Ethernet ports on Hosts and Switches or a twisted pair cable used for the CAN communication protocol.

VLAN

Virtual Local Area Network (VLAN) technology allows splitting an existing Ethernet network into several separate logical networks.

Defining Flows

Once the topology of your network has been defined, it is time to enter information about the data signals flowing through the network. A flow will pass through the network passing from one Node to another until it reaches the target Node. The chain of nodes it has passed from source to target constitutes a Path. A flow can have multiple (multicast/broadcast) Paths or just one (unicast).

IPDU

An IPDU represents a data message that originates in a source Host and can be multicasted via several different types of ports, across busses, networks and gateways to finally reach one or several destination or target end Hosts.

Ethernet Frame / UDP Datagram

An Ethernet Frame or UDP Datagram can carry an IPDU as a payload across a switched Ethernet network.

Captured Stream

A Captured Stream represents a mechanism to define a more advanced traffic flow over an Ethernet network based on the availability of a capture file, for example, a PCAP file.

CAN/LIN Frame

Define traffic flows in the form of CAN and LIN frames transmitted over the corresponding data buses each frame carrying an IPDU as its payload.

FlexRay Frame

Define traffic flows comprised of FlexRay frames sent in the communciation slots in either the static or dynamic segment of the FlexRay communcation cycle.

Timer

Define Timers to perform timing measurements like latency and jitter for specific Ethernet frames, UDP datagrams or IPDUs that are time-sensitive to determine wether or not timing requirements are met.

Path

In certain situations, you are required to specify the Path, that is, a consecutive series of network nodes, that a traffic flow will pass on its way from the source Host to the destination or target Host. This could for example be when a message is to be multicasted over an Ethernet network to a subset of the Hosts that are reachable over the network.

Other

gPTP Domains

Currently, every separate Ethernet network comprising a number of Switches and their connected Hosts can be defined to be a gPTP domain. The clock time of the selected grandmaster Host will den be distributed to the other slave Hosts of the network. Thereby, time synchronization is achieved between these nodes.

Simulations

Running a simulation

When the network topology is complete, the different traffic flows occuring between hosts have been specified and potentially some timers have been applied, you are ready to run a simulation. During a simulation, tasks will be scheduled by the operating systems within hosts and produce network traffic that will be forwarded at different speeds over CAN buses, Ethernet links etc. mirroring what would be occurring in a physical network.

Simulation result

After the simulation has completed, you can switch to the Simulation results tab, open the new simulation results for inspection and analyze performance statistics in the form of resource utilization histograms, latency and jitter frequency plots and a Task Gantt chart showing which individual tasks different hardware resources have been executing between specific points in time.

Reference

Database schema

The database schema for the simulation results.