IP Library › Granted Patent US 10,664,912
Granted Patent B2
US 10,664,912 · App. 15/908,543 · Granted May 26, 2020

Synchronized processing of data by networked computing resources

Inventors: Daniel Aisen (Montreal, CA); Bradley Katsuyama (Montreal, CA); Robert Park (Montreal, CA); John Schwall (Montreal, CA); Richard Steiner (Montreal, CA); Allen Zhang (Montreal, CA); Thomas L. Popejoy (Montreal, CA)
Assignee: ROYAL BANK OF CANADA
G06Q40/04H04L67/1095H04L67/325H04L45/22
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 10,664,912
App. No.
15/908,543
Filed
Feb 28, 2018
Granted
May 26, 2020
Kind
B2
Art Unit
2444
USPC
705/37
Abstract

Systems 100, 1000 , methods, and machine-interpretable programming or other instruction products for the management of data transmission by multiple networked computing resources 106, 1106 . In particular, the disclosure relates to the synchronization of related requests for transmitting data using distributed network resources.

Claims (48)

1. A system for coordinating transmission of one or more data sets comprising market data to a plurality of subscribers, the system comprising at least one processor configured to:

parse source instructions to prepare signals representing instructions for execution of at least a portion of a data process executable by a plurality of networked computing resources, the data process including one or more data sets comprising information content and one or more networking parameters for communicating the information content from one or more computer systems associated with one or more of the subscribers associated with respective networked computing resources;

associate, with the signals representing the instructions for execution of at least a portion of the data process, at least one timing parameter determined at least partly using one or more latencies associated with execution of signal processing requests by at least one of the networked computing resources; and

route, in accordance with a timing sequence, the signals representing instructions for execution of a portion of the data process to a networked computer resource;

wherein the timing sequence for routing the signals is based on the at least one associated timing parameter so as to cause synchronized arrival or execution of signals representing instructions for execution of the portion of the data process at the networked computer resource with other portions of the proposed transaction at one or more other networked computing resources.

2. The system of claim 1 , wherein the at least one timing parameter is determined based at least partly on at least one of:

dynamically-monitored latency in execution of signal processing requests routed to at least one of the plurality of networked computing resources;

statistical latency in execution of signal processing requests routed to the at least one of the plurality of networked computing resources;

historical latency in execution of signal processing requests routed to the at least one of the plurality of networked computing resources; and

predictive latency in execution of signal processing requests routed to the at least one of the plurality of networked execution processors.

3. The system of claim 1 , wherein the information content includes market data.

4. The system of claim 1 , wherein each of the plurality of subscribers is associated with a tier; and wherein the timing sequence is based on the at least one associated timing parameter so as to cause the synchronized arrival or execution of the signals representing the instructions for execution of the portion of the data process at networked computer resources associated with subscribers in the same tier.

5. The system of claim 1 , wherein the timing sequence is determined such that the synchronized arrival or execution

is simultaneous; or

is according to: a non-simultaneous sequence, or a determined relative timing.

6. The system of claim 1 , wherein the timing sequence is determined based on the at least one associated timing parameter so as to cause synchronized arrival or execution of: the start of the one or more data sets, the end of the one or more data sets, or a desired portion of the one or more data sets.

7. The system of claim 1 , wherein the source instructions are based on parameters defining at least one of:

a time at which the signals representing instructions for execution of a portion of the data process to a networked computer resource are routed; and

a frequency at which the signals representing instructions for execution of a portion of the data process to a networked computer resource are routed.

8. The system of claim 1 , wherein the at least one processor is configured to receive signals from at least one of the plurality of networked computing resources to detect whether the at least one of the plurality of networked computing resources is manipulating network latency data.

9. The system of claim 1 , wherein the at least one timing parameter is determined based at least partly on at least one of: communication delay; processing delay, or a latency probability model.

10. The system of claim 1 , wherein the financial interests include at least one of commodities, currency interests, equity interests, non-equity interests, or derivatives thereof.

11. A method performed by at least one data processor executing machine-interpretable instructions configured to cause the at least one processor to:

parse source instructions to prepare signals representing instructions for execution of at least a portion of a data process executable by a plurality of networked computing resources, the data process including one or more data sets comprising information content;

associate, with the signals representing the instructions for execution of at least a portion of the data process, at least one timing parameter determined at least partly using one or more latencies associated with execution of signal processing requests by at least one of the networked computing resources; and

route, in accordance with a timing sequence, the signals representing instructions for execution of a portion of the one or more proposed transactions to a networked computer resource;

wherein the timing sequence for routing the signals is based on the at least one associated timing parameter so as to cause synchronized arrival or execution of signals representing instructions for execution of the portion of the one or more proposed transactions at the networked computer resource with other portions of the proposed transaction at one or more other networked computing resources.

12. The method of claim 11 , wherein the at least one timing parameter is determined based at least partly on at least one of:

dynamically-monitored latency in execution of signal processing requests routed to at least one of the plurality of networked computing resources;

statistical latency in execution of signal processing requests routed to the at least one of the plurality of networked computing resources;

historical latency in execution of signal processing requests routed to the at least one of the plurality of networked computing resources; and

predictive latency in execution of signal processing requests routed to the at least one of the plurality of networked execution processors.

13. The method of claim 11 , wherein the information content includes market data.

14. The method of claim 11 , wherein each of the plurality of subscribers is associated with a tier; and wherein the timing sequence is based on the at least one associated timing parameter so as to cause the synchronized arrival or execution of the signals representing the instructions for execution of the portion of the data process at networked computer resources associated with subscribers in the same tier.

15. The method of claim 11 , wherein the timing sequence is determined such that the synchronized arrival or execution

is simultaneous; or

is according to: a non-simultaneous sequence, or a determined relative timing.

16. The method of claim 11 , wherein the timing sequence is determined based on the at least one associated timing parameter so as to cause synchronized arrival or execution of: the start of the one or more data sets, the end of the one or more data sets, or a desired portion of the one or more data sets.

17. The method of claim 11 , wherein the source instructions are based on parameters defining at least one of:

a time at which the signals representing instructions for execution of a portion of the data process to a networked computer resource are routed; and

a frequency at which the signals representing instructions for execution of a portion of the data process to a networked computer resource are routed.

18. The method of claim 11 , comprising receiving signals from at least one of the plurality of networked computing resources to detect whether the at least one of the plurality of networked computing resources is manipulating network latency data.

19. The method of claim 11 , wherein the financial interests include at least one of commodities, currency interests, equity interests, non-equity interests, or derivatives thereof.

20. A computer-readable medium or media comprising non-transient machine-readable programming structures configured to cause at least one processor to:

parse source instructions to prepare signals representing instructions for execution of at least a portion of a data process executable by a plurality of networked computing resources, the data process including one or more data sets comprising information content;

associate, with the signals representing the instructions for execution of at least a portion of the data process, at least one timing parameter determined at least partly using one or more latencies associated with execution of signal processing requests by at least one of the networked computing resources; and

route, in accordance with a timing sequence, the signals representing instructions for execution of a portion of the one or more proposed transactions to a networked computer resource;

wherein the timing sequence for routing the signals is based on the at least one associated timing parameter so as to cause synchronized arrival or execution of signals representing instructions for execution of the portion of the one or more proposed transactions at the networked computer resource with other portions of the proposed transaction at one or more other networked computing resources.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 2, 2018
From: PARK, ROBERT; KATSUYAMA, BRADLEY; STEINER, RICHARD; AISEN, DANIEL; ZHANG, ALLEN; SCHWALL, JOHN; POPEJOY, THOMAS L.
To: ROYAL BANK OF CANADA
Reel/Frame 045087/0114 →
Continuity (6)
Continuation 14565043 · Dec 9, 2014
Continuation In Part 12796139 · Jun 8, 2010
Continuation In Part 13941513 · Jul 14, 2013
Continuation 12796139 · Jun 8, 2010
Provisional Application 61285375 · Dec 10, 2009
Related Publication 20180189882A1 · Jul 5, 2018