1^111 Method of sending data based on priorities in a network
The method ensures preferential transmission of original data in Ethernet-based vehicle networks by creating duplicate frames with altered priorities and sending them through different paths, addressing the limitations of existing technologies in supporting high data rates and priority conflicts.
Patent Information
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- HYUNDAI MOTOR CO LTD
- Filing Date
- 2017-01-20
- Publication Date
- 2026-04-23
AI Technical Summary
Existing vehicle network technologies, such as CAN, FlexRay, and MOST-based networks, struggle to support the higher transmission rates required by advanced vehicle systems like telematics and infotainment, and Ethernet-based networks face issues with ensuring preferential transmission of frames with identical priorities.
A method for data transmission in Ethernet-based vehicle networks involves creating duplicate frames with different priority settings to ensure preferential transmission of original data by sending one frame through a primary path and the duplicate through a redundant path, using priority reassignment and indicators in the MAC header.
Guarantees preferential transmission of original data by ensuring it is transmitted before duplicate data, even when priorities are identical, thereby enhancing data reliability in vehicle networks.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
BACKGROUND 1. Technical field
[0001] The present disclosure relates generally to data transmission methods and more specifically to data transmission methods based on priority reassignment in a vehicle network. 2. Description of related prior art
[0002] The number and variety of electronic devices installed within a vehicle have increased significantly, along with the recent digitization of vehicle components. Electronic devices can now be used anywhere in the vehicle, such as in a powertrain control system (e.g., an engine control system, an automatic transmission control system, or the like), a body control system (a body electronics equipment control system, a comfort control system, a lighting control system, or the like), a chassis control system (e.g., a steering device control system, a brake control system, a suspension control system, or the like), a vehicle network (e.g.,a Controller area network (CAN), a FlexRay-based network, a Media Oriented System Transport (MOST)-based network or the like), a multimedia system (a navigation device system, a telematics system, an infotainment system or the like) etc.
[0003] The electronic devices comprising each of these systems are connected via the vehicle network, which supports the functions of these electronic devices. For example, CAN can support a transmission rate of up to 1 Mbps and can support automatic retransmission of conflicting messages, fault detection based on a cyclic redundancy (CRC) interface, and similar features. The FlexRay-based network can support a transmission rate of up to 10 Mbps and can support simultaneous data transmission over two channels, synchronous data transmission, and similar features. The MOST-based network is a communication network for high-quality multimedia that can support a transmission rate of up to 150 Mbps. Meanwhile, the telematics system, the infotainment system, and enhanced safety systems of a vehicle require higher transmission rates and system expandability.However, CAN, FlexRay-based networks, and similar technologies may not be able to adequately support such requirements. MOST-based networks, in particular, can support higher data rates than CAN and FlexRay-based networks. However, implementing MOST-based networks in vehicle networks can be costly.
[0004] Due to these limitations, an Ethernet-based network is often used as a vehicle network. The Ethernet-based network can support bidirectional communication over a single pair of wires and can support a transmission rate of up to 10 Gbps. The Ethernet-based vehicle network can support multiple communication nodes. The communication node can be a gateway, a switch (or bridge), an end node, or similar. The end node can send a frame containing the original data to the switch. The switch can also receive the frame from the end node and create an original frame containing the original data. Alternatively, the switch can create duplicate data by duplicating the original data and generating a duplicated frame containing the duplicated data.
[0005] The original frame can be sent via a primary path, and the duplicated frame can be sent via a redundant path. However, if the priority of the original frame (e.g., the priority of the original data contained in the original frame) is identical to the priority of other frames to be sent via the primary path (e.g., the priorities of data contained in the other frames), preferential transmission of the original frame cannot be guaranteed.
[0006] US 2011 / 0116508A1 describes a network coupling device across a first and second port in a ring topology communications network with full-duplex connections. When transmitting information, the coupling device inserts two duplicated frames into the ring, one across each of its ports. The frames contain information that identifies these two frames as a pair of duplicates of the same frame.
[0007] US 2013 / 0 185 451 A1 describes a network communication system that includes a receiver which receives multiple data streams from a sender. The data in the data streams may be identical. The receiver identifies one of the data streams as the primary data stream and another of the multiple data streams as the non-primary data stream. The receiver can process the data of the primary data stream and buffer a minimal amount of data in the non-primary data stream.
[0008] WO 20161 202 307 A1 Method for identifying folder paths and cleaning folders, wherein the methods enable automatic identification of folder paths and cleaning of folders in electronic devices, thereby improving the efficiency of identifying folder paths in electronic devices and the efficiency of cleaning folders. SUMMARY
[0009] The purpose of this disclosure is to guarantee preferential transmission of original data in a vehicle network.
[0010] This technical problem is solved by the pending independent patent claims.
[0011] The present disclosure provides a method for sending data based on priority reassignment in a vehicle network.
[0012] According to one example, an operating procedure of a switching device in an Ethernet-based vehicle network includes: receiving an initial frame containing original data from a
[0013] End node; creating a second frame containing the original data; duplicating the original data to create duplicate data; and creating a third frame containing the duplicate data and an indicator showing that the third frame contains the duplicate data.
[0014] The operational procedure may further include sending the second frame via a primary path; and sending the third frame via a redundant path.
[0015] The second frame may also include an indicator that shows that the second frame contains the original data.
[0016] A “drop eligible indicator” (DEI) field contained in a media access control (MAC) header of the second frame can be set to a first value, and a DEI field contained in a MAC header of the third frame can be set to a second value.
[0017] The priority of the original data can be identical to the priority of the duplicated data.
[0018] The original data may contain data based on audio-video bridges (AVB protocol).
[0019] Furthermore, according to an example, an operating procedure of a switching device in an Ethernet-based vehicle network includes: determining a first frame containing the first original data; duplicating the second original data to create the second duplicated data; determining a second frame containing the second duplicated data; changing the priority of the second duplicated data from an original value to a lower value than the priority of the first original data; and sending the first frame over a communication channel.
[0020] The operational procedure may further involve changing the priority of the second duplicated data to the original value and sending the second frame over the communication channel.
[0021] The operational procedure may further include changing the priority of the second duplicated data to the original value and sending the second frame over the communication channel.
[0022] The operational procedure may further include, if the priority of the first original data is identical to the priority of the second duplicated data, setting the priority of the second duplicated data to a lower value than the priority of the first original data.
[0023] Changing the priority of the second duplicated data may further involve setting the priority of the second duplicated data to the highest priority value of priority values that belong to a best effort (BE) class.
[0024] The first frame may also include an indicator showing that the first frame contains the first original data.
[0025] The second frame may also contain an indicator showing that the second frame contains the second duplicated data.
[0026] A “drop eligible indicator” (DEI) field contained in a Media Access Control (MAC) header of the first frame can be set to a first value, and a DEI field contained in a MAC header of the second frame can be set to a second value.
[0027] The first original data and the second original data may contain data based on the Audio-Video Bridge (AVB) protocol.
[0028] When the first original data and the second duplicate data are determined, the switching device can be determined to belong to a disputed section that is used for both a main path and a redundancy path, and the priority of the second duplicate data can be set to a lower value than the priority of the first original data.
[0029] According to the embodiments of the present disclosure, in the case where a plurality of data to be transmitted exists over a path, and the corresponding data contained in the plurality of frames have different priorities, the priority of duplicated data from the data contained in the plurality of frames can be changed to a lower value than the priority of the original data contained in the plurality of frames. Thus, the original data can preferably be transmitted before the duplicated data. After the transmission of the original data is complete, the priority of the duplicated data can be changed back to its original priority value, and the transmission of duplicated data can accordingly be guaranteed. BRIEF DESCRIPTION OF THE DRAWINGS
[0030] The forms of the present revelation will become clearer by describing, in detail, the forms of the present revelation with reference to the accompanying drawings, in which: Fig. 1 a diagram that shows a vehicle network topology according to embodiments of the present disclosure; Fig. 2 is a diagram showing a communication node forming a vehicle network according to embodiments of the present invention; Fig. 3 is a block diagram illustrating data transmission in a vehicle network according to embodiments of the present disclosure. Fig. 4 is a block diagram illustrating another data transmission in a vehicle network according to embodiments of the present disclosure; Fig. 5 is a flowchart that shows a Data transmission methods according to embodiments of the present disclosure are illustrated; Fig. Figure 6 is a diagram illustrating an Ethernet frame according to embodiments of the present disclosure; Fig. Figure 7 is a flowchart illustrating a data transmission method according to embodiments of the present disclosure; and Fig. Figure 8 is a concept diagram illustrating a basic snake according to embodiments of the present disclosure.
[0031] It is understood that the drawings referenced above are not necessarily to scale and present a somewhat simplified representation of various preferred features that are illustrative of the basic principles of the disclosure. The specific design features of the present disclosure, including, for example, specific dimensions, orientations, locations, and shapes, are partly determined by the particular intended application and the environment of use. DETAILED DESCRIPTION OF THE EXECUTION FORMS
[0032] The following sections describe in detail the forms of this disclosure with reference to the accompanying drawings. As those skilled in the art would recognize, the described forms can be modified in various different ways, all without departing from the spirit or scope of this disclosure. Furthermore, in this specification, identical reference numerals refer to identical elements.
[0033] The terminology used herein serves only to describe certain forms and is not intended to limit disclosure. As used herein, the singular forms "a," "an," and "the" are to be understood as including plural forms unless the context clearly indicates otherwise. It is further understood that the expressions "includes" and / or "comprehensive," when used in this specification, specify the presence of named features, integers, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof. As used herein, the expression "and / or" includes any and all combinations of one or more of the associated listed elements.
[0034] It is understood that the term "vehicle" or "vehicle-" or any other similar term as used herein includes motor vehicles in general, such as passenger cars including sports utility vehicles (SUVs), buses, trucks, various commercial vehicles, watercraft including a variety of boats and ships, aircraft and the like, and hybrid vehicles, electric vehicles, internal combustion engine vehicles, plug-in hybrid electric vehicles, hydrogen-powered vehicles and other alternative fuel vehicles (e.g. fuels derived from resources other than petroleum).
[0035] Although embodiments are described herein using multiple units to perform the exemplary process, it is understood that the exemplary processes can also be performed by one or more modules. Additionally, the term controller / control unit refers to a hardware device that includes memory and a processor. The memory is configured to store the modules, and the processor is specifically configured to execute the modules to perform one or more processes described below. Furthermore, it is understood that the units or modules described herein implement a controller / control unit for controlling the operation of the unit or module.
[0036] Furthermore, the control logic of this disclosure can be implemented as non-transitory computer-readable media on a computer-readable medium containing executable program instructions that are executed by a processor, controller, or the like. Examples of computer-readable media include, but are not limited to, ROM, RAM, compact disk (CD)-ROMs, magnetic tapes, floppy disks, flash drives, smart cards, and optical data storage devices. The computer-readable recording medium can also be distributed across networked computer systems, such that the computer-readable media are stored and executed in a distributed manner, for example, by a telematics server or a controller area network (CAN).
[0037] Since the present revelation can be modified in various ways and has several forms, specific forms are shown in the accompanying drawings and described in detail in the detailed description. It is understood, however, that the present revelation is not intended to be limited to these specific forms, but rather, on the contrary, that it is meant to encompass all modifications and alternatives that fall within the scope and spirit of the present revelation.
[0038] Relational expressions such as first, second, and the like can be used to describe different elements, but the elements should not be limited by these expressions. These expressions are only used to distinguish one element from another. For example, a first component may be called a second component without altering the scope of protection of the present disclosure, and the second component may similarly be called the first component. The expression "and / or" means any or a combination of a plurality of related and described elements.
[0039] When it is mentioned that a certain component is "coupled with" or "connected to" another component, it is understood that the certain component is directly "coupled with" or "connected to" the other component, or that another component may be located in between. Conversely, when it is mentioned that a certain component is "directly coupled with" or "directly connected to" another component, it is understood that no other component is located in between.
[0040] Unless specifically stated or evident from the context as used herein, the term "approximately" means within a range of normal tolerance in the prior art, for example, within two standard deviations of the average. "Approximately" may be understood as within 10%, 9%, 8%, 7%, 6%, 5%, 4%, 3%, 2%, 1%, 0.5%, 0.1%, 0.05%, or 0.01% of the stated value. Unless otherwise clearly stated from the context, all numerical values provided herein are modified by the term "approximately".
[0041] Unless otherwise specified, all terms used herein (including technical and scientific terms) have the same meanings as they are commonly understood by experts in the field to which the disclosure belongs. Terms such as those commonly used and found in dictionaries should be understood as having meanings consistent with contextual meanings in the field of technology. In this description, unless explicitly defined, terms are not ideally interpreted as having purely formal meanings.
[0042] The following sections describe in detail the forms of the present revelation with reference to the accompanying drawings. To facilitate overall understanding of the revelation, identical numbers refer to the same elements in the description of the figures, and their repeated descriptions are omitted.
[0043] Fig. Figure 1 is a diagram showing a vehicle network topology according to embodiments of the present disclosure.
[0044] As in Fig.As shown in Figure 1, a communication node included in the vehicle network can be a gateway, a switch (or bridge), or an end node. Gateway 100 can be connected to at least one switch 110, 110-1, 110-2, 120, and 130 and can be configured to connect different networks. For example, Gateway 100 can connect a switch that supports a Controller Area Network (CAN) protocol (e.g., FlexRay, Media Oriented System Transport (MOST), or Local Interconnect Network (LIN)) to a switch that supports an Ethernet protocol. Each of the switches 110, 110-1, 110-2, 120, and 130 can be connected to at least one of the end nodes 111, 112, 113, 121, 122, 123, 131, 132, and 133.Each of the switches 110, 110-1, 110-2, 120 and 130 can connect the end nodes 111, 112, 113, 121, 122, 123, 131, 132 and 133 and control at least one of the end nodes 111, 112, 113, 121, 122, 123, 131, 132 and 133 that are connected to the switch.
[0045] End nodes 111, 112, 113, 121, 122, 123, 131, 132, and 133 can contain an electronic control unit (ECU) configured to control various types of devices mounted within a vehicle. For example, end nodes 111, 112, 113, 121, 122, 123, 131, 132, and 133 can contain the ECU within an infotainment device (e.g., a display device, a navigation device, and a surround-view monitoring device).
[0046] The communication nodes (e.g., a gateway, a switch, an end node, or the like) included in the vehicle network can be connected in a star topology, a bus topology, a ring topology, a tree topology, a mesh topology, or the like. Additionally, the communication nodes of the vehicle network can support the CAN protocol, FlexRay protocol, MOST protocol, LIN protocol, or Ethernet protocol. Forms of this disclosure can be applied to the aforementioned network topologies. The network topology to which forms of this disclosure can be applied is not limited and can be configured in various ways.
[0047] Fig.Figure 2 is a diagram showing a communication node representing a vehicle network according to embodiments of the present disclosure. Remarkably, the various methods discussed below can be executed by a controller comprising a processor and memory.
[0048] As in Fig. As shown in Figure 2, a communication node 200 of a network can comprise a PHY layer unit 210 and a control unit 220. Additionally, the communication node 200 can further include a (not shown) regulator for supplying power. In particular, the control unit 220 can be implemented to include a medium access control (MAC) layer.
[0049] A PHY layer unit 210 can be configured to receive or send signals to or from another communication node. The control unit 220 can be configured to control the PHY layer unit 210 and perform various functions (e.g., an infotainment function or the like). The PHY layer unit 210 and the control unit 220 can be implemented as a single system-on-a-chip (SoC) or, alternatively, as separate chips.
[0050] Furthermore, the PHY layer unit 210 and the control unit 220 can be connected via a media-independent interface (MII) 230. The MII 230 can include an interface defined in IEEE 802.3 and can contain a data interface and a management interface between the PHY layer unit 210 and the control unit 220. Instead of the MII 230, a reduced MII (RMII), a Gigabit MII (GMII), a reduced GMII (RGMII), a serial GMII (SGMII), or a 10 GMII (XGMII) can also be used. A data interface can include a transmit channel and a receive channel, each of which can have an independent clock, data, and control signal. The management interface can contain a two-signal interface, one signal for the clock and one signal for the data.
[0051] In particular, the PHY layer unit 210 can include a PHY layer interface unit 211, a PHY layer processor 212, and a PHY layer memory 213. The configuration of the PHY layer unit 210 is not limited to this and can be configured in various ways. The PHY layer interface unit 211 can be configured to send a signal received from the control unit 220 to the PHY layer processor 212 and to send a signal received from the PHY layer processor 212 to the control unit 220. The PHY layer processor 212 can be configured to perform operations of the PHY layer interface unit 211 and the PHY layer memory 213. The PHY layer processor 212 can be configured to modulate a signal to be sent or to demodulate a received signal.The PHY layer memory 213 can be configured to store the received signal and output the stored signal based on a request from the PHY layer processor 212.
[0052] The control unit 220 can be configured to monitor and control the PHY layer unit 210 using the MIII 230. The control unit 220 can include a control interface unit 221, a control processor 222, a main memory 223, and a submemory 224. The configuration of the control unit 220 is not limited to this, and the control unit 220 can be configured in various ways. The control interface unit 221 can be configured to receive a signal from the PHY layer unit 210 (e.g., the PHY layer interface unit 211) or an upper layer (not shown), send the received signal to the control processor 222, and send the signal received from the control processor 222 to the PHY layer unit 210 or upper layer.The control processor 222 can further include independent memory control logic or integrated memory control logic for controlling the control interface unit 221, the main memory 223, and the submemory 224. The memory control logic can be implemented in the main memory 223, and the submemory 224 can be implemented in the control processor 222.
[0053] Furthermore, both the main memory 223 and the submemory 224 can be configured to store a signal processed by the control processor 222 and can be configured to output the stored signal based on a request from the control processor 222. The main memory 223 can be volatile memory (e.g., random access memory (RAM)) configured to temporarily store data required for the operation of the control processor 222. The submemory 224 can be non-volatile memory in which operating system code (e.g., a kernel and a device driver) and application program code for performing a function of the control unit 220 can be stored.A high-speed flash memory, a hard disk drive (HDD), or a read-only compact disc (CD-ROM) for large-capacity data storage can be used as the non-volatile memory. Typically, the 222 control processor can include logic circuitry with at least one processing core. A core from the Advanced RISC Machine (ARM) family or an Atom family core can be used as the 222 control processor.
[0054] A procedure performed by a communication node and a corresponding counterpart communication node in a vehicle network is described below. Although the procedure (e.g., sending or receiving a signal) performed by a first communication node is described below, the procedure is applicable to a second communication node that corresponds to the first. In other words, if an operation of the first communication node is described, the corresponding second communication node can be configured to perform an operation equivalent to the operation of the first communication node. Additionally, if an operation of the second communication node is described, the first communication node can be configured to perform an operation equivalent to a switch operation.
[0055] Fig.Figure 3 is a block diagram illustrating a data transmission example in a vehicle network according to embodiments of the present disclosure.
[0056] As in Fig. As shown in Figure 3, each end node 301 and 302 and switch 310, 320, 330, 340, 350 and 360 can have an identical or similar structure to that of the one referring to Fig. The communication node 200 described in section 2 is present. End nodes 301 and 302 and switches 310, 320, 330, 340, 350, and 360 can support IEEE 802.1AS, IEEE 802.1Qav, IEEE 802.1Qat, IEEE 802.1BA, IEEE 802.1CB, etc. End node 301 can act as a speaker, and end node 302 can act as a listener corresponding to the speaker.
[0057] End nodes 301 and 302 can reserve a power transmission based on a Power Reservation Protocol (SRP). For example, end node 301 can send an announcement frame in a broadcast manner. End node 302 can receive an announcement frame from end node 301 and send a ready frame, which is a response to the announcement frame, back to end node 301. End node 301 can then receive the ready frame from end node 302. The power transmission between end node 301 and end node 302 can be reserved using the procedure described above.
[0058] After the power transmission reservation is complete, end node 301 can generate a first frame containing initial original data and send this first frame to switch 310. The original data can be based on the Audio-Video Bridge (AVB) protocol.
[0059] Switch 302 can receive the first frame from end node 301. Switch 302 can send frames over multiple paths for smooth transmission. These multiple paths can be classified into a primary path and a secondary path. The primary path can be configured as "Switch 310 - Switch 320 - Switch 330 - Switch 340", and the secondary path can be configured as "Switch 310 - Switch 350 - Switch 360 - Switch 340".
[0060] Switch 310 can retrieve the initial original data from the first frame and generate a second frame containing the same initial data. This second frame can be identical to the first. Alternatively, switch 310 can duplicate the initial data by duplicating the initial original data and generate a third frame containing the duplicated data. The priority of the initial original data can be identical to that of the duplicated data. For example, the priorities of the initial original data and the duplicated data can be set to either a power reservation (SR) class A or an SR class B.
[0061] Switch 310 can send the second frame through the first main path and the third frame through the first redundant path. The second and third frames can be sent simultaneously. Switch 320 can receive the second frame from switch 310 and send it to switch 330. Switch 330 can receive the second frame from switch 320 and send it to switch 340. Meanwhile, switch 350 can receive the third frame from switch 310 and send it to switch 360. Switch 360 can receive the third frame from switch 350 and send it to switch 340.
[0062] Switch 340 can receive the second and third frames. If switch 340 successfully receives the second frame, which contains the first original data (e.g., if the second frame is not lost or if there is no error in the second frame), switch 340 can discard the third frame. Switch 340 can then send the second frame to end node 302. End node 302 can receive the second frame from switch 340 and extract the first original data from the received second frame.
[0063] On the other hand, if the second frame containing the first original data is lost, or if an error exists in the second frame, and the third frame containing the first duplicated data is successfully received, switch 340 can send the third frame to end node 302. End node 302 can receive the third frame from switch 340 and extract the first duplicated data from the received third frame.
[0064] Fig. Figure 4 is a block diagram illustrating another transmission example in a vehicle network according to embodiments of the present disclosure.
[0065] As in Fig. As shown in Figure 4, each of the end nodes 301, 302, 303 and 304 and switches 310, 320, 330, 340, 350 and 360 can have an identical or similar structure to that of the one shown with reference to Fig.The two described communication nodes 200 are present. End nodes 301, 302, 303, and 304, and switches 310, 320, 330, 340, 350, and 360 can support IEEE 802.1AS, IEEE 802.1Qav, IEEE 802.1Qat, IEEE 802.1BA, IEEE 802.1CB, etc. Here, end nodes 301 and 303 can be speakers. End node 302 can be a listener corresponding to end node 301, and end node 304 can be a listener corresponding to end node 303. End nodes 301, 302, 303, and 304 can reserve power transmissions based on SRP. The power transmission from end node 301 to end node 302 can be identical to or similar to that described in [reference to...]. Fig. The transmission described in section 3 can be carried out. The power transmission from end node 303 to end node 304 can be carried out as follows.
[0066] After the power transmission reservation is complete, end node 303 can generate a fourth frame containing the second set of original data and send it to switch 350. The second set of original data can also be data based on an AVB protocol. Switch 350 can receive the fourth frame from end node 303. Switch 350 can send frames through multiple paths for smooth transmission. These multiple paths can be classified into a primary path and a secondary redundant path. The primary path can be configured as "Switch 350 - Switch 360 - Switch 340 - Switch 330," and the secondary redundant path can be configured as "Switch 350 - Switch 310 - Switch 320 - Switch 330."
[0067] Switch 350 can extract the second set of original data from the fourth frame and generate a fifth frame containing this second set of original data. The fifth frame can be identical to the fourth frame. Alternatively, switch 350 can duplicate the second set of original data and generate a sixth frame containing this second set of duplicate data. The priority of the second set of original data can be the same as that of the second set of duplicate data. For example, the priorities of the second set of original data and the second set of duplicate data can be set to SR Class A or SR Class B. Switch 350 can send the fifth frame via the second primary path and the sixth frame via the second redundant path. The fifth and sixth frames can be sent simultaneously.
[0068] Switch 360 can receive the fifth frame from switch 350 and send the received fifth frame to switch 340. Switch 340 can receive the fifth frame from switch 360 and send the received fifth frame to switch 330. Meanwhile, switch 310 can receive the sixth frame from switch 350 and send the received sixth frame to switch 320. Switch 320 can receive the sixth frame from switch 310 and send the received sixth frame to switch 330.
[0069] Switch 330 can receive the fifth and sixth frames. If switch 330 receives the fifth frame containing the second set of original data (e.g., if the fifth frame is not lost or if there is no error in the fifth frame), switch 330 can discard the sixth frame. Switch 330 can then send the fifth frame to end node 304. End node 304 can receive the fifth frame from switch 330 and extract the second set of original data from the received fifth frame.
[0070] In contrast, if the fifth frame containing the second set of original data is lost, or if an error exists in the fifth frame, and the sixth frame containing the second set of duplicated frames is successfully received, switch 330 can send the sixth frame to end node 304. End node 304 can then receive the sixth frame from switch 330 and extract the second set of duplicated data from the received sixth frame.
[0071] Meanwhile, switch 310 can have two frames to be sent to switch 320. If the two frames have different priorities, switch 310 can send a frame with a higher priority to switch 320 and then send the other frame to switch 320. However, if the priorities of the two frames are identical, and one frame contains the first original data and the other contains the second duplicate data, it is preferable to send the frame containing the first original data before sending the frame containing the second duplicate data. However, the frame containing the second duplicate data may occasionally be sent before the frame containing the first original data, and therefore, preferential transmission of the first original data cannot be guaranteed.The problem described above can also occur in other switches 320, 330, 340, 350 and 360.
[0072] The description below outlines data transmission methods according to the forms of the present disclosure, which are contained in Fig. 3 vehicle network described or in the Fig. The data transmission method described in section 4 is explained. The vehicle network in which the data transmission methods are used is not limited to such vehicle networks. This means that the data transmission method described can be applied to various vehicle networks.
[0073] Fig. Figure 5 is a sequence diagram illustrating a data transmission method according to embodiments of the present disclosure.
[0074] As in Fig. As shown in Figure 5, each of the end nodes 301, switch 310, switch 320 and switch 350 can have an identical or similar structure to that of the one shown in Figure 5. Fig.The communication node 200 described in section 2 can also be located at end node 301, switch 310, switch 320, and switch 350. Fig. 3 vehicle network described and the one in Fig. The vehicle network described in section 4 is formed. End node 301 can be a speaker and send a frame to end node 302, which is a corresponding listener. End node 301 can generate a first frame containing the first original data. The first original data can be AVB-based data. The first frame can be an Ethernet frame with the structure shown below.
[0075] Fig. Figure 6 is a diagram illustrating an Ethernet frame according to embodiments of the present disclosure.
[0076] As in Fig.As shown in Figure 6, an Ethernet frame 600 can include a preamble 610, a MAC header, a payload 660, and a cyclic redundancy check / frame check sequence (CRC / FCS) field 670. The preamble 610 can be 8 octets in size and is used for timing synchronization. The MAC header can include a destination address field 620, a source address field 630, a virtual local area network (VLAN) tag field 640, and a type length field 650. The destination address field 620 can be 6 octets in size and includes identification information (e.g., a MAC address) and a communication node for receiving the Ethernet frame. The source address field 630 can be 6 octets in size and includes identification information (e.g., a MAC address) of a communication node sending the Ethernet frame 600.
[0077] The VLAN tag field 640 can be a VLAN tag defined in IEEE 802.1Q. The VLAN tag field 640 can include a Tag Frame Identifier (TPID) field 641 and a Tag Control Information (TCI) field. The TPID field 641 can be 16 bits long and is used to identify a tag frame. The TCI can be represented by a Priority Code Point (PCP) field 642, a Drop Eligible Indicator (DEI) field 643, and a VLAN ID field 644. The PCP field can be 3 bits long and specifies a priority.
[0078] The DEI field 643 can be 1 bit in size and indicates whether the frame can be dropped in a specific environment (e.g., if traffic increases rapidly). For example, if DEI field 643 is configured as a binary value of "0", this indicates that Ethernet frame 600 is a frame that cannot be dropped. If DEI field 643 is configured as a binary value of "1", this indicates that Ethernet frame 600 is a frame that can be dropped. The VLAN ID field 644 can be 12 bits in size and is used to identify a VLAN.
[0079] The Type / Length field 650 can have a size of 2 octets and can specify the Ethernet type supported by the communication node sending the Ethernet frame 600, or the length of the Ethernet frame 600. For example, if the value of the Type / Length field 650 is not greater than the decimal number 1500, it can specify the length of the Ethernet frame 600. If the value of the Type / Length field 650 is not less than the decimal number 1536, it can specify the supported Ethernet type. The Ethernet frame 600 can also include a pad field, which can be added after the payload 660.
[0080] On the other hand, the data contained within the framework can have a priority, and this priority can be classified into an SR class, a best-effort (BE) class, etc. The priority of the SR class can be higher than that of the BE class. The SR class can also be classified into SR class A and SR class B. The priority of SR class A can be the same as or higher than that of SR class B. Table 1 below shows the priorities of the respective classes. Table 1 Number of priority levels 2 3 4 5 6 7 8 BE class 0 0 0 0 0 0 1 0 0 0 0 0 0 0 SR Class B 1 1 2 3 4 5 6 SR Class A 1 2 3 4 5 6 7 BE class 0 0 1 1 1 1 2 0 0 1 1 1 2 3 0 0 1 2 2 3 4 0 0 1 2 3 4 5
[0081] The higher the priority level, the higher the priority. If two priority levels, 0 and 1, are used, the priority levels for SR Class A and SR Class B can be set to "1," and the priority level for BE Class can be set to "0." If three priority levels, 0, 1, and 2, are used, the priority for SR Class A can be set to "2," the priority for SR Class B can be set to "1," and the priority for BE Class can be set to "0." If four priority levels, 0, 1, 2, and 3, are used, the priority for SR Class A can be set to "3," the priority for SR Class B can be set to "2," and the priority for BE Class can be set to "1" or "0."In the case where five priority levels 0, 1, 2, 3 and 4 are used, the priority of SR class A can be set to "4", the priority of SR class B can be set to "3", and the priority of BE class can be set to "0", "1" or "2".
[0082] If six priority levels (0, 1, 2, 3, 4, and 5) are used, the priority of SR class A can be set to "5," the priority of SR class B can be set to "4," and the priority of BE class can be set to "0," "1," "2," or "3." If seven priority levels (0, 1, 2, 3, 4, 5, and 6) are used, the priority of SR class A can be set to "6," the priority of SR class B can be set to "5," and the priority of BE class can be set to "0," "1," "2," "3," or "4." In the case where eight priority levels 0, 1, 2, 3, 4, 5, 6 and 7 are used, the priority of SR class A can be set to "7", the priority of SR class B can be set to "6", and the priority of BE class can be set to "0", "1", "2", "3", "4", or "5".
[0083] Referring again to Fig.5. The PCP field 642 of the first frame can specify a priority corresponding to SR class A or B. End node 301 can send the first frame to switch 310 (S500). Switch 310 can receive the first frame from end node 301 and extract the first original data from the first frame. Switch 310 can then generate a second frame containing the first original data (S510). The second frame can contain an indicator indicating that it contains the first original data. For example, DEI field 643 of the second frame can be used as the indicator. DEI field 643 of the second frame can be set to a binary value of "0", which can indicate that the second frame contains the first original data.
[0084] Switch 310 can generate initial duplicate data by duplicating the initial original data and creating a third frame containing the initial duplicate data (S520). The priority of the initial original data can be identical to that of the initial duplicate data. The third frame can include an indicator indicating that it contains the initial duplicate data. For example, DEI field 643 of the third frame can be used as the indicator. DEI field 643 of the third frame can be set to a binary value of "1", which can indicate that the third frame contains the initial duplicate data.
[0085] Switch 310 can send the second frame via a main path (S530). If the main path is configured as "Switch 310 - Switch 320 - Switch 330 - Switch 340", Switch 310 can send the second frame to Switch 320. Switch 310 can also send the third frame via a redundant path (S540). If the redundant path is configured as "Switch 310 - Switch 350 - Switch 360 - Switch 340", Switch 310 can send the third frame to Switch 350. In this case, the second and third frames can be sent simultaneously.
[0086] The second frame can be sent to switch 340 via the main path, and the third frame can be sent to switch 340 via the redundancy path. If the second frame, containing the first original data, is received successfully (e.g., if the second frame is not lost or if there is no error in the second frame), switch 340 can discard the third frame. Then, switch 340 can send the second frame to end node 302. End node 302 can receive the second frame from switch 340 and extract the first original data from the received second frame.
[0087] On the other hand, if the second frame containing the first original data is lost, or if an error exists in the second frame, and the third frame containing the first duplicated data is successfully received, switch 340 can send the third frame to end node 302. End node 302 can receive the third frame from switch 340 and extract the first duplicated data from the received third frame.
[0088] Fig. Figure 7 is a flowchart illustrating a data transmission method according to embodiments of the present disclosure.
[0089] As in Fig. As shown in section 7, a data transmission method can be used in which, with reference to Fig.The data transmission procedure described in section 4 can be carried out via the vehicle network. This procedure can be performed by a switch (e.g., switch 310, etc.) that has a connection used as both a primary and a redundant path (or belongs to a section used for both a primary and a redundant path). Switch 310 can determine a plurality of frames (S700). For example, switch 310 can determine initial original data from end node 301 and generate one frame containing the initial original data and one containing the first duplicated data generated by duplicating the initial original data. Switch 310 can also receive a second frame containing original data from switch 350, or a second duplicated data frame generated by duplicating the second original data.In the following description, it is assumed that the majority of frames include the first frame and the second frame, the first frame contains the first original data, and the second frame contains the second duplicated data generated by duplicating the second original data.
[0090] Switch 310 can determine whether the communication path of the first frame is identical to that of the second frame (S705). If the path of the first frame differs from that of the second frame, switch 310 can send the first and second frames via their respective paths (S710). Conversely, if the path of the first frame is identical to that of the second frame, switch 310 can determine whether the priority of the first original data contained in the first frame is identical to that of the second duplicated data contained in the second frame (S715).
[0091] In the event that the priority of the first original data differs from that of the second duplicated data, switch 310 can send the first frame and the second frame based on their priorities (S720). For example, if the priority of the first original data is higher than that of the second duplicated data, switch 310 can send the first frame containing the first original data and then the second frame containing the second duplicated data. Conversely, if the priority of the first original data is lower than that of the second duplicated data, switch 310 can send the second frame containing the second duplicated data and then the first frame containing the first original data.
[0092] In the event that the priority of the first original data is identical to that of the second duplicated data, switch 310 can identify the DEI field of the first frame and the DEI field of the second frame (S725). This means that switch 310 can identify the values of DEI fields to distinguish between a frame containing original data and a frame containing duplicated data. Here, the priority of the first original data and the priority of the second duplicated data can be SR Class A and SR Class B, respectively. If the DEI values of the first and second frames are configured identically, switch 310 can send either of the two frames first and then the other. Conversely, if the DEI values of the first and second frames are configured differently, switch 310 can send the frames in the following manner.
[0093] If the DEI field of the first frame is configured with the binary value "0", this indicates that the first frame contains original data (e.g., the first original data). Switch 310 can then queue the first original data according to its priority (S730). If the DEI field of the second frame is configured with the binary value "1", this indicates that the second frame contains duplicate data (e.g., the second duplicate data). To assign a higher priority to the first original data than to the second duplicate data, switch 310 can reassign the priority of the second duplicate data so that its priority becomes lower than that of the first original data (S735). For example, switch 310 can assign the highest priority of the BE class to the second duplicate data.Switch 310 can place the second duplicated data into a queue according to the newly assigned priority (S740). The data queued in the procedure described above can be explained as follows.
[0094] Fig. Figure 8 is a concept diagram illustrating a queue according to embodiments of the present disclosure.
[0095] As in Fig.As shown in Figure 8, switch 310 can comprise eight queues: 801, 802, 803, 804, 805, 806, 807, and 808. If priorities are classified into eight levels, such as "0", "1", "2", "3", "4", "5", "6", and "7", the first queue (801) and the second queue (802) can be used for AVB-based data, and the third queue (803), fourth queue (804), fifth queue (805), sixth queue (806), and seventh queue (807) can be used for BE data. The first original data can be placed in the first queue (801), provided the priority of the first original data belongs to SR class A. The first original data can be placed in the second queue 802, provided that the priority of the first original data belongs to SR class B. The second duplicate data, whose priority is reassigned, can be placed in the third queue 803.Accordingly, the first original data can preferably be sent before the second duplicated data.
[0096] As referring to Fig. 7. Switch 310 can generate a first frame containing the first original data and send this first frame to another communication node (e.g., switch 320) (S745). Then, switch 310 can reassign the priority of the second duplicated data to its original priority (e.g., SR class A or SR class B), generate a second frame containing the second duplicated data with the newly assigned priority, and send this second frame to another communication node (e.g., switch 320) (S750).
[0097] The methods according to embodiments of the present disclosure can be implemented as program instructions executable by a plurality of computers and recorded on a computer-readable medium. The computer-readable medium may contain a program instruction, a data file, a data structure, or a combination thereof. The program instructions recorded on the computer-readable medium may be specifically designed and configured for the present disclosure, or they may be generally known and available to those skilled in the art of computer software.
[0098] Examples of computer-readable media may include a hardware device such as ROM, RAM, and flash memory, specifically configured to store and execute program instructions. Examples of program instructions include machine code, generated, for example, by a compiler, as well as high-level language code executable by a computer using an interpreter. The exemplary hardware device described above may be configured to function as at least one software module to perform the operation described in this disclosure, and vice versa.
[0099] While embodiments of the present disclosure and their advantages have been described in detail above, it is understood that various changes, replacements and modifications can be made to it without deviating from the scope of protection of the disclosure.
Claims
[1] Operational method of a switching device (310) in an Ethernet-based vehicle network, the method comprising: Receiving a first frame containing original data from an end node; Generating a second frame containing the original data; Duplicating the original data to create duplicate data; and Generating a third frame containing the duplicated data and an indicator that shows that the third frame contains the duplicated data; Sending the second frame via a main path (S530); and Sending the third frame via a redundancy path (S540); where a “drop eligible indicator” (DEI) field (643) contained in a Media Access Control (MAC) header of the second frame is set to an initial value to indicate that the second frame contains the original data. [2] Operational method according to claim 1, wherein the second frame further includes an indicator that indicates that the second frame contains the original data. [3] Operational method according to claim 1 or 2, wherein a DEI field contained in a MAC head of the third frame is set to a second value to indicate that the second frame contains the duplicated data. [4] Operational method according to claim 1, wherein a priority of the original data is identical to a priority of the duplicated data. [5] Operational method according to claim 1, wherein the original data includes data based on the Audio-Video Bridge (AVB) protocol. [6] A switching device (310) in an Ethernet-based vehicle network, comprising at least one processor configured to cause the switching device (310) to: Receiving a first frame containing original data from an end node; Generating a second frame containing the original data; Duplicating the original data to create duplicate data; and Generating a third frame containing the duplicated data and an indicator that shows that the third frame contains the duplicated data; Sending the second frame via a main path (S530); and Sending the third frame via a redundancy path (S540); where a “drop eligible indicator” (DEI) field (643) contained in a Media Access Control (MAC) header of the second frame is set to an initial value to indicate that the second frame contains the original data. [7] The switching device (310) according to claim 6, wherein the second frame further includes an indicator that indicates that the second frame contains the original data. [8] The switching device (310) according to claim 6 or 7, wherein a DEI field (643) contained in a MAC head of the third frame is set to a second value to indicate that the second frame contains the duplicated data. [9] The switching device (310) according to claim 6, wherein a priority of the original data is identical to a priority of the duplicated data. [10] The switching device (310) according to claim 6, wherein the original data includes data based on the Audio Video Bridge (AVB) protocol.
Citation Information
Patent Citations
Ring coupling nodes for high availability networks
US20110116508A1
System for managing lossless failover in an AVB network
US20130185451A1
Methods and devices for file folder path identification and file folder cleaning
WO2016202307A1