`
`IN THE UNITED STATES DISTRICT COURT
`FOR THE DISTRICT OF DELAWARE
`
`C.A. No. 16-453 (RGA)
`
`C.A. No. 16-454 (RGA)
`
`C.A. No. 16-455 (RGA)
`
`)))))))))
`
`))))))))) )))))))))))
`
`ACCELERATION BAY LLC,
`
`Plaintiff,
`
`v.
`
`ACTIVISION BLIZZARD, INC.,
`
`Defendant.
`ACCELERATION BAY LLC,
`
`Plaintiff,
`
`v.
`
`ELECTRONIC ARTS INC.,
`
`Defendant.
`ACCELERATION BAY LLC,
`
`Plaintiff,
`
`v.
`
`TAKE-TWO INTERACTIVE SOFTWARE,
`INC., ROCKSTAR GAMES, INC. and
`2K SPORTS, INC.,
`
`Defendants.
`
`DECLARATION OF MICHAEL GOODRICH, Ph.D. IN SUPPORT OF
`PLAINTIFF ACCELERATION BAY LLC’S ANSWERING BRIEF
`IN OPPOSITION TO DEFENDANTS’ MOTION TO DISMISS
`REGARDING U.S. PATENT NOS. 6,701,344, 6,714,966 AND 6,829,634
`
`
`
`Case 1:16-cv-00455-RGA Document 32 Filed 10/21/16 Page 2 of 32 PageID #: 1767
`
`I, Michael Goodrich, Ph.D., declare as follows:
`
`1.
`
`I have been asked by Plaintiff Acceleration Bay LLC (“Acceleration Bay”) to
`
`testify as an expert witness in the above referenced actions. As part of my work in these actions
`
`and in support of Acceleration Bay’s Opposition to Defendants Activision Blizzard, Inc.,
`
`Electronic Arts Inc. and Take-Two Interactive Software, Inc. (collectively, “Defendants”)
`
`Motion to Dismiss Regarding U.S. Patent Nos. 6,701,344, 6,714,966 and 6,829,634 (“Motion”),
`
`I have been asked by Acceleration Bay to offer an opinion as to whether Acceleration Bay’s U.S.
`
`Patent Nos. 6,701,344 (“’344 Patent”), 6,714,966 (“’966 Patent”) and 6,829,634 (“’634 Patent”)
`
`(collectively, the “Asserted Patents”) meet the requirements for patent eligibility under 35 U.S.C.
`
`§ 101. It is my opinion that they do.
`
`I.
`
`EXPERIENCE AND QUALIFICATIONS
`
`A.
`
`2.
`
`Curriculum Vitae
`
`I received a Bachelor of Arts (“BA”) degree in Mathematics and Computer
`
`Science from Calvin College in 1983 and a PhD in Computer Sciences from Purdue University
`
`in 1987.
`
`3.
`
`I am a Chancellor’s Professor in the Department of Computer Science at the
`
`University of California, Irvine, where I have been a faculty member since 2001. The
`
`Chancellor's Professor title at University of California, Irvine is designed for persons who have
`
`earned the title of Professor and who have demonstrated unusual academic merit and whose
`
`continued promise for scholarly achievement is unusually high. In addition, I am Technical
`
`Director for the Center for Algorithms and Theory of Computation in the Donald Bren School of
`
`Information and Computer Sciences at University of California, Irvine. I was a professor in the
`
`Department of Computer Science at Johns Hopkins University from 1987-2001.
`
`1
`
`
`
`Case 1:16-cv-00455-RGA Document 32 Filed 10/21/16 Page 3 of 32 PageID #: 1768
`
`4.
`
`I have authored or coauthored over 300 publications, including several widely
`
`adopted books, such as Introduction to Computer Security and Algorithm Design and
`
`Applications. My research includes contributions to data structures and algorithms, information
`
`security and privacy, networking, graph algorithms, computational geometry, distributed and
`
`parallel algorithms, and cloud security. My research is supported by grants from the Defense
`
`Advanced Research Projects Agency (DARPA) and the National Science Foundation (NSF).
`
`5.
`
`In addition, I have consulting experience in matters involving algorithms,
`
`cryptography, machine learning, digital rights management, computer security, networking,
`
`software, and storage technologies.
`
`6.
`
`I am an ACM Distinguished Scientist, a Fellow of the American Association for
`
`the Advancement of Science (AAAS), a Fulbright Scholar, a Fellow of the Institute of Electrical
`
`and Electronics Engineers (IEEE), and a Fellow of the Association for Computing Machinery
`
`(ACM). I am also a recipient of the IEEE Computer Society Technical Achievement Award and
`
`the Pond Award for Excellence in Undergraduate Teaching.
`
`7.
`
`Attached hereto as Exhibit A to this Declaration is a true and correct copy of my
`
`curriculum vitae.
`
`II.
`
`MATERIALS CONSIDERED
`
`8.
`
`My opinions, expressed herein, are based on information I have reviewed to date
`
`including the materials and exhibits referenced in this Declaration, and are based on my
`
`knowledge and experience in the fields of computer and network security and network
`
`optimization. I reserve the right to amend or supplement information included in this
`
`Declaration, as appropriate, after considering the opinions set forth in any declarations or reports
`
`2
`
`
`
`Case 1:16-cv-00455-RGA Document 32 Filed 10/21/16 Page 4 of 32 PageID #: 1769
`
`submitted by the retained experts of Defendants or any additional information produced by
`
`Defendants after the date of this Declaration.
`
`9.
`
`In the process of forming my opinions, I have reviewed and considered various
`
`documents and items including, but not limited to: the Asserted Patents, the file histories of the
`
`Asserted Patents and Defendants’ Motion, along with its exhibits.
`
`III.
`
`SUMMARY OF OPINIONS
`
`10.
`
`I have been asked by counsel for Acceleration Bay to consider if all of the claims
`
`of the ‘344 and ‘966 Patents and claims 1-18 of the ‘634 Patent (together, the “Broadcast
`
`Claims”1) meet the requirements for Patent Eligibility under 35 U.S.C. § 101. Specifically, I was
`
`asked to respond to several technical arguments made by Defendants in their Motion. After
`
`reviewing Defendants’ Motion and the Broadcast Claims, it is my opinion that the Broadcast
`
`Claims meet the requirements for Patent Eligibility under 35 U.S.C. § 101 and that Defendants’
`
`arguments are technically unsound.
`
`11.
`
`Defendants’ Motion takes isolated words from the Broadcast Claims out of
`
`context, rather than reviewing the claims in their entirety, overgeneralizing the claims and
`
`ignoring the actual limitations. In essence, they are modifying the claim language to derive
`
`incorrect conclusions about the Broadcast Claims. It is my opinion that the Broadcast Claims
`
`present a concrete solution to a technical problem in the computer field and clearly provide an
`
`improvement in the distribution of data in computer networks between large numbers of
`
`geographically dispersed participants.
`
`1 I understand that Defendants refer to the claims as the “Broadcast Claims.” For consistency, I
`utilize the same terminology here. However, there are important differences between the various
`Broadcast Claims, as I discuss in this Declaration.
`
`3
`
`
`
`Case 1:16-cv-00455-RGA Document 32 Filed 10/21/16 Page 5 of 32 PageID #: 1770
`
`IV.
`
`LEGAL STANDARDS
`
`12.
`
`Counsel for Acceleration Bay have informed me of the following legal standards
`
`that I have used as a framework in forming my opinion contained here.
`
`A.
`
`13.
`
`Patent Eligible Subject Matter
`
`I have been informed and I understand that patent law requires that claimed
`
`subject matter must cover a process, machine, manufacture, or composition of matter, or any new
`
`and useful improvement thereof. I have also been advised and understand that Supreme Court
`
`jurisprudence recognizes three exceptions that are not patentable: laws of nature, natural
`
`phenomena, and abstract ideas. I understand that abstract ideas, as defined in patent law, include
`
`fundamental, longstanding economic practices within the industry.
`
`14.
`
`In analyzing subject matter eligibility, I have been informed and understand that
`
`the inquiry is assessed using a two-part test. First, one asks if the claim is “directed to” an
`
`abstract idea. Second, if the claim is directed to an abstract idea, then the question becomes
`
`whether the claims recite “significantly more” than the abstract idea.
`
`15.
`
`I have been informed and understand that the Supreme Court has identified a
`
`number of considerations for determining whether a claim amounts to significantly more than an
`
`abstract idea. For example, I have been informed that claims that recite improvements to another
`
`technology or technical field, that add a specific limitation other than what is well understood,
`
`routine and conventional in the field, or that add unconventional steps that confine the claim to a
`
`particular useful application may be patent eligible. Patent claims are not abstract if they are
`
`directed to an actual and concretely defined solution to a problem, rather than effectively
`
`covering a problem-to-be-solved, thereby avoiding broadly preempting a field.
`
`4
`
`
`
`Case 1:16-cv-00455-RGA Document 32 Filed 10/21/16 Page 6 of 32 PageID #: 1771
`
`16.
`
`I have been further informed and understand that an inventive concept can be
`
`found in the non-conventional and non-generic arrangement of known, conventional pieces.
`
`V.
`
`TECHNOLOGY OVERVIEW
`
`17.
`
`The Asserted Patents are directed to a broadcast channel that is implemented
`
`through “point-to-point connections” and that “overlay the underlying network.” See e.g., ‘344
`
`patent, 4:19-26. To best understand the Broadcast Claims and how the broadcast channel
`
`interacts with the underlying network to facilitate communications between participants, it is
`
`important to provide an overview and understanding of the differences between the various
`
`layers of the communications network which is fundamental to the technology of the Asserted
`
`Patents.
`
`A.
`
`18.
`
`Network Layers
`
`Network protocols are typically modeled conceptually as being partitioned into
`
`layers, which collectively are called the network protocol stack. Each layer provides a set of
`
`services and functionality guarantees for higher layers and, to the extent possible, each layer does
`
`not depend on details or services from higher levels. To reduce complexity, most networks are
`
`designed with a small number of layers, from the physical layer, at the bottom, where computer
`
`hardware interfaces with copper wire or wireless radio, to the application layer, at the top, where
`
`the user interacts with the software. Ex. B, Tanenbaum, Computer Networks, Third Edition
`
`(1996) (“Tanenbaum”) at 17. Each layer uses a set of protocols to build on top of the layers
`
`below. The well-known Open System Interconnection Reference Model (“OSI Reference
`
`Model”) is used to abstract such layers as shown below:
`
`5
`
`
`
`Case 1:16-cv-00455-RGA Document 32 Filed 10/21/16 Page 7 of 32 PageID #: 1772
`
`Ex. C, OSI model, available at https://www.tes.com/lessons/AMRvJVl32tmEEQ/osi-model.
`
`19.
`
`An additional representation of the OSI Reference Model is provided below
`
`which illustrates the distinction among the various layers that makeup the model:
`
`6
`
`
`
`Case 1:16-cv-00455-RGA Document 32 Filed 10/21/16 Page 8 of 32 PageID #: 1773
`
`Tanenbaum at 28-29.
`
`20.
`
`The base layer in the OSI Reference Model represents the physical connections
`
`between components within a network, such as the copper electrical connections between
`
`computers. Each layer builds on top of the immediately underlying layer with its own set of
`
`protocols. At the very top is the application layer, which is the layer at which the user interfaces
`
`with an application and information delivery service, to connect to and interface with other
`
`participants. That is, although the participant’s computer may be physically connected to an
`
`opponent’s computer over the Internet via several routers and potentially thousands of miles of
`
`cable, the participant is only aware of the connection to the opponent via the application layer.
`
`7
`
`
`
`Case 1:16-cv-00455-RGA Document 32 Filed 10/21/16 Page 9 of 32 PageID #: 1774
`
`21.
`
`The Internet Protocol suite groups the top three layers together as the application
`
`layer, which is equally applicable, while including the four lower layers as belonging to the
`
`underlying network. Thus, the separation that is important is between the application layer and
`
`the underlying networking layers, referred to above as “OS” and “Network” respectively,
`
`because it is nontrivial to develop networking technology and the services and guarantees
`
`provided by the lower-level networking layers facilitate the services and guarantees for higher
`
`application layers. For this reason, an application, which operates at the application layer, will
`
`interact with the underlying network using the interfaces provided by the network layers. For
`
`example, every application is highly sensitive to the type of data that is generated and transferred
`
`to other application-level services, but is agnostic to the underlying network that delivers the
`
`data. A routing algorithm that operates at the network layer, on the other hand, only deals with
`
`the addressing of data packets and determining the best path for a destination. Tanenbaum at
`
`346. In other words, a routing algorithm is highly sensitive to the path of the packets, but is
`
`agnostic to the actual data that is transferred via the packets.
`
`22.
`
`Building on top of the base physical layer, each layer has specific tasks and roles.
`
`The task of the data link layer (layer 2), for instance, is to transfer data between two network
`
`nodes that are physically connected at the physical layer. The data link layer detects errors that
`
`occur at the physical layer and deals with the logical aspects of sending information across
`
`network links, such as in the Ethernet protocol. See Tanenbaum at 28-34. The task of the
`
`network layer (layer 3) is to provide for the moving of packets between any two hosts, on a best
`
`effort basis, in a network. It provides a way of individually addressing each host using a
`
`numerical label, such an IP address. This layer is concerned with packet transmission and route
`
`searching using routing tables or flooding algorithms. The Internet Protocol (“IP”) is an example
`
`8
`
`
`
`Case 1:16-cv-00455-RGA Document 32 Filed 10/21/16 Page 10 of 32 PageID #: 1775
`
`of a protocol at the network layer. The task of the transport layer (layer 4) is to support
`
`communication based on network (e.g., IP) addresses and ports, which are numerical addresses
`
`for higher-level protocols to use. For example, the transport layer in the Internet provides a
`
`protocol, the Transmission Control Protocol (TCP), which establishes a virtual connection
`
`between two network nodes and guarantees delivery of all packets in an ordered fashion, and the
`
`Internet also provides a transport protocol, the User Datagram Protocol (UDP), which assumes
`
`no prior setup and delivers packets as quickly as possible but with no delivery or ordering
`
`guarantees. The role of the session layer (OSI layer 5) is to manage communication sessions,
`
`that is, the exchange of information in the form of multiple back-and-forth related transmissions
`
`between two nodes, such as in the HTTP protocol, which uses TCP and supports web browsing
`
`sessions. See Tanenbaum at 28-34. The presentation layer (OSI layer 6) is dedicated to dealing
`
`with the translation of data between a networking service and an application, and includes such
`
`functions as character encoding, data compression, and encryption and decryption of data, as in
`
`the HTTPS protocol that is used to encrypt/decrypt private web sessions.
`
`23.
`
`At the top of the protocol stack, the task of the application layer (OSI layer 7 or
`
`Internet Protocol layer 5) is to provide protocols that support useful functions for users, based on
`
`the services provided by the lower layers. Example application-layer functions include web
`
`browsers and web-based collaboration systems. Typically, the application layer will use
`
`application programming interfaces (“APIs”) for lower-layer operations that will interact with a
`
`variety of underlying networks.
`
`24.
`
`Designing systems at the application layer is completely different than
`
`designing systems at the network layer. An application layer system is typically designed to run
`
`on multiple platforms and it interacts with the underlying network only as a way to send data to
`
`9
`
`
`
`Case 1:16-cv-00455-RGA Document 32 Filed 10/21/16 Page 11 of 32 PageID #: 1776
`
`other applications. Application layer protocols are sensitive to the type of data involved,
`
`focusing on its content, format, and organizational structure, and they are also sensitive to the
`
`different roles that other application-level services play, such as being servers, clients, producers,
`
`consumers, or peers. In contrast, a system designed at the network layer does not consider the
`
`data that is routed through the system, the different roles of other network nodes, or how
`
`applications use the data, because its primary job and concern is getting data packets from a
`
`source all the way to their destination. See Tanenbaum at 28-34.
`
`B.
`
`25.
`
`Routing Algorithms
`
`At the network level, the concern is about routing packets from a source computer
`
`to a destination computer. A routing algorithm is used to determine which line(s) an incoming
`
`packet should be transmitted out on. As mentioned above, a routing algorithm is agnostic to
`
`actual data transferred via the packets. Control packets are used to find the routes to the
`
`destination computer. User packets follow the route established by the control packet and the
`
`updated routing tables. Examples include shortest path algorithms, which transmit packets
`
`according to a shortest path to the destination in the network, and flooding, which transmits
`
`packets to all nodes in a network so as to be sure to reach the destination without knowledge of a
`
`shortest path and even in the presence of node and link failures, as in military applications. See
`
`Tanenbaum at 345-367.
`
`26.
`
`Of particular relevance here is flooding, which refers to the transmission of
`
`packets to all nodes of a network without knowledge of a shortest path. Flooding is a robust
`
`algorithm, in that it can tolerate node and link failures, but it causes congestion due to the
`
`number packets being sent around, since it sends packets to all the nodes in a network so as to
`
`guarantee delivery to the destination. See Tanenbaum at 351 (noting that flooding is impractical
`
`10
`
`
`
`Case 1:16-cv-00455-RGA Document 32 Filed 10/21/16 Page 12 of 32 PageID #: 1777
`
`for most uses); Ex. D, Vu and Risner, Performance and Cost of Broadcast Routing Algorithms in
`
`the Strategic Defense System Terrestrial Network, Military Communications Conference, 1991.
`
`MILCOM ‘91, IEEE (Nov. 4-7, 1991) (“Vu”) at 264 (describing the disadvantages of flooding).
`
`VI.
`
`BACKGROUND OF THE ASSERTED PATENTS
`
`27.
`
`The Asserted Patents are directed to broadcast channels that are implemented
`
`through “point-to-point connections” that “overlay the underlying network.” See e.g., ‘344
`
`Patent, 4:19-26.2 The Asserted Patents, including the Broadcast Claims, address the need for a
`
`fast and reliable communications network for a large number of widely distributed processes,
`
`where it would be impracticable to have each participant directly communicate with all other
`
`participants. ‘344 Patent, 2:38–41.
`
`28.
`
`Rather than forming the broadcast channel as a complete graph, which could
`
`cause network congestion and bog down participants (e.g., ‘344 Patent, 1:44-57), the Asserted
`
`Patents provide that participants are connected to the broadcast channel so as to form an m-
`
`regular, incomplete network. That is, each participant is connected to m other participants and
`
`(so long as the number of participants is at least m+2) there are at least two participants that are
`
`not directly connected. E.g., see the ‘344 Patent at Figure 1, 4:38-39, 5:56-60. This topology
`
`ensures reliability and scalability of the network. See e.g., ‘344 Patent, Claims 1, 13, 16, and 18.
`
`The Asserted Patents motivate this topology by describing the need for a fast and reliable
`
`communications network for a large number of widely distributed processes. ‘344 Patent, 2:38–
`
`41. In one example, Figure 1 (reproduced below), shows “a graph that is 4-regular and 4-
`
`connected which represents the broadcast channel,” meaning that each participant is connected to
`
`2 In my general discussion of the Asserted Patents, I include citations to the ‘344 Patent which
`are also representative of the ‘966 Patent and the ‘634 Patent.
`
`11
`
`
`
`Case 1:16-cv-00455-RGA Document 32 Filed 10/21/16 Page 13 of 32 PageID #: 1778
`
`four neighbors and it would take a failure of four nodes to divide the network into disjoint sub-
`
`networks. ’344 Patent, 4:23-26, 4:42–49. Furthermore, note that this graph is non-complete,
`
`because, for example, the nodes A and B are not directly connected.
`
`29.
`
`There are benefits that arise from the particular combination of an m-regular, non-
`
`complete overlay graph in which the participants communicate by sending data to their
`
`neighboring participants. For example, an information delivery service application having 64
`
`participants connected in a complete graph would require each participant to maintain 63
`
`connections to its neighbors and the network to support a total of 2,016 point-to-point
`
`connections using the underlying network. Instead, if the participants are connected in an
`
`incomplete 6-regular graph, with each participant having just 6 neighbors, it is possible to
`
`implement broadcasts using only 192 point-to-point connections. Thus, even in this simple
`
`example, this amounts to over a 90% savings in connection overhead, both globally and
`
`individually for each participant.
`
`12
`
`
`
`Case 1:16-cv-00455-RGA Document 32 Filed 10/21/16 Page 14 of 32 PageID #: 1779
`
`30.
`
`Importantly, the broadcast techniques disclosed and claimed in the ‘344 Patent,
`
`‘966 Patent, and ‘634 Patent establishes, respectively, a gaming environment, an information
`
`delivery service, and a non-routing table based broadcast method at the application level of the
`
`OSI Reference Model (which may include the presentation layer and session layer), rather than,
`
`for example, the transport or network layers. As the Asserted Patents explain, “[t]he logical
`
`broadcast channel is implemented using an underlying network system (e.g., the Internet) that
`
`allows each computer connected to the underlying network system to send messages to each
`
`other connected computer using each computer’s address.” ‘344 Patent, 4:15-19. That is, the
`
`broadcast channel relies on computer addresses and point-to-point data delivery established in
`
`the network layer.
`
`31.
`
`In addition, the Asserted Patents explain that “[i]n one embodiment, the broadcast
`
`technique establishes the computer connections using the TCP/IP communications protocol,
`
`which is a point-to-point protocol, as the underlying network.” ‘344 Patent, 6:25-28. That is,
`
`this embodiment relies on the reliable point-to-point communication protocols established in the
`
`transport layer. The Asserted Patents describe how the overlay network can be maintained using
`
`ports, which is another feature established in the transport layer. See ‘344 Patent, 6:11-63,
`
`11:32-12:32.
`
`32.
`
`Further emphasizing that the broadcast channel is implemented at the application
`
`level, the Asserted Patents explain that “[t]he broadcast channel is well suited for computer
`
`processes (e.g., application programs) that execute collaboratively, such as network meeting
`
`programs.” ‘344 Patent, 15:17-20 (emphasis added). The specifications of the Asserted Patents
`
`also state that, “[t]he application program invokes the connect component to establish a
`
`connection to a designated broadcast channel.” ‘344 Patent, 16:9-11 (emphasis added).
`
`13
`
`
`
`Case 1:16-cv-00455-RGA Document 32 Filed 10/21/16 Page 15 of 32 PageID #: 1780
`
`Moreover, “[t]he broadcast component is invoked by the application program to broadcast
`
`messages in the broadcast channel.” ‘344 Patent, 16:26-28 (emphasis added).
`
`33.
`
`To best understand how the game environment in the ’344 Patent, the information
`
`delivery service in the ‘966 Patent, and the non-routing table based broadcast method of the ‘634
`
`Patent interact with the underlying network to facilitate communications between the
`
`participants, it is important to note that each participant maintains the connections to its
`
`neighbors as edges in the overlay network. For example, pairs of participants share a connection
`
`established in the application layer overlay, while an underlying network handles the actual
`
`transfer of data between the physical network components. See ‘344 Patent, 4:23–26 (“The
`
`broadcast technique overlays the underlying network system with a graph of point-to-point
`
`connections (i.e., edges between host computers (i.e., nodes) through which the broadcast
`
`channel is implemented.”) (emphasis added)). Figure 2 shows the application layer connections
`
`established for twenty participants of a broadcast channel, such as the one that implements the
`
`game environment of the ‘344 Patent:
`
`14
`
`
`
`Case 1:16-cv-00455-RGA Document 32 Filed 10/21/16 Page 16 of 32 PageID #: 1781
`
`‘344 Patent, Fig.
`
`2; id. at 5:6–7. This
`
`overlay is implemented on top of a reliable underlying network, such as the Internet. ‘344
`
`Patent, 4:15–22.
`
`34.
`
`The networks of the Asserted Patents that are “implemented using broadcast
`
`channels,” are reliable and have a low latency, because they provide alternative pathways. For
`
`example, referring to Figure 2 above, a message can travel from participant 1 directly to
`
`participant 12, but if that link fails or operates slowly, the message can also reach participant 12
`
`by travelling from 1 to 11 to 7 to 4 to 12 (and by many other possible pathways). The network is
`
`efficient and scalable because it only requires 40 (bidirectional) connections to create the
`
`broadcast channel linking 20 participants. In contrast, a complete network linking each
`
`participant directly to all other participants would require 190 such connections, and messages
`
`would fail to timely reach all participants, due to network congestion. ‘344 Patent, 1:44-2:42
`
`(complete networks of point-to-point connections do not scale well because of the large number
`
`of connections).
`
`15
`
`
`
`Case 1:16-cv-00455-RGA Document 32 Filed 10/21/16 Page 17 of 32 PageID #: 1782
`
`35.
`
`The inventions described and claimed in the Asserted Patents represented a
`
`quantum leap forward for applications, like multiplayer networked games, that require “the
`
`simultaneous sharing of information among a large number of… processes that are widely
`
`distributed.” ‘344 Patent, 2:38–41. Critically, the ultimate success of the techniques of the
`
`Asserted Patents depend on the reliability and speed benefits provided by the broadcast channel
`
`via which the game environment, information delivery service application, and non-routing table
`
`based broadcast method is each implemented, and in particular, the implementation on an m-
`
`regular, incomplete network. As noted in the Background section of the Asserted Patents,
`
`attempting to interconnect all participants together using a complete graph topology “does not
`
`scale well as a number of participants grows.” ‘344 Patent, 1:46–49.
`
`36.
`
`Implementing a game environment, an information delivery service application
`
`with a broadcast channel, or a broadcast channel in which each participant sends data it receives
`
`to its neighbor participants improves reliability. As the Asserted Patents explain, “The
`
`redundancy of the message sending helps to ensure the overall reliability of the broadcast
`
`channel. Since each computer has four connections to the broadcast channel, if one computer
`
`fails during the broadcast of a message, its neighbors have three other connections through which
`
`they will receive copies of the broadcast message.” ‘344 Patent, 7:50-57. The same technique
`
`also reduces latency in the network communications by providing built-in alternative pathways
`
`for messages broadcast from one participant to the other participants. ‘344 Patent, 7:55-58
`
`(“Also, if the internal connection between two computers is slow, each computer has three other
`
`connections through which it may receive a copy of each message sooner.”). Accordingly, the
`
`claimed inventions decrease latency and make the communications via the underlying network
`
`16
`
`
`
`Case 1:16-cv-00455-RGA Document 32 Filed 10/21/16 Page 18 of 32 PageID #: 1783
`
`protocol even more reliable by providing additional, faster paths for a message to take on its way
`
`to the other participants.
`
`A.
`
`37.
`
`The ‘344 Patent
`
`The ‘344 Patent describes “a distributed game environment,” which “is provided
`
`by a game application program executing on each player’s computer.” ’344 Patent, 16:29–41. In
`
`order to participate in the game environment, “[e]ach player joins a game (e.g., a first shooter
`
`game) by connecting to the broadcast channel on which the game is played.” ’344 Patent,
`
`16:34–36.
`
`38.
`
`The ‘344 Patent explains that, “[t]he game environment is provided by a game
`
`application program executing on each player’s computer that interacts with a broadcaster
`
`component.” ‘344 Patent, 16:31-34 (emphasis added); see also ‘344 Patent, 15:29-49. This
`
`ensures that gaming applications are able to achieve a reliable, scalable network that is agnostic
`
`to the underlying network on which they are run. ‘344 Patent, 4:1-18. This further demonstrates
`
`that the ‘344 Patent operates at the application layer because the game environment dictates that
`
`the data to be distributed are specific and the distribution cannot be data agnostic, whereas at the
`
`transport or network layer, any transmission of data is agnostic to the actual data that are
`
`transferred.
`
`39.
`
`The ability of players to send information and game updates to all the other
`
`players is facilitated by the broadcast channel. Each time a player takes an action, a message
`
`representing that action can be broadcast on the game’s broadcast channel. The broadcast
`
`channel also allows a player to send messages (e.g., communications or strategy information) to
`
`one or more other players by broadcasting a message. ‘344 Patent, 16:36-43.
`
`17
`
`
`
`Case 1:16-cv-00455-RGA Document 32 Filed 10/21/16 Page 19 of 32 PageID #: 1784
`
`40.
`
`The techniques of the ‘344 Patent (i.e., the combination of an m-regular,
`
`incomplete graph overlay where participants communicate by sending data to their neighbor
`
`participants) solved one of the major problems that prevented earlier development of such
`
`gaming environments—the fundamental tradeoff between network latency and reliability. In
`
`particular, the game environment of the ‘344 Patent, which “is implemented using broadcast
`
`channels,” provides the best of both worlds: reliable message delivery and low latency
`
`communications.
`
`41.
`
`The necessity for a fast and reliable communications network for a game
`
`environment is well known by a person of ordinary skill in the art. Multiplayer games have strict
`
`requirements for latency tolerance and an architecture for such a gaming environment would
`
`only be feasible if it were to meet such latency requirements. In general, based on the game type
`
`and design, games can typically tolerate latencies between 100 to 300 milliseconds, ranging from
`
`FPS games to RPGs. Ex. E, Bharambe et al., A Distributed Architecture for Online Multiplayer
`
`Games (Jan. 2006) (“Bharambe”) at 14; Ex. F, Yahyavi, et al., Peer-to-Peer Architectures for
`
`Massively Multiplayer Online Games: A Survey, ACM Computing Surveys, Vol. 46, No. 1,
`
`Article 9 (Oct. 2013) (“Yahyavi”) at 4. Thus, by achieving scalability, reliability, and low
`
`latency, the ‘344 Patent advances a solution that is ideally suited to a game environment.
`
`B.
`
`42.
`
`The ‘966 Patent
`
`The ‘966 Patent describes “an information delivery service application” which
`
`“allows participants to monitor messages as they are broadcast on the broadcast channel.” ‘966
`
`Patent, 16:25-28. A participant “may function as a producer of information, as a consumer of
`
`information, or both.” ‘966 Patent, 16:28-30. The information delivery service application “may
`
`be downloaded to the user’s computer if not already available on the user’s computer” and
`
`18
`
`
`
`Case 1:16-cv-00455-RGA Document 32 Filed 10/21/16 Page 20 of 32 PageID #: 1785
`
`therefore operates at the application layer of the OSI Reference Model (which can include the
`
`presentation layer and the session layer) further described herein. ‘966 Patent, 16:45-49. The
`
`‘966 Patent states that the “information delivery service may be used to distribute a broad range
`
`of content including news articles, stock prices, weather alerts, medical alerts, traffic reports, and
`
`so on” and for example, a “user may subscribe to a category of sports scores or subscribe to the
`
`topic of NFL scores.” ‘966 Patent, 16:32-40. A person of ordinary skill in the art would know
`
`the necessity for fast and reliable communications regarding sports, stock and other such data.
`
`43.
`
`Importantly, the broadcast technique disclosed and claimed in the ‘966 Patent
`
`uses the broadcast channel for participants, such as application programs, to communicate. For
`
`example, the specification explains that “[