DE112015004253B4 - Ethernet-Interfacemodul - Google Patents

Ethernet-Interfacemodul Download PDF

Info

Publication number
DE112015004253B4
DE112015004253B4 DE112015004253.9T DE112015004253T DE112015004253B4 DE 112015004253 B4 DE112015004253 B4 DE 112015004253B4 DE 112015004253 T DE112015004253 T DE 112015004253T DE 112015004253 B4 DE112015004253 B4 DE 112015004253B4
Authority
DE
Germany
Prior art keywords
frame
return
interface module
ethernet interface
field
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.)
Active
Application number
DE112015004253.9T
Other languages
English (en)
Other versions
DE112015004253T5 (de
Inventor
Andrew David Alsup
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.)
Innovasic Inc
Original Assignee
Innovasic Inc
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 Innovasic Inc filed Critical Innovasic Inc
Publication of DE112015004253T5 publication Critical patent/DE112015004253T5/de
Application granted granted Critical
Publication of DE112015004253B4 publication Critical patent/DE112015004253B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B3/00Line transmission systems
    • H04B3/02Details
    • H04B3/20Reducing echo effects or singing; Opening or closing transmitting path; Conditioning for transmission in one direction or the other
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/10Current supply arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/0264Arrangements for coupling to transmission lines
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/351Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L5/00Arrangements affording multiple use of the transmission path
    • H04L5/14Two-way operation using the same type of signal, i.e. duplex
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Power Engineering (AREA)
  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Ethernet-Interfacemodul, das dafür ausgebildet ist, ein Gerät mit einem Ethernet-Netzwerk zu koppeln, das Ethernet-Interfacemodul aufweisend:
einen ersten Vollduplex-Port mit einem Empfangsabschnitt und einem Sendeabschnitt;
wobei der erste Vollduplex-Port dafür ausgebildet ist, Frames zwischen dem Ethernet-Netzwerk und dem Gerät zu übertragen;
wobei jeder empfangene Frame ein Frame-Typ-Feld aufweist, um einen Frame-Typ zu kennzeichnen, und ein Befehls-Feld, das verwendet wird, um dem Gerät einen Befehl zur Verfügung zu stellen;
einen ersten Pfad, der den Empfangsabschnitt des ersten Vollduplex-Ports mit dem Sendeabschnitt des ersten Vollduplex-Ports koppelt;
eine Warteschlange, die in dem ersten Pfad angeordnet ist;
eine Auswertevorrichtung, die mit der Warteschlange gekoppelt ist, wobei die Auswertevorrichtung ermittelt, ob ein empfangener Frame an das Ethernet-Interfacemodul adressiert ist, und ermittelt, ob das Frame-Typ-Feld einen Frame-Typ beinhaltet;
wobei das Ethernet-Interfacemodul in einem ersten Modus betrieben werden kann, so dass jeder empfangene Frame zurück über den ersten Vollduplex-Port hinaus gesendet wird;
wobei das Ethernet-Interfacemodul in einem zweiten Modus betrieben werden kann, so dass jeder empfangene Frame, der vorbestimmte Auswertekriterien erfüllt, zurück über den ersten Vollduplex-Port hinaus gesendet wird, und solche empfangenen Frames, die nicht die vorbestimmten Auswertekriterien erfüllen, verworfen werden;
das Ethernet-Interfacemodul einen eindeutigen Kennzeichnungsschlüssel aufweist, der ihm zugeordnet ist;
wobei der empfangene Frame ein Sequenzkennzeichnungs-Feld und ein Sicherheits-Feld aufweist, wobei das Sequenzkennzeichnungs-Feld eine Sequenzkennzeichnung aufweist und das Sicherheits-Feld einen verschlüsselten Hash-Wert für erste Daten aufweist, die in einem der zugeordneten Datenfelder enthalten sind;
wobei der verschlüsselte Hash-Wert über die Sequenzkennzeichnung und die ersten Daten unter Verwendung des eindeutigen Kennzeichnungsschlüssels berechnet wird.

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Erfindung betrifft Ethernet-Netzwerke im Allgemeinen und Ethernet-Interfacemodule im Besonderen.
  • HINTERGRUND
  • Ethernet hat in einer Vielzahl von Produkten Anwendung gefunden. Ethernet erfordert jedoch einen erheblichen Teil von Hardware und Software, um selbst bei einem einfachen Gerät dies zu implementieren.
  • Ein übliches Ethernet-Gerät, selbst eins mit einer sehr einfachen Funktionalität, erfordert die folgenden Bauteile nur um Ethernet-Kommunikation bereitzustellen (zusätzlich zu der tatsächlichen Funktion des Geräts):
    1. 1. Ethernet-Bitzugriffsschicht (physical access layer, PHY) und entsprechende Magnetbauelemente, Stecker und andere Hardware.
    2. 2. Ethernet-Zugriffssteuerung (media access control, MAC) um Pakete in digitaler Form zwischen dem Gerät und der PHY zu kommunizieren.
    3. 3. Paketspeicher, um empfangene Pakete zu speichern, während sie ausgewertet und verarbeitet werden, und um ausgehende Pakete für die Übertragung zu speichern.
    4. 4. Ein Mikroprozessor und Software zum Auswerten einer Vielzahl von Protokollen, die über das Ethernet kommuniziert werden. Die Protokolle, die bei einer Implementierung ausgewertet werden, würden einige der Folgenden aufweisen, zusammen mit verschiedenen anderen Protokollen:
      • ARP (Address Resolution Protocol)
      • ICMP (Internet Control Message Protocol)
      • UDP (User Datagram Protocol)
      • TCP (Transmission Control Protocol)
      • DHCP (Dynamic Host Configuration Protocol)
      • BOOTP (Bootstrap Protocol)
    5. 5. Ethernet-Umschaltvorrichtung für jedes Gerät, welches entweder einen Port an einem allgemeinen Switch (Umschalter) für jedes Gerät oder Umschalt-Ressourcen auf dem individuellen Gerät aufweist. Die Ethernet-Umschaltvorrichtung erfordert zusätzlichen Speicher und Hardwarelogik-Ressourcen sowie zusätzliche Software/Protokoll-Anforderungen für die Switch-Verwaltung.
  • Die oben genannten Bauteile sind zusätzlich zu denen, die für die tatsächliche Funktion des Ethernet-Geräts benötigt werden.
  • Der erhebliche Teil von Hardware und Software, um ein Ethernet an einem einfachen Gerät zu implementieren, verhindert den Einsatz von Ethernet im Hinblick auf die Kosten für bestimmte Arten von Anwendungen.
  • Es ist daher sehr gewünscht, ein Ethernet-Interface oder -Knoten bereitzustellen, der weniger Bauteile benötigt, weniger komplex ist und geringere Kosten hat.
  • US 2014/0269306 A1 zeigt ein Ethernet-Interfacemodul mit einem ersten Port, einem zweiten Port und einem dritten Port. Die Vorrichtung weist ferner einen ersten deterministischen multi-threaded Mikrocontroller auf, der den Datenverkehr durch den ersten Port steuert, einen zweiten deterministischen multi-threaded Mikrocontroller, der den Datenverkehr durch den zweiten Port steuert, und einen dritten deterministischen multi-threaded Mikrocontroller, der den Datenverkehr durch den dritten Port steuert. Der erste Mikrocontroller, der zweite Mikrocontroller und der dritte Mikrocontroller arbeiten zusammen, um selektiv Datenpakete zwischen jedem der ersten, zweiten und dritten Ports zu übertragen.
  • ZUSAMMENFASSENDE DARSTELLUNG
  • Gemäß den Prinzipien der Erfindung wird ein Ethernet-Interface mit geringen Kosten bereitgestellt, das komplexer Funktionalität und Produktunterscheidung hin zu höherwertigen (higher-level) Geräten verlagert.
  • Ausgestaltungen des Ethernet-Interface verwenden PHY- und MAC-Blöcke, aber erfordern nicht Paketspeicher (packet memory), Software zum Auswerten von Protokollen (protocol evaluation software) und Umschalt-Ressourcen je Gerät (per-device switching resources).
  • Eine Ausgestaltung eines Ethernet-Interfacemoduls, das ausgestaltet ist, um ein Gerät mit einer Ethernet-Netzwerkanordnung zu verbinden, weist einen ersten Vollduplex-Port mit einer ersten PHY und einer ersten MAC und einen zweiten Vollduplex-Port mit einer zweiten PHY und einer zweiten MAC auf. Der erste Vollduplex-Port und der zweite Vollduplex-Port sind dafür ausgebildet, um Frames (Rahmen) zwischen einem Netzwerk und dem Gerät zu übertragen. Jeder Frame weist ein Zieladressfeld, ein Quelladressfeld und ein Befehlsfeld auf. Das Ethernet-Interfacemodul weist ferner einen ersten Pfad auf, der den ersten Vollduplex-Port und den zweiten Vollduplex-Port koppelt, einen zweiten Pfad, der den zweiten Vollduplex-Port und den ersten Vollduplex-Port koppelt, eine erste Warteschlange (queue), die in dem ersten Pfad angeordnet ist, eine zweite Warteschlange, die in dem zweiten Pfad angeordnet ist, und eine Auswertevorrichtung, die mit der ersten Warteschlange und der zweiten Warteschlange gekoppelt ist. Die Auswertevorrichtung ermittelt aus einer empfangenen Zieladresse, die in einem empfangenen Frame von dem ersten Vollduplex-Port oder dem zweiten Vollduplex-Port empfangen wurde, ob der empfangene Frame an das Gerät adressiert ist. Die Auswertevorrichtung weist Befehlskennzeichnungen auf, die variablen Befehlen zugeordnet sind, und die Auswertevorrichtung arbeitet, um variable Befehle zu identifizieren, die an das Gerät gerichtet sind, beim Empfangen einer Befehlskennzeichnung in dem Befehlsfeld, nachdem ermittelt wurde, dass der empfangene Frame von dem Gerät genutzt werden soll.
  • Die Auswertevorrichtung weist einen Speicher auf, bei dem es sich um einen Direktzugriffsspeicher (random access memory) handeln kann, um Befehlskennzeichnungen zu speichern.
  • Die Auswertevorrichtung ist dafür ausgebildet, zu bewirken, dass ein empfangener Frame (received frame) von dem ersten Vollduplex-Port oder dem zweiten Vollduplex-Port, an dem der empfangene Frame empfangen wird, an den anderen ersten Vollduplex-Port oder zweiten Vollduplex-Port weitergeleitet wird, falls die Adresse nicht dem Ethernet-Interfacemodul zugeordnet ist.
  • Das Ethernet-Interfacemodul hat eine oder mehrere Zieladressen, die ihm zugeordnet sind, und die Auswertevorrichtung ist dafür ausgebildet, zu bewirken, dass der empfangene Frame weitergeleitet wird an und übertragen wird von dem anderen von erstem Vollduplex-Port oder zweitem Vollduplex-Port, falls die empfangene Zieladresse nicht dem Ethernet-Interfacemodul zugeordnet ist.
  • Die erste Warteschlange ist dafür ausgebildet, eine erste vorbestimmte Anzahl von Bytes des empfangenen Frame zu speichern, der an dem ersten Vollduplex-Port empfangen wird, und die zweite Warteschlange ist dafür ausgebildet, eine zweite vorbestimmte Anzahl von Bytes des empfangenen Frame zu speichern, der an dem zweiten Vollduplex-Port empfangen wird.
  • Die erste Warteschlange und die zweite Warteschlange werden so betrieben, dass zusammen mit einem empfangenen Frame, der an dem ersten Vollduplex-Port oder dem zweiten Vollduplex-Port empfangen wird, der empfangene Frame die entsprechende erste Warteschlange oder zweite Warteschlange durchläuft und dem anderen Port von erstem Vollduplex-Port und zweitem Vollduplex-Port als ein gesendeter Frame bereitgestellt wird.
  • Die Auswertevorrichtung kann eine Unicast-Adresse für das Gerät und eine oder mehrere Multicast-Adressen aufweisen, die das Gerät unterstützt.
  • Das Ethernet-Interfacemodul weist ferner eine Lese-/Schreib-Vorrichtung auf. Die Lese-/Schreib-Vorrichtung wird betrieben, so dass falls die Auswertevorrichtung ermittelt, dass das Zieladressfeld des empfangenen Frame eine Unicast-Adresse enthält, die Lese-/Schreib-Vorrichtung eine vorbestimmte Adresse der einen oder mehreren Multicast-Adressen in das Zielfeld einfügt anstelle der Zieladresse in dem gesendeten Frame.
  • Die Auswertevorrichtung ist ferner dafür ausgebildet, zu bewirken, dass der empfangene Frame, der von dem im ersten Vollduplex-Port oder dem zweiten Vollduplex-Port, bei dem der empfangene Frame empfangen wird, an den anderen Port von erstem Vollduplex-Port oder zweitem Vollduplex-Port weiterzuleiten, falls die Adresse nicht dem Ethernet-Interfacemodul zugeordnet ist.
  • Das Ethernet-Interfacemodul kann einen vorbestimmten Ethertyp aufweisen, der ihm zugeordnet ist, und die Auswertevorrichtung ist dafür ausgebildet zu ermitteln, ob der empfangene Ethertyp in dem Ethertyp-Feld des empfangenen Frames zu dem vorbestimmten Ethertyp passt.
  • Die Auswertevorrichtung ermittelt, nachdem ermittelt wurde, dass der empfangene Ethertyp zu dem vorbestimmten Ethertyp passt, ob das Frame-Befehlsfeld einen empfangenen Befehl aufweist, der für das Gerät bestimmt ist.
  • Das Ethernet-Interfacemodul weist ferner ein Gerät-Interface auf, das mit dem Gerät und einem Datenspeicher gekoppelt ist. Der Datenspeicher und die Auswertevorrichtung arbeiten zusammen, als Antwort auf einen empfangenen Befehl, der für das Gerät bestimmt sind, um empfangene Daten aus dem empfangenen Frame zu extrahieren, sowie der empfangene Frame sich durch die erste oder zweite Warteschlange bewegt, oder um Sendedaten in den empfangenen Frame einzufügen, anstelle der empfangenen Daten.
  • Die Auswertevorrichtung ist dafür ausgebildet zu bewirken, dass der empfangene Frame weitergeleitet wird an und übertragen wird von dem anderen Port von erstem Vollduplex-Port oder zweitem Vollduplex-Port, falls die Zieladresse nicht dem Ethernet-Interfacemodul zugeordnet ist.
  • Die Auswertevorrichtung ermittelt, nachdem ermittelt wurde, dass der empfangene Ethertyp mit dem Gerät-Ethertyp korrespondiert, ob das Befehlsfeld einen empfangenen Befehl enthält, der für das Gerät bestimmt ist. Wenn das Befehlsfeld einen empfangenen Befehl enthält, der für das Gerät bestimmt ist, werden die Ethernet-Interfacemodul-Daten, die bezüglich des empfangenen Befehls involviert sind, aus dem empfangenen Frame extrahiert oder in den gesendeten Frame eingefügt. Das gesendete Paket wird von dem Ethernet-Interfacemodul auf derselben Länge gehalten, wie das empfangene Paket.
  • Falls die Auswertevorrichtung ermittelt, dass der empfangene Befehl nicht für das Gerät bestimmt ist, wird der empfangene Frame von dem Ethernet-Interfacemodul als der gesendete Frame übertragen.
  • Das Ethernet-Interfacemodul weist ein Interface an das Gerät auf, eine Speichervorrichtung zum Speichern von Daten, die zwischen dem Gerät und der ersten Warteschlange und der zweiten Warteschlange ausgetauscht werden, und eine Lese-/Schreib-Vorrichtung. Die Lese-/Schreib-Vorrichtung ist dafür ausgebildet, Daten aus dem empfangenen Frame zu extrahieren oder Daten in den empfangenen Frame einzufügen, sowie der empfangene Frame das Ethernet-Interfacemodul durchläuft.
  • Die Auswertevorrichtung macht eine Ermittlung einer Aktion, die für einen empfangenen Frame auftreten soll. Die Ermittlung der Aktion basiert auf einer oder mehreren Zieladressen in dem Zieladressfeld des empfangenen Frame, einem Ethertyp in dem Ethertyp-Feld des empfangenen Frame und einer Befehlskennzeichnung in dem Befehlsfeld des empfangenen Frame.
  • Das Ethernet-Interfacemodul, das ausgebildet ist, um ein Gerät an eine Ethernet-Netzwerkanordnung zu koppeln, weist auf: einen ersten Vollduplex-Port mit einer ersten PHY und einer ersten MAC und einen zweiten Vollduplex-Port mit einer zweiten PHY und einer zweiten MAC. Der erste Vollduplex-Port und der zweite Vollduplex-Port sind jeweils dafür ausgebildet, Frames von Paketdaten zwischen einem Netzwerk und einem Gerät zu übertragen. Jeder Frame weist ein Zieladressfeld, ein Quelladressfeld und ein Befehlsfeld auf. Das Ethernet-Interfacemodul weist einen ersten Pfad auf, der den ersten Vollduplex-Port und den zweiten Vollduplex-Port koppelt, einen zweiten Pfad, der den zweiten Vollduplex-Port und den ersten Vollduplex-Port koppelt, eine erste Warteschlange, die in dem ersten Pfad angeordnet ist und ausgewählt ist, um eine vorbestimmte Anzahl von Bytes eines Frame zu speichern, eine zweite Warteschlange, die in dem zweiten Pfad angeordnet ist und ausgewählt ist, um die vorbestimmte Anzahl an Bytes eines Frames zu speichern, und eine Auswertevorrichtung, die mit der ersten Warteschlange und der zweiten Warteschlange gekoppelt ist, wobei die Auswertevorrichtung dafür ausgebildet ist zu ermitteln, ob der empfangene Frame an das Gerät gerichtet ist basierend auf einer empfangenen Zieladresse wie sie in einem empfangenen Frame von dem ersten Vollduplex-Port oder dem zweiten Vollduplex-Port empfangen wird. Die erste Warteschlange ist dafür ausgebildet, jeden empfangenen Frame (received frame), der an dem ersten Vollduplex-Port empfangen wird an den zweiten Vollduplex-Port zu übertragen, um einen gesendeten Frame (transmitted frame) bereitzustellen, der um eine vorbestimmte feste Verzögerungszeit verzögert ist. Die zweite Warteschlange ist dafür ausgebildet, jeden empfangenen Frame, der an dem zweiten Vollduplex-Port empfangen wird, an den zweiten Vollduplex-Port zu übertragen, um einen gesendeten Frame bereitzustellen, der um eine vorbestimmte feste Verzögerungszeit verzögert ist. Die Auswertevorrichtung weist Befehlskennzeichnungen auf, die den variablen Befehlen zugeordnet sind. Die Auswertevorrichtung ist ausgebildet, um variable Befehle zu identifizieren, die für das Gerät bestimmt sind, beim Empfangen einer Befehlskennzeichnung in dem Befehlsfeld, nachdem ermittelt wurde, dass der empfangene Frame mit dem Gerät genutzt werden soll.
  • Die vorbestimmte feste Verzögerungszeit kann durch die vorbestimmte Anzahl von Bytes bestimmt sein.
  • Das Ethernet-Interfacemodul weist eine Lese-/Schreib-Vorrichtung auf. Die Lese-/SchreibVorrichtung ist dafür ausgebildet, erste vorbestimmte Paketdaten in dem empfangenen Frame, der an dem ersten Vollduplex-Port oder dem zweiten Vollduplex-Port empfangen wird, durch zweite vorbestimmte Paketdaten zu ersetzen, sowie der empfangene Frame an deren anderen Port von erstem Vollduplex-Port und zweitem Vollduplex-Port bereitgestellt wird.
  • Das Ethernet-Interfacemodul kann auch ein Interface aufweisen, das mit dem Gerät gekoppelt ist, und die Lese-/Schreib-Vorrichtung ist mit der ersten Warteschlange und der zweiten Warteschlange und dem Interface gekoppelt. Die Lese-/Schreib-Vorrichtung ist dafür ausgebildet, empfangene Framedaten aus der ersten Warteschlange oder der zweiten Warteschlange zu extrahieren und die extrahierten empfangenen Framedaten mit Daten aus dem Gerät zu ersetzen.
  • Das Ethernet-Interfacemodul kann ferner einen Datenspeicher aufweisen. Der Datenspeicher, die Auswertevorrichtung und die Lese-/Schreib-Vorrichtung arbeiten zusammen, als Antwort auf den empfangenen Befehl, der für das Gerät bestimmt ist, um die empfangenen Framedaten aus dem empfangenen Frame zu extrahieren, sowie der empfangene Frame entsprechend die erste oder die zweite Warteschlange durchläuft, und übertragene Daten in den empfangenen Frame anstelle der empfangenen Daten einzufügen.
  • Das Ethernet-Interfacemodul, das dafür ausgebildet ist, ein Gerät mit einer Ethernet-Netzwerkanordnung zu koppeln, weist auf: einen ersten Vollduplex-Port mit einer ersten PHY und einer ersten MAC, einen zweiten Vollduplex-Port mit einer zweiten PHY und einen zweiten MAC, einen ersten Pfad, der den ersten Vollduplex-Port und den zweiten Vollduplex-Port koppelt, einen zweiten Pfad, der den zweiten Vollduplex-Port und den ersten Vollduplex-Port koppelt, eine erste Warteschlange, die in dem ersten Pfad angeordnet ist, und eine zweite Warteschlange, die in dem zweiten Pfad angeordnet ist. Der erste Vollduplex-Port und der zweite Vollduplex-Port sind jeweils dafür ausgebildet, Frames zwischen einem Netzwerk und einem Gerät zu übertragen. Jeder der Frame weist ein Zieladressfeld und ein Befehlsfeld auf. Das Ethernet-Interfacemodul weist ferner eine Auswertevorrichtung auf, die mit der ersten Warteschlange und der zweiten Warteschlange gekoppelt ist, die Auswertevorrichtung zum Ermitteln aus einer empfangenen Zieladresse, wie sie in einem empfangenen Frame von dem ersten Vollduplex-Port oder dem zweiten Vollduplex-Port empfangen wurde, ob der empfangene Frame an das Gerät adressiert ist. Die Auswertevorrichtung weist Befehlskennzeichnungen auf, die variablen Befehlen zugeordnet sind und ist ausgebildet, um variable Befehle zu identifizieren, die für das Gerät bestimmt sind, beim Empfangen einer Befehlskennzeichnung in dem Befehlsfeld, nachdem ermittelt wurde, dass der empfangene Frame mit dem Gerät genutzt werden soll.
  • Ein Ethernet-Interfacemodul, das dafür ausgebildet ist, ein Gerät an eine Ethernet-Netzwerkanordnung zu koppeln, weist auf: einen ersten Vollduplex-Port mit einer ersten PHY und einer ersten MAC und einen zweiten Vollduplex-Port mit einer zweiten PHY und einen zweiten MAC. Der erste Vollduplex-Port weist einen ersten Empfangsabschnitt (receive portion) und einer ersten Sendeabschnitt (transmit portion) auf. Der zweite Vollduplex-Port weist einen zweiten Empfangsabschnitt und einen zweiten Sendeabschnitt auf. Der erste Vollduplex-Port und der zweite Vollduplex-Port sind jeweils dafür ausgebildet, Paket-Frames zwischen einem Netzwerk und dem Gerät zu übertragen. Jeder Frame weist ein Zieladressfeld und ein Befehlsfeld auf. Das Ethernet-Interfacemodul weist ferner einen ersten Pfad auf, der den ersten Vollduplex-Port und den zweiten Vollduplex-Port koppelt, einen zweiten Pfad, der den zweiten Vollduplex-Port und den ersten Vollduplex-Port koppelt, eine erste Warteschlange, die in dem ersten Pfad angeordnet ist, eine zweite Warteschlange, die in dem zweiten Pfad angeordnet ist, einen dritten Pfad, der den ersten Empfangsabschnitt und den ersten Sendeabschnitt koppelt und zumindest einen Abschnitt der ersten Warteschlange aufweist, einen vierten Pfad, der den zweiten Empfangsabschnitt und den zweiten Sendeabschnitt koppelt und zumindest einen Abschnitt der zweiten Warteschlange aufweist, und eine Auswertevorrichtung, die mit der ersten Warteschlange und der zweiten Warteschlange gekoppelt ist. Die Auswertevorrichtung ist dafür ausgebildet zu ermitteln, ob der empfangene Frame an das Gerät adressiert ist, und zwar aus einer empfangenen Zieladresse, wie sie in einem empfangenen Frame von dem ersten Vollduplex-Port oder dem zweiten Vollduplex-Port empfangen wird. Die Auswertevorrichtung weist Befehlskennzeichnungen auf, die variablen Befehlen zugeordnet sind und ist ausgebildet, um variable Befehle zu identifizieren, die für das Gerät bestimmt sind, beim Empfangen einer Befehlskennzeichnung in dem Befehlsfeld, nachdem ermittelt wurde, dass der empfangene Frame mit dem Gerät genutzt werden soll. Das Ethernet-Interfacemodul kann in einem ersten Modus als ein Ethernet-Feldknoten (Ethernet field node) und in einem zweiten Modus als ein Ethernet-Endknoten (Ethernet end node) betrieben werden. Wenn sich das Ethernet-Interfacemodul in dem ersten Modus befindet, ist es dafür ausgebildet, einen empfangenen Frame an dem ersten Vollduplex-Port oder dem zweiten Vollduplex-Port zu empfangen und den empfangenen Frame an den anderen Port von erstem Vollduplex-Port und zweitem Vollduplex-Port zu übertragen, und wenn sich das Ethernet-Interfacemodul in dem zweiten Modus befindet, ist es dafür ausgebildet, einen empfangenen Frame an dem ersten Vollduplex-Port oder dem zweiten Vollduplex-Port zu empfangen und den empfangenen Frame an demselben Port von erstem Vollduplex-Port und zweitem Vollduplex-Port zu senden.
  • Die Auswertevorrichtung kann Speicher zum Speichern der Befehlskennzeichnungen aufweisen. Der Speicher kann ein Direktzugriffsspeicher sein.
  • Die Auswertevorrichtung ist dafür ausgebildet, in dem ersten Modus zu bewirken, dass der empfangene Frame von dem ersten Vollduplex-Port oder dem zweiten Vollduplex-Port, an dem der empfangene Frame empfangen wird, an den anderen Port von erstem Vollduplex-Port oder zweitem Vollduplex-Port weiterzuleiten, falls eine empfangene Zieladresse, die in dem empfangenen Frame enthalten ist, nicht dem Ethernet-Interfacemodul zugeordnet ist.
  • Das Gerät kann eine oder mehrere Zieladressen aufweisen, die ihm zugeordnet sind.
  • Die Auswertevorrichtung ist dafür ausgebildet, in einem ersten Modus zu bewirken, dass der empfangene Frame weitergeleitet wird an und übertragen wird von dem anderen Port von erstem Vollduplex-Port oder zweitem Vollduplex-Port, falls die empfangene Zieladresse dem Ethernet-Interfacemodul nicht zugeordnet ist.
  • Die erste Warteschlange ist dafür ausgebildet, eine erste vorbestimmte Anzahl von Bytes des empfangenen Frames zu speichern, der an dem ersten Vollduplex-Port empfangen wird, und die zweite Warteschlange ist dafür ausgebildet, eine zweite vorbestimmte Anzahl von Bytes des empfangenen Frames zu speichern, der an dem zweiten Vollduplex-Port empfangen wird.
  • Die erste Warteschlange und die zweite Warteschlange werden in dem ersten Modus betrieben, so dass zusammen mit einem empfangenen Frame, der an dem ersten Vollduplex-Port oder dem zweiten Vollduplex-Port empfangen wird, der empfangene Frame entsprechend die erste Warteschlange oder die zweite Warteschlange durchläuft und dem anderen Port von erstem Vollduplex-Port und zweitem Vollduplex-Port als ein gesendeter Frame bereitgestellt wird.
  • Die Auswertevorrichtung kann eine Unicast-Adresse für das Gerät und eine oder mehrere Multicast-Adressen aufweisen, die das Gerät unterstützt.
  • Das Ethernet-Interfacemodul weist ferner eine Lese-/Schreib-Vorrichtung auf, die dafür ausgebildet ist, dass, falls die Auswertevorrichtung ermittelt, dass das Zieladressfeld des empfangenen Frame die Unicast-Adresse enthält, die Lese-/Schreib-Vorrichtung eine vorbestimmte der einen oder mehreren Multicast-Adressen in das Zielfeld anstelle der Zieladresse in den gesendeten Frame einfügt.
  • Die Auswertevorrichtung ist dafür ausgebildet, in dem ersten Modus zu bewirken, dass der empfangene Frame, der von dem ersten Vollduplex-Port oder dem zweiten Vollduplex-Port, an dem der empfangene Frame empfangen wird, an den anderen Port von erstem Vollduplex-Port oder zweitem Vollduplex-Port weitergeleitet wird, falls die Adresse nicht dem Ethernet-Interfacemodul zugeordnet ist.
  • Das Ethernet-Interfacemodul weist einen vorbestimmten Ethertyp auf, der ihm zugeordnet ist, und die Auswertevorrichtung ist dafür ausgebildet zu ermitteln, ob der empfangene Ethertyp in dem Ethertyp-Feld des empfangenen Frame zu dem vorbestimmten Ethertyp passt. Nachdem ermittelt wurde, dass der empfangene Ethertyp zu dem vorbestimmten Ethertyp passt, ermittelt die Auswertevorrichtung, ob das Frame-Befehlsfeld des Frame einen empfangenen Befehl enthält, der für das Gerät bestimmt ist.
  • Das Ethernet-Interfacemodul kann ferner ein Gerät-Interface aufweisen, das mit dem Gerät gekoppelt ist, und einen Datenspeicher. Der Datenspeicher und die Auswertevorrichtung arbeiten gemeinsam zusammen, als Antwort darauf, dass der empfangene Befehl für das Gerät bestimmt ist, um empfangene Daten aus dem empfangenen Frame zu extrahieren, sowie der empfangene Frame das Ethernet-Interfacemodul durchläuft, oder Sendedaten in den gesendeten Frame anstelle der empfangenen Daten einzufügen. Das gesendete Paket wird von dem Ethernet-Interfacemodul auf derselben Länge gehalten wie das empfangene Paket.
  • Falls die Auswertevorrichtung ermittelt, dass der empfangene Befehl nicht für das Gerät bestimmt ist, wird der empfangene Frame von dem Ethernet-Interfacemodul als der gesendete Frame übertragen.
  • Das Ethernet-Interfacemodul kann ein Interface an das Gerät aufweisen, eine Speichervorrichtung zum Speichern von Daten, die zwischen dem Gerät und der ersten Warteschlange und der zweiten Warteschlange ausgetauscht werden, und eine Lese-/Schreib-Vorrichtung. Die Lese-/Schreib-Vorrichtung ist dafür ausgebildet, Daten aus dem empfangenen Frame zu extrahieren oder Daten in den empfangenen Frame einzufügen, sowie der empfangene Frame das Ethernet-Interfacemodul durchläuft.
  • Das Ethernet-Interfacemodul, das dafür ausgebildet ist, ein Gerät an eine Ethernet-Netzwerkanordnung zu koppeln, weist auf: einen ersten Vollduplex-Port mit einer ersten PHY und einer ersten MAC, einen zweiten Vollduplex-Port mit einer zweiten PHY und einer zweiten MAC, einen ersten Pfad, der den ersten Vollduplex-Port und den zweiten Vollduplex-Port koppelt, einen zweiten Pfad, der den zweiten Vollduplex-Port und den ersten Vollduplex-Port koppelt, eine erste Warteschlange, die in dem ersten Pfad angeordnet ist und ausgewählt ist, um eine vorbestimmte Anzahl an Bytes eines Frames zu speichern, eine zweite Warteschlange, die in dem zweiten Pfad angeordnet ist und ausgewählt ist, um die vorbestimmte Anzahl an Bytes eines Frames zu speichern, und eine Auswertevorrichtung, die mit der ersten Warteschlange und der zweiten Warteschlange gekoppelt ist. Der erste Vollduplex-Port und der zweite Vollduplex-Port sind jeweils dafür ausgebildet, Frames von Paketdaten zwischen einem Netzwerk und einem Gerät zu übertragen. Jeder Frame weist ein Zieladressfeld, ein Quelladressfeld und ein Befehlsfeld auf. Die Auswertevorrichtung ist dafür ausgebildet zu ermitteln, ob der empfangene Frame an das Gerät adressiert ist, und zwar aus einer empfangenen Zieladresse, wie sie in einem empfangenen Frame von dem ersten Vollduplex-Port oder dem zweiten Vollduplex-Port empfangen wird. Die erste Warteschlange ist dafür ausgebildet, jeden empfangenen Frame, der an dem ersten Vollduplex-Port empfangen wird, an den zweiten Vollduplex-Port zu übertragen, um einen gesendeten Frame bereitzustellen, der um eine vorbestimmte feste Verzögerungszeit verzögert ist. Die zweite Warteschlange ist dafür ausgebildet, jeden empfangenen Frame, der von dem zweiten Vollduplex-Port empfangen wird, an den ersten Vollduplex-Port zu übertragen, um einen übertragenen bereitzustellen, der um die vorbestimmte feste Verzögerungszeit verzögert ist. Die Auswertevorrichtung weist Befehlskennzeichnungen auf, die variablen Befehlen zugeordnet sind, und ist dafür ausgebildet variable Befehle zu identifizieren, die für das Gerät bestimmt sind, beim Empfangen einer Befehlskennzeichnung in dem Befehlsfeld, nachdem ermittelt wurde, dass der empfangene Frame mit dem Gerät genutzt werden soll. Das Ethernet-Interfacemodul ist dafür ausgebildet, in einem ersten Modus als ein Ethernet-Feldknoten zu arbeiten und in einem zweiten Modus als ein Ethernet-Endknoten. Das Ethernet-Interfacemodul ist ausgebildet, wenn es in dem ersten Modus ist, einen empfangenen Frame an dem ersten Vollduplex-Port oder dem zweiten Vollduplex-Port zu empfangen und den empfangenen Frame an den anderen Port von erstem Vollduplex-Port und zweitem Vollduplex-Port zu senden. Das Ethernet-Interfacemodul ist dafür ausgebildet, wenn es in dem zweiten Modus ist, einen empfangenen Frame an dem ersten Vollduplex-Port oder dem zweiten Vollduplex-Port zu empfangen und den empfangenen Frame an dem gleichen Port von erstem Vollduplex-Port und zweitem Vollduplex-Port, an dem der empfangene Frame empfangen wird, zu senden.
  • Ein Ethernet-Interfacemodul ist dabei ausgebildet, ein Gerät mit einer Ethernet-Netzwerkanordnung zu verbinden, und weist auf: einen ersten Vollduplex-Port mit einer ersten PHY und einer ersten MAC, wobei der erste Vollduplex-Port einen Empfangsabschnitt und einen Sendeabschnitt aufweist und dafür ausgebildet ist, Paket-Frames zwischen einem Netzwerk und einem Gerät zu übertragen. Jeder Frame weist ein Zieladressfeld und ein Befehlsfeld auf. Das Ethernet-Interfacemodul weist ferner einen ersten Pfad auf, der den Empfangsabschnitt des ersten Vollduplex-Ports mit dem Sendeabschnitt des ersten Vollduplex-Ports verbindet, eine Warteschlange, die in dem ersten Pfad angeordnet ist, und eine Auswertevorrichtung, die mit der Warteschlange gekoppelt ist, wobei die Auswertevorrichtung dafür ausgebildet ist zu ermitteln, ob der empfangene Frame an das Gerät adressiert ist, und zwar aus einer empfangenen Zieladresse, wie sie in einem empfangenen Frame von dem Empfangsabschnitt empfangen wird. Die Auswertevorrichtung weist Befehlskennzeichnungen auf, die variablen Befehlen zugeordnet sind, und ist dafür ausgebildet variable Befehle zu identifizieren, die für das Gerät bestimmt sind, beim Empfangen einer Befehlskennzeichnung in dem Befehlsfeld, nachdem ermittelt wurde, dass der empfangene Frame mit dem Gerät genutzt werden soll.
  • Das Ethernet-Interfacemodul weist einen ersten Speicher auf, der die Befehlskennzeichnungen speichert. Der erste Speicher weist einen Direktzugriffsspeicher auf.
  • Die Auswertevorrichtung ist dafür ausgebildet zu bewirken, dass der empfangene Frame von dem Empfangsabschnitt an den Sendeabschnitt weitergeleitet wird. Der empfangene Frame wird von dem Empfangsabschnitt an den Sendeabschnitt ohne Änderung weitergeleitet, wenn der empfangene Frame nicht dem Ethernet-Interfacemodul zugeordnet ist.
  • Die Warteschlange ist dafür ausgebildet, eine erste vorbestimmte Anzahl an Bytes des empfangenen Frame zu speichern. Die Warteschlange ist dafür ausgebildet, dass zusammen mit einem empfangenen Frame, der von dem Empfangsabschnitt empfangen wird, der empfangene Frame die Warteschlange durchläuft und dem Sendeabschnitt als gesendeter Frame bereitgestellt wird.
  • Die Auswertevorrichtung weist eine Unicast-Adresse für das Gerät und eine oder mehrere Multicast-Adressen auf, die von dem Gerät unterstützt werden. Das Ethernet-Interfacemodul weist ferner eine Lese-/Schreib-Vorrichtung auf, die dafür ausgebildet ist, dass wenn die Auswertevorrichtung ermittelt, dass das Zieladressfeld des empfangenen Frame die Unicast-Adresse enthält, die Lese-/Schreib-Vorrichtung eine vorbestimmte der einen oder mehreren Multicast-Adressen in das Zielfeld des gesendeten Frame anstelle der Zieladresse in dem empfangenen Frame einfügt. Die Auswertevorrichtung ist dafür ausgebildet zu bewirken, dass der empfangene Frame von dem Empfangsabschnitt an den Sendeabschnitt weitergeleitet wird, falls die Zieladresse nicht dem Ethernet-Interfacemodul zugeordnet ist. Das Ethernet-Interfacemodul weist einen vorbestimmten Ethertyp auf, der ihm zugeordnet ist, und ist dafür ausgebildet zu ermitteln, ob der empfangene Ethertyp in dem Ethertyp-Feld des empfangenen Frames zu dem vorbestimmten Ethertyp passt. Die Auswertevorrichtung ist dafür ausgebildet zu ermitteln, nachdem ermittelt wurde, dass der empfangene Ethertyp zu dem vorbestimmten Ethertyp passt, ob das Befehlsfeld des Frame einen empfangenen Befehl enthält, der für das Gerät bestimmt sind.
  • Die Auswertevorrichtung ist dafür ausgebildet zu ermitteln, nachdem ermittelt wurde, dass der empfangene Ethertyp mit dem Gerät-Ethertyp korrespondiert, ob das Befehlsfeld einen empfangenen Befehl aufweist, der für das Gerät bestimmt ist. Falls das Befehlsfeld einen empfangenen Befehl enthält, der für das Gerät bestimmt ist, werden Ethernet-Interfacemodul-Daten aus dem empfangenen Frame extrahiert oder in den gesendeten Frame eingefügt. Falls die Auswertevorrichtung ermittelt, dass der empfangene Befehl nicht für das Gerät bestimmt ist, wird der empfangene Frame als der gesendete Frame übertragen. Falls die Auswertevorrichtung ermittelt, dass der empfangene Ethertyp nicht mit dem Gerät-Ethertyp korrespondiert, wird der empfangene Frame von dem Ethernet-Interfacemodul als der gesendete Frame übertragen.
  • Das Ethernet-Interfacemodul kann ferner aufweisen: ein Gerät-Interface, das mit dem Gerät und einem Datenspeicher gekoppelt ist. Der Datenspeicher und die Auswertevorrichtung arbeiten gemeinsam zusammen, als Antwort dass der empfangene Befehl für das Gerät bestimmt ist, um empfangene Daten aus dem empfangenen Frame zu extrahieren, sowie der empfangene Frame die Warteschlange durchläuft, oder Sendedaten in den empfangenen Frame anstelle der empfangenen Daten einzufügen. Das übertragene Paket wird von dem Ethernet-Interfacemodul auf derselben Länge gehalten wie das empfangene Paket.
  • Das Ethernet-Interfacemodul kann ferner aufweisen: ein Interface an das Gerät, eine Speichervorrichtung zum Speichern von Daten, die zwischen dem Gerät und der ersten Warteschlange und der zweiten Warteschlange ausgetauscht werden, und eine Lese-/Schreib-Vorrichtung. Die Lese-/Schreib-Vorrichtung ist dafür ausgebildet, Daten aus dem empfangenen Frame zu extrahieren oder Daten in den empfangenen Frame einzufügen, sowie der empfangene Frame die Warteschlange durchläuft.
  • Die Auswertevorrichtung macht eine Ermittlung einer Aktion, die für einen empfangenen Frame auftreten soll. Die Ermittlung der Aktion basiert auf einer oder mehreren Zieladressen in dem Zieladressfeld des empfangenen Frames, einem Ethertyp in dem Ethertyp-Feld des empfangenen Frame und einer Befehlskennzeichnung in dem Befehlsfeld des empfangenen Frames.
  • Die Warteschlange ist dafür ausgebildet, jeden empfangenen Frame von dem Empfangsabschnitt an den Sendeabschnitt zu übertragen, um einen gesendeten Frame bereitzustellen, der um eine vorbestimmte feste Verzögerungszeit verzögert ist. Die Warteschlange ist ausgewählt, um eine vorbestimmte Anzahl an Bytes eines empfangenen Frame zu speichern. Die Warteschlange ist dafür ausgebildet, jeden empfangenen Frame von dem Empfangsabschnitt an den Sendeabschnitt zu übertragen, um einen gesendeten Frame bereitzustellen, der um eine vorbestimmte feste Verzögerungszeit verzögert ist. Die vorbestimmte feste Verzögerungszeit wird durch die vorbestimmte Anzahl an Bytes bestimmt.
  • Ein Ethernet-Interfacemodul, das ausgebildet ist, um ein Gerät mit einem Ethernet-Netzwerk zu koppeln, weist auf: einen ersten Vollduplex-Port mit einem Empfangsabschnitt und einem Sendeabschnitt und dafür ausgebildet, Frames zwischen dem Ethernet-Network und dem Gerät auszutauschen, einen zweiten Vollduplex-Port, der einen zweiten Empfangsabschnitt und einen zweiten Sendeabschnitt aufweist, und ausgebildet ist, um Frames zwischen dem Netzwerk und dem Gerät auszutauschen, einen ersten Pfad, der den ersten Vollduplex-Port und den zweiten Vollduplex-Port koppelt, einen zweiten Pfad, der den zweiten Vollduplex-Port und den ersten Vollduplex-Port koppelt, eine erste Warteschlange, die in dem ersten Pfad angeordnet ist, eine zweite Warteschlange, die in dem zweiten Pfad angeordnet ist, einen dritten Pfad, der den ersten Empfangsabschnitt und den ersten Sendeabschnitt koppelt, wobei der dritte Pfad zumindest einen Abschnitt der ersten Warteschlange aufweist, einen vierten Pfad, der den zweiten Empfangsabschnitt und den zweiten Sendeabschnitt koppelt, wobei der vierte Pfad zumindest einen Abschnitt der zweiten Warteschlange aufweist, eine Auswertevorrichtung, die mit der ersten Warteschlange und der zweiten Warteschlange gekoppelt ist. Die Auswertevorrichtung ist dafür ausgebildet aus einer empfangenen Zieladresse in einem empfangenen Frame von dem ersten Vollduplex-Port oder dem zweiten Vollduplex-Port zu ermitteln, ob der empfangene Frame an das Gerät gerichtet ist. Jeder empfangene Frame weist ein Quelladressfeld mit einer Quelladresse auf, ein Zieladressfeld mit einer Zieladresse, ein Frame-Typ-Feld, um einen Frame-Typ zu identifizieren, und ein Befehlsfeld, das verwendet wird, um einen Befehl an das Gerät zu geben. Die Auswertevorrichtung ermittelt, ob ein empfangener Frame an das Gerät adressiert ist und ermittelt, ob das Frame-Typ-Feld einen Frame-Typ enthält.
  • Jeder Frame-Typ wird verwendet, um zu identifizieren, ob oder nicht der Frame vorbestimmte Felder enthält. Die vorbestimmten Felder weisen eine oder mehrere Sequenzkennzeichnungsfelder und Rückgabeadressenfelder auf. Jeder Frame-Typ, der in dem Frame-Typ-Feld enthalten ist, weist ein erstes vorbestimmtes Bit auf, das auf einen ersten Zustand gesetzt ist, und jeder Befehl, der in dem Befehlsfeld enthalten ist, weist ein erstes vorbestimmtes Bit auf, das auf einen zweiten Zustand gesetzt ist, wobei der erste Zustand und der zweite Zustand unterschiedlich gewählt werden, um das Frame-Typ-Feld und das Befehlsfeld voneinander zu unterscheiden.
  • Jedes Ethernet-Interfacemodul weist eine Zieladresse auf, die das Ethernet-Interfacemodul identifiziert. Jeder empfangene Frame weist ein Zieladressfeld mit einer Zieladresse auf und ein Quelladressfeld mit einer Quelladresse, die die Quelle des Frame kennzeichnet. Das Ethernet-Interfacemodul ist dafür ausgebildet, mit dem Gerät Felder des empfangenen Frame zu modifizieren und nicht die Quelladresse zu ändern, um einen Rückgabe-Frame zu erzeugen.
  • Das Ethernet-Interfacemodul ist dafür ausgebildet, mit dem Gerät Felder des empfangenen Frame zu modifizieren, um einen modifizierten Rückgabe-Frame zu erzeugen, die Adresse des Moduls in das Quelladressfeld des Rückgabe-Frame einzufügen und die Rückgabeadresse zu verwenden, um das Ziel des Rückgabe-Frame zu kennzeichnen.
  • Das Ethernet-Interfacemodul kann eine Zieladresse aufweisen, die das Ethernet-Interfacemodul kennzeichnet, und eine Rückgabeadresse. Jeder empfangene Frame weist ein Zieladressfeld mit einer Zieladresse und ein Rückgabeadressenfeld mit einer Quelladresse auf, die die Quelle des Frame angibt. Das Ethernet-Interfacemodul ist dafür ausgebildet, mit dem Gerät Felder des empfangenen Frame zu modifizieren, um einen modifizierten Rückgabe-Frame zu erzeugen, die Adresse des Moduls in das Quelladressfeld des Rückgabe-Frame einzufügen und die Rückgabeadresse zu verwenden, um das Ziel des Rückgabe-Frame zu kennzeichnen. Die Rückgabeadresse wird in ein Zieladressfeld des Rückgabe-Frame eingefügt.
  • Jeder empfangene Frame weist ein Sequenzkennzeichnungsfeld auf, das eine Sequenzkennzeichnung enthält. Die Sequenzkennzeichnungen für eine Reihe von empfangenen Frames haben eine vorbestimmte Beziehung zueinander. Das Ethernet-Interfacemodul verwendet die Sequenzkennzeichnungen um zu ermitteln, ob oder nicht ein empfangener Frame eine vorbestimmte Beziehung zu dem vorher empfangenen Frame hat. Das Ethernet-Interfacemodul führt eine vorbestimmte Operation mit dem empfangenen Frame aus, wenn ermittelt wird, dass die Sequenzkennzeichnung des empfangenen Frame keine vorbestimmte Beziehung hat. Die vorbestimmte Operation kann ein Zurückweisen des empfangenen Frame aufweisen. Die vorbestimmte Operation kann ein Bereitstellen eines Hinweises an die Quelle des empfangenen Frame beinhalten, dass der empfangene Frame zurückgewiesen wurde.
  • Das Ethernet-Netzwerk weist einen Master auf, der den empfangenen Frame erzeugt, und das Befehlsfeld hat eine oder mehrere zugeordnete Datenfelder, die zugeordnete Befehlsdaten aufweisen. Das Ethernet-Interfacemodul weist einen einzigartigen Kennzeichnungsschlüssel (unique identification key) auf, der ihm zugeordnet ist, und dem Master wird der eindeutige Kennzeichnungsschlüssel bereitgestellt.
  • Der empfangene Frame weist ein Sequenzkennzeichnungsfeld und ein Sicherheitsfeld auf, wobei das Sequenzkennzeichnungsfeld eine Sequenzkennzeichnung aufweist und das Sicherheitsfeld einen verschlüsselten Hash-Wert für erste Daten aufweist, die in einem der verbundenen Datenfelder enthalten sind. Der verschlüsselte Hash-Wert wird über die Sequenzkennzeichnung und die ersten Daten von dem Master unter Verwendung des eindeutigen Kennzeichnungsschlüssels berechnet.
  • Der empfangene Frame kann ein zweites Sequenzkennzeichnungsfeld und ein zweites Sicherheitsfeld aufweisen. Das zweite Sequenzkennzeichnungsfeld weist eine zweite Sequenzkennzeichnung auf. Das zweite Sicherheitsfeld weist einen zweiten verschlüsselten Hash-Wert für zweite Daten auf, die in einem zweiten Feld der verbundenen Datenfelder enthalten sind. Der zweite verschlüsselte Hash-Wert wird über die zweite Sequenzkennzeichnung und die zweiten Daten von dem Master unter Verwendung des eindeutigen Kennzeichnungsschlüssels berechnet.
  • Das Ethernet-Interfacemodul kann ferner aufweisen: ein erstes Datenregister, ein zweites Datenregister und eine Vorrichtung, die mit dem empfangenen Frame arbeitet, um die ersten Daten mit dem ersten verschlüsselten Hash-Wert und die zweiten Daten mit dem zweiten verschlüsselten Hash-Wert zu überprüfen. Die Vorrichtung speichert die ersten Daten in dem ersten Datenregister, falls der erste verschlüsselte Hash-Wert die Integrität der ersten Daten bestätigt, und speichert die zweiten Daten in dem zweiten Register, falls der zweite verschlüsselte Hash-Wert die Integrität der zweiten Daten bestätigt. Die Vorrichtung vergleicht die ersten gespeicherten Daten und die zweiten gespeicherten Daten. Die ersten gespeicherten Daten und/oder die zweiten gespeicherten Daten werden an das Gerät ausgegeben, falls die ersten gespeicherten Daten und die zweiten gespeicherten Daten identisch sind. Das Ethernet-Interface-Gerät weist den empfangenen Frame zurück, falls die ersten gespeicherten Daten und die zweiten gespeicherten Daten nicht identisch sind.
  • Das Ethernet-Interfacemodul ist dafür ausgebildet, mit dem Gerät Felder des empfangenen Frame zu modifizieren, um einen Rückgabe-Frame zu erzeugen und den Rückgabe-Frame über das Ethernet-Netzwerk zu senden. Der Rückgabe-Frame weist ein erstes Rückgabe-Sequenz-Kennzeichnungsfeld mit einer ersten Rückgabe-Sequenzkennzeichnung und ein erstes Rückgabe-Datenfeld mit ersten Rückgabe-Daten, die über das Ethernet-Netzwerk gesendet werden sollen, auf und weist ein erstes Rückgabe-Sicherheitsfeld auf. Der Rückgabe-Frame weist ein zweites Rückgabe-Sequenz-Kennzeichnungsfeld mit einer zweiten Rückgabe-Sequenzkennzeichnung und ein zweites Rückgabe-Datenfeld mit zweiten Rückgabe-Daten, die über das Ethernet-Netzwerk gesendet werden sollen, auf und weist ein zweites Rückgabe-Sicherheitsfeld auf. Das erste Rückgabe-Sicherheitsfeld weist einen ersten verschlüsselten Hash-Wert auf, der über die Rückgabe-Sequenzkennzeichnung und die ersten Rückgabe-Daten unter Verwendung des eindeutigen Kennzeichnungsschlüssels berechnet. Das zweite Rückgabe-Sicherheitsfeld weist einen zweiten verschlüsselten Hash-Wert auf, der über die Rückgabe-Sequenzkennzeichnung und die zweiten Rückgabe-Daten unter Verwendung des eindeutigen Kennzeichnungsschlüssels berechnet.
  • Die erste Rückgabe-Sequenzkennzeichnung kann die Sequenzkennzeichnung oder eine erzeugte Sequenzkennzeichnung aufweisen, und die zweite Rückgabe-Sequenzkennzeichnung kann die Sequenzkennzeichnung oder eine erzeugte zweite Sequenzkennzeichnung aufweisen.
  • Das Ethernet-Interfacemodul kann einen Zähler aufweisen, der die Anzahl von Vorfällen zählt, wenn die erste Sequenzkennzeichnung oder die zweite Sequenzkennzeichnung verwendet werden, um eine erste Zählung und eine zweite Zählung, jeweils entsprechend, zu erzeugen, und eine zweite Vorrichtung, die die erste Rückgabe-Sequenzkennzeichnung und die zweite Rückgabe-Sequenzkennzeichnung basierend auf der ersten und der zweiten Zählung, jeweils entsprechend, modifiziert.
  • Bei einer anderen Ausgestaltung weist das Ethernet-Interfacemodul ein erstes Datenregister, ein zweites Datenregister und eine Vorrichtung auf, die mit dem empfangenen Frame arbeitet, um die ersten Daten mit dem ersten verschlüsselten Hash-Wert zu überprüfen. Die Vorrichtung speichert die ersten Daten in dem ersten Datenregister, falls der erste verschlüsselte Hash-Wert die Integrität der ersten Daten bestätigt.
  • Der Master erzeugt einen zweiten empfangenen Frame mit einer zweiten Sequenzkennzeichnung, zweiten Daten und einem zweiten verschlüsselten Hash-Wert, der über die zweite Sequenzkennzeichnung und den zweiten verschlüsselten Hash-Wert berechnet wird. Die Vorrichtung arbeitet mit dem zweiten empfangenen Frame, um die zweiten Daten mit dem zweiten verschlüsselten Hash-Wert zu überprüfen und speichert die zweiten Daten in dem zweiten Register, falls der zweite verschlüsselte Hash-Wert die Integrität der zweiten Daten bestätigt. Die Vorrichtung vergleicht die ersten gespeicherten Daten und die zweiten gespeicherten Daten. Die ersten gespeicherten Daten und/oder die zweiten gespeicherten Daten werden an das Gerät ausgegeben, falls die ersten gespeicherten Daten und die zweiten gespeicherten Daten identisch sind. Das Ethernet-Interface-Gerät weist den ersten empfangenen Frame und den zweiten empfangenen Frame zurück, falls die ersten gespeicherten Daten und die zweiten gespeicherten Daten nicht identisch sind.
  • Das Ethernet-Interfacemodul ist dafür ausgebildet mit dem Gerät Felder des empfangenen Frame zu modifizieren, um den empfangenen Frame zu modifizieren, um einen Rückgabe-Frame zu erzeugen und den Rückgabe-Frame über das Ethernet-Netzwerk zu übertragen. Der Rückgabe-Frame weist ein erstes Rückgabe-Sequenz-Kennzeichnungsfeld mit einer ersten Rückgabe-Sequenzkennzeichnung und ein erstes Rückgabe-Datenfeld mit ersten Rückgabe-Daten, die über das Ethernet-Netzwerk gesendet werden sollen, auf und weist ein erstes Rückgabe-Sicherheitsfeld auf. Der Rückgabe-Frame weist ein zweites Rückgabe-Sequenz-Kennzeichnungsfeld mit einer zweiten Rückgabe-Sequenzkennzeichnung und ein zweites Rückgabe-Datenfeld mit zweiten Rückgabe-Daten, die über das Ethernet-Netzwerk gesendet werden sollen, auf und weist ein zweites Rückgabe-Sicherheitsfeld auf. Das erste Rückgabe-Sicherheitsfeld weist einen ersten verschlüsselten Hash-Wert auf, der über die Rückgabe-Sequenzkennzeichnung und die ersten Rückgabe-Daten unter Verwendung des eindeutigen Kennzeichnungsschlüssels berechnet wird. Das zweite Rückgabe-Sicherheitsfeld weist einen zweiten verschlüsselten Hash-Wert auf, der über die zweite Rückgabe-Sequenzkennzeichnung und die zweiten Rückgabe-Daten unter Verwendung des eindeutigen Kennzeichnungsschlüssels berechnet wird.
  • Die erste Rückgabe-Sequenzkennzeichnung weist die Sequenzkennzeichnung oder eine erzeugte Sequenzkennzeichnung auf, und die zweite Rückgabe-Sequenzkennzeichnung kann die Sequenzkennzeichnung oder eine erzeugte zweite Sequenzkennzeichnung aufweisen.
  • Das Ethernet-Interfacemodul kann ferner einen Zähler aufweisen. Der Zähler zählt die Anzahl von Vorfällen wenn die erste Sequenzkennzeichnung oder die zweite Sequenzkennzeichnung jeweils entsprechend, verwendet werden, um eine erste Zählung und eine zweite Zählung, jeweils entsprechend, zu erzeugen. Die zweite Vorrichtung modifiziert die erste Rückgabe-Sequenzkennzeichnung und die zweite Rückgabe-Sequenzkennzeichnung basierend auf der, jeweils entsprechend, ersten und zweiten Zählung.
  • Das Ethernet-Interfacemodul ist dafür ausgebildet mit dem Gerät Felder des empfangenen Frame zu modifizieren, um den empfangenen Frame zu modifizieren, um einen Rückgabe-Frame zu erzeugen und den Rückgabe-Frame über das Ethernet-Netzwerk zu übertragen. Der Rückgabe-Frame weist ein erstes Rückgabe-Sequenz-Kennzeichnungsfeld mit einer ersten Rückgabe-Sequenzkennzeichnung und ein erstes Rückgabe-Datenfeld mit ersten Rückgabe-Daten auf und weist ein erstes Rückgabe-Sicherheitsfeld auf. Das Ethernet-Interfacemodul ist dafür ausgebildet mit dem Gerät Felder eines zweiten empfangenen Frame zu modifizieren, um den zweiten empfangenen Frame zu modifizieren, um einen zweiten Rückgabe-Frame zu erzeugen und den zweiten Rückgabe-Frame über das Ethernet-Netzwerk zu übertragen. Der zweite Rückgabe-Frame weist ein zweites Rückgabe-Sequenz-Kennzeichnungsfeld mit einer zweiten Rückgabe-Sequenzkennzeichnung und ein zweites Rückgabe-Datenfeld mit den Rückgabe-Daten auf und weist ein zweites Rückgabe-Sicherheitsfeld auf. Das erste Rückgabe-Sicherheitsfeld weist einen ersten verschlüsselten Hash-Wert auf, der über die Rückgabe-Sequenzkennzeichnung und die ersten Rückgabe-Daten unter Verwendung des eindeutigen Kennzeichnungsschlüssels berechnet wird. Das zweite Rückgabe-Sicherheitsfeld weist einen zweiten verschlüsselten Hash-Wert auf, der über die zweite Rückgabe-Sequenzkennzeichnung und die ersten Rückgabe-Daten berechnet wird. Die erste Rückgabe-Sequenzkennzeichnung weist die Sequenzkennzeichnung oder eine erzeugte Sequenzkennzeichnung auf, und die zweite Rückgabe-Sequenzkennzeichnung kann die Sequenzkennzeichnung oder eine erzeugte zweite Sequenzkennzeichnung aufweisen.
  • Es wird ein Verfahren zum Betreiben eines Ethernet-Interfacemoduls bereitgestellt, das dafür ausgebildet ist, ein Gerät mit einem Ethernet-Netzwerk zu koppeln. Das Ethernet-Interfacemodul weist auf: einen ersten Vollduplex-Port mit einem Empfangsabschnitt und einem Sendeabschnitt und dafür ausgebildet, um Frames zwischen dem Ethernet-Netzwerk und dem Gerät zu übertragen und einem zweiten Vollduplex-Port mit einem zweiten Empfangsabschnitt und einem zweiten Sendeabschnitt, ausgebildet, um Frames zwischen dem Netzwerk und dem Gerät zu übertragen, eine eindeutige Zieladresse, einen ersten Pfad, der den ersten Vollduplex-Port und den zweiten Vollduplex-Port koppelt, einen zweiten Pfad, der den zweiten Vollduplex-Port und den ersten Vollduplex-Port koppelt; eine erste Warteschlange, die in dem ersten Pfad angeordnet ist, eine zweite Warteschlange, die in dem zweiten Pfad angeordnet ist, einen dritten Pfad, der den ersten Empfangsabschnitt und den ersten Sendeabschnitt koppelt, wobei der dritte Pfad zumindest einen Abschnitt der ersten Warteschlange aufweist, einen vierten Pfad, der den zweiten Empfangsabschnitt und den zweiten Sendeabschnitt koppelt, wobei der vierte Pfad zumindest einen Abschnitt der zweiten Warteschlange aufweist, eine Auswertevorrichtung, die mit der ersten Warteschlange und der zweiten Warteschlange gekoppelt ist, um aus einer empfangenen Zieladresse in einem empfangenen Frame von dem ersten Vollduplex-Port oder dem zweiten Vollduplex-Port zu ermitteln, ob der empfangene Frame die eindeutige Adresse aufweist, die an das Gerät adressiert ist, wobei jeder empfangene Frame ein Quelladressfeld mit einer Quelladresse, ein Zieladressfeld mit einer Zieladresse, ein Frame-Typ-Feld, um einen Frame-Typ zu kennzeichnen, und ein Befehlsfeld aufweist, das verwendet wird, um einen Befehl bereitzustellen. Die Auswertevorrichtung ermittelt, ob ein empfangener Frame an das Gerät adressiert ist, und ermittelt, ob das Frame-Typ-Feld einen Frame-Typ enthält.
  • Das Verfahren weist auf: Empfangen eines Frame mit einem Befehl für das Ethernet-Interfacemodul, wobei der Befehl einen Port von erstem Vollduplex-Port und zweitem Vollduplex-Port als einen Upstream-Port (Port stromaufwärts) definiert und der andere Port von erstem Vollduplex-Ports und zweitem Vollduplex-Port als einen Downstream-Port (Port stromabwärts), der Frame eine Reflektor-Adresse eines Reflektor-Ethernet-Knotens bereitstellt und der Befehl ausführbar ist, um das Ethernet-Interfacemodul in einen PING-Kapselung-Modus (PING encapsulation mode) zu bringen.
  • Das Verfahren weist ferner auf: Betreiben des Ethernet-Interfacemoduls in dem PING-Kapselung-Modus, um einen empfangenen Frame, der die eindeutige Adresse in dem Zielfeld aufweist und von dem Upstream-Port empfangen wurde, an den Downstream-Port weiterzuleiten, wobei das Zieladressfeld des empfangenen Frame modifiziert ist, um einen modifizierten Frame bereitzustellen, der die Reflektor-Adresse aufweist, das Quelladressfeld des empfangenen Frame modifiziert ist, um die eindeutige Adresse und eine neue zyklische Redundanzprüfung (cyclic redundancy check) in dem Framesequenzfeld enthält, und Bereitstellen des modifizierten Frame, wobei der verbleibende Teil des empfangenen Frames mit Ausnahme des Frameüberprüfungssequenzfelds unverändert ist.
  • Das Verfahren kann außerdem ein Betreiben des Ethernet-Interfacemoduls in dem PING-Kapselung-Modus aufweisen, um einen zweiten modifizierten Frame weiterzuleiten, der einen unveränderten Abschnitt eines empfangenen Frames aufweist, der die eindeutige Adresse in dem Zielfeld aufweist und von dem Downstream-Port empfangen wurde, an den Upstream-Port weiterzuleiten, wobei das Framesequenzfeld eine zyklische Redundanzprüfung enthält, die den Abschnitt des am Downstream-Port empfangenen Frame berechnet ist, und Bereitstellen des modifizierten empfangenen Frame am Downstream-Port, wobei der verbleibende Teil des am Downstream-Port empfangenen Frame mit Ausnahme des Frameüberprüfungssequenzfelds unverändert ist.
  • Das Verfahren kann aufweisen: Empfangen eines PING-gekapselten Frame am Upstream-Port aufweisend eine PING-Kapselung-Schicht und einen Frame, Weiterleiten des Frame über den Downstream-Port an den Reflektor-Ethernet-Knoten; Empfangen eines zweiten PING-gekapselten Frame an dem Downstream-Port aufweisend eine PING-Kapselung-Schicht und einen Antwortframe von dem Reflektor-Ethernet-Knoten, und Entfernen der PING-Kapselung-Schicht von dem zweiten PING-gekapselten Frame und Weiterleiten des Antwortframe an den Upstream-Port.
  • Ein Ethernet-Interfacemodul, das dafür ausgebildet ist, ein Gerät an ein Ethernet-Netzwerk zu koppeln, weist auf: einen ersten Vollduplex-Port mit einem Empfangsabschnitt und einem Sendeabschnitt und dafür ausgebildet, Frames zwischen dem Ethernet-Network und dem Gerät zu übertragen. Jeder empfangene Frame weist ein Frame-Typ-Feld auf, um einen Frame-Typ zu kennzeichnen, und ein Befehlsfeld, das verwendet wird, um einen Befehl an das Gerät zu liefern. Das Modul weist ferner einen ersten Pfad auf, der den Empfangsabschnitt des ersten Vollduplex-Ports mit dem Sendeabschnitt des ersten Vollduplex-Ports koppelt, eine Warteschlange, die in dem ersten Pfad angeordnet ist, und eine Auswertevorrichtung, die mit der Warteschlange gekoppelt ist. Die Auswertevorrichtung ermittelt, ob ein empfangener Frame an das Ethernet-Interfacemodul adressiert ist, und ermittelt, ob das Frame-Typ-Feld einen Frame-Typ enthält. Der Frame-Typ wird verwendet, um festzustellen, ob oder nicht der Frame vorbestimmte Felder enthält. Die vorbestimmten Felder enthalten ein oder mehrere Sequenzkennzeichnungsfelder und Rückgabeadressenfelder.
  • Der Frame-Typ, der in dem Frame-Typ-Feld enthalten ist, weist ein erstes vorbestimmtes Bit auf, das auf einen ersten Zustand gesetzt ist, und jeder Befehl, der in dem Befehlsfeld enthalten ist, weist ein erstes vorbestimmtes Bit auf, das auf einen zweiten Zustand gesetzt ist, wobei der erste Zustand und der zweite Zustand unterschiedlich gewählt werden, um das Frame-Typ-Feld und das Befehlsfeld voneinander zu unterscheiden.
  • Figurenliste
  • Man versteht die Erfindung besser, indem man die folgende detaillierte Beschreibung in Verbindung mit den Zeichnungsfiguren liest, bei denen:
    • 1A, 1B, 1C, 1D, 1E, 1F, 1G, 1H und 1J jeweils einen Frame darstellen;
    • 2 ein Blockdiagramm eines Ethernet-Interfacemoduls ist;
    • 3 ein Flussdiagramm ist;
    • 4 und 5 detaillierte Blockdiagramme eines Abschnitts des Ethernet-Interface sind;
    • 6 eine erste Netzwerktopologie zeigt;
    • 7 eine zweite Netzwerktopologie zeigt;
    • 8 eine dritte Netzwerktopologie zeigt;
    • 9 eine Wertetabelle ist;
    • 10 einen Befehl zeigt;
    • 11 ein Blockdiagramm eines zweiten Ethernet-Interfacemoduls ist;
    • 12 eine Zwei-Port-Ausgestaltung in einer ersten Ausführung zeigt;
    • 13 eine Ein-Port-Ausgestaltung in einer zweiten Ausführung zeigt;
    • 14 eine Ein-Port-Ausgestaltung in einer dritten Ausführung zeigt;
    • 15 eine Ein-Port-Ausgestaltung in einer vierten Ausführung zeigt;
    • 16 zeigt eine erste Topologie;
    • 17 zeigt eine zweite Topologie;
    • 18 zeigt eine dritte Topologie;
  • DETAILLIERTE BESCHREIBUNG
  • Ein Ethernet-Bit-Transceiver (Ethernet physical transceiver) wird oft als ein Bitschicht-Sender (physical layer transmitter) und/oder -Empfänger bezeichnet, als Bit-Schicht-Transceiver, als PHY-Transceiver, als PHYceiver, oder einfach als ein PHY. Eine PHY findet man üblicherweise in Ethernet-Geräten. Ihr Zweck ist es, Bitzugriff mit analogen Signalen für die Ethernet-Verbindung bereitzustellen. Ein PHY-Chip implementiert auf Hardwarebasis Sende- und Empfangsfunktionen für Ethernet-Frames. PHY-Interfaces auf die Leitungsmodulation an einem Ende und Signalisieren von binären Paketen an dem anderen. Eine PHY wird üblicherweise in Verbindung mit einem zweiten Chip verwendet oder ist über eine Schnittstelle mit einem Mikrocontroller verbunden, der auf höherer Ebene Medienzugriffssteuerungs- oder MAC-Funktionen wahrnimmt. IEEE 802.3-2002, Abschnitt 4.1.4 beschreibt die Funktionen, die man von einer MAC fordert.
  • PHY und MAC werden hier verwendet, um Blöcke zu bezeichnen, die PHY- und MAC-Funktionen, jeweils entsprechend, bereitstellen.
  • Die verschiedenen Ausgestaltungen von Ethernet-Interfacemodulen, die unten beschreiben werden, weisen PHY und MAC auf, aber weisen nicht Paketspeicher, Software zur Protokollauswertung und Umschalt-Ressourcen je Gerät auf und benötigen diese auch nicht. Die verschiedenen Ausgestaltungen von Ethernet-Interfacemodulen beinhalten die Anforderung, dass nur ein Vollduplex-Betrieb des entsprechenden Geräts erlaubt ist und alle Ports an dem entsprechenden Gerät, die mit dem Ethernet-Interfacemodul zugeordnet sind, müssen mit der gleichen Datenrate betrieben werden.
  • Unter den oben genannten Bedingungen können Geräte, die Ausgestaltungen von Ethernet-Interfacemodulen verwenden, in jeglichem typischen Ethernet-Netzwerk koexistieren, einschließlich den vielen Ethernet-Umgebungen mit hoher Leistung, einschließlich, aber nicht beschränkt auf, PROFINET, 1588V2 und AVB.
  • Bei den verschiedenen Ethernet-Interfacemodulen gibt es keine Beschränkungen hinsichtlich den Details bei der physikalischen Ethernet-Implementierung, es muss lediglich Vollduplex sein. Als nicht limitierendes Beispiel kann die physikalische Ethernet-Implementierung die Verwendung von optischer Leitung oder Kupferkabel, geschirmten Kabel oder ungeschirmte Herangehensweisen, verschiedene Signalisierungstechniken über ein Kabel, Power-Over-Ethernet, etc. umfassen.
  • Vollduplex-Betrieb erlaubt die gleichzeitige Kommunikation zwischen einem Paar von Stationen oder Geräten. Beim Vollduplex-Betrieb kann jede Station oder Gerät gleichzeitig senden und empfangen und daher muss jedes Ethernet-Interface in der Lage sein, gleichzeitig Frames mit Paketdaten zu senden und zu empfangen.
  • Ein grundlegendes Frame-Format 100A für verschiedenen Ausgestaltungen eines Ethernet-Interfacemoduls ist in 1A gezeigt. Das Format 100A ist zur Illustration gedacht und der Fachmann erkennt, dass dies nicht beschränkend ist. Das erläuternde Format 100A weist ein Zieladressfeld 101, ein Quelladressfeld 103, ein Ethertyp-Kennzeichnungsfeld 105, ein Ethernet-Interfacemodul (EIM) -Befehlsfeld 107, ein Paketdatenfeld 109 und ein FCS (Frame-Überprüfungssequenz, Frame Check Sequence) -Feld 111 auf.
  • Jedem Ethernet-Interfacemodul wird eine eindeutige 48-Bit-Adresse zugewiesen, die manchmal als die physikalische Adresse oder Hardware-Adresse des Interface bezeichnet wird. Das Zieladressfeld 101 enthält die Adresse, die der Adresse des Interface entspricht, welches das Ziel des Paket-Frame ist. Alternativ kann das Zieladressfeld 101 stattdessen eine Multicast-Adresse enthalten, für deren Empfang eine oder mehrere Interfaces im Netzwerk zum Empfangen vorbereitet wurden, oder eine übliche Broadcast-Adresse.
  • Jedes Ethernet-Interfacemodul, das mit dem Netzwerk verbunden ist, liest in jedem gesendeten Frame bis zu zumindest dem Zieladressfeld 101. Wenn die Zieladresse eines Frame nicht mit der eigenen Adresse des Ethernet-Interfacemoduls übereinstimmt oder mit einer Multicast- oder Broadcast-Adresse, für deren Empfang das Ethernet-Interfacemodul programmiert ist, dann kann das Ethernet-Interfacemodul den Paket-Frame entweder verwerfen oder wie unten beschrieben weiterleiten.
  • Das Quelladressfeld oder SRC-Adressfeld 103 enthält die physikalische Adresse des Ethernet-Interface, das den Paket-Frame gesendet hat.
  • Das Ethertyp-Kennzeichnungsfeld 107 enthält eine Kennzeichnung, die den Typ der oberen Protokolldaten bezeichnet, die in dem Paketdatenfeld 111 transportiert werden.
  • Jedes Ethernet-Interfacemodul unterstützt einen Satz Befehle, die in einem Befehlsfeld 109 angegeben sind. Einige übliche Befehle sind als ein Teil des grundlegenden Protokolls definiert, wohingegen die Mehrzahl der verfügbaren Befehle für die Verwendung bei gerätspezifischen Operationen zur Verfügung stellt. Der Befehlssatz wird im Detail nachfolgend beschrieben.
  • Das Datenfeld 111 trägt die Daten.
  • Das FCS (Frame Check Sequence) -Feld 113 stellt eine zyklische Redundanzprüfung (CRC) zur Verfügung, die verwendet wird, um die Integrität der Bits in den verschiedenen Feldern zu überprüfen. Wenn ein Frame von einer übertragenden Ethernet-Station oder einem Master erzeugt wird, wird ein CRC-Wert berechnet und in das Feld 113 eingefügt. Eine CRC wird erneut von einem empfangenden Ethernet-Interface berechnet, wenn der Frame empfangen wird. Der neu berechnete CRC-Wert wird mit dem CRC-Wert im Feld 113 verglichen. Falls die zwei Werte identisch sind, gibt es einen hohen Grad der Sicherheit, dass keine Fehler in der Übertragung des Paketdaten-Frame aufgetreten sind.
  • Ein übliches Paket-Frame-Format 100B für mit einem VLAN (Virtual Local Area Network) -Header ist in 1B gezeigt. Das Paket-Frame-Format 100 ist erläuternd und der Fachmann erkennt, dass es nicht einschränkend ist. Das erläuternde Format enthält ein Zieladressfeld 101, ein Quelladressfeld 103, ein VLAN (Virtual Local Area Network) -Header-Feld 113, ein Ethertyp-Kennzeichnungsfeld 105, ein Ethernet-Interfacemodul (EIM) -Befehlsfeld 107, ein Datenfeld 109 und ein FCS (Frame Check Sequence) -Feld 111.
  • Das VLAN-Tag-Header-Feld 113 identifiziert das VLAN, zu dem der Frame gehört.
  • Das VLAN-Tag-Header-Feld 113 kann bei bestimmten Ausgestaltungen optional sein. Wo der VLAN-Header optional ist, ist das Befehlsfeld 107 16-Bit lang und das Datenfeld 109 hängt vom Befehl ab. Auch wenn die Ausführungsform die Verwendung eines VLAN-Header zeigt, können andere Header-Felder verwendet werden.
  • Ein Blockdiagramm eines Ethernet-Interfacemoduls 200 ist in 2 gezeigt. Das Ethernet-Interfacemodul 200 weist einen ersten Vollduplex-Port 201 mit einer ersten PHY 201a und einer ersten MAC 201b auf. Das Ethernet-Interfacemodul 200 weist ferner einen zweiten Vollduplex-Port 203 mit einer zweiten PHY 203a und einer zweiten MAC 203b auf. Jeder Port 201, 203 als ein Vollduplex-Port weist einen Sendeabschnitt und einen Empfangsabschnitt, die zum Zwecke der Übersichtlichkeit nicht dargestellt sind.
  • Ein erster Pfad 205 koppelt den Empfangsabschnitt des Ports 201 mit dem Sendeabschnitt des Ports 203. Ein zweiter Pfad 207 koppelt den Empfangsabschnitt des Ports 203 mit dem Sendeabschnitt des Ports 201. In dem ersten Pfad 205 ist eine erste Warteschlange 209 angeordnet. In dem zweiten Pfad 207 ist eine zweite Warteschlange 211 angeordnet. Jede Warteschlange 209, 211 hat eine Länge von einigen Bytes, üblicherweise 6 oder mehr Bytes.
  • Im Betrieb erhält jede Warteschlange 209, 211 Bytes von einem empfangenen Frame. Sowie jedes neue Byte empfangen wird, werden die Bytes in der Warteschlange in Richtung des Sendeabschnitts geschoben. Die Länge der Warteschlangen ist kleiner als die Länge eines Frames, so dass im Ergebnis ein empfangener Frame, der an einem der Ports 201, 203 empfangen wird, als ein Sende-Frame an den anderen Port 203, 201 gesendet wird gemeinsam während der empfangene Frame immer noch empfangen wird, aber zeitlich um eine vorbestimmte Zeitverzögerung verschoben. Die vorbestimmte Zeitverzögerung ist durch die Größe der Warteschlangen 201, 203 bestimmt.
  • Indem bestimmbare konstante Zeitverzögerungen bereitgestellt werden, stellen die Ausführungsformen der Erfindung in vorteilhafter Weise vorhersagbare konsistente konstante Zeitverzögerungen für alle Geräte bereit, die Ethernet-Interfacemodule 200 gemäß den Prinzipien der Erfindung nutzen.
  • Ethernet-Interfacemodul 200 weist ferner eine Auswertelogik 213, eine Lese-/Schreib-Logik 215, ein Register/Speicher 217 und ein Gerät-Interface 219 auf. Die Auswertelogik 213 und die Lese-/Schreib-Logik 215 können jeweils mit einer dedizierten Logik oder in tiefliegenden Software auf einem programmierbaren Gerät implementiert werden. Das Gerät-Interface 219 stellt ein Interface an ein Gerät 1000 bereit. Datenübertragungen zwischen Gerät 1000 und empfangene Frames finden über die Warteschlangen 209, 211, Lese-/Schreib-Logik 215, Speicher 217 und Gerät-Interface 219 statt.
  • Die Größe und Komplexität der Auswertelogik 213, Lese-/Schreib-Logik 215, Speicher 217 und einem Gerät-Interface 219 können in Abhängigkeit von den Anforderungen für die Geräteklasse variieren. Zum Beispiel kann das Register/Speicher von einigen Bytes bis zu Kilobytes an Speicher reichen. Das Gerät-Interface 219 kann von wenigen digitalen Eingängen und/oder Ausgängen an ein serielles Interface (z.B. SPI oder UART) bis hin zu einem komplexen Bus zum direkten Kommunizieren mit einem Mikroprozessor reichen.
  • Die Auswertelogik 213 weist einen Adressspeicher auf, der eine oder mehrere Zieladressen für sein zugeordnetes Gerät enthält. Die Zieladressen weisen eine oder mehrere Multicast-Adressen auf, die dem Gerät zugeordnet sind. Bei verschiedenen Ausführungsformen können einige der Multicast-Adressen programmierbar sein. Der Speicher ist üblicherweise ein Direktzugriffsspeicher. Der Speicher kann Unicast- und Multicast-Adressen für das zugeordnete Gerät 1000 speichern. Die Auswertelogik 213 überwacht jeden empfangenen Frame sowie er die erste Warteschlange 209 oder die zweiten Warteschlange 211 durchläuft und vergleicht die Zieladresse, die in dem Zieladressfeld 101 des empfangenen Frame enthalten ist, mit den Adressen, die dem Gerät 1000 zugeordnet sind.
  • Das Ethernet-Interfacemodul 200 kann entweder als „Feldknoten“ („field nodes“) oder als „Endknoten“ („end nodes“) betrieben werden. Die Bezeichnung als Feldknoten oder Endknoten bezieht sich auf den Ort und die Rolle des Ethernet-Interfacemoduls 200 in einen Netzwerk. Bei dem Zwei-Port-Ethernet-Interfacemodul 200, wie es in 2 gezeigt ist, wenn nur ein Port der zwei Ports 201, 203 verbunden ist (z.B. eine Ethernet-Verbindung) hat, dann arbeitet das Ethernet-Interfacemodul 200 als ein Endknoten. Wenn bei dem Ethernet-Interfacemodul 200 beide Ports 201, 203 verbunden sind, arbeitet es als ein Feldknoten.
  • Die Lese-/Schreib-Logik 215 reagiert auf die Auswertelogik 213, um Datenpakete von einem empfangenen Frame zum Speichern im Speicher 217 und Übertragung an das Gerät 1000 über das Gerät-Interface 219 zu lesen und um Datenpakete vom Gerät 1000 zu schreiben, die über das Interface 219 empfangen werden und im Speicher 217 gespeichert werden.
  • Wenn das Ethernet-Interfacemodul 200 als ein Feldknoten arbeitet, während ein Frame an einem der Ports 201, 203 empfangen wird, werden die ersten sechs Bytes des empfangenen Frame in der entsprechenden Warteschlange 209, 211 gespeichert und werden von der Auswertelogik 203 bezüglich einer Übereinstimmung mit der MAC-Adresse des Geräts 1000 und einer oder mehreren Multicast-Adressen, die von dem Gerät 1000 unterstützt werden, ausgewertet. Wenn es eine Adressübereinstimmung gibt und wenn die Zieladresse die Unicast-Adresse des Geräts ist, wird die Zieladresse des Pakets mit einer vorbestimmten Adresse der Multicast-Adressen ausgetauscht, die in dem Ethernet-Interfacemodul 200 gespeichert sind.
  • Sowie die Frame-Bytes eines empfangenen Frame an einem der Ports 201, 203 empfangen werden und in die entsprechende Warteschlange 209, 211 eingereiht werden, wird der empfangene Frame dem anderen Port 203, 201 als ein gesendeter Frame bereitgestellt, und ein Senden des Frame an dem anderen Port 203, 201 beginnt. Sowie jeder Frame eine Warteschlange 209, 211 durchläuft, überprüft die Auswertelogik 213 das Ethertyp-Feld des empfangenen Frame. Wenn der Ethertyp, der in dem Ethertyp-Feld enthalten ist, mit dem Ethertyp des Ethernet-Interfacemoduls 200 übereinstimmt, dann werden die nachfolgenden Abschnitte des empfangenen Frame von der Auswertelogik 213 hinsichtlich eines Befehls ausgewertet, der für das Gerät bestimmt sein könnte.
  • Beispiele von Befehlen, die für das Gerät bestimmt sind, enthalten bspw. Daten lesen (Read Data), Daten schreiben (Write Data), etc. Die betroffenen Daten in den Befehlen werden aus dem Paket extrahiert oder in das Paket eingefügt, wie es geeignet ist, während es den Knoten durchläuft. Das Paket wird auf derselben Länge bei seinem Weg hinaus gehalten wie es bei seinem Weg hinein ist. Das heißt, wenn Bytes von dem empfangenen Frame in den Speicher 219 geschrieben werden, werden dieselben Bytes auch in den gesendeten Frame geschrieben. Wenn jedoch Bytes aus dem Speicher 219 in den empfangenen Frame gelesen werden sollen, werden die eingehenden Bytes an der korrespondierenden Stelle des empfangenen Frame verworfen und mit den Gerätdaten aus dem Speicher 219 ersetzt.
  • Unter Verweis auf 3 wird nun der grundlegende Betrieb des Ethernet-Interfacemoduls 200 gezeigt. In 3 wird angenommen, dass im Schritt 301 ein empfangener Frame am Port 201 empfangen wird. Die ersten Bytes aus dem empfangenen Frame werden in die Warteschlange 209 eingereiht und die Auswertelogik 213 ermittelt im Schritt 303, ob das Zieladressfeld 101 die Adresse des Geräts 1000 enthält. Wenn der empfangene Frame die Zieladresse des Geräts 1000 nicht enthält, ermittelt die Auswertelogik 213 dann im Schritt 305, ob das Zieladressfeld 101 eine globale Multicast-Adresse enthält. Wenn der empfangene Frame keine globale Multicast-Adresse enthält, ermittelt die Auswertelogik 213 im Schritt 307, ob das Zieladressfeld 101 eine sekundäre Multicast-Adresse für das Gerät 1000 enthält. Wenn im Schritt 307 festgestellt wird, dass das Zieladressfeld 101 keine sekundäre Multicast-Adresse für das Gerät 1000 enthält, ermittelt die Auswertelogik 213 im Schritt 309, ob das Ethernet-Interfacemodul 200 ausgewählt wurde ein Endknoten oder ein Feldknoten zu sein. Falls das Ethernet-Interfacemodul 200 ein Endknoten ist, verwirft das Ethernet-Interfacemodul 200 den empfangenen Frame im Schritt 311. Falls das Ethernet-Interfacemodul 200 nicht ein Endknoten ist, d.h., ein Feldknoten ist, dann leitet das Ethernet-Interfacemodul 200 den empfangenen Frame unverändert als einen gesendeten Frame an den Port 203 weiter. Dies ermöglicht, dass Ethernet-Verkehr, der dem Gerät 1000 nicht zugeordnet ist, das Netzwerk mit minimaler und fester bestimmbarer Verzögerung durchläuft.
  • Falls die Auswertelogik 213 in einem der Schritte 303, 305, 307 ermittelt, dass es eine Übereinstimmung bei der Zieladresse gibt, ermittelt die Auswertelogik 213 als Nächstes im Schritt 315, ob das Ethernet-Interfacemodul 200 ein Endknoten oder ein Feldknoten ist. Wenn als Ergebnis des Schritts 315 festgestellt wird, dass das Ethernet-Interfacemodul 200 ein Endknoten ist, bewirkt die Auswertelogik 213 im Schritt 317, dass das Zieladressfeld 101 mit der Quelladresse überschrieben wird, die in dem Quelladressfeld 103 enthalten ist, und die Auswertelogik 213 bestimmt als Nächstes, ob das Ethertyp-Feld 107 den Ethertyp des Geräts 1000 enthält. Falls Ethertyp-Feld 107 den Ethertyp des Geräts 1000 enthält und falls im Schritt 321 ermittelt wird, dass das Ethernet-Interfacemodul 200 ein Endknoten ist, verarbeitet das Ethernet-Interfacemodul den Befehl, der in dem Befehlsfeld 109 enthalten ist, während es den empfangenen Frame an den Empfangsabschnitt des Ports 201 reflektiert. Wenn das Ethertyp-Feld 107 den Ethertyp des Geräts 1000 enthält und wenn im Schritt 321 ermittelt wird, dass das Ethernet-Interfacemodul 200 kein Endknoten ist, verarbeitet das Ethernet-Interfacemodul 200 den Befehl, der in dem Befehlsfeld 109 enthalten ist, und schließt das Senden eines gesendeten Frame im Schritt 325 ab.
  • Falls die Auswertelogik 213 im Schritt 319 ermittelt, dass das Ethertyp-Feld 107 nicht den Ethertyp des Geräts 1000 enthält, ermittelt die Auswertelogik 213 im Schritt 309, ob oder nicht das Ethernet-Interfacemodul 200 ein Endknoten ist. Wenn ermittelt wird, dass das Ethernet-Interfacemodul 200 ein Endknoten ist, dann wird im Schritt 311 der Rahmen verworfen. Wenn ermittelt wird, dass das Ethernet-Interfacemodul 200 kein Endknoten ist, wird der unveränderte empfangene Frame an den Port 203 gesendet.
  • Falls die Auswertelogik 213 im Schritt 315 ermittelt, dass das Ethernet-Interfacemodul 200 kein Endknoten ist, dann ermittelt die Auswertelogik 213, ob das Zieladressfeld 101 des empfangenen Frame eine Multicast-Adresse enthält, die dem Gerät 1000 zugeordnet ist. Wenn das Zieladressfeld eine Multicast-Adresse enthält, die dem Gerät 1000 zugeordnet ist, dann wird der empfangene Frame an den Port 203 weitergeleitet und die Auswertelogik 213 ermittelt im Schritt 319, ob das Ethertyp-Feld 107 einen Ethertyp enthält, der dem Ethernet-Interfacemodul 200 zugeordnet ist. Das Verarbeiten vom Schritt 319 schreitet wie oben beschrieben fort.
  • Falls die Auswertelogik 213 im Schritt 315 ermittelt, dass das Ethernet-Interfacemodul 200 kein Endknoten ist und die Auswertelogik 213 im Schritt 327 ermittelt, dass das Zieladressfeld 101 keine Multicast-Adresse enthält, die dem Gerät 1000 zugeordnet ist, dann bewirkt die Auswertelogik 213 im Schritt 329, dass die Adresse in dem Zieladressfeld 101 des empfangenen Frame mit einer Multicast-Adresse geschrieben wird, und im Schritt 320 beginnt das Ethernet-Interfacemodul 200 mit einem Weiterleiten des empfangenen Frame an den Port 203. Die Auswertelogik 213 ermittelt dann im Schritt 319, ob der Ethertyp im Ethertyp-Feld 107 zu dem Ethertyp des Ethernet-Interfacemoduls 200 passt. Die Verarbeitung vom Schritt 319 schreitet wie oben beschrieben fort.
  • Um zusammenzufassen, falls der eingehende empfangene Frame eine beliebige der oben beschriebenen Prüfungen nicht erfüllt (Zieladresse passt nicht, Ethertyp passt nicht oder es gibt keinen unterstützten Befehl), dann wird der empfangene Frame aus dem anderen Port unverändert als ein gesendeter Frame weitergeleitet. Dies erlaubt es, dass Verkehr, der nicht dem zugeordneten Gerät 1000 zugeordnet ist, das Netzwerk mit nur geringer Verzögerung zu durchqueren.
  • Die Auswertelogik 213 kann eine Zählung bezüglich der Anzahl der ungültigen Pakete oder andere interessante Statistiken an einem Knoten zum Zwecke der Netzwerkdiagnose durchführen. Diese Statistiken können mittels des allgemeinen Befehls-Frameworks gelesen werden.
  • An der Sendeseite eines Ports 201, 203 wird die Frame Check Sequence (FCS) des Pakets berechnet und in den gesendeten Frame in das FCS-Feld 113 eingefügt, wobei die FCS des empfangenen Frame ersetzt wird. Falls ein Fehler bei der FCS-Berechnung bei dem empfangenen Frame festgestellt wird, wird eine fehlerhafte FCS in den gesendeten Frame eingefügt, um ihn ungültig zu machen.
  • Auswertelogik 213 kann für einen bestimmten Gerätetyp dahingehend programmiert werden, wie sie sich verhält, wenn sie Befehle gleichzeitig an beiden Ports 201, 203 erhält. Die verfügbaren Optionen beinhalten:
    • Verarbeite nur den ersten erkannten Befehl;
    • führe beide Operationen ohne weitere Begrenzungen aus;
    • führe beide Operationen nur aus, falls sie sich nicht gegenseitig stören; oder
    • füge einen Fehlercode in eines oder beide Pakete ein.
  • Wenn das Ethernet-Interfacemodul 200 als ein Endknoten bestimmt ist, falls ein empfangener Frame nicht zu der MAC-Adresse oder einer der unterstützten Multicast-Adressen passt oder wenn sein Ethertyp nicht passt, wird er verworfen. Wenn alle diese Überprüfungen positiv sind, wird die Quelladresse des eingehenden Frame als die Zieladresse des ausgehenden verwendet, um die Nachricht in dem empfangenen Frame zurück zu der Quellsteuerung zu senden, die ihn erzeugt hat. Dann wird die MAC-Adresse des Geräts als die Quelladresse in dem gesendeten Frame verwendet. Das Senden des Frame wird von dem Sendeabschnitt desselben Ports begonnen, an dem er empfangen wurde. Sowie der Frame weitergeleitet wird, wird derselbe Prozess des Auswertens des Befehlsfelds 109 und das Lesen/Schreiben des Frame-Inhalts durchgeführt, genauso wie es bei einem Feldknoten ist.
  • Das Ethernet-Interfacemodul 200 unterstützt verschiedene Merkmale im Hinblick auf die Verarbeitung von Frames. Die Anzahl der unterstützten Multicast-Adressen kann variieren, sofern es davon zumindest eine gibt. Der Befehlssatz, der unterstützt wird, kann sich für jedes Ethernet-Interfacemodul ändern.
  • VLAN-Header können auf einige verschiedene Weisen behandelt werden. Die VLAN-Header können ignoriert werden.
  • Das Ethernet-Interfacemodul 200 kann ferner so programmiert sein, dass das VLAN-Feld 105 als ein zusätzlicher Filter beim Analysieren der Multicast-Zieladressen verwendet wird. Zum Beispiel kann die Zieladresse nur dann als übereinstimmend angesehen werden, falls die Zieladresse im Zieladressfeld 101 übereinstimmt und das VLAN-Feld 105 übereinstimmt.
  • Wenn das Ethernet-Interfacemodul 200 als ein Endknoten programmiert ist, kann es ferner programmiert sein, nur Frames mit einer korrekten VLAN-Adresse im VLAN-Feld 105 zu reflektieren. Zusätzlich kann es programmiert sein, die VLAN-Adresse im VLAN-Feld 105 des empfangenen Frame mit einer anderen VLAN-Adresse zu ersetzen, wenn es den empfangenen Frame als einen gesendeten Frame reflektiert.
  • Das Ethernet-Interfacemodul 200 kann programmiert sein, nur bestimmte Befehle zu verarbeiten, falls sie an die Unicast-Adresse gerichtet sind, die dem Gerät 1000 zugeordnet ist. Dies erlaubt einen kontrollierten Zugang zu lediglich einem einzelnen Gerät mit einem allgemein anerkannten Befehl.
  • Das Ethernet-Interfacemodul 200 kann ferner Funktionen zum Datenmanagement aufweisen, einschließlich eines Verzögerns der Anwendung von eingehenden Daten bis ein empfangener Frame, der die Daten enthält, vollständig überprüft wurde. Um ein Verzögern des Anwendung von eingehenden Daten bereitzustellen, kann eine Vielzahl von Herangehensweisen gewählt werden, die von dem Ausstatten des Ethernet-Interfacemoduls 200 mit einem Schattenspeicher (shadow memory) oder einem Schattenregister (shadow register) reichen, um ein mehrfaches Puffern (multi-buffering) der Eingangsdaten zu erlauben. Eine Signalisierung kann an dem Gerät-Interface 219 bereitgestellt werden, um den Eingang von frischen Daten anzuzeigen in Verbindung mit einer Gültigkeitskennzeichnung. Zusätzlich kann ein Signal erst dann erzeugt werden, dass ausgehende Daten übertragen wurden, nachdem der gesendete Frame, der die Daten trägt, überprüft wurde. Das Ethernet-Interfacemodul 200 kann ein mehrfaches Puffern von ausgehenden Daten bereitstellen, um einen konsistenten Datensatz für das Senden zu garantieren. Das Ethernet-Interfacemodul 200 kann auch Status-Flags bereitstellen um anzuzeigen, dass gerade Daten an dem Gerät-Interface 219 gelesen/geschrieben werden.
  • Weil verschiedene Geräte 1000 verständlicherweise eine Vielzahl von Arten der verschiedenen Komplexitäten aufweisen, einschließlich Frames mit verschiedenen Paketfeldern, ist das Ethernet-Interfacemodul 200 ferner dafür ausgebildet, zwischen Frame-Typen zu unterscheiden. Jeder Frame 100 kann ein Typfeld 117 aufweisen, wie es in 1C gezeigt ist. Für das Typfeld 117 kann eine Länge von 16 Bit gewählt werden.
  • Die nachfolgende Tabelle 1 zeigt ein Codieren des Typfelds 117. TABELLE 1.
    Codierung Typ
    0x8000 grundlegendes Codieren, keine zusätzlichen Felder
    0x8001 Rückgabeadressenfeld hinzugefügt
    0x8002 16-Bit-Sequenz-ID-Feld hinzugefügt
    0x8004 32-Bit-Sequenz-ID-Feld hinzugefügt
    0x8008 64-Bit-Sequenz-ID-Feld hinzugefügt
    0x8009 64-Bit-Sequenz-ID-Feld und Rückgabeadressenfelder
    enthalten
  • Bei allen Typcodierungen ist das höchstsignifikante Bit gesetzt. Das höchstsignifikante Bit eines Befehlsfelds 107 ist nie gesetzt. Dies erlaubt eine Unterscheidung zwischen dem Typfeld 117 und dem Befehlsfeld 107. Durch Bereitstellen dieser Unterscheidung können einfache Geräte 1000 problemlos mit komplexeren Geräten zusammenarbeiten.
  • Das Ethernet-Interfacemodul 200, in seiner einfachsten Form, modifiziert bestimmte Felder eines Frames ohne die darin enthaltene Quelladresse zu ändern. Die originale Quelladresse wird in dem ausgehenden Frame beibehalten, um ein Ziel zurück zu der Frame-Quelle bereitzustellen, wenn der Frame das Ende eines Gerät-Strings erreicht.
  • Alternativ ist ein Rückgabeadressenfeld 119, wie es im Frame 100D in 1D gezeigt ist, in allen Frames 100D enthalten, die diese Protokollerweiterung unterstützen. Dann verwendet jedes Ethernet-Interfacemodul 200, das einen Frame modifiziert, seine eigene Adresse als die Quelladresse, und das Endknoten- oder Reflektor-Ethernet-Interfacemodul 200 kann die Rückgabeadresse verwenden.
  • Ferner noch können mögliche Endknoten-Ethernet-Interfacemodule 200 mit einer Rückgabeadresse programmiert werden. Dies reduziert den Frame-Overhead und kürzt die Rückgabezeit (turnaround time) an dem Endknoten-Ethernet-Interfacemodul 200. Um dies zu implementieren, sind keine Änderungen am Frame erforderlich, sondern nur ein zusätzlicher Befehl und Speicherung an den Endknoten.
  • Wenn ein Ethernet-Interfacemodul 200 mit diesem Merkmal einen an ihn adressierten Frame empfängt, ersetzt es die Quelladresse des ausgehenden Frame mit seiner eigenen MAC-Adresse. Das Endknoten-Ethernet-Interfacemodul 200 verwendet dann die Rückgabeadresse als die Zieladresse, wenn der Frame zurückkommt.
  • Für einen grundlegenden Frame 100A, wie er in 1A gezeigt ist, muss das Endknoten-Ethernet-Interfacemodul 200 warten, bis der Ethertyp gelesen und überprüft wurde, bevor die die Übertragung beginnen kann. Nun muss es bis auf den Empfang einer Rückgabeadresse warten, bevor Frame-Daten an den Rückgabeport gesendet werden können. Eine Konsequenz dieser Herangehensweise ist, dass die Rückkehr des Frame eine größere Latenzverzögerung erfährt.
  • Die Verzögerung ist tatsächlich jedoch minimal, weil auf jeden Fall die Übertragung der Präambel dem Empfangen/der Überprüfung des Ethertyp folgend beginnen kann. Unter der Annahme, dass die Präambel 8 Bytes und die Typ-/Rückgabe-Adresse auch 8 Bytes lang ist, ist die effektive zusätzliche Verzögerung recht gering (0 - 80 Nanosekunden bei 100 Mbit).
  • In 1E ist gezeigt, dass ein Sequenzkennzeichnung („sequence ID“) -Feld 121 dem Protokoll des Frame 100E hinzugefügt ist. Das Bereitstellen einer Sequenz-ID macht es möglich zu garantieren, dass Frames in der richtigen Reihenfolge ankommen und fehlende Frames erkannt werden.
  • Im Frame 100E ist eine Sequenz-ID mit 16 Bit gezeigt. Felder der Sequenz-ID mit größerer Länge können in besonderen Fällen verwendet werden, z.B. in Verbindung mit einer Authentifizierung etc., aber 16 Bits sind adäquat zum Zweck des Verwaltens der Frame-Reihenfolge.
  • Das Ethernet-Interfacemodul 200 modifiziert nicht die Sequenz-ID eines Frame. Stattdessen wird der Frame mit der empfangenen Sequenz-ID zurückgegeben. Beim Betrieb erwartet das Ethernet-Interfacemodul 200 eine ansteigende Folge von Sequenz-IDs, die am oberen Ende umbricht. Falls ein alter Frame, d.h., ein Frame außerhalb der Reihe, empfangen wird, wird dieser nicht bearbeitet sondern wird zurückgewiesen. Ein alter Frame kann detektiert werden, indem ermittelt wird, dass die Sequenznummer eines empfangenen Frame eine vorbestimmte Beziehung zu der Sequenznummer des vorher empfangenen Frame hat.
  • Ein Zurückweisen eines Frame wird dem Master 401 in der Operation des Befehls angezeigt. Zum Beispiel ein Lese-Befehl (READ command) würde die Daten, die zurück an den Master 401 gehen, nicht modifizieren. Ein Schreib-Befehl (WRITE command) hat ein zugeordnetes Empfangsfeld, das von dem Gerät 100 bei einer erfolgreichen Operation modifiziert wird und unverändert bleibt im Fall einer nicht erfolgreichen Operation, z.B., ist die Sequenz-ID nicht in der richtigen Reihenfolge. Diese Details sind ein Teil eines Befehlscodierens.
  • Um Sicherheit innerhalb des lokalen Ethernet-Netzwerks zu bieten, wird ein Authentifizierungsvorgang bereitgestellt.
  • Jedes Ethernet-Interfacemodul 200 hat einen mit diesem verbundenen Schlüssel, der vom Hersteller oder zum Zeitpunkt des Ausbringens installiert wird. Der Master 401 wird mit den Schlüsseln von allen Ethernet-Interfacemodulen 200 ausgestattet, mit denen er kommunizieren wird. Die grundlegenden Frame-Protokoll-Formate bleiben unverändert, stattdessen werden zusätzliche Daten in das Befehlsdatenfeld 109 aufgenommen. Ein Frame 100F mit zusätzlichen Daten ist in 1F gezeigt.
  • Im Frame 100F hat jeder Abschnitt der Befehlsdaten, z.B., an/von verschiedenen Geräten, eine separate Sequenz-ID. Unter Verwendung eines gerätspezifischen Schlüssels (z.B. 128 Bit) berechnet der Master 401 einen kryptografischen Hash über die Sequenz-ID 121a, 121b und das begleitende Datenfeld 109a, 109b. Dieses kryptografische Hash wird dann in den Frame 100F nach den Daten in die Sicherheits-Hash-Wert-Felder 123a, 123b eingefügt. Wenn ein Ethernet-Interfacemodul 200 die Daten erhält, berechnet es dieselbe Hash-Funktion über die Sequenz-ID in Feldern 121a, 121b der Sequenz-ID und der Daten in den Datenfeldern 109a, 109b und überprüft, dass sie zu den Hash-Werten passt, die in dem empfangenen Frame enthalten sind.
  • In gleicher Weise wird für Daten, die aus einem Gerät 1000 ausgelesen werden sollen, eine neue Sequenz-ID erzeugt oder es wird die zuletzt vom Master 401 empfangene verwendet und es wird ein kryptografischer Hash über die Sequenz-ID und die Daten erzeugt, die an den Master 401 gesendet werden sollen. Wenn Frame 100F einschließlich des entsprechenden Lese-Befehls das Ethernet-Interfacemodul 200 durchläuft, werden die Felder der Sequenz-ID, die Datenfelder und Hash-Felder übertragen und bei Ankunft am Master 401 überprüft.
  • Eine Sequenz-ID mit 64 Bit wurde ausgewählt, um sicherzustellen, dass die Sequenz-IDs nicht erneut verwendet müssen, was zu einem Mechanismus für einen Angriff gegen das Gerät 1000 und/oder den Master 401 eröffnen würde.
  • Es ist offensichtlich für den Fachmann, dass kleinere oder größere Werte verwendet werden können. In gleicher Weise werden 64 Bit für die Größe des kryptografischen Hash ausgewählt, um einen guten Kompromiss zwischen Größe und Sicherheit bereitzustellen.
  • Das Ethernet-Interfacemodul 200 stellt einen Sicherheitskanal über ein allgemeines Ethernet-Netzwerk zur Verfügung. Daten werden auf zwei verschiedenen, überprüften Kanälen innerhalb des Ethernet-Interfacemoduls 200 gesendet. Dies erreicht man mittels einer integrierten Hardware-Implementierung, wie es nachfolgend im Zusammenhang mit den 4 und 5 erläutert wird.
  • Der Master 401 ermittelt einen Ausgangswert und codiert ihn in einen Frame als zwei Datenblöcke 109a, 109b in 1F. Jeder Datenblock 109a, 109b wird dann mit Sequenz-IDs in den Feldern 121a, 121b und einem Verschlüsselungs-Hash in den Feldern 123a, 123b wie oben beschrieben gesichert. Zwei verschiedene Verschlüsselungsschlüssel können gewählt werden. Der Frame 100F wird dann an ein Ethernet-Interfacemodul 200 gesendet. Alternativ hierzu können zwei getrennte mit Sicherheitsdaten codierte Datenblöcke 109a, 109b in zwei verschiedenen Frames gesendet werden.
  • Nach dem Empfang des Frame oder der Frames 100F am Ethernet-Interfacemodul 200 werden die zwei mit Sicherheitsdaten codierte Blöcke in den Feldern 109a, 109b von der Lese-/Schreib-Logik 215 verarbeitet was mit mehr Detail in den 4 und 5 gezeigt ist. Zu Referenzzwecken ist Frame 100F in jedem von 4 und 5 mit der Verarbeitung der Datenfelder 109a, 109b gezeigt, die durch Pfeile 4500a, 4500b gekennzeichnet ist. Die sicherheitscodierten Datenblöcke in den Feldern 109a, 109b werden bei den Blöcken 4501a, 4501b empfangen. Sicherheitscodierte Datenblöcke in den Feldern 109a, 109b werden gegen den verschlüsselten Hash-Wert oder -Werte in den Feldern 123a, 123b durch die Hash-Funktionsausführung 4503a, 4503b überprüft und werden in separate Register 4505a, 4505b geladen, nachdem die Umformung vollständig ist. Die verschlüsselten Hash-Werte in den zwei Registern 4505a, 4505b werden vom Vergleicher 4507 verglichen und, falls sie übereinstimmen, wird die Ausgabe dem I/O-Multiplexer zugeführt und an das Gerät 1000 ausgegeben. Wenn sie nicht übereinstimmen, dann werden der Frame oder die Frames zurückgewiesen und ein Standard-Hash-Wert, der im Block 4511 gespeichert ist, wird ausgegeben.
  • Ein Watchdog-Timer 4511 wird verwendet und wird auf einen Standardwert zurückgesetzt, wenn ein gültiger Frame nicht innerhalb einer vorbestimmten programmierbaren Zeitdauer empfangen wird.
  • Das Ethernet-Interfacemodul 200 schreibt eingehende Frames, die von dem Gerät 1000 empfangen werden, in zwei getrennte Register 605a, 605b. Die eingehenden Frame-Daten, die an den Master 401 ausgegeben werden sollen, werden dann in der umgekehrten oben beschriebenen Reihenfolge verwaltet. Eine Sequenz-ID wird dem eingehenden Frame bereitgestellt. Die Sequenz-ID ist die von dem letzten erfolgreichen Empfang von ausgehenden Daten vom Master 401. Ein zusätzlicher kleiner Zähler, z.B. mit 4 Bit, der nicht gezeigt ist, zeigt die Anzahl an, wie oft die Sequenz-ID benutzt wurde. Diese Information wird in einen eingehenden Frame geladen, der den Master 401 als Ziel hat.
  • Beim Empfang des eingehenden Frame 100F beim Master 401 werden die Frame-Daten ausgepackt, überprüft und verglichen.
  • Diese Herangehensweise stellt einen reinen Hardware-Sicherheitskanal über ein allgemeines Ethernet-Netzwerk dar.
  • Die Funktionalität des Ethernet-Interfacemodul 200 kann in einer Vielzahl von Netzwerk-Topologien eingesetzt werden. Einige Beispiele von solchen Netzwerk-Topologien sind in den 6, 7 und 8 gezeigt.
  • 6 zeigt eine beispielhafte Topologie 400 mit vollständiger Schleife (full loop). Der Master 401 überträgt einen Frame von einem seiner Ports 401a und empfängt denselben Frame nachdem Modifikationen durch Ethernet-Interfacemodule 403, 405, 407, 409, 411, 413, 415 durchgeführt wurden an seinem anderen Port 401b. Die Übertragung an und von dem Nicht-Ethernet-Interfacemodul-Knoten 415 ist so, als wären die Geräte der Ethernet-Interfacemodule 403, 405, 407, 409, 411, 413 nicht anwesend. Weil es keinen Endknoten oder Reflektor gibt, wird die Multicast-Zieladresse der gesendeten Frames nicht verändert (aber die Unicast-LEN-Paket-Zieladresse wird auf eine Multicast-Adresse geändert).
  • Bei dem Beispiel der reflektierenden Linie (reflecting line), das in 7 gezeigt ist, überträgt der Master 401 einen Frame, der durch die verschiedenen Ethernet-Interface Geräte 503, 505, 507, 509 modifiziert wird. Das letzte Ethernet-Interface-Gerät 509 in der Linie, bei dem nur ein Port verbunden ist, ersetzt die Zieladresse in dem Zieladressfeld 101 eines empfangenen Frame mit der Adresse des Master 401, verwendet seine eigene Adresse als die Quelladresse in dem Quelladressfeld 103 und sendet den empfangenen Frame auf diese Weise modifiziert als einen gesendeten Frame zurück an den Master 401.
  • Bei dem Beispiel gemäß 8 sind die Ethernet-Interfacemodule 603, 607, 609, 611 615 über ein Standard-Ethernet-Netzwerk 600 mit einer Anzahl von Switches 605 und anderen Gerättypen 613, 617, die mit einem Master 401 verbunden sind, verteilt. Das geschaltete Netzwerk 600 arbeitet ähnlich zu einer Anzahl von reflektierenden Linien, wobei jedes reflektierende Gerät Pakete zurück an den Master 401 sendet. Zum Beispiel, ein Multicast-Ethernet-Interfacemodul-Frame, der vom Master 401 gesendet wird, der dafür bestimmt ist, von dem Ethernet-Interfacemodul 603 vor dem Switch 605 verarbeitet zu werden, wird über mehrere Pfade zu mehreren Reflektoren 607, 609, 615 weitergeleitet. Dies resultiert in vielen Kopien eines empfangenen Frame, der an dem Master 401 zurückgesendet wird. Um diese Multiplikation von Paketen zu verhindern, verwenden wir einige verschiedene unterstützte Techniken. Indem man sorgsam das Routing von Multicast-Paketen durch den Switch steuert, kann eine spezifische Multicast-Adresse verwendet werden, die von einem bestimmten Knoten bearbeitet wird, wobei sie von dort nur zu einem einzelnen Reflektor geführt wird. Oder, wieder unter Verwendung eines verwalteten Switch (managed switch) können VLAN IDs im Feld 105 der VLAN ID verwendet werden, um einen Frame an einen einzelnen Reflektor 607, 609, 615 zu führen.
  • Selbst ohne Verwendung eines verwalteten Switch können die Merkmale der Ethernet-Interfacemodul-Geräte verwendet werden, um mit dieser Situation zurechtzukommen. Verschiedene Ethernet-Interfacemodule können verschiedenen Multicast-Adressen zugewiesen werden, was dazu führt, dass ein betroffener Frame nur von einem einzelnen Endknoten reflektiert wird. In gleicher Weise können VLAN-Header im VLAN-Feld 105 verwendet werden, so dass nur ein einzelner Reflektor einen betroffenen Frame zurücksenden wird, wodurch eine Paketvervielfachung vermieden wird.
  • Diese Merkmale erlauben eine Steuerung von Frames, die durch ein Netzwerk fließen entweder unter Verwendung oder ohne Verwendung von verwalteten Switches.
  • Das Ethernet-Interfacemodul 200 unterstützt einen reichen Befehlssatz, der in dem Befehlsfeld 109 in einem empfangenen Frame spezifiziert ist. Einige Befehle sind als ein Teil des grundlegenden Protokolls definiert, wohingegen die Mehrzahl der verfügbaren Befehle der Verwendung bei gerätspezifischen Operationen zur Verfügung stehen. 9 illustriert einige der Befehle, die in einer Ausgestaltung des Ethernet-Interfacemoduls 200 implementiert sind.
  • Die Befehle sind entweder fest oder konfigurierbar. Feste Befehle arbeiten immer in der gleichen Weise, egal wie das Gerät 1000 konfiguriert ist. Bei konfigurierbaren Befehlen können verschiedene Funktionselemente durch eine Konfiguration über das Ethernet modifiziert werden. Diese Elemente beinhalten die spezifische Befehlskennzeichnung (ID) und einen Offset in das Paket, bei dem das Gerät Daten lesen/schreiben wird, etc. Konfigurierbare Befehle stellen einen großen Grad an Flexibilität beim Bauen eines komplexen Geräts zur Verfügung. Die einzige Begrenzung bezüglich der Befehlsfunktionalität ist, dass sie nicht den Paketfluss über das Gerät stören. Jegliche Funktion, die für ein bestimmtes Gerät sinnvoll ist, kann einem Befehl zugewiesen werden.
  • Bei verschiedenen Ausführungsformen teilen sich alle Geräte einen festen Befehlssatz, den man als Kernbefehle (core commands) kennt. Für die ganz grundlegenden Geräte kann der vollständige unterstützte Befehlssatz nur die festen Befehle aufweisen. Die Kernbefehle weisen auf:
    • Entdecken (Discover) - unten beschrieben;
    • Konfiguration lesen (Read Configuration) - die aktuelle Konfiguration des Geräts lesen;
    • Schreibe Konfiguration (Write Configuration) - ändere die Konfiguration des Geräts (insbesondere, setze die Parameter für die konfigurierbaren Befehle);
    • Lese Basisdaten (Read Base Data) - lese die grundlegenden Eingangsdaten, die dem Gerät zugeordnet sind; und
    • Schreibe Basisdaten (Write Base Data) - Schreibe die grundlegenden Ausgangsdaten, die dem Gerät zugeordnet sind.
  • Komplexere Geräte unterstützen weitere Befehle. Diese können entweder konfigurierbar oder fest sein. Die Komplexität dieser Befehle ist nicht durch das Protokoll limitiert, solange sie nicht den Datenfluss über das Ethernet-Interfacemodul 200 stören. Gerätspezifische Befehle können als dedizierte Logikblocks implementiert werden oder können von einem programmierbaren Block ausgeführt werden. Im Fall eines programmierbaren Blocks im Ethernet-Interfacemodul 200 kann es ein Programm entweder von Ressourcen auf dem Gerät (z.B. ein ROM oder von einem Host-Prozessor geschrieben) laden oder es kann über den Konfigurationsbefehl für das Gerät geladen werden, d.h., eine Steuerung (controller) schreibt das Programm für das Ethernet-Interfacemodul 200 als Teil eines Konfigurationsprozesses.
  • Jedes Gerät, das konfigurierbare Befehle unterstützt, hat eine Direktzugriffsspeichertabelle, die die Befehls-ID angibt, die dem Befehl zugeordnet ist sowie weitere benötigte Felder. Dazu zählt üblicherweise die Größe der Daten, die der Befehl adressiert, der Offset der Daten in dem Frame, der den Befehl ausführt, und ein Offset im Speicher/Register-Raum auf dem Gerät, um die Daten für den Befehl zu lesen/schreiben. Die Werte, die in der 7 gezeigt sind, sind lediglich Beispiele.
  • Die Herangehensweise der variablen Befehle erlaubt es einem Systemdesigner einen einzelnen Frame zu bauen, der verschiedene Daten von mehreren Geräten liest, Daten an mehrere Geräte schreibt, Daten von einem Gerät liest und an ein anderes schreibt, etc. Zum Beispiel kann dieselbe Befehls-ID des Ethernet-Interfacemoduls 200 bei einigen Geräten als ein Lese-Befehl ausgestaltet sein und als ein Schreib-Befehl bei anderen Geräten, so dass ein einzelner Frame beide Operationen zum Ergebnis hätte. Einige komplexe Geräte können die Konfiguration einer einzelnen Befehls-ID für mehrere Befehle unterstützen, wodurch es einem einzelnen Befehl/Frame ermöglicht wird, dass im Ergebnis sowohl gelesen als auch geschrieben wird und möglicherweise einige andere Funktionen in einem einzelnen Frame durchgeführt werden (mit verschiedenen Offsets in dem Frame oder geteilten Offsets). Andere Befehls-IDs können keine Korrelation zu irgendwelchen Frame-Daten haben, stattdessen wird der Frame als ein Event verwendet, um ein bestimmtes Verhalten auf dem Gerät auszulösen.
  • Ein Befehl von besonderem Interesse ist der Entdeckungsbefehl (Discovery Command). Dieser erlaubt es einem Ethernet-Interfacemodul 200 als Master zu ermitteln, welche Ethernet-Interfacemodul-Geräte im Netzwerk verfügbar sind und bei deren Beziehungen zueinander in dem Netzwerk Kenntnis zu erlangen. Ein Entdeckungs-Frame 800 ist in 10 gezeigt. Jedes der Felder 101, 103, 105, 107, 113 ist in Verbindung mit 1A beschrieben worden.
  • Das Startzähler-Feld 801 enthält einen Startzähler, der der Startwert für die Entdeckung ist, wie unten beschrieben, und erlaubt das Entdecken von einer sehr großen Anzahl von Geräten. Ein Max-Zähler-Feld 811 enthält eine maximale Zählung, die in dem aktuellen Entdeckungs-Frame untergebracht werden kann. Das Zählfeld 813 enthält einen Index des nächsten Geräts, das entdeckt werden soll. Die Felder 817-0, 817-1, ... 817-n enthalten die folgenden Informationen, die von den entdeckten Geräten gefüllt werden. Die Felder 817-0, 817-1, ... 817-n können das Folgende aufweisen:
    • Gerät-MAC-Adresse (6 Bytes);
    • Gerättyp (2 Bytes) - um einen grundlegenden Satz von Funktionen/Daten anzuzeigen, Beispiele umfassen Switch, 8 Bit I/O, Temperatursensor, 1-Bit-Eingabe, 1-Bit-Ausgabe, Relais, etc.;
    • Anbieter-ID (4 Bytes);
    • Anbieter-Gerättyp (2 Bytes) - wird verwendet, um spezifischere/extensivere Merkmale für ein Gerät zu kennzeichnen;
    • Versionsnummer (2 Bytes); und
    • Anbieter-Feld (4 Bytes) - um eine weitere Unterscheidung von Geräten in Abhängigkeit von Optionen, Zustand, etc. zu ermöglichen.
  • Mit diesem Informationssatz verwendet jedes Gerät 20 Bytes um über sich bei der Entdeckung zu berichten. Ein Entdeckungs-Frame voller Größe kann über bis zu 73 Geräte berichten.
  • Ein üblicher Entdeckungsprozess startet damit, dass der Master ein Multicast-Paket sendet, welches mit den gezeigten Werten formatiert ist:
    • Start-Zähler (Start Count) = 0
    • MAX-Zähler (MAX Count) = 72
    • Zähler (Count) = 0
  • Sowie der Frame das Ethernet-Interfacemodul 200 durchläuft, wird dieses Bewirken, dass der Zähler mit dem Max-Zähler in dem Max-Zähler-Feld 813 verglichen wird. Wenn der Zähler größer ist als der Max-Zähler, dann wird der Frame ohne Modifikation weitergeleitet (mit Ausnahme, wenn er in einem Endknoten wie oben beschrieben reflektiert wird). Wenn der Zähler kleiner ist als Max-Zähler, wird das aktuelle Zähler-Feld 815 als ein Offset in den Frame 800 verwendet. Der Zähler wird erhöht und in den gesendeten Frame zurückgeschrieben, sowie er das Gerät verlässt.
  • Als Nächstes leitet das Ethernet-Interfacemodul 200 den Inhalt des empfangenen Frame unmodifiziert weiter, bis eine Frame-Position erreicht ist, die identifiziert ist durch den von dem Frame gelesenen Zähler mal die Anzahl von Bytes in einem Feld (z.B. 20). Zu diesem Zeitpunkt werden die oben beschriebenen Daten in das Paket geschrieben und der Rest des Pakets wird ohne Modifikation weitergeleitet.
  • Für Systeme, die mehr Geräte haben, die über einen einzelnen Frame identifiziert werden können, wird das Startzähler-Feld 811 verwendet. Der erste Frame wird mit einem Start-Zähler bei 0 und einem Max-Zähler bei 72 gesendet. Wenn er voll zurückkommt, wird ein nächster Frame gesendet mit einem Start-Zähler bei 73 und einem Max-Zähler bei 145, usw., bis ein Frame zurückgegeben wird, der nicht voll ist.
  • Anhand der Information, die in den zurückgegebenen Entdeckungs-Frames enthalten ist, kann der Master ermitteln, wie viele Geräte und welche Art davon in dem Netzwerk verfügbar sind. Er kann auch eine Menge über die Topologie des Netzwerks ableiten.
  • Das Ethernet-Interfacemodul 200 stellt verschiedene Netzwerkverwaltungs-Unterstützungsfunktionen bereit. Ein Merkmal, das bei der Verwaltung von Netzwerkfehlern hilfreich ist, ist, dass das Ethernet-Interfacemodul 200 die Möglichkeit hat, einen bestimmten Frame zu erzeugen, wenn es eine Netzwerkverbindung an einem der Ports 201, 203 verliert. Der Frame ist an den Master 401 oder an eine spezifische Multicast-Adresse gerichtet, wenn es nicht anders programmiert ist. Der Frame enthält Informationen über die ID des Ethernet-Interfacemoduls 200 und den Port, der seine Netzwerkverbindung verloren hat. Ein ähnlicher Frame wird von dem Ethernet-Interfacemodul 200 gesendet, wenn die Verbindung zu einem Port wiederhergestellt ist.
  • Derselbe Frame und dieselbe Hardware, die für Verbindungsänderungs-Hinweispakete verwendet wird, wird auch verwendet, um eine allgemeine „Hello“-Nachricht zu senden, wenn das Ethernet-Interfacemodul 200 eingeschaltet wird. Dies ermöglicht es dem Master 401 unmittelbar jedes Ethernet-Interfacemodul 200 zu identifizieren, wenn es aktiv wird.
  • Eine Anzahl von netzwerkbezogenen Werten werden von dem Ethernet-Interfacemodul 200 überwacht und die Anzahl ihrer Auftreten festgehalten. Diese Anzahlen können vom Master 401 abgefragt werden, um bei der Netzwerkdiagnose etc. zu helfen. Beispiele von überwachten Daten umfassen:
    • Anzahl der Bytes an Daten, die von jedem Port empfangen wurden;
    • Anzahl der Bytes an Daten, die von jedem Port gesendet wurden;
    • Anzahl der Frames, die an jedem Port empfangen wurden;
    • Anzahl der Frames, auf die an jedem Port reagiert wurde;
    • Anzahl der ungültigen Frames, die an jedem Port empfangen wurden (ungültige FCS (bad FCS));
    • Anzahl an Frames, die mit einem ungültigen Sicherheits-Verschlüsselungs-Hash an jedem Port empfangen wurden; und
    • Anzahl von Frames, die mit einer ungültigen Sequenz-ID an jedem Port empfangen wurden.
  • Ob es an dem Design liegt oder weil ein Fehler im Netzwerk besteht, bei Netzwerk-Topologien, bei denen sich am Ende der Linie kein Ethernet-Interfacemodul 200 befindet, wird eine Herangehensweise verwendet, die den Vorteil des Internet-Control-Message-Protocol-ICMP-Ping-Protokolls an einem üblichen Ethernet-Gerät stromabwärts von dem letzten Ethernet-Interfacemodul 200 nutzt. Dieses übliche Ethernet-Gerät wird nachfolgend als der Reflektor bezeichnet. Dies erreicht man, indem man das letzte Ethernet-Interfacemodul 200 in der Linie in einen speziellen Modus schaltet.
  • In diesem speziellen Modus, den man als einen PING-Kapselung-Modus bezeichnet, sendet der Master 401 einen Befehl an das letzte Ethernet-Interfacemodul 200 in der Linie, um die folgenden Parameter einzustellen:
    • Definiere einen Upstream-Port, d.h., den Port am nächsten zum Master 401;
    • Definiere einen Downstream-Port, d.h., einen Port, der dem Reflektor stromabwärts zugewandt ist;
    • Liefere die Ethernet-MAC-Adresse des Reflektors; und
    • Programmiere einen Wert, der die Größe des Frame-Headers (SH) angibt, der verworfen werden soll.
  • Diese Programmierbarkeit bietet Unterstützung für IP-V6.
  • Das Ethernet-Interfacemodul 200 wird in den PING-Kapselung-Modus geschaltet beim Empfang eines PING-Kapselung-Frame 100G, wie es in 1G gezeigt ist. Der Frame 100G weist die Adresse des Ethernet-Interfacemoduls 200 im Zieladressfeld 101 und die Adresse des Masters 401 in dem Quelladressfeld 103 auf. Der Frame 100G weist ferner ein IP Header-Feld 125 und ein ICMP-Echoanforderung-Header-Feld 127 auf. Ein PING-Nutzlast-Feld 100X ist auch im Frame 100G enthalten. Das Nutzlast-Feld 100X enthält einen vollständigen Ethernet-Frame. Das Ethernet-Interfacemodul 200 leitet einen modifizierten PING-Kapselung-Frame 100H, wie in 1H gezeigt, über seinen Downstream-Port weiter. Im Frame 100H, wird der Frame 100G durch ersetzen der Zieladresse im Feld 101 des Rahmens 100G mit der Adresse des Standard-Ethernet-Geräts ersetzt, die während des Setups bereitgestellt wird, indem die Quelladresse im Feld 103 mit seiner eigenen MAC-Adresse ersetzt wird, und durch ein Ersetzen einer neu berechneten FCS im FCS-Feld 111. Der Rest des Frames 100G mit dem PING-Nutzlast-Inhalt im PING-Nutzlast-Feld 111 bleibt unverändert in 1H.
  • Im PING-Kapselung-Modus empfängt das Ethernet-Interfacemodul 200 eine Echoantwort oder PONG-Frame 100J, wie in 1 J gezeigt, der an seine eigene Unicast-MAC-Adresse gerichtet ist und am Downstream-Port empfangen wird. Das Ethernet-Interfacemodul 200 verwirft die ersten SH-Bytes des Frame plus zusätzliche 4 Bytes, falls ein VLAN-Header vorhanden ist, und behandelt den verbleibenden Teil des Frame 100J, der im Feld 100Y enthalten ist, als einen separaten Frame und leitet das Feld 100Y über den Upstream-Port weiter, wobei eine neue FCS im Feld 111 auf den Frame im Feld 100Y geniert wird. Nachdem der Header verworfen ist, werden die nächsten sechs Bytes als die Zieladresse und die nachfolgenden sechs Bytes als die Quelladresse behandelt. Falls der verbleibende Teil des Frame an das Ethernet-Interfacemodul 20 adressiert ist, verarbeitet das Ethernet-Interfacemodul diesen.
  • Der Master 401, nachdem das Ethernet-Interfacemodul 200 wie oben beschrieben, konfiguriert wurde, verwendet das Netzwerk indem ein Ping-Frame-Header erzeugt wird, als wäre er von dem Ethernet-Interfacemodul 200 gesendet worden, an einen Standard-Ethernet-Knoten stromabwärts von diesem, mit der Ausnahme, dass die Ethernet-Zieladresse die des Ethernet-Interfacemoduls 200 ist und die Quelladresse die des Masters 401 ist. Der Master 401 platziert einen üblichen Ethernet-Interfacemodul 200-Frame, z.B. Frame 100A, in das Nutzlast-Feld 100X des Ping-Frame 100G, der in 1G gezeigt ist. Der Master 401 überträgt den Frame an das Ethernet-Interfacemodul 200.
  • Der Frame 100G wird an dem Stromaufwärts-Port des Ethernet-Interfacemoduls 200 empfangen und wie oben beschrieben verarbeitet, was zu einem gültigen PING-Frame 100H von dem Ethernet-Interfacemodul 200 an das Reflektorgerät führt.
  • Das Reflektorgerät verarbeitet den Frame 100H als einen üblichen PING-Frame und überträgt den resultierenden Frame 100J zurück an das Ethernet-Interfacemodul 200.
  • Das Ethernet-Interfacemodul 200 entfernt die PING-Kapselung-Schicht von dem Frame 100G, verarbeitet und leitet weiter einen üblichen Ethernet-Interfacemodul 200-Frame, der im Feld 100Y enthalten ist, zurück stromaufwärts in die Richtung des Master 401 und jedem anderen Ethernet-Interfacemodul 200, das an derselben Linie des Netzwerks liegt. Der ICMP-PING-Header und IP-Header werden modifiziert, um von einer Echoanforderung (PING) zu einer Echo-Antwort (PONG) zu wechseln. Sowie der Frame das Ethernet-Interfacemodul 200 auf den Weg zurück durchläuft, wird alles vor dem Ping-Nutzlast-Block 100Y verworfen, wodurch ein Standard-Framepunkt übrig bleibt.
  • Ein Problem ist, dass eine IP-Adresse verschieden von der des Master 401 für den Frame verwendet werden muss. Dies liegt daran, weil der Repeater seine ARP-Tabelle mit der IP-Adresse in dem Frame und der zugeordneten MAC-Adresse aktualisieren wird. Eine einzelne solche IP-Adresse kann für ein beliebiges und alle Ethernet-Interfacemodule 200 verwendet werden, das auf diese Weise in einem vorhandenen Ethernet-Netzwerk-System verwendet wird.
  • Eine andere Ausführungsform eines Ethernet-Interfacemoduls 900 ist in 11 gezeigt. Das Ethernet-Interfacemodul 900 weist einen einzelnen Vollduplex-Port 901 auf, der eine einzelne PHY 901a und eine einzelne MAC 901b aufweist, wobei ein großer Satz von topologischen Wahlmöglichkeiten erhalten bleibt. Statt zwei Vollduplex-Verbindungen zu verwenden, bei denen Daten in zwei Richtungen weitergeleitet werden, möglicherweise gleichzeitig, verwendet das Ethernet-Interfacemodul 900 einen einzelnen Vollduplex-Port 901, um denselben grundlegenden Betrieb wie bei einem Zwei-Port-Knoten bereitzustellen. Es gibt verschiedene Ausführungsformen von Ethernet-Interfacemodulen 900 in Abhängigkeit davon, ob die Sende- und Empfangs-Pfade der Vollduplex-Kommunikation physikalisch getrennt oder dieselben sind. Wenn die Sende- und Empfangs-Pfade getrennt sind, trifft alles der nachfolgenden Diskussion zu. Wenn der Kommunikationskanal nicht getrennt ist, dann kann ein solches Eine-PHY-Gerät nur als Reflektor arbeiten.
  • Der Betrieb des Ethernet-Interfacemoduls 900 ist ähnlich zu dem Zwei-Port-Ethernet-Interfacemodul 200 mit der Ausnahme, dass Verkehr, der am Port 901 ankommt, über denselben Port 901 zurück weitergeleitet wird. Wenn im Reflektor-Modus, arbeitet es genauso wie ein Zwei-Port-Ethernet-Interfacemodul 200 im Reflektor-Modus. Der Unterschied im Hinblick auf den Reflektor-Modus ist, dass die Feststellung in den Reflektor-Modus zu gehen, nicht basierend auf dem Verbindungsstatus gemacht wird; Knoten sind entweder fest als Reflektor-Knoten gegeben oder es gibt einen externen Hinweis von einem physikalischen Switch, einem externen Prozessor, etc.
  • Um den Betrieb dieser Knoten zu verstehen, werden verschiedene Herangehensweisen der Netzwerkverkabelung in den 12 bis 15 gezeigt.
  • 12 zeigt ein Zwei-Port-Ethernet-Interfacemodul 200, wobei jeder Port 201, 203 mit einem separaten Kabel 1001, 1003 über zwei Verbinder 1005, 1007 verbunden ist. Jedes Kabel 1001, 1003 weist zwei verdrillte Kabelpaare für eine Kommunikation in zwei Richtungen auf. Das Kabel 1001 weist die verdrillten Paare C, D und das Kabel 1003 weist die verdrillten Paare A, B auf.
  • 13 zeigt ein Ein-Port-Ethernet-Interfacemodul 900 mit seinem einzelnen Port 901, der an zwei verschiedene Kabel 1101, 1103 durch zwei Stecker 1105, 1107 verbunden ist. Eine Richtung der Kommunikation ist einfach zwischen den zwei Steckern 1105, 1107 an dem Knoten verbunden ohne durch das Ethernet-Interfacemodul 900 zu führen. Die andere Richtung der Kommunikation tritt in den Port 901 von dem Kabel 1103 ein und geht durch denselben Port 901 hinaus, geführt über das andere Kabel 1101. Jedes Kabel 1101, 1103 weist zwei verdrillte Paare von Kabeln für die Kommunikation in zwei Richtungen auf. Das Kabel 1101 weist verdrillte Paare C, D und das Kabel 1103 weist verdrillte Paare A, B auf.
  • 14 zeigt ein Ein-Port-Ethernet-Interfacemodul 900 mit einem einzelnen Stecker 1205. Das Kabel 1201 weist ein einzelnes verdrilltes Paar C auf, das verwendet wird, und Kabel 1203 weist in gleicher Weise ein einzelnes verdrilltes Paar A auf, das verwendet wird. Dieser Ansatz erfordert entweder eine andere Herangehensweise bezüglich der Stecker und/oder der Kabel, um die Kabel ‚aufzuteilen‘ (‚splice‘) wie gezeigt. Eine andere Herangehensweise ist es, zwei Stecker ähnlich der 11 zu verwenden, aber auf die Leiter zu verzichten, die an der LEN-Logik vorbeiführen.
  • 15 zeigt ein Ein-Port-Ethernet-Interfacemodul 900 mit einem einzelnen Stecker, der direkt an einen Standard-Ethernet-Port 901 angeschlossen werden kann. Diese Konfiguration entspricht einem dedizierten Reflektor (stets der letzte Knoten in einer Linie), und es wird nur ein einzelnes Kabel 1303 mit zwei verdrillten Paaren verwendet.
  • In der 16 wird eine Ethernet-Topologie eines Netzwerks 1400 gezeigt, bei dem die Verkabelung gemäß 13 verwendet wird. Jedes Gerät oder Feldknoten 1403, 1405, und der Endknoten 1407 hat zwei Stecker, und das Kabel hat zwei Leiter für Verkehr in beide Richtungen. Frames, die vom Master 1401 erzeugt werden, werden die Leitung abwärts zu den Feldknoten 1403, 1405 und dem Endknoten 1407 weitergeleitet, der der letzte Knoten in der Linie ist. Der Endknoten 1407 reflektiert die Frames zurück zum Master 1401 über die Feldknoten 1403, 1405.
  • In 17 ist eine geschaltete Netzwerktopologie (switched network topology) des Netzwerks 1500 dargestellt. Ein Ethernet-Master 1501 ist bereitgestellt und kommuniziert mit einer Vielzahl von Geräten von denen einige im Block 1503 dargestellt sind. Ein Standard-Ethernet-Switch 1505 ist mit den Feldknoten 1507, 1517 und denn Endknoten 1513, 1515 gekoppelt. Ein zusätzlicher Feldknoten 1509 ist mit dem Endknoten 1511 gekoppelt und Feldknoten 1517 ist mit einem beispielhaften Ethernet-Gerät 1521 gekoppelt, das wiederum mit dem Endknoten 1519 gekoppelt ist. Bei dieser Topologie kann ein beliebiger der Feldknoten 1507, 1509, 1517 und ein beliebiger der Endknoten 1511, 1513, 1515, 1519 ein Ethernet-Interfacemodul 200 oder Ethernet-Interfacemodul 900 aufweisen. Zusätzlich kann das Ethernet-Gerät 1521 die Funktionalität eines hier integrierten Ethernet-Interfacemoduls haben.
  • In der Topologie des Netzwerks 1600, das in 18 gezeigt ist, wird die Verkabelung gemäß 12 verwendet. Das Netzwerk 1600 gemäß 16 ist eine Schleife von Feldknoten 1603, 1605, 1607, 1609 und einem Endknoten 1611 unter Verwendung einer einzelnen Richtung von Leitern (z.B. ein einzelnes verdrilltes Paar aus Kupfer zum 100-BASE-TX-Betrieb).
  • Für die Ein-Port-Ethernet-Interfacemodule 900, sofern sie nicht ausschließlich als ein Reflektor verwendet werden, der in einen üblichen Switch-Port oder einen Port an einem Zwei-Port-Device gesteckt sind, gilt, dass diese nicht beim automatischen Aushandeln (auto-negotiation) teilnehmen können. Aus diesem Grund sollten sie üblicherweise in einem festen Kommunikationsmodus betrieben werden.
  • Weil bei einem Ethernet-Interfacemodul 200, 900 alle Kommunikationen mit derselben Datenrate laufen, gelten verschiedene Regelsätze für die Verbindungsverwaltung. Für ein Zwei-Port-Ethernet-Interfacemodul 200 ist es die einfachste Option, das Gerät mit einer festen Datenrate zu bauen und jegliches automatische Aushandeln abzuschalten. Dies erfordert, dass alle anderen Ports, die mit solchen Geräten verbunden sind, auch feste Datenraten haben und die automatische Verhandlung abgeschaltet ist.
  • Eine flexible Herangehensweise bei den verschiedenen Ausführungsformen ist es, es dem Ethernet-Interfacemodul 200 zu erlauben, eine automatische Verhandlung durchzuführen, aber die Verhandlung auf eine feste Geschwindigkeit zu limitieren. Dies funktioniert problemlos mit den meisten Standard-Geräten, die einem Ethernet-Interfacemodul 200 zugeordnet werden.
  • Das Ethernet-Interfacemodul 200 kann eine Initialisierung bei der Verbindungsverwaltung wie folgt durchführen:
    • Etabliere eine Verbindung auf einem ersten Port 201;
    • Etabliere eine Verbindung an dem zweiten Port 203; und
    • falls die zwei Verbindungsübertragungsgeschwindigkeiten nicht übereinstimmen, Stoppe die schnellere Verbindung und starte die automatische Verhandlung erneut unter Erzwingung der geringeren Übertragungsgeschwindigkeit.
  • Ein-Port-Ethernet-Interfacemodule 900 können nur ein automatisches Aushandeln durchführen, falls sie in einem Modus arbeiten, bei dem beide Richtungen auf denselben Port eines anderen Geräts aufgelöst (resolved) werden. Im Fall eines Netzwerks 1600, das die Topologie einer reflektierenden Schleife (reflecting loop) bereitstellt, wie in 16 gezeigt, kann es keine automatische Verhandlung geben und feste Frequenzen müssen verwendet werden.
  • Ethernet-Interfacemodule 200, 900 können auf vielfältige Weisen implementiert werden.
  • Bei einer Ausführungsform weisen Ethernet-Interfacemodule 200, 900 ein programmierbares Gerät auf, das ausreichend regelmäßig betrieben werden kann, um die Frame-Verarbeitung und -Weiterleiten in Software durchzuführen, verbunden mit MAC-Funktionalität (entweder Hardware oder Software) und PHYs.
  • Bei anderen Ausführungsformen können die Ethernet-Interfacemodule 200, 900 eine integrierte Schaltung aufweisen, die die Kernfunktionen des Ethernet-Interfacemoduls durchführt und MAC-Funktionen, die mit externen PHYs gekoppelt sind.
  • Bei weiteren Ausführungsformen können die Ethernet-Interfacemodule 200, 900 eine integrierte Schaltung aufweisen, die die Kernfunktionen des Ethernet-Interfacemoduls mit PHYs durchführt integriert, auf demselben IC.
  • Bei weiteren Ausführungsformen können die Ethernet-Interfacemodule 200, 900 eine integrierte Schaltung aufweisen, die die Kernfunktionen des Ethernet-Interfacemoduls sowie dedizierte I/O-Operationen (z.B. ein Analog-Digital-Wandler auf demselben IC) durchführt.
  • Bei weiteren Ausführungsformen können die Ethernet-Interfacemodule 200, 900 eine integrierte Schaltung aufweisen, die die Kernfunktionen des Ethernet-Interfacemoduls und MACs mit oder ohne PHYs auf demselben IC ausführt.
  • Alles oben Genannte kann in programmierbarer Hardware implementiert werden, wie z.B. einem Field-Programmable-Gate-Array (FPGA).
  • Die Synchronisation von Ethernet-Interfacemodulen 200, 900 mit anderen Geräten in dem Netzwerk kann, wenn notwendig, auf verschiedene Weisen erzielt werden. Bei einer Ausführungsform kann das Timing eines eingehenden Ethernet-Interfacemodul Befehls-Frame verwendet werden, um ein Signal zu erzeugen, um ein Event mit einer Zeitmarke zu versehen oder sogar direkt einen Taktverwaltungsblock (clock management block) zu steuern.
  • Verschiedene Funktionen können an den Ethernet-Interfacemodulen 200, 900 bereitgestellt werden, um ein Zeitstempeln durchzuführen, eine Taktfrequenzverwaltung, etc. In zusätzlichen bestimmten Ausführungsformen der Ethernet-Interfacemodule 200, 900 können diese Frames von anderen Protokollen wie z.B. IEEE 1588 V2 erkennen und diese Protokolle nutzen.
  • Eine Watchdog-Timer-Funktion kann in den Ethernet-Interfacemodulen 200, 900 bereitgestellt werden. Eine solche Funktion weist einen Zeitzähler auf, der eine maximale Zeit zwischen dem Empfang eines bestimmten Befehls oder einer Gruppe von Befehlen misst. Wenn die Zeit überschritten wird, dann wird eine Aktion durchgeführt, wie z.B. eines Signals an externe Hardware, wobei Daten in dem Ethernet-Interfacemodul 200, 900 mit Standardwerten ersetzt werden.
  • Die genaue Kommunikationsfrequenz an einem Empfangsport eines Geräts wird von dem Peer-Gerät ermittelt, das den Frame überträgt, wohingegen die Frequenz des Pakets, das aus dem anderen Port nochmals gesandt wird, von dem lokalen Gerät bestimmt wird. Diese zwei Frequenzen werden üblicherweise nicht übereinstimmen, aufgrund der Unterschiede in den Oszillatoren der zwei Geräte, Temperatureffekten, etc. Es gibt zwei Probleme, die durch diesen Unterschied hervorgerufen werden.
  • Das erste Problem ist, dass ein bestimmter Betrag von Puffern in dem lokalen Gerät notwendig ist, so dass wenn sein Sendetakt schneller ist als es seine Daten empfängt, es nicht keine Daten mehr zum Senden zur Verfügung hat, bevor der Frame zu Ende ist. In gleicher Weise, wenn der Sendetakt geringer ist, muss es in der Lage sein zusätzliche Daten zu puffern, die empfangen werden, bevor der Empfang des eingehenden Frame vollständig ist. Die Weiterleitungszeit, die aus einer Präambel-Sendung plus der Zeit, die es zum Empfangen der Zieladresse benötigt, ist ausreichend, um einen schnelleren Sendetakt abzudecken. In gleicher Weise sind Pufferpegel in der Größenordnung von einigen Bytes ausreichend, um den Fall eines langsamen Sendetakts abzudecken.
  • Das zweite Problem bezieht sich speziell auf Hochleistungsnetzwerke. Einige Netzwerke benötigen ein sehr konsistentes Timing der Frames, die das Netzwerk durchlaufen. Dazu zählen PROFINET IRT Netzwerke, SERCOS III Netzwerke und verschiedene Netzwerkprotokolle, die das Ethernet verwenden, um ein genaues Timing zu verteilen. In diesen Fällen kann das Zittern (jitter) das aufgrund der Unterschiede zwischen dem Sende- und den Empfangstakt an einem Knoten eines Ethernet-Interfacemoduls 200, 900 problematisch sein. Um dieses Problem zu lösen, können die Ethernet-Interfacemodule 200, 900 einen Takt verwenden, der aus dem Signal an dem Empfangsport 201, 901 gewonnen wird, um die Übertragung am Sendeport 203, 903 zu steuern. Dies führt dazu, dass die Zeit, die ein Paket benötigt um einen Knoten eines Ethernet-Interfacemoduls 200, 900 zu durchlaufen, auf einen sehr konsistenten Pegel gebracht wird und einen problemlosen Betrieb in diesen Hochleistungsnetzwerken erlaubt.
  • Die Masterfunktion in einem Netzwerk mit Ethernet-Interfacemodul 200, 900 kann mit einem beliebigen Ethernet-fähigen Gerät mit hinreichender Verarbeitungskapazität durchgeführt werden. Dabei könnte es sich um einen PC, einen Cloud-basiserten Server, eine programmierbare Logiksteuerung oder eine dedizierte Steuerung handeln. Die Leistungsanforderung für den Master sind ausschließlich eine Funktion der Anforderungen der im Netzwerk verbundenen Geräte. Die Frequenz von Frames an die Geräte kann von Mikrosekunden für einige Anwendungen bis hin zu Stunden für andere reichen, das Protokoll ist gänzlich flexibel im Hinblick darauf.
  • Ein Lokal Area Network (LAN) mit Ethernet-Interfacemodulen 200, 900 kann in ein größeres Netzwerk integriert werden, einschließlich von Internet of Things (loT)-Anwendungen. Wenn ein Ethernet-Interfacemodul-Gerät über das Internet Protocol (IP) erreicht werden muss oder über Funktionen, die nicht direkt über das lokale Ethernet-LAN verfügbar sind, kann dies durch „IP Virtualization“ erzielt werden. Bei dieser Internet Protocol (IP) Virtualization können Frames in UDP- oder TCP-Paketen eingepackt werden und unter Verwendung der IP Protokolle an andere IP-fähige Knoten in dem LAN gesendet werden, wo sich die Ethernet-Interfacemodule befinden. Dieser entfernte (remote) IP-fähige Knoten entfernt die Protokolle der höheren Schichten (z.B. IP/TCP) und überträgt die Roh-Frames, verkapselt die zurückgegebenen Frames wieder und sendet diese unter Verwendung von IP an den Master. Es wäre ein direkter Vorgang, dedizierte Benutzergeräte zu bauen, um Frames auf diese Weise einzupacken und weiterzuleiten, sowohl in demselben LAN als Master (oder direkt in dem Master selbst) und in dem entfernten LAN, wo sich die Ethernet-Interfacemodule befinden.
  • Es gibt eine Vielzahl von möglichen Anwendungen für die Herangehensweise der Verwendung von Ethernet-Interfacemodulen 200, 900 für die Kommunikation und Steuerung. Diese Anwendungen sind insbesondere bereit aufgrund der Kombination von großer Bandbreite und niedrigen Kosten für ein Netzwerk von Ethernet-Interfacemodulen 200, 900.
  • Ethernet-Interfacemodule können zusammen mit Haushaltsgeräten verwendet werden, um einen beliebigen Level an Komplexität von Status und Steuerinformation an eine einzelne Steuerung in dem Haus oder an mehrere Steuerungen zu kommunizieren. Dies ermöglicht ein vereinheitlichtes Steuerungs-Interface für Anwendergeräte in dem Haus und bietet einen einzigen Platz, der hinsichtlich Internetzugang und Sicherheitsproblemen, etc. verwaltet werden muss.
  • Zusätzlich zu den wichtigsten Haushaltsgeräten, z.B., Waschmaschine/Trockner, Geschirrspülmaschine, Heizung/Klimaanlage, Bereich, Kühlschrank, etc, können Ethernet-Interfacemodule für kleinere Geräte wie Thermostate, Feuermelder und ähnliches verwendet werden. Zum Beispiel gibt es auf dem Thermostat-Markt eine Bewegung hin zu ‚intelligenten‘ (‚smart‘) Thermostaten mit verbesserter Funktionalität (und erheblichen Kosten). Unter Verwendung eines Ethernet-Interfacemoduls mit einem Thermostat und Anreichern mit einer Software auf der Steuerung, kann zu geringen Kosten die Funktionalität eines „intelligenten Thermostats“ mit einem beliebigen Level an Funktionalität bereitstellen.
  • Weiterhin kann die Verwendung von Ethernet-Interfacemodulen 200, 900 die Kosten einer grundlegenden Hausverkabelung unter Verwendung von Kabeln mit verdrillten Paaren reduzieren, um zwischen den Wandschaltern, Lichtauslässen, Steckdosen usw. zu kommunizieren. Bei dieser Ausgestaltung würde die schwere Kupferverkabelung zum Bereitstellen von Leistung zwischen den Lichtauslässen und Steckdosen auf dem kürzesten Weg verlegt, wobei die elektronischen Schalter am Platz durch Knoten mit Ethernet-Interfacemodulen 200, 900 gesteuert werden. Wandschalter sind einfache Ethernet-Interfacemodul 200, 900 Geräte 1000 nur mit Kommunikationsverdrahtung und einer Niedrigspannungsversorgung, z.B. unter Verwendung eines der Power-Over-Ethernet-Standards. Das Ergebnis ist ein verringerter Arbeitsaufwand bei der Installation, Kosten der Verkabelung und eine verbesserte Flexibilität der Steuerung, so dass die Zuordnung von Schaltern und Auslässen programmierbar ist und die gesamte Hausverkabelung unter der Kontrolle eines Master ist.
  • Bei der industriellen Anwendung können Ethernet-Interfacemodule 200, 900 in vielen Geräten verwendet werden, die aktuell viel komplexere Systeme verwenden, sowohl Ethernet als auch andere Kommunikationsschichten. Außerdem können Geräte mit Ethernet-Interfacemodulen 200, 900 zwischen anderen Typen von Geräten in den meisten Netzwerken verteilt werden. Z.B. könnte ein Ethernet-Interfacemodule-Gerät in einem Netzwerk platziert werden, das mit PROFINET IRT betrieben wird ohne eine negative Auswirkung auf das IRT-Netzwerk zu haben, dies aufgrund der deterministischen Weiterleitungsnatur der Ethernet-Interfacemodule 200, 900.
  • Die Ethernet-Interfacemodule 200, 900 können im Automobilbereich breit verwendet werden. Von der Steuerung der Innenbeleuchtung, Türverriegelungssteuerungen bis zur Kommunikation mit sicherheitskritischer Infrastruktur, wie z.B. Bremsen, etc. Vergleichbar mit der Einbindung in Hochleistungsnetzwerken in der Industrie, können Ethernet-Interfacemodule 200, 900 in Hochleistungsnetzwerken im Automobilbereich eingesetzt werden, und zwar unabhängig von Netzwerk-Timing und Verwaltungsprotokollen, wodurch der Verkauf eines einzelnen Gerät-Designs für mehrere Automobilhersteller möglich wird, selbst wenn sie verschiedene Herangehensweisen für ihre Netzwerkarchitektur wählen.
  • Die Erfindung wurde anhand von verschiedenen Ausführungsformen beschrieben. Es ist dem Fachmann klar, dass verschiedene Änderungen und Modifikationen gemacht werden können, ohne den Bereich der Erfindung zu verlassen. Es ist nicht beabsichtigt, dass die Erfindung auf die spezifischen Ausführungsformen beschränkt ist, die gezeigt und beschrieben wurden. Es ist beabsichtigt, dass die Erfindung hinsichtlich ihres Schutzbereichs nur durch die angehängten Ansprüche beschränkt ist.

Claims (30)

  1. Ethernet-Interfacemodul, das dafür ausgebildet ist, ein Gerät mit einem Ethernet-Netzwerk zu koppeln, das Ethernet-Interfacemodul aufweisend: einen ersten Vollduplex-Port mit einem Empfangsabschnitt und einem Sendeabschnitt; wobei der erste Vollduplex-Port dafür ausgebildet ist, Frames zwischen dem Ethernet-Netzwerk und dem Gerät zu übertragen; wobei jeder empfangene Frame ein Frame-Typ-Feld aufweist, um einen Frame-Typ zu kennzeichnen, und ein Befehls-Feld, das verwendet wird, um dem Gerät einen Befehl zur Verfügung zu stellen; einen ersten Pfad, der den Empfangsabschnitt des ersten Vollduplex-Ports mit dem Sendeabschnitt des ersten Vollduplex-Ports koppelt; eine Warteschlange, die in dem ersten Pfad angeordnet ist; eine Auswertevorrichtung, die mit der Warteschlange gekoppelt ist, wobei die Auswertevorrichtung ermittelt, ob ein empfangener Frame an das Ethernet-Interfacemodul adressiert ist, und ermittelt, ob das Frame-Typ-Feld einen Frame-Typ beinhaltet; wobei das Ethernet-Interfacemodul in einem ersten Modus betrieben werden kann, so dass jeder empfangene Frame zurück über den ersten Vollduplex-Port hinaus gesendet wird; wobei das Ethernet-Interfacemodul in einem zweiten Modus betrieben werden kann, so dass jeder empfangene Frame, der vorbestimmte Auswertekriterien erfüllt, zurück über den ersten Vollduplex-Port hinaus gesendet wird, und solche empfangenen Frames, die nicht die vorbestimmten Auswertekriterien erfüllen, verworfen werden; das Ethernet-Interfacemodul einen eindeutigen Kennzeichnungsschlüssel aufweist, der ihm zugeordnet ist; wobei der empfangene Frame ein Sequenzkennzeichnungs-Feld und ein Sicherheits-Feld aufweist, wobei das Sequenzkennzeichnungs-Feld eine Sequenzkennzeichnung aufweist und das Sicherheits-Feld einen verschlüsselten Hash-Wert für erste Daten aufweist, die in einem der zugeordneten Datenfelder enthalten sind; wobei der verschlüsselte Hash-Wert über die Sequenzkennzeichnung und die ersten Daten unter Verwendung des eindeutigen Kennzeichnungsschlüssels berechnet wird.
  2. Ethernet-Interfacemodul nach Anspruch 1, wobei jeder Frame-Typ verwendet wird, um zu kennzeichnen, ob oder nicht der Frame vorbestimmte Felder enthält.
  3. Ethernet-Interfacemodul nach Anspruch 2, wobei die vorbestimmten Felder ein oder mehrere Sequenzidentifikations-Felder und Rückgabeadresse-Felder aufweisen.
  4. Ethernet-Interfacemodul nach Anspruch 2, wobei jeder Frame-Typ verwendet wird, um zu kennzeichnen, ob oder nicht der Frame ein Sequenzkennzeichnungs-Feld aufweist.
  5. Ethernet-Interfacemodul nach Anspruch 2, wobei jeder Frame-Typ verwendet wird, um zu kennzeichnen, ob oder nicht der Frame ein Rückgabeadresse-Feld aufweist.
  6. Ethernet-Interfacemodul nach Anspruch 1, wobei jeder Frame-Typ verwendet wird, um zu kennzeichnen, ob oder nicht der Frame ein Sequenzkennzeichnungs-Feld aufweist.
  7. Ethernet-Interfacemodul nach Anspruch 1, wobei jeder Frame-Typ verwendet wird, um zu kennzeichnen, ob oder nicht der Frame ein Rückgabeadresse-Feld aufweist.
  8. Ethernet-Interfacemodul nach Anspruch 1, wobei jeder Frame-Typ, der in dem Frame-Typ-Feld enthalten ist, ein erstes vorbestimmtes Bit aufweist, das auf einen ersten Zustand gesetzt ist, und jeder Befehl, der in dem Befehls-Feld enthalten ist, ein erstes vorbestimmtes Bit aufweist, das auf einen zweiten Zustand gesetzt ist, wobei der erste Zustand und der zweite Zustand voneinander verschieden gewählt sind, um das Frame-Typ-Feld und das Befehls-Feld zu unterscheiden.
  9. Ethernet-Interfacemodul nach Anspruch 1, aufweisend: eine Zieladresse, die das Ethernet-Interfacemodul kennzeichnet; wobei jeder empfangene Frame ein Zieladressfeld aufweist, das eine Zieladresse enthält, und ein Quelladressfeld, das eine Quelladresse enthält, die die Quelle des Frame angibt; wobei das Ethernet-Interfacemodul mit dem Gerät betrieben werden kann, um Felder des empfangenen Frame zu modifizieren und die Quelladresse nicht zu ändern, um eine Rückgabe-Frame zu erzeugen.
  10. Ethernet-Interfacemodul nach Anspruch 1, aufweisend: eine Zieladresse, die das Ethernet-Interfacemodul kennzeichnet; wobei jeder empfangene Frame ein Zieladressfeld aufweist, das eine Zieladresse enthält, und ein Rückgabeadressfeld, das eine Quelladresse enthält, die die Quelle des Frame angibt; wobei das Ethernet-Interfacemodul zusammen mit dem Gerät betrieben werden kann, um Felder des empfangenen Frame zu modifizieren, um einen modifizierten Rückgabe-Frame zu erzeugen, die Zieladresse in das Quelladressfeld des Rückgabe-Frame einzufügen und die Rückgabeadresse zu verwenden, um das Ziel des Rückgabe-Frame zu kennzeichnen.
  11. Ethernet-Interfacemodul nach Anspruch 1, aufweisend: eine Zieladresse, die das Ethernet-Interfacemodul kennzeichnet; eine Rückgabe-Adresse; wobei jeder empfangene Frame ein Zieladressfeld aufweist, das eine Zieladresse enthält, und ein Rückgabeadressfeld, das eine Quelladresse enthält, die die Quelle des Frame angibt; wobei das Ethernet-Interfacemodul zusammen mit dem Gerät betrieben werden kann, um Felder des empfangenen Frame zu modifizieren, um einen modifizierten Rückgabe-Frame zu erzeugen, die Zieladresse in das Quelladressfeld des Rückgabe-Frame einzufügen und die Rückgabeadresse zu verwenden, um das Ziel des Rückgabe-Frame zu kennzeichnen.
  12. Ethernet-Interfacemodul nach Anspruch 11, wobei die Rückgabe-Adresse in ein Zieladressfeld des Rückgabe-Frame eingefügt wird.
  13. Ethernet-Interfacemodul nach Anspruch 1, wobei jeder empfangene Frame ein Sequenzkennzeichnungs-Feld aufweist, das eine Sequenzkennzeichnung enthält, wobei die Sequenzkennzeichnungen für eine Folge von empfangenen Frames eine vorbestimmte Beziehung zueinander haben; und wobei das Ethernet-Interfacemodul die Sequenzkennzeichnung verwendet, um zu ermitteln, ob oder nicht der empfangene Frame eine vorbestimmte Beziehung zu dem vorher empfangenen Frame hat.
  14. Ethernet-Interfacemodul nach Anspruch 13, wobei das Ethernet-Interfacemodul eine vorbestimmte Operation mit dem empfangenen Frame durchführt, wenn ermittelt wird, dass die Sequenzkennzeichnung des empfangenen Frame keine vorbestimmte Beziehung hat.
  15. Ethernet-Interfacemodul nach Anspruch 14, wobei die vorbestimmte Operation ein Zurückweisen des empfangenen Frame aufweist.
  16. Ethernet-Interfacemodul nach Anspruch 15, wobei die vorbestimmte Operation das Bereitstellen eines Hinweises an die Quelle des empfangenen Frame aufweist, dass der empfangene Frame zurückgewiesen wurde.
  17. Ethernet-Interfacemodul nach Anspruch 1, wobei das Ethernet-Netzwerk einen Master aufweist, wobei der Master den empfangenen Frame erzeugt; und das Befehls-Feld ein oder mehrere zugeordnete Datenfelder hat, die Befehlsdaten aufweisen.
  18. Ethernet-Interfacemodul nach Anspruch 17, wobei: das Ethernet-Interfacemodul einen eindeutigen Kennzeichnungsschlüssel aufweist, der ihm zugeordnet ist; und dem Master der eindeutige Kennzeichnungsschlüssel bereitgestellt wird.
  19. Ethernet-Interfacemodul, das dafür ausgebildet ist, ein Gerät mit einem Ethernet-Netzwerk zu koppeln, wobei das Ethernet-Netzwerk einen Master aufweist, das Ethernet-Interfacemodul aufweisend: einen ersten Vollduplex-Port mit einem Empfangsabschnitt und einem Sendeabschnitt; wobei der erste Vollduplex-Port dafür ausgebildet ist, Frames zwischen dem Ethernet-Netzwerk und dem Gerät zu übertragen, wobei die Frames am Ethernet-Interfacemodul empfangene Frames aufweisen; wobei jeder empfangene Frame ein Frame-Typ-Feld aufweist, um einen Frame-Typ zu kennzeichnen, und ein Befehls-Feld, das verwendet wird, um dem Gerät einen Befehl zur Verfügung zu stellen; einen ersten Pfad, der den Empfangsabschnitt des ersten Vollduplex-Ports mit dem Sendeabschnitt des ersten Vollduplex-Ports koppelt; eine Warteschlange, die in dem ersten Pfad angeordnet ist; eine Auswertevorrichtung, die mit der Warteschlange gekoppelt ist, wobei die Auswertevorrichtung ermittelt, ob ein empfangener Frame an das Ethernet-Interfacemodul adressiert ist, und ermittelt, ob das Frame-Typ-Feld einen Frame-Typ beinhaltet; wobei das Ethernet-Interfacemodul in einem ersten Modus betrieben werden kann, so dass jeder empfangene Frame zurück über den ersten Vollduplex-Port hinaus gesendet wird; wobei das Ethernet-Interfacemodul in einem zweiten Modus betrieben werden kann, so dass jeder empfangene Frame, der vorbestimmte Auswertekriterien erfüllt, zurück über den ersten Vollduplex-Port hinaus gesendet wird, und solche empfangenen Frames, die nicht die vorbestimmten Auswertekriterien erfüllen, verworfen werden; wobei der Master den empfangenen Frame erzeugt; wobei das Befehls-Feld ein oder mehrere zugeordnete Datenfelder hat, die Befehlsdaten aufweisen; wobei das Ethernet-Interfacemodul einen eindeutigen Kennzeichnungsschlüssel aufweist, der ihm zugeordnet ist; wobei dem Master der eindeutige Kennzeichnungsschlüssel bereitgestellt wird; wobei der empfangene Frame ein Sequenzkennzeichnungs-Feld und ein Sicherheits-Feld aufweist, wobei das Sequenzkennzeichnungs-Feld eine Sequenzkennzeichnung aufweist und das Sicherheits-Feld einen verschlüsselten Hash-Wert für erste Daten aufweist, die in einem der zugeordneten Datenfelder enthalten sind. wobei der verschlüsselte Hash-Wert über die Sequenzkennzeichnung und die ersten Daten von dem Master unter Verwendung des eindeutigen Kennzeichnungsschlüssels berechnet wird; und wobei der empfangene Frame ein zweites Sequenzkennzeichnungs-Feld und ein zweites Sicherheits-Feld aufweist, wobei das zweite Sequenzkennzeichnungs-Feld eine zweite Sequenzkennzeichnung aufweist und das zweite Sicherheits-Feld einen zweiten verschlüsselten Hash-Wert für zweite Daten aufweist, die in einem zweiten Feld der zugeordneten Datenfelder enthalten sind.
  20. Ethernet-Interfacemodul nach Anspruch 19, wobei der zweite verschlüsselte Hash-Wert über die zweite Sequenzkennzeichnung und die zweiten Daten von dem Master unter Verwendung des eindeutigen Kennzeichnungsschlüssels berechnet wird.
  21. Ethernet-Interfacemodul nach Anspruch 20, aufweisend: ein erstes Datenregister; ein zweites Datenregister; eine Vorrichtung, die den empfangenen Frame verarbeitet, um die ersten Daten mit dem ersten verschlüsselten Hash-Wert zu prüfen; wobei die Vorrichtung die ersten Daten in dem ersten Datenregister speichert, falls der erste verschlüsselte Hash-Wert die Integrität der ersten Daten bestätigt; wobei der Master einen zweiten empfangenen Frame erzeugt, wobei der zweite empfangene Frame eine zweite Sequenzkennzeichnung, zweite Daten und einen zweiten verschlüsselten Hash-Wert aufweist, der über die zweite Sequenzkennzeichnung und den zweiten verschlüsselten Hash-Wert berechnet wird; wobei die Vorrichtung den zweiten empfangenen Frame verarbeitet, um die zweiten Daten mit dem zweiten verschlüsselten Hash-Wert zu prüfen und die zweiten Daten in dem zweiten Register zu speichern, falls der zweite verschlüsselte Hash-Wert die Integrität der zweiten Daten bestätigt; wobei die Vorrichtung die ersten gespeicherten Daten und die zweiten gespeicherten Daten vergleicht; wobei die ersten gespeicherten Daten und/oder die zweiten gespeicherten Daten an das Gerät ausgegeben werden, falls die ersten gespeicherten Daten und die zweiten gespeicherten Daten identisch sind; und wobei das Ethernet-Interfacemodul den empfangenen Frame und den zweiten empfangenen Frame zurückweist, falls die ersten gespeicherten Daten und die zweiten gespeicherten Daten nicht identisch sind.
  22. Ethernet-Interfacemodul nach Anspruch 20, aufweisend: ein erstes Datenregister; ein zweites Datenregister; eine Vorrichtung, die den empfangenen Frame verarbeitet, um die ersten Daten mit dem ersten verschlüsselten Hash-Wert und die zweiten Daten mit dem zweiten verschlüsselten Hash-Wert zu überprüfen; wobei die Vorrichtung die ersten Daten in dem ersten Datenregister speichert, falls der verschlüsselte Hash-Wert die Integrität der ersten Daten bestätigt, und die zweiten Daten in dem zweiten Datenregister speichert, falls der zweite verschlüsselte Hash-Wert die Integrität der zweiten Daten bestätigt; wobei die Vorrichtung die ersten gespeicherten Daten und die zweiten gespeicherten Daten vergleicht; wobei die ersten gespeicherten Daten und/oder die zweiten gespeicherten Daten an das Gerät ausgegeben werden, falls die ersten gespeicherten Daten und die zweiten gespeicherten Daten identisch sind; und wobei das Ethernet-Interfacemodul den empfangenen Frame zurückweist, falls die ersten gespeicherten Daten und die zweiten gespeicherten Daten nicht identisch sind.
  23. Ethernet-Interfacemodul nach Anspruch 22, wobei: das Ethernet-Interfacemodul mit dem Gerät betrieben werden kann, um Felder des empfangenen Frame zu modifizieren, um den empfangenen Frame zu modifizieren, um einen Rückgabe-Frame zu erzeugen und den Rückgabe-Frame über das Ethemet-Netzwerk zu übertragen; der Rückgabe-Frame ein erstes Rückgabe-Sequenzkennzeichnungs-Feld mit einer ersten Rückgabe-Sequenzkennzeichnung aufweist und ein erstes Rückgabe-DatenFeld mit ersten Rückgabe-Daten aufweist, die über das Ethernet-Netzwerk gesendet werden sollen, und ein erstes Rückgabe-Sicherheits-Feld aufweist; der Rückgabe-Frame ein zweites Rückgabe-Sequenzkennzeichnungs-Feld mit einer zweiten Rückgabe-Sequenzkennzeichnung aufweist und ein zweites Rückgabe-Daten-Feld mit zweiten Rückgabe-Daten aufweist, die über das Ethernet-Netzwerk gesendet werden sollen, und ein zweites Rückgabe-Sicherheits-Feld aufweist; wobei das erste Rückgabe-Sicherheits-Feld einen ersten verschlüsselten Hash-Wert aufweist, der über die Rückgabe-Sequenzkennzeichnung und die ersten Rückgabe-Daten unter Verwendung des eindeutigen Kennzeichnungsschlüssels berechnet wird; und wobei das zweite Rückgabe-Sicherheits-Feld einen zweiten verschlüsselten Hash-Wert aufweist, der über die Rückgabe-Sequenzkennzeichnung und die zweiten Rückgabe-Daten unter Verwendung des eindeutigen Kennzeichnungsschlüssels berechnet wird.
  24. Ethernet-Interfacemodul nach Anspruch 23, wobei: die erste Rückgabe-Sequenzkennzeichnung die Sequenzkennzeichnung oder eine erzeugte Sequenzkennzeichnung aufweist; und die zweite Rückgabe-Sequenzkennzeichnung die Sequenzkennzeichnung oder eine erzeugte zweite Sequenzkennzeichnung aufweist.
  25. Ethernet-Interfacemodul nach Anspruch 24, aufweisend: einen Zähler, der die Anzahl von Vorfällen zählt, bei denen die erste Sequenzkennzeichnung und die zweite Sequenzkennzeichnung verwendet werden, um, jeweils entsprechend, eine erste Zählung und eine zweite Zählung zu erzeugen; und eine zweite Vorrichtung zum Modifizieren der ersten Rückgabe-Sequenzkennzeichnung und der zweiten Rückgabe-Sequenzkennzeichnung basierend auf der ersten und der zweiten Zählung, jeweils entsprechend.
  26. Ethernet-Interfacemodul nach Anspruch 22, wobei: das Ethernet-Interfacemodul mit dem Gerät betrieben werden kann, um Felder des empfangenen Frame zu modifizieren, um den empfangenen Frame zu modifizieren, um einen Rückgabe-Frame zu erzeugen und den Rückgabe-Frame über das Ethernet-Netzwerk zu übertragen; der Rückgabe-Frame ein erstes Rückgabe-Sequenzkennzeichnungs-Feld mit einer ersten Rückgabe-Sequenzkennzeichnung aufweist und ein erstes Rückgabe-DatenFeld mit ersten Rückgabe-Daten aufweist, die über das Ethernet-Netzwerk gesendet werden sollen, und ein erstes Rückgabe-Sicherheits-Feld aufweist; der Rückgabe-Frame ein zweites Rückgabe-Sequenzkennzeichnungs-Feld mit einer zweiten Rückgabe-Sequenzkennzeichnung aufweist und ein zweites Rückgabe-Daten-Feld mit zweiten Rückgabe-Daten aufweist, die über das Ethernet-Netzwerk gesendet werden sollen, und ein zweites Rückgabe-Sicherheits-Feld aufweist; wobei das erste Rückgabe-Sicherheits-Feld einen ersten verschlüsselten Hash-Wert aufweist, der über die Rückgabe-Sequenzkennzeichnung und die ersten Rückgabe-Daten unter Verwendung des eindeutigen Kennzeichnungsschlüssels berechnet wird; und wobei das zweite Rückgabe-Sicherheits-Feld einen zweiten verschlüsselten Hash-Wert aufweist, der über die Rückgabe-Sequenzkennzeichnung und die zweiten Rückgabe-Daten unter Verwendung des eindeutigen Kennzeichnungsschlüssels berechnet wird.
  27. Ethernet-Interfacemodul nach Anspruch 26, wobei: die erste Rückgabe-Sequenzkennzeichnung die Sequenzkennzeichnung oder eine erzeugte Sequenzkennzeichnung aufweist; und die zweite Rückgabe-Sequenzkennzeichnung die Sequenzkennzeichnung oder eine erzeugte zweite Sequenzkennzeichnung aufweist.
  28. Ethernet-Interfacemodul nach Anspruch 27, aufweisend: einen Zähler, der die Anzahl von Vorfällen zählt, bei denen die erste Sequenzkennzeichnung und die zweite Sequenzkennzeichnung verwendet werden, um, jeweils entsprechend, eine erste Zählung und eine zweite Zählung zu erzeugen; und eine zweite Vorrichtung zum Modifizieren der ersten Rückgabe-Sequenzkennzeichnung und der zweiten Rückgabe-Sequenzkennzeichnung basierend auf der ersten und der zweiten Zählung, jeweils entsprechend.
  29. Ethernet-Interfacemodul, das dafür ausgebildet ist, ein Gerät mit einem Ethernet-Netzwerk zu koppeln, wobei das Ethernet-Netzwerk einen Master aufweist, das Ethernet-Interfacemodul aufweisend: einen ersten Vollduplex-Port mit einem Empfangsabschnitt und einem Sendeabschnitt; wobei der erste Vollduplex-Port dafür ausgebildet ist, Frames zwischen dem Ethernet-Netzwerk und dem Gerät zu übertragen, wobei die Frames am Ethernet-Interfacemodul empfangene Frames aufweisen; wobei jeder empfangene Frame ein Frame-Typ-Feld aufweist, um einen Frame-Typ zu kennzeichnen, und ein Befehls-Feld, das verwendet wird, um dem Gerät einen Befehl zur Verfügung zu stellen; einen ersten Pfad, der den Empfangsabschnitt des ersten Vollduplex-Ports mit dem Sendeabschnitt des ersten Vollduplex-Ports koppelt; eine Warteschlange, die in dem ersten Pfad angeordnet ist; eine Auswertevorrichtung, die mit der Warteschlange gekoppelt ist, wobei die Auswertevorrichtung ermittelt, ob ein empfangener Frame an das Ethernet-Interfacemodul adressiert ist, und ermittelt, ob das Frame-Typ-Feld einen Frame-Typ beinhaltet; wobei das Ethernet-Interfacemodul in einem ersten Modus betrieben werden kann, so dass jeder empfangene Frame zurück über den ersten Vollduplex-Port hinaus gesendet wird; wobei das Ethernet-Interfacemodul in einem zweiten Modus betrieben werden kann, so dass jeder empfangene Frame, der vorbestimmte Auswertekriterien erfüllt, zurück über den ersten Vollduplex-Port hinaus gesendet wird, und solche empfangenen Frames, die nicht die vorbestimmten Auswertekriterien erfüllen, verworfen werden; wobei der Master den empfangenen Frame erzeugt; wobei das Befehls-Feld ein oder mehrere zugeordnete Datenfelder hat, die Befehlsdaten aufweisen; wobei das Ethernet-Interfacemodul einen eindeutigen Kennzeichnungsschlüssel aufweist, der ihm zugeordnet ist; wobei dem Master der eindeutige Kennzeichnungsschlüssel bereitgestellt wird; wobei der empfangene Frame ein Sequenzkennzeichnungs-Feld und ein Sicherheits-Feld aufweist, wobei das Sequenzkennzeichnungs-Feld eine Sequenzkennzeichnung aufweist und das Sicherheits-Feld einen verschlüsselten Hash-Wert für erste Daten aufweist, die in einem der zugeordneten Datenfelder enthalten sind. wobei der verschlüsselte Hash-Wert über die Sequenzkennzeichnung und die ersten Daten von dem Master unter Verwendung des eindeutigen Kennzeichnungsschlüssels berechnet wird; wobei das Ethernet-Interfacemodul mit dem Gerät betrieben werden kann, um Felder des empfangenen Frame zu modifizieren, um den empfangenen Frame zu modifizieren, um einen Rückgabe-Frame zu erzeugen und den Rückgabe-Frame über das Ethernet-Netzwerk zu übertragen; der Rückgabe-Frame ein erstes Rückgabe-Sequenzkennzeichnungs-Feld mit einer ersten Rückgabe-Sequenzkennzeichnung aufweist und ein erstes Rückgabe-DatenFeld mit ersten Rückgabe-Daten aufweist, die über das Ethernet-Netzwerk gesendet werden sollen, und ein erstes Rückgabe-Sicherheits-Feld aufweist; das Ethernet-Interfacemodul mit dem Gerät betrieben werden kann, um Felder eines zweiten empfangenen Frame zu modifizieren, um den zweiten empfangenen Frame zu modifizieren, um einen zweiten Rückgabe-Frame zu erzeugen und den zweiten Rückgabe-Frame über das Ethernet-Netzwerk zu übertragen; der zweite Rückgabe-Frame ein zweites Rückgabe-Sequenzkennzeichnungs-Feld mit einer zweiten Rückgabe-Sequenzkennzeichnung aufweist und ein zweites Rückgabe-Daten-Feld die ersten Rückgabe-Daten aufweist, die über das Ethernet-Netzwerk gesendet werden sollen, und ein zweites Rückgabe-Sicherheits-Feld aufweist; wobei das erste Rückgabe-Sicherheits-Feld einen ersten verschlüsselten Hash-Wert aufweist, der über die Rückgabe-Sequenzkennzeichnung und die ersten Rückgabe-Daten unter Verwendung des eindeutigen Kennzeichnungsschlüssels berechnet wird; und wobei das zweite Rückgabe-Sicherheits-Feld einen zweiten verschlüsselten Hash-Wert aufweist, der über die zweite Rückgabe-Sequenzkennzeichnung und die ersten Rückgabe-Daten berechnet wird.
  30. Ethernet-Interfacemodul nach Anspruch 29, wobei: die erste Rückgabe-Sequenzkennzeichnung die Sequenzkennzeichnung oder eine erzeugte Sequenzkennzeichnung aufweist; und die zweite Rückgabe-Sequenzkennzeichnung die Sequenzkennzeichnung oder eine erzeugte zweite Sequenzkennzeichnung aufweist.
DE112015004253.9T 2014-09-20 2015-09-11 Ethernet-Interfacemodul Active DE112015004253B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/492,014 US9497025B2 (en) 2014-09-20 2014-09-20 Ethernet interface module
US14/492,014 2014-09-20
PCT/US2015/049575 WO2016044077A1 (en) 2014-09-20 2015-09-11 Ethernet interface module

Publications (2)

Publication Number Publication Date
DE112015004253T5 DE112015004253T5 (de) 2017-06-29
DE112015004253B4 true DE112015004253B4 (de) 2019-09-19

Family

ID=55526753

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112015004253.9T Active DE112015004253B4 (de) 2014-09-20 2015-09-11 Ethernet-Interfacemodul

Country Status (5)

Country Link
US (1) US9497025B2 (de)
JP (1) JP2017529033A (de)
CN (1) CN107113198B (de)
DE (1) DE112015004253B4 (de)
WO (1) WO2016044077A1 (de)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107580768B (zh) * 2015-07-17 2020-06-26 华为技术有限公司 报文传输的方法、装置和系统
US10855661B2 (en) * 2015-10-16 2020-12-01 Kasada Pty, Ltd. Dynamic cryptographic polymorphism (DCP) system and method
US10540219B2 (en) * 2017-09-13 2020-01-21 Toshiba Memory Corporation Reset and error handling in application specific integrated circuits
US10528414B2 (en) * 2017-09-13 2020-01-07 Toshiba Memory Corporation Centralized error handling in application specific integrated circuits
CN107943745A (zh) * 2017-11-24 2018-04-20 中国航空工业集团公司西安航空计算技术研究所 一种用于片上处理器中以太网控制器的验证方法
CN108415874B (zh) * 2018-05-02 2024-02-06 武汉华讯国蓉科技有限公司 一种基于eim总线的接口扩展设备和方法
US11241084B2 (en) 2018-06-11 2022-02-08 Colgate-Palmolive Company Oral care device
EP3801125A1 (de) 2018-06-11 2021-04-14 Colgate-Palmolive Company Mundpflegevorrichtung
CN114174953B (zh) 2019-06-28 2024-06-25 亚德诺半导体国际无限责任公司 低复杂度以太网节点(len)一个端口
CN112491632A (zh) * 2020-12-15 2021-03-12 安徽皖通邮电股份有限公司 一种自动调节以太网端口协商模式的系统和方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140269688A1 (en) * 2013-03-15 2014-09-18 Innovasic, Inc. Packet data traffic management apparatus
US20140269306A1 (en) 2013-03-15 2014-09-18 Andrew David Alsup Ethernet traffic management apparatus

Family Cites Families (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5857075A (en) * 1995-01-11 1999-01-05 Sony Corporation Method and integrated circuit for high-bandwidth network server interfacing to a local area network
US5909549A (en) * 1996-11-12 1999-06-01 International Business Machines Corporation Network management system wherein the managed device reestablishes a connection to a management station after detecting a broken connection
US6185203B1 (en) * 1997-02-18 2001-02-06 Vixel Corporation Fibre channel switching fabric
US6590901B1 (en) * 1998-04-01 2003-07-08 Mosaid Technologies, Inc. Method and apparatus for providing a packet buffer random access memory
US7933295B2 (en) * 1999-04-13 2011-04-26 Broadcom Corporation Cable modem with voice processing capability
US6701489B1 (en) * 1999-05-07 2004-03-02 Advanced Micro Devices, Inc. Method and apparatus for changing register implementation without code change
US6463478B1 (en) * 1999-05-21 2002-10-08 Advanced Micro Devices, Inc. Method and apparatus for identifying runt data frames received by a network switch
US7457857B1 (en) * 1999-05-26 2008-11-25 Broadcom Corporation Method and apparatus for a network hub to diagnose network operation and broadcast information to a remote host or monitoring device
US6647117B1 (en) * 1999-08-16 2003-11-11 Nortel Networks Limited Continuity of voice carried over DSL during power failure
US6741559B1 (en) * 1999-12-23 2004-05-25 Nortel Networks Limited Method and device for providing priority access to a shared access network
US6985560B1 (en) * 2000-04-26 2006-01-10 Agilent Technologies, Inc. Apparatus and method for enabling automatic measurement of performance in a telephony communication system
WO2001095565A2 (en) * 2000-06-02 2001-12-13 Inrange Technologies Corporation Address conversion method and device in a fibre channel switch
US7346778B1 (en) * 2000-11-29 2008-03-18 Palmsource, Inc. Security method and apparatus for controlling the data exchange on handheld computers
US8218555B2 (en) * 2001-04-24 2012-07-10 Nvidia Corporation Gigabit ethernet adapter
US7239636B2 (en) * 2001-07-23 2007-07-03 Broadcom Corporation Multiple virtual channels for use in network devices
US7085850B2 (en) * 2001-08-22 2006-08-01 International Business Machines Corporation Stateless message processing scheme for network processors interactions
US7639655B2 (en) * 2001-12-22 2009-12-29 Scientific-Atlanta, Inc. Ethernet switch interface for use in optical nodes
US20040193763A1 (en) 2003-03-28 2004-09-30 Fujitsu Limited Inter-bus communication interface device and data security device
US7535930B2 (en) * 2003-04-10 2009-05-19 Samsung Electronics Co., Ltd. GEM frame structure showing payload type of frame and method for processing data thereof
US7660322B2 (en) * 2003-12-11 2010-02-09 International Business Machines Corporation Shared adapter
JP2005236447A (ja) * 2004-02-18 2005-09-02 Nec Access Technica Ltd 輻輳制御方式および輻輳制御装置
US7492763B1 (en) * 2004-07-16 2009-02-17 Applied Micro Circuits Corporation User-specified key creation from attributes independent of encapsulation type
EP1657888A1 (de) 2004-11-16 2006-05-17 Abb Research Ltd. Empfang von redundanten und nicht redundanten Rahmen
US7406550B2 (en) * 2005-01-27 2008-07-29 Innovasic, Inc Deterministic microcontroller with configurable input/output interface
US7525922B2 (en) * 2005-04-01 2009-04-28 Cisco Technology, Inc. Duplex mismatch testing
US7649912B2 (en) 2005-04-27 2010-01-19 Rockwell Automation Technologies, Inc. Time synchronization, deterministic data delivery and redundancy for cascaded nodes on full duplex ethernet networks
US8948199B2 (en) * 2006-08-30 2015-02-03 Mellanox Technologies Ltd. Fibre channel processing by a host channel adapter
US7710895B2 (en) * 2007-03-14 2010-05-04 Broadcom Corporation Selective mode PHY device and method for managing power utilization using same
US20080240103A1 (en) * 2007-03-30 2008-10-02 Andreas Schmidt Three-port ethernet switch with external buffer
US8559429B2 (en) 2007-06-11 2013-10-15 International Business Machines Corporation Sequential frame forwarding
US8000329B2 (en) * 2007-06-29 2011-08-16 Alcatel Lucent Open platform architecture for integrating multiple heterogeneous network functions
WO2009130917A1 (ja) * 2008-04-24 2009-10-29 富士通株式会社 ノード装置及びプログラム
US8341308B2 (en) * 2008-06-09 2012-12-25 International Business Machines Corporation Method and apparatus for a fibre channel N-port ID virtualization protocol
TWI414165B (zh) * 2008-09-02 2013-11-01 Realtek Semiconductor Corp 通訊系統中之傳收器及其啟動方法
US8218442B2 (en) * 2008-09-11 2012-07-10 Juniper Networks, Inc. Methods and apparatus for flow-controllable multi-staged queues
US8213309B2 (en) * 2008-12-22 2012-07-03 Broadcom Corporation Systems and methods for reducing latency and reservation request overhead in a communications network
US8332363B2 (en) 2009-04-24 2012-12-11 Hitachi, Ltd. Storage system and data management method of the same
EP2537322B1 (de) * 2010-02-16 2014-12-17 iRobot Corporation Internes kommunikationssystem für einen mobilen roboter
JP5143199B2 (ja) * 2010-08-24 2013-02-13 株式会社バッファロー ネットワーク中継装置
US8520534B2 (en) * 2011-03-03 2013-08-27 Alcatel Lucent In-service throughput testing in distributed router/switch architectures
US20130243423A1 (en) 2011-07-26 2013-09-19 Ziqiang He Ethernet hub and method of use
US20130064246A1 (en) * 2011-09-12 2013-03-14 Cisco Technology, Inc. Packet Forwarding Using an Approximate Ingress Table and an Exact Egress Table
WO2013086287A1 (en) 2011-12-07 2013-06-13 Adc Telecommunications, Inc. Systems and methods for using active optical cable segments
US8939798B2 (en) * 2011-12-12 2015-01-27 Commscope, Inc. Of North Carolina Local area networks for intelligent patching system controllers and related methods, controllers and communications interfaces
CN103378985B (zh) * 2012-04-26 2017-12-29 中兴通讯股份有限公司 数据驱动的故障检测方法、反射应答器和反射目的地设备
US20130329609A1 (en) * 2012-06-07 2013-12-12 Infinet Finacial Systems Voice conference unit selection
US8792494B2 (en) * 2012-09-14 2014-07-29 International Business Machines Corporation Facilitating insertion of device MAC addresses into a forwarding database
CN103092106B (zh) * 2012-12-25 2015-05-13 中国航空工业集团公司第六三一研究所 一种远程智能接口单元及控制方法
US9197584B2 (en) * 2013-08-05 2015-11-24 Globalfoundries Inc. Increasing efficiency of data payloads to data arrays accessed through registers in a distributed virtual bridge
US9391924B2 (en) * 2014-07-25 2016-07-12 Innovasic, Inc. Ethernet interface module
US9935898B2 (en) * 2014-09-20 2018-04-03 Innovasic, Inc. Ethernet interface module

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140269688A1 (en) * 2013-03-15 2014-09-18 Innovasic, Inc. Packet data traffic management apparatus
US20140269306A1 (en) 2013-03-15 2014-09-18 Andrew David Alsup Ethernet traffic management apparatus

Also Published As

Publication number Publication date
CN107113198A (zh) 2017-08-29
US20160087675A1 (en) 2016-03-24
JP2017529033A (ja) 2017-09-28
DE112015004253T5 (de) 2017-06-29
US9497025B2 (en) 2016-11-15
WO2016044077A1 (en) 2016-03-24
CN107113198B (zh) 2021-01-19

Similar Documents

Publication Publication Date Title
DE112015004253B4 (de) Ethernet-Interfacemodul
DE112015004243B4 (de) Ethernet-Interfacemodul
EP2523397B1 (de) Verfahren und Vorrichtung zum Betrieb von Windpark-Verbundnetzen mit verbessertem Daten-Übertragungsprotokoll
EP1941674B1 (de) Teilnehmer und kommunikationscontroller eines kommunikationssystems und verfahren zur realisierung einer gateway-funktionalität in einem teilnehmer eines kommunikationssystems
DE69636547T2 (de) Integrierter Repeater
DE60118799T2 (de) Netzwerksvorrichtung zum selektiven datenzeitschlitz verwerfen
DE102012215765A1 (de) Gateway-Modul für ein Kommunikationssystem, Kommunikationssystem und Verfahren zur Übertragung von Daten zwischen Teilnehmern eines Kommunikationssystems
EP2538619B1 (de) Verfahren zur Übertragung von Datenpaketen
EP2223472B1 (de) Kommunikationssystem
EP3211838B1 (de) Redundant betreibbares industrielles kommunikationssystem, verfahren zu dessen betrieb und funk-transceiver-station
DE102017125086A1 (de) Datenübertragungsverfahren und Kommunikationsnetzwerk
DE60125300T2 (de) Schaltungsanordnung zum Übertragen von Daten mit Datenpacketierung und-Depacketierung
WO2020157086A1 (de) Teilnehmerstation für ein serielles bussystem und verfahren zur kommunikation in einem seriellen bussystem
US9391924B2 (en) Ethernet interface module
EP3854035B1 (de) Datenübertragungsverfahren und automatisierungskommunikationsnetzwerk
DE102019219475B4 (de) Verfahren zur Optimierung der Zeitsynchronisation zwischen über ein Kommunikationsnetzwerk verbundenen Netzwerkgeräten
DE10004425A1 (de) Netzwerk sowie Netzwerkteilnehmer, insbesondere Feldgerät, für ein derartiges Netzwerk
EP3963839B1 (de) Netzwerkverteiler, automatisierungsnetzwerk und verfahren zur datenübertragung in einem automatisierungsnetzwerk
DE19961644A1 (de) Verfahren und System zur Steuerung und zum Austausch von Daten für multimediale Geräte sowie dafür geeignetes Gerät
DE102005029656B3 (de) Verfahren zur Kopplung von Busteilnehmern eines Automatisierungssystems und frei programmierbarer Kommunikations-Prozessor hierfür
EP1371193B1 (de) Electronical switch and method for a communication interface with cut through buffer memory
DE10296699T5 (de) Vorrichtung und Verfahren für die skalierbare, leitungsratenprotokoll-unabhängige Vermittlung zwischen mehreren Fernzugriffspunkten in einem drahtlosen lokalen Netz
DE10141187A1 (de) Elektronischer Schaltkreis und Verfahren für eine Kommunikationsschnittstelle mit Zwischenspeicherung
WO2016044062A1 (en) Ethernet interface module
DE102019125270A1 (de) Verfahren zum Verarbeiten von Telegrammen in einem Automatisierungsnetzwerk, Automatisierungsnetzwerk, Masterteilnehmer und Slaveteilnehmer

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04L0012260000

Ipc: H04L0043000000