Equipment, method and device for forwarding data and storage medium
By adopting the design of linear pluggable optical modules and data exchange chips in high-performance computing networks, the challenges of traditional modules in thermal and power consumption design are solved, achieving greater bandwidth and reduced latency.
Patent Information
- Application Number
- CN202410339244.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-03-22
- Publication Date
- 2025-02-28
AI Technical Summary
In high-performance computing networks, traditional pluggable optical modules have challenges in thermal and power design, and are difficult to meet the needs of greater bandwidth and reduced latency.
Linear pluggable optical (LPO) module is used as a sustainable alternative to traditional modules, and through the design of data exchange chips and control units, data forwarding between multiple forwarding units is ensured to avoid data channel congestion.
It effectively reduces data delay and power consumption, improves the system's signal quality and data transmission reliability, while maintaining the convenience and cost-effectiveness of pluggable modules.
Smart Images

Figure CN119544640A_ABST
Abstract
Description
Technical Field
[0001] Example embodiments of the present disclosure relate generally to the field of electrical devices, and more particularly to devices, methods, apparatuses, and computer-readable storage media for forwarding data. Background Art
[0002] With the rapid development of artificial intelligence and machine learning technologies, the requirements for greater bandwidth and lower latency in high performance computing (HPC) networks have become more stringent. In response to these demands, network equipment has evolved, with switching capacity increasing from 25.6T to 51.2T and port rates increasing from 400G to 800G. However, this development has introduced significant challenges in heat dissipation and power consumption design. Linear pluggable optical (LPO) modules have been proposed as a sustainable alternative to traditional pluggable optical modules with digital signal processing (DSP). The advantages of LPO modules have attracted widespread attention in the past two years. The application of LPO modules provides significant benefits, including up to 50% reduction in power consumption of optical modules, 60-90 nanoseconds reduction in latency, and cost savings of approximately 30%. In addition, they retain the convenience of pluggable modules and are supported by a mature industrial supply chain. Despite this, there are still significant challenges in integrating LPO systems into HPC core switch systems. Summary of the invention
[0003] In a first aspect of the present disclosure, a switching device is provided. The switching device includes: one or more groups of uplink ports, configured to be coupled to a first external interface to transmit data with an upstream device via the first external interface; one or more groups of downlink ports, configured to be coupled to a second external interface to transmit data with a downstream device via the second external interface; a data switching chip, including a plurality of forwarding units, each of the plurality of forwarding units being adapted to be connected to at least one group of uplink ports of the one or more groups of uplink ports and at least one group of downlink ports of the one or more groups of downlink ports; and a control unit, configured to control data forwarding of the data switching chip, so that each of the plurality of forwarding units forwards data between the at least one group of uplink ports and the at least one group of downlink ports to which it is connected.
[0004] In a second aspect of the present disclosure, a method for forwarding data is provided. The method comprises: obtaining a connection relationship between one or more groups of uplink ports and one or more groups of downlink ports and multiple forwarding units of a data switching chip; and controlling data forwarding of the data switching chip according to the connection relationship, so that each of the multiple forwarding units forwards data between the connected uplink port and the downlink port.
[0005] In a third aspect of the present disclosure, a device for forwarding data is provided. The device includes: an acquisition module configured to acquire a connection relationship between one or more groups of uplink ports and one or more groups of downlink ports and multiple forwarding units of a data switching chip; and a forwarding control module configured to control data forwarding of the data switching chip according to the connection relationship, so that each of the multiple forwarding units forwards data between the connected uplink port and the downlink port.
[0006] In a fourth aspect of the present disclosure, a computer-readable storage medium is provided, on which a computer program is stored. The computer program can be executed by a processor to implement the method according to the second aspect of the present disclosure.
[0007] It should be understood that the contents described in this content section are not intended to limit the key features or important features of the embodiments of the present disclosure, nor are they intended to limit the scope of the present disclosure. Other features of the present disclosure will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0008] The above and other features, advantages and aspects of the embodiments of the present disclosure will become more apparent with reference to the following detailed description in conjunction with the accompanying drawings. In the accompanying drawings, the same or similar reference numerals represent the same or similar elements, wherein:
[0009] Figure 1 The architecture of the switching device of some embodiments of the present disclosure is shown;
[0010] Figure 2 An example PCB wiring arrangement between a data switching chip and a port inside a switching device according to some embodiments of the present disclosure is shown;
[0011] Figure 3 shows an example configuration of upstream and downstream ports according to some embodiments of the present disclosure;
[0012] Figure 4 The data forwarding process inside the switching device according to some embodiments of the present disclosure is shown;
[0013] Figure 5 shows an example connection arrangement between a data switching chip and a port according to some embodiments of the present disclosure;
[0014] Figure 6 Another example connection arrangement between a data switching chip and a port according to other embodiments of the present disclosure is shown;
[0015] Figure 7 A flowchart of a process for forwarding data according to some embodiments of the present disclosure is shown;
[0016] Figure 8A schematic structural block diagram of an apparatus for forwarding data according to some embodiments of the present disclosure is shown; and
[0017] Fig. 9 A block diagram of a device capable of implementing various embodiments of the present disclosure is shown. DETAILED DESCRIPTION
[0018] Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although certain embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be construed as being limited to the embodiments set forth herein. On the contrary, these embodiments are provided to provide a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are only for exemplary purposes and are not intended to limit the scope of protection of the present disclosure.
[0019] In the description of the embodiments of the present disclosure, the term "including" and similar terms should be understood as open inclusion, that is, "including but not limited to". The term "based on" should be understood as "based at least in part on". The term "one embodiment" or "the embodiment" should be understood as "at least one embodiment". The term "some embodiments" should be understood as "at least some embodiments". Other explicit and implicit definitions may be included below. The terms "first", "second", etc. may refer to different or the same objects. Other explicit and implicit definitions may be included below.
[0020] In the leaf-spine architecture of a data communication network (DCN) or HPC network, a switch can be used as a network switching device to provide data forwarding and switching functions. The switch can use a linear pluggable optical (LPO) module. The LPO module removes the DSP device and maintains the form of a pluggable module while having certain advantages in terms of cost, power consumption, latency, etc. Thus, as an example, a switch using a single chip can achieve a capacity of 51.2T through 64 800G ports.
[0021] Traditionally, data exchange chips can be used inside network switching devices to achieve the conversion and transmission of uplink port data and downlink port data. If there is too much data to be forwarded, the data channel inside the network switching device will be congested, resulting in increased data delay. If the cached data exceeds the cache capacity, it will also cause data loss and other problems. In addition, the data transmission path between the switch chip and the port will cause data transmission loss, which becomes a bottleneck for the performance of the data communication link.
[0022] An embodiment of the present disclosure provides a printed circuit board (PCB) wiring design scheme, so that each of the multiple forwarding units of a data exchange chip is connected to at least one group of uplink ports and one group of downlink ports, thereby effectively avoiding data congestion caused by excessive data traffic inside the chip.
[0023] Figure 1 FIG. 1 shows the architecture of a switching device 100 according to some embodiments of the present disclosure. Figure 1 As shown, the switching device 100 includes a data exchange unit 105, a control unit 110, a power supply unit 115 (e.g., a PSU) and fans 120-1 to 120-N. The data exchange unit 105 includes a data exchange chip 125 (e.g., an application-specific integrated circuit or ASIC) and a plurality of ports 130-1 to 130-M, for example, high speed input / output (HSIO) ports. N and M represent positive integers. The switching device 100 can be coupled to a plurality of optical modules (not shown), such as LPO modules, via ports 130-1 to 130-M. The switching device 100 also includes a substrate 135, which is suitable for arranging ports 130-1 to 130-M, the data exchange chip 125 and the control unit 110 thereon.
[0024] Figure 2 FIG. 2 shows a PCB wiring arrangement 200 between a data switching chip and a port in a switching device according to some embodiments of the present disclosure. Figure 2 As shown, wiring is fanned out from the top of the data exchange chip 125 in sequence, connected to ports 130-1 to 130-M, and each port is coupled to an optical module 205-1 to 205-M (e.g., LPO module). Ports 130-1 to 130-M can be individually or collectively referred to as ports 130, which can be configured to have different bandwidths and / or different signal rates according to actual needs.
[0025] For example, ports 130-1 to 130-M may include the following ports: a 400G port having 8 lanes inside, each lane supporting 50G; a 40G port having 4 lanes inside, each lane supporting 10G; and a 10G port having 1 10G lane inside. The number of ports may be configured according to chip bandwidth, port bandwidth, port type, and the like.
[0026] Figure 3 FIG. 3 shows an example configuration 300 of upstream and downstream ports according to some embodiments of the present disclosure. Figure 3As shown, the ports 130-1 to 130-M of the switching device are divided into upstream ports 305-1 to 305-L (individually or collectively referred to as upstream ports 305) and downstream ports 310-1 to 310-K (individually or collectively referred to as downstream ports 310), where L and K are positive integers. The upstream port 305 is used to transmit data with an upstream device (e.g., an upper-level switching device), and the downstream port 310 is used to transmit data with a downstream device (e.g., a server or a lower-level switching device). Via the upstream port 305 and the downstream port 310, the switching device 100 can forward data (also called upstream data) from an upstream device to a downstream device, and forward data (also called downstream data) from a downstream device to an upstream device.
[0027] The number of the uplink ports 305 and the downlink ports 310 can be configured according to a predetermined ratio of the uplink and downlink ports. For example, the switching device 100 has M=64 ports. If the predetermined ratio is 3:1, the uplink ports 305 include 16 ports, and the downlink ports 310 include 48 ports. The ratio can be configured according to actual data service requirements and network architecture and deployment.
[0028] Figure 4 FIG. 4 shows a data forwarding process 400 inside a switching device according to some embodiments of the present disclosure. Figure 4 As shown, the data exchange chip 125 includes a plurality of forwarding units, for example, forwarding units 405-1 to 405-4. Data can be transmitted between the forwarding units through a data forwarding channel. The data forwarding channel may include a downlink channel 410 and an uplink channel 420. For example, downlink data arriving at the forwarding unit 405-1 through the downlink port may be transmitted to the forwarding unit 405-2 through the downlink channel 410 between the forwarding unit 405-1 and the forwarding unit 405-2, and the forwarding unit 405-2 transmits the downlink data to the upstream device through the uplink port. Similarly, uplink data arriving at the forwarding unit 405-2 through the uplink port may be transmitted to the forwarding unit 405-1 through the uplink channel 420 between the forwarding unit 405-1 and the forwarding unit 405-2, and the forwarding unit 405-1 transmits the uplink data to the downstream device through the downlink port.
[0029] It should be understood that Figure 4 The number of forwarding units shown is only an example and not a limitation. According to actual needs, the data switching chip 125 can include any number of forwarding units. The number of forwarding units can be configured according to actual data forwarding requirements and network planning and deployment.
[0030] Figure 5 An example connection arrangement 500 between a data switching chip and a port according to some embodiments of the present disclosure is shown.
[0031] In arrangement 500, both the upstream ports and the downstream ports are divided into one or more groups. Each group may include the same or different number of ports. Figure 5 As shown, the uplink ports are divided into a group of uplink ports 505, which are configured to be coupled to a first external interface (not shown) to transmit data with an upstream device (e.g., an upper-level switching device) via the first external interface. The downlink ports are divided into four groups of downlink ports 510-1, 510-2, and 510-3, which are configured to be coupled to a second external interface (not shown) to transmit data with a downstream device (e.g., a server or a lower-level switching device) via the second external interface. Each group of uplink and downlink ports includes four ports. Below, for ease of discussion, one or more groups of uplink ports are individually or collectively referred to as an uplink port group 505, and one or more groups of downlink ports are individually or collectively referred to as a downlink port group 510. One or more groups of uplink ports 505 and one or more groups of downlink ports 510 are suitable for coupling multiple optical modules (e.g., LPO modules).
[0032] It should be understood that Figure 5 The number of groups into which the upstream and downstream ports are divided and the number of ports included in each group of ports are merely examples and not limitations. Upstream ports and downstream ports may be divided into any number of groups of upstream ports and downstream ports according to actual needs. A group of ports may include any number of ports, and the number of ports in each group of ports may be the same or different.
[0033] The data exchange chip 125 includes a plurality of forwarding units, for example, Figure 5 As shown, 4 forwarding units 405-1 to 405-4 are included. Each forwarding unit 405-1 to 405-4 is suitable for connecting to at least one group of uplink ports 505 of one or more groups of uplink ports and at least one group of downlink ports 510 of one or more groups of downlink ports. For example, the substrate 135 of the switching device 100 is suitable for providing one or more groups of uplink ports 505, one or more groups of downlink ports 510, a data switching chip 120 and a control unit 110 thereon. Each group of uplink ports 505 and each group of downlink ports 510 can be coupled to the corresponding forwarding unit 405 via a first transmission path and a second transmission path on the substrate 135 in the switching device 100, respectively. In some embodiments, the number of the plurality of forwarding units may be greater than or equal to the number of groups of one or more groups of uplink ports and greater than or equal to the number of groups of one or more groups of downlink ports.
[0034] For example, assuming the chip bandwidth is XT, the uplink bandwidth is YT and the downlink bandwidth is ZT, then:
[0035] The number of downstream ports × the bandwidth of the downstream port is: port N1 × AT,
[0036] The number of uplink ports × the bandwidth of the uplink port is: Port N2 × BT.
[0037] Total port bandwidth = port N1×AT+Port N2×BT=YT+ZT=XT.
[0038] In some embodiments, port N1×AT≥Port N2×BT.
[0039] Assume that the number of forwarding units in the data switching chip 125 is α. In some embodiments, α≥port N1, and α≥port N2.
[0040] The following connection relationship between the upstream and downstream ports and each forwarding unit can be configured: Downlink ports #1 to #3 and upstream port #13 are connected to forwarding unit 405-4, downstream ports #4 to #6 and upstream port #14 are connected to forwarding unit 405-1, downstream ports #7 to #9 and upstream port #15 are connected to forwarding unit 405-2, and downstream ports #10 to #12 and upstream port #16 are connected to forwarding unit 405-3.
[0041] The control unit 110 in the switching device 100 is configured to control data forwarding of the data switching chip 125 so that each forwarding unit 405 - 1 to 405 - 4 in the plurality of forwarding units forwards data between at least one group of uplink ports 505 and at least one group of downlink ports 510 connected thereto.
[0042] This wiring method can effectively reduce the amount of data forwarding in the downlink and uplink channels between forwarding units. In addition, if the forwarding data between some forwarding units is large, data forwarding can be performed through the data forwarding channel between the forwarding units using idle uplink and downlink ports, thereby effectively avoiding data congestion.
[0043] In some embodiments, the control unit 110 may also be configured to, in response to determining that the data transmission volume per unit time of the first group of uplink ports connected to the first forwarding unit (e.g., forwarding unit 405-1) in one or more groups of uplink ports 505 is greater than the threshold transmission volume, transmit the data via the second group of uplink ports connected to the adjacent second forwarding unit (e.g., forwarding unit 405-2). The threshold transmission volume may be determined based on the threshold data forwarding volume per unit time of multiple forwarding units (e.g., forwarding units 405-1 to 405-4). The threshold data forwarding volume may depend on the bandwidth supported by the data forwarding chip 120. In this way, the internal bus utilization of the chip can be improved, thereby improving the chip bandwidth utilization.
[0044] In some embodiments, the data exchange chip 125 is arranged on the substrate 135 so that the length of the first transmission path between the data exchange chip 125 and at least one group of upstream ports 505 and the length of the second transmission path between the data exchange chip 125 and at least one group of downstream ports 510 are both less than a predetermined threshold. In this way, the data transmission path between the data exchange chip 125 and the port can be effectively shortened, thereby enhancing the signal quality within the system and the reliability of data transmission, and improving the data transmission performance and efficiency.
[0045] Figure 6 Another example connection arrangement 600 between a data switching chip and a port according to some further embodiments of the present disclosure is shown.
[0046] In the arrangement 600, the uplink ports are divided into 4 groups, and each group of uplink ports 505 includes one uplink port. The downlink ports are divided into 6 groups, and each group of downlink ports 510 includes two downlink ports. The first group of downlink ports 510-1 is connected to the forwarding unit 405-1 with the first group of uplink ports 505-1. The second group of downlink ports 510-2, the fourth group of downlink ports 510-4 and the fifth group of downlink ports 510-5 are connected to the forwarding unit 405-2 with the second group of uplink ports 505-2. The sixth group of downlink ports 510-6 is connected to the forwarding unit 405-3 with the third group of uplink ports 505-3. The third group of downlink ports 510-4 is connected to the forwarding unit 405-4 with the fourth group of uplink ports 505-4. By adjusting the outgoing line sequence of the data exchange chip 125, the wiring length in the PCB can be shortened.
[0047] In some embodiments, Figure 6 As shown, one or more groups of uplink ports 505 and one or more groups of downlink ports 510 are arranged along the first edge 605 of the substrate 135. The second edge 610 of the data exchange chip 125 is at a non-zero angle, such as 45 degrees, to the first edge 605. By adjusting the arrangement angle of the data exchange chip 125, the wiring length in the PCB can be further shortened, thereby further enhancing the signal quality in the system and the reliability of data transmission.
[0048] Reference below Figure 7 700 is a flowchart for describing a process 700 for forwarding data. The process 700 may be executed by the switching device described above, for example, by the control unit 110 in the switching device.
[0049] In block 710 , a connection relationship between one or more groups of uplink ports 505 , one or more groups of downlink ports 110 , and a plurality of forwarding units 405 of the data switching chip 125 is obtained.
[0050] In block 720 , data forwarding of the data switching chip 125 is controlled according to the connection relationship, so that each forwarding unit in the plurality of forwarding units forwards data between the connected uplink port and the downlink port.
[0051] In some embodiments, process 700 may also include: in response to determining that the data transmission volume per unit time of a first group of uplink ports connected to a first forwarding unit among one or more groups of uplink ports is greater than a threshold transmission volume, transmitting data via a second group of uplink ports connected to an adjacent second forwarding unit.
[0052] In some embodiments, process 700 may further include: determining a threshold transmission amount according to a threshold data forwarding amount per unit time of each forwarding unit in the plurality of forwarding units.
[0053] In some embodiments, the number of the forwarding units is greater than or equal to the number of the one or more groups of uplink ports and greater than or equal to the number of the one or more groups of downlink ports.
[0054] Figure 8 FIG. 8 is a schematic structural block diagram of an apparatus 800 for data forwarding according to some embodiments of the present disclosure. The apparatus 800 may be implemented in Figure 1 The switching device 100 is located at the switching device 100. Each module / component in the apparatus 800 may be implemented by hardware, software, firmware or any combination thereof.
[0055] like Figure 8 As shown, the device 800 includes an acquisition module 810, which is configured to acquire a connection relationship between one or more groups of uplink ports 505 and one or more groups of downlink ports 110 and multiple forwarding units 405 of the data switching chip 125. The device 800 also includes a forwarding control module 820, which is configured to control data forwarding of the data switching chip 125 according to the connection relationship, so that each forwarding unit in the multiple forwarding units forwards data between the connected uplink port and the downlink port.
[0056] In some embodiments, the device 800 may also include a connection change module, which is configured to cause data to be transmitted via a second group of upstream ports connected to an adjacent second forwarding unit in response to determining that the data transmission volume per unit time of a first group of upstream ports among one or more groups of upstream ports connected to a first forwarding unit is greater than a threshold transmission volume.
[0057] In some embodiments, the apparatus 800 may further include a threshold determination module configured to determine a threshold transmission amount according to a threshold data forwarding amount per unit time of each forwarding unit in the plurality of forwarding units.
[0058] In some embodiments, the number of the forwarding units is greater than or equal to the number of the one or more groups of uplink ports and greater than or equal to the number of the one or more groups of downlink ports.
[0059] Fig. 9 A block diagram of an electronic device 900 is shown in which one or more embodiments of the present disclosure may be implemented. It should be understood that Fig. 9 The electronic device 900 shown is merely exemplary and should not constitute any limitation on the functionality and scope of the embodiments described herein. Fig. 9 The electronic device 900 shown can be used to implement Figure 1 An electronic device 900 is provided.
[0060] like Fig. 9 As shown, the electronic device 900 is in the form of a general electronic device. The components of the electronic device 900 may include, but are not limited to, one or more processors or processing units 910, a memory 920, a storage device 930, one or more communication units 940, one or more input devices 950, and one or more output devices 960. The processing unit 910 may be an actual or virtual processor and is capable of performing various processes according to a program stored in the memory 920. In a multi-processor system, multiple processing units execute computer executable instructions in parallel to improve the parallel processing capability of the electronic device 900.
[0061] The electronic device 900 typically includes a plurality of computer storage media. Such media may be any accessible media that is accessible to the electronic device 900, including but not limited to volatile and non-volatile media, removable and non-removable media. The memory 920 may be a volatile memory (e.g., a register, a cache, a random access memory (RAM)), a non-volatile memory (e.g., a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), flash memory), or some combination thereof. The storage device 930 may be a removable or non-removable medium, and may include a machine-readable medium, such as a flash drive, a disk, or any other medium, which may be capable of being used to store information and / or data (e.g., training data for training) and may be accessed within the electronic device 900.
[0062] The electronic device 900 may further include additional removable / non-removable, volatile / non-volatile storage media. Fig. 9As shown in , a disk drive for reading or writing from a removable, non-volatile disk (e.g., a "floppy disk") and an optical drive for reading or writing from a removable, non-volatile optical disk may be provided. In these cases, each drive may be connected to the bus (not shown) by one or more data media interfaces. Memory 920 may include a computer program product 925 having one or more program modules that are configured to perform various methods or actions of various embodiments of the present disclosure.
[0063] The communication unit 940 implements communication with other electronic devices through a communication medium. Additionally, the functions of the components of the electronic device 900 can be implemented with a single computing cluster or multiple computing machines that can communicate through a communication connection. Therefore, the electronic device 900 can operate in a networked environment using a logical connection with one or more other servers, a network personal computer (PC), or another network node.
[0064] The input device 950 may be one or more input devices, such as a mouse, a keyboard, a tracking ball, etc. The output device 960 may be one or more output devices, such as a display, a speaker, a printer, etc. The electronic device 900 may also communicate with one or more external devices (not shown) through the communication unit 940 as needed, such as a storage device, a display device, etc., communicate with one or more devices that allow a user to interact with the electronic device 900, or communicate with any device that allows the electronic device 900 to communicate with one or more other electronic devices (e.g., a network card, a modem, etc.). Such communication may be performed via an input / output (I / O) interface (not shown).
[0065] According to an exemplary implementation of the present disclosure, a computer-readable storage medium is provided, on which computer-executable instructions are stored, wherein the computer-executable instructions are executed by a processor to implement the method described above. According to an exemplary implementation of the present disclosure, a computer program product is also provided, which is tangibly stored on a non-transitory computer-readable medium and includes computer-executable instructions, and the computer-executable instructions are executed by a processor to implement the method described above.
[0066] Various aspects of the present disclosure are described herein with reference to the flowcharts and / or block diagrams of the methods, devices, equipment, and computer program products implemented according to the present disclosure. It should be understood that each box in the flowchart and / or block diagram and the combination of each box in the flowchart and / or block diagram can be implemented by computer-readable program instructions.
[0067] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing device, thereby producing a machine, so that when these instructions are executed by the processing unit of the computer or other programmable data processing device, a device that implements the functions / actions specified in one or more boxes in the flowchart and / or block diagram is generated. These computer-readable program instructions can also be stored in a computer-readable storage medium, and these instructions cause the computer, programmable data processing device, and / or other equipment to work in a specific manner, so that the computer-readable medium storing the instructions includes a manufactured product, which includes instructions for implementing various aspects of the functions / actions specified in one or more boxes in the flowchart and / or block diagram.
[0068] Computer-readable program instructions can be loaded onto a computer, other programmable data processing apparatus, or other device so that a series of operational steps are performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, so that the instructions executed on the computer, other programmable data processing apparatus, or other device implement the functions / actions specified in one or more boxes in the flowchart and / or block diagram.
[0069] According to one or more embodiments of the present disclosure, Example 1 is a switching device, comprising: one or more groups of upstream ports, configured to be coupled to a first external interface to transmit data with an upstream device via the first external interface; one or more groups of downstream ports, configured to be coupled to a second external interface to transmit data with a downstream device via the second external interface; a data exchange chip, comprising a plurality of forwarding units, each of the plurality of forwarding units being suitable for being connected to at least one group of upstream ports of the one or more groups of upstream ports and at least one group of downstream ports of the one or more groups of downstream ports; and a control unit, configured to control data forwarding of the data exchange chip so that each of the plurality of forwarding units forwards data between the connected at least one group of upstream ports and at least one group of downstream ports.
[0070] According to one or more embodiments of the present disclosure, the switching device also includes: a substrate, suitable for arranging one or more groups of uplink ports, one or more groups of downlink ports, a data exchange chip and a control unit thereon, wherein each group of uplink ports and each group of downlink ports are respectively coupled to the corresponding forwarding unit via a first transmission path and a second transmission path on the substrate, and wherein the data exchange chip is arranged on the substrate so that the lengths of the first transmission path and the second transmission path are both less than a predetermined threshold.
[0071] According to one or more embodiments of the present disclosure, one or more groups of upstream ports and one or more groups of downstream ports are respectively arranged along a first edge of the substrate, and a second edge of the data exchange chip forms a non-zero angle with the first edge.
[0072] According to one or more embodiments of the present disclosure, the number of the plurality of forwarding units is greater than or equal to the number of one or more groups of uplink ports and greater than or equal to the number of one or more groups of downlink ports.
[0073] According to one or more embodiments of the present disclosure, the control unit is also configured to: in response to determining that the data transmission volume per unit time of a first group of uplink ports connected to a first forwarding unit among one or more groups of uplink ports is greater than a threshold transmission volume, cause the data to be transmitted via a second group of uplink ports connected to an adjacent second forwarding unit.
[0074] According to one or more embodiments of the present disclosure, the threshold transmission amount is determined according to the threshold data forwarding amounts per unit time of a plurality of forwarding units.
[0075] According to one or more embodiments of the present disclosure, one or more groups of upstream ports and one or more groups of downstream ports are suitable for coupling multiple optical modules.
[0076] According to one or more embodiments of the present disclosure, Example 2 is a method for forwarding data, which includes: obtaining a connection relationship between one or more groups of upstream ports and one or more groups of downstream ports and multiple forwarding units of a data switching chip; and controlling data forwarding of the data switching chip according to the connection relationship so that each of the multiple forwarding units forwards data between the connected upstream port and the downstream port.
[0077] According to one or more embodiments of the present disclosure, the method also includes: in response to determining that the data transmission volume per unit time of a first group of upstream ports connected to a first forwarding unit among one or more groups of upstream ports is greater than a threshold transmission volume, causing the data to be transmitted via a second group of upstream ports connected to an adjacent second forwarding unit.
[0078] According to one or more embodiments of the present disclosure, the method further includes: determining a threshold transmission amount according to a threshold data forwarding amount per unit time of each forwarding unit in the plurality of forwarding units.
[0079] According to one or more embodiments of the present disclosure, the number of the plurality of forwarding units is greater than or equal to the number of one or more groups of uplink ports and greater than or equal to the number of one or more groups of downlink ports.
[0080] According to one or more embodiments of the present disclosure, Example 3 is a device for forwarding data, comprising: an acquisition module configured to acquire a connection relationship between one or more groups of uplink ports and one or more groups of downlink ports and a plurality of forwarding units of a data switching chip; and
[0081] The forwarding control module is configured to control data forwarding of the data switching chip according to the connection relationship, so that each forwarding unit in the plurality of forwarding units forwards data between the connected uplink port and the downlink port.
[0082] According to one or more embodiments of the present disclosure, Example 4 is a computer-readable storage medium having a computer program stored thereon, and the computer program can be executed by a processor to implement a method according to one or more embodiments of the present disclosure.
[0083] The flow chart and block diagram in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to multiple implementations of the present disclosure. In this regard, each square box in the flow chart or block diagram can represent a part of a module, program segment or instruction, and a part of a module, program segment or instruction includes one or more executable instructions for realizing the logical function of the specification. In some implementations as replacements, the function marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two continuous square boxes can actually be executed substantially in parallel, and they can sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be realized by a special hardware-based system that performs the function or action of the specification, or can be realized by a combination of special hardware and computer instructions.
[0084] The above descriptions of various implementations of the present disclosure are exemplary, non-exhaustive, and not limited to the disclosed implementations. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described implementations. The selection of terms used herein is intended to best explain the principles of the implementations, practical applications, or improvements to the technology in the market, or to enable other persons of ordinary skill in the art to understand the various implementations disclosed herein.
Claims
1. A switching device, comprising: one or more groups of uplink ports, configured to be coupled to the first external interface to transmit data with an upstream device via the first external interface; one or more groups of downstream ports, configured to be coupled to the second external interface to transmit data with a downstream device via the second external interface; A data exchange chip, comprising a plurality of forwarding units, each of the plurality of forwarding units being adapted to be connected to at least one group of uplink ports of the one or more groups of uplink ports and at least one group of downlink ports of the one or more groups of downlink ports; as well as The control unit is configured to control data forwarding of the data switching chip so that each of the plurality of forwarding units forwards data between the at least one group of connected uplink ports and the at least one group of connected downlink ports.
2. The switching device according to claim 1, further comprising: a substrate, adapted for arranging the one or more groups of uplink ports, the one or more groups of downlink ports, the data exchange chip and the control unit thereon, Each group of uplink ports and each group of downlink ports are coupled to a corresponding forwarding unit via a first transmission path and a second transmission path on the substrate, respectively, and The data exchange chip is arranged on the substrate so that the lengths of the first transmission path and the second transmission path are both less than a predetermined threshold.
3. The switching device according to claim 2, wherein the one or more groups of uplink ports and the one or more groups of downlink ports are respectively arranged along the first edge of the substrate, and the second edge of the data switching chip forms a non-zero angle with the first edge. 4 . The switching device according to claim 1 , wherein the number of the plurality of forwarding units is greater than or equal to the number of the one or more groups of uplink ports and greater than or equal to the number of the one or more groups of downlink ports.
5. The switching device according to any one of claims 1 to 3, wherein the control unit is further configured to: In response to determining that the data transmission volume per unit time of a first group of uplink ports connected to the first forwarding unit among the one or more groups of uplink ports is greater than a threshold transmission volume, data is transmitted via a second group of uplink ports connected to an adjacent second forwarding unit. 6 . The switching device according to claim 5 , wherein the threshold transmission volume is determined according to a threshold data forwarding volume per unit time of the plurality of forwarding units.
7. The switching device according to any one of claims 1-3 and 6, wherein the one or more groups of uplink ports and the one or more groups of downlink ports are suitable for coupling a plurality of optical modules.
8. A method for forwarding data, comprising: Acquire a connection relationship between one or more groups of uplink ports and one or more groups of downlink ports and multiple forwarding units of a data switching chip; as well as The data forwarding of the data switching chip is controlled according to the connection relationship, so that each forwarding unit of the plurality of forwarding units forwards data between the connected uplink port and the downlink port.
9. The method according to claim 8, further comprising: In response to determining that the data transmission volume per unit time of a first group of uplink ports connected to the first forwarding unit among the one or more groups of uplink ports is greater than a threshold transmission volume, data is transmitted via a second group of uplink ports connected to an adjacent second forwarding unit.
10. The method according to claim 9, further comprising: The threshold transmission amount is determined according to a unit time threshold data forwarding amount of each forwarding unit in the multiple forwarding units.
11. The method according to claim 8, wherein the number of the plurality of forwarding units is greater than or equal to the number of the one or more groups of uplink ports and greater than or equal to the number of the one or more groups of downlink ports.
12. A device for forwarding data, comprising: An acquisition module is configured to acquire connection relationships between one or more groups of uplink ports and one or more groups of downlink ports and multiple forwarding units of a data switching chip; as well as The forwarding control module is configured to control data forwarding of the data switching chip according to the connection relationship, so that each forwarding unit in the plurality of forwarding units forwards data between the connected uplink port and the downlink port.
13. A computer-readable storage medium having a computer program stored thereon, wherein the computer program can be executed by a processor to implement the method according to any one of claims 8 to 11.