-
Die Erfindung betrifft ein Verfahren zum Betreiben eines Netzwerks eines Kraftfahrzeugs mittels eines Netzwerksystem des Kraftfahrzeugs gemäß dem geltenden Patentanspruch 1. Ferner betrifft die Erfindung ein Computerprogrammprodukt sowie ein entsprechendes Netzwerksystem.
-
Aus dem Stand der Technik sind bereits 10-MBit-Ethernet-Leitungen bekannt, welche als mögliche Alternativen für den proprietären Audiobus als auch FlexRay untersucht werden. Weiterhin ergibt sich durch den Einsatz von 10 Mbit/s die Möglichkeit, 100-Mbit/s-Verbindungen günstiger auszulegen, wenn die volle Datenrate nicht benötigt wird. 10 Mbit/s wurde als Standard in der Arbeitsgruppe IEEE 802.3cg spezifiziert und adressiert, unter anderem auch im automotiven Markt. Dabei ist ein ganz spezieller Modus von Interesse, welcher auch „Multi-Drop“ genannt wird. Hierbei handelt es sich nicht mehr um ein geschaltetes Ethernet, sondern um einen Bus, bei dem kein exklusiver Zugriff mehr besteht, sondern nach einem Round-Robin-Verfahren Zugriff gewährleistet wird. Daten werden dabei, ähnlich wie in einem CAN-Netzwerk, immer von allen empfangen. 10 Mbit/s-Ethernet bietet sich vor allem deshalb als Ersatz an, da es kostengünstig und weniger komplex als 100 Mbit/s ist, weniger Komponenten benötigt und standardisiert ist und daher einen Multi-Supplier-Markt ermöglicht.
-
Der Vorteil der Ethernet-Schnittstellen ist es, dass typischerweise die verschiedenen Protokolle, insbesondere entsprechende Schichten, unabhängig von der verminderten Geschwindigkeit und des Mediums sind. Da jedoch der Multi-Drop-Modus in 10 Mbit/s einen ganz anderen Buszugriff als automotive 100 Mbit/s und auch alle anderen Ethernet-Standards der letzten Jahre implementiert hat, ist die direkte Nutzbarkeit der oberen Protokollschichten respektiver vereinzelter Protokolle nicht mehr gegeben.
-
Die
DE 10 2019 220 096 A1 beschreibt ein Verfahren zur Absicherung der Zeitsynchronisation eines Ethernet-Bordnetzes eines Kraftfahrzeugs, bei welchem folgende Schritte durchgeführt werden: Bestimmen einer Laufzeit eines ersten Signals auf einem ersten Verbindungsweg zwischen einer ersten Steuereinheit des Ethernet-Bordnetzes und einer zweiten Steuereinheit des Ethernet-Bordnetzes; Bestimmen einer Maximalgeschwindigkeit des ersten Verbindungswegs anhand der Laufzeit; und Bestimmen einer Art eines Übertragungsmediums des ersten Verbindungswegs anhand der Maximalgeschwindigkeit, wobei durch die Bestimmung der Laufzeit eines ersten Signals und der Bestimmung der Maximalgeschwindigkeit des ersten Verbindungswegs und die Bestimmung der Art eines Übertragungsmediums des ersten Verbindungswegs eine Entropiequelle gebildet wird, aus der mindestens ein dynamischer Schlüssel für den Verbindungsweg ermittelt wird, der zur Verschlüsselung einer Zeitsynchronisationsnachricht für den Verbindungsweg eingesetzt wird.
-
Die
EP 1 324 520 A2 beschreibt ein verteiltes System mit einem Zeitsignalpfad für erhöhte Präzision bei der Zeitsynchronisation zwischen verteilten Systemtaktgebern. Es ist ein verteiltes System vorgeschlagen, umfassend eine Hauptuhr, die mit einem Zeitsteuerungssignalpfad gekoppelt ist, und einen Satz von Nebenuhren.
-
Die
DE 10 2020 216 278 A1 beschreibt ein Verfahren zur dynamischen Konfiguration von Sensoren und Steuergeräten in einem Ethernetnetzwerk, wobei das Verfahren umfasst:a) Bestimmung der Anzahl der aktiven Knoten durch einen Headnode,b) Klassifizierung der erkannten Knoten in zwei oder mehr Klassifikationen von Knoten zur Priorisierung der Ethernetnetzwerkkommunikation durch den Headnode;c) Empfang von Reservierungsanforderungen von mindestens einem Teil der Vielzahl von Knoten durch den Headnode,d) Zuweisung von Zeitschlitze als Antwort auf Reservierungsanforderungen an einen oder mehreren Knoten im bevorstehenden Kommunikationsfenster, wobei die Zuweisungen auf einer Priorität der Knoten basiert und die Priorität den Knoten gemäß ihrer Klassifizierung zugewiesen wird, wobei nach der Bestimmung der Anzahl der aktiven Knoten, eine dynamische Konfiguration der Knoten vorgenommen wird, und eine Auswahl und ein Start eines Timers des jeweiligen Knoten erfolgt, wobei jeder aktive Knoten jeweils die kleinstmögliche ID selbst vergibt, wobei hierdurch es zu einem Buszugriff des jeweligen Knotens kommt und bei vorhanden sein von einer Busaktivität, die anderem Knoten im Ethernetnetzwerk sich passiv verhalten.
-
Gemäß der
WO 2021/255249 A1 wird ein GNSS-unabhängiges Verfahren zur Kompensation von Asymmetrieverzögerungsfehlern bereitgestellt, um eine Zeitdifferenzverzerrung zu minimieren, wenn eine bidirektionale Zeitübertragung in einem Kommunikationsnetzwerk verwendet wird. Das Verfahren umfasst das Einrichten eines bidirektionalen virtuellen Pfads, der mindestens einen Verbindungspfad LP1- LP4 umfasst, über das Netzwerk für die Kommunikation zwischen einem ersten Knoten A und einem zweiten Knoten B durch Senden eines bidirektionalen Datenstroms über den virtuellen Pfad und Verwenden von zuvor gespeicherten Verbindungsprofilen, die mit einem Verzögerungskorrekturfaktor oder einem kalibrierten virtuellen Pfad oder einer stabilen lokalen Uhr im Holdover-Modus verbunden sind, um einen neuen Verzögerungskorrekturfaktor bereitzustellen, um eine Zeitdifferenzverzerrung in der lokalen Zeit im zweiten Knoten zu minimieren.
-
Aufgabe der vorliegenden Erfindung ist es, ein Verfahren, ein Computerprogrammprodukt sowie ein Netzwerksystem zu schaffen, mittels welchen eine verbesserte Kommunikation innerhalb des Netzwerksystems ermöglicht wird.
-
Diese Aufgabe wird durch ein Verfahren, ein Netzwerksystem, ein Computerprogrammprodukt sowie durch ein Netzwerksystem gemäß den unabhängigen Patentansprüchen gelöst. Vorteilhafte Ausgestaltungsformen sind in den Unteransprüchen angegeben.
-
Ein Aspekt der Erfindung betrifft ein Verfahren zum Betreiben eines Netzwerks eines Kraftfahrzeugs mittels eines Netzwerksystem des Kraftfahrzeugs. Es erfolgt das Bereitstellen einer elektronischen Recheneinrichtung des Netzwerksystems und zumindest zweier Endknoten des Netzwerksystems, wobei die elektronische Recheneinrichtung und die zumindest zwei Endknoten über eine gemeinsame Kommunikationsverbindung des Netzwerksystems miteinander verbunden sind. Es wird eine Nachricht von der elektronischen Recheneinrichtung für den ersten Endknoten und/oder den zweiten Endknoten als ein jeweiliger Adressat der Nachricht erzeugt. In Abhängigkeit von dem jeweiligen Adressaten erfolgt ein Erzeugen eines virtuellen Kanals zwischen der elektronischen Recheneinrichtung und dem jeweiligen Adressaten. Es wird eine Zeitsynchronisation zwischen der elektronischen Recheneinrichtung und dem jeweiligen Adressaten mittels des virtuellen Kanals durchgeführt. Es wird eine Leitungsverzögerung in Abhängigkeit von der Zeitsynchronisation bestimmt, und es erfolgt das Senden der Nachricht an den bestimmten Adressaten in Abhängigkeit von der jeweiligen Leitungsverzögerung.
-
Dadurch ist es ermöglicht, die Zeitsynchronisation auf Basis der aktuellsten IEEE 802.1/801.3 Standards umzusetzen beziehungsweise konform dazu zu sein. Durch die Verwendung von 10 Mbit/s in Verbindung mit Zeitsynchronisation, insbesondere PTP (Precision Time Protocol), kann ein durchgängigeres Internetprotokoll-Netz bereitgestellt werden, eine weitere Ebene der Skalierung in der Bordnetz-Architektur und die Eliminierung von unnötigen Risiken, wie beispielsweise die Bindung an nur einen Zulieferer.
-
Die wesentlichen beziehungsweise besonderen Merkmale, respektive Unterschiede, sind dabei, dass mit standardisierten Methoden und Protokollen die Zeitsynchronisation im Ethernet durchgeführt wird. Damit wird auch eine Abwärtskompatibilität zu verwendeten Software-Stacks und auch zu neuen Stacks geschaffen, wodurch diese auch skalierbar sind. Insbesondere kann somit eine Kombination der Zeitsynchronisation mit einem sogenannten Standard des MACsec (IEEE802.1 AE) realisiert werden. In diesem Zustand lässt sich das Netzwerksystem vollständig unabhängig von seiner Topologie konfigurieren und initial einstellen. Dieses Verfahren ist damit komplett unabhängig von der verwendeten Ethernet-Technologie, wie beispielsweise Bandbreite oder Zugriffsverfahren.
-
Durch standardisierte und bereits erprobte Methoden wird zudem die Sicherheit des Fahrzeugnetzwerks erhöht beziehungsweise nicht verschlechtert. Software-Qualität kann zudem dadurch besser gewährleistet werden, weil die verwendeten Methoden, insbesondere die Software-Stacks und die Internetprotokolle, bereits erprobt und lange Zeit im Einsatz sind. Dies ermöglicht eine bessere Wartung, mehr Möglichkeiten bei der Beschaffung von standardisierter Software und einer Kompatibilität zu IT-Protokollen, Methoden und Tools.
-
Ein weiterer Vorteil ergibt sich aus einer intelligenten Kombination verschiedener standardisierter Verfahren. Die vorgeschlagene Lösung kann dabei vollständig transparent unter Verwendung bestehender Zeitsynchronisationssoftware eingesetzt werden. Fehler in den Zustandsmaschinen, wie zum Beispiel die vorgeschlagene Lösung eines einzelnen Herstellers, haben so keinen Einfluss, und damit wird die Sicherheit der Zeitsynchronisation auch erhöht. Gerade beim Bus ist Querverkehr nicht vermeidbar, was jedoch erfindungsgemäß nun abgearbeitet werden kann.
-
Das entsprechende Netzwerksystem beziehungsweise Verfahren ist im Hinblick auf Kosten und Zuverlässigkeit verbessert. Die Testbarkeit des Netzwerksystems wird durch die intelligente Nutzung des Verfahrens erweitert, weshalb sogar Testkosten gespart werden können beziehungsweise die Güte der Tests dadurch noch erhöht werden kann.
-
Es wird somit ein Verfahren vorgestellt, das die Software flexibel gestalten lässt und das Beste aus dem darunterliegenden Netzwerksystem nutzt, ohne es vorher fest in Software programmiert zu haben. Das erfindungsgemäße Verfahren erlaubt es insbesondere, Software-Entwicklern und Architekten eine Zeitsynchronisation anzubieten, welche flexibler und präziser auf die Anforderungen des Anwendungsfalls zugeschnitten werden kann. Durch den Einbau des genannten Verfahrens in eine entsprechende Software kann eine Optimierung erfolgen. Dies bedeutet, dass die entsprechende Software plattformunabhängiger werden kann und über verschiedene Modellreihen eine gleiche Software zum Einsatz kommt respektive eingesetzt werden kann.
-
Insbesondere ist somit ein Verfahren vorgeschlagen, welches auf den aktuellen Standards IEEE 802.1.AS 2021 oder auch IEEE 802.1.AS 2022 basiert und den bereits vorhandenen und getesteten Software-Stacks eine Berechnung der Laufzeit ermöglicht. Es ist dabei vorgeschlagen, den jeweiligen Endknoten mit dem Zeitgeber, insbesondere der elektronischen Recheneinrichtung, welche einen Masterport aufweist, jeweils in einen virtuellen Kanal einzuordnen. Mittels des virtuellen Kanals soll so sichergestellt werden, dass nur ein Teilnehmer die entsprechende Nachricht bekommt. Dies wird dadurch erreicht, dass die Zeitsynchronisationsnachrichten, beispielsweise auf Basis eines sogenannten PTP-Verfahrens, über/durch diesen virtuellen Kanal versendet werden. Hiermit ist sichergestellt, dass die Nachrichten nur den einen gewünschten Empfänger, insbesondere in der PTP-Software, erreichen. Dies kann trotz Multitask-Empfangsadresse und trotz Bus somit erreicht werden.
-
Ferner wird zeitlich nach dem Bestimmen der jeweiligen Leitungsverzögerung der virtuelle Kanal abgebaut. Dadurch kann verhindert werden, dass beispielsweise weiterhin entsprechende Synchronisationsnachrichten über den virtuellen Kanal verschickt werden. Dies spart insbesondere auch Rechenkapazität.
-
Ebenfalls vorteilhaft ist, wenn zeitlich vor dem Erzeugen der Nachricht ein Medium bestimmt wird, auf welchem die Zeitsynchronisation durchgeführt wird. Insbesondere stellt dies einen generischen Ansatz dar, so dass das Verfahren bei allen Medientypen zum Einsatz kommen kann. Somit kann auch bei beispielsweise einem Full-Duplex das Verfahren genutzt werden. Es wird somit zuallererst das Medium bestimmt, und nur im Falle eines erkannten Multi-Drop-Modus werden die entsprechenden weiteren Schritte durchlaufen.
-
Es hat sich weiterhin als vorteilhaft erwiesen, wenn eine Systemtopologie zwischen der elektronischen Recheneinrichtung und den zumindest zwei Endknoten zum Bestimmen des Mediums bestimmt wird. Insbesondere kann somit die PTP-Topologie respektive der Zeitsynchronisationsspannbaum vorgesehen sein. Dazu gehört zum einen, dass alle Ethernet-Ports ermittelt werden müssen und dann in welchem PTP-Modus diese zu verwenden sind. Handelt es sich um den Stack des Zeitmasters beziehungsweise hat der Endknoten einen Master-Port in Richtung des Busses, so schlägt das Verfahren vor, die MAC-Adressen der angeschlossenen Teilnehmer zu bestimmen. Handelt es sich um einen der Slaves, dann muss zuerst die Adresse des Master-Ports beziehungsweise der zugehörigen MAC-Adresse ermittelt werden. Dies kann durch Extrahieren der MAC-Adresse von den Synchronisationsnachrichten geschehen oder auch durch andere hier nicht weiter beschriebene Verfahren. Typischerweise können die Synchronisationsnachrichten auch vom Hauptknoten kommen, also von dem Gerät, das immer den ersten Slot im Zyklus hat. Hier kann sehr schnell reagiert werden und gleich die allererste Nachricht auf dem Bus verwendet werden. Im Falle des Zeitmasters beziehungsweise dem der die Synchronisationsnachrichten entweder generiert, der sogenannte Grant-Master, oder dem der sie „weiterleitet“ zum Bus, wird im nächsten Schritt die MAC-Adressen der Teilnehmer am Bus bestimmt. Dies kann entweder aus einer Tabelle ausgelesen werden oder dynamisch von den Nachrichten extrahiert werden in Relation zum Sendeslot im Zyklus. Im nachfolgenden Schritt erfolgt dann wiederum das Aushandeln des virtuellen Kanals, das Konfigurieren und das Aufsetzen dessen.
-
Ferner hat es sich als vorteilhaft erwiesen, wenn die Zeitsynchronisation erst dann durchgeführt wird, wenn der jeweilige virtuelle Kanal zwischen der elektronischen Recheneinrichtung und dem jeweiligen Adressaten aufgebaut ist. Insbesondere kann somit verhindert werden, dass die PTP-Zustandsmaschinen nicht gestartet werden, bevor der virtuelle Kanal beziehungsweise die virtuellen Kanäle nicht aktiv sind und darüber entsprechende Zeitsynchronisationsnachrichten zu versenden. Eine einfache Möglichkeit bietet sich hierfür mittels des PTP-Parameters „asCapable“ (auf den beispielsweise die PTP-Statusmaschinen warten und zuvor keine PTP-Nachrichten versenden, wenn dieser nicht auf „true“ gesetzt ist) an. Es gibt natürlich noch viele andere Möglichkeiten, wie beispielsweise den PDelay-Statusmaschinenparameter „Link-Delay-Interval“ auf 127 zu setzen, um hiermit „PDelay“-Nachrichten zu unterbinden. Nach Aufbau des virtuellen Kanals kann dann die PTP (Precision Time Protocol) beziehungsweise die Zustandsmaschinen so gestartet werden, als liefe die PTP auf einem normalen Link und nicht auf einem Bus.
-
Weiterhin vorteilhaft ist, wenn zum Aufbau eines virtuellen Kanals technische Anforderungen eines jeweiligen Ports der elektronischen Recheneinrichtung und des jeweiligen Adressaten ermittelt werden. Insbesondere kann somit die Ermittlung beziehungsweise der Aufbau des Eins-zu-Eins virtuellen Kanals realisiert werden. Zu Beginn werden die technischen Anforderungen pro Port, insbesondere pro Port-Paar, ermittelt. Hierbei können Parameter wie Temperatur, aktuelle Ressourcensituation, Fehlereinträge, elektromagnetische Verträglichkeit (EMV), Sicherheitslücken und dergleichen betrachtet werden.
-
Eine weitere vorteilhafte Ausgestaltungsform sieht vor, dass in Abhängigkeit von den technischen Anforderungen eine jeweilige OSI-Schicht eines jeweiligen Ports bestimmt wird. Insbesondere erfolgt dies nach dem Ermitteln der technischen Anforderungen. Es werden dann die unterschiedlichen Verfahren auf den unterschiedlichen OSI-Schichten ermittelt und die passende Schicht respektive das Verfahren vorselektiert. Bei dem OSI-Referenzmodell handelt es sich um ein Referenzmodell für Netzwerkprotokolle als Schichtenarchitektur. Insbesondere weist dabei das Modell sieben Schichten auf, beispielsweise eine Bit-Übertragungsschicht, eine Sicherungsschicht, eine Vermittlungsschicht, eine Transportschicht, eine Sitzungsschicht, eine Darstellungsschicht sowie eine Anwendungsschicht. Zweck des OSI-Referenzmodells ist es, Kommunikation über unterschiedlichste technische Systeme hinweg zu beschreiben und die Weiterentwicklung zu begünstigen. Die aktuellen Anforderungen an die Zeitsynchronisation werden mit den Parametern der entsprechenden ausgewählten Schicht abgeglichen, das heißt, welche Art von Zeitsynchronisationsanforderungen gelten auf dem jeweiligen Port-Paar, insbesondere dem sogenannten Master/Slave, welche Art von Genauigkeit wird von der oder den Anwendungen dahinter erwartet. Die Anforderungen lassen sich beispielsweise durch Präzision und Genauigkeit sowie auch Zuverlässigkeit und so weiter darstellen. Je tiefer die OSI-Schicht desto weniger Software ist typischerweise involviert, und daraus resultiert typischerweise immer eine genauere Zeitsynchronisation. Sollte die Schicht nicht passen beziehungsweise die Anforderungen nicht abgedeckt werden, kann eine andere Schicht selektiert werden. Wenn die passende Schicht gefunden ist, dann wird diese je nach Protokoll, beispielsweise MACsec, IP-Sec oder dergleichen, konfiguriert und der Kanal entsprechend aufgebaut.
-
Eine weitere vorteilhafte Ausgestaltungsform sieht vor, dass eine vor dem Aufbau des virtuellen Kanals zirkulierende Nachricht in der Kommunikationsverbindung identifiziert wird und eine Verbreitung der zirkulierenden Nachricht zeitlich vor dem Aufbau des virtuellen Kanals unterdrückt wird. Insbesondere kann somit das Netzwerksystem im Falle von unerwarteten Nachrichten und vor dem Kanalaufbau aktualisiert werden. Zur Absicherung dienen die zirkulierenden Nachrichten, wobei diese nicht weiter verbreitet werden beziehungsweise darauf geantwortet wird. Daher ist insbesondere eine Überprüfung der eintreffenden Zeitsynchronisationsnachrichten vorgeschlagen, wobei diese auf dem verwendeten überprüft werden. Wenn es eine Nachricht ist, auf die nicht direkt geantwortet wird, zum Beispiel eine Sync, Follow-up oder dergleichen, dann kann das Verfahren ignoriert werden beziehungsweise kann der Kanalaufbau forciert werden beziehungsweise auf Fehler geprüft werden. Handelt es sich um eine Nachricht, auf die direkt geantwortet werden muss, beispielsweise ein PDelay_Request, dann sollte die Nachricht verworfen werden, wenn noch kein Kanal zu diesem Absender besteht. Besteht bereits ein Kanal, wurde aber eventuell nicht genutzt, dann kann die Antwort über den entsprechenden virtuellen Kanal versendet werden.
-
Bei dem vorgestellten Verfahren handelt es sich insbesondere um ein computerimplementiertes Verfahren. Daher betrifft ein weiterer Aspekt der Erfindung ein Computerprogrammprodukt mit Programmcodemitteln, welche eine elektronische Recheneinrichtung dazu veranlassen, wenn die Programmcodemittel von der elektronischen Recheneinrichtung abgearbeitet werden, ein Verfahren nach einem der Ansprüche 1 bis 8 durchzuführen. Das Computerprogrammprodukt kann auch als Computerprogramm bezeichnet werden. Als eine weitere Lösung umfasst die Erfindung auch ein computerlesbares Speichermedium, umfassend Programmcode, der bei der Ausführung durch eine Prozessorschaltung eines Computers oder eines Computerverbunds diese veranlasst, eine Ausführungsform des erfindungsgemäßen Verfahrens auszuführen. Das Speichermedium kann z.B. zumindest teilweise als ein nicht-flüchtiger Datenspeicher (z.B. als eine Flash-Speicher und/oder als SSD - solid state drive) und/oder zumindest teilweise als ein flüchtiger Datenspeicher (z.B. als ein RAM - random access memory) bereitgestellt sein. Das Speichermedium kann in der Prozessorschaltung in deren Datenspeicher angeordnet sein. Das Speichermedium kann aber auch beispielsweise als sogenannter Appstore-Server im Internet betrieben sein. Durch den Computer oder Computerverbund kann eine Prozessorschaltung mit zumindest einem Mikroprozessor bereitgestellt sein. Der Programmcode können als Binärcode oder Assembler und/oder als Quellcode einer Programmiersprache (z.B. C) und/oder als Programmskript (z.B. Python) bereitgestellt sein.
-
Ein weiterer Aspekt der Erfindung betrifft daher auch ein computerlesbares Speichermedium mit dem Computerprogrammprodukt.
-
Ferner betrifft die Erfindung auch ein Netzwerksystem für ein Kraftfahrzeug mit zumindest einer elektronischen Recheneinrichtung und zumindest zwei Endknoten, welche über eine gemeinsame Kommunikationsverbindung mit der elektronischen Recheneinrichtung verbunden sind, wobei das Netzwerksystem zum Durchführen eines Verfahrens nach dem vorhergehenden Aspekt ausgebildet ist. Insbesondere wird das Verfahren mittels des Netzwerksystems durchgeführt.
-
Die elektronische Recheneinrichtung weist beispielsweise Prozessoren, Schaltkreise, insbesondere integrierte Schaltkreise, sowie weitere elektronische Bauteile auf, um entsprechende Verfahrensschritte durchführen zu können.
-
Ein weiterer Aspekt der Erfindung betrifft auch ein Kraftfahrzeug mit einem Netzwerksystem.
-
Für Anwendungsfälle oder Anwendungssituationen, die sich bei dem Verfahren ergeben können, aber hier nicht explizit beschrieben sind, kann vorgesehen sein, dass gemäß dem Verfahren eine Fehlermeldung und/oder Aufforderung zur Eingabe einer Nutzerrückmeldung ausgegeben und/oder eine Standardeinstellung und/oder ein vorbestimmter Initialzustand eingestellt wird.
-
Zu der Erfindung gehört auch die elektronische Recheneinrichtung beziehungsweise das Netzwerksystem für das Kraftfahrzeug. Die elektronische Recheneinrichtung kann eine Datenverarbeitungsvorrichtung oder eine Prozessoreinrichtung aufweisen, die dazu eingerichtet ist, eine Ausführungsform des erfindungsgemäßen Verfahrens durchzuführen. Die Prozessoreinrichtung kann hierzu zumindest einen Mikroprozessor und/oder zumindest einen Mikrocontroller und/oder zumindest eine FPGA (Field Programmable Gate Array) und/oder zumindest einen DSP (Digital Signal Processor) aufweisen. Des Weiteren kann die Prozessoreinrichtung einen Programmcode aufweisen, der dazu eingerichtet ist, bei Ausführen durch die Prozessoreinrichtung die Ausführungsformen des erfindungsgemäßen Verfahrens durchzuführen. Der Programmcode kann in einem Datenspeicher der Prozessoreinrichtung gespeichert sein.
-
Zu der Erfindung gehören auch Weiterbildungen des erfindungsgemäßen Netzwerksystems und des Kraftfahrzeugs, die Merkmale aufweisen, wie sie bereits im Zusammenhang mit den Weiterbildungen des erfindungsgemäßen Verfahrens beschrieben worden sind. Aus diesem Grund sind die entsprechenden Weiterbildungen des erfindungsgemäßen Verfahrens hier nicht noch einmal beschrieben.
-
Das erfindungsgemäße Kraftfahrzeug ist bevorzugt als Kraftwagen, insbesondere als Personenkraftwagen oder Lastkraftwagen, oder als Personenbus oder Motorrad ausgestaltet.
-
Die Erfindung umfasst auch die Kombinationen der Merkmale der beschriebenen Ausführungsformen. Die Erfindung umfasst also auch Realisierungen, die jeweils eine Kombination der Merkmale mehrerer der beschriebenen Ausführungsformen aufweisen, sofern die Ausführungsformen nicht als sich gegenseitig ausschließend beschrieben wurden.
-
Im Folgenden sind Ausführungsbeispiele der Erfindung beschrieben. Hierzu zeigt:
- 1 zeigt ein schematisches Blockschaltbild gemäß einer Ausführungsform eines Kraftfahrzeugs;
- 2 zeigt ein schematisches Ablaufdiagramm gemäß einer Ausführungsform des Verfahrens;
- 3 ein weiteres schematisches Ablaufdiagramm gemäß einem schematischen Ablaufdiagramm gemäß einer Ausführungsform des Verfahrens;
- 4 ein nochmals weiteres schematisches Ablaufdiagramm gemäß einer Ausführungsform des Verfahrens;
- 5 ein nochmals weiteres schematisches Ablaufdiagramm gemäß einer Ausführungsform des Verfahrens;
- 6 ein nochmals weiteres schematisches Ablaufdiagramm gemäß einer Ausführungsform des Verfahrens;
- 7 ein nochmals weiteres schematisches Ablaufdiagramm gemäß einer Ausführungsform des Verfahrens; und
- 8 eine schematische Darstellungsform einer Nachricht.
-
Bei den im Folgenden erläuterten Ausführungsbeispielen handelt es sich um bevorzugte Ausführungsformen der Erfindung. Bei den Ausführungsbeispielen stellen die beschriebenen Komponenten der Ausführungsformen jeweils einzelne, unabhängig voneinander zu betrachtende Merkmale der Erfindung dar, welche die Erfindung jeweils auch unabhängig voneinander weiterbilden. Daher soll die Offenbarung auch andere als die dargestellten Kombinationen der Merkmale der Ausführungsformen umfassen. Des Weiteren sind die beschriebenen Ausführungsformen auch durch weitere der bereits beschriebenen Merkmale der Erfindung ergänzbar.
-
In den Figuren bezeichnen gleiche Bezugszeichen jeweils funktionsgleiche Elemente.
-
1 zeigt ein schematisches Blockschaltbild gemäß einer Ausführungsform eines Kraftfahrzeugs 1 mit einer Ausführungsform eines Netzwerksystems 2. Das Netzwerksystem 2 weist im vorliegenden Ausführungsbeispiel beispielsweise eine zentrale Steuervorrichtung 3 auf sowie eine erste elektronische Recheneinrichtung 4 sowie eine zweite elektronische Recheneinrichtung 5. Die erste elektronische Recheneinrichtung 4 ist beispielsweise für eine Frontlichteinrichtung 6 ausgebildet, und die zweite elektronische Recheneinrichtung 5 kann für eine Hecklichteinrichtung 7 ausgebildet sein.
-
Die erste elektronische Recheneinrichtung 4 ist im vorliegenden Ausführungsbeispiel mit vier Endknoten 8, 9, 10, 11 über eine gemeinsame Kommunikationsverbindung 12 gekoppelt. Die zweite elektronische Recheneinrichtung 5 mit weiteren Endknoten 13, 14, 15, 16 über eine weitere Kommunikationsverbindung 17 gekoppelt.
-
Im vorliegenden Ausführungsbeispiel ist insbesondere jeweils nur von einem Teil des Netzwerksystems 2 gesprochen, beispielsweise für das, welches mit der ersten elektronischen Recheneinrichtung 4 und der Kommunikationsverbindung 12 verbunden ist. Alternativ gilt dies auch für die zweite elektronische Recheneinrichtung 5. Es ist selbstverständlich, dass das Kraftfahrzeug 1 beziehungsweise das Netzwerksystem 2 auch noch weitere elektronische Recheneinrichtungen 4, 5 sowie weitere Endknoten 8, 9, 10, 11, 12, 13, 14, 15, 16 aufweisen kann.
-
2 zeigt ein schematisches Ablaufdiagramm gemäß einer Ausführungsform des Verfahrens. Insbesondere ist beim erfindungsgemäßen Verfahren vorgesehen, dass zumindest die elektronische Recheneinrichtung 4 sowie die zumindest zwei Endknoten 8, 9, 10 ,11 des Netzwerksystems 2 bereitgestellt werden, wobei die elektronische Recheneinrichtung 4 und die zumindest zwei Endknoten 8, 9, 10 ,11 über eine gemeinsame Kommunikationsverbindung, vorliegend die Kommunikationsverbindung 12, des Netzwerksystems 2 miteinander verbunden sind. Es erfolgt das Erzeugen einer Nachricht 18 (1) von der elektronischen Recheneinrichtung 4 für den ersten Endknoten 8, 9, 10 ,11 und/oder den zweiten Endknoten 8, 9, 10 ,11 als ein jeweiliger Adressat der Nachricht 18.
-
In einem ersten Schritt S2.1 wird dann in Abhängigkeit von dem jeweiligen Adressaten ein virtueller Kanal zwischen der elektronischen Recheneinrichtung 4 und dem jeweiligen Adressaten erzeugt. Es erfolgt dann in einem zweiten Schritt S2.2 das Durchführen einer Zeitsynchronisation zwischen der elektronischen Recheneinrichtung 4 und dem jeweiligen Adressaten mittels des virtuellen Kanals, wobei dies insbesondere über das Senden einer PTP-Nachricht oder mehrerer PTP-Nachrichten über den geschützten virtuellen Kanal zum gewünschten Adressaten erfolgt. In einem dritten Schritt S2.3 wird eine Leitungsverzögerung in Abhängigkeit von der Zeitsynchronisation bestimmt. Es erfolgt dann wiederum das Senden der Nachricht 18 an den bestimmten Adressaten in Abhängigkeit von der jeweiligen Leitungsverzögerung. In der 2 ist insbesondere noch ein optionaler Schritt S2.4 gezeigt, der beschreibt, dass zeitlich nach dem Bestimmen der jeweiligen Leitungsverzögerung der virtuelle Kanal abgebaut wird.
-
3 zeigt ein weiteres schematisches Ablaufdiagramm gemäß einer Ausführungsform des Verfahrens. In einem Schritt S3.1 erfolgt die Bestimmung des Mediums. Insbesondere sollte ein Multi-Drop-Modus an sein, so wird in einem weiteren Schritt S3.2 die Bestimmung des Ethernet-Ports durchgeführt. Abhängig von dem jeweiligen Port beziehungsweise Porttyp wird in einem weiteren Schritt S3.4 die Bestimmung der PTP-Topologie durchgeführt. Sollte es sich um einen Master-Port handeln, so wird ausgehend vom Schritt S3.4 in den Schritt S3.5 übergegangen, wobei die Slave-Adressen bestimmt werden. Sollte es sich um einen Slave-Port handeln, so wird ausgehend vom Schritt S3.4 in den Schritt S3.6 übergegangen, wobei hierbei die Bestimmung der Adresse des Master-Ports beziehungsweise des Nachbarknoten, der die Sync-Nachrichten verschickt, realisiert wird. Ausgehend vom Schritt S3.5 oder vom Schritt S3.6 erfolgt dann in einem Schritt S3.7 die Aushandlung des virtuellen Kanals. Insbesondere zeigt somit die 3, dass zeitlich vor dem Erzeugen der Nachricht 18 ein Medium bestimmt wird, auf welchem die Zeitsynchronisation durchgeführt wird. Ferner wird eine Systemtopologie zwischen der elektronischen Recheneinrichtung 4 und den zumindest zwei Endknoten 8, 9, 10 ,11 zum Bestimmen des Mediums bestimmt.
-
Insbesondere zeigt somit die 3 ein Teilverfahren zum Bestimmen des Mediums, auf welchem die Zeitsynchronisation verwendet werden soll. Da dies ein generischer Ansatz ist, kann das Verfahren bei allen Medientypen zum Einsatz kommen, also auch bei denen, die Full-Duplex unterstützen. Zu allererst wird also das Medium bestimmt, und nur im Falle eines erkannten Multi-Drop-Modus werden die weiteren Schritte durchlaufen. Im nächsten Schritt schlägt das Verfahren die Bestimmung der PTP-Topologie respektive des Zeitsynchronisationsspannbaums vor. Dazu gehört zum einen, dass alle Ethernet-Ports ermittelt werden müssen und dann, in welchem PTP-Modus diese zu verwenden sind. Handelt es sich um einen Stack des Zeit-Masters beziehungsweise hat der Knoten einen Master-Port in Richtung des Busses, so schlägt das Verfahren vor, die MAC-Adressen der angeschlossenen Teilnehmer zu bestimmen. Handelt es sich um einen der Slaves, dann muss zuerst die Adresse des Master-Ports beziehungsweise der zugehörigen MAC-Adressen ermittelt werden.
-
Dies kann durch Extrahierung der MAC-Adresse vor den Sync-Nachrichten geschehen oder auch durch andere, hier nicht weiter beschriebene Verfahren. Typischerweise können die Synchronisationsnachrichten auch vom Head-Node kommen, also dem Gerät, was auch immer den ersten Slot im Zyklus hat. Hier kann sehr schnell reagiert werden und gleich die allererste Nachricht auf den Bus verwendet werden.
-
Im Falle des Zeitmasters beziehungsweise dem, der die Synchronisationsnachrichten entweder generiert, der sogenannte Grand-Master, oder dem, der sie „weiterleitet“ zum Bus, wird im nächsten Schritt die MAC-Adressen der Teilnehmer am Bus bestimmt. Das kann entweder aus einer Tabelle ausgelesen werden oder dynamisch von den Nachrichten extrahiert werden in Relation zum Sendeslot im Zyklus. Im nächsten Schritt wiederum erfolgt dann das Aushandeln des virtuellen Kanals beziehungsweise der virtuellen Kanäle, der Konfiguration und der entsprechenden Aussetzung.
-
4 zeigt ein weiteres schematisches Ablaufdiagramm gemäß einer Ausführungsform eines Verfahrens. 4 zeigt insbesondere in einem Schritt S4.1 die Deaktivierung des Aussetzens von PTP-Nachrichten, zum Beispiel über das sogenannte „asCapable“ ist identisch „false“. In einem weiteren Schritt S4.2 erfolgt dann die Ein-zu-Eins-Kanalabsicherung. In einem dritten Schritt S4.3 erfolgt dann wiederum das Setzen des „asCapable“ auf identisch „true“. Insbesondere zeigt die 4, dass die Zeitsynchronisation erst dann durchgeführt wird, wenn der jeweilige virtuelle Kanal zwischen der elektronischen Recheneinrichtung 4 und dem jeweiligen Adressaten aufgebaut ist. Insbesondere ist somit ein Teilausschnitt des Gesamtverfahrens gezeigt, welches berücksichtigt, dass die PTP-Zustandsmaschine nicht gestartet werden sollte, bevor der virtuelle Kanal beziehungsweise die virtuellen Kanäle aktiv sind, um darüber Synchronisationsnachrichten zu versenden. Eine einfache Möglichkeit bietet sich hierfür mittels des PTP-Parameters „asCapable“, auf den beispielsweise die PTP-Zustandsmaschine wartet und zuvor keine PTP-Nachricht versendet, wenn dieser nicht auf „true“ gesetzt ist, an. Es gibt natürlich noch viele andere Möglichkeiten, wie beispielsweise den PDelay-Statusmaschinenparameter „Link-Delay-Interval“ auf 127 zu setzen, um hiermit „PDelay“-Nachrichten zu unterbinden. Nach Aufbau des virtuellen Kanals kann dann die PTP beziehungsweise die Zustandsmaschinen so gestartet werden, als liefe die PTP auf einem normalen Link und nicht auf einem Bus.
-
5 zeigt ein weiteres schematisches Ablaufdiagramm gemäß einer Ausführungsform eines Verfahrens. Insbesondere ist der Aufbau eines Ein-zu-Eins-virtuellen Kanals gezeigt. In einem Schritt S5.1 erfolgt die Ermittlung der aktuellen technischen Voraussetzungen zum Kanalaufbauverfahren pro Port. In einem Schritt S5.2 erfolgt die Bestimmung der möglichen OSI-Schichten zum Kanalaufbau. In einem Schritt S5.3 erfolgt die Selektion des passenden OSI-Layers beziehungsweise der passenden OSI-Schicht aus den möglichen Varianten. In einem Schritt S5.4 erfolgt die Ermittlung, ob Anforderungen des PTP über diese entsprechende Schicht erfüllt werden, beispielsweise ob die Zeitsynchronisationsgenauigkeit hoch genug ist. Sollte dies nicht der Fall sein, so wird in den Schritt S5.3 zurückgegangen. Sollte dies der Fall sein, so kann in den Schritt S5.5 übergegangen werden, und die Selektion und Durchführung realisiert werden, wobei in einem Schritt S5.6 wiederum der virtuelle Kanal aufgebaut wird. Insbesondere ist somit in der 5 gezeigt, dass zum Aufbau des virtuellen Kanals technische Anforderungen eines jeweiligen Ports der elektronischen Recheneinrichtung 4 und des jeweilige Adressaten ermittelt werden. In Abhängigkeit von den technischen Anforderungen kann dann wiederum die jeweilige OSI-Schicht eines jeweiligen Ports bestimmt werden.
-
Insbesondere ist somit vorgesehen, dass zu Beginn die technischen Anforderungen pro Port, insbesondere pro Port-Paar, ermittelt werden. Hierbei können Parameter, wie Temperatur, aktuelle Ressourcensituation, Fehlereinträge, elektromagnetische Verträglichkeit, Sicherheitslücken und dergleichen betrachtet werden. Im nächsten Schritt werden die unterschiedlichen Verfahren auf die unterschiedlichen OSI-Schichten ermittelt und die passende Schicht respektive das Verfahren vorselektiert.
-
Die aktuellen Anforderungen an die Zeitsynchronisation werden mit den Parametern dieser Schicht abgeglichen, das heißt welche Art von Zeitsynchronisationsanforderungen gelten auf diesem Port-Paar, insbesondere Master/Slave und welche Art von Genauigkeit wird von dem oder den Anwendern dahinter erwartet. Die Anforderungen lassen sich beispielsweise durch Präzision und Genauigkeit als auch Zuverlässigkeit oder dergleichen darstellen.
-
Je tiefer die OSI-Schicht desto weniger Software ist typischerweise involviert, und daraus resultiert typischerweise immer eine genauere Zeitsynchronisation. Sollte die Schicht nicht passen beziehungsweise die Anforderungen nicht abgedeckt werden, so wird eine andere Schicht selektiert.
-
Wenn die passende Schicht gefunden ist, dann wird diese je nach Protokoll konfiguriert, und der Kanal kann entsprechend aufgebaut werden.
-
6 zeigt ein weiteres schematisches Ablaufdiagramm gemäß einer Ausführungsform des Verfahrens, wobei insbesondere ein Teilverfahren vorgestellt ist, welches das Netzwerksystem 2 absichert. In einem Schritt S6.1 werden die eintreffenden PTP-Nachrichten gescannt. In einem Schritt S6.2 wird überprüft, ob die Nachricht 18 über den virtuellen Kanal versendet wurde. Sollte dies nicht der Fall sein, so wird in einem Schritt S6.3 überprüft, ob es sich um eine Nachricht handelt, auf die geantwortet wird, beispielsweise sogenannte PDelay_Request. Sollte dies der Fall sein, so wird in einem Schritt S6.4 überprüft, ob bereits ein virtueller Kanal zum Absender besteht. Sollte dies der Fall sein, so wird in einem Schritt S6.5 die Antwort über den entsprechenden Kanal gesendet. Ausgehend vom Schritt S6.3 kann auch in einen Schritt S6.6 übergegangen werden, sollte es sich um eine Nachricht handeln, auf die nicht geantwortet werden soll. Es werden dann die Nachrichten gemäß den Zustandsmaschinen verarbeitet und der virtuelle Ein-zu-Eins-Kanal in einem Schritt S6.7 aufgebaut. Ausgehend vom Schritt S6.4 kann überprüft werden, dass beispielsweise der Kanal noch nicht aufgebaut wurde, wobei dann in einem Schritt S6.8 die Nachricht verworfen werden kann und wiederum im Anschluss daran in den Schritt S6.7 übergegangen werden kann.
-
Insbesondere kann somit vorgesehen sein, dass eine vor dem Aufbau des virtuellen Kanals zirkulierende Nachricht in der Kommunikationsverbindung 12 identifiziert wird und eine Verbreitung der zirkulierenden Nachricht zeitlich vor dem Aufbau des virtuellen Kanals unterdrückt wird.
-
Insbesondere dient das in der 6 vorgeschlagene Verfahren zur Absicherung, dass bei zirkulierenden Nachrichten diese nicht mehr weiter verbreitet werden beziehungsweise darauf geantwortet wird. Daher schlägt das Verfahren eine Überprüfung der eintreffenden Zeitsynchronisationsnachrichten vor und überprüft diese auf den verwendeten Kanal. Wenn es eine Nachricht, auf die nicht direkt geantwortet wird, kann das Verfahren ignoriert werden beziehungsweise kann der Kanalaufbau forciert werden beziehungsweise auf Fehler geprüft werden.
-
Handelt es sich um eine Nachricht, auf die direkt geantwortet werden muss, beispielsweise sogenannte PDelay_Request, dann sollte die Nachricht verworfen werden, wenn noch kein Kanal zu diesem Absender besteht. Besteht schon ein Kanal, aber wurde eventuell nicht genutzt, dann kann die Antwort über den Kanal versendet werden.
-
7 zeigt ein weiteres Teilverfahren. Insbesondere zeigt die 7 die Bestimmung der notwendigen Initial-Synchronisationszeit. In einem Schritt S7.1 erfolgt die Bestimmung der erforderlichen Aufstartzeit. In einem Schritt S7.2 erfolgt die Prüfung der Aufbauzeit des Kanals, insbesondere ob der Authentifizierungsserver schon erreichbar ist. Insbesondere, sollte ein schneller Aufstart notwendig sein, beispielsweise die Zeit für den Kanalaufbau ist entsprechend größer, so wird im Schritt S7.3 überprüft, ob entsprechende Laufzeitmessungen vorlagen oder ob ein Reset vorlag, beispielsweise eine vorherige Messung der vorgespeicherten Messung zu nutzen. In einem Schritt S7.4 erfolgt die Bestimmung der PTP-Topologie. Sollte es sich um einen Slave-Port handeln, so kann in einem Schritt S7.5 das sogenannte Link-Delay-Interval auf 127 gesetzt werden. Sollte es sich um einen Master-Port handeln, so kann in einem Schritt S7.6 das Aussenden der Synchronisationsnachrichten unter Follow-up realisiert werden. Ausgehend vom Schritt S7.5 kann in einen Schritt S7.7 übergegangen werden, welcher wiederum die Aushandlung des virtuellen Kanals zeigt.
-
Insbesondere ist somit gezeigt, ob die notwendige Initial-Synchronisationszeit mit der notwendigen Kanalaufbauzeit, beispielsweise etwaige Schlüsselaustauschszenarien, Authentifizierung oder dergleichen zusammenpasst beziehungsweise eingehalten werden kann. Wenn das nicht möglich ist, schlägt das Verfahren übergangsweise, insbesondere bis zum Kanalaufbau vor, dass der Master-Port das Aussenden der Synchronisationsnachrichten ganz normal durchführt oder über eine PTP-Delay-Statusmaschine übergangsweise blockiert, wie auch die Slave-Ports. Dies kann aber nur durchgeführt werden, wenn exakte Werte vorangegangener Laufzeitmessungen oder nicht allzu alt, wie bei einem Reset, vorliegen.
-
8 zeigt ein schematisches Diagramm einer Nachricht, insbesondere, wie beispielsweise die Zeitinformation in einem sogenannten MACsec verpackt sind.
-
Diese sind nur von dem Empfänger lesbar, mit dem ein Schlüssel ausgetauscht wurde. Da die Zieladresse eine Multicast-Adresse und der Absender immer derselbe ist, kann nur so sichergestellt werden, dass die Nachricht nur genau für einen Knoten Verwendung findet.
-
Insbesondere zeigt die 8 einen DA-Block 19 (Destination Adress DestinationAdress - Zieladresse (MAC/IP Adresse)), einen SA-Block 20 (Source Adress), einen SecTAG-Block 21 (Der MACSec Header (TAG Control Information (TCI)) sowie ein East Type-PTP-Block 22. Ferner ist eine Payload 23, ein ICV-Block 24 (Inegrity Check Value) sowie ein FCS-Block 25 (Frame Check Sequence) gezeigt. Insbesondere sind die Blöcke 19 bis 24 geschützt, was vorliegend mit dem Bezugszeichen 26 bezeichnet ist.