DE102015206085A1 - Verfahren und Vorrichtung zur Erkennung eines Zustands eines Knotens in einem Rechnernetz - Google Patents

Verfahren und Vorrichtung zur Erkennung eines Zustands eines Knotens in einem Rechnernetz Download PDF

Info

Publication number
DE102015206085A1
DE102015206085A1 DE102015206085.3A DE102015206085A DE102015206085A1 DE 102015206085 A1 DE102015206085 A1 DE 102015206085A1 DE 102015206085 A DE102015206085 A DE 102015206085A DE 102015206085 A1 DE102015206085 A1 DE 102015206085A1
Authority
DE
Germany
Prior art keywords
value
message
time
node
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102015206085.3A
Other languages
English (en)
Inventor
Helge Zinner
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102015206085.3A priority Critical patent/DE102015206085A1/de
Publication of DE102015206085A1 publication Critical patent/DE102015206085A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0661Clock or time synchronisation among packet nodes using timestamps
    • H04J3/0667Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C19/00Electric signal transmission systems
    • GPHYSICS
    • G08SIGNALLING
    • G08CTRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
    • G08C25/00Arrangements for preventing or correcting errors; Monitoring arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Environmental & Geological Engineering (AREA)
  • Small-Scale Networks (AREA)

Abstract

Die Erfindung betrifft ein Verfahren und eine entsprechende Vorrichtung zur Erkennung eines Zustands eines ersten Knotens in einem Rechnernetz, gekennzeichnet durch – Erfassen (301) von Information über einen ersten Empfangszeitpunkt einer ersten Nachricht, – Empfang (302) von Information über einen ersten Versendezeitpunkt der ersten Nachricht, – Erfassen (303) von Information über einen zweiten Empfangszeitpunkt einer zweiten Nachricht, – Empfang (304) von Information über einen zweiten Versendezeitpunkt der zweiten Nachricht, – Ermittlung (305) eines ersten Werts abhängig von den empfangenen und erfassten Informationen, und – Vergleich (310) des ersten Werts mit einem vorgegebenen zweiten Wert, – Erkennen (311, 312) des Zustands des ersten Knotens (101) abhängig vom Vergleichsergebnis.

Description

  • Stand der Technik
  • Die Erfindung geht aus von einem Verfahren und einer Vorrichtung nach Gattung der unabhängigen Ansprüche. Gegenstand der vorliegenden Erfindung sind auch ein Computerprogramm und ein maschinenlesbares Speichermedium.
  • Rechnernetze bestehen aus Knoten, die über Datenleitungen verbunden sind. Die in Fahrzeugen, insbesondere in Kraftfahrzeugen eingesetzte Rechnernetze, sogenannte Bordnetze, verbinden Steuergeräte als Knoten. Dabei erfüllen die in einem Fahrzeug eingesetzten Steuergeräte unterschiedliche Funktionen zum Betrieb des Fahrzeugs und tauschen diesbezüglich über das Bordnetz Daten miteinander aus. Um die volle Funktionsfähigkeit der einzelnen Steuergeräte in jeder Fahrsituation des Fahrzeugs zu gewährleisten, muss das Bordnetz besonders hohe Anforderungen bezüglich der Datensicherheit erfüllen.
  • Offenbarung der Erfindung
  • Das Verfahren mit den Merkmalen des unabhängigen Anspruchs 1 hat den Vorteil, dass Modifikationen oder Fehler im Bordnetz auf Basis einer für einen potentiellen Angreifer unsichtbaren Analyse eines Knotens des Bordnetzes erkannt werden. Dadurch erhöht sich auf kostengünstige Weise die Datensicherheit im Bordnetz.
  • Durch die in den abhängigen Ansprüchen aufgeführten Maßnahmen sind vorteilhafte Weiterbildungen und Verbesserungen des im unabhängigen Anspruch 1 angegebenen Verfahrens möglich.
  • Ausführungsbeispiele sind in den Zeichnungen dargestellt und in der nachfolgenden Beschreibung näher erläutert.
  • Es zeigen:
  • 1 schematisch einen Teil eines Rechnernetzes,
  • 2 schematisch den Aufbau eines Netzwerkknotens,
  • 3 ein Flussdiagramm mit Schritten eines Verfahrens zur Erkennung eines Zustands eines Netzwerkknotens.
  • 1 zeigt schematisch einen Teil eines Rechnernetzes 100, umfassend einen ersten Knoten 101 und einen zweiten Knoten 102 sowie eine die beiden Knoten verbindende Datenleitung 103.
  • Das Rechnernetz 100 ist beispielsweise ein Bordnetz eines Fahrzeugs, insbesondere eines Kraftfahrzeugs.
  • Der erste Knoten 101 ist beispielsweise ein Steuergerät eines Fahrzeugs, insbesondere eines Kraftfahrzeugs.
  • Der zweite Knoten 102 ist beispielsweise eine Vorrichtung 102 zur Erkennung eines Zustands des ersten Knotens 101. Vorzugsweise ist die Vorrichtung 102 ein Steuergerät des Fahrzeugs, insbesondere des Kraftfahrzeugs.
  • Die Datenleitung 103 verbindet den ersten Knoten 101 und den zweiten Knoten 102 vorzugsweise direkt. Im Beispiel des Bordnetzes eines Fahrzeugs ist die Datenleitung 103 beispielsweise eine statische und fest verdrahtete Verbindung zwischen den Steuergeräten. Dies bedeutet, dass die Steuergeräte immer die gleichen Nachbarn haben es sei denn sie werden mit anderen Steuergeräten verbunden.
  • In diesem Beispiel sind die Steuergeräte und die Datenleitung 103 ausgebildet, Daten mittels des Ethernet Protokolls und des Internet Protokolls auszutauschen.
  • Es kann auch die physikalische Übertragungstechnologie BroadR-Reach zum Einsatz kommen. Als weitere Protokolle können beispielsweise das Ethernet Audio/Video Bridging (AVB) als auch Ethernet Time Sensitive Networking (TSN) verwendet werden. Zudem wird beispielsweise zur Zeitsynchronisierung der Standard IEEE802.1AS und das Precision Time Protocol (bekannt als PTP) verwendet.
  • Um eine gemeinsame Zeitbasis in dem Ethernet-Netzwerk zu schaffen definiert beispielsweise PTP drei Mechanismen:
    Messung der Leitungsverzögerung zwischen Nachbarsteuergeräten, Bestimmung der besten Uhr und den Austausch von Zeitinformationen.
  • Die Messung der Leitungsverzögerung erfolgt mittels des sogenannten Pdelay-Mechanismus, der die Aufgabe hat, die Verzögerung zwischen zwei verbundenen Ports zu messen. Im Beispiel von 1 verbindet die Datenleitung 103 die jeweiligen Ports des ersten Knotens 101 und des zweien Knotens 102.
  • Der Pdelay-Mechanismus wird im Folgenden gemäß des Standards IEEE802.1AS beschrieben. Entsprechend sind die Steuergeräte des Bordnetzes im Beispiel ausgebildet, die beschriebenen Nachrichten gemäß dem genannten Standard zu senden, zu empfangen und auszuwerten.
  • 2 zeigt am Beispiel der Vorrichtung 102 den schematischen Aufbau eines entsprechenden Steuergeräts. Der erste Knoten 101 ist beispielsweise entsprechend dem zweiten Knoten 102 ausgebildet. Beide Knoten können im Beispiel des Steuergeräts weitere Komponenten und Funktionen, die die Steuerung des Fahrzeugs betreffen, aufweisen. Diese sind weder in 2 dargestellt noch näher erläutert.
  • Die Vorrichtung 102 umfasst einen Taktgeber 201 beispielsweise einen Quarz, der bei Anlegen einer vorgegebenen Versorgungsspannung in einer vorgegebenen Frequenz oszilliert. In Steuergeräten des Bordnetzes sowie in Rechnereinheiten allgemein leiten sich die Uhrzeit und/oder Takt des Steuergeräts oder der Rechnereinheit meist von einem Quarz her. Andere Möglichkeiten zur Erzeugung des Takts, wie beispielsweise Keramikresonatoren oder programmierbare MEMS-Oszillatoren können ebenfalls verwendet werden.
  • Der Quarz wird durch Anlegen einer Spannung entsprechend seiner Güte zum nahezu gleichmäßigen Schwingen angeregt. Eine bestimmte und definierte Anzahl von Schwingungen löst dabei ein Interrupt aus, welcher einem einzigen sogenannten "Uhrentick", der kleinsten Takteinheit, entspricht. Beispielsweise wird ein Quarz im Bordnetz eingesetzt, der eine Güte von 100 ppm (Quarz per Million) aufweist.
  • Die Vorrichtung 102 weist zudem eine Prozessor 204 auf, der mittels eines Datenbusses 206 das Interrupt empfängt und die interne Uhr der Vorrichtung 102 um einen Uhrentick weiterbewegt.
  • Die physikalischen Eigenschaften des Quarzes und seine Güte sind dabei ausschlaggebend für die Genauigkeit der Uhr. Den höchsten Einfluss auf den Quarz und dessen Genauigkeit hat dabei die Temperatur. Die geringste Abweichung von seiner Spezifikation hat ein typischer Quarz bei mittlerer Raumtemperatur von plus 25°C. Die Anzahl der Schwingungen nehmen ab, wenn die Außentemperatur abnimmt und der Quarz schwingt schneller bei Zunahme der Außentemperatur, die auch den Quarz in der Vorrichtung 102 aufheizt. Typisch zum Einsatz kommende AT-Schnitt-Quarze zeichnen sich dadurch aus, dass ihre Schwingung über die Temperaturveränderung einer kubischen Kurve entspricht. Dies bedeutet, dass ein Quarz zum einen abhängig von seiner Güte und zum anderen abhängig von der Temperatur unterschiedlich stark schwingt.
  • Der Prozessor 204 der Vorrichtung 102 ist ausgebildet, mit einem in der Vorrichtung 102 angeordneten Empfänger 203 zusammenzuwirken, um über den Datenbus 206 Information über einen ersten Empfangszeitpunkt einer ersten Nachricht zu erfassen.
  • Der Prozessor 204 und der Empfänger 203 sind dazu ausgebildet, beim Empfangen einer ersten Nachricht einen Hardwarezeitstempel beim Eintreffen der ersten Nachricht zu erzeugen.
  • Im Beispiel wird entsprechend des Pdelay-Mechanismus als erste Nachricht, eine Delay_Request-Nachricht am mit der Datenleitung 103 verbundenen Port des Empfängers 203 empfangen, erkannt und dafür der Hardwareeingangszeitstempel mit der Information über den ersten Empfangszeitpunkt erzeugt. Dazu wird die aktuelle Zeit der internen Uhr der Vorrichtung 102 verwendet.
  • Die Vorrichtung 102 ist ausgebildet Informationen über einen zweiten Empfangspunkt einer zweiten Nachricht und weitere Empfangszeitpunkte weiterer Nachrichten in derselben Weise zu erfassen.
  • Zudem ist der Prozessor 204 und der Empfänger 203 dazu ausgebildet zusammenzuwirken, um Information über einen ersten Versendezeitpunkt der ersten Nachricht, einen zweiten Versendezeitpunkt der zweiten Nachricht sowie weitere Versendezeitpunkte weiterer Nachrichten zu empfangen. Im Beispiel des Pdelay-Mechanismus wird dazu die Delay_Response_Follow-Up-Nachricht verwendet, die den Versendezeitpunkt der jeweils vorausgehenden bereits vom Empfänger 203 empfangenen Nachricht beinhaltet. Gemäß dem Pdelay-Mechanismus ist dabei vorgesehen, dass in Erwiderung einer Delay_Request-Nachricht eine Delay_Response-Nachricht und die zugehörige Delay_Response_Follow-Up-Nachricht unmittelbar nacheinander gesendet werden. Der Prozessor 204 ist entsprechend ausgebildet mit einem Sender 202 der Vorrichtung 102 zusammenzuwirken, um die Delay_Request-Nachricht über den mit der Datenleitung 103 verbundenen Port zu senden und anschließend auf die Delay_Response-Nachricht sowie die zugehörige Delay_Response_Follow-Up-Nachricht zu warten.
  • Die Delay_Response_Follow-Up-Nachricht enthält dabei Informationen über den Versendezeitpunkt der zuvor empfangenen Delay_Response-Nachricht.
  • Der Prozessor 204 ist ausgebildet einen ersten Wert, abhängig von den empfangenen und erfassten Informationen zu ermitteln. Im Beispiels des Pdelay-Mechanismus ist der Prozessor 204 ausgebildet den ersten Wert aus zwei Delay_Response und Delay-Response_Follow-Up-Nachrichtenpaaren zu ermitteln.
  • Dies bedeutet, dass der Prozessor 204 ausgebildet ist, eine erste Delay_Response zu erfassen und einen ersten Empfangszeitpunkt mittels Hardwarezeitstempel festzulegen. Dann empfängt der Prozessor Informationen über den Versendezeitpunkt der ersten Delay_Response in einer ersten Delay_Response_Follow-Up-Nachricht.
  • Zudem erfasst der Prozessor 204 einen zweiten Empfangszeitpunkt einer zweiten Delay_Response mittels eines zweiten Hardwarezeitstempels. Weiter empfängt der Prozessor 204 Informationen über den zweiten Versendezeitpunkt der zweiten Delay_Response-Nachricht.
  • Der Prozessor 204 ist ausgebildet, einen ersten Wert abhängig von den empfangenen und erfassten Informationen zu bestimmen. Dazu bestimmt der Prozessor 204 einen ersten Wert w1 der Abweichung aus einem ersten Versendezeitpunkt v1, einem zweiten Versendezeitpunkt v2, einem ersten Empfangszeitpunkt e1 und einem zweiten Empfangszeitpunkt e2 beispielsweise wie folgt: w1 = (v2 – v1)/(e2 – e1).
  • Der Prozessor 204 kann ausgebildet sein, den Wert w1 der Abweichung als Mittelwert aus einer Mehrzahl von empfangenen Nachrichten und zugehörigen Empfangs- und Versendezeitpunkten zu bestimmen.
  • Der Prozessor 204 ist zudem ausgebildet den ersten Wert w1 mit einem vorgegebenen zweiten Wert w2, der beispielsweise in einem Speicher 205 abgespeichert ist, zu vergleichen. Der zweite Wert w2 ist beispielsweise eine Größe, die in die Vorrichtung 102 im Speicher beispielsweise bei der Produktion am Bandende gespeichert wurde.
  • Der zweite Wert w2 kann alternativ oder zusätzlich durch den Prozessor 204 ermittelt werden. Der zweite Wert w2 kann im Speicher 205 abgespeichert werden. Beispielsweise wird der zweite Wert w2 abhängig von empfangener und erfasster Information einer weiteren ersten Nachricht und abhängig von empfangener und erfasster Information einer weiteren zweiten Nachricht sowie deren Versendezeitpunkten oder Empfangszeitpunkten als Mittelwert ermittelt. Der zweite Wert w2 kann auch aus einer Mehrzahl solcher Nachrichten ermittelt werden.
  • Dies bedeutet, dass der zweite Wert w2 eine Abweichung oder den Mittelwert einer Abweichung zwischen der internen Uhr der Vorrichtung 102 und einer internen Uhr eines anderen Knotens des Bordnetzwerks darstellt.
  • Im Beispiel ist das Steuergerät bzw. der erste Knoten 101 entsprechend der Vorrichtung 102 dazu ausgebildet in Erwiderung auf einen Delay_Request die entsprechende Delay_Response und die Delay_Response_Follow-Up-Nachrichten samt Zeitstempel zu senden. Der Hardware-Zeitstempel wird dabei abhängig von der internen Uhr des ersten Knotens 101 bestimmt und als Ausgangszeitstempel so spät wie möglich beim Verlassen des entsprechenden Senders, im Beispiel eines Ethernet-Transceivers geschrieben. Durch diese Verwendung des Pdelay-Mechanismus empfängt die Vorrichtung 102 Informationen über die interne Uhr des ersten Knotens 101, und damit über den im ersten Knoten 101 verwendeten Quarz. Dieser wird dadurch überwachbar. Auf Seite des ersten Knotens 101 ist keine Protokolländerung nötig. Insofern ist die Überwachung am ersten Knotens 101 nicht bemerkbar.
  • Der Prozessor 204 ist dazu ausgebildet, den Zustand des ersten Knotens 101 abhängig vom Ergebnis des Vergleichs des ersten Werts w1 mit dem zweiten Wert w2 zu erkennen.
  • Im Falle, dass der zweite Wert w2 beispielsweise in der Produktion am Bandende als fester Wert in den Speicher 205 der Vorrichtung 102 programmiert wird, wird der zweite Wert w2 zuvor so bestimmt, dass er eine Sollabweichung zwischen dem Takt des internen Quarzes des ersten Knotens 101 und des internen Quarzes der Vorrichtung 102 darstellt. Dadurch wird beispielsweise in einem verteilten Bordnetz sichergestellt, dass zwei zusammen gehörende Steuergeräte nach dem Einbau in das Fahrzeug und der Integration in das Bordnetz nicht vertauscht werden können, ohne dass beim Vergleich des dann von der Vorrichtung 102 bestimmten ersten Werts w1 mit dem vorgegebenen zweiten Wert w2 ein Unterschied zwischen den Abweichungen der Taktzeiten der internen Quarze auffällt. Dadurch erkennt die Vorrichtung 102 in diesem Beispiel als Zustand, ob der erste Knoten 101 bekannt, neu oder verändert ist, bzw. ein anderes Steuergerät als Mithörer in die Leitung gesetzt wurde.
  • Alternativ dazu oder zusätzlich zu einem anfänglich abgespeicherten zweiten Wert w2, kann der Prozessor 204 den zweiten Wert w2 im Betrieb des Fahrzeugs, abhängig von empfangenen und erfassten Informationen weiterer Delay_Response und Delay_Response_Follow-Up-Nachrichten ermitteln. Somit kann die Vorrichtung 102 nach dem Einbau des ersten Knotens und der Vorrichtung 102 und deren Integration in das Bordnetz im Fahrzeug eine Abweichung der Taktzeiten der jeweiligen internen Quarze lernen. In diesem Fall kann vorgesehen sein, die Ermittlung des zweiten Werts w2 nur im besonderen Betriebsmodus, beispielsweise eines Diagnose-Betriebsmodus des Steuergeräts durchzuführen. Dadurch kann eine Alterung des Quarzes, eine temperaturbedingte Änderung oder eine vom Hersteller beabsichtige Veränderung am Bordnetz berücksichtigt werden.
  • In der Vorrichtung 102 kann ein zusätzlicher Temperatursensor, der nicht in 2 dargestellt ist, vorgesehen sein. Alternativ kann der Empfänger 103 zum empfangen einer Temperatur von einem nicht dargestellten Temperatursensor ausgebildet sein. Dadurch wird eine erste Temperatur t1 erfasst und Information über die erste Temperatur t1 bereitgestellt. Die erste Temperatur t1 wird beispielsweise in Grad Celsius erfasst.
  • Es kann vorgesehen sein, dass dem zweiten Wert w2 eine Information über eine bestimmte Temperatur tb zugeordnet ist. Da der interne Quarz des ersten Knotens 101 temperaturabhängig unterschiedlich schwingt, kann die Robustheit der Erkennung des Zustands durch im Folgenden beschriebene Maßnahmen erhöht werden.
  • Der vorgegebene zweite Wert w2 kann bei Vorliegen der bestimmten Temperatur tb am Quarz, beispielsweise bei 25°C, ermittelt werden.
  • In diesem Fall kann vorgesehen sein, den Vergleich zwischen dem ersten Wert w1 und dem vorgegebenen zweiten Wert w2 nur dann durchzuführen, wenn eine dem Empfangszeitpunkt oder Versendezeitpunkt der Nachrichten die zur Ermittlung des ersten Wertes w1 verwendet wurden, zugeordnete erste Temperatur t1 unter Berücksichtigung einer vorgegebenen Toleranz der bestimmten Temperatur tb entspricht.
  • Im Beispiel wird eine Toleranz von +/–1°C verwendet. Das bedeutet der Vergleich des ersten Werts w1 mit dem zweiten Wert w2 wird nur durchgeführt, wenn die erste Temperatur t1 im Bereich von 25°C +/– 1°C liegt.
  • Dadurch wird eine durch temperaturbedingte Abweichungen ausgelöste Fehlerkennung vermieden.
  • Es kann vorgesehen sein, mehrere zweite Werte w2x unterschiedlichen bestimmten Temperaturen tbx zuzuordnen. Dies kann zum einen durch das Abspeichern mehrerer vorgegebener Wertepaare, bestehend aus zweitem Wert w2x und zugeordnetem bestimmten Temperaturwert tbx erfolgen. In diesem Fall kann vorgesehen sein, einen zur ersten Temperatur t1 passenden zweiten Wert w2x dadurch auszuwählen, dass von den abgespeicherten zweiten Werten w2x der zweite Wert w2x gewählt wird, dessen zugeordnete bestimmte Temperatur tbx der ersten Temperatur t1 am nächsten liegt. Dadurch kann ein Zustand des ersten Knotens 101 erkannt werden, auch wenn die Temperatur Einfluss auf die Taktzeiten der internen Quarze hat.
  • Alternativ oder zusätzlich kann eine weitere Erkennung des Zustands des Quarzes des ersten Knotens 101 oder des ersten Knotens 101 vorgesehen sein. Die Verwendung der Temperatur bietet die Möglichkeit in der Vorrichtung 102 zu erkennen, ob die Temperatur im ersten Knoten 101 einen, für den Quarz oder den ersten Knoten 101 selbst, schädlichen hohen oder niedrigen Wert aufweist.
  • Dazu kann vorgesehen sein, den ersten Werts w1 mit dem zweiten Wert w2 oder mehreren vorgegebenen zweiten Werten w2x zu vergleichen. Dabei wird beispielsweise der dem ersten Wert w1 nächstliegende zweite Wert w2 bestimmt. Die diesem zweiten Wert w2 zugeordnete bestimmte Temperatur tb wird als Temperatur des Quarzes des ersten Knotens 101 oder des ersten Knotens 101 interpretiert.
  • Der Prozessor 204 ist in den beschriebenen Beispielen ausgebildet, die oben genannten Operationen mittels eines Computerprogramms auszuführen.
  • In einer modifizierten Vorrichtung 102 kann vorgesehen sein, dass anstelle oder zusätzlich zum Pdelay-Mechanismus Synchronisationsnachrichten, die zwischen dem ersten Knoten 101 und der Vorrichtung 102 ausgetauscht werden zur Bestimmung der empfangenen und erfassten Information verwendet werden.
  • Beispielsweise wird dazu der Austausch von Zeitinformationen gemäß des Sync_Follow_Up-Mechanismus verwendet. Dies bedeutet, dass die beteiligten Ports zyklisch Sync- und Follow_Up-Nachrichten über die Datenleitung 103 übertragen. Besonders geeignet ist dieses Vorgehen in dem Falle, dass innerhalb eines Ethernet AVB-Netzwerkes ein Grandmaster gemäß einer mittels PTP definierten Master-Slave-Uhrenhierarchie vorgesehen ist.
  • Wenn in diesem Fall der erste Knoten 101 im Bordnetz einen kürzeren Weg zum Grandmaster hat wird dem Port des ersten Knotens 101, der über die Datenleitung 103 mit der Vorrichtung 102 verbunden ist, der Zustand Masterport zugewiesen. Dem entsprechenden Port des Empfängers 203 wird der Zustand Slave zugewiesen.
  • In diesem Falle sendet der Masterport zyklisch Sync- und Follow_Up-Nachrichten an den Empfänger 203. Wenn die Sync-Nachricht den Masterport verlässt, wird von dem ersten Knoten 101 ein Zeitstempel generiert, welcher unmittelbar in einer darauf folgenden Follow_Up-Nachricht übertragen wird. Dieser Zeitstempel entspricht der aktuellen Uhrzeit des Grandmasters zum Sendezeitpunkt der Sync-Nachricht. Die aktuelle Uhrzeit des Grandmasters wiederum wird durch den internen Quarz des ersten Knotens 101 beeinflusst. Insofern empfängt und erfasst die Vorrichtung 102 in der modifizierten Ausführung die erforderliche Information automatisch.
  • Die Auswertung des Status erfolgt entsprechend der beim PDelay-Mechanismus beschriebenen Auswertung.
  • Durch die beschriebene Vorgehensweise kann die Vorrichtung 102 beispielsweise in einem Fahrzeugnetzwerk Veränderungen im Bordnetz selbstständig auf unterster Protokollschicht erkennen. Manipulationen der untersten Protokollschicht, das heißt der physikalischen Schicht, sind deutlich schwieriger durchzuführen, als Manipulationen auf anderen Protokoll- und Datenschichten. Dadurch kann beispielsweise bei der Verwendung von Ethernet auf teure Implementierung und weitere zusätzliche Hardware verzichtet werden.
  • Im Folgenden wird anhand des Flussdiagramms von 3 ein Verfahren zur Erkennung eines Zustands des ersten Knotens 101 im Rechnernetz 100 beschrieben. Das Verfahren startet beispielsweise beim Neustart des Rechnernetzes 100 und/oder beim Start der Vorrichtung 102. Nach dem Start wird ein Schritt 301 ausgeführt. Dieser kann durch das Starten des Fahrzeugs erfolgen.
  • Im Schritt 301 wird eine erste Nachricht empfangen und Information über den ersten Empfangszeitpunkt der ersten Nachricht erfasst. Beispielsweise wird eine erste Synchronisationsnachricht empfangen und ihre Ankunftszeit gespeichert.
  • Zusätzlich kann ein Temperaturwert erfasst, d.h. aktuell gemessen oder empfangen und der Ankunftszeit zugeordnet abgespeichert werden.
  • Die ersten Synchronisationsnachricht ist beispielsweise eine erste Sync-Nachricht gemäß des Sync_Follow_Up-Mechanismus. Alternativ kann auch eine erste Delay_Response-Nachricht gemäß dem Pdelay-Mechanismus empfangen und deren Ankunftszeit abgespeichert werden.
  • In diesem Fall kann im Schritt 301 vorgesehen sein, die entsprechende Delay_Request-Nachricht zu versenden und auf die zugehörige Delay_Response zu warten.
  • Es kann auch vorgesehen sein, das Verfahren unabhängig von dem Pdelay-Mechanismus und dem Sync_Follow_Up-Mechanismus zu implementieren und lediglich die Nachrichten eines bereits ablaufenden Pdelay-Mechanismus oder eines bereits ablaufenden Sync_Follow_Up-Mechanismus am Empfänger 203 zu beobachten.
  • Anschließend wird ein Schritt 302 ausgeführt.
  • Im Schritt 302 wird die, der ersten Synchronisationsnachricht nachfolgende, Follow_Up-Nachricht empfangen und deren Zeitstempel erfasst und abgespeichert. Dies bedeutet, dass Information über einen Versendezeitpunkt der ersten Synchronisationsnachricht empfangen wird.
  • Alternativ dazu kann bei Verwendung des Pdelay-Mechanismus die entsprechende Delay_Response_Follow_Up-Nachricht empfangen und der Versendezeitpunkt daraus erfasst und abgespeichert werden.
  • Zusätzlich kann die Temperatur entsprechend der für Schritt 301 vorgesehenen Vorgehensweise auch im Schritt 302 zusätzlich oder alternativ zu der Erfassung im Schritt 301 durchgeführt werden.
  • Anschließend wird ein Schritt 303 ausgeführt.
  • Im Schritt 303 wird Information über einen zweiten Empfangszeitpunkt einer zweiten Nachricht erfasst. Im Beispiel des Sync_Follow_Up-Mechanismus wird eine weitere Synchronisationsnachricht, beispielsweise die nächste zyklische Sync-Nachricht empfangen, deren Ankunftszeit als Hardwarezeitstempel ermittelt und abgespeichert.
  • Bei Verwendung des Pdelay-Mechanismus kann vorgesehen sein, eine weitere Delay_Request-Nachricht zu senden und auf die zugehörige Delay_Response-Nachricht zu warten. In diesem Fall wird die Ankunftszeit der Delay_Response-Nachricht per Hardwarezeitstempel ermittelt und als Ankunftszeit abgespeichert.
  • Alternativ oder zusätzlich zu der bereits in Schritten 301 oder 302 erfassten Temperatur kann die Temperatur auch im Schritt 303 erfasst und abgespeichert werden.
  • Anschließend wird ein Schritt 304 ausgeführt.
  • Im Schritt 304 wird die Information über den zweiten Versendezeitpunkt der zweiten Nachricht empfangen. Im Beispiel des Sync_Follow_Up-Mechanismus wird die zu der im Schritt 303 empfangenen Sync-Nachricht zugehörige Follow_Up-Nachricht empfangen, der darin enthaltene Versendezeitpunkt erfasst und abgespeichert. Bei Verwendung des Delay_Response-Mechanismus wird die entsprechende Delay_Response_Follow_Up-Nachricht empfangen und der darin enthaltene Versendezeitpunkt erfasst und abgespeichert.
  • Zusätzlich oder alternativ zu der Temperatur, die bereits in Schritten 301 bis 303 erfasst wurde, kann die Temperatur auch im Schritt 304 erfasst werden.
  • Sollte die Temperatur in mehr als einem der vorgenannten Schritte erfasst worden sein, kann vorgesehen sein, einen Mittelwert der Temperatur zu bilden und als zweite Temperatur abzuspeichern.
  • Anschließend wird ein Schritt 305 ausgeführt.
  • Im Schritt 305 wird der erste Wert w1, das heißt die Abweichung der Taktzeiten zwischen den internen Quarzen aus den erfassten und empfangenen Informationen ermittelt. Dazu werden die Differenzen der jeweiligen Versende- und Empfangszeitpunkte ins Verhältnis gesetzt. Beispielsweise wird der erste Wert gemäß folgender Formel bestimmt: w1 = (v2 – v1)/(e2 – e1).
  • Anschließend wird ein Schritt 306 ausgeführt.
  • Im Schritt 306 wird geprüft, ob bereits ein zweiter Wert w2 vorliegt. Falls ein zweiter Wert w2 vorliegt, wird ein Schritt 307 ausgeführt. Andernfalls wird der erste Wert w1 als zweiter Wert w2 = w1 gespeichert und der Schritt 301 ausgeführt.
  • In diesem Fall wird der zweite Wert w2 bei der erstmaligen Ausführung des Verfahrens aus den dann vorliegenden Informationen bestimmt und anschließend beispielsweise im Speicher 205 abgespeichert. Dadurch kann bei der Produktion am Bandende beim Einbau und der Integration der Vorrichtung 102 und des ersten Knotens 101 eine automatische Initialisierung einmalig durchgeführt werden.
  • Durch die Wiederholung der Schritte 301 bis 305 wird dann in jedem weiteren Verlauf des Verfahrens ein erster Wert w1 bestimmt, der mit diesem dann ermittelten zweiten Wert w2 verglichen werden kann.
  • Alternativ oder zusätzlich dazu kann vorgesehen sein, in einem bestimmten Modus, beispielsweise einem Diagnosemodus der Vorrichtung 102 eine erneute Ermittlung des zweiten Wertes w2 zu veranlassen. Dies kann beispielsweise durch das Löschen des Speichers 205 in einem Diagnosemodus erfolgen. Dadurch können bauliche Veränderungen an der Bordnetzstruktur oder den verwendeten ersten Knoten oder der Vorrichtung 102 berücksichtigt werden.
  • Vorteilhafterweise ist in diesem Fall der Speicher 205 durch besondere Maßnahmen vor einem Zugriff durch Nichtberechtigte geschützt. Dazu kann vorgesehen sein, den zweiten Wert w2 oder den gesamten Speicher 205 verschlüsselt zu speichern.
  • Im Schritt 307 wird geprüft, ob es Umgebungsparameter, die die Schwingung der internen Quarze beeinflussen können, gibt. Beispielsweise wird geprüft, ob eine erste Temperatur t1 erfasst, d.h. gemessen oder empfangen wurde. Falls Umgebungsparameter vorliegen, wird ein Schritt 308 ausgeführt. Andernfalls wird ein Schritt 309 ausgeführt.
  • Im Schritt 308 wird die erste Temperatur t1 zur Auswahl des zweiten Werts w2 mit der dem zweiten Wert w2 zugeordneten bestimmten Temperatur tb verglichen und der zweite Wert w2 aus dem Speicher 205 gewählt, dessen zugeordnete bestimmte Temperatur t1 am besten mit der ersten Temperatur t1 übereinstimmt.
  • Im Schritt 309 wird der zweite Wert w2 unabhängig von der Temperatur aus dem Speicher 205 gelesen.
  • Nach dem Schritt 308 oder nach dem Schritt 309 wird ein Schritt 310 ausgeführt.
  • Im Schritt 310 wird der erste Wert w1 mit dem zweiten Wert w2 verglichen. Falls eine Abweichung zwischen dem ersten Wert w1 und dem zweien Wert w2 eindeutig erkennbar ist, wird ein Schritt 311 ausgeführt. Andernfalls wird ein Schritt 312 ausgeführt.
  • Eine Abweichung ist beispielsweise eindeutig erkennbar, wenn der ersten Wert w1 und der zweite Wert w2 sich um einen vorgegebenen dritten Wert unterscheiden. Beispielsweise wird der dritte Wert dimensionslos als Größe angegeben, die den Unterschied der Quarze in parts per Million (ppm) angibt. Beispielsweise kann vorgesehen sein, dass die Abweichung nicht größer als 1000 ppm betragen darf. In diesem Fall wurde der dritte Wert entsprechend vorgegeben.
  • Im Schritt 311 wird der Zustand des ersten Knotens 101, abhängig vom Vergleichsergebnis erkannt. Beispielsweise wird ein neuer oder veränderter erster Knoten 101 erkannt. Zusätzlich kann vorgesehen sein, dass eine Meldung oder eine Protokolländerung durch die Vorrichtung 102 ausgelöst wird.
  • Im Schritt 312 wird der Zustand des ersten Knotens 101, abhängig vom Vergleichsergebnis erkannt. Beispielsweise wird in diesem Fall erkannt, dass der erste Knoten 101 bekannt ist, da die Abweichung nicht größer als der vorgegebene dritte Wert ist. Es kann vorgesehen sein, eine entsprechende Meldung zu erzeugen und entweder intern in Vorrichtung 102 zu verwenden oder an andere Steuergeräte im Bordnetz mittels des Senders 202 zu versenden.
  • Nach den Schritten 311 oder 312 wird der Schritt 301 ausgeführt.
  • Das Verfahren endet beispielsweise, wenn die Vorrichtung 102 oder das Bordnetz, beispielsweise beim ausschalten des Fahrzeugs, abgeschaltet wird.
  • Die Vorrichtung 102 ist eingerichtet ist, das beschriebene Verfahren auszuführen. Das Verfahren ist beispielsweise als Computerprogramm implementiert. Dieses Computerprogramm kann auf einem maschinenlesbaren Speichermedium gespeichert sein.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
  • Zitierte Nicht-Patentliteratur
    • Standard IEEE802.1AS [0016]
    • Standards IEEE802.1AS [0019]

Claims (10)

  1. Verfahren zur Erkennung eines Zustands eines ersten Knotens (101) in einem Rechnernetz (100), gekennzeichnet durch – Erfassen (301) von Information über einen ersten Empfangszeitpunkt einer ersten Nachricht, – Empfang (302) von Information über einen ersten Versendezeitpunkt der ersten Nachricht, – Erfassen (303) von Information über einen zweiten Empfangszeitpunkt einer zweiten Nachricht, – Empfang (304) von Information über einen zweiten Versendezeitpunkt der zweiten Nachricht, – Ermittlung (305) eines ersten Werts abhängig von den empfangenen und erfassten Informationen, und – Vergleich (310) des ersten Werts mit einem vorgegebenen zweiten Wert, – Erkennen (311, 312) des Zustands des ersten Knotens (101) abhängig vom Vergleichsergebnis.
  2. Verfahren nach Anspruch 1, wobei der zweite Wert abhängig von empfangener und erfasster Information einer weiteren ersten Nachricht und abhängig von empfangener und erfasster Information einer weiteren zweiten Nachricht ermittelt wird, deren Versendezeitpunkt oder Empfangszeitpunkt vor dem Versendezeitpunkt oder Empfangszeitpunkt der ersten Nachricht und der zweiten Nachricht liegt.
  3. Verfahren nach Anspruch 2, wobei der zweite Wert abhängig von empfangener und erfasster Information einer Mehrzahl von weiteren ersten Nachrichten und abhängig von empfangener und erfasster Information einer Mehrzahl von weiteren zweiten Nachricht, insbesondere als Mittelwert, ermittelt wird.
  4. Verfahren nach einem der Ansprüche 1 bis 3, wobei der zweite Wert in einem Speicher (205) abgespeichert ist.
  5. Verfahren nach einem der vorherigen Ansprüche, wobei der zweite Wert einer Information über eine erste Temperatur zugeordnet ist.
  6. Verfahren nach Anspruch 5, wobei eine dem Empfangszeitpunkt oder Versendezeitpunkt der ersten Nachricht, oder dem Empfangszeitpunkt oder Versendezeitpunkt der zweiten Nachricht zugeordnete zweite Temperatur erfasst wird, wobei der zweite Wert aus einer Mehrzahl zweiter Werte abhängig von einem Vergleich der zweiten Temperatur mit der dem jeweiligen zweiten Wert zugeordneten ersten Temperatur ausgewählt wird.
  7. Verfahren nach Anspruch 6, wobei die erste Temperatur vor dem Empfangszeitpunkt oder Versendezeitpunkt der ersten Nachricht, oder dem Empfangszeitpunkt oder Versendezeitpunkt der zweiten Nachricht erfasst und dem zweiten Wert zugeordnet wird.
  8. Vorrichtung (102) zur Erkennung eines Zustands eines ersten Knotens (101) in einem Rechnernetz (100), die eingerichtet ist das Verfahren nach einem der Ansprüche 1 bis 7 auszuführen.
  9. Computerprogramm, welches eingerichtet ist, das Verfahren nach einem der Ansprüche 1 bis 7 auszuführen.
  10. Maschinenlesbares Speichermedium, auf dem das Computerprogramm nach Anspruch 9 gespeichert ist.
DE102015206085.3A 2015-04-02 2015-04-02 Verfahren und Vorrichtung zur Erkennung eines Zustands eines Knotens in einem Rechnernetz Pending DE102015206085A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102015206085.3A DE102015206085A1 (de) 2015-04-02 2015-04-02 Verfahren und Vorrichtung zur Erkennung eines Zustands eines Knotens in einem Rechnernetz

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102015206085.3A DE102015206085A1 (de) 2015-04-02 2015-04-02 Verfahren und Vorrichtung zur Erkennung eines Zustands eines Knotens in einem Rechnernetz

Publications (1)

Publication Number Publication Date
DE102015206085A1 true DE102015206085A1 (de) 2016-10-06

Family

ID=56937382

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102015206085.3A Pending DE102015206085A1 (de) 2015-04-02 2015-04-02 Verfahren und Vorrichtung zur Erkennung eines Zustands eines Knotens in einem Rechnernetz

Country Status (1)

Country Link
DE (1) DE102015206085A1 (de)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102016219663A1 (de) 2016-10-11 2018-04-12 Conti Temic Microelectronic Gmbh Verfahren zur Überwachung eines Netzwerks auf Anomalien
DE102020215247A1 (de) 2020-12-02 2022-06-02 Continental Automotive Gmbh Verfahren zur Ermittlung der Steuergerätetemperatur durch ein Zeitsynchronisationsprotokoll

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Standards IEEE802.1AS

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102016219663A1 (de) 2016-10-11 2018-04-12 Conti Temic Microelectronic Gmbh Verfahren zur Überwachung eines Netzwerks auf Anomalien
DE102016219663B4 (de) 2016-10-11 2018-08-02 Conti Temic Microelectronic Gmbh Verfahren zur Überwachung eines Netzwerks auf Anomalien
US10771346B2 (en) 2016-10-11 2020-09-08 Conti Temic Microelectronic Gmbh Method for monitoring a network for anomalies
DE102020215247A1 (de) 2020-12-02 2022-06-02 Continental Automotive Gmbh Verfahren zur Ermittlung der Steuergerätetemperatur durch ein Zeitsynchronisationsprotokoll
WO2022117166A1 (de) * 2020-12-02 2022-06-09 Continental Automotive Gmbh Verfahren zur ermittlung der steuergerätetemperatur durch ein zeitsynchronisationsprotokoll

Similar Documents

Publication Publication Date Title
EP3501154B1 (de) Bereitstellen einer gesicherten kommunikation innerhalb eines echtzeitfähigen kommunikationsnetzwerkes
EP3701648B1 (de) Verfahren zum erkennen eines fehlerhaften zeitstempels einer ethernet-nachricht und steuereinheit für ein kraftfahrzeug
DE102012216689B4 (de) Verfahren zur Überwachung eines Ethernet-basierten Kommunikationsnetzwerks in einem Kraftfahrzeug
EP2420025B1 (de) Verfahren und kommunikationssystem zum ermitteln des zeitpunktes eines ereignisses in einem io-gerät
DE102008000562A1 (de) Kommunikationssystem umfassend einen Datenbus und mehrere daran angeschlossene Teilnehmerknoten sowie Verfahren zum Betreiben eines solchen Kommunikationssystems
EP2759096B1 (de) Verfahren und vorrichtung zum koppeln eines ersten sensors mit zumindest einem zweiten sensor
DE112016003907T5 (de) Weiterleitungsvorrichtung
EP3022856B1 (de) Verfahren zur lokalisierung einer frequenzabweichung in einem kommunikationsnetz und entsprechendes kommunikationsnetz
WO2018127475A1 (de) Selbstkonfigurierende überwachungseinrichtung für ein auf einem industriellen datenkommunikationsnetzwerk basierendes automatisierungssystem
DE102015206085A1 (de) Verfahren und Vorrichtung zur Erkennung eines Zustands eines Knotens in einem Rechnernetz
EP4078921B1 (de) Verfahren zur absicherung der zeitsynchronisation eines ethernet-bordnetzes
EP4078863A1 (de) Verfahren zur prüfung der gültigkeit von sensordaten eines ethernet-bordnetzes
DE102010038573B4 (de) Messverfahren für eine von Hilfsmessgrößen abhängige Messgröße
EP3526930B1 (de) Verfahren zur überwachung eines netzwerks auf anomalien
DE102015206198A1 (de) Verfahren und Vorrichtung zur Übertragung von Nachrichten in einem Rechnernetz
DE102016011493A1 (de) Numerisches Steuersystem mit synchroner Steuerfunktion zwischen Einheiten
WO2023126127A1 (de) Verfahren und system zur bereitstellung von zeitkritischen steuerungsanwendungen
DE112020006988T5 (de) Zeitkorrekturvorrichtung, zeitkorrekturverfahren, und zeitkorrekturprogramm
DE102015206051A1 (de) Verfahren und Vorrichtung zur Datenübertragung in einem Rechnernetz
DE102016216728A1 (de) Fehlerdiagnose in einem Bordnetz
EP3111600A1 (de) Verfahren und computernetzwerk zum übertragen von nachrichten
DE102014018152A1 (de) Verfahren zur Bestimmung der Signalqualität in einem CAN-Protokoll basierten Netzwerk
DE112018007879B4 (de) Kommunikationssystem, Kommunikationsgerät und Programm
EP3381156B1 (de) Verfahren und vorrichtung zum auswerten von signaldaten
DE102021202075A1 (de) Verfahren zur Validierung von Nachrichten

Legal Events

Date Code Title Description
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04L0012260000

Ipc: H04L0043000000

R012 Request for examination validly filed