DE112015004253B4 - Ethernet-Interfacemodul - Google Patents
Ethernet-Interfacemodul Download PDFInfo
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B3/00—Line transmission systems
- H04B3/02—Details
- H04B3/20—Reducing echo effects or singing; Opening or closing transmitting path; Conditioning for transmission in one direction or the other
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/10—Current supply arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/02—Details ; arrangements for supplying electrical power along data transmission lines
- H04L25/0264—Arrangements for coupling to transmission lines
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/35—Switches specially adapted for specific applications
- H04L49/351—Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L5/00—Arrangements affording multiple use of the transmission path
- H04L5/14—Two-way operation using the same type of signal, i.e. duplex
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3236—Cryptographic 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.
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. Ethernet-Bitzugriffsschicht (physical access layer, PHY) und entsprechende Magnetbauelemente, Stecker und andere Hardware.
- 2. Ethernet-Zugriffssteuerung (media access control, MAC) um Pakete in digitaler Form zwischen dem Gerät und der PHY zu kommunizieren.
- 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. 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. 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 - 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 und1J jeweils einen Frame darstellen; -
2 ein Blockdiagramm eines Ethernet-Interfacemoduls ist; -
3 ein Flussdiagramm ist; -
4 und5 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 in1A gezeigt. Das Format100A ist zur Illustration gedacht und der Fachmann erkennt, dass dies nicht beschränkend ist. Das erläuternde Format100A weist ein Zieladressfeld101 , ein Quelladressfeld103 , ein Ethertyp-Kennzeichnungsfeld105 , ein Ethernet-Interfacemodul (EIM) -Befehlsfeld 107, ein Paketdatenfeld109 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 Zieladressfeld101 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 Paketdatenfeld111 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 Feld113 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 Feld113 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 in1B gezeigt. Das Paket-Frame-Format100 ist erläuternd und der Fachmann erkennt, dass es nicht einschränkend ist. Das erläuternde Format enthält ein Zieladressfeld101 , ein Quelladressfeld103 , ein VLAN (Virtual Local Area Network) -Header-Feld113 , ein Ethertyp-Kennzeichnungsfeld105 , ein Ethernet-Interfacemodul (EIM) -Befehlsfeld107 , ein Datenfeld109 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 Befehlsfeld107 16-Bit lang und das Datenfeld109 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 in2 gezeigt. Das Ethernet-Interfacemodul200 weist einen ersten Vollduplex-Port201 mit einer ersten PHY201a und einer ersten MAC201b auf. Das Ethernet-Interfacemodul200 weist ferner einen zweiten Vollduplex-Port203 mit einer zweiten PHY203a und einer zweiten MAC203b auf. Jeder Port201 ,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 Ports201 mit dem Sendeabschnitt des Ports203 . Ein zweiter Pfad207 koppelt den Empfangsabschnitt des Ports203 mit dem Sendeabschnitt des Ports201 . In dem ersten Pfad205 ist eine erste Warteschlange209 angeordnet. In dem zweiten Pfad207 ist eine zweite Warteschlange211 angeordnet. Jede Warteschlange209 ,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 Ports201 ,203 empfangen wird, als ein Sende-Frame an den anderen Port203 ,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 Warteschlangen201 ,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 Auswertelogik213 , eine Lese-/Schreib-Logik215 , ein Register/Speicher217 und ein Gerät-Interface219 auf. Die Auswertelogik213 und die Lese-/Schreib-Logik215 können jeweils mit einer dedizierten Logik oder in tiefliegenden Software auf einem programmierbaren Gerät implementiert werden. Das Gerät-Interface219 stellt ein Interface an ein Gerät1000 bereit. Datenübertragungen zwischen Gerät1000 und empfangene Frames finden über die Warteschlangen209 ,211 , Lese-/Schreib-Logik215 , Speicher217 und Gerät-Interface219 statt. - Die Größe und Komplexität der Auswertelogik
213 , Lese-/Schreib-Logik215 , Speicher217 und einem Gerät-Interface219 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-Interface219 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ät1000 speichern. Die Auswertelogik213 überwacht jeden empfangenen Frame sowie er die erste Warteschlange209 oder die zweiten Warteschlange211 durchläuft und vergleicht die Zieladresse, die in dem Zieladressfeld101 des empfangenen Frame enthalten ist, mit den Adressen, die dem Gerät1000 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-Interfacemoduls200 in einen Netzwerk. Bei dem Zwei-Port-Ethernet-Interfacemodul200 , wie es in2 gezeigt ist, wenn nur ein Port der zwei Ports201 ,203 verbunden ist (z.B. eine Ethernet-Verbindung) hat, dann arbeitet das Ethernet-Interfacemodul200 als ein Endknoten. Wenn bei dem Ethernet-Interfacemodul200 beide Ports201 ,203 verbunden sind, arbeitet es als ein Feldknoten. - Die Lese-/Schreib-Logik
215 reagiert auf die Auswertelogik213 , um Datenpakete von einem empfangenen Frame zum Speichern im Speicher217 und Übertragung an das Gerät1000 über das Gerät-Interface219 zu lesen und um Datenpakete vom Gerät1000 zu schreiben, die über das Interface219 empfangen werden und im Speicher217 gespeichert werden. - Wenn das Ethernet-Interfacemodul
200 als ein Feldknoten arbeitet, während ein Frame an einem der Ports201 ,203 empfangen wird, werden die ersten sechs Bytes des empfangenen Frame in der entsprechenden Warteschlange209 ,211 gespeichert und werden von der Auswertelogik203 bezüglich einer Übereinstimmung mit der MAC-Adresse des Geräts1000 und einer oder mehreren Multicast-Adressen, die von dem Gerät1000 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-Interfacemodul200 gespeichert sind. - Sowie die Frame-Bytes eines empfangenen Frame an einem der Ports
201 ,203 empfangen werden und in die entsprechende Warteschlange209 ,211 eingereiht werden, wird der empfangene Frame dem anderen Port203 ,201 als ein gesendeter Frame bereitgestellt, und ein Senden des Frame an dem anderen Port203 ,201 beginnt. Sowie jeder Frame eine Warteschlange209 ,211 durchläuft, überprüft die Auswertelogik213 das Ethertyp-Feld des empfangenen Frame. Wenn der Ethertyp, der in dem Ethertyp-Feld enthalten ist, mit dem Ethertyp des Ethernet-Interfacemoduls200 übereinstimmt, dann werden die nachfolgenden Abschnitte des empfangenen Frame von der Auswertelogik213 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 Speicher219 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 Speicher219 ersetzt. - Unter Verweis auf
3 wird nun der grundlegende Betrieb des Ethernet-Interfacemoduls200 gezeigt. In3 wird angenommen, dass im Schritt301 ein empfangener Frame am Port201 empfangen wird. Die ersten Bytes aus dem empfangenen Frame werden in die Warteschlange209 eingereiht und die Auswertelogik213 ermittelt im Schritt303 , ob das Zieladressfeld101 die Adresse des Geräts1000 enthält. Wenn der empfangene Frame die Zieladresse des Geräts1000 nicht enthält, ermittelt die Auswertelogik213 dann im Schritt305 , ob das Zieladressfeld101 eine globale Multicast-Adresse enthält. Wenn der empfangene Frame keine globale Multicast-Adresse enthält, ermittelt die Auswertelogik213 im Schritt307 , ob das Zieladressfeld101 eine sekundäre Multicast-Adresse für das Gerät1000 enthält. Wenn im Schritt307 festgestellt wird, dass das Zieladressfeld101 keine sekundäre Multicast-Adresse für das Gerät1000 enthält, ermittelt die Auswertelogik213 im Schritt309 , ob das Ethernet-Interfacemodul200 ausgewählt wurde ein Endknoten oder ein Feldknoten zu sein. Falls das Ethernet-Interfacemodul200 ein Endknoten ist, verwirft das Ethernet-Interfacemodul200 den empfangenen Frame im Schritt311 . Falls das Ethernet-Interfacemodul200 nicht ein Endknoten ist, d.h., ein Feldknoten ist, dann leitet das Ethernet-Interfacemodul200 den empfangenen Frame unverändert als einen gesendeten Frame an den Port203 weiter. Dies ermöglicht, dass Ethernet-Verkehr, der dem Gerät1000 nicht zugeordnet ist, das Netzwerk mit minimaler und fester bestimmbarer Verzögerung durchläuft. - Falls die Auswertelogik
213 in einem der Schritte303 ,305 ,307 ermittelt, dass es eine Übereinstimmung bei der Zieladresse gibt, ermittelt die Auswertelogik213 als Nächstes im Schritt315 , ob das Ethernet-Interfacemodul200 ein Endknoten oder ein Feldknoten ist. Wenn als Ergebnis des Schritts315 festgestellt wird, dass das Ethernet-Interfacemodul200 ein Endknoten ist, bewirkt die Auswertelogik213 im Schritt317 , dass das Zieladressfeld101 mit der Quelladresse überschrieben wird, die in dem Quelladressfeld103 enthalten ist, und die Auswertelogik213 bestimmt als Nächstes, ob das Ethertyp-Feld107 den Ethertyp des Geräts1000 enthält. Falls Ethertyp-Feld107 den Ethertyp des Geräts1000 enthält und falls im Schritt321 ermittelt wird, dass das Ethernet-Interfacemodul200 ein Endknoten ist, verarbeitet das Ethernet-Interfacemodul den Befehl, der in dem Befehlsfeld109 enthalten ist, während es den empfangenen Frame an den Empfangsabschnitt des Ports201 reflektiert. Wenn das Ethertyp-Feld107 den Ethertyp des Geräts1000 enthält und wenn im Schritt321 ermittelt wird, dass das Ethernet-Interfacemodul200 kein Endknoten ist, verarbeitet das Ethernet-Interfacemodul200 den Befehl, der in dem Befehlsfeld109 enthalten ist, und schließt das Senden eines gesendeten Frame im Schritt325 ab. - Falls die Auswertelogik
213 im Schritt319 ermittelt, dass das Ethertyp-Feld107 nicht den Ethertyp des Geräts1000 enthält, ermittelt die Auswertelogik213 im Schritt309 , ob oder nicht das Ethernet-Interfacemodul200 ein Endknoten ist. Wenn ermittelt wird, dass das Ethernet-Interfacemodul200 ein Endknoten ist, dann wird im Schritt311 der Rahmen verworfen. Wenn ermittelt wird, dass das Ethernet-Interfacemodul200 kein Endknoten ist, wird der unveränderte empfangene Frame an den Port203 gesendet. - Falls die Auswertelogik
213 im Schritt315 ermittelt, dass das Ethernet-Interfacemodul200 kein Endknoten ist, dann ermittelt die Auswertelogik213 , ob das Zieladressfeld101 des empfangenen Frame eine Multicast-Adresse enthält, die dem Gerät1000 zugeordnet ist. Wenn das Zieladressfeld eine Multicast-Adresse enthält, die dem Gerät1000 zugeordnet ist, dann wird der empfangene Frame an den Port203 weitergeleitet und die Auswertelogik213 ermittelt im Schritt319 , ob das Ethertyp-Feld107 einen Ethertyp enthält, der dem Ethernet-Interfacemodul200 zugeordnet ist. Das Verarbeiten vom Schritt319 schreitet wie oben beschrieben fort. - Falls die Auswertelogik
213 im Schritt315 ermittelt, dass das Ethernet-Interfacemodul200 kein Endknoten ist und die Auswertelogik213 im Schritt327 ermittelt, dass das Zieladressfeld101 keine Multicast-Adresse enthält, die dem Gerät1000 zugeordnet ist, dann bewirkt die Auswertelogik213 im Schritt329 , dass die Adresse in dem Zieladressfeld101 des empfangenen Frame mit einer Multicast-Adresse geschrieben wird, und im Schritt320 beginnt das Ethernet-Interfacemodul200 mit einem Weiterleiten des empfangenen Frame an den Port203 . Die Auswertelogik213 ermittelt dann im Schritt319 , ob der Ethertyp im Ethertyp-Feld107 zu dem Ethertyp des Ethernet-Interfacemoduls200 passt. Die Verarbeitung vom Schritt319 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-Feld113 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 Ports201 ,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 Befehlsfelds109 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-Feld105 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 Zieladressfeld101 übereinstimmt und das VLAN-Feld105 ü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-Feld105 zu reflektieren. Zusätzlich kann es programmiert sein, die VLAN-Adresse im VLAN-Feld105 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ät1000 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-Interfacemoduls200 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-Interface219 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-Interfacemodul200 kann ein mehrfaches Puffern von ausgehenden Daten bereitstellen, um einen konsistenten Datensatz für das Senden zu garantieren. Das Ethernet-Interfacemodul200 kann auch Status-Flags bereitstellen um anzuzeigen, dass gerade Daten an dem Gerät-Interface219 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-Interfacemodul200 ferner dafür ausgebildet, zwischen Frame-Typen zu unterscheiden. Jeder Frame100 kann ein Typfeld117 aufweisen, wie es in1C gezeigt ist. Für das Typfeld117 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 - 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 Typfeld117 und dem Befehlsfeld107 . Durch Bereitstellen dieser Unterscheidung können einfache Geräte1000 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 Frame100D in1D gezeigt ist, in allen Frames100D enthalten, die diese Protokollerweiterung unterstützen. Dann verwendet jedes Ethernet-Interfacemodul200 , das einen Frame modifiziert, seine eigene Adresse als die Quelladresse, und das Endknoten- oder Reflektor-Ethernet-Interfacemodul200 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-Interfacemodul200 . 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-Interfacemodul200 verwendet dann die Rückgabeadresse als die Zieladresse, wenn der Frame zurückkommt. - Für einen grundlegenden Frame
100A , wie er in1A gezeigt ist, muss das Endknoten-Ethernet-Interfacemodul200 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 Frame100E 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-Interfacemodul200 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 Master401 gehen, nicht modifizieren. Ein Schreib-Befehl (WRITE command) hat ein zugeordnetes Empfangsfeld, das von dem Gerät100 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 Master401 wird mit den Schlüsseln von allen Ethernet-Interfacemodulen200 ausgestattet, mit denen er kommunizieren wird. Die grundlegenden Frame-Protokoll-Formate bleiben unverändert, stattdessen werden zusätzliche Daten in das Befehlsdatenfeld109 aufgenommen. Ein Frame100F mit zusätzlichen Daten ist in1F 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 Master401 einen kryptografischen Hash über die Sequenz-ID121a ,121b und das begleitende Datenfeld109a ,109b . Dieses kryptografische Hash wird dann in den Frame100F nach den Daten in die Sicherheits-Hash-Wert-Felder123a ,123b eingefügt. Wenn ein Ethernet-Interfacemodul200 die Daten erhält, berechnet es dieselbe Hash-Funktion über die Sequenz-ID in Feldern121a ,121b der Sequenz-ID und der Daten in den Datenfeldern109a ,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 Master401 empfangene verwendet und es wird ein kryptografischer Hash über die Sequenz-ID und die Daten erzeugt, die an den Master401 gesendet werden sollen. Wenn Frame100F einschließlich des entsprechenden Lese-Befehls das Ethernet-Interfacemodul200 durchläuft, werden die Felder der Sequenz-ID, die Datenfelder und Hash-Felder übertragen und bei Ankunft am Master401 ü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 Master401 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-Interfacemoduls200 gesendet. Dies erreicht man mittels einer integrierten Hardware-Implementierung, wie es nachfolgend im Zusammenhang mit den4 und5 erläutert wird. - Der Master
401 ermittelt einen Ausgangswert und codiert ihn in einen Frame als zwei Datenblöcke109a ,109b in1F . Jeder Datenblock109a ,109b wird dann mit Sequenz-IDs in den Feldern121a ,121b und einem Verschlüsselungs-Hash in den Feldern123a ,123b wie oben beschrieben gesichert. Zwei verschiedene Verschlüsselungsschlüssel können gewählt werden. Der Frame100F wird dann an ein Ethernet-Interfacemodul200 gesendet. Alternativ hierzu können zwei getrennte mit Sicherheitsdaten codierte Datenblöcke109a ,109b in zwei verschiedenen Frames gesendet werden. - Nach dem Empfang des Frame oder der Frames
100F am Ethernet-Interfacemodul200 werden die zwei mit Sicherheitsdaten codierte Blöcke in den Feldern109a ,109b von der Lese-/Schreib-Logik215 verarbeitet was mit mehr Detail in den4 und5 gezeigt ist. Zu Referenzzwecken ist Frame100F in jedem von4 und5 mit der Verarbeitung der Datenfelder109a ,109b gezeigt, die durch Pfeile4500a ,4500b gekennzeichnet ist. Die sicherheitscodierten Datenblöcke in den Feldern109a ,109b werden bei den Blöcken4501a ,4501b empfangen. Sicherheitscodierte Datenblöcke in den Feldern109a ,109b werden gegen den verschlüsselten Hash-Wert oder -Werte in den Feldern123a ,123b durch die Hash-Funktionsausführung4503a ,4503b überprüft und werden in separate Register4505a ,4505b geladen, nachdem die Umformung vollständig ist. Die verschlüsselten Hash-Werte in den zwei Registern4505a ,4505b werden vom Vergleicher4507 verglichen und, falls sie übereinstimmen, wird die Ausgabe dem I/O-Multiplexer zugeführt und an das Gerät1000 ausgegeben. Wenn sie nicht übereinstimmen, dann werden der Frame oder die Frames zurückgewiesen und ein Standard-Hash-Wert, der im Block4511 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ät1000 empfangen werden, in zwei getrennte Register605a ,605b . Die eingehenden Frame-Daten, die an den Master401 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 Master401 . 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 Master401 als Ziel hat. - Beim Empfang des eingehenden Frame
100F beim Master401 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 den6 ,7 und8 gezeigt. -
6 zeigt eine beispielhafte Topologie400 mit vollständiger Schleife (full loop). Der Master401 überträgt einen Frame von einem seiner Ports401a und empfängt denselben Frame nachdem Modifikationen durch Ethernet-Interfacemodule403 ,405 ,407 ,409 ,411 ,413 ,415 durchgeführt wurden an seinem anderen Port401b . Die Übertragung an und von dem Nicht-Ethernet-Interfacemodul-Knoten415 ist so, als wären die Geräte der Ethernet-Interfacemodule403 ,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 Master401 einen Frame, der durch die verschiedenen Ethernet-Interface Geräte503 ,505 ,507 ,509 modifiziert wird. Das letzte Ethernet-Interface-Gerät509 in der Linie, bei dem nur ein Port verbunden ist, ersetzt die Zieladresse in dem Zieladressfeld101 eines empfangenen Frame mit der Adresse des Master401 , verwendet seine eigene Adresse als die Quelladresse in dem Quelladressfeld103 und sendet den empfangenen Frame auf diese Weise modifiziert als einen gesendeten Frame zurück an den Master401 . - Bei dem Beispiel gemäß
8 sind die Ethernet-Interfacemodule603 ,607 ,609 ,611 615 über ein Standard-Ethernet-Netzwerk600 mit einer Anzahl von Switches605 und anderen Gerättypen613 ,617 , die mit einem Master401 verbunden sind, verteilt. Das geschaltete Netzwerk600 arbeitet ähnlich zu einer Anzahl von reflektierenden Linien, wobei jedes reflektierende Gerät Pakete zurück an den Master401 sendet. Zum Beispiel, ein Multicast-Ethernet-Interfacemodul-Frame, der vom Master401 gesendet wird, der dafür bestimmt ist, von dem Ethernet-Interfacemodul603 vor dem Switch605 verarbeitet zu werden, wird über mehrere Pfade zu mehreren Reflektoren607 ,609 ,615 weitergeleitet. Dies resultiert in vielen Kopien eines empfangenen Frame, der an dem Master401 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 Feld105 der VLAN ID verwendet werden, um einen Frame an einen einzelnen Reflektor607 ,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 Befehlsfeld109 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-Interfacemoduls200 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-Interfacemodul200 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-Interfacemodul200 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-Frame800 ist in10 gezeigt. Jedes der Felder101 ,103 ,105 ,107 ,113 ist in Verbindung mit1A 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-Feld811 enthält eine maximale Zählung, die in dem aktuellen Entdeckungs-Frame untergebracht werden kann. Das Zählfeld813 enthält einen Index des nächsten Geräts, das entdeckt werden soll. Die Felder817 -0 ,817 -1 , ... 817-n enthalten die folgenden Informationen, die von den entdeckten Geräten gefüllt werden. Die Felder817 -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-Feld813 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-Feld815 als ein Offset in den Frame800 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 bei72 gesendet. Wenn er voll zurückkommt, wird ein nächster Frame gesendet mit einem Start-Zähler bei73 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-Interfacemodul200 die Möglichkeit hat, einen bestimmten Frame zu erzeugen, wenn es eine Netzwerkverbindung an einem der Ports201 ,203 verliert. Der Frame ist an den Master401 oder an eine spezifische Multicast-Adresse gerichtet, wenn es nicht anders programmiert ist. Der Frame enthält Informationen über die ID des Ethernet-Interfacemoduls200 und den Port, der seine Netzwerkverbindung verloren hat. Ein ähnlicher Frame wird von dem Ethernet-Interfacemodul200 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 Master401 unmittelbar jedes Ethernet-Interfacemodul200 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 Master401 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-Interfacemodul200 nutzt. Dieses übliche Ethernet-Gerät wird nachfolgend als der Reflektor bezeichnet. Dies erreicht man, indem man das letzte Ethernet-Interfacemodul200 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-Interfacemodul200 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-Frame100G , wie es in1G gezeigt ist. Der Frame100G weist die Adresse des Ethernet-Interfacemoduls200 im Zieladressfeld101 und die Adresse des Masters401 in dem Quelladressfeld103 auf. Der Frame100G weist ferner ein IP Header-Feld125 und ein ICMP-Echoanforderung-Header-Feld127 auf. Ein PING-Nutzlast-Feld100X ist auch im Frame100G enthalten. Das Nutzlast-Feld100X enthält einen vollständigen Ethernet-Frame. Das Ethernet-Interfacemodul200 leitet einen modifizierten PING-Kapselung-Frame100H , wie in1H gezeigt, über seinen Downstream-Port weiter. Im Frame100H , wird der Frame100G durch ersetzen der Zieladresse im Feld101 des Rahmens100G mit der Adresse des Standard-Ethernet-Geräts ersetzt, die während des Setups bereitgestellt wird, indem die Quelladresse im Feld103 mit seiner eigenen MAC-Adresse ersetzt wird, und durch ein Ersetzen einer neu berechneten FCS im FCS-Feld111 . Der Rest des Frames100G mit dem PING-Nutzlast-Inhalt im PING-Nutzlast-Feld111 bleibt unverändert in1H . - Im PING-Kapselung-Modus empfängt das Ethernet-Interfacemodul
200 eine Echoantwort oder PONG-Frame100J , wie in1 J gezeigt, der an seine eigene Unicast-MAC-Adresse gerichtet ist und am Downstream-Port empfangen wird. Das Ethernet-Interfacemodul200 verwirft die ersten SH-Bytes des Frame plus zusätzliche 4 Bytes, falls ein VLAN-Header vorhanden ist, und behandelt den verbleibenden Teil des Frame100J , der im Feld100Y enthalten ist, als einen separaten Frame und leitet das Feld100Y über den Upstream-Port weiter, wobei eine neue FCS im Feld111 auf den Frame im Feld100Y 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-Interfacemodul20 adressiert ist, verarbeitet das Ethernet-Interfacemodul diesen. - Der Master
401 , nachdem das Ethernet-Interfacemodul200 wie oben beschrieben, konfiguriert wurde, verwendet das Netzwerk indem ein Ping-Frame-Header erzeugt wird, als wäre er von dem Ethernet-Interfacemodul200 gesendet worden, an einen Standard-Ethernet-Knoten stromabwärts von diesem, mit der Ausnahme, dass die Ethernet-Zieladresse die des Ethernet-Interfacemoduls200 ist und die Quelladresse die des Masters401 ist. Der Master401 platziert einen üblichen Ethernet-Interfacemodul200 -Frame, z.B. Frame100A , in das Nutzlast-Feld100X des Ping-Frame100G , der in1G gezeigt ist. Der Master401 überträgt den Frame an das Ethernet-Interfacemodul200 . - Der Frame
100G wird an dem Stromaufwärts-Port des Ethernet-Interfacemoduls200 empfangen und wie oben beschrieben verarbeitet, was zu einem gültigen PING-Frame100H von dem Ethernet-Interfacemodul200 an das Reflektorgerät führt. - Das Reflektorgerät verarbeitet den Frame
100H als einen üblichen PING-Frame und überträgt den resultierenden Frame100J zurück an das Ethernet-Interfacemodul200 . - Das Ethernet-Interfacemodul
200 entfernt die PING-Kapselung-Schicht von dem Frame100G , verarbeitet und leitet weiter einen üblichen Ethernet-Interfacemodul 200-Frame, der im Feld100Y enthalten ist, zurück stromaufwärts in die Richtung des Master401 und jedem anderen Ethernet-Interfacemodul200 , 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-Interfacemodul200 auf den Weg zurück durchläuft, wird alles vor dem Ping-Nutzlast-Block100Y 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-Interfacemodule200 verwendet werden, das auf diese Weise in einem vorhandenen Ethernet-Netzwerk-System verwendet wird. - Eine andere Ausführungsform eines Ethernet-Interfacemoduls
900 ist in11 gezeigt. Das Ethernet-Interfacemodul900 weist einen einzelnen Vollduplex-Port901 auf, der eine einzelne PHY901a und eine einzelne MAC901b 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-Interfacemodul900 einen einzelnen Vollduplex-Port901 , um denselben grundlegenden Betrieb wie bei einem Zwei-Port-Knoten bereitzustellen. Es gibt verschiedene Ausführungsformen von Ethernet-Interfacemodulen900 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-Interfacemodul200 mit der Ausnahme, dass Verkehr, der am Port901 ankommt, über denselben Port901 zurück weitergeleitet wird. Wenn im Reflektor-Modus, arbeitet es genauso wie ein Zwei-Port-Ethernet-Interfacemodul200 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 bis15 gezeigt. -
12 zeigt ein Zwei-Port-Ethernet-Interfacemodul200 , wobei jeder Port201 ,203 mit einem separaten Kabel1001 ,1003 über zwei Verbinder1005 ,1007 verbunden ist. Jedes Kabel1001 ,1003 weist zwei verdrillte Kabelpaare für eine Kommunikation in zwei Richtungen auf. Das Kabel1001 weist die verdrillten PaareC ,D und das Kabel1003 weist die verdrillten PaareA ,B auf. -
13 zeigt ein Ein-Port-Ethernet-Interfacemodul900 mit seinem einzelnen Port901 , der an zwei verschiedene Kabel1101 ,1103 durch zwei Stecker1105 ,1107 verbunden ist. Eine Richtung der Kommunikation ist einfach zwischen den zwei Steckern1105 ,1107 an dem Knoten verbunden ohne durch das Ethernet-Interfacemodul900 zu führen. Die andere Richtung der Kommunikation tritt in den Port901 von dem Kabel1103 ein und geht durch denselben Port901 hinaus, geführt über das andere Kabel1101 . Jedes Kabel1101 ,1103 weist zwei verdrillte Paare von Kabeln für die Kommunikation in zwei Richtungen auf. Das Kabel1101 weist verdrillte PaareC ,D und das Kabel1103 weist verdrillte PaareA ,B auf. -
14 zeigt ein Ein-Port-Ethernet-Interfacemodul900 mit einem einzelnen Stecker1205 . Das Kabel1201 weist ein einzelnes verdrilltes PaarC auf, das verwendet wird, und Kabel1203 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 der11 zu verwenden, aber auf die Leiter zu verzichten, die an der LEN-Logik vorbeiführen. -
15 zeigt ein Ein-Port-Ethernet-Interfacemodul900 mit einem einzelnen Stecker, der direkt an einen Standard-Ethernet-Port901 angeschlossen werden kann. Diese Konfiguration entspricht einem dedizierten Reflektor (stets der letzte Knoten in einer Linie), und es wird nur ein einzelnes Kabel1303 mit zwei verdrillten Paaren verwendet. - In der
16 wird eine Ethernet-Topologie eines Netzwerks1400 gezeigt, bei dem die Verkabelung gemäß13 verwendet wird. Jedes Gerät oder Feldknoten1403 ,1405 , und der Endknoten1407 hat zwei Stecker, und das Kabel hat zwei Leiter für Verkehr in beide Richtungen. Frames, die vom Master1401 erzeugt werden, werden die Leitung abwärts zu den Feldknoten1403 ,1405 und dem Endknoten1407 weitergeleitet, der der letzte Knoten in der Linie ist. Der Endknoten1407 reflektiert die Frames zurück zum Master1401 über die Feldknoten1403 ,1405 . - In
17 ist eine geschaltete Netzwerktopologie (switched network topology) des Netzwerks1500 dargestellt. Ein Ethernet-Master1501 ist bereitgestellt und kommuniziert mit einer Vielzahl von Geräten von denen einige im Block1503 dargestellt sind. Ein Standard-Ethernet-Switch1505 ist mit den Feldknoten1507 ,1517 und denn Endknoten1513 ,1515 gekoppelt. Ein zusätzlicher Feldknoten1509 ist mit dem Endknoten1511 gekoppelt und Feldknoten1517 ist mit einem beispielhaften Ethernet-Gerät1521 gekoppelt, das wiederum mit dem Endknoten1519 gekoppelt ist. Bei dieser Topologie kann ein beliebiger der Feldknoten1507 ,1509 ,1517 und ein beliebiger der Endknoten1511 ,1513 ,1515 ,1519 ein Ethernet-Interfacemodul200 oder Ethernet-Interfacemodul900 aufweisen. Zusätzlich kann das Ethernet-Gerät1521 die Funktionalität eines hier integrierten Ethernet-Interfacemoduls haben. - In der Topologie des Netzwerks
1600 , das in18 gezeigt ist, wird die Verkabelung gemäß12 verwendet. Das Netzwerk1600 gemäß16 ist eine Schleife von Feldknoten1603 ,1605 ,1607 ,1609 und einem Endknoten1611 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-Interfacemodul200 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-Interfacemodul200 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 Netzwerks1600 , das die Topologie einer reflektierenden Schleife (reflecting loop) bereitstellt, wie in16 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-Interfacemodule200 ,900 können diese Frames von anderen Protokollen wie z.B. IEEE1588 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-Interfacemodul200 ,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-Interfacemodule200 ,900 einen Takt verwenden, der aus dem Signal an dem Empfangsport201 ,901 gewonnen wird, um die Übertragung am Sendeport203 ,903 zu steuern. Dies führt dazu, dass die Zeit, die ein Paket benötigt um einen Knoten eines Ethernet-Interfacemoduls200 ,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-Interfacemodulen200 ,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-Interfacemodulen200 ,900 gesteuert werden. Wandschalter sind einfache Ethernet-Interfacemodul200 ,900 Geräte1000 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-Interfacemodulen200 ,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-Interfacemodule200 ,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-Interfacemodule200 ,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)
- 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.
- Ethernet-Interfacemodul nach
Anspruch 1 , wobei jeder Frame-Typ verwendet wird, um zu kennzeichnen, ob oder nicht der Frame vorbestimmte Felder enthält. - Ethernet-Interfacemodul nach
Anspruch 2 , wobei die vorbestimmten Felder ein oder mehrere Sequenzidentifikations-Felder und Rückgabeadresse-Felder aufweisen. - Ethernet-Interfacemodul nach
Anspruch 2 , wobei jeder Frame-Typ verwendet wird, um zu kennzeichnen, ob oder nicht der Frame ein Sequenzkennzeichnungs-Feld aufweist. - Ethernet-Interfacemodul nach
Anspruch 2 , wobei jeder Frame-Typ verwendet wird, um zu kennzeichnen, ob oder nicht der Frame ein Rückgabeadresse-Feld aufweist. - Ethernet-Interfacemodul nach
Anspruch 1 , wobei jeder Frame-Typ verwendet wird, um zu kennzeichnen, ob oder nicht der Frame ein Sequenzkennzeichnungs-Feld aufweist. - Ethernet-Interfacemodul nach
Anspruch 1 , wobei jeder Frame-Typ verwendet wird, um zu kennzeichnen, ob oder nicht der Frame ein Rückgabeadresse-Feld aufweist. - 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. - 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. - 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. - 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. - Ethernet-Interfacemodul nach
Anspruch 11 , wobei die Rückgabe-Adresse in ein Zieladressfeld des Rückgabe-Frame eingefügt wird. - 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. - 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. - Ethernet-Interfacemodul nach
Anspruch 14 , wobei die vorbestimmte Operation ein Zurückweisen des empfangenen Frame aufweist. - 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. - 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. - 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. - 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.
- 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. - 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. - 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. - 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. - 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. - 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. - 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. - 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. - 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. - 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.
- 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.
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)
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)
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)
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 |
-
2014
- 2014-09-20 US US14/492,014 patent/US9497025B2/en active Active
-
2015
- 2015-09-11 DE DE112015004253.9T patent/DE112015004253B4/de active Active
- 2015-09-11 CN CN201580057919.7A patent/CN107113198B/zh active Active
- 2015-09-11 JP JP2017534889A patent/JP2017529033A/ja active Pending
- 2015-09-11 WO PCT/US2015/049575 patent/WO2016044077A1/en active Application Filing
Patent Citations (2)
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 |