IP Library Granted Patent US 11,290,342
Granted Patent B2
US 11,290,342 · App. 16/437,805 · Granted Mar 29, 2022

System and method for simulating network events

Inventors: Michael Alan Dewar (Richmond, GB); Prina Rajendra Kumart Patel (Ealing, GB)
Assignee: VOCALINK LIMITED
H04L41/145G06F16/288G06Q20/023H04L41/12H04L43/02
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 11,290,342
App. No.
16/437,805
Granted
Mar 29, 2022
Kind
B2
Abstract

A network simulation system comprises a request processor and a simulation engine. The request processor receives node data indicative of resource levels of nodes of the network, and relationship data indicative of relationship parameters of a plurality of relationships between the nodes. The simulation engine outputs a stream of event data based on the relationship data. Respective events are generated by: determining source and destination nodes, and corresponding relationship parameters for the relationship between them; determining an event time based on a rate parameter of the corresponding relationship parameters; determining a transfer value; and if the transfer value does not exceed a current resource level of the source node, modifying current resource levels of the source and destination nodes according to the transfer value, and generating, at the event time, event data comprising a timestamp, a source node identifier of the source node, a destination node identifier of the destination node, and the transfer value.

Claims (51)

1. A system for simulating network events, comprising:

a user device;

a request processor of a network simulation system operably connected to the user device, wherein the request processor is configured to receive a request for network simulation data and to receive input data from the user device, the input data relating to user-defined modifications to a topology of a network, the input data comprising:

node data indicative of respective resource levels of a plurality of nodes of the network, and

relationship data indicative of respective relationship parameters of a plurality of relationships between at least some of the nodes, the relationship parameters including a rate parameter and a transfer value parameter; and

a simulation engine of the network simulation system operably connected to the request processor, wherein the simulation engine is configured to output a stream of event data to the request processor, the event data based on the relationship data, and wherein the simulation engine generates respective events of the stream of event data by:

determining a source node and a destination node, and corresponding relationship parameters for relationship between the source node and the destination node;

determining an event time based on the rate parameter of the corresponding relationship parameters;

determining a transfer value based on the transfer value parameter and a random sampling from a transfer value distribution;

responsive to a determination that the transfer value does not exceed a current resource level of the source node,

decrementing the current resource level of the source node by the transfer value,

incrementing a current resource level of the destination node by the transfer value, and

generating, at the event time, event data comprising a timestamp, a source node identifier of the source node, a destination node identifier of the destination node, and the transfer value;

spawning an event generation process for each of the plurality of relationships, wherein respective event generation processes are configured to generate events for respective relationships;

transmitting update data to at least some of the event generation processes based on the user-defined modifications;

spawning at least one additional event generation process based on the update data; and

streaming, by the request processor, the event data to the user device.

2. The network simulation system according to claim 1 , wherein the simulation engine is configured to add or remove nodes, and/or add or remove relationships between nodes, and/or modify one or more of the relationship parameters.

3. The network simulation system according to claim 1 , wherein the simulation engine is configured to sample the event time from a Poisson distribution having the rate parameter.

4. The network simulation system according to claim 1 , wherein the rate parameter is time-dependent.

5. A network event simulation process, comprising:

receiving, by a network simulation system comprising a request processor and a simulation engine, a request for network simulation data and input data from a user device, the input data relating to user-defined modifications to a topology of a network, the input data comprising node data indicative of respective resource levels of a plurality of nodes of the network, and relationship data indicative of respective relationship parameters of a plurality of relationships between at least some of the nodes, the relationship parameters including a rate parameter and a transfer value parameter;

generating, by the simulation engine of the network simulation system, a stream of event data based on the relationship data, wherein respective events of the stream of event data are generated by:

determining a source node and a destination node, and corresponding relationship parameters for relationship between the source node and the destination node;

determining an event time based on the rate parameter of the corresponding relationship parameters;

determining a transfer value based on the transfer value parameter and a random sampling from a transfer value distribution;

responsive to a determination that the transfer value does not exceed a current resource level of the source node,

decrementing the current resource level of the source node by the transfer value,

incrementing a current resource level of the destination node by the transfer value,

generating, at the event time, event data comprising a timestamp, a source node identifier of the source node, a destination node identifier of the destination node, and the transfer value;

spawning an event generation process for each of the plurality of relationships, wherein respective event generation processes are configured to generate events for respective relationships;

transmitting update data to at least some of the event generation processes based on the user-defined modifications;

spawning at least one additional event generation process based on the update data; and

streaming, by the request processor of the network simulation system, the event data to the user device.

6. The network simulation process according to claim 5 , wherein the data relating to user-defined modifications comprises data indicating addition or removal of nodes, and/or addition or removal of relationships between nodes, and/or modification of one or more of the relationship parameters.

7. The network simulation process according to claim 5 , wherein the event time is sampled from a Poisson distribution having the rate parameter.

8. The network simulation process according to claim 5 , wherein the rate parameter is time-dependent.

9. A non-transitory computer-readable medium having instructions stored thereon which, when executed, cause at least one processor to:

receive a request for network simulation data and input data from a user device relating to user-defined modifications to a topology of a network, the input data comprising node data indicative of respective resource levels of a plurality of nodes of the network, and relationship data indicative of respective relationship parameters of a plurality of relationships between at least some of the nodes, the relationship parameters including a rate parameter and a transfer value parameter;

generate a stream of event data based on the relationship data, wherein respective events of the stream of event data are generated by:

determining a source node and a destination node, and corresponding relationship parameters for relationship between the source node and the destination node;

determining an event time based on the rate parameter of the corresponding relationship parameters;

determining a transfer value based on the transfer value parameter and a random sampling from a transfer value distribution;

responsive to a determination that the transfer value does not exceed a current resource level of the source node,

decrementing the current resource level of the source node by the transfer value,

incrementing a current resource level of the destination node by the transfer value, and

generating, at the event time, event data comprising a timestamp, a source node identifier of the source node, a destination node identifier of the destination node, and the transfer value;

spawning an event generation process for each of the plurality of relationships, wherein respective event generation processes are configured to generate events for respective relationships;

transmitting update data to at least some of the event generation processes based on the user-defined modifications;

spawning at least one additional event generation process based on the update data; and

stream the event data to the user device.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 6, 2023
From: VOCALINK LIMITED
To: VOCALINK INTERNATIONAL LIMITED
Reel/Frame 062594/0162 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 6, 2023
From: VOCALINK LIMITED
To: VOCALINK INTERNATIONAL LIMITED
Reel/Frame 062605/0360 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 11, 2019
From: DEWAR, MICHAEL ALAN; PATEL, PRINA RAJENDRA KUMAR
To: VOCALINK LIMITED
Reel/Frame 049435/0673 →
Priority Claims (1)
EP 18177668 · Jun 14, 2018 · regional
Continuity (1)
Related Publication 20190386888A1 · Dec 19, 2019