The present invention relates to the field of networks. More particularly, this invention relates to network design problems.
An interconnect fabric provides for communication among a set of nodes in a network. Communications originate within the network at a source node and terminate at a terminal node. Thus, a wide variety of networks may be viewed as a set of source nodes that communicate with a set of terminal nodes via an interconnect fabric. For example, a storage area network may be arranged as a set of computers as source nodes which are connected to a set of storage devices as terminal nodes via an interconnect fabric that includes communication links and devices such as hubs, routers, switches, etc. Devices such as hubs, routers, switches, etc., are hereinafter referred to as interconnect devices. Depending on the circumstances, a node may assume the role of source node with respect to some communications and of terminal node for other communications.
The communication requirements of an interconnect fabric may be characterized in terms of a set of flow requirements. A typical set of flow requirements specifies the required communication bandwidth from each source node to each terminal node. The design of an interconnect fabric usually involves selecting the appropriate arrangement of physical communication links and interconnect devices and related components that will meet the flow requirements.
Techniques for designing interconnect fabrics are being developed and refined. In order to evaluate the effectiveness of an interconnect fabric design technique, it may be desirable to apply the technique to a variety of design problems, for example, various sets of flow requirements, for which a feasible solution exists. The generation of such fabric design problems presents a barrier to the evaluation of design techniques. This is because design problems have largely been generated by manually. Accordingly, such techniques can be time-consuming, tedious and error-prone.
Generation techniques have been developed. These include NETGEN, described by Klingman, et al. in “NETGEN: A program for generating large-scale capacitated assignment, transportation, and minimum cost flow network problems,” Management Science, pp. 814-820 (1974) and GRIDGEN, described by Bertsekas in “Linear Network Optimization”, The MIT Press, Cambridge/London, 1991, appendix A.1.1. These techniques, however, are limited in their ability to specify network problem characteristics.
Therefore, what is needed is an improved technique for generating interconnect fabric requirements. It is to these ends that the present invention is directed.
A technique is disclosed for generating interconnect fabric requirements. The technique programmatically generates an interconnect design problem based on criteria specified by a user. Depending upon the input criteria, the invention may generate problems with greater flexibility than prior techniques.
In one aspect, a computer implemented method is provided for generating an interconnect fabric design problem. The problem includes requirements for a plurality of flows among a set of network nodes. A source node and a terminal node are selected from among the set of network nodes for a flow to be added to the requirements. A maximum capacity available at the selected source node and the selected terminal node is determined. The flow is generated having a capacity less than or equal to the lower of the maximum capacity of the source node and the terminal node.
In another aspect of the invention, a system is provided for generating an interconnect fabric design problem for communication between a set of nodes. A set of design information includes user-specified parameters for the design problem. In response to the design information, a fabric design problem generation tool generates a design for the interconnect fabric, including a set of flow requirements among the set of nodes. To add a flow to the flow requirements, a source node and a terminal node for a flow to be added may be selected from among the set of network nodes. A maximum capacity available at the selected source node and the selected terminal node may be determined. The flow may be generated having a capacity less than or equal to the lower of the maximum capacity of the source node and the terminal node.
Other features and advantages of the present invention will be apparent from the detailed description that follows.
The present invention is described with respect to particular exemplary embodiments thereof and reference is accordingly made to the drawings in which:
At step 102, a set of network nodes that are to be interconnected by the interconnect fabric design problem may be determined. The set of network nodes may, for example, be provided as a user-selected input to the method.
In one embodiment, the source nodes 10-16 are host computers and terminal nodes 20-26 are storage devices. Thus, the interconnect fabric design problem may be for storage area network.
In step 104, a source node for a new flow to be added to the flow requirements may be selected. For example, the source node may be randomly selected from among the set of source nodes 10-16. Alternately, the source node may be selected from the set according to a predetermined sequence. In some embodiments, the set of nodes may include only one possible source node. In which case, that node is selected in the step 104. It will be apparent that other techniques for selecting a source node from among the set of nodes may be utilized in the step 104. In the example of
In step 106, a terminal node for the new flow to be added to the flow requirements may be selected. As in selection of the source node in step 104, selection of the terminal node in step 106 may be performed randomly, according to a sequence, or in accordance with another selection technique. In the example of
In a preferred embodiment, the flow requirements for the design problem do not exceed the capacities of the source and terminal nodes. For example, each source and terminal node may have a specified maximum bandwidth capacity. Further, each source and terminal node may have capacity for a maximum number of ports, each of which has a maximum bandwidth capacity. If the design problem specifies flow requirements that exceed a capacity of a source or terminal node, it becomes infeasible for an interconnect fabric to be designed that will meet such flow requirements without also modifying the source and terminal nodes or allowing flows to be split across multiple ports. For some network design problems, splitting of flows across multiple ports may be desired, particularly to test design techniques that can accommodate such flows.
The present invention preferably avoids adding infeasible flows to the flow requirements by examining available capacities, taking into account existing flow requirements in the design problem and adding flows to the design problem that can be accommodated by the available capacities. Thus, in step 108, a maximum available capacity at the source node selected in the step 102 may be determined.
Since the source node 10 was selected the example of
In step 110, a maximum available capacity at the terminal node selected in the step 104 may be determined. Since the terminal node 24 was selected in the example, its maximum capacity may be determined in step 110. Assume that the terminal node 24 has three ports, each having a maximum bandwidth capacity of 100 Mb/s. Thus, assuming there are no existing flows for the terminal node 24 in the design problem, the maximum bandwidth capacity is also 100 Mb/s (or 300 Mb/s if splitting of flows is permitted).
In step 112, a maximum feasible bandwidth for the flow to be added between the selected source node and the terminal node may be set to the lower of the maximum capacities determined in the steps 108 and 110. This is to avoid adding a flow that may exceed the maximum available capacity of either the source node or the terminal node. In the example of
In step 114, the flow may be generated between the selected source and terminal nodes. The bandwidth requirement for the flow may be selected to be a value that is less than or equal to the maximum feasible value for flow, as determined in step 112. For example, the bandwidth requirement may be randomly selected to be a value between 1 Mb/s and the maximum value. In addition, if there is more than one port at either the source node or the terminal node that may accommodate the flow, then the flow may be assigned to one of those ports either randomly or in accordance with a specified order. If splitting of flows is permitted, portions of the flow are assigned to ports while avoiding exceeding capacities of the ports.
In the example, the bandwidth requirement for the flow may be randomly selected in step 110 to be 10 Mb/s, which is less than the maximum value of 100 Mb/s. The requirements for this flow, including its source and terminal nodes, port assignments and its bandwidth may then be added to the flow requirements for the design problem.
Additional flows may be added to the flow requirements for the design problem by repeating the steps 104-114 of the method 100.
In a next pass through the method 100, the source node 12 may be selected in the step 104 and the terminal node 24 may be selected in the step 106. Thus, a new flow to be added to the flow requirements of
Assume that each of the ports 38 and 40 of the node 12 has a maximum bandwidth capacity of 100 Mb/s; that flow 62 requires 40 Mb/s of capacity; and that each of the flows 64, 66 and 68 requires 20 Mb/s. Thus, the available capacity at port 38 may be determined to be 40 Mb/s (100 Mb/s minus 40 Mb/s for flow 62 and 20 Mb/s for flow 64) and the available capacity at port 40 may be determined to be 60 Mb/s (100 Mb/s minus 20 Mb/s for each of flows 66 and 68). Accordingly, the maximum available capacity at the source node 12 may be determined in step 108 to be 60 Mb/s (at port 40).
As before, assume that each of the ports 32, 34 and 36 of terminal node 24 has a maximum bandwidth capacity of 100 Mb/s. Assume also that flow 60 requires 10 Mb/s of capacity and flow 74 requires 30 Mb/s of capacity. Thus, the available capacity at port 32 may be determined to be 60 Mb/s (100 Mb/s minus 10 Mb/s for flow 60 and 30 Mb/s for flow 74). Assume also that flow 70 requires 10 Mb/s of capacity. Thus, the available capacity at port 34 may be determined to be 70 Mb/s (100 Mb/s minus 20 Mb/s for flow 66 and 10 Mb/s for flow 70). And, assume that flow 72 requires 80 Mb/s of capacity. Thus, the available capacity at port 36 may be determined to be 20 Mb/s. Accordingly, the maximum available capacity at the terminal node 24 may be determined in step 110 to be 70 Mb/s (at port 34).
In step 112, the maximum requirement for the flow to be added between the source node 12 and terminal node 24 may be set to lesser of these maximum values found in steps 108 and 110. In the example, the available capacity of 60 Mb/s at the port 40 is less than the available capacity of 70 Mb/s at the port 34. Accordingly, the maximum requirement may be set to 60 Mb/s in the step 112.
In step 114, the flow may be generated between the source node 12 and the terminal node 24. The bandwidth requirement for the flow may be selected to be a value that at least 1 Mb/s and less than or equal to the maximum feasible value for flow of 60 Mb/s, as determined in step 112. For example, the bandwidth requirement may be randomly selected to be 25 Mb/s. Because both ports 38 and 40 at the source node 12 may accommodate the flow, the flow may be assigned to the first port (i.e. the leftmost port), which in
The method 100 of
Once the stopping condition is reached, the design problem includes a set of flow requirements that corresponds to the set of nodes.
Then, using the design problem formed by the method 100, a network designed technique may be applied to the problem.
In accordance with another aspect of the present invention, an interconnect fabric design problem may be formed having clusters of nodes. A cluster of nodes is a set of nodes which primarily or solely communicate with each other. In addition, an interconnect fabric design problem may be formed having globally connected nodes. A globally-connected node is one that communicates with nodes of more that one cluster.
In step 202, source and terminal nodes for an interconnect fabric design problem may be specified. Then, in step 204, the source and terminal nodes may be grouped according to clusters. In addition, nodes that are to be globally-connected may be identified.
The example of
Returning to
In one embodiment, pairs of a source node and a terminal node may be selected in steps 104-106 according to a sequence in which a first source node of the cluster is selected and, then, flows, if any, are formed between the selected source node and the terminal nodes of the cluster in accordance with steps 108-114. Then, a next source node is selected in sequence and flows, if any, are formed between that source node and the terminal nodes of the cluster. Once all of the source nodes of the cluster have been selected and appropriate flows formed, then the terminal nodes of the cluster may be selected in sequence. While forming flows for terminal nodes, a sufficient number of flows for a terminal node may be found to have already been formed while forming flows for the source nodes. In which case, such a terminal node may be skipped.
In the example, a first pass through the step 206 may result in generation of the flow requirements 80 among the nodes of the cluster 250, as explained above in reference to the method 100 of
In a step 208, flows may be generated for each globally-connected element. The method 100 may be used in step 208 for generating these flows. In one embodiment, the flow requirements may be specified to include flows between a globally-connected element and only some of the other source nodes and/or terminal nodes in the design problem. Thus, if the globally-connected node is a source node, then a terminal node for a flow to be added may be selected in step 106. The terminal node may be a specified one of the existing nodes in the design problem or may be identified randomly from among the existing nodes. Similarly, if the globally-connected node is a terminal node, a source node for the flow to be added may be selected in step 104.
In other embodiments, however, the design problem may be specified to include at least one flow between a globally-connected element and each source node and/or each terminal node in the design problem. Thus, in the example, the flow requirements 274 and 276 for the globally-connected node 270 may include a flow between the globally-connected node 270 and each of the source nodes 10-16 and 256-260. Thus, for each pass through the method 100 of
In a next pass through the step 208, flow requirements 278 and 280 may be generated for the globally-connected node 272. For example, for each pass through the method 100 in step 208 for the globally-connected node 272, the terminal nodes 20-26 and 262-266 may be selected in step 208 according to a sequence until at least one flow has been formed between each terminal node 20-26 and 262-266 and the globally-connected element 272. Thus, the step 208 may be repeated for each globally-connected element in the design problem.
Where a globally-connected node communicates with a significant number of other nodes in the design problem, it may be desired to generate its flows prior to generating flows within the clusters to ensure that the nodes within the clusters will have sufficient capacities to accept the flows for globally-connected devices. Accordingly, the sequence of steps of the method 200 may be altered, depending upon the circumstances.
In step 210, additional flows may be added to the design problem. In one embodiment, flows may be added to each cluster in a pseudo-random fashion. By pseudo-random, what is meant is that computer-generated numbers may follow an apparently random pattern based on a seed value that controls a probability distribution of the generated numbers. For example, a minimum number of flows per node or per cluster may be specified and a maximum number of flows may be specified. Flows may be added such that the total randomly falls somewhere between the maximum and minimum numbers. Further, flows may be added between clusters. For example, a specified minimum and maximum number of source nodes in the design problem may have flows connected to a terminal node of another cluster.
Flows may be added in step 210 so that the number of flows in the resulting design problem falls somewhere between the minimum and maximum numbers. A specified probability and random number generator may be used to determine exactly how many flows are added. If the specified probability is low, then the number of flows in resulting design problem will be near the minimum, whereas, if the specified probability is high, then the number of flows in the resulting design problem will be near the maximum. Thus, the probability will generally control the density of flows (i.e. the number of flows per cluster).
The possible range of numbers of flows in the resulting design problem that are added in step 210 can be controlled by selecting the minimum and maximum numbers of flows. If there is wide difference, then the number of flows in the resulting design problem will be more variable, meaning that over a large number of repetitions of the method, the variability in the number of flows assigned would be higher. If there is narrow difference, then the number of flows in the resulting design problem will be less variable. In one embodiment, the minimum and maximum numbers may be set to the same level.
For example, for each cluster, a maximum number of additional flows that may be added to a cluster may be computed as a difference between a specified maximum number of flows for the cluster and the number of flows already in the cluster. More particularly, a maximum number of flows per source node (or per terminal node) in the cluster may be specified. This number may then be multiplied by the number of source nodes (or terminal nodes) in the cluster to determine the maximum number of flows for the cluster. Then, the number of existing flows in the cluster (as a result of adding flows in steps 206 and 208) may be subtracted from the product to determine the maximum number that may be added in step 210.
If the maximum number of flows that may be added is zero, then no additional flows are added in step 210. However, if the result is one or more, then the method 100 of
The list of hosts and devices 306 may specify the source nodes and terminal nodes which are to be interconnected by flow requirements of the interconnect fabric design problem 302. This list may also identify source and terminal nodes that are to be globally-connected. This list 306 may be specified by a user and may be obtained in step 102 of
The set of user-specified parameters 308 may include, for example, a number of clusters to be formed (e.g., in step 204 of
The user specified parameters 308 may also specify a desired level of port saturation. For example, determining capacity available at a node, as in steps 108 or 110, may depend on port saturation at the node and on unused capacity at each port of the node. Also, a user may specify a percentage of port capacities that may be used. In the examples above, the maximum bandwidth capacity of a port (e.g., port 38 of source node 12) was assumed to be 100 Mb/s. This capacity was then used to determine that maximum bandwidth of a flow that was feasible to add to the flow requirements. In this case, the percentage of port capacity that may be used may be assumed to be one hundred percent (100%). In other embodiments, a different percentage of port capacity may be specified for use. If the specified percentage was assumed to be 80%, in the example, then a flow would be feasible to add to the flow requirements only if the resulting flow requirements for that port remained less than or equal to 80 Mb/s.
The user-specified parameters 308 may further include a seed for a random number generator. For example, the random number generator may be implemented by the generation tool 300 to randomly select nodes between which a flow is to be added to the requirements (e.g., step 104 or 106 of
The device properties data 310 may specify, for example, a bandwidth capacity of each source node and terminal node, a number of ports for each and the bandwidth capacities of the ports.
Design problem 302 generated by the interconnect problem generation tool 300 may include the flow requirements generated in accordance with the present invention.
The foregoing detailed description of the present invention is provided for the purposes of illustration and is not intended to be exhaustive or to limit the invention to the precise embodiment disclosed. Accordingly, the scope of the present invention is defined by the appended claims.
Number | Name | Date | Kind |
---|---|---|---|
4920487 | Baffes | Apr 1990 | A |
5107489 | Brown et al. | Apr 1992 | A |
5113496 | McCalley et al. | May 1992 | A |
5138657 | Colton et al. | Aug 1992 | A |
5245609 | Ofek et al. | Sep 1993 | A |
5307449 | Keiley et al. | Apr 1994 | A |
5329619 | Pagé et al. | Jul 1994 | A |
5426674 | Nemirovsky et al. | Jun 1995 | A |
5524212 | Somani et al. | Jun 1996 | A |
5581689 | Slominski et al. | Dec 1996 | A |
5598532 | Liron | Jan 1997 | A |
5634004 | Gopinath et al. | May 1997 | A |
5634011 | Auerbach et al. | May 1997 | A |
5649105 | Aldred et al. | Jul 1997 | A |
5651005 | Kwok et al. | Jul 1997 | A |
5793362 | Matthews et al. | Aug 1998 | A |
5805578 | Stirpe et al. | Sep 1998 | A |
5815402 | Taylor et al. | Sep 1998 | A |
5831996 | Abramovici et al. | Nov 1998 | A |
5835498 | Kim et al. | Nov 1998 | A |
5838919 | Schwaller et al. | Nov 1998 | A |
5857180 | Hallmark et al. | Jan 1999 | A |
5878232 | Marimuthu | Mar 1999 | A |
5970232 | Passint et al. | Oct 1999 | A |
5987517 | Firth et al. | Nov 1999 | A |
6003037 | Kassabgi et al. | Dec 1999 | A |
6031984 | Walser | Feb 2000 | A |
6038219 | Mawhinney et al. | Mar 2000 | A |
6047199 | DeMarco | Apr 2000 | A |
6052360 | Rogers | Apr 2000 | A |
6108782 | Fletcher et al. | Aug 2000 | A |
6141355 | Palmer et al. | Oct 2000 | A |
6148000 | Feldman et al. | Nov 2000 | A |
6157645 | Shobatake | Dec 2000 | A |
6195355 | Demizu | Feb 2001 | B1 |
6209033 | Datta et al. | Mar 2001 | B1 |
6212568 | Miller et al. | Apr 2001 | B1 |
6253339 | Tse et al. | Jun 2001 | B1 |
6331905 | Ellinas et al. | Dec 2001 | B1 |
6345048 | Allen et al. | Feb 2002 | B1 |
6363334 | Andrews et al. | Mar 2002 | B1 |
6418481 | Mancusi et al. | Jul 2002 | B1 |
6442584 | Kolli et al. | Aug 2002 | B1 |
6452924 | Golden et al. | Sep 2002 | B1 |
6526420 | Borowsky et al. | Feb 2003 | B2 |
6539027 | Cambron | Mar 2003 | B1 |
6539531 | Miller et al. | Mar 2003 | B2 |
6557169 | Erpeldinger | Apr 2003 | B1 |
6570850 | Gutierrez et al. | May 2003 | B1 |
6594701 | Forin | Jul 2003 | B1 |
6598080 | Nagami et al. | Jul 2003 | B1 |
6603769 | Thubert et al. | Aug 2003 | B1 |
6611872 | McCanne | Aug 2003 | B1 |
6614796 | Black et al. | Sep 2003 | B1 |
6625777 | Levin et al. | Sep 2003 | B1 |
6628649 | Raj et al. | Sep 2003 | B1 |
6633909 | Barrett et al. | Oct 2003 | B1 |
6650639 | Doherty et al. | Nov 2003 | B2 |
6668308 | Barroso et al. | Dec 2003 | B2 |
6675328 | Krishnarnachari et al. | Jan 2004 | B1 |
6687222 | Albert et al. | Feb 2004 | B1 |
6694361 | Shah et al. | Feb 2004 | B1 |
6697334 | Klincewicz et al. | Feb 2004 | B1 |
6697369 | Dziong et al. | Feb 2004 | B1 |
6697854 | Glassen et al. | Feb 2004 | B1 |
6701327 | Jones et al. | Mar 2004 | B1 |
6724757 | Zadikian et al. | Apr 2004 | B1 |
6744767 | Chiu et al. | Jun 2004 | B1 |
6757731 | Barnes et al. | Jun 2004 | B1 |
6766381 | Barker et al. | Jul 2004 | B1 |
6778496 | Meempat et al. | Aug 2004 | B1 |
6804245 | Mitchem et al. | Oct 2004 | B2 |
6857027 | Lindeborg et al. | Feb 2005 | B1 |
20020083159 | Ward et al. | Jun 2002 | A1 |
20020091804 | Ward et al. | Jul 2002 | A1 |
20020091845 | Ward et al. | Jul 2002 | A1 |
20020120770 | Fukami et al. | Aug 2002 | A1 |
20020156828 | Ishizaki et al. | Oct 2002 | A1 |
20020188732 | Buckman et al. | Dec 2002 | A1 |
20030065758 | O'Sullivan et al. | Apr 2003 | A1 |
20030145294 | Ward et al. | Jul 2003 | A1 |
20050021583 | Andrzejak et al. | Jan 2005 | A1 |
20050021831 | Andrzejak et al. | Jan 2005 | A1 |
20050033844 | Andrzejak et al. | Feb 2005 | A1 |
Number | Date | Country |
---|---|---|
WO-9617458 | Jun 1996 | WO |
Entry |
---|
Zbigniew Dziong, Marek Juda, Lorne Mason; A Framework for Bandwidth Management in ATM Networks—Aggregate Equivalent Bandwidth Estimation Approach; IEEE?ACM Transactions on Networking, 1997; IEEE Press; vol. 5 Issue 1 pp. 134-147. |
Shahoumian et al. “Storage Area Network Fabric Design”. Nov. 8, 2000. pp. 1-8. |
Anil Kamath et al. “Routing and Admission Control in General Topology Network with Poisson Arrivals”. Society for Industrial and Applied Mathematics, 1996. pp. 269-278. |
Julie Ward Drew et al., U.S. Appl. No. 10/290,760, filed Nov. 8, 2002. |
Julie Ward Drew, U.S. Appl. No. 10/290,643, filed Nov. 8, 2002. |
Julie Ward Drew et al., U.S. Appl. No. 10/845,855, filed May 13, 2004. |
Mathew Andrews et al., Integrated Scheduling of Unicast and Multicast Traffic in an Input-Queued Switch, 1999. <http://cm.bell-labs.com/cm/ms/who/andrews/infocom99switch.ps>. |
Viraphol Chaiyakul, Assignment Decision Diagram for High-Level Synthesis, 1992. |
Andre Dehon, Notes on Coupling Processors with Reconfigurable Logic, MIT Transit Project, Transit Note #118, 1995. |
Cathy Fulton et al., Impact Analysis of Packet-Level Scheduling on an ATM Shared-Memory Switch, Infocom, vol. 3 pp. 947-954, 1998, IEEE, New York, NY. |
Hiroshi Inose, An Introduction to Digital Integrated Communication Systems, pp. 87-89, 1979, Peter Peregrinus Ltd., Stevenage, United Kingdom. |
A. Richard Newton, Interface-Based Design; Introduction, University of California at Berkeley, Apr. 1999. |
Derek C. W. Pao, A Congestion Control Algorithm for Multipoint-to-Multipoint ABR Service in ATM Network, Proceedings of the IEEE Conference on High Performance Switching and Routing, pp. 167-175, Jun. 26, 2000, IEEE Press, New York, NY. |
Rainer Schoenen et al., Weighted Arbitration Algorithms with Priorities for Input-Queued Switches with 100% Thoughput, 1999, <http://www.iss.rwth-aachen.de/Projekte/Theo/papers/Schoenen99bssw.ps.gz>. |
Oryal Tanir et al., Structural Reuse in the Design of ATM Switch Fabrics, 1997. |
I. Widjaja et al., Performance Issues in VC-Merge Capable ATM LSRs, RFC 2682, Sep. 1999, The Internet Society, Reston, VA. |
Julie Ward, U.S. Appl. No. 09/707,227, filed Nov. 6, 2000. |
Julie Ward et al., Storage Area Network (SAN) Fabric Design, PowerPoint presentation given at Berkeley, IEOR Department Seminar, Berkeley CA, Oct. 8, 2001. |
Julie Ward et al., Storage Area Network (SAN) Fabric Design, PowerPoint presentation given at the INFORMS International Conference, Maui HI, Jun. 19, 2001. |
Julie Ward et al., Appia: Automatic Storage Area Network Fabric Design, Conference on File and Storage Technologies (FAST'02), pp. 203-217, Jan. 28, 2002, Usenix, Berkeley, CA. |
Staffan Bo Strand, Storage Area Networks and SANTK, Thesis, Dec. 2001, University of Minnesota, Minneapolis, MN. |
Matthew T. O'Keefe et al., Designing Fibre Channel Storage Area Networks, Feb. 2001. <http://www.borg.umn.edu/fc/papers/SANTK.pdf>. |
Robert E. Bixby, Solving Real-World Linear Programs: A Decade and More of Progress, Jan. 2002. |
Ravindra K. Ahuja et al., Network Flows: Theory, Algorithms, and Applications, pp. 4-9, 649-686, 1993, Prentice-Hall, Upper Saddle River, NJ. |
Christodoulos A. Floudas et al., Quadratic Optimization, 1995. |
Parameswaran Ramanathan et al., Resource Placement with Multiple Adjacency Constraints in k-ary n-Cubes, 1995. |
Staffan Strand, Automatic Generation of Core/Edge Topology SANs Using SANTK, May 23, 2002. |
Joachim P. Walser, Solving Linear Pseudo-Boolean Constraint Problems with Local Search, 1997, American Association for Artificial Intelligence, Menlo Park, CA. |
Julie Ward et al., Storage Area Network Fabric Design, PowerPoint presentation given at the Math Sciences Research Institute for Combinatorial Design, Berkeley CA, Nov. 8, 2000. |
Klingman, et al. “NETGEN: A program for generating largescale capacitated assignment, transporation, and minimum cost flow network problems,” Mangement Science, p. 814-821(1974). |
Bertsekas, Dimitri P. “Linear Network Optimization,” The MIT Press, Cambridge/London, 1991, Appendix A.1.1, pp. 253-260. |
Number | Date | Country | |
---|---|---|---|
20030144822 A1 | Jul 2003 | US |