US 12,148,031 B2
System and method for TCP-to-multicast (T2M) communications and related network architecture
Bradley Katsuyama, Darien, CT (US); John Schwall, Staten Island, NY (US); Robert Park, New York, NY (US); Ronan Ryan, Morristown, NJ (US); Benjamin Aisen, New York, NY (US); Daniel Aisen, New York, NY (US); Donald Bollerman, Yonkers, NY (US); Francis Chung, New York, NY (US); Stanley Feldman, New York, NY (US); Tara McKee, New York, NY (US); Bilie Zhao, East Hanover, NJ (US); James Michael Cape, San Francisco, CA (US); David Lauer, Collingswood, NJ (US); Allen Zhang, Princeton, NJ (US); and Blair Livingston, Toronto (CA)
Assigned to IEX Group, Inc., New York, NY (US)
Filed by IEX Group, Inc., New York, NY (US)
Filed on Nov. 1, 2019, as Appl. No. 16/672,082.
Application 16/672,082 is a continuation of application No. 14/322,996, filed on Jul. 3, 2014, granted, now 10,467,694.
Application 14/322,996 is a continuation of application No. PCT/US2013/059558, filed on Sep. 12, 2013.
Claims priority of provisional application 61/876,200, filed on Sep. 10, 2013.
Claims priority of provisional application 61/758,508, filed on Jan. 30, 2013.
Claims priority of provisional application 61/753,857, filed on Jan. 17, 2013.
Claims priority of provisional application 61/700,094, filed on Sep. 12, 2012.
Prior Publication US 2020/0134721 A1, Apr. 30, 2020
Int. Cl. G06Q 40/00 (2023.01); G06Q 40/04 (2012.01); H04L 47/12 (2022.01)
CPC G06Q 40/04 (2013.01) [H04L 47/12 (2013.01)] 21 Claims
OG exemplary drawing
 
1. A computer system for TCP-to-multicast (T2M) communications in a computer network having a front-end server and a plurality of back-end servers services, the computer system being part of a marketplace for matching and executing orders to buy and sell securities, the computer system comprising:
at least one computer processor configured as part of the front-end server in the computer network;
at least one first communication interface operably coupled to the computer processor and configured for one-to-one communications with each of one or more client computers based on Transmission Control Protocol (TCP); and
at least one second communication interface operably coupled to the computer processor and the first communication interface and configured for one-to-many communications with the plurality of back-end servers, whereby a message corresponding to at least a portion of marketplace order information received from one of the one or more client computers via the at least one first communication interface is transmitted simultaneously, via the at least one second communication interface, to each of the plurality of back-end servers based on User Datagram Protocol (UDP), wherein the plurality of back-end servers are distinct from the front-end server in the computer system and provide processing or storage resources for processing or storing the message, wherein at least two back-end servers are configured to receive the message simultaneously,
wherein a number of the plurality of back-end servers is scaled independently from the front-end server based on a quantity of information received via the at least one first communication interface, and
wherein at least one of the back-end servers of the plurality of back-end servers is configured to perform an intermediate processing function different than another one of the plurality of back-end servers using the message, wherein the at least one back-end server is configured to receive the message and to:
modify the message to label the message with a message identifier, wherein the message identifier comprises a unique sequence or serial number associated with the message that serves as an order identifier to update a market state based on an order associated with the message;
transmit, via a multicast protocol, the modified message in parallel to a plurality of downstream client computers, the downstream client computers including at least one of the one or more client computers; and
display, using the order identifier, the modified message to indicate the market state across the computer system at a given time.