Systems and methods for forwarding network packets in a network using network domain topology information
First Claim
1. A method of using a controller that controls client switches in a network having non-client switches and end hosts that are coupled to the client and non-client switches, the method comprising:
- with the controller, forming client domains from groups of the client switches, wherein the client domains are separated by non-client domains formed from the non-client switches;
with the controller, determining a network domain topology from the client domains and non-client domains;
with the controller, receiving a network packet from a source end host that is destined for a destination end host;
with the controller, identifying the source end host and destination end host from the received network packet;
identifying a source domain that is associated with the source end host from the client and non-client domains;
identifying a destination domain that is associated with the destination end host from the client and non-client domains;
determining an inter-domain forwarding path from the source domain to the destination domain based on the network domain topology, wherein the inter-domain forwarding path includes the source domain, the destination domain, and a list of intervening domains between the source domain and the destination domain;
for each client domain in the list of intervening domains, determining an intra-domain forwarding path from a previous domain to a subsequent domain in the list of domains; and
controlling the client switches in each client domain of the inter-domain forwarding path to forward the network packet from the source end host to the destination host along the inter-domain forwarding path and the intra-domain forwarding path of each client domain of the inter-domain forwarding path.
6 Assignments
0 Petitions
Accused Products
Abstract
A controller may be used to control client switches in a network that includes non-client switches. The controller may form client domains from groups of client switches that are separated by intervening non-client domains formed from non-client switches. The controller may determine a network domain topology from the client domains and non-client domains. The controller may determine a spanning tree that interconnects the nodes of the network domain topology. The controller may control client switches of the client domains to allow only network traffic between the client domains and the non-client domains along the spanning tree. The controller may use the network domain topology to generate inter-domain forwarding maps. The inter-domain forwarding maps may be used to determine network forwarding paths between end hosts in the network.
13 Citations
20 Claims
-
1. A method of using a controller that controls client switches in a network having non-client switches and end hosts that are coupled to the client and non-client switches, the method comprising:
-
with the controller, forming client domains from groups of the client switches, wherein the client domains are separated by non-client domains formed from the non-client switches; with the controller, determining a network domain topology from the client domains and non-client domains; with the controller, receiving a network packet from a source end host that is destined for a destination end host; with the controller, identifying the source end host and destination end host from the received network packet; identifying a source domain that is associated with the source end host from the client and non-client domains; identifying a destination domain that is associated with the destination end host from the client and non-client domains; determining an inter-domain forwarding path from the source domain to the destination domain based on the network domain topology, wherein the inter-domain forwarding path includes the source domain, the destination domain, and a list of intervening domains between the source domain and the destination domain; for each client domain in the list of intervening domains, determining an intra-domain forwarding path from a previous domain to a subsequent domain in the list of domains; and controlling the client switches in each client domain of the inter-domain forwarding path to forward the network packet from the source end host to the destination host along the inter-domain forwarding path and the intra-domain forwarding path of each client domain of the inter-domain forwarding path. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A method of using a controller that controls client switches in a network having non-client switches and end hosts that are coupled to the client and non-client switches, wherein groups of the client switches form respective client domains and wherein groups of the non-client switches form respective non-client domains that are interposed between the client domains, the method comprising:
-
with the controller, identifying a plurality of the client domains and a plurality of the non-client domains; with the controller, receiving a network packet from a source end host; with the controller, identifying a source domain associated with the network packet from the identified plurality of client domains and the identified plurality of non-client domains; with the controller, identifying a destination domain associated with the network packet from the client and non-client domains; determining an inter-domain forwarding path from the source domain to the destination domain, wherein the inter-domain forwarding path includes the source domain, the destination domain, and a list of intervening domains between the source domain and the destination domain; for each client domain in the list of intervening domains, determining an intra-domain forwarding path from a previous domain to a subsequent domain in the list of domains; and controlling the client switches in each client domain of the inter-domain forwarding path to forward the network packet from the source end host to the destination host along the inter-domain forwarding path and the intra-domain forwarding path of each client domain of the inter-domain forwarding path. - View Dependent Claims (18, 19, 20)
-
Specification