Efficiently interconnect multiple computing nodes to form a circuit-switched network
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-10-07
- Publication Date
- 2026-08-14
AI Technical Summary
这可能是一个重大挑战
Smart Images

Figure CN116530070B_ABST
Abstract
Description
Background Technology
[0001] In many cases, interconnecting multiple compute nodes is beneficial, allowing large amounts of data to be transferred between them with relatively low latency. One example involves the disaggregation of compute resources. Currently, most data centers consist of many different servers, each including one or more central processing units (CPUs) and a certain amount of memory. Disaggregation involves separating the servers into their constituent processing and memory resources so that they can be allocated on demand according to the needs of each workload. In a data center that incorporates disaggregated compute resources, each rack can include dense pools of processing, memory, and storage blades, all interconnected via an internal network.
[0002] De-aggregating servers into resource components offers numerous advantages over more traditional approaches. For example, de-aggregation provides additional flexibility compared to traditional server-centric architectures. Workloads, especially in commercial data centers, can vary significantly. One of the primary goals of data center operations is to have sufficient resources to meet peak demand, rather than underutilizing those resources during off-peak conditions. De-aggregation increases the chance of providing sufficient resources during periods of high demand while also ensuring optimal utilization. Other benefits of de-aggregation include lower power consumption and higher density than traditional server-centric architectures, allowing each rack to host a large number of resource nodes (e.g., processing / memory / storage blades).
[0003] De-aggregation presents several significant challenges. In data centers with compute resources that require de-aggregation, each rack typically contains a very large number of resource nodes (e.g., thousands or even tens of thousands) that need to be interconnected. This far exceeds the capabilities of traditional top-of-rack (ToR) switches. Furthermore, to achieve de-aggregation, the interconnects between compute resources must provide high bandwidth and low latency, similar to the high bandwidth and low latency provided by the communication interfaces within traditional servers. This can be a major challenge. Summary of the Invention
[0004] According to one aspect of this disclosure, a system for interconnecting multiple computing nodes includes a plurality of optical path switches and a plurality of circuit switches. The system also includes a first network level comprising a first plurality of line switches selected from the plurality of optical path switches and the plurality of circuit switches. Each of the plurality of computing nodes is optically coupled to at least one line switch among the first plurality of line switches. The system further includes a second network level comprising a second plurality of line switches selected from the plurality of optical path switches and the plurality of circuit switches. Each of the first plurality of line switches is optically coupled to each of the second plurality of line switches.
[0005] In some embodiments, the first plurality of line switches includes a plurality of optical path switches, and the second plurality of line switches includes a plurality of circuit switches.
[0006] In some embodiments, the first plurality of line switches includes a plurality of circuit switches, and the second plurality of line switches includes a plurality of optical path switches.
[0007] Each of the multiple optical path switches can be configured to switch the input optical signal from the input port to the output port based on the optical characteristics of the input optical signal.
[0008] In some embodiments, the plurality of compute nodes may include a plurality of deaggregated compute nodes. The plurality of deaggregated compute nodes may include a pool of processing nodes and memory nodes.
[0009] In some embodiments, multiple compute nodes may be located in a single rack within a data center, and the multiple compute nodes may be interconnected to form an in-rack network.
[0010] The system may also include multiple optical transceivers. Each of the first plurality of line switches may be coupled to at least one optical transceiver.
[0011] In some embodiments, optical communication between multiple computing nodes and a first plurality of line switches, and between the first plurality of line switches and a second plurality of line switches, can occur via free-space optical communication.
[0012] In some embodiments, the system may further include a first plurality of optical cables coupling a plurality of computing nodes to a first plurality of line switches and a second plurality of optical cables coupling the first plurality of line switches to a second plurality of line switches.
[0013] The system may also include a scheduler that configures a first plurality of line switches and a second plurality of line switches to enable communication paths between multiple compute nodes.
[0014] According to another aspect of this disclosure, a system for interconnecting multiple computing nodes includes a plurality of node optical transceivers and a switch, the plurality of node optical transceivers being electrically coupled to at least some of the plurality of sub-computing nodes, and the switch being optically coupled to the plurality of node optical transceivers. The switch includes a plurality of optical path switches and a plurality of circuit switches. The switch also includes a first network layer comprising a first plurality of line switches selected from the plurality of optical path switches and the plurality of circuit switches. Each of the plurality of computing nodes is optically coupled to at least one of the first plurality of line switches. The switch further includes a second network layer comprising a second plurality of line switches selected from the plurality of optical path switches and the plurality of circuit switches. Each of the first plurality of line switches is optically coupled to each of the second plurality of line switches.
[0015] In some embodiments, the first plurality of line switches includes a plurality of optical path switches, and the second plurality of line switches includes a plurality of circuit switches.
[0016] In some embodiments, the first plurality of line switches includes a plurality of circuit switches, and the second plurality of line switches includes a plurality of optical path switches.
[0017] In some embodiments, the plurality of compute nodes may include a plurality of deaggregated compute nodes. The plurality of deaggregated compute nodes may include a pool of processing nodes and memory nodes.
[0018] A switch may include multiple switch optical transceivers. Each of the first plurality of line switches may be coupled to at least one switch optical transceiver.
[0019] In some embodiments, optical communication between multiple computing nodes and a first plurality of line switches, and between the first plurality of line switches and a second plurality of line switches, can occur via free-space optical communication.
[0020] In some embodiments, the system may further include a first plurality of optical cables coupling a plurality of computing nodes to a first plurality of line switches and a second plurality of optical cables coupling the first plurality of line switches to a second plurality of line switches.
[0021] According to another aspect of this disclosure, a system for interconnecting multiple computing nodes to form a circuit-switched network is disclosed. The system includes a first plurality of optical path switches forming a first level of the circuit-switched network. Each of the plurality of computing nodes is optically coupled to an optical path switch in the first plurality of optical path switches. The system also includes a second plurality of optical path switches forming a second level of the circuit-switched network. Each optical path switch in the second plurality of optical path switches is optically coupled to each optical path switch in the first plurality of optical path switches. The system also includes a plurality of wavelength converters that couple the first plurality of optical path switches to the second plurality of optical path switches. Each wavelength converter is configured to convert an input optical signal into an output optical signal having a desired wavelength.
[0022] In some embodiments, each wavelength converter may include a photodetector configured to convert an input optical signal into an electrical signal, a light source tunable to multiple different wavelengths, and an optical modulator configured to modulate the electrical signal onto an output signal generated by the light source to produce an output optical signal.
[0023] In some embodiments, at least some of the wavelength converters among a plurality of wavelength converters may be configured to perform wavelength conversion without performing opto-electro-optical conversion.
[0024] Multiple compute nodes can include multiple deaggregated compute nodes located in racks within a data center. These multiple deaggregated compute nodes can include a pool of processing nodes and storage nodes.
[0025] Each of the first and second plurality of optical path switches may include multiple input ports and multiple output ports. Furthermore, each of the first and second plurality of optical path switches may be configured to switch incoming optical signals from input ports to output ports based on the wavelength of the incoming optical signal.
[0026] This summary is provided to present a simplified description of the selected concepts, which will be further described in the detailed description below. This summary is not intended to identify key or essential features of the claimed subject matter, nor is it intended to be used to help determine the scope of the claimed subject matter.
[0027] Additional features and advantages will be set forth in the description below. The features and advantages of this disclosure can be realized and obtained by means of the systems and methods particularly pointed out in the appended claims. The features of this disclosure will become more apparent from the following description and the appended claims, or may be learned by practice of the subject matter of the disclosure as described below. Attached Figure Description
[0028] To describe in detail the manner in which the foregoing and other features of this disclosure are thus obtained, a more specific description will be given by reference to specific embodiments of this disclosure illustrated in the accompanying drawings. For better understanding, in the various drawings, the same elements are denoted by the same reference numerals. It will be understood that the drawings depict exemplary embodiments which will be described and explained with additional specificity and detail using the drawings, wherein:
[0029] Figure 1 An example of a multi-level network comprising interconnected computing nodes including multiple circuit switches, according to this disclosure, is shown.
[0030] Figures 1A to 1C The diagram shows... Figure 1 The communication path between the source computing node and the target computing node in the network shown.
[0031] Figure 2 Another example of a multi-level network of interconnected computing nodes, including a combination of optical path switches and circuit switches, is shown according to this disclosure.
[0032] Figures 2A to 2C The diagram shows... Figure 2 The communication path between the source computing node and the target computing node in the network shown.
[0033] Figure 3 Another example of a multi-level network comprising interconnected computing nodes including multiple optical path switches, according to this disclosure, is shown.
[0034] Figures 3A to 3C The diagram shows... Figure 3 The communication path between the source computing node and the target computing node in the network shown.
[0035] Figure 4 An example of a wavelength converter configured to perform optical-to-electrical-to-optical conversion is illustrated.
[0036] Figure 5 The illustration shows an example of a wavelength converter configured to perform wavelength conversion instead of optical-to-electrical-to-optical conversion.
[0037] Figure 6 The diagram illustrates the following: An example of a multi-level network implemented using network topology.
[0038] Figures 7A to 7B The illustration shows an example of a decompression computing system, which includes a switch configured according to the techniques disclosed herein. Detailed Implementation
[0039] This disclosure generally relates to techniques for efficiently interconnecting multiple computing nodes, enabling large amounts of data to be transmitted between the nodes with relatively low latency. The techniques disclosed herein enable multiple computing nodes to interconnect to form a circuit-switched network. Multiple circuit switches can be used to interconnect the computing nodes. Circuit switches can be optical or electrical (or a combination thereof), as will be discussed in more detail below. Circuit-switched networks differ from packet-switched networks, which move data in separate small chunks (packets) based on the destination address in each packet. With packet-switched networks, different packets can propagate between the source and destination computing nodes via different routes. In contrast, circuit-switched networks require dedicated point-to-point connections to send data between the source and destination computing nodes, and all data can be sent via the same route (point-to-point connection).
[0040] In some embodiments, the techniques disclosed herein can be used to interconnect multiple compute nodes located in the same rack within a data center. In other words, compute nodes can be interconnected to form an in-rack network. However, the scope of this disclosure is not limited to in-rack networks, and the techniques disclosed herein can be used to interconnect multiple compute nodes in a variety of different contexts. For example, the techniques disclosed herein can be used to connect multiple server racks, all servers throughout a data center, one or more immersion tanks filled with servers, and so on.
[0041] In some embodiments, the interconnected compute nodes may be de-aggregated compute nodes. For example, a rack may include dense pools of processing, memory, and storage blades, all of which may be interconnected using the techniques disclosed herein.
[0042] Hierarchical network topologies can be used to interconnect large numbers of compute nodes (e.g., tens of thousands or more). In some embodiments, the network may include multiple network switches arranged in multiple distinct levels to support communication between all compute nodes. As an example, in a two-level topology, the first level may include a first plurality of network switches, and the second level may include a second plurality of network switches. Each compute node in the network may be coupled to one of the network switches in the first level, and each network switch in the first level may be coupled to each network switch in the second level. In this way, any compute node in the network can communicate with any other compute node in the network. However, the techniques disclosed herein are not limited to just two network levels. This disclosure contemplates the use of N network levels, where the value of N can be any integer greater than or equal to 2.
[0043] In some embodiments, the line-switched network according to this disclosure may be implemented using only circuit switches. In other embodiments, the line-switched network according to this disclosure may include a combination of optical switches and circuit switches. In still other embodiments, the line-switched network according to this disclosure may be implemented using only optical switches. Examples of each of these types of implementations will be described below.
[0044] Figure 1 An example of a network 100 interconnecting compute nodes 102 according to the present disclosure is shown. In some embodiments, the compute nodes 102 may be located within the same rack in a data center. Therefore, network 100 may represent an in-rack network. However, as stated above, the scope of the present disclosure is not limited to in-rack networks, and the techniques disclosed herein can be used to interconnect multiple compute nodes in a variety of different contexts.
[0045] Figure 1 The diagram shows M computing nodes 102, where the value of M can be any positive integer. In some embodiments, there can be a very large number of computing nodes 102 in network 100. In other words, the value of M may be quite large. For example, in some embodiments, there may be tens of thousands (or more) of computing nodes 102 in network 100.
[0046] In some embodiments, the computing resources in network 100 can be decomposed into their constituent processing and memory resources, such that these resources can be allocated as needed based on the requirements of each workload. In other words, network 100 may include a dense pool of processing nodes, memory nodes, storage nodes, etc. The various types of nodes included in network 100 may generally be referred to herein as compute node 102. In this context, the term "compute node" may refer to processing nodes, memory nodes, storage nodes, and / or another type of node used by the computing system.
[0047] Network 100 includes a plurality of network switches 104 for interconnecting computing nodes 102. In some embodiments, network 100 may be implemented as a circuit-switched network, and the network switches 104 may take the form of line switches.
[0048] In this context, the term "network switch" generally refers to any device in a computer network that connects other devices together. The term "line switch" can refer to a network switch used in a line-switched network. A line switch can selectively connect input signals from input ports to one of a plurality of available output ports. Line switches can be electrical or optical, which will be explained in more detail below. A potential advantage of line switches over packet switches is that they can operate at the physical layer of the network without requiring buffering, arbitration, and inspection mechanisms. This means that line switches can be cheaper and more energy-efficient than equivalent packet switches.
[0049] Network 100 can be configured to have a hierarchical topology. For example, network switches 104 can be arranged in multiple different levels. In the depicted embodiment, network 100 includes two levels: a first level 106a and a second level 106b. However, the fact that the depicted network 100 includes only two levels 106a to 106b should not be construed as limiting the scope of this disclosure. As mentioned above, a network configured according to this disclosure can include N network levels, where the value of N can be any integer greater than or equal to two.
[0050] In the depicted embodiment, the network switches 104 in the first level 106a and the second level 106b of network 100 are implemented as circuit switches 108 and circuit switches 110. Specifically, the first level 106a of network 100 includes i circuit switches 108, where the value of i can be any positive integer. The first circuit switch 108-1, the second circuit switch 108-2, and the i-th circuit switch 108-i are as follows: Figure 1 As shown. The second level 106b of network 100 includes j circuit switches 110, where the value of j can be any positive integer. The first circuit switch 110-1, the second circuit switch 110-2, and the j-th circuit switch 110-j are as follows: Figure 1 As shown.
[0051] In some embodiments, circuit switches 108 and 110 can be implemented as electrical cross switches. Electrical cross switches can be designed to implement all possible connections for inputs and outputs. In other words, each input can be connected to any output. Electrical cross switches can include a collection of switches arranged in a matrix configuration. In other words, an electrical cross switch can have multiple input and output lines that form a cross pattern of interconnecting lines, and connections between interconnecting lines can be established by closing the switch located at each cross.
[0052] Each compute node 102 is optically coupled to one of the circuit switches 108 in the first stage 106a of network 100. In addition, each circuit switch 108 in the first stage 108a of network 100 is optically coupled to each circuit switch 110 in the second stage 106b of network 100. Figure 1 The arrows between the various components can be interpreted as representing optical communication channels between these components. In some embodiments, communication between computing node 102, circuit switch 108 in the first stage 106a of network 100, and circuit switch 110 in the second stage 106b of network 100 can occur via free-space optical communication. Alternatively, in other embodiments, communication between computing node 102, circuit switch 108 in the first stage 106a of network 100, and circuit switch 110 in the second stage 106b of network 100 can occur via optical fiber. For example, computing node 102 can be optically coupled to circuit switch 108 in the first stage 106a of network 100 via a first set of optical fibers, and circuit switch 108 in the first stage 106a of network 100 can be optically coupled to circuit switch 110 in the second stage 106b of network 100 via a second set of optical fibers. The arrow between computing node 102 and circuit switch 108 can represent the first set of optical fibers, and the arrow between circuit switch 108 and circuit switch 110 can represent the second set of optical fibers.
[0053] The hierarchical topology of network 100 enables any computing node 102 in network 100 to communicate with any other computing node 102 in network 100. A specific example will now be described.
[0054] Suppose that a first computing node 102-1 needs to communicate with (e.g., send data to) an Mth computing node 102-M in network 100. The first computing node 102-1 is optically coupled to a first circuit switch 108-1. The Mth computing node 102-M is optically coupled to an i-th circuit switch 108-i. To enable the first computing node 102-1 to send data to the Mth computing node 102-M, a communication path can be established between the first computing node 102-1 and the Mth computing node 102-M. The communication path may include circuit switch 108-1 (which is optically coupled to the first computing node 102-1), one of the circuit switches 110 in the second level 106b of network 100, and circuit switch 108-i (which is optically coupled to the Mth computing node 102-M). The circuit switch 110 in the second level 106b of network 100 used for the communication path can be selected by a scheduling mechanism, as will be discussed in more detail below. For the purposes of this example, it will be assumed that circuit switch 110-1 in the second level 106b of network 100 will be used for the communication path.
[0055] To send data to the Mth compute node 102-M, the first compute node 102-1 can send an optical signal containing the data to the first circuit switch 108-1. When the optical signal arrives at the first circuit switch 108-1, it can be converted into an electrical signal and transmitted to the input port 112 of the circuit switch 108-1. The circuit switch 108-1 can then switch the electrical signal from the input port 112 to the output port 114, which is coupled to the circuit switch 110-1 in the second stage 106b of network 100. The electrical signal can then be converted into an optical signal and transmitted to the first circuit switch 110-1. When the optical signal arrives at the circuit switch 110-1, it can be converted into an electrical signal and transmitted to the input port 116. The circuit switch 110-1 can then switch the electrical signal from the input port 116 to the output port 118, which is coupled to the circuit switch 108-i in the first stage 106a of network 100. The electrical signal can then be converted into an optical signal and transmitted to circuit switch 108-i. When the optical signal arrives at circuit switch 108-i, it can be converted into an electrical signal and transmitted to its input port 120. Circuit switch 108-i can then switch the electrical signal from input port 120 to output port 122, which is coupled to the Mth computing node 102-M. The electrical signal is then converted back into an optical signal and transmitted to the Mth computing node 102-M. At the Mth computing node 102-M, the optical signal is converted back into an electrical signal.
[0056] In the example just described, any circuit switch 110 in the second stage 106b of network 100 can have been used to establish a communication path between the first compute node 102-1 and the Mth compute node 102-M. This is because, as described above, each circuit switch 108 in the first stage 108a of network 100 is optically coupled to each circuit switch 110 in the second stage 106b of network 100. Network 100 may include some type of scheduling mechanism that allocates a specific circuit switch 110 in the second stage 106b of network 100 when two compute nodes 102 need to communicate.
[0057] In some embodiments, the scheduling mechanism may include a static scheduler that reconfigures circuit switches 108 and 110 in network 100 such that each pair of compute nodes 102 is connected according to a predetermined schedule. In some embodiments, the static scheduler may be configured such that each pair of compute nodes 102 is connected at an equal ratio. If such a scheduler is used in conjunction with the example just described, the first compute node 102-1 and the Mth compute node 102-M (and each other pair of compute nodes 102 in network 100) may periodically connect to each other. When the first compute node 102-1 has data to send to the Mth compute node 102-M, the first compute node 102-1 may wait until a time slot is scheduled to establish a communication path between the first compute node 102-1 and the Mth compute node 102-M. When such a time slot occurs, the first compute node 102-1 may then send the data to the Mth compute node 102-M.
[0058] To accommodate dynamic traffic patterns on top of static scheduling, traffic from each compute node 102 can be evenly distributed across all compute nodes 102 in a specific rack (or group of compute nodes 102), and these compute nodes then forward the traffic to its destination. This can be considered a form of bypass routing. This uncoordinated scheduling eliminates the complexity and latency associated with centralized schedulers while guaranteeing worst-case network throughput under any traffic pattern. For this scheduling, all compute nodes 102 in network 100 should be connected via something that appears as a single non-blocking switch. In the described embodiment, this can be achieved by using multiple relatively low-port-count line switches (i.e., circuit switch 108, circuit switch 110) connected in a Clos topology. These switches can operate like a single line switch when synchronously reconfigured.
[0059] Of course, many different kinds of scheduling mechanisms can be used according to this disclosure, and the scope of this disclosure should not be limited to any particular kind of scheduling mechanism. In some embodiments, the scheduling mechanism may include a centralized scheduler that reconfigures circuit switches 108 and 110 as needed whenever communication is required between two compute nodes 102. The centralized scheduler may be configured to operate at a sub-microsecond granularity. Alternatively, in some embodiments, the scheduling mechanism may include distributed schedulers. For example, network 100 may include a hierarchy of scheduling entities, rather than compute nodes 102 sending requests to a single centralized entity. In some embodiments, different compute nodes 102 or groups of compute nodes 102 may send requests to different scheduling entities. These scheduling entities may communicate with each other to reconfigure circuit switches 108 and 110. As another example, in some embodiments, network 100 may include multiple scheduling entities implemented on circuit switches 108 and 110 themselves. Still alternatively, in some embodiments, network 100 may be configured to operate without a scheduling mechanism. For example, a congestion control loop can be used instead of a scheduling mechanism to minimize conflicts.
[0060] The above example relates to communication between the first computing node 102-1 and the Mth computing node 102-M. However, communication between any two computing nodes 102 in network 100 can occur in a similar manner. A communication path can be established between the source computing node 102 and the destination computing node 102. The communication path may include (1) a circuit switch 108 in the first stage 106a of network 100 coupled to the source computing node 102, (2) a circuit switch in the circuit switch 110 in the second stage 106b of network 100, and (3) a circuit switch 108 in the first stage 106a of network 100 coupled to the destination computing node 102.
[0061] In some embodiments, circuit switches 108 in the first level 106a of network 100 and circuit switches 110 in the second level 106b of network 100 can work together such that, from the perspective of the computing node 102 in network 100, they appear as a single switch 180. Therefore, even though the depicted network 100 includes multiple different circuit switches 108 and 110, all these circuit switches 108 and 110 can operate together, allowing interaction between the computing node 102 and the circuit switches 108 and 110 to occur as if the circuit switches 108 and 110 were a single switch 180.
[0062] The computing node 102 and circuit switch 108 in the first level 108a of network 100 are shown Figure 1 The left and right sides. In other words, Figure 1 The right-hand compute node 102 and Figure 1 The computation node 102a on the left is the same, and Figure 1 The circuit switch 108 on the right and Figure 1 The circuit switch 108a on the left is the same. This is because... Figure 1 This is an expanded diagram of network 100. In the expanded diagram, the data path from source computing node 102 (e.g., the first computing node 102-1 in the example above) to destination computing node (e.g., the Mth computing node 102-M in the example above) is shown from left to right.
[0063] Compared to current architectures for in-rack networking, Figure 1 The network 100 shown offers significant advantages. For example, Figure 1 The network 100 shown interconnects compute nodes 102 in a manner that provides sufficient high bandwidth and low latency to meet the requirements of deaggregation workloads. It is theoretically possible to design a packet-switched network to interconnect a large number of compute nodes 102 in a manner that provides the desired high bandwidth and low latency. However, such a packet-switched network design may be significantly less power-efficient and cost-effective compared to current in-rack networks. Power is a particular concern because data centers are typically designed with rack power strictly limited by power supply density, rack cooling, and heat dissipation constraints.
[0064] In the example above, the first computing node 102-1 sends data to the Mth computing node 102-M in the network 100. Figures 1A to 1C The communication path between the first computing node 102-1 and the Mth computing node 102-M is described in more detail. Specifically, Figures 1A to 1C Various components in network 100 that support communication between the first computing node 102-1 and the Mth computing node 102-M are shown.
[0065] First refer to Figure 1ATo send data to the Mth compute node 102-M, the first compute node 102-1 can provide an electrical signal 124 (containing the data to be transmitted) to transceiver 126. Transceiver 126 can convert the electrical signal 124 into an optical signal 128 and send the optical signal 128 to circuit switch 108-1 via optical communication channel 158. When the optical signal 128 arrives at circuit switch 108-1, transceiver 130 can convert the optical signal 128 into an electrical signal 132. The electrical signal 132 can then be transmitted to input port 112 of circuit switch 108-1. Circuit switch 108-1 can switch the electrical signal from input port 112 to output port 114, which is optically coupled to circuit switch 110-1 in the second stage 106b of network 100. Transceiver 134 can convert the electrical signal 132 into an optical signal 136 and send the optical signal 136 to circuit switch 110-1.
[0066] Now for reference Figure 1B Transceiver 134 can transmit optical signal 136 to circuit switch 110-1 via optical communication channel 160. When optical signal 136 arrives at circuit switch 110-1, transceiver 138 can convert optical signal 136 into electrical signal 140. Electrical signal 140 can then be transmitted to input port 116 of circuit switch 110-1. Circuit switch 110-1 can switch electrical signal 140 from input port 116 to output port 118, and output port 118 is optically coupled to circuit switch 108-i in the first stage 106a of network 100. Transceiver 142 can convert electrical signal 140 into optical signal 144 and transmit optical signal 144 to circuit switch 108-i.
[0067] Now for reference Figure 1C Transceiver 142 can transmit optical signal 144 to circuit switch 108-i via optical communication channel 162. When optical signal 144 arrives at circuit switch 108-i, transceiver 146 can convert optical signal 144 into electrical signal 148. Electrical signal 148 can then be transmitted to input port 120 of circuit switch 108-i. Circuit switch 108-i can switch electrical signal 148 from input port 120 to output port 122 optically coupled to the Mth computing node 102-M. Transceiver 150 can convert electrical signal 148 into optical signal 152 and transmit optical signal 152 to the Mth computing node 102-M via optical communication channel 164. When optical signal 152 arrives at the Mth computing node 102-M, transceiver 154 can convert optical signal 152 into electrical signal 156, and electrical signal 156 can be transmitted to the Mth computing node 102-M.
[0068] Figure 2Another example of a network 200 of interconnected computing nodes 202 according to this disclosure is shown. In addition to the following, Figure 2 The network 200 shown is similar to the combination above. Figure 1 Network 100 is described.
[0069] and Figure 1 The network shown is the same as network 100. Figure 2 The network 200 shown includes multiple network switches 204 for interconnecting computing nodes 202, and the network switches 204 can be in the form of line switches. Figure 1 In the network 100 shown, the network switch 104 takes the form of a circuit switch 108 and a circuit switch 110. In comparison, Figure 2 The network 200 shown includes a combination of an optical path switch 208 and a circuit switch 210.
[0070] In the depicted network 200, the network switch 204 in the first stage 206a of network 200 is implemented as an optical path switch 208, and the network switch 204 in the second stage 206b of network 200 is implemented as a circuit switch 210. Specifically, the first stage 206a of network 200 includes i optical path switches 208, where the value of i can be any positive integer. The first optical path switch 208-1, the second optical path switch 208-2, and the i-th optical path switch 208-i are as follows: Figure 2 As shown. The second level 206b of network 200 includes j circuit switches 210, where the value of j can be any positive integer. The first circuit switch 210-1, the second circuit switch 210-2, and the j-th circuit switch 210-j are as follows: Figure 2 As shown. Using an optical path switch 208 instead of an electrical switch 108 in the first level 206a of network 200 can provide certain benefits, which will be described in more detail below.
[0071] Each compute node 202 is optically coupled to one of the optical path switches 208 in the first-level 206a of network 200. Furthermore, each circuit switch 210 in the second-level 206b of network 200 is optically coupled to each optical path switch 208 in the first-level 206a of network 200. Figure 1 As shown, Figure 2 The arrows between the various components can be interpreted as representing the optical communication channels between these components. These optical communication channels can be implemented via free-space optical communication and / or via optical cables.
[0072] and Figure 1Similar to network 100, the hierarchical topology of network 200 allows any computing node 202 in network 200 to communicate with any other computing node 202 in network 200. For example, to enable a first computing node 202-1 to send data to the Mth computing node 202-M, a communication path can be established between the first computing node 202-1 and the Mth computing node 202-M. The communication path may include an optical path switch 208-1 in the first level 206a of network 200 (which is optically coupled to the first computing node 202-1), a circuit switch 210 in the second level 206b of network 200 (which may be allocated by a scheduling mechanism), and an optical path switch 208-i in the first level 206a of network 200 (which is optically coupled to the Mth computing node 202-M). Although the example just described applies to communication between the first computing node 202-1 and the Mth computing node 202-M, communication between any two computing nodes 202 in network 200 can occur in a similar manner.
[0073] Optical path switch 208 can be configured to switch input optical signals from an input port to an output port. In some embodiments, optical path switch 208 may utilize a microelectromechanical system (MEMS) mirror. For example, optical path switch 208 may include a MEMS grating. As another example, optical path switch 208 may include optoelectronic devices.
[0074] In some embodiments, the optical path switch 208 can be configured to switch an input optical signal from an input port to an output port based on the optical characteristics of the input signal. The optical characteristics can be, for example, the wavelength of the input signal, the phase of the input signal, the polarization of the input signal, the angle of incidence of the input signal, or any other optical characteristics that can be used to switch the input optical signal from the input port to the output port.
[0075] Using an optical path switch 208 instead of an electrical switch 108 in the first stage 206a of network 200 reduces the number of optical-to-electrical and electrical-to-optical signal conversions that must be performed. This can improve the overall performance of network 200 by reducing latency.
[0076] To understand how the use of optical path switch 208 improves network performance, consider an example of the first computing node 202-1 sending data to the Mth computing node 202-M. For ease of understanding... Figure 1 The example shown compares network 100 to the previous example, which will be similar to the previous combination. Figure 1 The example described involves a first computing node 102-1 sending data to the Mth computing node 102-M.
[0077] To send data to the Mth computing node 202-M, the first computing node 202-1 can send an optical signal containing the data to the optical path switch 208-1. The optical signal can be transmitted to the input port 212 of the optical path switch 208-1. The optical signal can have characteristics (e.g., wavelength) that cause the optical path switch 208-1 to switch the optical signal to the appropriate output port. For the purposes of this example, it will be assumed that the circuit switch 210-1 in the second stage 206b of network 200 will be used as the communication path between the first computing node 202-1 and the Mth computing node 202-M. Accordingly, the optical signal sent by the first computing node 202-1 can have characteristics (e.g., wavelength) that cause the optical path switch 208-1 to switch the optical signal to the output port 214 of the circuit switch 210-1 coupled to the second stage 206b of network 200. Therefore, the optical signal carrying data can pass through the first stage 206a of network 200 without the need for photoelectric or electro-optical signal conversion.
[0078] In comparison, the combination above Figure 1 In the described example, two signal conversions are performed in the first stage 106a of network 100. Specifically, when the optical signal sent by the first computing node 102-1 arrives at the circuit switch 108-1, the optical signal is converted into an electrical signal before being transmitted to the input port 112 of the circuit switch 108-1. Then, after the circuit switch 108-1 has switched the electrical signal from the input port 112 to the output port 114, the electrical signal is converted back into an optical signal before being transmitted to the second stage 106b of network 100. Accordingly, with Figure 1 Compared to the configuration of network 100 shown, Figure 2 The configuration of network 200 shown saves two signal conversions in the first stage 206a of network 200.
[0079] continue Figure 2 The example shown involves network 200, and the operation of circuit switch 210 in the second level 206b of network 200 can be similar to... Figure 1 The operation of circuit switch 110 in the second stage 106b of network 100 is illustrated. Therefore, when an optical signal arrives at circuit switch 210-1, it can be converted into an electrical signal and transmitted to input port 216 of circuit switch 210-1. Circuit switch 210-1 can then switch the electrical signal from input port 216 to output port 218, which is optically coupled to optical path switch 208-i in the first stage 206a of network 200 (which is optically coupled to the Mth computing node 202-M). The electrical signal can then be converted back into an optical signal and transmitted to optical path switch 208-i.
[0080] The optical signal transmitted by circuit switch 210-1 (or more specifically, by the transceiver at output port 218 of circuit switch 210) can be transmitted to input port 220 of optical path switch 208-i, and the optical signal can have characteristics (e.g., wavelength) that cause optical path switch 208-i to switch the optical signal to output port 222 optically coupled to the Mth computing node 202-M. Therefore, the optical signal leaving the second stage 206b of network 200 can be returned through the first stage 206a of network 200 without requiring photoelectric or electro-optical signal conversion.
[0081] In comparison, the combination above Figure 1 In the described example, after the optical signal leaves the second stage 106b of network 100 and returns through the first stage 106a of network 100, two additional signal conversions are performed. Specifically, when the optical signal reaches circuit switch 108-i, the optical signal is converted into an electrical signal and transmitted to the input port 120 of circuit switch 108-i. Circuit switch 108-i then switches the electrical signal from input port 120 to the output port 122 of optically coupled to the Mth computing node 102-M. The electrical signal is then converted into an optical signal and transmitted to the Mth computing node 102-M. Correspondingly, after the optical signal leaves the second stage 206b of network 200 and returns through the first stage 206a of network 200, Figure 2 The configuration of network 200 shown saves two additional signal conversions.
[0082] In some embodiments, the optical path switch 208 in the first level 206a of network 200 and the circuit switch 210 in the second level 206b of network 200 can work together such that, from the perspective of the computing node 202 in network 200, they appear to be a single switch 280. Therefore, even though the depicted network 200 includes multiple different optical path switches 208 and multiple different circuit switches 210, all these optical path switches 208 and circuit switches 210 can operate together, allowing interaction between the computing node 202 and the line switch (i.e., the optical path switch 208 and the circuit switch 210) to occur as if the line switch were a single network switch 280.
[0083] Figures 2A to 2C The communication path between the first computing node 202-1 and the Mth computing node 202-M is described in more detail. Specifically, Figures 2A to 2C Various components in network 200 are shown, which support communication between the first computing node 202-1 and the Mth computing node 202-M.
[0084] First refer to Figure 2ATo send data to the Mth computing node 202-M, the first computing node 202-1 can provide an electrical signal 224 (containing the data to be sent) to transceiver 226. Transceiver 226 can convert the electrical signal 224 into an optical signal 228 and send the optical signal 228 to optical path switch 208-1 via optical communication channel 258. The optical signal 228 can be transmitted to input port 212 of optical path switch 208-1, and the optical signal 228 can have characteristics (e.g., wavelength) that enable optical path switch 208-1 to switch the optical signal 228 to an appropriate output port. In this example, optical path switch 208-1 can switch the optical signal 228 from input port 212 to output port 214, which is optically coupled to circuit switch 210-1 in the second stage 206b of network 200 via optical communication channel 260. Therefore, as described above, the optical signal 228 can pass through the first stage 206a of network 200 without requiring photoelectric or electro-optical signal conversion.
[0085] Now for reference Figure 2B Optical signal 228 can be transmitted from output port 214 of optical path switch 208-1 to circuit switch 210-1 via optical communication channel 260. When optical signal 228 arrives at circuit switch 210-1, transceiver 238 can convert optical signal 228 into electrical signal 240. Electrical signal 240 can then be transmitted to input port 216 of circuit switch 210-1. Circuit switch 210-1 can switch electrical signal 240 from input port 216 to output port 218, output port 218 is optically coupled to circuit switch 208-i in the first stage 206a of network 200 (which is optically coupled to the Mth computing node 202-M). Transceiver 242 can convert electrical signal 240 into optical signal 244 and send optical signal 244 to circuit switch 208-i.
[0086] Now for reference Figure 2CTransceiver 242 can transmit optical signal 244 to optical path switch 208-i via optical communication channel 262. Optical signal 244 can be transmitted to input port 220 of optical path switch 208-i, and optical signal 244 can have characteristics (e.g., wavelength) that enable optical path switch 208-i to switch optical signal 244 to an appropriate output port. In this example, optical path switch 208-i can switch optical signal 244 from input port 220 to output port 222, which is optically coupled to the Mth computing node 202-M via optical communication channel 264. Therefore, as described above, optical signal 244 can leave the second stage 206b of network 200 and return via the first stage 206a of network 200 without requiring photoelectric or electro-optical signal conversion until optical signal 244 reaches the Mth computing node 202-M. When the optical signal 244 arrives at the Mth computing node 202-M, the transceiver 254 can convert the optical signal 244 into an electrical signal 256, and the electrical signal 256 can be transmitted to the Mth computing node 202-M.
[0087] As mentioned above, utilizing Figure 2 The optical path switch 208 in the network 200 shown is replaced Figure 1 The circuit switch 108 shown can improve the performance of network 200 by reducing latency. This can be compared... Figures 1A to 1C and Figures 2A to 2C The number of photoelectric and electro-optic signal conversions required in the example shown can be seen from this.
[0088] exist Figures 1A to 1C In the example shown, a total of eight signal conversions were performed. These include (1) the conversion from electrical signal 124 to optical signal 128 performed by transceiver 126, (2) the conversion from optical signal 128 to electrical signal 132 performed by transceiver 130, (3) the conversion from electrical signal 132 to optical signal 136 performed by transceiver 134, (4) the conversion from optical signal 136 to electrical signal 140 performed by transceiver 138, (5) the conversion from electrical signal 140 to optical signal 144 performed by transceiver 142, (6) the conversion from optical signal 144 to electrical signal 148 performed by transceiver 146, (7) the conversion from electrical signal 148 to optical signal 152 performed by transceiver 150, and (8) the conversion from optical signal 152 to electrical signal 156 performed by transceiver 154.
[0089] In contrast, Figures 2A to 2CIn the example shown, only four signal conversions were performed in total. These include (1) the conversion from electrical signal 224 to optical signal 228 performed by transceiver 226, (2) the conversion from optical signal 228 to electrical signal 240 performed by transceiver 238, (3) the conversion from electrical signal 240 to optical signal 244 performed by transceiver 242, and (4) the conversion from optical signal 244 to electrical signal 256 performed by transceiver 254.
[0090] It can be seen that, using Figure 2 The optical path switch 208 in the network 200 shown replaces Figure 1 The circuit switch 108 in the network 100 shown reduces the number of signal conversions that must be performed when two computing nodes 202 communicate with each other. Therefore, using an optical path switch 208 instead of a circuit switch 108 in the first stage 206a of the network 200 can improve the performance of the network 200 by reducing latency.
[0091] Figure 3 Another example of a network 300 of interconnected computing nodes 302 according to this disclosure is shown. Except as specified below, Figure 3 The network 300 shown is similar to the combination above. Figure 2 The network described is 200.
[0092] and Figure 2 The network shown is similar to network 200. Figure 3 The network 300 shown includes multiple network switches 304 for interconnecting computing nodes 302, and the network switches 304 can be in the form of line switches. Figure 2 The network 200 shown includes a combination of an optical path switch 208 and a circuit switch 210. In contrast, in... Figure 3 In the network 300 shown, the network switch 304 takes the form of optical path switches 308 and optical path switches 310. Specifically, the first level 306a of the network 300 includes i optical path switches 308, where the value of i can be any positive integer. The first optical path switch 308-1 and the i-th optical path switch 308-i are as follows... Figure 3 As shown. The second level 306b of network 300 includes j optical path switches 310, where the value of j can be any positive integer. Figure 3 The image shows the first optical path switch 310-1, the second optical path switch 310-2, the third optical path switch 310-3, and the j-th optical path switch 310-j.
[0093] Each compute node 302 is optically coupled to one of the optical path switches 308 in the first stage 306a of network 300. Furthermore, each optical path switch 310 in the second stage 306b of network 300 is optically coupled to each optical path switch 308 in the first stage 306a of network 300. As previously described, Figure 3 The arrows between the various components can be interpreted as representing the optical communication channels between these components. These optical communication channels can be implemented via free-space optical communication and / or via optical cables.
[0094] As previously described, the hierarchical topology of network 300 enables any computing node 302 in network 300 to communicate with any other computing node 302 in network 300. For example, to enable first computing node 302-1 to send data to Mth computing node 302-M, a communication path can be established between first computing node 302-1 and Mth computing node 302-M. The communication path may include optical path switch 308-1 in the first level 306a of network 300 (which is optically coupled to first computing node 302-1), one of the optical path switches 310 in the second level 306b of network 300 (which may be allocated by a scheduling mechanism), and optical path switch 308-i in the second level 306b of network 300 (which is optically coupled to Mth computing node 302-M). Although the example just described applies to communication between first computing node 302-1 and Mth computing node 302-M, communication between any two computing nodes 302 in network 300 can occur in a similar manner.
[0095] As previously mentioned, optical switch 308 and optical switch 310 can be configured to switch input optical signals from input ports to output ports based on the optical characteristics (e.g., wavelength) of the input signals. However, in cases like... Figure 3 In a multi-level network like the network 300 shown, it is not feasible to pass the same optical signal through the first level 306a and the second level 306b of the network 300.
[0096] For example, consider an example of a first computing node 302-1 sending data to an Mth computing node 302-M (similar to the example described above). To send data to the Mth computing node 302-M, the first computing node 302-1 can send an optical signal containing the data to an optical path switch 308-1. The optical signal can be transmitted to an input port 312 of the optical path switch 308-1. The optical signal can have characteristics (e.g., wavelength) that cause the optical path switch 308-1 to switch the optical signal to an appropriate output port. For the purposes of this example, it will be assumed that an optical path switch 310-1 in the second stage 306b of network 300 will be used for the communication path between the first computing node 302-1 and the Mth computing node 302-M. Accordingly, the optical signal sent by the first computing node 302-1 can have characteristics (e.g., wavelength) that cause the optical path switch 308-1 to switch the optical signal to an output port 314 of the optical path switch 310-1 coupled to the second stage 306b of network 300.
[0097] However, when the optical signal arrives at the optical path switch 310-1 in the second stage 306b of network 300, the characteristics of the optical signal may not be the correct optical characteristics for the optical path switch 310-1 to switch the optical signal to the desired output port. In this example, it is expected that the optical path switch 310-1 will switch the incoming optical signal from input port 316 to output port 318, which is optically coupled to the optical path switch 308-i in the first stage 306a of network 300 (which is optically coupled to the Mth compute node 302-M). However, the optical characteristics of the incoming input signal may cause the optical signal to be switched to a different output port.
[0098] To solve this problem, the wavelength converter 366-1 at the optical path switch 310-1 converts the incoming optical signal into a different optical signal with the desired wavelength, so that the optical path switch 310-1 can switch the optical signal to the desired output port.
[0099] The optical signal leaving output port 318 of optical path switch 310-1 can be sent to optical path switch 308-i. When this optical signal arrives at optical path switch 308-i, another wavelength conversion can be performed because the wavelength of the optical signal may not be the correct wavelength for optical path switch 308-i to switch the optical signal to the desired output port. In this example, it is desired that optical path switch 308-i will switch the incoming optical signal from input port 320 to output port 322 optically coupled to the Mth compute node 302-M. Wavelength converter 368-i at optical path switch 308-i can convert the incoming optical signal into a different optical signal with the desired wavelength so that optical path switch 308-i can switch the optical signal from input port 320 to the desired output port 322.
[0100] Figure 3A network 300 is shown having multiple wavelength converters 366 that couple optical path switches 308 in a first stage 306a of the network 300 to optical path switches 310 in a second stage 306b of the network 300. In the depicted embodiment, each wavelength converter 366 can couple any optical path switch 308 in the first stage 306a of the network 300 to one of the optical path switches 310 in the second stage 306b of the network 300. For example, wavelength converter 366-1 can couple any optical path switch 308 in the first stage 306a of the network 300 to optical path switch 310-1 in the second stage 306b of the network 300. Similarly, wavelength converter 366-2 can couple any optical switch in optical switch 308 to optical switch 310-2, wavelength converter 366-3 can couple any optical switch in optical switch 308 to optical switch 310-3, and the j-th wavelength converter 366-j can couple any optical switch in optical switch 308 to optical switch 310-j.
[0101] Figure 3 A network 300 with multiple wavelength converters 368 is also shown, which couple optical path switches 310 in the second stage 306b of the network 300 to optical path switches 308 in the first stage 306a of the network 300. Each wavelength converter 368 can couple any optical path switch 310 in the second stage 306b of the network 300 to one of the optical path switches 308 in the first stage 306a of the network 300. For example, wavelength converter 368-1 can couple any optical path switch 310 in the second stage 306b of the network 300 to optical path switch 308-1 in the first stage 306a of the network 300. Similarly, wavelength converter 368-i can couple any optical path switch 310 to optical path switch 310-i.
[0102] In some embodiments, wavelength converters 366 and 368 can be configured to perform optical-to-electrical-to-optical (OEO) conversion. In other words, wavelength converters 366 and 368 can be configured to convert an incoming optical signal into an electrical signal, and then convert it back to a different optical signal having a desired wavelength. Alternatively, in some embodiments, wavelength converters 366 and 368 can be configured to perform wavelength conversion without performing OEO conversion.
[0103] In some embodiments, optical path switches 308 and 310 can work together such that, from the perspective of the computing node 302 in the network 300, they appear to be a single switch 380. Therefore, even though the depicted network 300 includes multiple different optical path switches 308 and 310, all these optical path switches 308 and 310 can operate together, allowing interaction between the computing node 302 and the optical path switches 308 and 310 to occur as if the optical path switches 308 and 310 were a single network switch 380.
[0104] Figures 3A to 3C The communication path between the first computing node 302-1 and the Mth computing node 302-M is shown in more detail. Specifically, Figures 3A to 3C Various components in network 300 are shown, which support communication between the first computing node 302-1 and the Mth computing node 302-M.
[0105] First refer to Figure 3A To send data to the Mth compute node 302-M, the first compute node 302-1 can provide an electrical signal 324 (containing the data to be sent) to a transceiver 326. The transceiver 326 can convert the electrical signal 324 into an optical signal 328 and send the optical signal 328 to an optical path switch 308-1 via an optical communication channel 358. The optical signal 328 can be transmitted to an input port 312 of the optical path switch 308-1, and the optical signal 328 can have characteristics (e.g., wavelength) that cause the optical path switch 308-1 to switch the optical signal 328 to an appropriate output port. In this example, the optical path switch 308-1 can switch the optical signal 328 from the input port 312 to an output port 314, which is optically coupled to an optical path switch 310-1 in the second stage 306b of the network 300 via an optical communication channel 360.
[0106] Now for reference Figure 3BOptical signal 328 can be transmitted from output port 314 of optical path switch 308-1 to optical path switch 310-1 via optical communication channel 360. When optical signal 328 arrives at optical path switch 310-1, wavelength converter 366-1 can convert optical signal 328 into a different optical signal 340. The optical signal 340 output by wavelength converter 366-1 can have a different wavelength than the incoming optical signal 328. Specifically, optical signal 328 can be converted into optical signal 340 with a desired wavelength, which is used to enable optical path switch 310-1 to switch the optical signal to a desired output port, which in this example is output port 318 coupled to optical path switch 308-i (which is optically coupled to the Mth computing node 302-M). Then, optical signal 340 can be transmitted to input port 316 of optical path switch 310-1, and optical path switch 310 can switch optical signal 340 from input port 316 to output port 318. Optical signal 340 can be sent to optical switch 308-i via optical communication channel 362.
[0107] Now for reference Figure 3C Optical signal 340 can be transmitted from the output port 318 of optical path switch 310-1 to optical path switch 308-i via optical communication channel 362. When optical signal 340 arrives at optical path switch 308-i, wavelength converter 368-i can convert optical signal 340 into a different optical signal 370. The optical signal 370 output by wavelength converter 368-i can have a different wavelength than the incoming optical signal 340. Specifically, optical signal 340 can be converted into optical signal 370 with a desired wavelength to enable optical path switch 308-i to switch the optical signal to a desired output port, which in this example is the output port 322 coupled to the Mth computing node 302-M. Then, optical signal 370 can be transmitted to the input port 320 of optical path switch 308-i, and optical path switch 308-i can switch optical signal 370 from input port 320 to output port 322. Optical signal 370 can travel from the output port 322 of optical path switch 308-i to the Mth computing node 302-M via optical communication channel 364. When optical signal 370 arrives at the Mth computing node 302-M, transceiver 354 can convert optical signal 370 into electrical signal 356, and the electrical signal 356 can be transmitted to the Mth computing node 302-M.
[0108] Figures 1 to 3 The example shown is a two-level network. However, the techniques disclosed herein are not limited to just two network levels. This disclosure considers the use of N network levels, where the value of N can be any integer greater than or equal to 2.
[0109] Figure 4An example of wavelength converter 466 is illustrated. Wavelength converter 466 represents one possible implementation of wavelength converters 366 and 368 in network 300. In other words, Figure 3 Some or all of the wavelength converters 366 and 368 in the network 300 shown can be implemented similarly to wavelength converter 466. Figure 4 In the example shown, wavelength converter 466 is configured to perform optical-electric-optical (OEO) conversion.
[0110] Wavelength converter 466 may include a photodetector 486 configured to convert an input optical signal 484 into an electrical signal 488. In some embodiments, wavelength converter 466 may further include circuitry for performing one or more signal processing operations on the electrical signal 488. For example, in some embodiments, wavelength converter 466 may include an amplifier for amplifying the electrical signal 488. For simplicity and clarity, Figure 4 This additional circuit device is not shown in the image.
[0111] The wavelength converter 466 may also include a light source 490 that generates an optical signal 492. The light source 490 is tunable to multiple different wavelengths. In other words, the wavelength of the optical signal 492 output by the light source 490 can be changed. In some embodiments, the tunable light source 490 may be a laser.
[0112] The wavelength converter 466 may also include an optical modulator 494. The optical modulator 494 may be configured to modulate the electrical signal 488 output by the photodetector 486 onto the output signal generated by the tunable light source 490 to generate an output optical signal 496.
[0113] Figure 4 An input optical signal 484 with a first wavelength (l1) and an output optical signal 496 with a second wavelength (l2) are shown. The second wavelength (l2) may be different from the first wavelength (l1). In other words, the wavelength converter 466 can convert the input optical signal 484 into another optical signal with a different wavelength, namely the output optical signal 496. However, the second wavelength (l2) does not have to be different from the first wavelength (l1). In some cases, the second wavelength (l2) may be the same as the first wavelength (l1).
[0114] The wavelength of the output optical signal 496 depends on the wavelength of the optical signal 492 generated by the tunable light source 490. Figure 4A plurality of commands 498 are shown as inputs to a tunable light source 490. The commands 498 can affect the wavelength of the optical signal 492 generated by the tunable light source 490. In some embodiments, the commands 498 may be provided by a scheduler responsible for configuring line switches within the network to enable desired communication paths.
[0115] Figure 5 Another example of a wavelength converter 566 is illustrated. Figure 5 The wavelength converter 566 shown represents another possible implementation of wavelength converters 366 and 368 in network 300. In other words, Figure 3 Some or all of the wavelength converters 366 and 368 in the network 300 shown can be implemented similarly to wavelength converter 566. Figure 5 The wavelength converter 566 shown is in some respects similar to Figure 4 The wavelength converter 466 shown is different. As mentioned above, Figure 4 The wavelength converter 466 shown is configured to perform optical-to-electrical-to-optical (OEO) conversion as part of the wavelength conversion process. In contrast, Figure 5 The wavelength converter 566 shown is configured to perform wavelength conversion without performing OEO conversion.
[0116] A tunable light source 590 (e.g., a laser) can generate optical signals 592 tunable to multiple different wavelengths. The wavelength of the optical signals 592 generated by the tunable light source 590 can be affected by one or more commands 598 shown as inputs to the tunable light source 590. The commands 598(s) can be provided by a scheduler responsible for configuring line switches within the network to enable desired communication paths. Figure 5 In this embodiment, the tunable light source 590 is shown separately from the wavelength converter 566. However, in some embodiments, the tunable light source 590 may be included as part of the wavelength converter 566.
[0117] There are many different ways to configure the wavelength converter 566. In some embodiments, the wavelength converter 566 may include a semiconductor optical amplifier (SOA). The SOA may be configured to generate an output optical signal 596 based on an input optical signal 584 and an optical signal 592 generated by a tunable light source 590. More specifically, the SOA may be configured to generate the output optical signal 596 by converting the wavelength of the input optical signal 584 to the wavelength of the optical signal 592 generated by the tunable light source 590.
[0118] In some embodiments, wavelength converter 566 may include multiple optical arrays (SOAs) that operate together to perform wavelength conversion. In some embodiments, one or more SOAs may be used in combination with one or more other optical components to perform wavelength conversion. In some embodiments, input optical signal 584 may be directly injected into one or more stages of tunable light source 590 in conjunction with wavelength conversion.
[0119] As mentioned above, Figure 5 An input optical signal 584 with a first wavelength (l1) and an output optical signal 596 with a second wavelength (l2) are shown. The second wavelength (l2) may be different from or the same as the first wavelength (l1).
[0120] Figures 1 to 3 The example shown uses a Clos network topology. However, according to this disclosure, many other types of network topologies can be used. For example, in some embodiments, a Clos network topology can be used. Network topology. Figure 6 Examples Network topology. Based on... The network topology can include 2log2N-1 levels, each level including N / 2 2×2 switches, thus using a total of Nlog2N-N / 2 2×2 switches.
[0121] N=8 Examples of Network 600 Figure 6 As shown. Network 600 comprises 2log28-1 = 5 levels 606a to 606e, each level comprising N / 2 = 4 2×2 switches 608. Network 600 uses a total of Nlog2N-N / 2 = 20 2×2 switches 608. The three central levels 606b to 606d each comprise two smaller... Network. In the central 606c, each 2×2 switch 608 can be considered as a network. network.
[0122] In some embodiments, all switches 608 in network 600 may be implemented as circuit switches. Alternatively, in some embodiments, all switches 608 in network 600 may be implemented as optical switches. Still alternatively, in some embodiments, some switches 608 in network 600 may be implemented as circuit switches, while other switches 608 in network 600 may be implemented as optical switches.
[0123] Figure 7A and Figure 7BAn example of a system 700 in which the techniques of this disclosure can be utilized is shown. System 700 is a de-aggregation computing system comprising multiple computing nodes. In particular, system 700 is shown having multiple processing nodes 702 and multiple memory nodes 704.
[0124] In the depicted system 700, communication between various computing nodes (processing node 702 and memory node 704) can occur via optical communication. Therefore, system 700 includes multiple optical transceivers 709 coupled to the computing nodes. The optical transceivers 709 in... Figure 7A and Figure 7B The term is abbreviated as "OT". In some embodiments, communication between various computing nodes in system 700 may occur via free-space optical communication. Alternatively, in other embodiments, communication between various computing nodes in system 700 may occur via optical fiber.
[0125] System 700 also includes a switch 780 configured to interconnect multiple computing nodes. In some embodiments, the computing nodes may be interconnected to form a network structure. The switch 780 may be optically coupled to the computing nodes in system 700. Therefore, the switch 780 also includes multiple optical transceivers 707 coupled to the computing nodes.
[0126] In order to distinguish the optical transceiver coupled to the switch 780 from the optical transceiver coupled to the compute node, the optical transceiver coupled to the switch 780 may be referred to herein as switch optical transceiver 707, and the optical transceiver coupled to the compute node may be referred to herein as node optical transceiver 709.
[0127] In some embodiments, system 700 can be configured such that for each node optical transceiver 709, there is a corresponding switch optical transceiver 707 at switch 706, which is optically coupled to node optical transceiver 709. Optical communication transmitted by a particular node optical transceiver 709 can be received by the corresponding switch optical transceiver 707, and vice versa.
[0128] In some embodiments, switch 780 can be implemented as any of the switches 180, 280, and 380 previously described. Therefore, in some embodiments, switch 780 may include a plurality of line switches 708 and line switches 710. By interconnecting computing nodes, switch 780 forms a network of computing nodes. Line switches 708 and line switches 710 can be arranged in a hierarchical topology comprising N levels, where the value of N can be greater than or equal to 2. In embodiments where N is two, switch 780 may include a first plurality of line switches 708 forming a first level 706a of the network and a second plurality of line switches 706 forming a second level 706b of the network. In some embodiments, the line switches 708 in the first level 706a of the network and the line switches 710 in the second level 706b of the network can both be implemented as circuit switches (e.g., Figure 1 (The embodiments shown). In some embodiments, the line switch 708 in the first level 706a of the network can be implemented as an optical path switch, and the line switch 710 in the second level 706b of the network can be implemented as a circuit switch (e.g., ...). Figure 2 (The embodiment shown). In some embodiments, the line switch 708 in the first level 706a of the network and the line switch 710 in the second level 706b of the network can both be implemented as optical path switches (e.g., Figure 3 (Example shown).
[0129] Figure 7B A switch 780 with a scheduler 782 is shown. The scheduler 782 can be configured to configure line switches 708 and 710 to enable communication paths between computing nodes in system 700. The scheduler 782 can be implemented based on any scheduling mechanism discussed previously.
[0130] Switch 780 can be coupled to switch optical transceiver 707. In some embodiments, switch 780 can be electrically coupled to switch optical transceiver 707. In some embodiments, switch 780 can be optically coupled to switch optical transceiver 707. Figure 7B In the diagram, the switch optical transceiver 707 is shown as part of the switch 780. However, in some alternative embodiments, the switch optical transceiver 707 may be detached from the switch 780 (and still coupled to the switch 780).
[0131] As described above, switch 780 can be configured as a computing node in interconnect system 700. In other words, different computing nodes (e.g., processing node 702, memory node 704) can communicate with each other through switch 780.
[0132] For example, consider a scenario where a first processing node 702a sends a certain type of communication to a second processing node 702b. In some embodiments, a first node optical transceiver 709a electrically coupled to the first processing node 702a can generate a modulated beam of light, which includes information to be transmitted to the second processing node 702b. The first node optical transceiver 709a can transmit the modulated beam of light to a switch optical transceiver 709 corresponding to the first node optical transceiver 709a. Using any of the techniques disclosed herein, the switch 780 can receive an optical signal from the first processing node 702a and cause another optical signal carrying information to be transmitted to the second processing node 702b. The switch optical transceiver 709 corresponding to the second node optical transceiver 709b can transmit the optical signal carrying information to the second node optical transceiver 709b.
[0133] As described above, in some embodiments, switch 780 can interconnect computing nodes to form a network structure. The network structure formed by node optical transceivers 709, switch optical transceivers 707, and switch 780 enables all computing nodes to access each other. For example, all memory nodes 704 can be accessed by all processing nodes 702 via the network structure.
[0134] More specifically, in Figure 7A and Figure 7B In the illustrated system 700, each processing node 702 is electrically coupled to a memory node 704 via a direct electrical connection 712. The direct electrical connection 712 between the processing node 702 and the memory node 704 can be, for example, a wired connection. The processing node 702 can access the memory node 704 to which it is electrically coupled via the direct electrical connection 712. For example, a first processing node 702a can access the first memory node 704a via the direct electrical connection 712a between the first processing node 702a and the first memory node 704a. Similarly, a second processing node 702b can access the second memory node 704b via the direct electrical connection 712b between the second processing node 702b and the second memory node 704b.
[0135] However, in the depicted system 700, the processing node 702 is not electrically coupled to any of the memory nodes 704. In other words, there is no direct electrical connection (e.g., wired connection) between each processing node 702 and any of the memory nodes 704 in system 700. For example, the first processing node 702a cannot access the second memory node 704b via a direct electrical connection. Similarly, the second processing node 702b cannot access the first memory node 704a via a direct electrical connection.
[0136] Although there is no direct electrical connection between each processing node 702 and all memory nodes 704, the network structure formed by node optical transceivers 709, switch optical transceivers 707, and switches 780 allows all memory nodes 702 to access all memory nodes. For example, the first processing node 702a can access the second memory node 704b (and all other memory nodes 704 in system 700) via the network structure. Similarly, the second processing node 702b can access the first memory node 704a (and all other memory nodes 704 in system 700) via the network structure. Therefore, even if a processing node 702 is not electrically coupled to all memory nodes 704 in system 700, the processing node 702 is electrically or optically coupled to all memory nodes 704 in system 700.
[0137] Figure 7A and Figure 7B The system 700 shown is for illustrative purposes only, and the specific characteristics of system 700 should not be construed as limiting the scope of this disclosure. The techniques of this disclosure can be used in other systems having characteristics different from those in the depicted system 700.
[0138] For example, in the depicted system 700, a node optical transceiver 709 is coupled to each processing node 702. However, in some embodiments, more than one node optical transceiver 709 may be coupled to each processing node 702. Similarly, more than one switching optical transceiver 707 may be present corresponding to each processing node 702 (or other type of computing node).
[0139] As another example, only processing node 702 and memory node 704 are shown in the depicted system 700. However, in alternative embodiments, other types of computing nodes (e.g., storage nodes) may be used.
[0140] As another example, in the depicted system 700, each processing node 702 is electrically coupled (e.g., has a direct electrical connection 712) to only one memory node 704. However, in alternative embodiments, at least some processing nodes may be electrically coupled to more than one memory node and / or not electrically coupled to any single memory node.
[0141] As another example, the depicted system 700 is a de-aggregated computing system in which computing resources are separated into dedicated nodes (e.g., processing node 702, memory node 704). However, the scope of this disclosure is not limited to de-aggregated computing systems. The techniques for interconnecting computing nodes disclosed herein can be implemented in systems comprising multiple conventional servers.
[0142] In some embodiments, "circuit switch" can refer to any line switch implemented using electrical components. In some embodiments, "optical switch" can refer to any line switch implemented using optical components.
[0143] In some embodiments, a “network architecture” refers to a computer network architecture in which multiple computing systems or computing nodes are interconnected. In some embodiments, the computing systems or computing nodes in the network architecture may be interconnected using routers, switches, and other types of network components. In some embodiments, the computing systems or computing nodes in the network architecture may be interconnected in a manner that provides low latency and / or high bandwidth interconnection between various computing systems or computing nodes. In some embodiments, the computing systems or computing nodes in the network architecture may be interconnected using relatively few layers (e.g., two or three layers). This essentially flattens the network architecture, thereby reducing the distance between endpoints.
[0144] In some embodiments, if two components are electrically coupled, optically coupled, or mechanically coupled, they are "coupled".
[0145] In some embodiments, two components are “electrically coupled” if current can flow from one component to the other. In some embodiments, two electrically coupled components may be in direct contact with each other, allowing current to flow directly from one component to the other. However, this is not mandatory. In some embodiments, two electrically coupled components may not be in direct contact with each other. Any number of other conductive materials and components may be electrically disposed between the two electrically coupled components, as long as current can flow between them.
[0146] In some embodiments, if there is an optical path between the two optical components, the two optical components are "optically coupled". Therefore, in such an embodiment, if an optical transmission sent by the first component is received by the second optical component, the first optical component (e.g., node optical transceiver 509) can be considered optically coupled to the second optical component (e.g., switch optical transceiver 507).
[0147] The term "determine" (and its grammatical variations) encompasses a wide variety of actions, and therefore, "determine" can include calculation, estimation, processing, derivation, investigation, searching (e.g., looking in a table, database, or other data structure), ascertainment, etc. Furthermore, "determine" can include receiving (e.g., receiving information), accessing (e.g., accessing data in memory), etc. Additionally, "determine" can include solving, picking, selecting, establishing, etc.
[0148] The terms “comprising,” “including,” and “having” are intended to be inclusive and mean that other elements besides those listed may be present. Furthermore, it should be understood that references to “one embodiment” or “embodiment” in this disclosure are not intended to exclude the existence of additional embodiments that also include the described features. For example, where compatible, any element or feature described with respect to embodiments herein may be combined with any element or feature of any other embodiment described herein.
[0149] The described embodiments are intended to be illustrative rather than restrictive, and this disclosure may be embodied in forms other than those specifically described herein. Therefore, the scope of this disclosure is defined by the appended claims rather than by the foregoing description. Modifications within the meaning and equivalent scope of the claims should be included within its scope.
Claims
1. A system for interconnecting multiple computing nodes, comprising: Multiple optical path switches; Multiple circuit breakers; A first network level, the first network level including a first plurality of line switches selected from the plurality of optical path switches and the plurality of circuit switches, wherein each of the plurality of computing nodes is optically coupled to at least one of the first plurality of line switches. as well as The second network level includes a second plurality of line switches selected from the plurality of optical path switches and the plurality of circuit switches, wherein each of the first plurality of line switches is optically coupled to each of the second plurality of line switches.
2. The system according to claim 1, wherein: The first plurality of line switches include the plurality of optical path switches; and The second plurality of line switches includes the plurality of circuit switches.
3. The system according to claim 1, wherein: The first plurality of line switches include the plurality of circuit switches; and The second plurality of line switches includes the plurality of optical path switches.
4. The system of claim 1, wherein each of the plurality of optical path switches is configured to switch the input optical signal from an input port to an output port based on the optical characteristics of the input optical signal.
5. The system according to claim 1, wherein: The plurality of computing nodes includes a plurality of de-aggregation computing nodes; and The plurality of de-aggregated computing nodes include a pool of processing nodes and memory nodes.
6. The system according to claim 1, wherein: The multiple computing nodes are located in a single rack within the data center; and The multiple computing nodes are interconnected to form an in-rack network.
7. The system of claim 1 further includes a plurality of optical transceivers, wherein each of the first plurality of line switches is coupled to at least one optical transceiver.
8. The system of claim 1, wherein the optical communication between the plurality of computing nodes and the first plurality of line switches, and between the first plurality of line switches and the second plurality of line switches, occurs via free-space optical communication.
9. The system according to claim 1, further comprising: The first plurality of optical cables couple the plurality of computing nodes to the first plurality of line switches; as well as The second plurality of optical cables couple the first plurality of line switches to the second plurality of line switches.
10. The system of claim 1, further comprising a scheduler, the scheduler configuring the first plurality of line switches and the second plurality of line switches to enable communication paths between the plurality of computing nodes.
11. A system for interconnecting multiple computing nodes, comprising: Multiple node optical transceivers, wherein the multiple node optical transceivers are electrically coupled to at least some of the multiple computing nodes; as well as A switch, optically coupled to the plurality of node optical transceivers, the switch comprising: Multiple optical path switches; Multiple circuit breakers; A first network level, comprising a first plurality of line switches selected from the plurality of optical path switches and the plurality of circuit switches, wherein each of the plurality of computing nodes is optically coupled to at least one of the first plurality of line switches; and The second network level includes a second plurality of line switches selected from the plurality of optical path switches and the plurality of circuit switches, wherein each of the first plurality of line switches is optically coupled to each of the second plurality of line switches.
12. The system according to claim 11, wherein: The first plurality of line switches include the plurality of optical path switches; and The second plurality of line switches includes the plurality of circuit switches.
13. The system according to claim 11, wherein: The first plurality of line switches include the plurality of circuit switches; and The second plurality of line switches includes the plurality of optical path switches.
14. The system according to claim 11, wherein: The plurality of computing nodes includes a plurality of de-aggregation computing nodes; and The plurality of de-aggregated computing nodes include a pool of processing nodes and memory nodes.
15. The system according to claim 11, wherein: The switch also includes multiple switch optical transceivers; and Each of the first plurality of line switches is coupled to at least one switch optical transceiver.
16. A system for interconnecting multiple computing nodes to form a circuit-switched network, comprising: A first plurality of optical path switches forming the first level of the line-switching network, wherein each of the plurality of computing nodes is optically coupled to an optical path switch in the first plurality of optical path switches; Forming a second plurality of optical path switches in the second level of the line-switching network, each of the second plurality of optical path switches is optically coupled to each of the first plurality of optical path switches; and Multiple wavelength converters that couple the first plurality of optical path switches to the second plurality of optical path switches, each wavelength converter being configured to convert an input optical signal into an output optical signal having a desired wavelength.
17. The system of claim 16, wherein each wavelength converter comprises: A photodetector is configured to convert the input optical signal into an electrical signal; A light source that can be tuned to multiple different wavelengths; as well as An optical modulator is configured to modulate the electrical signal onto an output signal generated by the light source to produce the output optical signal.
18. The system of claim 16, wherein at least some of the plurality of wavelength converters are configured to perform wavelength conversion without performing opto-electro-optical conversion.
19. The system according to claim 16, wherein: The plurality of computing nodes includes a plurality of de-aggregated computing nodes located in racks within a data center; and The plurality of de-aggregated computing nodes include a pool of processing nodes and memory nodes.
20. The system of claim 16, wherein each of the first plurality of optical path switches and the second plurality of optical path switches: Includes multiple input ports and multiple output ports; and It is configured to switch the incoming optical signal from the input port to the output port based on the wavelength of the incoming optical signal.