Creation and management of routing table for PCI bus address based routing with integrated DID
Abstract
A method is provided for creating and managing tables for routing packets through an environment that includes multiple hosts and shared PCI switches and adapters. A Destination Identification (DID) field in the PBA is appended to a transaction packet dispatched through the PCI switches, wherein a particular DID is associated with a particular host or system image, and thus identifies the physical or virtual end point of its packet. In one embodiment, packets are routed through PCI switches in a distributed computer system comprising multiple root nodes, wherein each root node includes one or more hosts. The embodiment includes the step of creating a table or like data structure in a specified one of the switches. When a particular host of one of the root nodes becomes connected to the specified switch, a PCI Configuration Master (PCM), residing in one of the root nodes, is operated to enter a destination identifier or DID into the table. The DID is then appended as an address component, to packets directed through the specified switch from the particular host to one of the adapters. The destination identifier is also used to determine that a PCI packet, routed through the specified switch from one of the adapters, is intended for the particular root node.
Claims
exact text as granted — not AI-modified1 . In a distributed computer system comprising multiple root nodes, and further comprising one or more PCI switches and one or more PCI adapters, wherein each root node includes one or more hosts and one of said root nodes includes a PCI Configuration Master (PCM), a method for routing PCI transaction packets through said switches between respective hosts and adapters, said method comprising the steps of:
creating a table in at least a specified one of said switches; operating said PCM to enter a destination identifier, comprising a specified set of bits, into said table when a particular host of one of said root nodes becomes connected to said specified switch; appending said destination identifier as an address component to PCI packets directed through said specified switch from said particular host to one of said adapters; and using said destination identifier to determine that a PCI packet directed through said specified switch from one of said adapters is intended for said particular host.
2 . The method of claim 1 , wherein:
said step of entering said destination identifier is preceded by the step of determining that said specified switch supports use of said destination identifier.
3 . The method of claim 1 , wherein:
said specified switch sends a report to said PCM when an adapter becomes connected to said specified switch.
4 . The method of claim 3 , wherein:
in response to said report, said PCM configures said specified switch to establish an association between one or more of said hosts and said connected adapter, and thereafter respective entries in said table are used to route PCI packets between said connected adapter and said associated hosts.
5 . The method of claim 4 , wherein:
said specified switch comprises one of a plurality of substantially identical root switches; each root node comprises a host CPU set and a root complex connected thereto; and each of said root complexes is connected to one of said root switches, each of said root switches supporting use of said destination identifiers and having a table for receiving destination identifier entries.
6 . The method of claim 1 , wherein:
said distributed computer system has an associated PCI Bus Address space, wherein said Bus Address space includes a destination identification field, and a particular number in said destination identification field uniquely identifies a particular one of said hosts.
7 . The method of claim 6 , wherein:
said destination identification field comprises a selected number of the highest bits of said PCI Bus Address.
8 . The method of claim 5 , wherein:
PCI components connected below a selected one of said root switches are respectively represented by a number of component subtrees, and said subtrees are joined at said selected switch to form a single tree.
9 . The method of claim 5 , wherein:
each of said root switches uses a destination identifier to select an egress switch port for routing one of said PCI packets.
10 . The method of claim 5 , wherein:
said PCM can selectively modify, query and delete destination identifier entries in each of said root switch tables.
11 . In a distributed computer system comprising multiple root nodes, and further comprising one or more PCI switches and one or more PCI adapters, wherein each root node includes one or more hosts and one of said root nodes includes a PCI Configuration Master (PCM), a computer program product in a computer readable medium for routing PCI transaction packets through said switches between respective hosts and adapters, said computer program product comprising:
first instructions for creating a table in at least a specified one of said switches; second instructions for operating said PCM to enter a destination identifier, comprising a specified set of bits, into said table when a particular host of one of said root nodes becomes connected to said specified switch; third instructions for appending said destination identifier as an address component to PCI packets directed through said specified switch from said particular host to one of said adapters; and fourth instructions for using said destination identifier to determine that a PCI packet directed through said specified switch from one of said adapters is intended for said particular host.
12 . The computer program product of claim 11 , wherein:
said specified switch sends a report to said PCM when an adapter becomes connected to said specified switch; and in response to said report, said PCM configures said specified switch to establish an association between one or more of said hosts and said connected adapter, and thereafter respective entries in said table are used to route PCI packets between said connected adapter and said associated hosts.
13 . The computer program product of claim 12 , wherein:
said specified switch comprises one of a plurality of substantially identical root switches; each root node comprises a host CPU set and a root complex connected thereto; and each of said root complexes is connected to one of said root switches, each of said root switches supporting use of said destination identifiers and having a table for receiving destination identifier entries.
14 . The computer program product of claim 11 , wherein:
said distributed computer system has an associated PCI Bus Address space, wherein said Bus Address space includes a destination identification field, and a particular number in said destination identification field uniquely identifies a particular one of said hosts.
15 . The computer program product of claim 13 , wherein:
each of said root switches uses a destination identifier to select an egress switch port for routing one of said PCI packets.
16 . Apparatus for a distributed computing system comprising:
a plurality of root nodes, each root node including one or more hosts; one or more PCI adapter; one or more PCI switches operable to connect different root nodes to share the same adapter; data structure comprising a table in at least a specified one of said switches; and a PCI configuration component residing in one of said root nodes and operable to enter a destination identifier, comprising a specified set of bits, into said table when a particular host of one of said root nodes becomes connected to said specified switch, said destination identifier being appended as an address component to PCI packets directed through said specified switch from said particular host to one of said adapters, and said destination identifier being used to determine that a PCI packet directed through said specified switch from one of said adapters is intended for said particular host.
17 . The apparatus of claim 16 , wherein:
said specified switch sends a report to said PCM when an adapter becomes connected to said specified switch; and in response to said report, said PCM configures said specified switch to establish an association between one or more of said hosts and said connected adapter, and thereafter respective entries in said table are used to route PCI packets between said connected adapter and said associated hosts.
18 . The apparatus of claim 17 , wherein:
said specified switch comprises one of a plurality of substantially identical root switches; each root node comprises a host CPU set and a root complex connected thereto; and each of said root complexes is connected to one of said root switches, each of said root switches supporting use of said destination identifiers and having a table for receiving destination identifier entries.
19 . The apparatus of claim 16 , wherein:
said distributed computer system has an associated PCI Bus Address space, wherein said Bus Address space includes a destination identification field, and a particular number in said destination identification field uniquely identifies a particular one of said hosts.
20 . The apparatus of claim 18 , wherein:
each of said root switches uses a destination identifier to select an egress switch port for routing one of said PCI packets.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.