# Patent

## Title
Method and system for managing a network having multiple domains

## Abstract

Exemplary embodiments are directed to a system and method for managing a network having multiple domains. An exemplary method includes identifying a router interface connected with a switch; assigning a Layer 2 identifier to the interface, wherein the identifier uniquely identifies a Layer 2 domain within the network; and assigning the Layer 2 identifier to the switch.

## Background
CROSS REFERENCE TO RELATED APPLICATION
This application claims priority under 35 U.S.C. §119 to U.S. Provisional Application No. 60/540,072 filed in the U.S. PTO on Jan. 30, 2004, the entire contents of which is hereby incorporated by reference in its entirety.


BACKGROUND
Computer networks can contain a plurality of nodes, each representing a device connected within the network. The nodes can be grouped into subnetworks which include one or more virtual local area networks (VLANs).
In a network, different VLANs having different physical locations within the network can possess the same VLAN identifier. In this situation, the network management software will assume that redundant VLAN identifiers correspond to the same VLAN, irrespective of each VLAN's physical location within the network.
SUMMARY
Exemplary embodiments are directed to a method for managing a network having multiple domains. An exemplary method includes identifying a router interface connected with a switch; assigning a Layer 2 identifier to the router interface, wherein the identifier uniquely identifies a Layer 2 domain within the network; and assigning the Layer 2 identifier to the switch.
An exemplary system is disclosed for managing a network having multiple domains. The system includes a management computer configured to assign a Layer 2 identifier to a router interface of a router in a network, and configured to assign the Layer 2 identifier to a switch determined by the management computer to be connected to the router interface; and a memory, accessible by the management computer, for storing a list of nodes associated with the Layer 2 identifier.
Alternate embodiments of a system are disclosed for managing a network having multiple domains, including means for identifying a router interface connected with a switch, and for assigning a unique Layer 2 identifier to the router interface and the switch; and means for storing a list of nodes associated with the Layer 2 identifier for retrieval using the Layer 2 identifier.
A computer readable medium containing a computer program is disclosed for causing a computer to: identify a router interface connected with a switch within a network; assign a Layer 2 identifier to the router interface, wherein the identifier uniquely identifies a Layer 2 domain within the network; and assign the Layer 2 identifier to the switch.



DESCRIPTION OF THE DRAWINGS
The following detailed description of preferred embodiments can be read in connection with the accompanying drawings in which like numerals designate like elements and in which:
FIG. 1 shows an exemplary system for managing a network having an untagged group of nodes; and
FIG. 2 shows an exemplary method for managing a network having an untagged group of nodes.



DETAILED DESCRIPTION
FIG. 1 shows an exemplary system 100 for managing a network having multiple domains. Each domain can include a tagged and/or an untagged group of nodes. In an exemplary embodiment, a group of nodes constitutes a VLAN. The FIG. 1 system includes means, such as a management computer of management station 102, for identifying a router interface connected with a switch, and for assigning a unique Layer 2 identifier to the router interface and the switch. Where the group of nodes constitutes a VLAN, the Layer 2 identifier can be considered a VLAN identifier.
In operation, the management computer of management station 102 can be configured to assign the Layer 2 identifier to the router interface of a router, such as router 106. The management computer can be configured to assign the same Layer 2 identifier to a switch, such as switch 110, determined by the management computer to be connected to an interface of router 106.
The system 100 can also include means, such as memory 103, for storing a list of nodes associated with the Layer 2 identifier, for retrieval using the Layer 2 identifier. The memory 103 can be accessible by the management computer of management station 102. The list of nodes associated with the Layer 2 identifier can easily be accessed using the Layer 2 identifier when addressing the memory.
An untagged group of nodes, represented by routers, switches and end nodes in the managed network 104 of the exemplary FIG. 1 embodiment, can constitute a VLAN associated with a VLAN identifier. In the FIG. 1 example, a VLAN identifier labeled “VLAN 2” is associated with multiple VLANs within the managed network 104. In this situation, exemplary embodiments are directed to retrieving network entities according to their Layer 2 proximity.
Retrieval of network entities according to their Layer 2 proximity is desired for correct VLAN grouping among plural subnetworks. By walking the connectivity between a router interface and an end-point (where an end-point is defined as, for example, either another router interface or as an access port on a switch), a Layer 2 domain can be identified. Grouping the router interface and switch devices in the domain and associating a unique identifier (e.g., a Layer 2 ID) with them, can make retrieval of these entities according to a Layer 2 ID efficient and beneficial when differentiating redundant untagged VLAN identifiers.
In the exemplary FIG. 1 system, management station 102 interfaces with network 104. The network 104 includes routers (R) labeled 106, 108 and switches (S) labeled 110, 112, 114, and 116. End nodes (E) labeled 118, 120, 122, 124, 126 and 128 are also illustrated. In the network, multiple VLANs redundantly labeled “VLAN2” are provided. In accordance with exemplary embodiments, these redundant VLAN identifiers can be differentiated using Layer 2 identifiers. For example, “Layer 2 ID-1” and “Layer 2 ID-2”, as shown in FIG. 1, differentiate the two VLANs having the same “VLAN 2” identifier in each of two different Layer 2 domains.
VLAN identifiers need only be unique within a Layer 2 broadcast domain. As such, network administrators can choose to reuse VLAN identifiers in different subnets. Network management software that is managing the entire network, as described herein, is able to differentiate between the same VLAN identifier when it is used in different Layer 2 broadcast domains.
FIG. 2 illustrates an exemplary method which can be performed to differentiate redundant VLAN identifiers in a network. The FIG. 2 method can, for example, be implemented as a computer program, stored on a computer readable medium, for causing the management station 102 to configure in such a way as to execute the functionality illustrated therein.
In FIG. 2, a router RN such as router 106 is selected in block 202. In block 204, each interface (IF) of the router RN connected to a switch (SZ), such as switch S1 labeled 110, is identified.
In block 206, a first, unique Layer 2 identifier (ID) is assigned to the interface, such as an identifier “Layer 2 ID-1”. In block 208, this same identifier Layer 2 ID-1 is assigned to the switch SX connected directly to the interface of the router 106.
This process is recursively performed for each switch connected directly or indirectly (e.g., via another switch) to the router interface under consideration. The management station 102 repeatedly assigns the Layer 2 identifier to each of the multiple switches connected to the router interface. All identified switches in the domain are assigned the same Layer 2 identifier in block 210.
In the example of FIG. 1 with respect to interface of router 106 connected to switch 110, only one such switch would be identified. Thus, the interface of router 106 which is connected to switch 110, along with switch 110 and end nodes 118, 120 connected to switch 110, would be associated with the Layer 2 ID-1. Thus, in identifying a router interface connected to the switch, multiple nodes connected to the router interface are identified. Any nodes identified and associated with the Layer 2 identifier can be maintained in the list of nodes maintained by memory 103.
The function of assigning the Layer 2 identifier to each of multiple switches connected to the router interface under consideration can be repeated until a predetermined condition is detected. For example, the predetermined condition can be the detection of another router interface, such as an interface of router R2, labeled 108, which is also connected to switch 110. The interface of router 108 connected to switch 110 can be associated with the Layer 2 ID-1 of switch 110, and can be used to bound the VLAN.
Alternately, or in addition, the predetermined condition can be the detection of a last switch in a path extending from the router interface. For example, switches 114 and 116 are not connected to an interface of a router, or to any downstream switches not already identified, and would each constitute the last switch in a path extending from the router interface 108. In this case, detection of switches 114 or 116 would serve as a predetermined condition for discontinuing the recursive operation of detecting switches associated with the Layer 2 identifier (LSID=2) currently under consideration.
These functions are illustrated with decision blocks 212 and 214. More particularly, in decision block 212, another router interface (e.g., of router 108) with no Layer 2 identifier is detected. The Layer 2 identifier already assigned to the domain under consideration (that is, Layer 2 ID-1) is assigned to this router interface in block 214 to bound the domain. This completes the assignment of the Layer 2 identifier to switches within the domain. Assuming all interfaces for the current router under consideration have been processed, operation can proceed to a block 216. If all such routers have been considered, as represented by block 216, the operation concludes with end block 220. Otherwise, in block 218, a next router can be selected for consideration.
Returning to block 212, if a second router interface which would bound a current VLAN is not detected, operation proceeds to decision block 222, to determine whether further switch connections exist in the current domain. If so, operation proceeds to block 210 wherein each such additional switch is assigned the Layer 2 identifier “Layer 2 ID”.
If no further switch connections are detected in block 222, the VLAN is considered to be bounded, and all nodes therein are assigned the same Layer 2 ID. Operation proceeds to block 224 to determine whether any additional interfaces remain on the current router RN (e.g., router 106) under consideration. If so, the next router interface is selected in block 226 and operation returns to block 204 to repeat the foregoing process for each additional L2 connected interface of the router 106. Each additional L2 connected interface will be associated with its own Layer 2 ID. After all interfaces of the current router RN (e.g., router 106) have been considered, operation proceeds to the next router (e.g., router 108) via blocks 216 and 218. at this time, interfaces of router 108, other than the interface connected to switch 100, are evaluated.
Thus, the management station 102 repeats the identifying of a router interface and the assigning of a Layer 2 identifier to a router interface for each of multiple router interfaces associated with a router in the network. This operation is repeated for each router in the network, as desired.
Using the FIG. 2 method, entities are grouped into layer 2 domains. The following code implements functionality similar to that described with respect to FIG. 2, and can be used to program management station 102:












// begin main


select all routers from the network topology


foreach router {


  select router's layer-2 connected interfaces from topology


  foreach connected interface {


    if interface connected to a switch {


      assign the interface a unique layer 2 identifier // aka Layer


      2ID


      execute followSwitchConnections(switchName, Layer 2ID)


      } // fi


    } // hcaerof


  } // hcaerof


// end main


// recursive function


function followSwitchConnections (switchName, Layer 2ID) {


  // begin function


  assign switch entity the Layer 2ID


  select switch's layer-2 connected interfaces from topology


  foreach connected interface {


    if connected to a remote switch interface and


    remote switch has no Layer 2ID {


      followSwitchConnections(remoteSwitchName, Layer 2ID)


      } // fi


  else if connected to a router interface and


  router interface has no Layer 2ID


    {


    assign router interface the Layer 2ID


    } // esle fi


  } // hcaerof


return


// end function


}









The foregoing method and system recognizes that network administrators may choose to reuse VLAN identifiers in different subnetworks. Such a feature allows differentiation between different groups of nodes using duplicate identifiers, leaving administrators with the correct information that a common identifier is not actually the same physical group of nodes.
It will be appreciated by those skilled in the art that the present invention can be embodied in other specific forms without departing from the spirit or essential characteristics thereof. The presently disclosed embodiments are therefore considered in all respects to be illustrative and not restricted. The scope of the invention is indicated by the appended claims rather than the foregoing description and all changes that come within the meaning and range and equivalence thereof are intended to be embraced therein.

## Claims

1. A method for managing a network having multiple domains , comprising:
identifying a router interface connected directly with a switch;
assigning a Layer 2 identifier to the router interface connected directly with the switch, wherein the Layer 2 identifier uniquely identifies a Layer 2 domain within the network that has redundant virtual local area network (VLAN) identifiers;
assigning the same Layer 2 identifier to the switch that is connected directly with the router interface; and
repeatedly assigning the Layer 2 identifier to each of multiple switches downstream from the router interface until a predetermined condition is detected,
wherein the Layer 2 identifier differentiates the redundant VLAN identifiers in the network.

2. Method according to claim 1, wherein the predetermined condition is detection of another router interface.

3. Method according to claim 1, wherein the predetermined condition is detection of the last switch in a path extending from the router interface.

4. A method for managing a network having multiple domains, comprising:
identifying a router interface connected directly with a switch;
assigning a Layer 2 identifier to the router interface connected directly with the switch, wherein the Layer 2 identifier uniquely identifies a Layer 2 domain within the network that has redundant virtual local area network (VLAN) identifiers;
assigning the same Layer 2 identifier to the switch that is connected directly with the router interface, and
repeating the identifying of a router interface and the assigning of a Layer 2 identifier to a router interface for each of multiple router interfaces associated with a router in the networks,
wherein the Layer 2 identifier differentiates the redundant VLAN identifiers in the network.

5. A System for managing a network having multiple domains comprising:
a management computer configured to assign a Layer 2 identifier to a router interface of a router in a network that has redundant virtual local area network (VLAN) identifiers, and configured to assign the same Layer 2 identifier to a switch determined by the management computer to be directly connected to the router interface to differentiate the redundant VLAN identifiers in the network; and
a memory, accessible by the management computer, for storing a list of nodes associated with the Layer 2 identifier,
wherein the management computer repeatedly assigns the Layer 2 identifier to each of multiple switches downstream from the router interface until a predetermined condition is detected.

6. System, according to claim 5, wherein the predetermined condition is the detection of another router interface.

7. System according to claim 5, wherein the predetermined condition is detection of a last switch in a path extending from the router interface.

8. A System for managing a network having multiple domains comprising:
a management computer configured to assign a Layer 2 identifier to a router interface of a router in a network that has redundant virtual local area network (VLAN) identifiers, and configured to assign the same Layer 2 identifier to a switch determined by the management computer to be directly connected to the router interface to differentiate the redundant VLAN identifiers in the network;
a memory, accessible by the management computer, for storing a list of nodes associated with the Layer 2 identifier, and
wherein the management computer repeats the identifying of a router interface, and the assigning of a Layer 2 identifier to a router interface, for each of multiple router interfaces associated with a router in the network.

9. A system for managing a network having multiple domains, comprising:
means for identifying a router interface connected directly with a switch within a network that has redundant virtual local area network (VLAN) identifiers, and for assigning a same unique Layer 2 identifier to both the router interface and the switch to differentiate the redundant VLAN identifiers in the network; and
means for storing a list of nodes associated with the Layer 2 identifier for retrieval using the Layer 2 identifier,
wherein the identifying and assigning means repeatedly assigns the Layer 2 identifier to each of multiple switches connected to the router interface until a predetermined condition is detected.

10. System according to claim 9, wherein the predetermined condition is detection of another router interface.

11. System according to claim 9, wherein the predetermined condition is detection of a last switch in a path extending from the router interface.

12. System according to claim 9, wherein the identifying and assigning means repeatedly identifies a router interface and assigns a Layer 2 identifier to a router interface for each of multiple router interfaces associated with a router in the network.

13. A computer readable medium storing instructions for managing a network having multiple domains, the instructions being executed on a computer and comprising instructions for:
identifying a router interface connected directly with a switch within a network that has redundant virtual local area network (VLAN) identifiers;
assigning a Layer 2 identifier to the router interface connected directly with the switch, wherein the Layer 2 identifier uniquely identifies a Layer 2 domain within the
assigning the same Layer 2 identifier to the switch that is connected directly with the router interface, and repeatedly assigning the Layer 2 identifier to each of multiple switches downstream from the router interface until a predetermined condition is detected,
wherein the Layer 2 identifier differentiates the redundant VLAN identifiers in the network.

14. A computer readable medium according to claim 13, wherein the predetermined condition is the detection of another router interface.

15. A computer readable medium according to claim 13, wherein the predetermined condition is the detection of a last switch in a path extending from the router interface.

16. A computer readable medium according to claim 13, wherein the instructions further include instructions for causing a computer to: repeatedly identify a router interface and assign a Layer 2 identifier to a router interface for each of multiple router interfaces associated with a router in the network.