Control device, communication system, and control method

By dynamically assigning time slots and flows across multiple ports, the control device enhances scheduling flexibility and efficiency in distributed networks with Time-Aware Shaper, addressing the constraint of single-port communication in LAG systems.

WO2026105276A1PCT designated stage Publication Date: 2026-05-21NT T INC
View PDF 3 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
NT T INC
Filing Date
2024-11-14
Publication Date
2026-05-21

AI Technical Summary

Technical Problem

Conventional link aggregation group (LAG) systems with Time-Aware Shaper (TAS) constrain high-priority flows to communicate through a single physical port, limiting design flexibility and scheduling efficiency in distributed networks.

Method used

A control device and method that dynamically assign time slots and flows across multiple physical ports within a network, allowing high-priority flows to be distributed among different ports based on time slots, enhancing scheduling flexibility and efficiency.

Benefits of technology

This approach improves bandwidth utilization and scheduling capabilities while maintaining delay-guaranteed communication, enabling redundancy and fault tolerance in distributed networks.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024040532_21052026_PF_FP_ABST
    Figure JP2024040532_21052026_PF_FP_ABST
Patent Text Reader

Abstract

A control device (20) that sets a plurality of time slots for each of physical ports of a plurality of transfer devices comprises: a communication unit (23) that communicates with the plurality of transfer devices; and a control unit (21) that transmits, via the communication unit (23) and to the transfer devices having the corresponding physical ports, a GCL (11) for defining the plurality of time slots and a flow with a fixed transmission cycle for allowing passages through the physical ports corresponding to the respective time slots. The control unit (21) is capable of creating, as a GCL (11) to be transmitted to at least one transfer device having two or more physical ports among the plurality of transfer devices, the GCL (11) for defining a flow with a fixed transmission cycle for allowing passages through the different physical ports depending on the time slots among the two or more physical ports.
Need to check novelty before this filing date? Find Prior Art

Description

Control Device, Communication System, and Control Method

[0001] The present disclosure relates to a control device, a communication system, and a control method.

[0002] In Non-Patent Document 1, LAG is defined. "LAG" is an abbreviation for link aggregation group. In Non-Patent Document 2, TAS is defined. "TAS" is an abbreviation for time aware shaper.

[0003] IEEE Computer Society, IEEE Std 802.3ad, “Link Aggregation”, 7 March 1999IEEE Computer Society, IEEE Std 802.1Qbv, “Enhancements for Scheduled Traffic”, 5 December 2015

[0004] By constructing a network with a plurality of nodes having the TAS function, a network function for guaranteeing the maximum delay and the maximum jitter, that is, delay-guaranteed communication can be realized. At this time, it is necessary to allocate a time slot dedicated to delay-guaranteed communication to the output ports of all nodes passing through end-to-end.

[0005] The mechanism of TAS is shown in FIG. 12. TAS performs priority control by determining the traffic to be transmitted according to a time-division schedule. Specifically, TAS stores frames in a FIFO queue for each VLAN-CoS or each IP-ToS, and permits transmission from the queue for which the gate is opened according to the GCL. "VLAN" is an abbreviation for virtual local area network. "CoS" is an abbreviation for class of service. "IP" is an abbreviation for Internet Protocol. "ToS" is an abbreviation for type of service. "FIFO" is an abbreviation for first in, first out. "GCL" is an abbreviation for gate control list.

[0006] An example of a GCL is shown in Figure 13. The TAS can control best-effort traffic and delay-guaranteed communication in a superimposed manner. In the example shown in Figure 13, four high-priority flows and one low-priority flow are multiplexed. The high-priority flows correspond to delay-guaranteed communication. The low-priority flows correspond to communication without delay guarantee, i.e., best-effort traffic. The GCL shown in Figure 13 specifies that communication of CoS "7" ST is permitted in time slots 1 and 3, CoS "5" ST is permitted in time slot 2, CoS "4" ST is permitted in time slot 4, and NST of CoS "3" or lower is permitted in time slot 5. This GCL further specifies that the length of time for which communication is permitted in each time slot from time slot 1 to time slot 4 is 15 microseconds, and the length of time for which communication is permitted in time slot 5 is 100 microseconds.

[0007] To avoid collisions end-to-end, all nodes in the network must be time-synchronized, and the opening and closing timing of the GCL gates at each node must be synchronized. The GCL is either centrally managed by a controller called a CNC, or managed individually at each node. "CNC" is an abbreviation for centralized network configuration. Each node opens its gate considering propagation delay, thus preventing collisions with other communications and enabling communication without queuing delays. The transmitting terminal is also time-synchronized and periodically transmits frames in accordance with the GCL timing, enabling communication without queuing delays.

[0008] By logically bundling links between nodes to which TAS is applied using LAG, it is conceivable that communication can be distributed or communication can continue even if some ports fail. However, conventional CNC creates GCLs based on the constraint that each high-priority flow communicates from only one physical port. Therefore, each node can only communicate with flows of the same priority from the same physical port. Thus, when LAG is applied between nodes, high-priority flows require communication on the same port for each flow. In other words, when LAG is formed between nodes, high-priority flows must communicate on a specific physical port, resulting in low design flexibility and challenges in scheduling.

[0009] In light of these circumstances, the purpose of this disclosure is to improve scheduleability while enabling the distribution of delay-guaranteed communications.

[0010] A control device according to one embodiment is a control device that sets a plurality of time slots for each physical port of a plurality of transfer devices, comprising: a communication unit that communicates with the plurality of transfer devices, and a control unit that transmits, via the communication unit, a gate control list that defines the plurality of time slots and a flow with a fixed transmission period that passes through the corresponding physical port in each time slot to a transfer device having the corresponding physical port, comprising: a control unit that can create a gate control list that defines a flow with a fixed transmission period that passes through different physical ports among the two or more physical ports depending on the time slot, as a gate control list to be transmitted to at least one transfer device among the plurality of transfer devices having two or more physical ports.

[0011] A control method according to one embodiment includes a control device that sets a plurality of time slots for each physical port of a plurality of transfer devices, and transmits a gate control list that defines the plurality of time slots and a flow with a fixed transmission period that passes through the corresponding physical port in each time slot to a transfer device having the corresponding physical port, wherein the control device can create a gate control list that defines a flow with a fixed transmission period that passes through different physical ports among the two or more physical ports depending on the time slot, as a gate control list to transmit to at least one transfer device among the plurality of transfer devices having two or more physical ports.

[0012] According to this disclosure, it becomes possible to distribute delay-guaranteed communications and improve scheduling.

[0013] This is a block diagram showing the configuration of a communication system according to one embodiment. This is a block diagram showing the configuration of a control device. This is a block diagram showing the configuration of each transfer device. This is a block diagram showing an example of a network configuration. This is a diagram showing scheduling related to a comparative example. This is a diagram showing scheduling related to a comparative example. This is a diagram showing scheduling related to an embodiment. This is a flowchart showing the operation of the control device. This is a diagram showing the procedure from fault occurrence to route switching according to a modified example. This is a flowchart showing the operation of the control device according to a modified example. This is a diagram showing the route when a fault occurs in the CD section. This is a diagram showing the mechanism of TAS. This is a table showing an example of GCL.

[0014] One embodiment will be described below with reference to the figures.

[0015] In each figure, identical or corresponding parts are denoted by the same reference numerals. In the description of this embodiment, the description of identical or corresponding parts will be omitted or simplified as appropriate.

[0016] Referring to Figure 1, the configuration of the communication system 10 according to this embodiment will be described.

[0017] The communication system 10 comprises a control device 20 and a plurality of transfer devices 30. The control device 20 and each transfer device 30 are connected by a control communication network and can communicate with each other via the control communication network. The plurality of transfer devices 30 form a main signal communication network and can transfer frames between any user terminals via the main signal communication network.

[0018] The control device 20 is a computer that monitors and controls each transfer device 30. Each transfer device 30 is a device that accommodates users and transfers frames to a port designated for each destination user terminal. The number of transfer devices 30 is not limited to the two shown in Figure 1, but may be three or more. In this embodiment, the control device 20 functions as a CNC, and each transfer device 30 functions as a TAS-compatible switch. In this embodiment, LAG is applied between at least one pair of transfer devices 30. Each user terminal is, for example, a terminal such as a mobile device or PC, or a server such as a cloud server. "PC" is an abbreviation for personal computer. Mobile devices may also be IoT devices. "IoT" is an abbreviation for Internet of Things. Each user terminal can be either the start or end point of a flow.

[0019] Referring to Figure 2, the configuration of the control device 20 according to this embodiment will be described.

[0020] The control device 20 comprises a control unit 21, a storage unit 22, and a communication unit 23.

[0021] The control unit 21 includes at least one processor, at least one programmable circuit, at least one dedicated circuit, or any combination thereof. The processor is a general-purpose processor such as a CPU or GPU, or a dedicated processor specialized for a specific process. "CPU" is an abbreviation for central processing unit. "GPU" is an abbreviation for graphics processing unit. The programmable circuit is, for example, an FPGA. "FPGA" is an abbreviation for field-programmable gate array. The dedicated circuit is, for example, an ASIC. "ASIC" is an abbreviation for application specific integrated circuit. The control unit 21 controls each part of the control device 20 and executes processes related to the operation of the control device 20. The control unit 21 has various functions such as a GCL creation function 24 and a GCL distribution function 25.

[0022] The storage unit 22 includes at least one semiconductor memory, at least one magnetic memory, at least one optical memory, or any combination thereof. The semiconductor memory is, for example, RAM, ROM, or flash memory. "RAM" is an abbreviation for random access memory. "ROM" is an abbreviation for read-only memory. The RAM is, for example, SRAM or DRAM. "SRAM" is an abbreviation for static random access memory. "DRAM" is an abbreviation for dynamic random access memory. The ROM is, for example, EEPROM. "EEPROM" is an abbreviation for electrically erasable programmable read-only memory. The flash memory is, for example, SSD. "SSD" is an abbreviation for solid-state drive. The magnetic memory is, for example, HDD. "HDD" is an abbreviation for hard disk drive. The storage unit 22 functions, for example, as main memory, auxiliary memory, or cache memory. The memory unit 22 stores information used for the operation of the control device 20, such as high-priority flow design information 26 and network topology 27, as well as information obtained through the operation of the control device 20.

[0023] The communication unit 23 includes at least one communication module. The communication module is, for example, a module compatible with LAN communication standards such as Ethernet (registered trademark). "LAN" is an abbreviation for local area network. The communication unit 23 communicates with each transfer device 30. The communication unit 23 receives information used for the operation of the control device 20 and transmits information obtained by the operation of the control device 20, such as GCL 11.

[0024] The functions of the control device 20 are realized by executing the control program according to this embodiment on the processor acting as the control unit 21. In other words, the functions of the control device 20 are realized by software. The control program causes the computer to perform the operations of the control device 20, thereby causing the computer to function as the control device 20. That is, the computer functions as the control device 20 by performing the operations of the control device 20 according to the control program.

[0025] Some or all of the functions of the control device 20 may be implemented by a programmable circuit or dedicated circuit as the control unit 21. In other words, some or all of the functions of the control device 20 may be implemented by hardware.

[0026] Referring to Figure 3, the configuration of each transfer device 30 according to this embodiment will be described.

[0027] The transfer device 30 comprises a control unit 31, a storage unit 32, and a communication unit 33.

[0028] The control unit 31 includes at least one processor, at least one programmable circuit, at least one dedicated circuit, or any combination thereof. The processor is a general-purpose processor such as a CPU or GPU, or a dedicated processor specialized for a specific process. The programmable circuit is, for example, an FPGA. The dedicated circuit is, for example, an ASIC. The control unit 31 controls each part of the transfer device 30 and executes processes related to the operation of the transfer device 30. The control unit 31 has various functions such as a flow extraction function 34, a port switching function 35, a high-priority flow distribution function 36, a distribution function 37, a logic interface function 38, and a gate control function 39.

[0029] The storage unit 32 includes at least one semiconductor memory, at least one magnetic memory, at least one optical memory, or any combination thereof. The semiconductor memory is, for example, RAM, ROM, or flash memory. The RAM is, for example, SRAM or DRAM. The ROM is, for example, EEPROM. The flash memory is, for example, SSD. The magnetic memory is, for example, HDD. The storage unit 32 functions, for example, as a main memory, auxiliary memory, or cache memory. The storage unit 32 stores information used for the operation of the transfer device 30, such as time information 41, and information obtained by the operation of the transfer device 30. The storage unit 32 has a GCL storage area 42 for storing GCL 11.

[0030] The communication unit 33 includes at least one communication module. The communication module is, for example, a module compatible with a LAN communication standard such as Ethernet (registered trademark). The communication unit 33 communicates with each transfer device 30. The communication unit 33 receives information used for the operation of the transfer device 30, such as GCL 11, and transmits information obtained through the operation of the transfer device 30.

[0031] The functions of the transfer device 30 are realized by executing the communication program according to this embodiment on the processor acting as the control unit 31. In other words, the functions of the transfer device 30 are realized by software. The communication program causes the computer to perform the operations of the transfer device 30, thereby causing the computer to function as the transfer device 30. That is, the computer functions as the transfer device 30 by performing the operations of the transfer device 30 according to the communication program.

[0032] Some or all of the functions of the transfer device 30 may be implemented by a programmable circuit or dedicated circuit as the control unit 31. In other words, some or all of the functions of the transfer device 30 may be implemented by hardware.

[0033] The transfer device 30 further includes a physical input port 43 and physical output ports 44 such as P1 and P2.

[0034] Programs such as control programs or communication programs can be stored on a non-temporary computer-readable medium. Examples of non-temporary computer-readable media include flash memory, magnetic recording devices, optical discs, magneto-optical recording media, or ROM. Programs are distributed, for example, by selling, transferring, or lending portable media such as SD cards, DVDs, or CD-ROMs on which the programs are stored. "SD" is an abbreviation for Secure Digital. "DVD" is an abbreviation for digital versatile disc. "CD-ROM" is an abbreviation for compact disc read only memory. Programs may also be distributed by storing them in server storage and transferring them from the server to other computers. Programs may also be provided as program products.

[0035] A computer, for example, stores a program stored on a portable medium or a program transferred from a server in its main memory. Then, the computer reads the program stored in the main memory with its processor and executes the processing according to the read program. The computer may also read a program directly from the portable medium and execute the processing according to the program. The computer may also execute the processing according to the received program sequentially each time a program is transferred to it from a server. Processing may also be performed by a so-called ASP type service, which does not transfer programs from the server to the computer, but realizes its function only through execution instructions and result retrieval. "ASP" is an abbreviation for application service provider. A program includes information used for processing by an electronic computer that is equivalent to a program. For example, data that is not a direct instruction to the computer but has the nature of defining the computer's processing falls under "equivalent to a program".

[0036] The outline of this embodiment will be described with reference to Figures 1 to 3.

[0037] This embodiment relates to a flow distribution technique in a LAG in a network to which TAS is applied. LAG is defined in IEEE 802.3ad as a network technology that treats multiple physical lines as a single logical link. TAS is defined in IEEE 802.1Qbv as a form of TSN that enables low latency in packet networks. "TSN" is an abbreviation for Time-Sensitive Networking.

[0038] The control device 20 can create the GCL 11 without the constraint that each high-priority flow communicates from only one physical port 44. Therefore, the transfer device 30 can determine which physical port 44 to assign each frame to based on the current time slot information in addition to the flow information, making it possible to transmit the same high-priority flow from a different physical port 44 for each time slot. According to this embodiment, when LAG is formed between transfer devices 30 to which TAS is applied, the path of the high-priority flow is no longer limited to a specific physical port 44, improving scheduleability.

[0039] As shown in Figure 1, the control device 20 is connected to a plurality of transfer devices 30. The control device 20 designs the GCL 11 for each transfer device 30. The plurality of transfer devices 30 constitute a communication network that transmits and receives information such as frames. Two transfer devices 30 are connected by multiple links, and LAG is applied.

[0040] As shown in Figure 2, the control device 20 has a GCL creation function 24 and a GCL distribution function 25.

[0041] The GCL creation function 24 refers to the high-priority flow design information 26 and the network topology 27, and creates the GCL 11 and flow information to be transmitted in each time slot, under the condition that high-priority flows are permitted to be distributed to different physical ports 44 on links to which LAG is applied. The GCL 11 does not need to hold flow information, as in the conventional system. That is, the GCL 11 only needs to hold information on whether to open or close the gate in each time slot. The forwarding device 30 opens and closes the gates corresponding to each priority queue according to the GCL 11. In this embodiment, flow information to be transmitted in each time slot is added to the GCL 11. The forwarding device 30 distributes each frame to the physical port 44 based on this information. The high-priority flow design information 26 is information about high-priority flows, such as the period of each high-priority flow, the time slot length, and the delay constraints that must be satisfied. The network topology 27 contains information such as how each forwarding device 30 constituting the communication network is connected, whether LAG is applied to each link, and if so, how many physical ports 44 are included in the LAG. The GCL distribution function 25 is a function that transmits GCL 11 and flow information to the forwarding device 30.

[0042] As shown in Figure 3, each transfer device 30 has a flow extraction function 34, a port switching function 35, a high-priority flow distribution function 36, a distribution function 37, a logical interface function 38, and a gate control function 39.

[0043] The flow extraction function 34 is a function that discriminates the flow information of each frame based on an identifier. The port switching function 35 is a function that continues communication with the remaining physical ports 44 even when a failure occurs in one of the bundled physical ports 44 and communication becomes impossible. The high-priority flow distribution function 36 is a function that distributes high-priority flows to appropriate physical ports 44 based on the flow information, the current time information 41, and the GCL 11 stored in the GCL storage area 42. The dispersion function 37 is a function that expands the bandwidth by dispersing communication among a plurality of physical ports 44. The logical interface function 38 is a function that bundles a plurality of physical ports 44 and treats them as one logical interface. The gate control function 39 is a function that opens and closes the gates of each queue according to the GCL 11 stored in the GCL storage area 42.

[0044] FIG. 4 shows an example of a network configuration. In this example, five transfer devices 30, i.e., transfer devices 30-1, 30-2, 30-3, 30-4, and 30-5, are included in the communication network. The transfer devices 30-4 and 30-5 are connected by two links, and these two links are logically bundled by LAG. There are high-priority flows from each of the transfer devices 30-1, 30-2, and 30-3 to the transfer device 30-5.

[0045] The operation of the control device 20 in this example will be described.

[0046] The control device 20 creates the GCL 11 to be assigned to each physical port 44 of each transfer device 30 by the GCL creation function 24. When creating the GCL 11, the control device 20 refers to the high-priority flow design information 26 and the network topology 27. The control device 20 determines from the network topology 27 whether each physical port 44 is (a) a port that is not aggregated into a LAG or (b) a port that is aggregated into a LAG, and creates the GCL 11 and flow information as follows in each case. Case (a): Create the GCL 11 in the same way as in the conventional method. Case (b): Create the GCL 11 and flow information in the following process. 1. Assign the high-priority flow using only any one of the physical ports 44. 2. If step 1 fails, assign the high-priority flow to another physical port 44 that has not been tried. 3. If the assignment fails for all physical ports 44, perform a distributed assignment to separate physical ports 44. 4. Create the flow information based on the successful assignment.

[0047] The control device 20 distributes the created GCL 11 and flow information to each transfer device 30 by the GCL distribution function 25.

[0048] Describe the operation of each transfer device 30 in this example.

[0049] The transfer device 30 operates as follows from receiving a frame to transmitting it from the physical port 44. 1. The flow extraction function 34 extracts the flow information of the received frame, that is, whether it is a frame of the high-priority flow and which high-priority flow frame it is. 2. If the received frame is a frame of the high-priority flow, the high-priority flow distribution function 36 extracts from which physical port 44 the corresponding flow will be transmitted in the current time slot based on the GCL 11 and flow information. 3. Transfer the frame to the extracted corresponding physical port 44. 4. Transmit the frame through the gate opened according to the GCL 11.

[0050] In the network configuration shown in Figure 4, when the forwarding device 30-4 has P1 and P2 as physical ports 44 that form a LAG, Figures 5 and 6 show comparative examples and Figures 7 and 8 show embodiments as examples of assigning five high-priority flows A, B, C, D, and E toward forwarding device 30-5. In all examples, high-priority flows A and C transmit frames every two time slots. High-priority flows B and D transmit frames every six time slots. High-priority flow E transmits frames every three time slots.

[0051] In the comparative examples shown in Figures 5 and 6, as in the conventional method, a GCL is created in the CNC assuming that "each flow communicates on the same port," and is then transferred to the transfer device 30. Therefore, for example, when high-priority flows A and B communicate on P1 and high-priority flows C and D communicate on P2, high-priority flow E cannot be scheduled because it cannot be placed on either P1 or P2 while maintaining periodicity. On the other hand, in the embodiments shown in Figures 7 and 8, unlike the conventional method, the control device 20 creates the GCL 11 without assuming that "each flow communicates on the same port," and transfers it to the transfer device 30. Therefore, for example, even if high-priority flows A and B communicate on P1 and high-priority flows C and D communicate on P2, high-priority flow E can be scheduled by distributing it between P1 and P2. For example, when the current time slot is the second time slot, when the transfer device 30-4 receives a frame of high-priority flow E, the high-priority flow distribution function 36 distributes the received frame to the queue for high-priority flow E on P1 based on the GCL 11 and flow information. Then, the transfer device 30-4 transfers the received frame by opening the gate on P1 according to the GCL 11. Similarly, when the current time slot is the fifth time slot, when the transfer device 30-4 receives a frame of high-priority flow E, the high-priority flow distribution function 36 distributes the received frame to the queue for high-priority flow E on P2 based on the GCL 11 and flow information. Then, the transfer device 30-4 transfers the received frame by opening the gate on P2 according to the GCL 11.

[0052] Referring to Figure 9, the operation of the control device 20 according to this embodiment will be described. The operation described below corresponds to the control method according to this embodiment. That is, the control method according to this embodiment includes at least steps S1 and S2 shown in Figure 9.

[0053] In S1, the control unit 21 of the control device 20 sets multiple time slots for each physical port 44 of the multiple transfer devices 30. Specifically, the control unit 21 of the control device 20 creates a GCL 11 that defines multiple time slots and a flow with a constant transmission period that passes through the corresponding physical port 44 in each time slot. The control unit 21 of the control device 20 can create a GCL 11 to be transmitted to at least one transfer device 30 having two or more physical ports 44 among the multiple transfer devices 30, which has a constant transmission period that passes through different physical ports 44 depending on the time slot. In the embodiment shown in Figures 7 and 8, the control unit 21 of the control device 20 creates a GCL 11 that defines a high-priority flow E as the GCL 11 to be transmitted to transfer device 30-4. The high-priority flow E passes through P1 in at least the second and eighth time slots, and through P2 in at least the fifth and eleventh time slots. In other words, the transfer device 30-4 corresponds to "at least one transfer device 30", P1 and P2 correspond to "two or more physical ports 44", and the high-priority flow E corresponds to "a flow with a constant transmission cycle that passes through different physical ports 44 according to the time slot".

[0054] In this embodiment, the control unit 21 of the control device 20 can create a GCL 11 to be transmitted to the at least one transfer device 30 that defines not only flows with a fixed transmission period that pass through different physical ports 44 from two or more physical ports 44 depending on the time slot, but also flows with a fixed transmission period that pass through only one of the two or more physical ports 44. In the embodiment shown in Figures 7 and 8, the control unit 21 of the control device 20 creates a GCL 11 to be transmitted to the transfer device 30-4 that defines not only high-priority flow E, but also high-priority flows A, B, C, and D. High-priority flow A passes through P1 in odd-numbered time slots. High-priority flow B passes through P1 in at least the 4th and 10th time slots. High-priority flow C passes through P2 in even-numbered time slots. High-priority flow D passes through P2 in at least the 3rd and 9th time slots. In other words, high-priority flows A, B, C, and D correspond to "flows with a fixed transmission cycle that pass through only one of two or more physical ports 44."

[0055] In S2, the control unit 21 of the control device 20 transmits the GCL 11 created in S1 to the transfer device 30 having the corresponding physical port 44 via the communication unit 23.

[0056] As described above, in this embodiment, when LAG is applied to TAS, the policy for distributing high-priority flows is policy 3, not policy 1 or policy 2, out of the following three policies. Policy 1: Design the GCL of all ports the same so that high-priority flows can be sent from any port. Policy 2: For each high-priority flow, decide which port in the LAG configuration will send it from. Policy 3: For each combination of ID and time slot of a high-priority flow, decide which port will send it from.

[0057] Policy 1 has the disadvantages of low bandwidth utilization efficiency and low GCL scheduling ability. Policy 2 has higher bandwidth utilization efficiency and scheduling ability compared to Policy 1, but as can be seen from the comparative examples shown in Figures 5 and 6, the bandwidth utilization efficiency and scheduling ability are not sufficient. On the other hand, Policy 3 has higher bandwidth utilization efficiency and scheduling ability compared to Policy 2, and as can be seen from the examples shown in Figures 7 and 8, it has significant advantages in terms of bandwidth utilization efficiency and scheduling ability.

[0058] A modified example of this embodiment will be described with reference to Figure 10.

[0059] In this modified example, the at least one transfer device 30 further has one or more physical ports 44 separate from the two or more physical ports 44. When the at least one transfer device 30 transmits frames of a first flow with a fixed transmission period from different physical ports 44 among the two or more physical ports 44, depending on the time slot, and transmits frames of a second flow with a lower priority than the first flow from one or more physical ports 44, if it detects a failure in the first physical port included in the two or more physical ports 44, it transmits frames of the first flow from different physical ports 44 among the physical ports 44 other than the first physical port included in the two or more physical ports 44, depending on the time slot.

[0060] As shown in Figure 10, the forwarding devices 30-4 and 30-5 are connected by three links, and these three links are logically bundled by a LAG. Forwarding device 30-4 has physical ports 44 P1, P2, and P3 that form the LAG. Similar to the embodiments shown in Figures 7 and 8, of the five high-priority flows A, B, C, D, and E heading to forwarding device 30-5, high-priority flows A and B communicate on P1, high-priority flows C and D communicate on P2, and high-priority flow E is scheduled to be distributed across P1 and P2. P3 does not have a GCL 11 assigned to it and is used for communication other than high-priority flows. That is, low-priority flows communicate on P3. In this example, the forwarding device 30-4 corresponds to "at least one forwarding device 30", P1 and P2 correspond to "two or more physical ports 44", P3 corresponds to "one or more physical ports 44", the high-priority flow E corresponds to "a first flow with a fixed transmission cycle", and the low-priority flow corresponds to "a second flow with lower priority than the first flow".

[0061] When a failure occurs on the link connected to P1, the control device 20 reassigns the GCL 11 that was assigned to P1 to P3, which does not have a GCL 11 assigned to it. The forwarding device 30-4, using the high-priority flow distribution function 36, refers to the reassigned GCL 11 and forwards the frame that was originally forwarded to P1 to P3. This enables continuous communication of high-priority flows even when a failure occurs. In this example, P1 corresponds to the "first physical port," P2 corresponds to the "physical port 44 other than the first physical port," and P3 corresponds to the "second physical port."

[0062] Referring to Figure 11, the operation of the control device 20 according to this modified example will be explained. The operation described below corresponds to the control method according to this modified example. That is, the control method according to this modified example includes at least the steps S1 to S4 shown in Figure 11.

[0063] Steps S1 and S2 are the same as those shown in Figure 9, so their explanation will be omitted.

[0064] When at least one of the transfer devices 30 detects a fault with respect to the first physical port, it creates fault information indicating the path where the fault occurred and transmits it to the control device 20. Known methods can be used to create the fault information. In S3, the control unit 21 of the control device 20 detects the fault by receiving the fault information via the communication unit 23.

[0065] In S4, the control unit 21 of the control device 20 creates a GCL 11 to be transmitted to the at least one transfer device 30, which defines a flow with a fixed transmission period that passes through different physical ports 44 among the two or more physical ports 44 other than the first physical port and the second physical port included in the one or more physical ports 44, depending on the time slot, or retrieves a GCL 11 that has been previously created and stored in the storage unit 22. As such a GCL 11, a GCL 11 that has already been created for the first physical port may be retrieved from the storage unit 22. The control unit 21 of the control device 20 then transmits the created or retrieved GCL 11 to the at least one transfer device 30 via the communication unit 23.

[0066] This modification allows for improved bandwidth utilization efficiency, scheduling ability, and redundancy.

[0067] This disclosure is not limited to the embodiments described above. For example, two or more blocks shown in the block diagram may be combined, or one block may be divided. Instead of executing two or more steps shown in the flowchart in chronological order as described, they may be executed in parallel or in a different order, depending on the processing capacity of the device performing each step, or as necessary. Other modifications are possible without departing from the spirit of this disclosure.

[0068] 10 Communication system 11 GCL 20 Control device 21 Control unit 22 Memory unit 23 Communication unit 24 GCL creation function 25 GCL distribution function 26 High priority flow design information 27 Network topology 30 Transfer device 31 Control unit 32 Memory unit 33 Communication unit 34 Flow extraction function 35 Port switching function 36 High priority flow distribution function 37 Distribution function 38 Logical interface function 39 Gate control function 41 Time information 42 GCL storage area 43, 44 Physical ports

Claims

1. A control device for setting multiple time slots for each physical port of a plurality of transfer devices, comprising: a communication unit that communicates with the plurality of transfer devices; and a control unit that transmits, via the communication unit, a gate control list defining the plurality of time slots and a flow with a fixed transmission period that passes through the corresponding physical port in each time slot to a transfer device having the corresponding physical port, wherein the control unit is capable of creating a gate control list that defines a flow with a fixed transmission period that passes through different physical ports among the two or more physical ports depending on the time slot, as a gate control list to be transmitted to at least one transfer device among the plurality of transfer devices having two or more physical ports.

2. The control device according to claim 1, wherein the control unit is capable of creating a gate control list to be transmitted to the at least one transfer device, which defines not only flows with a fixed transmission period that pass through different physical ports from the two or more physical ports depending on the time slot, but also flows with a fixed transmission period that pass through only one of the two or more physical ports.

3. A communication system comprising a control device according to claim 1 or claim 2, and the plurality of transfer devices, wherein at least one transfer device further has one or more physical ports separate from the two or more physical ports, and when, according to a gate control list transmitted from the control device, frames of a first flow with a fixed transmission period are transmitted from different physical ports among the two or more physical ports depending on the time slot, and frames of a second flow with lower priority than the first flow are transmitted from the one or more physical ports, if a fault is detected in the first physical port included in the two or more physical ports, frames of the first flow are transmitted from different physical ports among the physical ports other than the first physical port included in the two or more physical ports, depending on the time slot.

4. A control method comprising a control device that sets multiple time slots for each physical port of multiple transfer devices, and transmits a gate control list that defines the multiple time slots and a flow with a fixed transmission period that passes through the corresponding physical port in each time slot to a transfer device having the corresponding physical port, wherein the control device can create a gate control list that defines a flow with a fixed transmission period that passes through different physical ports among the two or more physical ports depending on the time slot, as a gate control list to transmit to at least one transfer device among the multiple transfer devices having two or more physical ports.