Eingabe löschen

Kopfbereich

Hauptnavigation

School of Engineering

gPTP Software Stack

InES-gPTP2020 (IEEE 802.1AS-2020 Software Stack)

Die Protokollsoftware ist eine portable Implementierung des TSN Standards IEEE 802.1AS-2020 für Ethernet-Netzwerke (Vollduplex, Punkt-zu-Punkt Verbindungen – Abschnitt 11 des Standards). Sie wurde bereits erfolgreich auf verschiedenen Betriebssystemen eingesetzt und läuft auch auf einem Nios II Bare-Metal System in einem while(1) Loop. Der Stack unterstützt mehrere parallele PTP-Instanzen für unterschiedliche PTP-Domains, die Erstellung des Synchronisationsbaumes über externe Portkonfiguration (PEST - pre-engineered Sync Tree) und den bekannten “Best TimeTransmitter Clock Algorithmus” (BTCA – ehemals BMCA).

Wir verwenden die Software in angewandten F&E-Projekten mit Industriepartnern, aber sie kann auch als Source Code lizenziert werden. Wir beobachten die derzeit bei IEEE diskutierten Erweiterungen und planen, den Stack um neue Funktionen zu erweitern wenn die Entwürfe in der Standardisierung entsprechend ausgereift sind.

Features

Programmiersprache und Design

Die Programmiersprache ist ANSI-C / C-99. Das Design von InES-gPTP2020 ist objektorientiert, obwohl C keine objektorientierte Programmiersprache ist.

Portabilität auf verschiedene Systeme

Die gPTP-Software besteht aus einer systemunabhängigen Protocol Engine sowie aus einem OS Abstraction Layer. Die Protocol-Engine ist vollkommen systemunabhängig, der OS Abstraction Layer muss an die HW/SW-Umgebung angepasst werden. Durch die saubere Strukturierung des OS Abstraction Layers wird die Software schnell und einfach auf verschiedene Systeme portiert.

Application Programming Interface (API)

Das API ist die Schnittstelle zur Benutzerapplikation. Es stellt Funktionen zur Konfiguration sowie zum Monitoring des Stacks zur Verfügung.

Command Line Interface (CLI)

Entwickler konfigurieren und überwachen gPTP zur Laufzeit. Beispielsweise kann die State-Machine und diverse Laufzeitparameter überwacht werden. Das Command Line Interface verwendet dieselben get() und set() Funktionen, die auch zur Anbindung ans Netzwerkmanagement (YANG/MIB) verwendet werden können.

Lizenzierung

Neben der Verwendung in Forschungsprojekten mit Industriepartnern (wir sind immer auf der Suche nach interessanten, praxisrelevanten Fragestellungen) bieten wir InES-gPTP2020 als Source Code Lizenz an:

Die Lizenz beinhaltet:

Künftige Erweiterungen von IEEE 802.1AS

Im IEEE sind derzeit (Ende 2023) mehrere Projekte in Arbeit, um erweiterte Funktionen für verschiedene TSN-Profile zu definieren: Hot-Standby Redundanz, Verbesserungen bei der Synchronisationsgenauigkeit für lange Linienstrukturen, oder das Abschalten gewisser heute als verpflichtend vorgeschriebener Funktionen sind Beispiele hierfür. Wir verfolgen diese Entwicklungen aus erster Hand und werden relevante Funktionalität zeitnah zur Verabschiedung im IEEE umsetzen.