Ethernet device

By integrating transceivers and processors into Ethernet devices and utilizing Layer 2 protocol encoding request messages, configuration mismatches in the vehicle Ethernet network can be diagnosed in real time. This solves the problem of mismatch between static configuration and actual properties, enabling rapid identification and correction, and improving the accuracy and security of network configuration.

CN122073555APending Publication Date: 2026-05-22NXP BV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202511552309.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2024-11-22
Filing Date
2025-10-28
Publication Date
2026-05-22

AI Technical Summary

Technical Problem

In vehicular Ethernet networks, static pre-configuration of network configurations often does not match the actual network characteristics, making it difficult to identify configuration mismatches. Furthermore, existing protocols such as ARP scanning result in a large amount of network traffic, increasing the difficulty of development and maintenance.

Method used

By integrating transceivers and processors into Ethernet devices and utilizing Layer 2 protocol-encoded request messages, network configuration mismatches can be diagnosed in real time. This includes identifying mismatches in network configuration parameters between local and remote devices and routing diagnostic signals to network managers or security monitors to trigger reconfiguration or security mechanisms.

Benefits of technology

It enables rapid identification and correction of network configuration mismatches at runtime, reducing the difficulty of identifying configuration mismatches, improving the accuracy and security of network configuration, and reducing network traffic and maintenance costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122073555A_ABST
    Figure CN122073555A_ABST
Patent Text Reader

Abstract

An Ethernet device comprising a transceiver and one or more processors, the Ethernet device configured to: transmit a request message to a second Ethernet device statically configured on an Ethernet network, wherein the request message is encoded according to a layer 2 protocol and a payload of the request message includes a request for a second device network configuration from the second Ethernet device; receive a reply message from the second Ethernet device, wherein the reply message is encoded according to the layer 2 protocol and a payload of the reply message includes the second device network configuration of the second Ethernet device; compare the second device network configuration to a local device configuration of the Ethernet device; and route a diagnostic signal based on a mismatch between the second device network configuration and the local device configuration.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to Ethernet devices and methods for controlling Ethernet devices. Background Technology

[0002] The network configuration of automotive electronic components (also referred to herein as end nodes or end devices) is often statically pre-configured before these components are deployed in a complex in-vehicle Ethernet network. Example end nodes may include: electronic control units (ECUs) that control various vehicle functions (engine control, braking, etc.); infotainment systems; diagnostic tools; body control modules (lighting, climate control, etc.), etc.

[0003] While network configuration for each individual network device (each node) can be validated using configuration tools during the design / configuration phase, the configuration part involves the intended nature of remote / other devices on the network. This configuration may not correspond to the nature of the target device on the network, and such mismatches can typically only be identified at runtime when both participants are online. If a mismatch exists between the network configuration table and the network nature of the physical device / end node, configuration actions will not be triggered as needed. Identifying such mismatches can be difficult.

[0004] For example, the destination MAC address might not exist in the network, or local ingress filtering and policy formulation configurations (802.1Qci) might conflict with the target network flow. For instance, an Ethernet switch's L2 lookup table can trigger action based on a combination of configurations including the source port, VLAN ID, and destination MAC address of an incoming frame. If connected to a different port, a mismatch between the configured destination MAC address and the physical network (e.g., VLAN ID) will not trigger the configuration action and typically will not generate an error message. Users must then manually check hardware counters or perform a detailed analysis of communication messages and compare them to the configuration table to investigate why the configuration is not working. Many network configuration mismatches / errors are difficult to detect at the configuration time. The extra effort required for debugging when things don't go as expected is frustrating for both developers and end users.

[0005] The collection of configuration information from other network devices typically occurs implicitly during communication, and existing protocols that only collect IP / MAC addresses generate significant amounts of network traffic. For example, an Address Resolution Protocol (ARP) scan sends 255 messages with destination IP addresses ranging from xxx1 to xxx255 across the network until it receives a reply. The reply indicates the presence of a device with that IP / MAC address. Summary of the Invention

[0006] According to a first aspect of this disclosure, an Ethernet device is provided, comprising a transceiver and one or more processors, the Ethernet device being configured to:

[0007] A request message is sent to a statically configured second Ethernet device on an Ethernet network, wherein the request message is encoded according to a Layer 2 protocol and the payload of the request message includes a request for a second device network configuration from the second Ethernet device.

[0008] Receive a reply message from the second Ethernet device, wherein the reply message is encoded according to the Layer 2 protocol and the payload of the reply message includes the second device network configuration of the second Ethernet device;

[0009] Compare the network configuration of the second device with the local device configuration of the Ethernet device; and

[0010] The routing diagnostic signal is based on the mismatch between the network configuration of the second device and the configuration of the local device.

[0011] In one or more embodiments, the Ethernet device may be configured to route diagnostic signals to one or more of the following:

[0012] Network manager, which triggers network reconfiguration to correct the mismatch; and

[0013] The system security monitor is used to trigger security mechanisms.

[0014] In one or more embodiments, the Ethernet device may include a counter. The Ethernet device may be configured to:

[0015] The request signal is transmitted in response to the counter's counting signal meeting the timeout condition.

[0016] In one or more embodiments, the counting signal may be associated with packets received from a second Ethernet device.

[0017] In one or more embodiments, the counting signal may represent the number of packets received from the second Ethernet device and processed by the Ethernet device according to the local device configuration.

[0018] In one or more embodiments, the Ethernet device can be configured to:

[0019] Receive a greeting message broadcast by the second Ethernet device, wherein the greeting message is encoded according to the Layer 2 protocol; and

[0020] In response to receiving the greeting message, the request message is transmitted to the second Ethernet device.

[0021] In one or more embodiments, the Ethernet device can be configured to:

[0022] Broadcast the request message to all network devices connected to each of the multiple ports of the Ethernet device; and

[0023] Receive a reply message from each of the connected network devices.

[0024] In one or more embodiments, the Ethernet device may be configured to identify a mismatch between the local device configuration and the second device network configuration by one or more of the following:

[0025] Identify the mismatch between the network configuration parameters configured by the local device and the corresponding network configuration parameters configured by the second device; and

[0026] Identify the ports of the Ethernet device that are not connected to the remote device and have configuration entries in the local device configuration.

[0027] In one or more embodiments, the local device configuration of the Ethernet device may include one or more of the following:

[0028] One or more configuration tables of the Ethernet device; and

[0029] One or more local device registers of the Ethernet device.

[0030] In one or more embodiments, the one or more configuration tables may include one or more Layer 2 configuration tables. The one or more local device registers may include the one or more counters. The one or more local device registers may be Layer 2 device registers.

[0031] In one or more embodiments, the second device network configuration may include one or more of the following:

[0032] One or more second device configuration tables; and

[0033] Network parameters for one or two devices.

[0034] In one or more embodiments, the one or more second device configuration tables may include one or more layer 2 second device configuration tables.

[0035] In one or more embodiments, the local device configuration and the second device network configuration may include corresponding network configuration parameters.

[0036] In one or more embodiments, the corresponding network configuration parameters may include: source port, destination port, source MAC address, destination MAC address and / or VLAN ID.

[0037] In one or more embodiments, the corresponding network configuration parameters may be associated with one or more of the following advanced network features:

[0038] IEEE 802.1CB;

[0039] IEEE 802.1Qci;

[0040] IEEE 802.1Qbv;

[0041] VLAN;

[0042] PCP;

[0043] Credit-based shapers; and

[0044] PTP.

[0045] In one or more embodiments, the corresponding network configuration parameters may be related to IEEE 802.1CB, wherein:

[0046] The local device configuration includes the MAC address, VLAN ID, ingress port, and / or egress port of the second Ethernet device in the Layer 2 lookup table; and

[0047] The network configuration of the second device includes the MAC address of the second Ethernet device, the VLAN ID of the outgoing flow, the source port, and / or the destination port.

[0048] In one or more embodiments, the corresponding network configuration parameters may be related to IEEE 802.1 Qci, wherein:

[0049] The local device configuration includes the IP source address, IP destination address, source port, destination port, and / or VLAN ID from the deep packet inspection table; and

[0050] The second network configuration includes the IP source address, IP destination address, source port, destination port, and / or VLAN ID of the stream from the second Ethernet device.

[0051] In one or more embodiments, the Ethernet device can be configured to encode request messages according to a Layer 2 protocol by:

[0052] Encode the message type in the payload of the request message packet; and

[0053] Encode one or more network configuration properties in the payload of the request message packet.

[0054] In one or more embodiments, the Ethernet device may include an Ethernet switch.

[0055] According to a second aspect of this disclosure, an Ethernet network including any Ethernet device disclosed herein is provided.

[0056] According to a third aspect of this disclosure, a computer-implemented method for controlling Ethernet devices and diagnosing network configuration errors is provided, the method comprising:

[0057] This causes a request message to be transmitted from the Ethernet device to a statically configured second Ethernet device on the Ethernet network, wherein the request message is encoded according to a Layer 2 protocol and the payload of the request message includes a request for a second device network configuration from the second Ethernet device.

[0058] Obtain a response message received by the Ethernet device from the second Ethernet device, wherein the response message is encoded according to the Layer 2 protocol, and the payload of the response message includes the second device network configuration of the second Ethernet device;

[0059] Compare the network configuration of the second device with the local device configuration of the Ethernet device; and

[0060] The routing diagnostic signal is based on the mismatch between the network configuration of the second device and the configuration of the local device.

[0061] According to a fourth aspect of this disclosure, an Ethernet device is provided, comprising one or more processors and a memory including instructions that, when executed by the one or more processors, cause the one or more processors to perform any of the methods disclosed herein.

[0062] While this disclosure allows for various modifications and alternatives, its details have been illustrated by way of example in the accompanying drawings and will be described in detail. However, it should be understood that other embodiments besides the specific embodiments described may also exist. All modifications, equivalents, and alternative embodiments falling within the spirit and scope of the appended claims are also covered.

[0063] The foregoing discussion is not intended to present every exemplary embodiment or implementation within the scope of the present or future claims. The accompanying drawings and detailed description further illustrate various exemplary embodiments. A more complete understanding of these various exemplary embodiments can be achieved by considering the following detailed description in conjunction with the accompanying drawings. Attached Figure Description

[0064] One or more embodiments will now be described with reference to the accompanying drawings, by way of example only, in which:

[0065] Figure 1 An in-vehicle Ethernet network including multiple Ethernet devices is shown according to an embodiment of the present disclosure;

[0066] Figure 2 A runtime network configuration check scenario according to an embodiment of the present disclosure is illustrated;

[0067] Figure 3 An Ethernet device according to an embodiment of the present disclosure is shown; and

[0068] Figure 4 A method for controlling an Ethernet device and diagnosing network configuration errors according to an embodiment of the present disclosure is shown. Detailed Implementation

[0069] This disclosure provides a method and apparatus for comparing the runtime of a network configuration of an execution device with the properties of the rest of the network to identify mismatches between the configuration of a host device and connected devices as early as possible.

[0070] Figure 1 An in-vehicle Ethernet network 100 including Ethernet devices is shown according to an embodiment of the present disclosure.

[0071] The in-vehicle Ethernet network 100 (which may be referred to as network 100) includes multiple Ethernet devices (which may be referred to as nodes). The multiple Ethernet devices include: a central computing unit 102, which includes a network manager 103; multiple Ethernet switches 104-1, 104-2, 104-3, 104-4, and 104-5 (which may be referred to as multiple Ethernet switches 104); and multiple statically pre-configured end nodes 106-1, 106-2, 106-3, 106-4, 106-5, and 106-7 (which may be referred to as multiple end nodes 106). The network manager 103 is a centralized application that can monitor and reconfigure the Ethernet devices.

[0072] In this example, each end node 106 is directly connected to an Ethernet switch 104. Each Ethernet switch 104 is directly or indirectly connected to the central computing device 102 via another Ethernet switch 104. Each Ethernet switch 104 is directly connected to one or more remote Ethernet devices (or second Ethernet devices), which may be another Ethernet switch 104 or end node 106.

[0073] Ethernet switches 104 can be arranged in a segmented architecture. In this example, each Ethernet switch 104 is an example of an Ethernet device according to an embodiment of the present disclosure. Each Ethernet device includes a transceiver, one or more processors, and memory including software instructions executable by the one or more processors. In this example, each Ethernet switch 104 includes a plurality of software modules, including: a diagnostic module 108 (labeled D1...D5); and a protocol enabling module 110 (labeled P). In this example, all Ethernet devices 102, 104, 106 of network 100 include a protocol enabling module P, which can communicate with other devices in the network according to a Layer 2 protocol. The Layer 2 protocol may include Layer 2 protocol extensions for enabling runtime network configuration checks as disclosed herein.

[0074] Using a fourth Ethernet switch 104-4 as the first Ethernet device (also referred to as the local Ethernet device) and a seventh end node 106-7 as an example of a second Ethernet device on the same network 100 as the first Ethernet device, the diagnostic module 108 of the first Ethernet device 104-4 is configured to send request messages to the statically configured second Ethernet device 106-7 on network 100. The protocol enabling module 110 of the first Ethernet device can encode the request message according to the Layer 2 protocol. The payload of the request message includes a request for network configuration of the second device at end node 106-7.

[0075] As disclosed herein, an Ethernet device or software module (diagnostic module, collector, checker, logger, or responder) described as "configured to transmit" or "configured to receive" messages can be understood to mean that the device or software module is configured to cause the transceiver of the corresponding device to transmit or receive the messages. For example, a diagnostic module configured to transmit a request message can be understood as a diagnostic module configured to cause the transceiver of the corresponding Ethernet device to transmit a request message.

[0076] The operation of the second Ethernet device (end node) 106-7 is further discussed below. In simple terms, however, end node 106-7 can receive request messages from the first Ethernet device 104-4 and transmit reply messages in response. The reply message may include the (requested) network configuration of the second device. The protocol enablement module P of the second Ethernet device 106-7 can encode the reply message according to the Layer 2 protocol. The network configuration of the second device may include a device configuration table and / or network properties defined at the second Ethernet device 106-7.

[0077] Diagnostic module 108 receives a response message from second Ethernet device 106-7. Diagnostic module 108 can compare the second device network configuration (of end node 106-7) from the response message with the local device configuration of first Ethernet device 104-4. The local device configuration of first Ethernet device 104-4 may include one or more configuration tables and / or one or more local device registers. Diagnostic module 108 can identify any mismatch between the second device network configuration and the local device configuration and output a diagnostic signal identifying the mismatch. For example, for a software-defined network, diagnostic module 108 can output the diagnostic signal to network manager 103 of central computing device 102, and network manager 103 can trigger network reconfiguration to correct the mismatch. In some examples, diagnostic module 108 can output the diagnostic signal to a system security monitor (not shown) to trigger a security mechanism, which may be local to the first or second Ethernet device, or elsewhere in network 100.

[0078] Figure 2 A runtime network configuration check scenario according to an embodiment of this disclosure is illustrated. Also... Figure 1 Existing in Figure 2 The features have been labeled in the corresponding figures in the given 200 series, and are not necessarily described again here.

[0079] In this example, the fourth Ethernet switch 204-4 is again used as an example of the first Ethernet device. The fourth Ethernet switch 204-4 is configured with a local device configuration 211. Local device configuration 211 includes a VLAN lookup table 212. VLAN lookup table 212 includes instructions for the fourth Ethernet switch 204-4 to mirror network traffic with VLAN ID = 107 coming in on port 2 to ports 3 and 7. Ports are identified in the diagram by numbered square boxes around the perimeter of Ethernet switches 204-4 and 204-5. Local device configuration 211 also includes a local device register 213—Advanced Diagnostics R1—which includes one or more counters (not shown). These one or more counters may include a specific counter indicating the number of times a packet has been mirrored according to a specific instruction in the VLAN lookup table 212 described above.

[0080] The seventh end node 206-7 has a node network configuration 219 (which is an example of the network configuration of the second device). In this example, node network configuration 219 indicates that the seventh end node 206-7 has been configured with an application stream with an incorrect VLAN ID = 117. The error may be caused by a simple typo by the user who set up end node 206-7.

[0081] In a typical system, a mismatch between the VLAN ID in the VLAN lookup table 212 of Ethernet switch 204-4 and the node network configuration 219 of the seventh end node 206-7 will cause the fourth Ethernet switch 204-4 to take no action on incoming traffic from the seventh end node 206-7. However, no error message will be generated, and the user may have to sift through numerous configuration settings to identify the reason for the lack of action on traffic communication between the fourth Ethernet switch 204-4 and the seventh node 206-7.

[0082] In this example, the diagnostic module 208 includes several sub-components, including a recorder 214, an inspector 216, and a collector 218. Further details of these sub-components are described below.

[0083] Inspector 216 can monitor specific counters associated with configured entries in the VLAN lookup table 212 that mirrors ports 2 to 3 and 7. If the counter value is zero after a timeout threshold, diagnostic module 208 can initiate the transmission of a request message. In this way, the first Ethernet device 204-4 is configured to initiate the transmission of a request message in response to a timeout condition being met by the counter's count signal. The count signal can be associated with packets received from the second Ethernet device (end node) 206-7. The count signal can represent the count of packets received from end node 206-7 and processed by Ethernet switch 204-4 according to local device configuration 211.

[0084] In response to a timeout condition, collector 218 encodes the request message according to the Layer 2 protocol using protocol enable module 210 and transmits the request message to the seventh end node 206-7. In some examples, collector 218 may transmit the request message to all directly connected Ethernet devices, including the fifth Ethernet switch 204-5 and the sixth and seventh end nodes 206-6 and 206-7. Each requested second Ethernet device 204-5, 206-7, 207-7 receives the request message, generates a reply message, and transmits the reply message back to the fourth Ethernet switch 204-4. The reply message includes the node network configuration 219 (second device network configuration) of the corresponding Ethernet device 204-5, 204-6, 204-7 and may be encoded using its corresponding protocol enable module P. In this example, node network configuration 219 may include the node MAC address of end node 206-7, the egress VLAN ID, and the source and destination port numbers (e.g., TCP / UDP). Further examples of parameters included in node / second device network configuration 219 are discussed below.

[0085] Collector 218 receives reply messages from each connected node 204-5, 204-6, 204-7. Inspector 216 compares the node network configuration 219 of each reply message with the corresponding data in the local device configuration 211. In this example, inspector 216 identifies a mismatch between the VLAN ID (VLAN=107) in the VLAN lookup table 212 and the VLAN ID (VLAN=117) from the node network configuration 219 of the seventh end node 206-7.

[0086] Checker 216 can relay the mismatch to logger 214, which can then communicate the mismatch to network manager 203. Network manager 203 can trigger network reconfiguration, for example, by instructing the seventh end node 206-7 to correct its VLAN ID to 107, or alternatively, by triggering a reconfiguration of VLAN lookup table 212 in the fourth Ethernet switch 204-4 to refer to VLAN ID = 117.

[0087] In a distributed network, a mismatch between end node 206-7 and its corresponding Ethernet switch (or zone controller) 204-4 may cause additional warnings from the continuous diagnostic module 208 in other Ethernet switches 204-5. For example, the checker in the fifth Ethernet switch 205-5 may find that the counter does not increment because there is no traffic between the fourth Ethernet switch 204-4 and the fifth Ethernet switch 204-5. However, the network configurations of these two switches are not necessarily incompatible. In this case, a message from the logger of the fifth Ethernet switch 204-5 can simply inform the network manager 203 that there is no expected traffic between the two Ethernet switches 204-4 and 204-5. The network manager 203 can identify that the VLAN ID mismatch between the fourth Ethernet switch 204-4 and the seventh end node 206-7 is the reason for the lack of traffic between the fourth switch 204-4 and the fifth switch 204-5.

[0088] To elaborate further, methods and devices used for runtime network configuration monitoring and diagnostics can include four key components:

[0089] 1. Software implementation schemes and optional hardware implementation schemes for assisting in monitoring the status of Ethernet devices at runtime;

[0090] 2. A system-level solution for identifying and notifying misconfigured devices on complex networks with multiple devices;

[0091] 3. An Ethernet protocol extension for collecting network configuration information of a second Ethernet device connected to a network and generating network diagnostic messages; and

[0092] 4. A set of combined network configuration parameters will be monitored and diagnosed at runtime to enhance system-level networking security and ease of development.

[0093] 1. Software Implementation Plan

[0094] As described above, refer to Figure 1 and 2 The software solution may include a diagnostic module 208 on each of a subgroup of Ethernet devices in the network (e.g., Ethernet switch 204). The diagnostic module 208 may perform a check of the second device network configuration 219 of each connected Ethernet device against the local device configuration 211 of the first / local Ethernet device 204, and communicate any possible mismatches to the network manager 203. The diagnostic module 208 may include a device information collector 218, a checker 216, and a logger 214. The software solution may also include a protocol enabling module 210 on all Ethernet devices in the network. The protocol enabling module 210 may include a responder for transmitting the second device network configuration 219 of each Ethernet device 206-7 to the collector 218 of the first Ethernet devices 204-4.

[0095] Figure 3 An example first Ethernet device, in the form of an Ethernet switch 304 including a diagnostic module 308, and two second Ethernet devices (or a second Ethernet device and a third Ethernet device) in the form of end nodes 306-1, 306-2 including protocol enable modules 310-1, 310-2, are shown according to an embodiment of the present disclosure. Ethernet devices 304, 306-1, 306-2 are connected to an Ethernet network. Figure 3 Appearing in Figure 1 The characteristics of 2 have been given in the corresponding numbers in the 300 series, and are not necessarily described again here.

[0096] As previously described, Ethernet switch 304 includes a diagnostic module 308, which includes a logger 314, a checker 316, and a collector 318. Ethernet switch 304 also includes a protocol enable module 310-0, which includes a responder. First end node 306-1 includes protocol enable module 310-1, which includes a responder. Similarly, second end node 306-2 includes protocol enable module 310-2, which includes a responder. Neither first end node 306-1 nor second end node 306-2 includes a diagnostic module.

[0097] In this manner, only a subgroup (not all) of Ethernet device 304 includes diagnostic module 308. All Ethernet devices 304, 306-1, and 306 include corresponding protocol enabling modules 310-0, 310-1, and 310-2 for implementing Ethernet protocol extensions (described below) and responding to collector 318.

[0098] Ethernet devices 304, 306-1, and 306-2 can communicate as follows.

[0099] In some examples, after network startup, all responders 310-0, 310-1, and 310-2 can broadcast a greeting message 322 on the network. The greeting message 322 can be broadcast once at startup for a configurable time period or periodically. In some examples, individual Ethernet devices 310-1 and 310-2 can broadcast the greeting message 322 upon first connecting to the network.

[0100] The "greeting" message 322 may include an Ethernet packet. Protocol enable modules 310-0, 310-1, and 310-2, according to Layer 2 Ethernet protocol extensions, can identify the greeting message by the message type encoded in the packet's payload. In the example Ethernet protocol extension defined below, the "greeting" message 322 is identified by Type=0b00 in the payload.

[0101] Collector 318 of Ethernet switch 304 broadcasts request message 324. In some examples, collector 318 may broadcast request message 324 on all ports of Ethernet switch 304 to all connected devices / nodes 306-1, 306-2. In some examples, collector 318 may broadcast request message 324 to one or more second Ethernet devices 306-1, 306-2 in response to receiving a "greeting" broadcast message 322 from the corresponding device. In some examples, collector 318 may broadcast request message 324 in response to network startup. In some examples, collector 318 may unicast request message 324 to a specific second Ethernet device 306-1, 306-2 in response to receiving a count signal indicating that a timeout condition has been met as described above. The count signal may be associated with packets received at Ethernet switch 304 from the specific second Ethernet device 306-1, 306-2. In this way, depending on the usage, collector 318 can send request messages 324 once, periodically, or on demand.

[0102] Request message 324 may include an Ethernet packet. Protocol enable module 310-0, according to Layer 2 Ethernet protocol extensions, can identify the request message by the message type encoded in the packet's payload. In the example Ethernet protocol extension defined below, the "request" message 324 is identified by Type=0b01 in the payload.

[0103] Each second Ethernet device / node 306-1, 306-2 connected to Ethernet switch 304 includes responder modules 310-1, 310-2. Responder modules 310-1, 310-2 receive request message 324 and send reply message 326 back to collector 318 of Ethernet switch 304. Responder message 326 includes an Ethernet packet with a payload, the payload of which includes the node network configuration of nodes 306-1, 306-2.

[0104] Protocol enable modules 310-1 and 310-2, according to the Layer 2 Ethernet protocol extension, can identify the reply message 326 by the message type encoded in the message payload. In the example Ethernet protocol extension defined below, the "reply" message 326 is identified by Type=0b10 in the payload.

[0105] The collector 318 of the Ethernet switch 304 can collect data from the reply messages 326 received from end nodes 306-1 and 306-2. The collector can pair each reply message with a receiving port of the Ethernet switch 304. The collector 318 can maintain a known device database to monitor the Ethernet devices connected to the Ethernet switch 304 and on which ports they are connected. The collector 318 can update the known device database based on the received reply messages 326 and / or the received greeting messages 322.

[0106] Collector 318 can update the database of known devices via different modes:

[0107] 1. (Active ping): Collector 318 may broadcast request messages 324 on the network as needed or periodically. New request messages 324 on the network may be unicast or multicast messages, since the address is known after receiving the initial reply message upon startup. The active ping method can reduce network traffic by avoiding unnecessary broadcast messages.

[0108] 2. (Passive Survival): Replyers 310-1 and 310-2 on the connected Ethernet devices 306-1 and 306-2 periodically send reply messages 326 to collector 316 on Ethernet switch 304 without receiving requests.

[0109] 3. Collector 318 may initiate a timer for each transmission request message 324. If no reply message 326 is received from the known second Ethernet devices 306-1 and 306-2 within the timeout threshold, collector 318 may delete the known second Ethernet devices 306-1 and 306-2 from the known device database.

[0110] In some examples, end nodes 306-1 and 306-2 can transmit control messages to change the operating mode of Ethernet devices / nodes. Protocol enable modules 310-1 and 310-2, according to Layer 2 Ethernet protocol extensions, can identify control messages by the message type encoded in the message payload. In the example Ethernet protocol extension defined below, a "control" message is identified by Type=0b11 in the payload.

[0111] In some examples, collector 318 can switch between operating modes in response to receiving control messages from end nodes 310-1 and 310-2. For example, the control message can signal collector 318 to switch between active ping mode and passive alignment mode at runtime. Collector 318 mode can also be switched locally on Ethernet switch 304 at runtime.

[0112] Returning to the receipt of reply message 324, collector 318 can forward the second device network configuration from the reply message to inspector 316. Inspector 316 has access to all information collected by collector 318 and local device configuration 311 (local configuration table and local device registers). Inspector 316 can perform a diagnostic process to compare and analyze the second device network configurations of the connected second Ethernet devices 306-1 and 306-2 against the local device configuration 311. Possible results of this diagnostic process include:

[0113] 1. The network parameters (also referred to herein as network configuration parameters) (MAC address, IP address, VLAN, or port, etc.) configured from local device configuration 311, or their expected combinations, do not exist in or conflict with the network configuration of the second device from remote devices / nodes 306-1 and 306-2 collected by collector 318. The diagnostic process may check one or more combinations of network parameters from the configurations mentioned in Table 2 below;

[0114] 2. No second Ethernet device is connected to the port that has one or more configuration entries in the local configuration table;

[0115] 3. The coherence check of ingress and egress properties identifies inconsistencies, such as unsynchronized Time-Aware Shaper (TAS) schedules or mismatched egress and egress policies.

[0116] Logger 314 records the results of the diagnostic process performed by inspector 316. Logger 314 can record the diagnostic results in a log file using common formats such as plaintext, CSV, and JSON. This diagnostic file can be easily accessed on the host machine (Ethernet switch 304) of logger 314. Ethernet switch 304 can send the log file to any other participant on the network for further processing via various methods. For example:

[0117] ● For software-defined networks, such as software-defined vehicles (SDVs): Ethernet switch 304 can send diagnostic results to the network manager. The network manager can then trigger network reconfiguration at runtime.

[0118] ●Safety Usage: The system security monitor or central computing unit of the Ethernet switch 304 can process diagnostic results to trigger any necessary security mechanisms.

[0119] 2. Hardware enhancements to support the diagnostic module

[0120] As mentioned above, the hardware counters on the first Ethernet device 304 can be used to monitor runtime network device properties and network flow status. The disclosed framework can use a combination of monitoring data to further diagnose vehicle-level network status and generate warnings when necessary. To avoid increasing hardware complexity and silicon cost, the counters can include configurable or unused counters in the hardware for runtime network traffic status and property monitoring, as well as system-level diagnostics.

[0121] ● Configurable HW Counter Groups – Multiple counter groups can be assigned to different parts of the configuration table of the first Ethernet device 304. The configuration of these counters allows for monitoring of different configuration parameters based on usage.

[0122] ● Utilize unused bits in existing entries -- To limit the increase in memory footprint / cost, unused bits in configuration entries in the configuration table of the local device configuration 311 can be used to store counter values. For example, a MAC configuration table entry in an Ethernet switch may have 10 unused bits, and a Deep Packet Inspection (DPI) table entry may have 24 unused bits.

[0123] The two proposed implementations enable monitoring / correlation counters for all configuration parameters in the complete configuration table for local device configuration 311 with minimal increase in memory footprint. These two proposed implementations are not mutually exclusive and can be combined.

[0124] For example, entries in the Layer 2 configuration table are stored in a TCAM (Tracked Access Memory) used for searching and matching stored values ​​with keys / masks. Ethernet switches may include additional counters or reuse existing hardware counters adjacent to each TCAM entry (or generic configuration entry), which increment whenever an entry is "emitted." In many devices, these counters are already present, at least partially. When these counters are read, values ​​other than zero correspond to the activation of the corresponding rule / entry in the local device configuration table. Ethernet devices can monitor the counts of one or more of these counters to identify whether traffic flowing through the device matches the nature of the configuration.

[0125] 3. Ethernet Protocol Extensions

[0126] Extensions to the Layer 2 Ethernet protocol enable the automation of the collection and diagnostic process for the second device network configuration described above. Table 1 depicts an example Ethernet protocol extension according to an embodiment of this disclosure. Protocol extensions allow any combination of network configuration parameters described herein to be embedded in the payload or a more specific portion of the proposed frame structure.

[0127]

[0128] Table 1: Example Protocol Extensions

[0129] The general format of example protocol extensions:

[0130] ● The example protocol is identified by Ethertype 0x2024 (an available Ethernet type not yet standardized according to the Ethernet type list (https: / / www.iana.org / assignments / ieee-802-numbers / ieee-802-numbers.xhtml)).

[0131] ● Depending on the operating mode, the MAC destination may have a specific destination MAC address or be broadcast.

[0132] ● The payload contains the message type in the first two bits, and the rest of the payload always contains host device (the device that sent the message) information.

[0133] ● Four different message types are available:

[0134] ○0b00: Greeting -- Sent by an Ethernet device node to inform other Ethernet devices on the network that this Ethernet device has joined the network. The greeting message is broadcast on the network;

[0135] ○0b01: Request -- Sent by the diagnostic module of an Ethernet device to request device information from another (remote / connected / secondary) Ethernet device on the network. Request messages can be broadcast on the network;

[0136] ○0b10: Reply -- Sent by an Ethernet device in response to a received request message. By default, a reply message can be unicast to the Ethernet device that sent the request message. In some cases, the reply message can be configured to be broadcast over the network;

[0137] ○0b11: Control -- Sent by the Ethernet device to request a change in the operating mode of the Ethernet device.

[0138] ●Messages of any type can be sent once, periodically, or on demand over the network.

[0139] The following network configuration parameters can be transmitted in the payload of all message types. The payload may include the following network configuration parameters from the host device (the Ethernet device sending the message):

[0140] 1. General network characteristics (per interface)

[0141] ■ Host device MAC address

[0142] ■ Host device IP address

[0143] ■ TCP / UDP source and destination port numbers

[0144] ■ Source and destination IP addresses

[0145] ■ Configured VLANs and priorities

[0146] ■ Configured traffic shaping mechanisms (if they exist), such as credit-based shaping (CBS), time-aware shaping (TAS), priority, etc.

[0147] 2. (If the host device is an Ethernet switch) Characteristics of Ethernet switches

[0148] ■ MAC addresses configured in the L2 table (if they exist)

[0149] ■ VLANs configured in the L2 table (if they exist)

[0150] ■ The target MAC address configured in the L2 table (if it exists)

[0151] ■ Configured 802.1CB, ingress and egress PCP remapping tables, VLAN lookup tables, etc.

[0152] ■ Configured traffic shaping mechanism (e.g., 802.1Qbv)

[0153] ■ Ingress filtering and policy configuration (e.g., 802.1Qci)

[0154] 4. Combined network configuration properties

[0155] As described above, the diagnostic module of the first Ethernet device (e.g., Ethernet switch 304) can compare the second device network configuration from remote nodes / second Ethernet devices 306-1, 306-2 with the local device configuration of the first Ethernet device 304. The second device network configuration and the local device configuration may include multiple network configuration parameters.

[0156] The multiple network configuration parameters may depend on the network or the usage of individual Ethernet devices within the network. These multiple network configuration parameters can be grouped into standard high-level network features, as shown in Table 2.

[0157] Table 2 below lists example combinations of network configuration parameters or networking properties that should be matched on both the first Ethernet device (e.g., a managed Ethernet switch) containing a diagnostic module and the connected remote / second Ethernet device / end node. Network configuration parameters are grouped according to advanced network characteristics. The listed properties are collected from Ethernet switch features or are typically available at the application level. Example combinations enable runtime diagnostics to monitor vehicle-grade networking functionality, security, and accelerate network development.

[0158]

[0159]

[0160] Table 2 -- Relevant Network Configuration Parameters

[0161] Two examples of vehicle-level unexpected network behavior in vehicular Ethernet networks that can be aided by runtime inspection of combined network configuration parameters are as follows:

[0162] i.802.1CB (Enhanced network security via redundant links)

[0163] Network configuration parameters may include those related to IEEE 802.1CB (Frame Replication and Elimination for Reliability (FRER)).

[0164] The diagnostic module 308 can check the network configuration parameters of the local device configuration 311 and the second device network configuration from remote nodes 306-1 and 306-2. In some examples, the diagnostic module 308 can check:

[0165] ● MAC address configured in the local device configuration (e.g., in an L2 lookup table)

[0166] ● The source MAC address in the outgoing Ethernet frame or the MAC address in the MAC address table learned by the Ethernet switch.

[0167] ● Hardware counter for expected CB flow per switch port

[0168] If the hardware counter for CB flows on Ethernet switch 304 does not change after a certain timeout threshold, meaning that expected CB frames will not arrive, the diagnostic module can identify the root cause of the problem and notify the network manager by cross-checking the other properties mentioned above (including those in Table 2). For example, a common error would be that the MAC address configured in the L2 lookup table of Ethernet switch 304's local device configuration 311 does not match the MAC addresses of the remote nodes 306-1 and 306-2 that should be sending CB flows. This problem can be difficult to debug because the configuration on each individual device is valid and follows basic rules.

[0169] ii.802.1Qci (Enhancing network security through flow filtering and policy formulation)

[0170] Network configuration parameters may include those related to IEEE 802.1Qci (Per-Flow Filtering and Policy Making (PSFP)).

[0171] To ensure that 802.1Qci per-flow filtering and policy formulation are applied to a given flow at runtime, the following properties can be checked at runtime:

[0172] ● In local device configuration 311 -- QCI flow meter rate limit and queue priority

[0173] ● In local device configuration 311 -- DPI table mask and QCI port number with various network configuration parameters (see Table 2)

[0174] ● In local device configuration 311 -- Hardware counter for expected QCI flow per switch port

[0175] ● In the second device network configuration -- the nature of the outgoing Ethernet frames, such as IP address (source and destination), UDP / TCP port number (source and destination), VLAN ID, the first 128 bytes of the Ethernet frame payload that will match the DPI entry, etc.

[0176] By monitoring and cross-comparing these properties (and / or those listed in the relevant rows of Table 2), the diagnostic module can identify whether Qci is applied to a given flow, and if not, locate the mismatch in the configuration.

[0177] Figure 4 A method for controlling an Ethernet device and diagnosing network configuration errors according to an embodiment of the present disclosure is shown.

[0178] The first step 430 includes causing a request message to be sent to a statically configured second Ethernet device on an Ethernet network, wherein the request message is encoded according to a Layer 2 protocol and the payload of the request message includes a request for a second device network configuration from the second Ethernet device.

[0179] The second step 432 includes receiving a reply message from the second Ethernet device, wherein the reply message is encoded according to a Layer 2 protocol, and the payload of the reply message includes the second device network configuration of the second Ethernet device.

[0180] The third step 434 includes comparing the network configuration of the second device with the local device configuration of the Ethernet device.

[0181] Step 436 includes routing diagnostic signals based on the mismatch between the node network configuration and the local device configuration.

[0182] While this disclosure generally relates to automotive Ethernet, it is applicable to any embedded Ethernet system that uses statically pre-configured nodes / devices.

[0183] The disclosed devices and methods can advantageously provide vehicle-grade runtime network configuration with Ethernet protocol extensions, as well as condition monitoring and diagnostic mechanisms to identify such network mismatches and notify users of potential problems.

[0184] Unless a specific order is explicitly stated, the instructions and / or flowchart steps in the above diagrams may be performed in any order. Furthermore, those skilled in the art will recognize that while an example set of instructions / methods has been discussed, the material in this specification can be combined in various ways to produce other examples, and should be understood within the context of the detailed description provided herein.

[0185] In some example embodiments, the instruction set / method steps described above are implemented as functional and software instructions embodied in an executable instruction set, which is implemented on a computer or a machine programmed and controlled by the executable instructions. Such instructions are loaded to execute on a processor (e.g., one or more CPUs). The term processor includes a microprocessor, microcontroller, processor module or subsystem (including one or more microprocessors or microcontrollers), or other control or computing device. A processor may refer to a single component or multiple components.

[0186] In other examples, the instruction sets / methods illustrated herein, along with their associated data and instructions, are stored in appropriate storage devices, which are implemented as one or more non-transitory machine- or computer-readable or computer-usable storage media. Such computer-readable or computer-usable storage media are considered part of an article (or article of manufacture). An article or article of manufacture can refer to any single or multiple manufactured components. Non-transitory machine- or computer-usable media as defined herein do not include signals, but such media may be capable of receiving and processing information from signals and / or other transient media.

[0187] Example embodiments of the materials discussed in this specification may be implemented, in whole or in part, via networks, computers, or data-based devices and / or services. These may include cloud, Internet, intranet, mobile devices, desktop computers, processors, lookup tables, microcontrollers, consumer devices, infrastructure, or other enabling devices and services. As may be used herein and in the claims, the following non-exclusive definitions are provided.

[0188] In one example, one or more instructions or steps discussed in this article are automated. The terms automated or automatic (and similar variations) mean using computers and / or mechanical / electrical devices to control the operation of equipment, systems, and / or processes without human intervention, observation, effort, and / or decision-making.

[0189] It should be understood that any components that are to be coupled can be coupled or connected directly or indirectly. In the case of indirect coupling, another component may be placed between the two components that are said to be coupled.

[0190] In this specification, exemplary embodiments have been presented according to a selected set of details. However, those skilled in the art will understand that many other exemplary embodiments, including different selected sets of details, can be practiced. It is intended that the appended claims cover all possible exemplary embodiments.

Claims

1. An Ethernet device, characterized in that, The Ethernet device includes a transceiver and one or more processors, and the Ethernet device is configured to: A request message is sent to a statically configured second Ethernet device on an Ethernet network, wherein the request message is encoded according to a Layer 2 protocol and the payload of the request message includes a request for a second device network configuration from the second Ethernet device. Receive a reply message from the second Ethernet device, wherein the reply message is encoded according to the Layer 2 protocol and the payload of the reply message includes the second device network configuration of the second Ethernet device; Compare the network configuration of the second device with the local device configuration of the Ethernet device; and The routing diagnostic signal is based on the mismatch between the network configuration of the second device and the configuration of the local device.

2. The Ethernet device according to claim 1, characterized in that, The Ethernet device is configured to route the diagnostic signals to one or more of the following: Network manager, which triggers network reconfiguration to correct the mismatch; and The system security monitor is used to trigger security mechanisms.

3. The Ethernet device according to claim 1 or claim 2, characterized in that, The Ethernet device includes a counter and is configured to: The request signal is transmitted in response to the counter's counting signal meeting the timeout condition.

4. The Ethernet device according to claim 3, characterized in that, The counting signal is associated with packets received from the second Ethernet device.

5. The Ethernet device according to claim 3 or claim 4, characterized in that, The counting signal represents the number of packets received from the second Ethernet device and processed by the Ethernet device according to the local device configuration.

6. The Ethernet device according to any one of the preceding claims, characterized in that, The Ethernet device is configured to: Receive a greeting message broadcast by the second Ethernet device, wherein the greeting message is encoded according to the Layer 2 protocol; and In response to receiving the greeting message, the request message is transmitted to the second Ethernet device.

7. The Ethernet device according to any one of the preceding claims, characterized in that, The Ethernet device can identify a mismatch between the local device configuration and the second device network configuration by one or more of the following: Identify the mismatch between the network configuration parameters configured by the local device and the corresponding network configuration parameters configured by the second device; as well as Identify the ports of the Ethernet device that are not connected to the remote device and have configuration entries in the local device configuration.

8. An Ethernet network, characterized in that, The Ethernet network includes the Ethernet device according to any one of claims 1 to 7.

9. A computer-implemented method for controlling Ethernet devices and diagnosing network configuration errors, characterized in that, The method includes: This causes a request message to be transmitted from the Ethernet device to a statically configured second Ethernet device on the Ethernet network, wherein the request message is encoded according to a Layer 2 protocol and the payload of the request message includes a request for a second device network configuration from the second Ethernet device. Obtain a response message received by the Ethernet device from the second Ethernet device, wherein the response message is encoded according to the Layer 2 protocol, and the payload of the response message includes the second device network configuration of the second Ethernet device; Compare the network configuration of the second device with the local device configuration of the Ethernet device; and The routing diagnostic signal is based on the mismatch between the network configuration of the second device and the configuration of the local device.

10. An Ethernet device, characterized in that, The Ethernet device includes one or more processors and a memory including instructions that, when executed by the one or more processors, cause the one or more processors to perform the method according to claim 9.