The present invention relates generally to the field of communication networks, and, more particularly, to a method and apparatus facilitating selection of a gateway for communication between nodes in different levels of multilevel network, especially one operating according to an SPB (shortest path bridging) scheme.
The following abbreviations are herewith defined, at least some of which are referred to within the following description of the state-of-the-art and the present invention.
Data communication networks may be used to transport data between the myriad of computing devices that are now capable of sending and receiving data transmissions. In this way communications may be effected, information requested and retrieved, and graphical and video images transmitted just to cite a few examples.
Data communication networks may be implemented in a wide range of environments, from vast carrier networks to small home networks. Intermediate-sized communication networks may be deployed for example in business enterprises, on university campuses, and in data centers.
Unlike the traditional fixed hierarchical switching networks used, for example, for traditional telephone communications, modern communication networks typically are formed by a number of interconnected nodes variously referred to by such names as hubs, bridges, switches, and routers depending in part on their ability to receive and forward data. The communication network may change over time as nodes, or even sub-networks of nodes are added and removed.
A variety of operational protocols have been developed for organizing modern communication networks and directing the flow of data traffic through them. One such protocol is referred to as IS-IS (intermediate system to intermediate system). This protocol is described, for example, in IETF RFC 1142. IS-IS is a link state protocol, meaning the each of the nodes in the network acquire an understanding of the existence and interrelationship of some or all of the network nodes in order to calculate optimum data paths. Techniques are prescribed for network nodes to discover their neighbors, that is, the nodes to which they are connected, and to selectively advertise this information to the other nodes in the network.
One protocol that operates in such an environment is SPB (shortest path bridging), which governs how the network nodes obtain and use topology information to calculate paths throughout the network. SPB is gaining popularity as a successor to the STP (spanning tree protocol) family of protocols since SPB permits using multiple data paths through the network while still avoiding loops. SPB is described, for example, in the IEEE 802.1aq standard and is built using IS-IS.
A data communication network may be logically divided into sub-networks. There may be several reasons for doing this, one being the efficiency gained by reducing the amount of topology information that needs to be universally advertised; another is to permit the differentiation of behavior in different parts of the network. The IS-IS protocol permits multilevel networking, where adjoining networks can be delineated as level 1 and level 2. (Refer for example to
In a multilevel IS-IS communication network, a level 1 network and a level 2 network may, for example, implement different versions of SPB (varying, for example, in the behavior of some aspect of forwarding). As mentioned above, not all information advertised for the nodes of one level need be advertised to the nodes of the other level, reducing the control information exchanged. Data traffic that must pass from one level to another level passes through a gateway node, which includes a level 1 interface and a level 2 interface.
In many deployments, there are multiple gateway nodes that may be used to interconnect different sub-networks such as level 1 and level 2 networks. This topology is often desirable if for no other reason than redundancy if one gateway fails or is taken out of service. Where there are multiple gateway nodes between a level 1 and a level 2 network, however, it is sometimes advantageous to select a single active gateway node to handle traffic in both directions for at least a given subset of the traffic. For example, using a single active gateway for traffic in both directions may be advantageous for OAM in Ethernet and SPB networks and for interworking between different forwarding behaviors such as loop mitigation mechanism like ingress checks or reverse path forwarding checks. Single active gateway selection may be done using manual configuration, but it is preferable that the selection can be executed when needed by the nodes of the communication network with little or no need for operator intervention.
Needed then is a manner of facilitating selection of and selecting an active gateway for handling data traffic between a first level and a second level sub-network.
Note that the techniques or schemes described herein as existing, possible, or desirable are presented as background for the present invention, but no admission is made thereby that these techniques and schemes or the need for them were heretofore commercialized or known to others besides the inventors.
The present invention is directed to a manner of facilitating selection of an active gateway for communication between levels of a multi-level network. In a preferred embodiment the present invention provides for the automatic selection of a bi-directional gateway between nodes in levels of a multi-level network regardless of topology of the levels and adapts to changes in topology.
In one aspect, the present invention is a system of level 1 nodes and level 2 nodes interconnected at gateway nodes to form a multilevel network, wherein gateway nodes advertise to level 2 nodes external routes with a metric to a selected level 1 node and advertise level 1 nodes external routes with the system ID of the gateway, and wherein one active gateway node is chosen by the level 1 nodes and the level 2 nodes based at least in part on the advertised information. The information may be transmitted, for example, as TLVs in link state packets.
The selected level 1 node is preferably a central, well-connected node in the level 1 sub-network, for example the multicast root of a single tree. Note that in some embodiments the metric may be set to a fixed value.
In another aspect, the present invention is a method for selecting an active gateway in a multi-level communication network having a first level and a second level, the method in one embodiment including determining the available gateway nodes, determining a metric for each of the gateway nodes, the metric representative of the cost associated with the shortest path between a gateway node and a selected node associated with the level 1 sub-network, comparing the metrics of the gateway nodes, and selecting the active gateway based at least in part on the gateway node metric comparison. In some embodiments, the method includes selecting as the active gateway the gateway node with the lowest metric. In some embodiments, where it is determined that a plurality of gateway nodes have the lowest metric the method also includes selecting as the active gateway the gateway node of the plurality of gateway nodes that has the lowest numerical system ID number. Alternately, bridge priority may be used, or a combination of both.
In this aspect, the method of the present invention is preferably executed by a network node, and most or all of the nodes in a communication network preferably execute the method at about the same time.
In some embodiments, the present invention also includes selecting a level 1 node for determining the metric, for example using an ECT (equal cost tree) algorithm. The selected level 1 node may have to be selected from a plurality of multicast root nodes, for example using an ID or priority value. The method may then also include advertising to level 2 nodes at least one external route with a metric to the selected level 1 node and advertising to level 1 nodes at least one external route with a system ID associated with the advertising node. LSPs carrying TLVs may be used for this purpose.
In some embodiments, the present invention may include receiving and selectively storing advertised information, and also forwarding data traffic via the selected active gateway. The level 1 or level 2 network, or both, may be fully meshed but do not have to be. Networks may operate, for example, according to an SPF (shortest path first) protocol or Single Tree [reference] protocol. Preferably, in any level of the network the forwarding may operate on different principles than the other level of the network. This allows different SPB implementations to interwork and be redundantly connected.
In another aspect, the present invention is a network node including a processor and a memory device storing program instructions that when executed by the processor cause the network node to perform a method including determining the available gateway nodes between a level 1 sub-network and a level 2 sub-network, determining a metric for each of the gateway nodes, the metric for example representative of the cost associated with the shortest path between a gateway node and a selected node such as a multicast root associated with the level 1 sub-network, comparing the metrics of the gateway nodes, and selecting the active gateway based at least in part on the gateway node metric comparison. The network node may also include a routing table for selectively storing received gateway information for performing the method.
In some embodiments, the program instructions may also include instructions that when executed by the processor cause the network node to advertise selected information to level 1 network nodes and to level 2 network nodes, for example the metric representative of the cost associated with the shortest path between the network node and a selected node associated with the level 1 sub-network.
Additional aspects of the invention will be set forth, in part, in the detailed description, figures and any claims which follow, and in part will be derived from the detailed description, or can be learned by practice of the invention. It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention as disclosed.
A more complete understanding of the present invention may be obtained by reference to the following detailed description when taken in conjunction with the accompanying drawings wherein:
The present invention is directed to a manner of facilitating selection of an active gateway for communication between levels of a multi-level network. The selected gateway may then be used for all traffic, unicast and multicast. By forcing all traffic in an SPB instance to use a single gateway different forwarding behaviors can be supported in different levels of the network. Any gateways not selected may remain inactive unless and until a need to change configuration arises, such as the failure of a link or node. Note, however, that gateway selection is preferably on a per SPB instance or per bridging domain basis and other instances or bridging domains are not precluded from using the inactive gateway. The invention may be advantageously implemented in a multilevel IS-IS network, such as the network depicted in
In the embodiment of
In the embodiment of
In the embodiment of
A network of the general configuration shown in
Note that as used herein, “advertise” refers broadly to transmitting topology or gateway selection information and includes re-originating received information.
In the embodiment of
In the embodiment of
Note that in most implementations, the gateway determination will be made by a network node within the network. Ideally, each node in the network makes a similar determination at approximately the same time using common criteria.
In determining available gateways and selection metrics, a network node may look to routing tables or similar tables stored in its own memory. The information populating such tables is received (not shown) from other network nodes, and particularly gateway nodes. In most cases therefore the the gateway node metric of the process of
As mentioned above, in one embodiment the metric associated with a gateway node represents the distance or, more generally speaking, the cost, associated with the path between the gateway node and a selected level 1 node for the sub-network in question. The selected level 1 node may in some cases be a multicast root node of the level 1 sub-network, although other ways of selecting the level 1 node may be used as well, such as choosing the node with the lowest (or highest) system ID. As also mentioned above, this determination may be made by reference to routing or similar tables located within the node and populated with advertised information received after selection of the level 1 node. Here is it noted that the cost of individual links will in many cases be equal (for example a cost of 1) (refer, for example, to
Note also that any determination indicated as being made on an individual node may be made outside of the node as well, presuming the availability of the necessary information and proper communication with the node itself, although this arrangement is not presently preferred.
If a second selection criteria is needed, the second selection criteria may be, for example, bridge priority value or bridge identity or both (choosing typically though not necessarily the lowest value). For example, metrics to each gateway, when used, may be equal, so additional selection driteria are in that case needed. Note that this means the network operator may influence gateway selection by assignment of priority (or other) values. Operator influence may also be asserted with the first selection criteria as well, depending on the metric employed.
In this manner, an active gateway is selected for communications passing between levels of a multilevel communication network. The active gateway may then be used until a change in topography necessitates another selection. Note that the active gateway is preferably one of two available gateways, which generally provides sufficient redundancy again failure of a link or node, but the method of the present invention may be applied to any number.
As should be apparent, application of the present invention requires that certain information be made available to each node, or at least to each network node or other entity at which the method of the present invention is to be performed.
In this embodiment, the node advertises (step 315) the neighbor information to at least the other nodes within its sub-network. As mentioned above, in a link state protocol such as IS-IS, the neighbor node information is stored in an IS-IS database and in this way each node is aware of the topology of its network (or sub-network) and may perform calculations based on this awareness. A network ID for the sub-network is then determined (step 320).
In accordance with this embodiment of the present invention, gateway nodes, which have interfaces to both a level 1 sub-network and a level 2 sub-network, advertise (step 325) at least the information necessary for unambiguously determining an active gateway.
In making the active-gateway selection according to the present invention certain information is helpful or necessary. For this reason in a preferred embodiment, gateway nodes selectively advertise this information as will now be described in more detail. In most implementations, the information is transmitting in this fashion from every gateway node and received by each network node according to their level, although exceptions may be made in individual cases, for example if the network operator desires to enforce a certain solution.
In accordance with an embodiment of the present invention, each level 2 node with level one neighbors, that is, each gateway node, advertises information for active-gateway selection to all other nodes in the communication network. These transmissions may be sent, for example, as TLV messages in LSPs (link state packets). The advertising is selective in that certain information is sent to level 1 nodes while other information is sent to level 2 nodes. The advertising is typically but not necessarily performed after selecting a level 1 node such as a multicast root node, as described above.
In one embodiment, for example, a gateway advertises to level 2 nodes external root nodes with a metric to a selected level 1 node. That is, the metric is the distance (in hops) from the selected level 1 node to the advertising gateway. Note that in most implementations the cost of a link is presumed to be equal and can be assumed to be 1 for this description. If different costs are assigned to different links, the distance may be calculated based on the total cost rather than simply the number of hops. Reporting of the external root nodes preferably includes values for Network ID, BMACS and I-SIDS.
When used for gateway determination, the multicast root nodes may be determined by configured priority and by an ECT (equal cost tree) calculation, using tiebreakers if necessary. (For operation according to the present invention, a single root node is selected for a sub-network but multiple root nodes may be used with multiple gateways.)
In accordance with this embodiment, a gateway node which runs level 2 and level 1, advertises to level 1 nodes the external information from other gateways, but with the System ID of the gateway. In this way the level 1 nodes will select a gateway based solely on level 1 information.
In this embodiment, LSPs carrying the TLVs are forwarded normally according to IS-IS protocol. LSP redistribution should be allowed with minimum delay and no hiding of relevant TLV information (such as BMACs or I-SIDs in SPB)
The description above provides the advertising required for active-gateway selection according to this embodiment of the present invention, but this is not intended to imply that no other information may be advertised, or that different embodiments might not advertise different values in a different manner.
In an embodiment having a management BVPLS (backbone virtual private LAN service) supporting SAP (service access point) and SDP (service distribution point) binding, the following LSP advertisement rules apply. For each FID (forwarding identifier) on a level 1 management BVPLS:
In this embodiment, for each FID, a level 2 management BVPLS:
In this embodiment, LSPs from a level 2 BVPLS to another level 2 BVPLS include all local level 2 node BMACs and I-SIDs, and in addition any BMACs and I-SIDs advertised from level 1 interfaces that are advertised as external routes. Note that a level 2 gateway advertises all level 2 information to the level 1 network as external routes with no metric; the external routes are identified with the root node of the level 2 network. This hides the topology information from the level 1 part of the network.
Returning to the embodiment of
Again, it is noted that although the process is described in terms of execution by a node, in most implementations it will be executed by most or of the nodes within the communication network (according to their role, for example, as a gateway node). It is not necessary that each and every node in a particular network or sub-network perform each of the steps of a given process according to the present invention unless explicitly recited in a particular embodiment or evident from the context.
Also note that the sequence of operation illustrated in
In the embodiment of
As an example, the communication network of
Although multiple embodiments of the present invention have been illustrated in the accompanying Drawings and described in the foregoing Detailed Description, it should be understood that the present invention is not limited to the disclosed embodiments, but is capable of numerous rearrangements, modifications and substitutions without departing from the invention as set forth and defined by the following claims.
The present disclosure is related to U.S. patent application Ser. No. 13/231,588, entitled Method and Apparatus for Shortest Path Bridging of Multicast Traffic and filed on 13 Sep. 2011, the entire contents of which are incorporated by reference herein.