a computer system includes compute nodes coupled through a switch to shared or non - shared i / o devices . the switch includes a pool of bridge headers and virtual bridges coupling a root port of a compute node to each of one or more shared or non - shared i / o devices . the switch is configured to associate each of the virtual bridges with a respective one of the fixed pool of bridge headers , receive a packet including data identifying the root port and a shared or non - shared i / o device , and route the packet in response to comparing data in the packet to data in the bridge headers associated with the virtual bridges . the virtual bridges comprise a hierarchy of virtual bridges in which one virtual bridge connects the root port to the remaining virtual bridges of the hierarchy . the switch may change the associations between virtual bridges and bridge headers .