IP Library Granted Patent US 7,490,144
Granted Patent B2
US 7,490,144 · App. 10/790,156 · Granted Feb 10, 2009

Distributed network management system and method

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,490,144
App. No.
10/790,156
Granted
Feb 10, 2009
Kind
B2
Abstract

A distributed network management system and method of operation. The system includes at least one hub server and at least one remote server, where the hub server and the remote server communicate with each other. The remote server additionally communicates with and monitors one or more network devices. In the event that the remote server becomes inoperational, the hub server assumes monitoring of the network device. For redundancy, primary and secondary hub servers can be provided, wherein the primary and secondary hub servers communicate with each other and are capable of communicating with the remote server. For further redundancy, primary and secondary remote servers can be provided, wherein the primary and secondary remote servers communicate with each other but independently monitor the network devices. In the peered remote configuration, the hub server is capable of communicating with either of the remote servers. Where both the hub servers and the remote servers are peered, each hub server is capable of communicating with each remote server.

Claims (66)

1. A distributed network management system, comprising:

a selected network hub server for communicating with a plurality of remote network servers or with at least one network device;

each of said plurality of remote network servers for communicating with said at least one network device and said selected network hub server wherein each of said remote network servers derives state information from said network device by:

polling said at least one network device at a polling interval, wherein polling said at least one network device comprises:

sending a plurality of pings to an interface address on said at least one network device during said polling interval; and

monitoring a number of pings returned from said at least one network device and calculating a percentage based on the number of pings sent and said number of pings returned;

sending a query related to operational status to said at least one network device;

receiving a response regarding said operational status from said at least one network device, wherein receiving a response regarding said operational status from said at least one network device comprises:

receiving a response indicating whether said operational status is “up”, “down”, or “unknown”; and

generating a status percentage for the polling interval by multiplying the percentage pings returned by a constant value associated with said operational status, said constant value comprising a first value if the operational status is “up”, a second value if the operational status is “down”, and a third value if the operational status is “unknown”;

computing a weighted average over at least one said polling interval using results of said polling and said responses received from said at least one network device, wherein the weighted average is a representation of the state of said network device and wherein computing the weighted average comprises:

computing the weighted average of the status percentage for a current and at least one previous polling interval and determining the state of said at least one network device from the weighted average; and storing said weighted average.

2. The system as recited in claim 1 , wherein computing the weighted average further comprises:

computing the weighted averaged of the status percentage for a current and the previous four polling intervals and determining the state of said at least one network device from the weighted average.

3. The system as recited in claim 1 , wherein said selected network hub server derives state information from said at least one network device when said at least one remote network server is inoperable by:

polling said at least one network device at the polling interval, wherein polling said at least one network device by said selected network hub server comprises:

sending a plurality of pings to an interface address on said at least one network device during said polling interval; and

monitoring a number of pings returned from said at least one network device and calculating a percentage based on the number of pings sent and said number of pings returned;

sending a query related to operational status to said at least one network device;

receiving a response regarding said operational status from said at least one network device, wherein receiving a response regarding said operational status from said at least one network device comprises:

receiving a response indicating whether said operational status is “up”, “down”, or “unknown”; and

generating a status percentage for the polling interval by multiplying the percentage pings returned by a constant value associated with said operational status, said constant value comprising a first value if the operational status is “up”, a second value if the operational status is “down”, and a third value if the operational status is “unknown”;

computing the weighted average over at least one polling interval using results of said polling and said responses received from said at least one network device when said remote network server communicating with said at least one network device is inoperable, wherein the weighted average is a representation of the state of said network device and wherein computing the weighted average comprises:

computing the weighted average of the status percentage for a current and at least one previous polling interval and determining the state of said at least one network device from the weighted average; and storing said weighted average.

4. The system as recited in claim 3 , wherein computing the weighted average comprises:

computing a weighted average of the status percentage for a current and the previous four polling intervals and determining the state of said at least one network device from the weighted average.

5. The system recited in claim 1 , wherein said remote network server computes a weighted average by assigning a weight value to the status percentage to each of the previous four polling intervals, wherein the assigned weight is higher for the most recent polling interval and lower for the least recent polling interval.

6. A computer readable storage medium having a program for generating a source code object, the program comprising logic for executing an LTP paradigm, said LTP paradigm comprising the steps of:

defining a polling interval for at least one network device;

sending a plurality of pings to an interface address on said at least one network device during said polling interval;

monitoring a number of pings returned from said at least one network device and calculating a percentage based on the number of pings sent and said number of pings returned;

sending a query to said at least one network device and determining operational status of said at least one network device from said query based on a response from said at least one network device, said operational status comprising “up”, “down”, and “unknown”;

using the calculated percentage of pings returned and said status response, generating a status percentage for the polling period by multiplying the percentage pings returned by a constant value associated with said operational status, said constant value comprising a first value if the operational status is “up”, a second value if the operational status is “down”, and a third value if the operational status is “unknown”; and

computing a weighted average of the status percentages for current and previous four polling periods and determining the state of said at least one network device from the weighted average.

7. A system for deriving state information from a network device, comprising:

(a) a computer; and

(b) programming associated with said computer for carrying out the operations of

(i) defining a polling interval;

(ii) sending, from an ICMP server, a plurality of pings to an interface address on said network device during said polling interval;

(iii) monitoring the number of pings returned from said network device and converting said number to a percentage based on the number of pings sent;

(iv) sending an SNMP query to said network device and determining operational status of said network device from said SNMP query, said operational status comprising “up”, “down”, and “unknown”;

(v) using the percentage of pings returned and the SNMP status, generating a status percentage for the polling period by multiplying the percentage pings returned by a constant value associated with said operational status, said constant value comprising a first value if the operational status is “up”, a second value if the operational status is “down”, and a third value if the operational status is “unknown”; and

(vi) computing a weighted average of the status percentages for current and previous four polling periods and determining the state of the network device from the weighted average.

8. A method for deriving state information, comprising:

polling at least one network device at a polling interval, wherein polling said at least one network device comprises:

sending a plurality of pings to an interface address on each said at least one network device during said polling interval; and

monitoring a number of pings returned from said at least one network device and calculating a percentage based on the number of pings sent and said number returned;

sending a query related to operational status to said at least one network device;

receiving a response regarding said operational status from said at least one network device, wherein receiving a response regarding said operational status from said at least one network device comprises:

receiving a response indicating whether said operational status is “up”, “down”, or “unknown”; and

generating a status percentage for the polling interval by multiplying the percentage pings returned by a constant value associated with said operational status, said constant value comprising a first value if the operational status is “up”, a second value if the operational status is “down”, and a third value if the operational status is “unknown”;

computing a weighted average over at least one said polling interval using results of said polling and said responses received from said at least one network device, wherein the weighted average is a representation of the state of said at least one network device and wherein computing weighted average comprises:

computing the weighted average of the status percentage for at least one previous polling interval and determining the state of said at least one network device from the weighted average; and

storing said weighted average.

9. The method as recited in claim 8 , wherein computing the weighted average further comprises:

computing the weighted average of the status percentage for a current and the previous four polling intervals and determining the state of said at least one network device from the weighted average.

10. The method recited in claim 8 , wherein said computing a weighted average comprises assigning a weight value to the status percentage to each of the previous four polling intervals, wherein the assigned weight is higher for the most recent polling interval and lower for the least recent polling interval.

11. The method as recited in claim 8 , wherein said deriving state information is performed by a remote network server.

12. The method as recited in claim 8 , wherein said deriving state information is performed by a network hub server.

13. A method for deriving state information from a network device, comprising:

(a) defining a polling interval;

(b) sending, from an ICMP server, a plurality of pings to an interface address on said network device during said polling interval;

(c) monitoring the number of pings returned from said network device and converting said number to a percentage based on the number of pings sent;

(d) sending an SNMP query to said network device and determining operational status of said network device from said SNMP query, said operational status comprising “up”, “down”, and “unknown”;

(e) using the percentage of pings returned and the SNMP status, generating a status percentage for the polling period by multiplying the percentage pings returned by a constant value associated with said operational status, said constant value comprising a first value if the operational status is “up”, a second value if the operational status is “down”, and a third value if the operational status is “unknown”; and

(f) computing a weighted average of the status percentages for current and previous four polling periods and determining the state of the network device from the weighted average.

Assignments (13)
RELEASE OF SECURITY INTEREST Recorded May 10, 2022
From: WILMINGTON TRUST, NATIONAL ASSOCIATION
To: INTERNAP HOLDING LLC
Reel/Frame 059884/0443 →
SECURITY INTEREST Recorded Sep 27, 2021
From: INTERNAP HOLDING LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 057615/0812 →
CHANGE OF NAME Recorded Dec 29, 2020
From: INTERNAP CORPORATION
To: INTERNAP HOLDING LLC
Reel/Frame 054868/0048 →
RELEASE OF SECURITY INTEREST Recorded May 11, 2020
From: JEFFERIES FINANCE LLC
To: INTERNAP CORPORATION
Reel/Frame 052628/0018 →
SECURITY INTEREST Recorded May 8, 2020
From: INTERNAP HOLDING LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 052616/0515 →
RELEASE OF PATENT SECURITY AGREEMENT RECORDED AT REEL 044547/FRAME 0029 Recorded May 8, 2020
From: JEFFERIES FINANCE LLC
To: INTERNAP CORPORATION
Reel/Frame 052617/0103 →
SECURITY INTEREST Recorded Jan 5, 2018
From: INTERNAP CORPORATION
To: JEFFERIES FINANCE LLC
Reel/Frame 044547/0029 →
RELEASE OF SECURITY INTEREST Recorded Apr 7, 2017
From: JEFFERIES FINANCE LLC
To: INTERNAP CORPORATION
Reel/Frame 041929/0328 →
CHANGE OF NAME Recorded Feb 16, 2015
From: INTERNAP NETWORK SERVICES CORPORATION
To: INTERNAP CORPORATION
Reel/Frame 035000/0349 →
SECURITY AGREEMENT Recorded Dec 5, 2013
From: INTERNAP NETWORK SERVICES CORPORATION
To: JEFFERIES FINANCE LLC (AS COLLATERAL AGENT)
Reel/Frame 031765/0527 →
RELEASE OF SECURITY INTEREST Recorded Dec 4, 2013
From: WELLS FARGO CAPITAL FINANCE, LLC (AS AGENT)
To: INTERNAP NETWORK SERVICES CORPORATION
Reel/Frame 031710/0635 →
SECURITY AGREEMENT Recorded Nov 9, 2010
From: INTERNAP NETWORK SERVICES CORPORATION
To: WELLS FARGO CAPITAL FINANCE, LLC, AS AGENT
Reel/Frame 025337/0437 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 4, 2008
From: CARLSON, JOHN; HINDERLITER, TIM; METCALF, LEIGH
To: INTERNAP NETWORK SERVICES CORPORATION
Reel/Frame 021784/0158 →