IP Library Granted Patent US 12,149,441
Granted Patent B2
US 12,149,441 · App. 18/343,038 · Granted Nov 19, 2024

Determining flow paths of packets through nodes of a network

Inventors: Wenxuan Zhou (Mountain View, CA); Giri Prashanth Subramanian (Sunnyvale, CA)
Assignee: VMware LLC
H04L45/38H04L41/12H04L41/22H04L45/122H04L45/741H04L63/0245H04L2101/622
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 12,149,441
App. No.
18/343,038
Granted
Nov 19, 2024
Kind
B2
Abstract

A search engine queries a network model for behavior of the entire network, such as data flow, based on combinations of multiple network elements. The search engine provides the state information and/or predicted behavior of the network by searching network objects in a graph-based model or a network state database that satisfy constraints given in a search query. The search engine provides the state information and/or predicted behavior based on regular-expression or plain language search expressions that do not provide packet header information. The search engine parses such search expression into a sequence of atoms that encode forwarding paths of interest to the user. A flow path through the modeled network can be generated dynamically, within the context of the search queries.

Claims (26)

1. In a network of devices, a method of determining a flow path between two of the devices in response to a search query, said method comprising:

processing the search query into a plurality of atoms, the plurality of atoms including descriptors for network locations and an action constraint inferred from the descriptors;

extracting source and destination location information from network locations specified by the plurality of atoms in the search query;

determining a first subnet associated with the source location information and a second subnet associated with the destination location information;

upon determining that the first subnet and the second subnet are the same subnet, determining a first flow path between a first device associated with the source location information and a second device associated with the destination location information, using the destination location information and a MAC address of the second device; and

upon determining that the first subnet and the second subnet are not the same subnet, determining a second flow path between the first device and the second device using the destination location information and a MAC address of a gateway device of the first subnet;

wherein the steps of determining the first flow path and determining the second flow path comprise compiling the plurality of atoms into a state machine including a plurality of states and transitions between the plurality of states representing a regular expression of the descriptors and the action constraint.

2. The method of claim 1 , wherein

the source and destination location information includes at least one of an Internet protocol (IP) address, a media access control (MAC) address and a gateway address.

3. The method of claim 1 , wherein

the first flow path starts at the first device and ends with the second device and traverses a first set of devices and the second flow path starts at the second device and ends with the first device and traverses a second set of devices that are different from the first set of devices.

4. The method of claim 3 , wherein

the first set of devices and the second set of devices include a common device that changes state and a change in the state thereof causes the first flow path and the second flow path to traverse through different sets of devices.

5. A non-transitory computer readable medium comprising instructions which when executed in a computer system causes the computer system to carry out a method of determining a flow path between two of the devices in response to a search query, said method comprising:

processing the search query into a plurality of atoms, the plurality of atoms including descriptors for network locations and an action constraint inferred from the descriptors;

extracting source and destination location information from a network locations specified by the plurality of atoms in the search query;

determining a first subnet associated with the source location information and a second subnet associated with the destination location information;

upon determining that the first subnet and the second subnet are the same subnet, determining a first flow path between a first device associated with the source location information and a second device associated with the destination location information, using the destination location information and a MAC address of the second device; and

upon determining that the first subnet and the second subnet are not the same subnet, determining a second flow path between the first device and the second device using the destination location information and a MAC address of a gateway device of the first subnet;

wherein the steps of determining the first flow path and determining the second flow path comprise compiling the plurality of atoms into a state machine including a plurality of states and transitions between the plurality of states representing a regular expression of the descriptors and the action constraint.

6. The non-transitory computer readable medium of claim 5 , wherein

the source and destination location information includes at least one of an Internet protocol (IP) address, a media access control (MAC) address and a gateway address.

7. The non-transitory computer readable medium of claim 5 , wherein

the first flow path starts at the first device and ends with the second device and traverses a first set of devices and the second flow path starts at the second device and ends with the first device and traverses a second set of devices that are different from the first set of devices.

8. The non-transitory computer readable medium of claim 7 , wherein

the first set of devices and the second set of devices include a common device that changes state and a change in the state thereof causes the first flow path and the second flow path to traverse through different sets of devices.

Assignments (1)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0242 →
Continuity (2)
Division 16748660 · Jan 21, 2020
Related Publication 20230344755A1 · Oct 26, 2023