IP Library Granted Patent US 9,935,858
Granted Patent B1
US 9,935,858 · App. 14/834,424 · Granted Apr 3, 2018

Enhanched flow processing

Inventors: Derek Sanders (Saratoga, CA); Rosanna Lee (Palo Alto, CA); Rangaswamy Jaganathan (Sunnyvale, CA)
Assignee: Xangati, Inc
H04L43/0876H04L43/062H04L43/024H04L43/0882H04L43/103
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 9,935,858
App. No.
14/834,424
Granted
Apr 3, 2018
Kind
B1
Abstract

A network monitoring device responds to a network status data (whether “pushed” from the network device or “pulled” from the network device), maintaining a buffer of saved status data. The status data is reordered, manipulated, and presented to users in order. The monitoring device can thus report an accurate momentary report of the status of the network environment. When status data is delayed too long, the monitoring device can discard it, or reduce its weighted consideration. The monitoring device adjusts its wait for status data, either as an average or individually per device, attempting to balance accuracy and latency. The monitoring device also records of how much status data it is required to process, in response to the amount it can process reliably, and maintains a sampling rate for status data, somewhere between evaluating all of the status data, and evaluating only a small portion of the status data, when capable, attempting to balance the degree of sampling, against both error and latency.

Claims (47)

1. A method, including steps of

coupling a network monitoring device to a dynamic network environment, the network monitoring device including:

a buffer of saved data entries responsive to status of the network environment, the data in those data entries having been received from the network, the data entries having been reordered so that their order in the buffer differs from the order they were received,

a record of delay associated with the data entries, the record of delay being sufficient to allow the network monitoring device to determine an amount of weight to give to the data to balance accuracy and latency of reports on status of the network environment,

a record of amount of data the network monitoring device is able to process reliably, the record of an amount being sufficient to allow the network monitoring device to maintain a sampling rate to balance projected accuracy and latency of reports on status of the network environment;

determining a projected accuracy of reports on status of the network environment in response to a rate of receiving information from the network environment, the rate of receiving information being in response to a statistical measure of experience with data from the network environment;

processing the record of delay and the record of amount of data, wherein accuracy and latency of reports on status of the network environment are balanced in accordance with one or more parameters set by an operator of the network monitoring device;

adjusting one or more of: a size of the buffer, a rate of receiving data from the dynamic network environment, a rate of requesting data from the dynamic network environment, to provide an amount of data to be considered, wherein the amount of data to be considered is dynamically adjusted in response to changes in the network environment; and

dynamically adjusting one or more of: the amount of weight to give to the data, the sampling rate, the amount of data to be considered, adjusted in response to changes in the dynamic network environment, wherein accuracy and latency of reports on a status of the network environment are balanced in accordance with one or more parameters set by an operator of the network monitoring device;

wherein the network monitoring device gives more or less weight to more recent data from the network environment, the network environment provides more or less data to the network monitoring device, in response to activity of the network environment.

2. The method as in claim 1 , including steps of

receiving the data entries in a first format; and

converting the data entries from the first format to a second format.

3. The method as in claim 1 , wherein

the network monitoring device receives data from the network environment in message packets.

4. The method as in claim 1 , wherein

at least some of the data entries received from the network indicate data that is unclear or unknown.

5. The method as in claim 1 , wherein

at least some of the data received from the network is fuzzy data or probabilistic data.

6. The method as in claim 1 , wherein

the buffer includes at least one of: a tree structure, a directed graph structure, a lattice structure, another hierarchical data structure.

7. The method as in claim 1 , wherein

the data entries can indicate one or more of: processing capacity, memory capacity, storage capacity, network activity, or other activity or capability of a selected network device.

8. The method as in claim 1 , wherein

the data received from the network includes status data maintained in a shared memory accessible both by the network monitoring device and by one or more devices in the dynamic network environment.

9. The method as in claim 1 , wherein

the data received from the network includes status data maintained with respect to one or more of:

a selected subset of devices in the dynamic network environment, a selected subset of endpoints of traffic in the dynamic network environment, a selected subset of virtual machine applications in the dynamic network environment, a selected subset of virtual machines in the dynamic network environment, or another selected subset of activity in the dynamic network environment.

10. The method as in claim 1 , wherein

the data received from the network includes:

status data send from first devices in the dynamic network environment is sent to the network monitoring device at the initiative of those first devices; and

status data send from second devices in the dynamic network environment is sent to the network monitoring device in response to a request by the network monitoring device to those second devices.

11. The method as in claim 10 , wherein

one or more requests from the network monitoring device to those second devices is sent to those second devices in a round-robin fashion.

12. The method as in claim 1 , wherein

the network monitoring device receives data from the network environment in message packets.

13. A system including

a network monitoring device disposed to be coupled to a dynamic network environment, the network monitoring device including:

a buffer of saved data entries responsive to status of the network environment, the data in those data entries having been received from the network, the data entries having been reordered so that their order in the buffer differs from the order they were received,

a record of delay associated with the data entries, the record of delay being sufficient to allow the network monitoring device to determine an amount of weight to give to the data to balance accuracy and latency of reports on status of the network environment,

a record of amount of data the network monitoring device is able to process reliably, the record of an amount being sufficient to allow the network monitoring device to maintain a sampling rate to balance projected accuracy and latency of reports on status of the network environment,

instructions directing a computing device to perform one or more steps of:

determining a projected accuracy of reports on status of the network environment in response to a rate of receiving information from the network environment, the rate of receiving information being in response to a statistical measure of experience with data from the network environment;

processing the record of delay and the record of amount of data, wherein accuracy and latency of reports on status of the network environment are balanced in accordance with one or more parameters set by an operator of the network monitoring device;

adjusting one or more of: a size of the buffer, a rate of receiving data from the dynamic network environment, a rate of requesting data from the dynamic network environment, to provide an amount of data to be considered, wherein the amount of data to be considered is dynamically adjusted in response to changes in the network environment; and

dynamically adjusting one or more of: the amount of weight to give to the data, the sampling rate, the amount of data to be considered, adjusted in response to changes in the dynamic network environment, wherein accuracy and latency of reports on a status of the network environment are balanced in accordance with one or more parameters set by an operator of the network monitoring device;

wherein the network monitoring device gives more or less weight to more recent data from the network environment, the network environment provides more or less data to the network monitoring device, in response to activity of the network environment.

Assignments (10)
RELEASE OF SECURITY INTEREST Recorded Jan 13, 2022
From: TRIPLEPOINT VENTURE GROWTH BDC CORP., AS THE SECURED PARTY
To: VIRTUAL INSTRUMENTS WORLDWIDE, INC. F/K/A LOAD DYNAMIX, INC.
Reel/Frame 058652/0332 →
RELEASE OF SECURITY INTEREST Recorded Jan 10, 2022
From: WESTERN ALLIANCE BANK
To: XANGATI, INC.
Reel/Frame 058612/0658 →
SECURITY INTEREST Recorded Jan 10, 2022
From: VIRTUAL INSTRUMENTS CORPORATION; VIRTUAL INSTRUMENTS WORLDWIDE, INC.; XANGATI, INC.
To: MIDTOWN MADISON MANAGEMENT LLC
Reel/Frame 058668/0268 →
RELEASE OF SECURITY INTEREST Recorded Jan 10, 2022
From: WESTERN ALLIANCE BANK
To: VIRTUAL INSTRUMENTS WORLDWIDE, INC.
Reel/Frame 058612/0102 →
NUNC PRO TUNC ASSIGNMENT Recorded Nov 10, 2020
From: SANDERS, DEREK; JAGANNATHAN, RANGASWAMY; LEE, ROSANNA
To: XANGATI, INC.
Reel/Frame 054329/0135 →
SECURITY INTEREST Recorded Oct 10, 2018
From: VIRTUAL INSTRUMENTS WORLDWIDE, INC.
To: WESTERN ALLIANCE BANK
Reel/Frame 047127/0767 →
SECURITY INTEREST Recorded Sep 21, 2018
From: VIRTUAL INSTRUMENTS CORPORATION; VIRTUAL INSTRUMENTS USA, INC.; XANGATI, INC.; VIRTUAL INSTRUMENTS WORLDWIDE, INC.
To: TRIPLEPOINT VENTURE GROWTH BDC CORP.
Reel/Frame 046941/0930 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 20, 2018
From: XANGATI INC
To: VIRTUAL INSTRUMENTS WORLDWIDE, INC
Reel/Frame 046151/0755 →
SECURITY INTEREST Recorded Oct 12, 2016
From: XANGATI, INC.
To: TRIPLEPOINT VENTURE GROWTH BDC CORP.
Reel/Frame 039995/0825 →
SECURITY INTEREST Recorded Oct 11, 2016
From: XANGATI, INC.
To: WESTERN ALLIANCE BANK
Reel/Frame 039989/0821 →