Relay device, relay program, and relay method
The relay device addresses frame relay issues post-failure by dynamically adjusting reception ranges based on sequence numbers, ensuring timely and reliable frame relay and reducing communication delays.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-09-18
- Publication Date
- 2026-04-02
AI Technical Summary
Existing Ethernet communication protocols, such as IEEE 802.1CB, face issues with reliable frame relay after a failure in a redundant path due to delayed updates in reception tolerance ranges, leading to potential frame discard and communication disruption.
A relay device with a detection unit to identify path failures, a determination unit to confirm recovery, and an update unit to dynamically adjust the reception range based on sequence numbers, ensuring timely relay of frames post-failure.
Ensures quick and reliable relay of frames with the latest sequence numbers post-recovery, minimizing communication delays and buffer overflow, thus maintaining seamless communication.
Smart Images

Figure JP2025032924_02042026_PF_FP_ABST
Abstract
Description
Relay Device, Relay Program, and Relay Method Cross - reference to Related Applications
[0001] This international application claims priority based on Japanese Patent Application No. 2024 - 165312 filed with the Japan Patent Office on September 24, 2024, and incorporates the entire contents of Japanese Patent Application No. 2024 - 165312 by reference into this international application.
[0002] The present disclosure relates to a relay device and a relay program that relay frames in Ethernet (registered trademark) communication.
[0003] In IEEE802.1CB, a communication protocol for transmitting frames from a Talker to a Listener via a plurality of redundant paths in Ethernet communication is defined. According to this communication protocol, a relay device connected to the Listener stores the maximum value of the sequence numbers stored in the received redundant frames as RecovSeqNum (hereinafter, the reference number), and determines a reception allowable range based on the reference number. Then, redundant frames including sequence numbers within the reception allowable range are relayed to the Listener, while redundant frames including sequence numbers outside the reception allowable range are discarded.
[0004] Here, when a failure occurs in the redundant path with the shortest relay time for redundant frames (hereinafter, the first path), the redundant frames are relayed via a redundant path with a longer relay time (hereinafter, the slow path). However, the sequence numbers of the redundant frames relayed via the slow path are smaller than those of the redundant frames relayed via the first path, and there is a delay difference between these sequence numbers. Therefore, during the period when a failure occurs in the first path, the values included in the reception allowable range determined based on the reference number managed by the relay device are relatively smaller compared to the normal period of the first path.
[0005] Therefore, if the delay difference between the fast path and the slow path is large, when the fast path fails, the sequence number of the redundant frame relayed from the fast path may always fall outside the acceptable range for reception. As a result, the redundant frame relayed from the fast path is always discarded, rendering the purpose of providing a redundant path negated.
[0006] In contrast, the technology disclosed in Patent Document 1, when a relay device connected to a Listener receives a redundant frame, calculates the difference between the reference number and the sequence number contained in the redundant frame, and also calculates a weighted average of the difference. Then, flerSeqRcvyHistoryLength, which is the distance from the reference number to the upper or lower limit of the acceptable reception range, is dynamically determined based on the weighted average.
[0007] CN116319534A
[0008] However, detailed examination revealed the following issues. Specifically, even when using the technology disclosed in Patent Document 1, if the delay difference is large, the reception tolerance range may not be updated to an appropriate range until a certain number of redundant frames are received from the first path after the failure is recovered. Therefore, it may take time before redundant frames from the first path can be received.
[0009] One aspect of this disclosure is providing a technology for reliably relaying redundant frames to a communication terminal after a failure has been recovered in a redundant path.
[0010] One aspect of this disclosure is a relay device configured to perform communication. The relay device comprises a relay unit, an update unit, a detection unit, and a determination unit. The relay unit is configured to transmit the redundant frame with the R-TAG removed to a communication terminal if the sequence number in the R-TAG included in the redundant frame received from each of the multiple redundant paths is within the acceptable range of reception determined based on a reference number, and if it is determined that the redundant frame was received first based on the sequence number. The update unit is configured to update the reference number based on the sequence number of the R-TAG in the redundant frame if the sequence number of the R-TAG in the redundant frame received from each of the multiple redundant paths is within the acceptable range of reception, and is greater than the sequence number used to update to the current reference number. The detection unit is configured to detect failures in the multiple redundant paths. The determination unit is configured to determine whether the failure detected by the detection unit has been recovered. The update unit is configured to update the reference number based on the sequence number of the R-TAG of a redundant frame received from a redundant path that the determination unit has determined to have recovered from a failure, if the sequence number of the R-TAG of the redundant frame exceeds the upper limit of the acceptable reception range. The relay unit is configured to transmit the redundant frame with the R-TAG removed to the communication terminal if the sequence number of the R-TAG of the redundant frame received from a redundant path that the determination unit has determined to have recovered from a failure exceeds the upper limit of the acceptable reception range.
[0011] According to the above configuration, after a failure in the redundant path is recovered, the redundant frame with the latest sequence number can be quickly relayed to the communication terminal. Therefore, after a failure in the redundant path is recovered, the redundant frame can be relayed smoothly.
[0012] This is an explanatory diagram of a redundant path. Figure 2A is a block diagram of the relay device. Figure 2B is an explanatory diagram of the reception tolerance range. Figure 3A is a flowchart of the fault detection process. Figure 3B is a flowchart of the recovery determination process. Figure 4 is a flowchart of the update process. Figure 5 is an explanatory diagram of Comparative Example 1. Figure 6 is an explanatory diagram of the embodiment.
[0013] Embodiments of this disclosure will be described below with reference to the drawings.
[0014] [1. Overview] The relay device 1 of this embodiment functions as a so-called Ethernet switch and can be connected to communication terminals 2 (in other words, end stations, which in Figure 1 refer to the Talker and Listener that perform communication) and other relay devices 1 (see Figures 1 and 2A). The relay device 1 is configured to perform Ethernet communication with the communication terminals 2 connected to it and with the communication terminals 2 connected to other relay devices 1.
[0015] Furthermore, the relay device 1 is configured to perform redundant communication via redundant paths compliant with IEEE (Institute of Electrical and Electronics Engineers) 802.1CB. Of course, the relay device 1 may not be limited to IEEE 802.1CB itself, but may also perform redundant communication compliant with a communication protocol similar to IEEE 802.1CB, specifically, for example, a communication protocol that is a revised version of IEEE 802.1CB or a communication protocol that references IEEE 802.1CB. In other words, the relay device 1 can be connected to multiple other relay devices 1 having a similar configuration to form multiple redundant paths. In Figure 1, as an example, multiple (four as an example) relay devices 1 are connected to form a ring network, and two redundant paths P1 and P2 are formed on the ring network. However, the relay devices 1 are not limited to this, and multiple relay devices 1 can be connected to form two or three or more redundant paths in various ways.
[0016] Furthermore, the relay device 1 is configured, for example, for in-vehicle use, and is connected to another relay device 1 mounted in the vehicle and to a communication terminal 2 which is an ECU (Electronic Control Unit). However, the relay device 1 can be used for various purposes, not just in vehicles.
[0017] [2. Configuration of the relay device] The relay device 1 comprises a control unit 10, a communication unit 11, and a plurality of ports 12 (see Figure 2A).
[0018] The control unit 10 comprises a CPU (Central Processing Unit) 10A and a memory 10B. The memory 10B includes RAM (Random Access Memory), ROM (Read Only Memory), and flash memory. The CPU 10A operates according to the relay program 10C stored in the memory 10B, executing processing for the overall control of the relay device 1. The memory 10B is configured as a non-transitional physical recording medium.
[0019] In this embodiment, the functions and processing of the relay device 1 are, for example, realized by a CPU 10A operating according to the relay program 10C. However, the functions and processing of the relay device 1 are not limited to this, and may be realized by a CPU 10A operating according to the relay program 10C and an electronic circuit, or by an electronic circuit alone.
[0020] Furthermore, memory 10B stores the reference number and history information 10D (details will be described later) of the sequence number 31 of the redundant frame 3, which was received because it was within the acceptable reception range.
[0021] Port 12 is connected to another relay device 1 or communication terminal 2 by an Ethernet communication cable.
[0022] The communication unit 11 is a component for performing Ethernet communication with other relay devices 1 or communication terminals 2 connected to port 12.
[0023] [3. Redundant Communication] In the ring network shown in Figure 1, as an example, when redundant communication is performed from a communication terminal 2 acting as a Talker to another communication terminal 2 acting as a Listener, two redundant paths P1 and P2 are formed by relay devices 1A to 1C and relay devices 1A, 1C, and 1D. Each redundant path P1 and P2 includes the same number of relay devices 1, as an example. However, the number of relay devices 1 included in each redundant path P1 and P2 may be different. Furthermore, redundant path P1 is configured as a fast path P1, where the time required to relay redundant frames 3 is relatively short, and redundant path P2 is configured as a slow path P2, where the time required to relay redundant frames 3 is relatively long.
[0024] When redundant communication is performed using redundant paths P1 and P2, when relay device 1 receives frame 4 from Talker, it adds a redundant tag (hereinafter, R-TAG) 30 to frame 4, generates a redundant frame 3, and duplicates the redundant frame 3 (S100). Then, relay device 1 transmits the redundant frame 3 to relay device 1 to which the Listener is connected via the fast path P1 and the slow path P2, and after the redundant tag 30 is removed at relay device 1, frame 4 is relayed to the Listener.
[0025] <Sequence Number> R-TAG30 contains a sequence number 31 that is updated by the relay device 1 connected to the Talker (see Figure 1). The relay device 1 increments the sequence number each time it generates a redundant frame 3 (S100). Then, when the relay device 1 next receives a frame from the Talker, it assigns the R-TAG30 containing the updated sequence number 31 to the frame and generates a redundant frame 3. In other words, the sequence number 31 of the redundant frame 3 that the relay device 1 connected to the Talker transmits to each of the redundant paths P1 and P2 increases by 1, from 0, 1, 2, ... and as the sequence number 31 increases, it becomes a newer redundant frame 3.
[0026] Then, when the relay device 1 connected to the Listener receives the redundant frame 3, it adds the sequence number 31 of the redundant frame 3 to the history information 10D (S105). The history information 10D corresponds to SequenceHistory in IEEE 802.1CB.
[0027] Furthermore, if the redundant frame 3 arrives first and the sequence number 31 of the redundant frame 3 is within the acceptable reception range, the relay device 1 generates a frame 4 by removing the R-TAG 30 from the redundant frame 3 and transmits it to the listener (S105). On the other hand, if the redundant frame 3 arrives later, or if the sequence number 31 of the redundant frame 3 is outside the acceptable reception range, the relay device 1 discards the redundant frame 3.
[0028] <Determination of First / Last Arrival> When the relay device 1 connected to the Listener receives a redundant frame 3, it determines whether the redundant frame 3 has not been received or not based on the sequence number 31 of the redundant frame 3 and the sequence number indicated by the history information 10D (S105). If it has not been received, the redundant frame 3 is determined to be the first arrival; if it has already been received, the redundant frame 3 is determined to be the second arrival.
[0029] <Reception Permitted Range> The relay device 1 connected to the Listener stores in memory 10B a reference number indicating the highest number of received sequence numbers and history information 10D indicating whether or not the redundant frame 3 has been received within the reception permitted range, based on the sequence number 31 of the redundant frame 3 relayed to the Listener (S105). In other words, if the sequence number 31 of the received redundant frame 3 is within the reception permitted range and is greater than (in other words, newer than) the current reference number, the reference number is updated to the sequence number 31.
[0030] Then, the permissible reception range is determined based on the reference number (see Figure 2B). The reference number corresponds to RecovSeqNum in IEEE 802.1CB. The number obtained by subtracting a predetermined value (frerSeqRcvyHistoryLength) from the reference number becomes the lower limit of the permissible reception range, and the number obtained by adding the same predetermined value to the reference number becomes the upper limit of the permissible reception range.
[0031] [4. Processing during redundant communication] When performing redundant communication, the relay device 1 connected to the Listener performs fault detection processing, recovery determination processing, and update processing.
[0032] <Fault Detection Process> The fault detection process is the process of detecting faults in redundant paths P1 and P2, and is executed periodically at intervals by the relay device 1 connected to the Listener, targeting each of the redundant paths P1 and P2. The fault detection process will be explained below using Figure 3A.
[0033] In S200, the relay device 1 determines whether or not an interruption in Ethernet communication (hereinafter referred to as a link break) has occurred at port 12 to which another relay device 1 forming a redundant path is connected. Specifically, the relay device 1 may determine whether a link break has occurred based on the state of port 12, for example, the voltage level of the terminals constituting port 12. If an affirmative determination is obtained (S200: YES), the relay device 1 proceeds to S210, and if a negative determination is obtained (S200: NO), it proceeds to S205.
[0034] In S205, the relay device 1 determines whether the elapsed time since the last redundant frame 3 was received from the redundant path (hereafter referred to as the unreceived time) is equal to or greater than a predetermined threshold. If the relay device 1 obtains a positive determination (S205: YES), it proceeds to S210; if it obtains a negative determination (S205: NO), it terminates this process.
[0035] In S210, the relay device 1 detects a failure in the redundant path that is the target of the failure detection process, and terminates this process.
[0036] Furthermore, the method for detecting a failure in the redundant path is not limited to this; for example, one of S200 and S205 may be omitted. In other words, a failure in the redundant path may be detected based on only one of the status of port 12 and the unreceived time.
[0037] <Recovery Determination Process> The recovery determination process is the process of determining whether or not the fault detected in the fault detection process has been recovered. It is executed periodically at the relay device 1 connected to the Listener, targeting the redundant path (hereinafter referred to as the fault path) where the fault was detected. The recovery determination process will be explained below using Figure 3B.
[0038] In S300, the relay device 1 determines whether or not it has received a redundant frame 3 from the faulty path. If the relay device 1 obtains a positive result (S300: YES), it proceeds to S305; if it obtains a negative result (S300: NO), it terminates this process.
[0039] In S305, the relay device 1 determines that the failure of the failed path where the redundant frame 3 was received has been recovered, and ends this process.
[0040] <Update Process> The update process is a process of updating the reference number etc. when the failed path is recovered, and is executed within a predetermined period after the recovery of the failed path by the relay device 1 connected to the Listener. Hereinafter, the update process will be described using FIG. 4.
[0041] In S400, the relay device 1 determines whether or not it has received the redundant frame 3 from the redundant path that has recovered from the failure. Then, when an affirmative determination is obtained (S400: YES), the relay device 1 proceeds to S405, and when a negative determination is obtained (S400: NO), the relay device 1 ends this process.
[0042] In S405, the relay device 1 determines whether or not the sequence number 31 of the received redundant frame 3 exceeds the upper limit value of the reception allowable range. Then, when an affirmative determination is obtained (S405: YES), the relay device 1 proceeds to S410, and when a negative determination is obtained (S405: NO), the relay device 1 ends this process.
[0043] In S410, the relay device 1 updates the reference number to the sequence number 31 of the received redundant frame 3, and transmits the frame 4 obtained by removing the R-TAG 30 from the redundant frame 3 to the Listener. In addition, the relay device 1 initializes the history information 10D. Thereby, the redundant frame 3 having all sequence numbers within the reception allowable range can be relayed to the Listener. Then, the relay device 1 ends this process.
[0044] Note that the redundant frame 3 determined in S400 may be the one received from the redundant path determined to have recovered from the failure in the recovery determination process. Also, the redundant frame 3 may be the redundant frame 3 determined to have been received in S300 of the recovery determination process. That is, when it is determined in S300 of the recovery determination process that a redundant frame has been received from the failed path, S405 and S410 may be executed for the redundant frame.
[0045] Also, when a negative determination is obtained in S405, normal IEEE 802.1CB processing is executed. That is, when the redundant frame 3 is the first arrival and the sequence number is within the reception allowable range, the relay device 1 relays the redundant frame 3 to the Listener and updates the reference number and the history information 10D. When the sequence number of the redundant frame 3 is smaller than the lower limit value of the reception allowable range or the redundant frame 3 is the later arrival, the relay device 1 discards the redundant frame 3.
[0046] [5. Comparative Example 1] The first path P1 and the slow path P2 of Comparative Example 1 shown in FIG. 5 show a redundant path composed of a plurality of conventional relay devices 5 configured to perform Ethernet communication compliant with IEEE 802.1CB.
[0047] Here, the number obtained by subtracting the number of redundant frames staying in the first path P1 from the number of redundant frames staying in the slow path P2 is described as the delay difference. In Comparative Example 1, as an example, the delay difference is 50. That is, the sequence number of the redundant frame relayed from the slow path P2 to the relay device 5 connected to the Listener is 50 smaller than the sequence number of the redundant frame relayed from the first path P1 to the relay device 5 at the same time.
[0048] Also, frerSeqRcvyHistoryLength, which is a value for determining the reception allowable range, is 30 as an example. That is, the upper limit value and the lower limit value of the reception allowable range are the reference number + 30 and the reference number - 30, respectively.
[0049] In the following description, the redundant frame received from the first path P1 is described as X(FP), and the redundant frame received from the slow path P2 is described as X(SP). X means the sequence number of the redundant frame.
[0050] Assume that after the relay device 5 connected to the Listener sequentially receives 1050(FP) and 1000(SP), a failure occurs in the first path P1. After that, the relay device sequentially receives 1001(SP), 1002(SP)..., 1050(SP), 1051(SP), 1052(SP)....
[0051] In this case, when the relay device 5 receives 1050 (FP), the reference number is updated to 1050. After that, the reference number is maintained, and when 1051 (SP) or later is received, the reference number is updated to 1051, 1052, and so on. Also, in the relay device 5, 1000 (SP) to 1019 (SP) are discarded because they are outside the acceptable reception range, and 1020 (SP) to 1050 (SP) are discarded because they are later arrivals.
[0052] After receiving 7999 (SP), the fault in the first path P1 is resolved. After the fault is resolved, the relay device 5 sequentially receives 8051 (FP), 8000 (SP), 8052 (FP), 8001 (SP), 8053 (FP), and so on.
[0053] In this case, when 7999 (SP) is received by the relay device 5, the reference number is updated to 7999, and 7999 (SP) is relayed. Subsequently, 8000 (SP), 8001 (SP), etc. are relayed in sequence, and the reference number is updated sequentially according to the sequence number of these redundant frames. On the other hand, all redundant frames from 8051 (FP) onwards from the first pass P1 are outside the acceptable reception range and are therefore discarded.
[0054] In other words, if the delay difference exceeds frerSeqRcvyHistoryLength, the relay device 5 may continue to discard redundant frames received from the first path P1 after the first path P1 has recovered from a failure, due to a determination that the sequence number is outside the acceptable range for reception. As a result, redundant frames from the first path P1 may not be relayed at all, and redundant communication may cease to function.
[0055] [6. Comparative Example 2] On the other hand, even if the delay difference does not exceed frerSeqRcvyHistoryLength, as presented in Annex C. 9 of IEEE 802.1CB, there is a risk that redundant frames from each redundant path will be relayed all at once from the relay device 5 to the Listener for a certain period of time after the first path P1 has recovered from a failure. As a result, the receive buffer for Ethernet communication at the Listener may be temporarily insufficient, and there is a risk of loss of redundant frame reception.
[0056] Specifically, in Comparative Example 2, the delay difference between the fast path P1 and the slow path P2 is less than or equal to frerSeqRcvyHistoryLength. Then, immediately before the fault in the fast path P1 is resolved, the relay device 5 connected to the Listener receives 7998 (SP) and 7999 (SP), and then the fault in the fast path P1 is resolved. After the fault is resolved, the relay device 5 sequentially receives 8040 (FP), 8000 (SP), 8041 (FP), 8001 (SP), 8042 (FP), 8002 (SP), and so on. In Comparative Example 2, the delay difference between the fast path P1 and the slow path P2 is 40. Also, in the relay device 1 connected to the Listener, frerSeqRcvyHistoryLength is 50.
[0057] In this case, the relay device 5 relays all of these redundant frames to the Listener because frerSeqRcvyHistoryLength is greater than the delay difference. Subsequently, when the sequence number of the redundant frames received from the slow path P2 reaches 8040, the redundant frames from the slow path P2 become the next to arrive, and thereafter, redundant frames from the fast path P1 are relayed in the same manner as before the failure occurred.
[0058] Therefore, the Listener needs to ensure a sufficient size for the receive buffer for Ethernet communication to prevent loss of redundant frames during the period immediately following the recovery of the first path P1 from failure.
[0059] [7. Examples] In the fast path P1 and slow path P2 of this embodiment shown in Figure 6, at least the listener is connected to the relay device 1 of this embodiment. Note that any relay devices other than the relay device 1 connected to the listener in the fast path P1 and slow path P2 may be the relay device 1 of this embodiment, or a conventional relay device 5 compliant with IEEE 802.1CB.
[0060] Furthermore, in this embodiment, the delay difference between the fast path P1 and the slow path P2 is 50, the same as in Comparative Example 1. Also, in the relay device 1 connected to the Listener, the frerSeqRcvyHistoryLength is 30, the same as in Comparative Example 1.
[0061] Similar to Comparative Example 1, assume that after the relay device 1 connected to the Listener sequentially receives 1050 (FP) and 1000 (SP), a failure occurs in the first path P1. From this point onward, the relay device 1 sequentially receives 1001 (SP), 1002 (SP), ..., 1050 (SP), 1051 (SP), 1052 (SP), ...
[0062] Subsequently, assume that the fault in the first path P1 is resolved after receiving 7999 (SP). After the fault is resolved, the relay device 1 sequentially receives 8051 (FP), 8000 (SP), 8052 (FP), 8001 (SP), 8053 (FP), and so on.
[0063] In this case, when relay device 1 receives 7999 (SP), the reference number is updated to 7999, and 7999 (SP) is relayed. Subsequently, when relay device 1 receives 8051 (FP), update process S410 is executed, the reference number is updated to 8051, 8051 (FP) is relayed to the Listener, and the reception history is initialized.
[0064] From this point onward, the relay device 1 sequentially relays redundant frames received from the first path P1, just as it did before the failure occurred, and the reference number is updated to 8052, 8053, etc. However, frames 8000 (SP), 8001 (SP), etc., received from the slow path P2 are discarded because they are outside the acceptable reception range and are not relayed to the Listener.
[0065] [8. Effects] (1) In redundant communication compliant with IEEE 802.1CB, if the sequence number divergence (hereinafter referred to as delay number) due to the delay difference between the fast path P1 and the slow path P2 exceeds frerSeqRcvyHistoryLength, as shown in Comparative Example 1, after the failure is recovered on the fast path P1, no redundant frames from the fast path P1 will be relayed, and there is a risk that redundant communication will cease to function. Furthermore, even if the delay number does not exceed frerSeqRcvyHistoryLength, as shown in Comparative Example 2, there is a risk that the number of redundant frames relayed to the Listener will increase in the period immediately after the failure is recovered on the fast path P1.
[0066] On the other hand, according to the update process of the above embodiment, if the sequence number 31 of the redundant frame 3 received from the redundant path after the failure has been recovered exceeds the upper limit of the acceptable reception range, the reference number is updated by the sequence number 31, and the redundant frame 3 is relayed to the Listener.
[0067] Therefore, as shown in the embodiment, even if the delay exceeds frerSeqRcvyHistoryLength, after the failure is recovered on the first path P1, the redundant frame 3 having the latest sequence number 31 received from the first path P1 is quickly relayed to the Listener, and redundant communication can be achieved as before the failure occurred.
[0068] Furthermore, sequence number 31 of the redundant frame 3 from the slow path P2 falls outside the acceptable reception range, and the redundant frame 3 is discarded. This suppresses an increase in the communication load between the relay device 1 and the listener during the period immediately following fault recovery on the first path P1. As a result, reception loss of redundant frames at the listener can be suppressed, and the size of the listener's receive buffer can be reduced.
[0069] Therefore, after the first path P1 fails, redundant frame 3 can be successfully relayed to the listener.
[0070] (2) In addition, the fault detection process detects failures in redundant paths P1 and P2 based on the status of port 12 or the time spent without receiving redundant frames. Therefore, failures in the first path P1 can be detected effectively.
[0071] (3) In addition, during the recovery determination process, if a redundant frame 3 is received from the faulty path, it is determined that the faulty path has recovered. Therefore, it is possible to accurately determine whether or not the failure on the first path P1 has been resolved.
[0072] (4) In addition, during the update process, if the sequence number 31 of the redundant frame 3 received from the redundant path after the failure has been resolved exceeds the upper limit of the acceptable reception range, the history information 10D is initialized. This makes it possible to initialize redundant communication triggered by the recovery of the first path P1.
[0073] (5) Furthermore, the relay device 1 is configured for in-vehicle use. Therefore, the relay device 1 can improve the on-time performance required for in-vehicle systems by suppressing communication delays and increases in communication load immediately after the first path P1 recovers from a fault.
[0074] [9. Other Embodiments] (1) In the above embodiment, a fast path P1 and a slow path P2 are formed by a plurality of relay devices 1 that constitute a ring network. In addition, in the fast path P1 and the slow path P2, relay devices other than the relay device 1 connected to the Listener may be conventional relay devices compliant with IEEE 802.1CB.
[0075] Furthermore, a plurality of relay devices, including the relay device 1 of the above embodiment, may be used to form three or more redundant paths. In this case as well, the listener is connected to the relay device 1 of the above embodiment, and the other in-vehicle devices may be the relay device 1 of the above embodiment or conventional relay devices.
[0076] (2) In the above embodiment, the fault detection process detects faults in each redundant path, but instead, a fault in only the first path P1 may be detected. Also, the recovery determination process may determine whether or not the fault in the first path P1 has been recovered. In addition, in the update process, if the sequence number 31 of the redundant frame 3 received from the first path P1 after the fault has been recovered exceeds the upper limit of the allowable reception range, the reference number may be updated with the sequence number 31, and the redundant frame 3 may be relayed to the Listener.
[0077] (3) Multiple functions of one component in the above embodiment may be realized by multiple components, or one function of one component may be realized by multiple components. Also, multiple functions of multiple components may be realized by one component, or one function realized by multiple components may be realized by one component. Furthermore, some of the configurations of the above embodiment may be omitted. Furthermore, at least some of the configurations of the above embodiment may be added to or replaced with the configurations of other above embodiments.
[0078] (4) In addition to the relay device 1 described above, the present disclosure can also be realized in various forms, such as a relay program 10C for causing a computer to function as the control unit 10 of the relay device 1, a non-transitional physical recording medium such as a semiconductor memory on which the relay program 10C is recorded, and a relay method realized by the relay program 10C.
[0079] [10. Correspondence between terms] In the diagram explaining the redundant route, S105 corresponds to an example of a relay unit, update unit, and history unit.
[0080] S200 and S205 of the fault detection process correspond to an example of a detection unit.
[0081] S300, which is the recovery determination process, corresponds to an example of a determination unit.
[0082] S410 of the update process corresponds to an example of an update unit, relay unit, and history unit.
[0083] [11. Technical Concept Disclosed in This Specification] [Item 1] A relay device (1) configured to perform communication, comprising: a relay unit (S105) configured to transmit to a communication terminal (2) the redundant frame excluding the R-TAG if the sequence number (31) in the R-TAG (30) included in a redundant frame (3) received from each of a plurality of redundant paths (P1, P2) is within the reception tolerance range determined based on a reference number, and it is determined that the redundant frame was received first based on the sequence number; an update unit (S105) configured to update the reference number based on the sequence number of the R-TAG of the redundant frame if the sequence number of the R-TAG of the redundant frame received from each of the plurality of redundant paths is within the reception tolerance range and is greater than the sequence number used to update to the current reference number; and a detection unit (S200, S205) configured to detect failures in the plurality of redundant paths. A relay device comprising: a determination unit (S300) configured to determine whether the fault detected by the detection unit has been recovered, the update unit is configured to update the reference number based on the sequence number if the sequence number of the R-TAG of the redundant frame received from the redundant path determined by the determination unit to have recovered from the fault exceeds the upper limit of the allowable reception range (S410), and the relay unit is configured to transmit the redundant frame with the R-TAG removed to the communication terminal if the sequence number of the R-TAG of the redundant frame received from the redundant path determined by the determination unit to have recovered from the fault exceeds the upper limit of the allowable reception range (S410).
[0084] [Item 2] A relay device as described in Item 1, configured to perform Ethernet communication in accordance with IEEE (Institute of Electrical and Electronics Engineers) 802.1CB.
[0085] [Item 3] A relay device according to Item 1 or Item 2, wherein the detection unit is configured to detect a failure in the redundant path connected to the port (12) based on the state of the port (12) or the elapsed time since the last time the redundant frame was received from the port.
[0086] [Item 4] A relay device described in any one of Items 1 to 3, wherein the determination unit is configured to determine that the fault has been resolved when it receives the redundant frame from the redundant path where the fault was detected.
[0087] [Item 5] A relay device according to any one of items 1 to 4, further comprising a history unit (S105) configured to store as history information (10D) the reception history of the sequence number of the R-TAG included in the redundant frame transmitted by the relay unit to the communication terminal, wherein the history unit is configured to initialize the history information (S410) if the sequence number of the R-TAG of the redundant frame received from the redundant path, which the determination unit has determined to have recovered from the fault, exceeds the upper limit of the allowable reception range.
[0088] [Item 6] A relay device described in any one of Items 1 to 5, wherein the relay device is configured to be mounted on a vehicle, and the plurality of redundant paths consist of a fast path (P1) which takes relatively less time to relay the redundant frames, and a slow path (P2) which takes relatively more time to relay the redundant frames.
[0089] [Item 7] A relay program (10C) that operates a computer as a device configured to perform communication, comprising: a relay unit (S105) configured to transmit to a communication terminal (2) the redundant frame excluding the R-TAG if the sequence number (31) in the R-TAG (30) included in a redundant frame (3) received from each of a plurality of redundant paths (P1, P2) is within the acceptable range of reception determined based on a reference number, and it is determined based on the sequence number that the redundant frame was received first; an update unit (S105) configured to update the reference number based on the sequence number of the R-TAG in the redundant frame if the sequence number of the R-TAG in the redundant frame received from each of the plurality of redundant paths is within the acceptable range of reception and is greater than the sequence number used to update the current reference number; and a detection unit (S200, S205) configured to detect failures in the plurality of redundant paths. A relay program comprising: a determination unit (S300) configured to determine whether the fault detected by the detection unit has been recovered, which operates a computer; an update unit configured to update the reference number based on the sequence number if the sequence number of the R-TAG of the redundant frame received from the redundant path determined by the determination unit to have recovered from the fault exceeds the upper limit of the allowable reception range (S410); and a relay unit configured to transmit the redundant frame with the R-TAG removed to the communication terminal if the sequence number of the R-TAG of the redundant frame received from the redundant path determined by the determination unit to have recovered from the fault exceeds the upper limit of the allowable reception range (S410).
[0090] [Item 8] A relay program described in Item 7 that operates a computer as a device configured to perform Ethernet communication in accordance with IEEE (Institute of Electrical and Electronics Engineers) 802.1CB.
Claims
1. A relay device (1) configured to perform communication, comprising: a relay unit (S105) configured to transmit to a communication terminal (2) the redundant frame excluding the R-TAG if the sequence number (31) in the R-TAG (30) included in a redundant frame (3) received from each of a plurality of redundant paths (P1, P2) is within the reception tolerance range determined based on a reference number, and it is determined that the redundant frame was received first based on the sequence number; an update unit (S105) configured to update the reference number based on the sequence number of the R-TAG of the redundant frame if the sequence number of the R-TAG of the redundant frame received from each of the plurality of redundant paths is within the reception tolerance range and is greater than the sequence number used to update the current reference number; a detection unit (S200, S205) configured to detect failures in the plurality of redundant paths; and a determination unit (S300) configured to determine whether the failure detected by the detection unit has been recovered. The update unit is configured to update the reference number based on the sequence number if the sequence number of the R-TAG of the redundant frame received from the redundant path that the determination unit has determined to have recovered from the fault exceeds the upper limit of the allowable reception range (S410). The relay unit is configured to transmit the redundant frame with the R-TAG removed to the communication terminal if the sequence number of the R-TAG of the redundant frame received from the redundant path that the determination unit has determined to have recovered from the fault exceeds the upper limit of the allowable reception range (S410).
2. The relay device according to claim 1, wherein the relay device is configured to perform Ethernet (registered trademark) communication in accordance with IEEE (Institute of Electrical and Electronics Engineers) 802.1CB.
3. A relay device according to claim 1 or claim 2, wherein the detection unit is configured to detect a failure in the redundant path connected to the port (12) based on the state of the port (12) or the elapsed time since the last time the redundant frame was received from the port.
4. A relay device according to claim 1 or claim 2, wherein the determination unit is configured to determine that the fault has been resolved when it receives the redundant frame from the redundant path where the fault was detected.
5. A relay device according to claim 1 or claim 2, further comprising a history unit (S105) configured to store as history information (10D) the reception history of the sequence number of the R-TAG included in the redundant frame transmitted by the relay unit to the communication terminal, wherein the history unit is configured to initialize the history information (S410) if the sequence number of the R-TAG of the redundant frame received from the redundant path, which the determination unit has determined to have recovered from the fault, exceeds the upper limit of the allowable reception range.
6. A relay device according to claim 1 or claim 2, wherein the relay device is configured to be mounted on a vehicle, and the plurality of redundant paths consist of a fast path (P1) which takes relatively less time to relay the redundant frames, and a slow path (P2) which takes relatively more time to relay the redundant frames.
7. A relay program (10C) that operates a computer as a device configured to perform communication, comprising: a relay unit (S105) configured to transmit to a communication terminal (2) the redundant frame excluding the R-TAG if the sequence number (31) in the R-TAG (30) included in a redundant frame (3) received from each of a plurality of redundant paths (P1, P2) is within the acceptable range of reception determined based on a reference number, and it is determined based on the sequence number that the redundant frame was received first; an update unit (S105) configured to update the reference number based on the sequence number of the R-TAG in the redundant frame if the sequence number of the R-TAG in the redundant frame received from each of the plurality of redundant paths is within the acceptable range of reception and is greater than the sequence number used to update the current reference number; and a detection unit (S200, S205) configured to detect failures in the plurality of redundant paths. A relay program comprising: a determination unit (S300) configured to determine whether the fault detected by the detection unit has been recovered, which operates a computer; an update unit configured to update the reference number based on the sequence number if the sequence number of the R-TAG of the redundant frame received from the redundant path among the plurality of redundant paths that the determination unit has determined to have recovered from the fault exceeds the upper limit of the allowable reception range (S410); and a relay unit configured to transmit the redundant frame with the R-TAG removed to the communication terminal if the sequence number of the R-TAG of the redundant frame received from the redundant path that the determination unit has determined to have recovered from the fault exceeds the upper limit of the allowable reception range (S410).
8. A relay method (10C) implemented by a device configured to perform communication, comprising: transmitting to a communication terminal (2) the redundant frame excluding the R-TAG if the sequence number (31) in the R-TAG (30) included in a redundant frame (3) received from each of a plurality of redundant paths (P1, P2) is within the acceptable range of reception determined based on a reference number, and it is determined that the redundant frame was received first based on the sequence number; updating the reference number based on the sequence number of the R-TAG in the redundant frame if the sequence number of the R-TAG in the redundant frame received from each of the plurality of redundant paths is within the acceptable range of reception, and is greater than the sequence number used to update the current reference number; detecting a fault in the plurality of redundant paths (S200, S205); and determining whether the fault detected by the detection unit has been recovered (S300). A relay method in which, if the sequence number of the R-TAG of the redundant frame received from the redundant path among the plurality of redundant paths which is determined to have recovered from the failure exceeds the upper limit of the allowable reception range, the reference number is updated based on the sequence number (S410), and if the sequence number of the R-TAG of the redundant frame received from the redundant path which is determined to have recovered from the failure exceeds the upper limit of the allowable reception range, the redundant frame with the R-TAG removed is transmitted to the communication terminal (S410).
Citation Information
Patent Citations
Seamless redundancy transmission method based on improved FRER
CN116319534A
Packet or frame replication and elimination with explict or implict notification to reset sequence number recovery
US20220368626A1
Extending acceptable sequence range
US20220385588A1