In order to implement communication fault tolerance, and in some cases increase data throughput, a computer system may couple to a network by way of a plurality of communication ports (hereinafter just ports), with the ports either implemented on a single network interface card (NIC) or the ports implemented on multiple NICs. The ports are “teamed” or “aggregated” such that, regardless of the actual number of ports, the ports appear as a single virtual communication port.
Even though teamed ports appear as a single virtual port, for a variety of reasons (e.g., security) a plurality of virtual local area networks (VLANs) may operate over the single virtual port. For example, consider a server coupled to a plurality of workstation computers within a corporate location over the same physical network. For fault tolerance and to increase data throughput, the server may utilize a plurality of teamed communication ports. Some of the plurality of workstation computers may be operated by human resources, and others of the workstation computers may be operated by the engineering group. In order to keep the human resources systems separate from the engineering systems, the human resources workstation computers may belong to a first VLAN, while the engineering workstation computers may belong to a second VLAN. Thus, while the workstation computers actually communicate to the server over the same physical network, the workstation computers effectively and virtually reside on different networks.
Because the server needs to communicate with all of the workstation computers, and because communication may take place over any port of the single virtual port, each of the ports of the single virtual port belongs to each and every VLAN. Thus, regardless of the bandwidth requirements of a particular VLAN, each and every VLAN has equal access to bandwidth to and from the server.