An apparatus for managing inter-domain resource allocation in a Peripheral Component Interconnect-Express (PCIe) network which includes a plurality of PCIe domains (100, 200, 300) each managed by a link processor (101, 201, 301) and connected to one or more other domains via a non-transparent bridge (150, 250), comprising: a memory; a management processor coupled with the memory, the management processor configured to: obtain information about available resources of the domains (100, 200, 300) reported by each domain's link processor (101, 201, 301), wherein the information about available resources includes memory address of each available resource reported; store the obtained information about the available resources in the memory; receive a resource request from a requesting processor of one of the domains (100, 200, 300); in response to the resource request, allocate a resource of the available resources to the requesting processor, wherein the allocated resource resides in a domain different from the domain with the requesting processor; obtain memory address information of the allocated resource from the memory; instruct one or more link processors (101, 201, 301) to program one or more inter-domain NTBs (150, 250) through which the traffic between the allocated resource and the requesting processor is going to flow according to the memory address information of the allocated resource, to allow cross-domain resource access between the requesting processor and the allocated resource. a memory; a management processor coupled with the memory, the management processor configured to: obtain information about available resources of the domains (100, 200, 300) reported by each domain's link processor (101, 201, 301), wherein the information about available resources includes memory address of each available resource reported; store the obtained information about the available resources in the memory; receive a resource request from a requesting processor of one of the domains (100, 200, 300); in response to the resource request, allocate a resource of the available resources to the requesting processor, wherein the allocated resource resides in a domain different from the domain with the requesting processor; obtain memory address information of the allocated resource from the memory; instruct one or more link processors (101, 201, 301) to program one or more inter-domain NTBs (150, 250) through which the traffic between the allocated resource and the requesting processor is going to flow according to the memory address information of the allocated resource, to allow cross-domain resource access between the requesting processor and the allocated resource. obtain information about available resources of the domains (100, 200, 300) reported by each domain's link processor (101, 201, 301), wherein the information about available resources includes memory address of each available resource reported; store the obtained information about the available resources in the memory; receive a resource request from a requesting processor of one of the domains (100, 200, 300); in response to the resource request, allocate a resource of the available resources to the requesting processor, wherein the allocated resource resides in a domain different from the domain with the requesting processor; obtain memory address information of the allocated resource from the memory; instruct one or more link processors (101, 201, 301) to program one or more inter-domain NTBs (150, 250) through which the traffic between the allocated resource and the requesting processor is going to flow according to the memory address information of the allocated resource, to allow cross-domain resource access between the requesting processor and the allocated resource.