Bridging mechanism for peer-to-peer communication
First Claim
Patent Images
1. A method comprising:
- determining, by a computer system in a first domain, that a peer-to-peer connection is to be made between the first domain and a second domain alien to the first domain, wherein the first domain is not yet connected to the second domain;
sending, by the computer system, a request to the second domain for a first set of domain numbers, the first set having a size equal to one more than a number N1 of alien domains currently connected to the first domain, the number N1 of alien domains not including the second domain;
receiving, by the computer system, the first set of domain numbers from the second domain;
associating, by the computer system, a domain number in the first set of domain numbers with a domain number stored in a local list of domain numbers, the local list of domain numbers being specific to the first domain;
receiving, by the computer system, a request from the second domain for a second set of domain numbers, the second set having a size equal to one more than a number N2 of alien domains currently connected to the second domain, the number N2 of alien domains not including the first domain;
generating, by the computer system, the second set of domain number from a pool of available domain numbers; and
sending, by the computer system, the second set of domain numbers to the second domain;
wherein each domain number in the first and second sets of domain numbers identifies a Peripheral Component Interconnect Express (PCIe) hierarchy with a single PCIe root element.
1 Assignment
0 Petitions
Accused Products
Abstract
A high-speed optical interface for connecting computers to external I/O devices allows a number of native I/O formats to be encapsulated into PCIe Vendor Defined Messages (“VDMs”) for transfer over a single physical medium, preferably optical, and is thus referred to as the converged I/O (“CIO”) interface. Standard PCIe bridges are modified to support peer-to-peer communications, allowing greater exploitation of the capabilities of PCIe.
109 Citations
20 Claims
-
1. A method comprising:
-
determining, by a computer system in a first domain, that a peer-to-peer connection is to be made between the first domain and a second domain alien to the first domain, wherein the first domain is not yet connected to the second domain; sending, by the computer system, a request to the second domain for a first set of domain numbers, the first set having a size equal to one more than a number N1 of alien domains currently connected to the first domain, the number N1 of alien domains not including the second domain; receiving, by the computer system, the first set of domain numbers from the second domain; associating, by the computer system, a domain number in the first set of domain numbers with a domain number stored in a local list of domain numbers, the local list of domain numbers being specific to the first domain; receiving, by the computer system, a request from the second domain for a second set of domain numbers, the second set having a size equal to one more than a number N2 of alien domains currently connected to the second domain, the number N2 of alien domains not including the first domain; generating, by the computer system, the second set of domain number from a pool of available domain numbers; and sending, by the computer system, the second set of domain numbers to the second domain; wherein each domain number in the first and second sets of domain numbers identifies a Peripheral Component Interconnect Express (PCIe) hierarchy with a single PCIe root element. - View Dependent Claims (2, 3, 4, 5, 6, 8)
-
-
7. A method comprising:
-
storing, by a computer system in a first domain, a set of virtual domain numbers local to the first domain and corresponding to a first set of alien domains directly connected to the first domain and a second set of alien domains connected to the first set of alien domains; receiving, by the computer system on a port of a router in the first domain, a message from an alien domain in the first or second sets of alien domains, the message specifying an originating domain number and a target domain number; translating, by the computer system, the originating domain number and the target domain number using the set of virtual domain numbers, wherein the translated originating domain number is relative to a domain receiving the message and the translated target domain number is relative to domain sending the translated message; and forwarding, by the computer system, the translated message to a destination other than the alien domain in the first or second sets of alien domains from which the message was received, wherein each domain number is the set of virtual domain numbers identifies a Peripheral Component Interconnect Express (PCIe) hierarchy with a single PCIe root element. - View Dependent Claims (9, 10, 11)
-
-
12. A computer system configured to operate in a first domain, the computer system comprising:
a hardware processor configured to; determine that a peer-to-peer connection is to be made between the first domain and a second domain alien to the first domain, wherein the first domain is not yet connected to the second domain; send a request to the second domain for a first set of domain numbers, the first set having a size equal to one more than a number N1 of alien domains currently connected to the first domain, the number N1 of alien domains not including the second domain; receive the first set of domain numbers from the second domain; associate a domain number in the first set of domain numbers with a domain number stored in a local list of domain numbers, the local list of domain numbers being specific to the first domain; receive a request from the second domain for a second set of domain numbers, the second set having a size equal to one more than a number N2 of alien domains currently connected to the second domain, the number N2 of alien domains not including the first domain; generate the second set of domain numbers from a pool of available domain numbers; and send the second set of domain numbers to the second domain, wherein each domain number in the first and second sets of domain numbers identifies a Peripheral Component Interconnect Express (PCIe) hierarchy with a single PCIe root element. - View Dependent Claims (13, 14, 15, 16)
-
17. A computer system configured to operate in a first domain, the computer system comprising:
-
a storage device configured to store a set of virtual domain numbers local to the first domain and corresponding to a first set of alien domains directly connected to the first domain and a second set of alien domains connected to the first set of alien domains; and a hardware processor configured to; receive on a port of a router in the first domain, a message from an alien domain in the first or second sets of alien domains, the message specifying an originating domain number and a target domain number; translate the originating domain number and the target domain number using the set of virtual domain numbers, wherein the translated originating domain number is relative to a domain receiving the message and the translated target domain number is relative to domain sending the translated message; and forward the translated message to a destination other than the alien domain in the first or second sets of alien domains from which the message was received, wherein each domain number is the set of virtual domain numbers identifies a Peripheral Component Interconnect Express (PCIe) hierarchy with a single PCIe root element. - View Dependent Claims (18, 19, 20)
-
Specification