IP Library › Granted Patent US 9,940,670
Granted Patent B2
US 9,940,670 · App. 14/565,043 · Granted Apr 10, 2018

Synchronized processing of data by networked computing resources

Inventors: Daniel Aisen (New York, NY); Bradley Katsuyama (New York, NY); Robert Park (New York, NY); John Schwall (New York, NY); Richard Steiner (Wyckoff, NJ); Allen Zhang (Princeton, NJ); Thomas L. Popejoy (New York, NY)
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 9,940,670
App. No.
14/565,043
Filed
Dec 9, 2014
Granted
Apr 10, 2018
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 (44)

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 market data and information content and one or more networking parameters for communicating the market data and 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

using the at least one associated timing parameter, 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 dynamically-monitored latency in execution of signal processing requests routed to at least one of the plurality of networked computing resources.

3. The system of claim 1 , wherein the at least one timing parameter is determined based at least partly on statistical latency in execution of signal processing requests routed to at least one of the plurality of networked computing resources.

4. The system of claim 1 , wherein the at least one timing parameter is determined based at least partly on historical latency in execution of signal processing requests routed to at least one of the plurality of networked computing resources.

5. The system of claim 1 , wherein the at least one timing parameter is determined based at least partly on predictive latency in execution of signal processing requests routed to at least one of the plurality of networked execution processors.

6. The system of claim 1 , wherein the at least one timing parameter is determined such that the synchronized arrival or execution is simultaneous.

7. The system of claim 1 , wherein the at least one timing parameter is determined such that the synchronized arrival or execution is according to a non-simultaneous sequence.

8. The system of claim 1 , wherein the at least one timing parameter is determined such that the synchronized arrival or execution is according to a determined relative timing.

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 or processing delay.

10. The system of claim 1 , wherein the at least one timing parameter is determined based at least partly on a latency probability model.

11. The system of claim 1 , wherein the financial interests include at least one of commodities or currency interests.

12. The device of claim 1 , wherein the financial interests include at least one of equity or non-equity interests, or derivatives thereof.

13. 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 market data and 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 routine 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.

14. The method of claim 13 , wherein the at least one timing parameter is determined based at least partly on dynamically-monitored latency in execution of signal processing requests routed to at least one of the plurality of networked computing resources.

15. The method of claim 13 , wherein the at least one timing parameter is determined based at least partly on statistical latency in execution of signal processing requests routed to at least one of the plurality of networked computing resources.

16. The method of claim 13 , wherein the at least one timing parameter is determined based at least partly on historical latency in execution of signal processing requests routed to at least one of the plurality of networked computing resources.

17. The method of claim 13 , wherein the at least one timing parameter is determined based at least partly on predictive latency in execution of signal processing requests routed to at least one of the plurality of networked computing resources.

18. The method of claim 13 , wherein the at least one timing parameter is determined such that the synchronized arrival or execution is simultaneous.

19. The method of claim 13 , wherein the at least one timing parameter is determined such that the synchronized arrival or execution is according to a non-simultaneous sequence.

20. The method of claim 13 , wherein the at least one timing parameter is determined such that the synchronized arrival or execution is according to a determined relative timing.

21. 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 market data and 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.

22. The medium or media of claim 21 , wherein the at least one timing parameter is determined based at least partly on dynamically-monitored latency in execution of signal processing requests routed to at least one of the plurality of networked computing resources.

23. The medium or media of claim 21 , wherein the at least one timing parameter is determined based at least partly on statistical latency in execution of signal processing requests routed to at least one of the plurality of networked computing resources.

24. The medium or media of claim 21 , wherein the at least one timing parameter is determined based at least partly on historical latency in execution of signal processing requests routed to at least one of the plurality of networked computing resources.

25. The medium or media of claim 21 , wherein the at least one timing parameter is determined based at least partly on predictive latency in execution of signal processing requests routed to at least one of the plurality of networked computing resources.

26. The medium or media of claim 21 , wherein the at least one timing parameter is determined such that the synchronized arrival or execution is simultaneous.

27. The medium or media of claim 21 , wherein the at least one timing parameter is determined such that the synchronized arrival or execution is according to a non-simultaneous sequence.

28. The medium or media of claim 21 , wherein the at least one timing parameter is determined such that the synchronized arrival or execution is according to a determined relative timing.

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

generate signals representing a plurality of data processing segments, each data processing segment representing instructions for transmission of a portion of a data process executable by a plurality of networked computing resources;

based at least partly on latencies in execution of prior data processing requests routed to each of the plurality of networked computing resources, determine a timing sequence for routing the plurality of data processing segments, the timing sequence determined to cause synchronized receipt of the plurality of data processing segments by the plurality of networked computing resources; and

route the plurality of data processing segments to the plurality of corresponding networked execution processors in accordance with the timing sequence.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: PARK, ROBERT; KATSUYAMA, BRADLEY; STEINER, RICHARD; AISEN, DANIEL; ZHANG, ALLEN; SCHWALL, JOHN; POPEJOY, THOMAS L
To: ROYAL BANK OF CANADA
Reel/Frame 034442/0308 →
Continuity (5)
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 20150088726A1 · Mar 26, 2015