Claims
- 1. A router for connecting Infiniband (IB) subnets, the router comprising:
multiple port interface circuits each configured to connect to an external subnet to exchange IB packets with that subnet; and an internal IB subnet connected to each of the multiple port interface circuits and configured to transport IB packets between the multiple port interface circuits, wherein the internal IB subnet directs each IB packet based on contents of said packet's local route header (LRH).
- 2. The router of claim 1, wherein each port interface circuit determines a new LRH for received IB packets having a global route header (GRE), wherein the new LRH for IB packets received by the port interface circuit from an external subnet includes a destination local identifier (DLID) value that identifies another port interface circuit in the router, and wherein the new LRH for IB packets received by the port interface circuit from the internal subnet includes a DLID value that identifies an end node or router in the external subnet to which the port interface circuit is attached.
- 3. The router of claim 2, wherein the internal subnet comprises an IB switch.
- 4. The router of claim 2, wherein the internal subnet comprises a network of IB switches.
- 5. A router that comprises:
multiple port interface circuits, each corresponding to a router port; and an internal subnet that couples the multiple port interface circuits together.
- 6. The router of claim 5, wherein the internal subnet directs IB packets between port interface circuits based at least in part on DLID values in the IB packets.
- 7. The router of claim 5, wherein each port interface circuit determines a new LRH for packets received by the port interface circuit from an external subnet attached to the port interface circuit, wherein the internal subnet then transports said packets to other port interface circuits in the router.
- 8. The router of claim 7, wherein each port interface circuit determines a new LRH for packets having a GRH and received by the port interface circuit from the internal subnet, wherein the revised packets are then provided to the external subnet attached to the port interface circuit.
- 9. The router of claim 8, wherein the port interface circuit determines a DLID value for the new LRH based on a destination global identifier (DGID) value in the packet, and wherein the port interface circuit sets a source local identifier (SLID) value for the new LRH to identify the port interface circuit as a source of the packet.
- 10. The router of claim 9, wherein the port interface circuit determines a DLID value on a combination of DGID value, Flow Label value, and TClass value in the packet.
- 11. The router of claim 8, wherein the port interface circuit determines a DLID value for the new LRH based on an existing DLID value in the packet, and wherein the port interface circuit sets a SLID value for the new LRH to identify the port interface circuit as a source of the packet.
- 12. The router of claim 5, wherein the port interface circuits each comprise:
two IB link controllers each configured to send and receive IB packets over an IB link; a crossbar switch; and two router logic units coupled to the IB link controllers by the crossbar switch, wherein the router logic units are configured to receive IB packets from the IB link controllers, to process the IB packets to determine new local route headers for the IB packets, and to direct the processed packets to an appropriate IB link controller.
- 13. The router of claim 12, wherein each router logic unit determines a destination local identifier (DLID) value for each new local route header by performing a table lookup with a destination global identifier (DGID) from the packet.
- 14. The router of claim 13, wherein the DLID value is further determined based on a TClass value from the packet and a Flow Label value from the packet.
- 15. The router of claim 13, wherein the router logic unit sets a source local identifier (SLID) value for each new local route header to a value associated with said appropriate IB link controller.
- 16. A port interface circuit suitable for use in an IB router, the circuit comprising:
two IB link controllers each configured to send and receive IB packets over an IB link; a crossbar switch; and two router logic units coupled to the IB link controllers by the crossbar switch, wherein the router logic units are configured to receive IB packets from the IB link controllers, to process the IB packets to determine new local route headers for the IB packets, and to direct the processed packets to an appropriate IB link controller.
- 17. The port interface circuit of claim 16, wherein each router logic unit determines a destination local identifier (DLID) value for each new local route header by performing a table lookup with a destination global identifier (DGID) from the packet.
- 18. The port interface circuit of claim 17, wherein the DLID value is further determined based on a TClass value from the packet and a Flow Label value from the packet.
- 19. The port interface circuit of claim 17, wherein the router logic unit sets a source local identifier (SLID) value for each new local route header to a value associated with said appropriate IB link controller.
- 20. A method of routing Infiniband packets within a router, the method comprising:
receiving packets that enter a router port into a first port interface circuit; processing the packets to determine a first new local route header for an internal subnet; routing the packets with the first new local route header through the internal subnet to a second port interface circuit; processing the packets to determine a second new local route header for an external subnet; and transmitting the packets with the second new local route header through a second router port corresponding to the second port interface circuit.
- 21. The method of claim 20, wherein the internal subnet directs IB packets between port interface circuits based at least in part on DLID values in the IB packets.
- 22. The method of claim 21, wherein the first port interface circuit determines a DLID value for the first new local route header based on a destination global identifier (DGID) value in the packet, and wherein the port interface circuit sets a source local identifier (SLID) value for the first new local route header to identify the first port interface circuit as a source of the packet.
- 23. The method of claim 22, wherein the first port interface circuit determines a DLID value on a combination of DGID value, Flow Label value, and TClass value in the packet.
- 24. The method of claim 21, wherein the first port interface circuit determines a DLID value for the first new local route header based on an existing DLID value in the packet, and wherein the first port interface circuit sets a SLID value for the first new local route header to identify the first port interface circuit as a source of the packet.
- 25. A network that comprises:
one or more routers; and two or more external subnets interconnected by the one or more routers, wherein each external subnet includes one or more end nodes, wherein at least one of the routers includes:
multiple port interface circuits each configured to connect to an external subnet to exchange IB packets with that subnet; and an internal IB subnet connected to each of the multiple port interface circuits and configured to transport IB packets between the multiple port interface circuits, wherein the internal IB subnet directs each IB packet based on contents of said packet's local route header (LRH).
- 26. The network of claim 25, wherein each port interface circuit determines a new LRH for received IB packets having a global route header (GRH), wherein the new LRH for IB packets received by the port interface circuit from an external subnet includes a destination local identifier (DLID) value that identifies another port interface circuit in the router, and wherein the new LRH for IB packets received by the port interface circuit from the internal subnet includes a DLID value that identifies an end node or router in the external subnet to which the port interface circuit is attached.
- 27. The network of claim 26, wherein the internal subnet comprises an IB switch.
- 28. The network of claim 26, wherein the internal subnet comprises a network of IB switches.
- 29. The network of claim 25, wherein the port interface circuits each comprise:
two IB link controllers each configured to send and receive IB packets over an IB link; a crossbar switch; and two router logic units coupled to the IB link controllers by the crossbar switch, wherein the router logic units are configured to receive IB packets from the IB link controllers, to process the IB packets to determine new local route headers for the IB packets, and to direct the processed packets to an appropriate IB link controller.
- 30. The network of claim 29, wherein each router logic unit determines a destination local identifier (DLID) value for each new local route header by performing a table lookup with a destination global identifier (DGID) from the packet.
- 31. The network of claim 30, wherein the router logic unit sets a source local identifier (SLID) value for each new local route header to a value associated with said appropriate IB link controller.
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] The present application relates to co-pending U.S. patent application Nos. ______ and ______ (Atty. Dkt. Nos. 2120-00500, 2120-00600), which are filed concurrently herewith.