The present invention relates generally to communications networks and, more particularly, to a system and a method for network monitoring in a virtual service network.
Modem communication networks are composed of many nodes that are interconnected to facilitate communication and provide redundancy. These nodes may be interconnected via cables, twisted pair, shared media or similar transmission media. Each node may comprise, for example, communication devices, interfaces, and addresses. The topology that describes how the nodes of a communication network are interconnected can be complicated. One of the complications is due to the use of virtual IP addressing, which allows communication with multiple devices having distinct physical addresses using a single virtual address. So, for example, if two routers are grouped together using a single virtual IP address and one of the routers becomes inoperative, the second router may be configured to receive the first router's communication traffic in a transparent manner. The use of virtual IP addressing is further illustrated with reference to
The features of the invention believed to be novel are set forth with particularity in the appended claims. The invention itself however, both as to organization and method of operation, together with objects and advantages thereof, may be best understood by reference to the following detailed description of the invention, which describes certain exemplary embodiments of the invention, taken in conjunction with the accompanying drawings in which:
While this invention is susceptible of embodiment in many different forms, there is shown in the drawings and will herein be described in detail specific embodiments, with the understanding that the present disclosure is to be considered as an example of the principles of the invention and not intended to limit the invention to the specific embodiments shown and described. In the description below, like reference numerals are used to describe the same, similar or corresponding parts in the several views of the drawings.
A network element is defined to be one of a node, interface, address, connection or transmission media. A subelement is an element that is part of a larger element; for example an interface coupled to a node. It is noted that a group of network elements may be formed to provide a service to the network or to users of the network. The network elements in the group are not required to be homogeneous. One service that may be provided by the group of network elements is a virtual service. A virtual service network is a network in which virtual addressing is used so that one or more nodes of the network may be transparently accessed. That is a user of the network interacts with the one or more network elements without having to be concerned with details of how the network elements are individually addressed. One example of a group of network elements having a virtual service is the Hot Standby Routing Protocol (HSRP) that uses virtual IP addressing.
Referring now to
In certain embodiments of the present invention, the status analyzer 205 is operable to generate a list comprising one or more items from one or more of the group of network elements and one or more of the plurality of sub elements. Each of the one or more items has a changed state as determined by the poll of the one or more of the group 235 and the plurality of sub elements of the group 235. In certain embodiments the topology manager 220 is operable to update a network topology using the list. Items in the list having a transient state may be repolled after a configurable delay in certain embodiments of the invention.
The changed state may be determined from the polling engine 210 polling the group 235. In certain embodiments, polling engine 210 polls the plurality of sub elements of the group 235. In certain embodiments, the change in state is one of transitional, operational, degraded and inoperational. The status analyzer 205 is further operative to analyze the list to set a status for the group of network elements or report fault indications. In certain embodiments of the present invention, the fault indications are reported to an event manager 225. Event manager 225 may then emit or actuate alarms based upon these fault indications.
The information obtained by the polling engine 210 that is provided to status analyzer 205 for the purpose of populating the list may be categorized as one of status information, group responsibility information, and network coupling information. Status information is defined as information specific to the network element that is polled. This could be, for example, the communication state of the network element, an identifier of the network element, or device specific information. The group responsibility information is that information related to the role of the network element relative to the service provided by the group 235. The group responsibility information could be, for example, the group state of the network element or a priority of the network element. The network coupling information indicates how the network element is coupled to the network 250. This network coupling information could include, for example, how the network element communicates with the network or whether the network element is part of a second group.
The fault indications mentioned previously may be reported in certain embodiments when one of the following occurs:
With reference to
The one or more items have a changed state as determined by polling the one or more of the group of network elements and the plurality of sub elements of the group of network elements at block 330. At block 340, the list is analyzed thereby performing one or more of: setting a status for the group of network elements, and reporting fault indications. In certain embodiments of the present invention, the status for the group 235 is one of NORMAL, CRITICAL, WARNING, MARGINAL, MAJOR, and UNKNOWN. The fault indications are as stated previously.
In certain embodiments of the present invention, the service provided by the group 235 may be a virtual service, such as virtual IP addressing. The polling engine 210 polls the virtual service and analyzer 205 sets an appropriate status and event manager 225 reports fault indications as shown in
Referring to
If the virtual service is not operational, then an appropriate status and fault alarm is generated (block 415). In certain embodiments the status is CRITICAL and a NO_ACTIVE_INTERFACE is generated. If the behavior of any network elements of the group has changed (YES at block 420), then the changes are saved and any inconsistencies are reported (block 425). In certain embodiments, the inconsistencies are saved and/or updated to a topology manager 220. If more than one network element is providing the service (YES at block 430), then the appropriate status is set and an alarm generated (block 435). In certain embodiments of the present invention, the status is set to MAJOR and an MULTIPLE_ACTIVE_INTERFACE is generated.
If there is not any network element that is providing the virtual service (N block 440), then the appropriate status is set and an alarm generated (block 445). In certain embodiments of the present invention, the status is set to CRITICAL and an NO_ACTIVE_INTERFACE alarm is generated. Any other inconsistencies or behavior problems (YES at block 450) may be handled in a similar manner with a status and alarm being generated. It is noted that the behavior may be determined by a change in status, a changed group interaction, or a change in network coupling. In certain embodiments, changes in network element behavior are reported to analyzer 205. Otherwise, if there are no inconsistencies or behavior problems (N at block 450), the virtual service status is set to NORMAL and a normal alarm is generated (block 460). In certain embodiments the alarms generated are one of:
NO_ACTIVE_INTERFACE;
MULTIPLE_ACTIVE_INTERFACE;
NO_STANDBY_INTERFACE;
GROUP_DEGRADED;
FAIL_OVER;
STANDBY_CHANGED;
NORMAL; and
MULTIPLE_STANDBY_INTERFACE.
In certain embodiments of the present invention, the HSRP protocol is employed to provide virtual IP addressing of a group of nodes. Referring to
It is noted that in certain embodiments, if at least one of the MULTIPLE_ACTIVE_INTERFACE alarm, the MULTIPLE_STANDBY_INTERFACE alarm, the GROUP_DEGRADED alarm, NO_ACTIVE_INTERFACE alarm, and the NO_STANDBY_INTERFACE alarm is generated, then the FAIL_OVER alarm and the STANDBY_CHANGED alarm are not generated. In certain embodiments the group status is one of:
NORMAL;
CRITICAL;
WARNING;
MARGINAL;
MAJOR; and
UNKNOWN.
Referring now to
After block 607 or block 612, if YES at decision block 615 (One or more participating interfaces has a transient HSRP state?), at block 618, we wait a configured time interval for the state to settle to steady state and re-poll any interface if it is still in transient state. After block 618 or if NO at decision block 615 (One or more participating interface has a transient HSRP state?), then decision block 621 is evaluated. If YES at decision block 621 (One or more participating interface HSRP state or Group Priority has changed?), at block 624, a new HSRP state and priority information is written to topology database for participating interfaces and the flow continues to block 627 If the decision at decision block 621 is NO, then the flow continues directly to block 627. At block 627, we evaluate the overall HSRP group status by checking the HSRP states. The appropriate group status is set and corresponding alarms actuated if necessary.
If NO at decision block 630 (Participating interface in HSRP Active state?), at block 633 there is no Active state found. The group status is set to Critical and HSRP No Active alarm is actuated.
If YES at decision block 630 (Participating interface in HSRP Active state?) and NO in decision block 635 (Found just one?), at block 637, multiple interfaces found in an Active state is abnormal. The group status is set to Major and HSRP Multiple Active alarm is actuated.
If YES in decision block 630 (Participating interface in HSRP Active state?), YES in decision block 635 (Found just one?), and NO in decision block 640 (Participating interface in HSRP Standby state?), then at block 643, there is no Standby state found the group status is set to Marginal and the HSRP No Standby alarm is actuated. If YES at decision block 640 (Participating interface in HSRP Standby state?) and NO at decision block 646 (Found just one?), at block 649, the multiple interfaces in Standby state are abnormal. The group status is set to Major and the HSRP Multiple Standby alarm is actuated.
If the decision is Yes at decision block 646, then the flow continues to decision block 652. If YES at decision block 652 (Participating interface in HSRP Listen state?), at block 655, the HSRP group is normal. The group status is set to Normal and the HSRP Normal alarm is actuated. If NO at decision block 652 (Participating interface in HSRP Listen state?) and NO at decision block 658 (Only 2 interfaces, 1 Active, 1 Standby?), at block 635, there are more than two interfaces and no Listen state found. The group status is set to Warning and the HSRP Degraded alarm is actuated. If YES at decision block 658, then the flow continues to decision block 661. If YES at decision block 661 (any fault/alert alarm actuated?), then at block 664, we are done with processing. Otherwise, a NO at decision block 661 causes the flow to proceed to decision block 667. If YES at decision block 667 (Active Interface not the same one as before?), block 670 actuates the HSRP fail over alarm. If NO at decision block 667, then proceed to decision block 673. If YES at decision block 673 (Standby Interface not the same one as before?), at block 676, HSRP standby_changed alarm is actuated. If NO at decision block 673, then we are done with processing.
An example of a use of an embodiment of the method and system of the present invention is given in
Referring now to
Referring now to
Referring now to
Referring now to
Referring now to
While the invention has been described in conjunction with specific embodiments, it is evident that many alternatives, modifications, permutations and variations will become apparent to those of ordinary skill in the art in light of the foregoing description. Accordingly, it is intended that the present invention embrace all such alternatives, modifications and variations as fall within the scope of the appended claims.