`
`UNITED STATES PATENT AND TRADEMARK OFFICE
`
`____________________________________________
`
`BEFORE THE PATENT TRIAL AND APPEAL BOARD
`
`____________________________________________
`
`SERVICENOW, INC
`
`Petitioner
`
`
`
`v.
`
`
`
`HEWLETT-PACKARD COMPANY
`
`Patent Owner
`
`____________________________________________
`
`
`Case No. IPR2015-00717
`
`
`Patent 7,027,411
`
`____________________________________________
`
`PATENT OWNER’S RESPONSE
`UNDER 37 C.F.R. § 42.120
`
`
`
`
`
`
`
`
`
`
`
`I.
`
`II.
`
`
`
`IPR2015-00717
`
`TABLE OF CONTENTS
`
`Page
`
`INTRODUCTION ........................................................................................... 1
`
`THE ’411 PATENT ......................................................................................... 3
`
`A.
`
`B.
`
`C.
`
`Block Diagram of the System of the ’411 Patent .................................. 8
`
`First List (List of Existing Tuples from an Existing Topology) and
`Second List (New List of a Plurality of Tuples for a Topology of the
`Network at a Current Time) ................................................................ 10
`
`The Connection Calculator Creates the Third List (New Tuples List
`that represent new nodal connections) ................................................ 12
`
`1.
`
`2.
`
`3.
`
`4.
`
`5.
`
`6.
`
`The First Weeding Phase .......................................................... 15
`
`The Infrastructure Building Phase ............................................ 17
`
`The Second Weeding Phase ...................................................... 19
`
`The Noise Reduction Phase ...................................................... 20
`
`The “Look For” Phase .............................................................. 21
`
`The Consolidation Phase ........................................................... 23
`
`D.
`
`Receiving the Third List and Comparing the First List (List of
`Existing Tuples from an Existing Topology) and the Third List (New
`Tuples List that Represent New Nodal Connections) to Identify
`Changes to Topology .......................................................................... 23
`
`III. CHALLENGED CLAIMS 1 AND 3 ............................................................ 27
`
`IV. FILE HISTORY OF ’411 PATENT .............................................................. 31
`
`V. OVERVIEW OF THE CITED PRIOR ART REFERENCES ...................... 36
`
`A.
`
`B.
`
`Jones .................................................................................................... 37
`
`Tonelli.................................................................................................. 39
`
`
`
`i
`
`
`
`
`
`
`
`IPR2015-00717
`
`VI. THE CHALLENGED ’411 PATENT CLAIMS ARE NON-OBVIOUS
`BECAUSE MULTIPLE CLAIM LIMITATIONS ARE NOT TAUGHT OR
`SUGGESTED BY THE PRIOR ART ........................................................... 41
`
`A.
`
`Jones does not Render Claims 1 and 3 Obvious ................................. 42
`
`1.
`
`Jones Does Not Disclose or Render Obvious “Receiving New
`Tuples List that Represent New Nodal Connections,” as Recited
`in Independent Claim 1 ............................................................. 42
`
`a.
`
`b.
`
`Petitioner’s Expert has a Fundamental
`Misunderstanding of Claim 1 that Caused an
`Erroneous Application of Jones ...................................... 42
`
`Jones Does Not Disclose the “New Tuples List”
`Required by the Claims .................................................. 46
`
`2.
`
`3.
`
`4.
`
`Jones Does Not Disclose or Render Obvious “Comparing the
`List of Existing Tuples with the New Tuples List to Identify
`Changes to the Topology,” as Recited in Independent Claim 147
`
`The Petition Characterizes Jones Incorrectly ............................ 48
`
`Jones Does Not Disclose or Render Obvious “Each Of The
`Tuples Comprises A Host Identifier, Interface Information, And
`A Port Specification,” as Recited in Independent Claim 1 ....... 50
`
`B.
`
`Tonelli does not Render Claims 1 and 3 Obvious .............................. 52
`
`1.
`
`Tonelli Does Not Disclose or Render Obvious “Receiving New
`Tuples List that Represent New Nodal Connections,” as Recited
`in Independent Claim 1 ............................................................. 52
`
`a.
`
`b.
`
`Petitioner’s Expert has a Fundamental
`Misunderstanding of Claim 1 that Caused an
`Erroneous application of Tonelli .................................... 52
`
`Tonelli Does Not Disclose the “New Tuples
`List” Required by the Claims ......................................... 54
`
`2.
`
`Tonelli Does Not Disclose or Render Obvious “Comparing the
`List of Existing Tuples with the New Tuples List to Identify
`Changes to The Topology,” as Recited in Independent Claim 155
`ii
`
`
`
`
`
`
`
`
`
`IPR2015-00717
`
`3.
`
`Tonelli Does Not Disclose or Render Obvious “Each Of The
`Tuples Comprises A Host Identifier, Interface Information, And
`A Port Specification,” as Recited in Independent Claim 1 ....... 56
`
`VII. CONCLUSION .............................................................................................. 57
`
`
`
`
`
`iii
`
`
`
`
`
`
`
`
`
`
`
`
`
`TABLE OF AUTHORITIES
`
`IPR2015-00717
`
`Page(s)
`
`Federal Cases
`Atlas IP, LLC v. Medtronic, Inc.,
`U.S. App. LEXIS 18819 (Fed. Cir. 2015)...............................................................43
`
`Federal Statutes
`
`35 U.S.C. § 103(a) ..................................................................................................... 1
`
`35 U.S.C. § 316(e) ..................................................................................................... 1
`
`
`
`
`
`iv
`
`
`
`
`
`I.
`
`INTRODUCTION
`
`
`
`IPR2015-00717
`
`U.S. Patent No. 7,027,411 (the “’411 patent”) is directed to methods and
`
`systems for effectively managing the topology of a network by accurately and
`
`efficiently ascertaining and maintaining the topology. The topology of a network
`
`having interconnected nodes is mapped in a novel manner by starting with a list of
`
`“tuples”, creating a new list of tuples, processing the new list to obtain a list that
`
`represents new nodal connections, and then comparing the original list with the
`
`processed list that represents new nodal connections to identify changes to the
`
`topology. The tuples are data structures containing selected information – host
`
`identifier, interface information, and a port specification – that are used to
`
`efficiently and accurately determine the topology changes. The tuples contain
`
`relevant information to minimize the storage space required for updating the
`
`topology.
`
`The Board instituted review on the two grounds in the Petition: (1) that
`
`claims 1 and 3 are obvious under 35 U.S.C. § 103(a) over U.S. Patent No.
`
`6,701,327 to Jones (“Jones”) (Ex. 1003); and (2) that claims 1 and 3 are obvious
`
`over U.S. Patent No. 5,821,937 to (“Tonelli”) (Ex. 1004). However, the Petitioner
`
`has not met its burden of establishing unpatentability of the challenged claims by a
`
`preponderance of the evidence (see 35 U.S.C. § 316(e)) for at least the reasons
`
`below.
`
`
`
`1
`
`
`
`
`
`
`
`IPR2015-00717
`
`First, ServiceNow’s petition and the supporting declaration of Dr. Lavian
`
`are based on a flawed understanding and interpretation that the ’411 patent requires
`
`only two lists of tuples. The challenged claims, the specification, and the file
`
`history make clear that three different tuples lists – an original or “a list of existing
`
`tuples from an existing topology,” a “new list of a plurality of tuples for a topology
`
`of the network at a current time,” and a processed “new tuples list that represent
`
`new nodal connections” – are part of the invention of the ‘411 patent.
`
`Second, a person of ordinary skill in the art would also understand that the
`
`changes in the topology would be more efficiently and accurately identified
`
`through the comparison of the “new tuples list that represent new nodal
`
`connections” with the “list of existing tuples from an existing topology.” As the
`
`Board correctly recognized, “[a] new set of tuples is calculated using a ‘connection
`
`calculator,’ and a ‘topology converter’ receives the new tuples, identifies changes
`
`to the topology, and updates the topology database using the new tuples.”
`
`Decision on Institution (Paper 13) at p. 3.
`
`Third, as a result of these misunderstandings, the Petitioner has not shown
`
`by a preponderance of the evidence that the cited prior art meets – and in fact it
`
`does not meet – at least the last two claim limitations of claim 1. Petitioner has
`
`failed to show that Jones and Tonelli disclose at least “receiving new tuples list
`
`that represent new nodal connections” and “comparing the list of existing tuples
`
`
`
`2
`
`
`
`
`
`
`
`IPR2015-00717
`
`with the new tuples list to identify changes to the topology.” ’411 patent (Ex.
`
`1001) at 13: 56-59.
`
`II. THE ’411 PATENT
`
`By October 31, 2000, when the application for the ’411 patent was filed,
`
`switching technologies were emerging as a way of routing data to reduce network
`
`congestion. Id. at 1:17-19. Intelligent routing of data with resultant reduction in
`
`network congestion could only be effected if a network topology was known. Id.
`
`at 1:29-31. The ’411 patent acknowledges that to be effectively managed, the
`
`topology of a network must be accurately and efficiently ascertained, as well as
`
`maintained. Id. at 1:58-60. Prior art mapping methods have limitations that
`
`prevent them from accurately and efficiently mapping topological relationships.
`
`Id. at 1:61-62. Declaration of Michael Shamos, Ph.D. (“Shamos Decl.”) (Ex.
`
`2004) at ¶ 42.
`
`For example, prior art methods assumed that network devices such as
`
`routers, switches and bridges, connectors in general, only had a single connection
`
`between them. ’411 patent (Ex. 1001) at 1:64-67. Instead, in newer devices it was
`
`common to have multiple connections between devices to improve network
`
`efficiency and increase the capacity of links between the devices. Id. at 2:1-4.
`
`This multiple connectivity allowed for devices to maintain connection in case one
`
`connection failed. Id. at 2:4-5. Shamos Decl. (Ex. 2004) at ¶ 43.
`
`
`
`3
`
`
`
`
`
`
`
`IPR2015-00717
`
`As an additional complication, the physical layout of devices and their
`
`connections were typically in a state of constant change. ’411 patent (Ex. 1001) at
`
`1:54-56. Devices were continually being removed from, added to, and moved to
`
`new physical locations on the network. Id. at 1:56-58. Whenever an individual
`
`change in the system was detected, existing methods immediately acted on that
`
`change, rather than taking a broader view of the change in the context of other
`
`system changes. Id. at 2:28-31. For example, a device may have been removed
`
`from the network temporarily and replaced with its ports reversed. Id. at 2:31-33.
`
`In prior art systems, this swapped port scenario could require hundreds or
`
`thousands of changes because the reference addresses had to be changed for all
`
`interconnected devices. Id. at 2:33-36. Shamos Decl. (Ex. 2004) at ¶ 43.
`
`The ’411 patent provides systems and methods for accurately and efficiently
`
`mapping a network topology including nodes. A network node may be an
`
`electronic component, such as a connector or a host, or a combination of electronic
`
`components together with their interconnections. ’411 patent (Ex. 1001) at 4:14-
`
`16. Nodal connectivity information is retrieved from nodes and stored as “tuples”
`
`to determine the network’s topology. Id. at 4:4-7. As the ’411 patent describes,
`
`“[e]xisting mapping methods have limitations that prevent them from accurately
`
`mapping-topological relationships.” Id. at 1:61-62. That is, existing mapping
`
`methods have limitations that prevent them from maintaining a data structure from
`
`
`
`4
`
`
`
`
`
`
`
`IPR2015-00717
`
`which the network interconnections can be determined at any given time. Shamos
`
`Decl. (Ex. 2004) at ¶ 44.
`
`Tuples represent connections between nodes, for example, (1) between two
`
`devices, (2) between device and connector, or (3) between two connectors. ’411
`
`patent (Ex. 1001) at 4:34-38. A tuple may have two parts representing the two
`
`nodes on either end of a network link or segment. Id. at 4:10-12. For example, a
`
`binary tuple may include this information about the two nodes as a means of
`
`showing the connectivity between them, whether the nodes are connected directly
`
`or indirectly through other nodes. Id. at 4:30-34. A “conn-to-conn” tuple refers to
`
`a tuple that has connectivity data about connector nodes. Id. at 4:34-35. A “conn-
`
`to-host” tuple refers to a tuple that has connectivity data about a connector node
`
`and a host node. Id. at 4:35-37. Shamos Decl. (Ex. 2004) at ¶ 45.
`
`The network mapping of the ’411 patent is conducted by advantageously
`
`building a new list of tuples and then removing redundant or unnecessary tuples to
`
`produce the new topology. ’411 patent (Ex. 1001) at 10:34-37. Non-essential
`
`tuples may be removed from the new topology to save space and to simplify the
`
`topology. Id. at 10:44-46. The ’411 patent describes a system and methods that
`
`are not confused by multiple connectivity situations such as port aggregation or
`
`switch meshing, as shown in FIG. 5 of the ’411 patent, because the tuples represent
`
`point-to-point, or neighbor-to-neighbor, connectivity showing each connection in
`
`
`
`5
`
`
`
`
`
`
`
`IPR2015-00717
`
`the network. Id. at 10:46-51. The point-to-point connectivity concept helps enable
`
`the system to avoid difficulties that occur in other systems. Id. at 10:51-54.
`
`Shamos Decl. (Ex. 2004) at ¶ 46.
`
`As discussed above, “tuple” is a construed claim term meaning “collection
`
`of assorted data.” The term is borrowed from computer science, in which a “tuple”
`
`is a collection of values. For example, a 5-tuple is a set of five values, sometimes
`
`represented, e.g., as {52, -3, “abc”, 0, 98.6}. The first, second and fourth elements
`
`of the tuple are integers; the third element is the string “abc”, and the fifth element
`
`is a decimal number. The data are “assorted” because they are not necessarily of
`
`the same type, e.g., they are a mixture of integers, strings and decimals. Shamos
`
`Decl. (Ex. 2004) at ¶ 47.
`
`The tuples of the ’411 patent are “light weight” data structures that include
`
`host identifiers, interface information and port specifications. ’411 patent (Ex.
`
`1001) at 4:7-9. The tuples provide a convenient way of storing and maintaining
`
`data that allows determining network topology changes in an efficient manner that
`
`minimizes storage space needed for the topology. Id. at 10:54-56. This is
`
`accomplished by using three lists: (1) a first list (“list of existing tuples from an
`
`existing topology”) that includes existing tuples that represent nodal connections of
`
`a network topology at a prior time; (2) a second list (“new list of a plurality of
`
`tuples for a topology of the network at a current time”) that includes a plurality of
`
`
`
`6
`
`
`
`
`
`
`
`IPR2015-00717
`
`tuples that represent nodal connections of a network topology at a current time; and
`
`(3) a third list (“new tuples list that represent new nodal connections”) that
`
`includes an efficient representation of the tuples of the second list that represents
`
`new nodal connections. In other words, the new nodal connections are represented
`
`by a refined but accurate list of tuples calculated by the connection calculator to
`
`represent the new topology at a current time. Id. at 13:46-56; 3:6-25;6:24-29;
`
`10:34-56;11:16-25. Shamos Decl. (Ex. 2004) at ¶ 48.
`
`The third list is compared to the first list to determine changes to the
`
`network topology. ’411 patent (Ex. 1001) at 6:24-29; 11:14-25. By comparing the
`
`third list, which is a refined list of the tuples that represent nodal connections at a
`
`current time, to the first list, the claimed invention can efficiently update the
`
`network topology by comparing only the efficiently organized list of tuples to the
`
`existing topology. Id. at 3:10-25;6:24-29; 10:34-56;11:16-25. In addition, by
`
`using tuples to perform the comparison, the network topology can be accurately
`
`represented, because the tuples include information that can precisely characterize
`
`the interconnected nodes of the network. Id. at 6:14-7:23; 10:34-56. The
`
`information is retrieved from the network nodes and stored as tuples to track
`
`specifically the desired information necessary to map the topology. Id. 4:4-7. By
`
`using the host identifier, interface information, and port information, the topology
`
`can be determined. Id. at 4:7-10. A key to efficiency is operating on a refined list
`
`
`
`7
`
`
`
`
`
`
`
`IPR2015-00717
`
`of tuples rather than a list representing the entire network. Such a refinement
`
`occurs during a “tuple reduction phase” 906 (id. at 6:24-29) in the preferred
`
`embodiment of the ‘’411 patent. No such additional list is taught in the prior art.
`
`Shamos Decl. (Ex. 2004) at ¶ 49.
`
`A. Block Diagram of the System of the ’411 Patent
`
`Fig. 7 the ’411 patent is reproduced below to show the block diagram of the
`
`’411 patent system. ’411 patent (Ex. 1001) at 3:42; 6:14.
`
`
`In general, a topology database “topodb” 350 stores an existing topology
`
`that needs to be updated. Id. at 6:19-20. Information about this existing topology
`
`is used to create the first list of tuples that represents the network topology at a
`
`prior time, as discussed below in more detail. A tuple manager 300 gathers data
`
`from network nodes and builds the second list of tuples that represents the network
`
`
`
`8
`
`
`
`
`
`
`
`IPR2015-00717
`
`topology at a later, current time. Id. at 6:16-19; Petitioner’s expert, Dr. Lavian
`
`Dep. (Ex. 2002) at 19:10-15. The “neighbor data” database 310 retrieves and
`
`stores the second list of tuples created by the tuple manager. Id. at 6:20-22. A
`
`connection calculator 320 processes data in the neighbor data database 310 to
`
`create a third list of tuples. Id. at 6:22-24; Lavian Dep. (Ex. 2005) at 113:17-19.
`
`The third list includes refined tuple data and is stored in a reduced topology
`
`relationships database 330. ’411 patent (Ex. 1001) at 6:24-26; Lavian Dep. (Ex.
`
`2005) at 20:23-21:14. The topology converter 340 receives the third list and
`
`compares it with the first list and updates the topology stored in the topology
`
`database 350. ’411 patent (Ex. 1001) at 6:26-29. Shamos Decl. (Ex. 2004) at ¶ 51.
`
`The process described above is illustrated in Fig. 8, which shows a flow
`
`chart of the method used by the system described in the ’411 patent to retrieve and
`
`update the topology of the network. Shamos Decl. (Ex. 2004) at ¶ 52. Fig. 8 is
`
`reproduced below, in which steps 902 and 904 correspond to creating the “new list
`
`of a plurality of tuples for a topology of the network at a current time” (the second
`
`list, described in the second limitation of claim 1), step 906 corresponds to creating
`
`the “new tuples list that represent new nodal connections” (the third list, described
`
`in the third limitation of claim 1), and step 908 corresponds to “comparing the list
`
`of existing tuples [first list] with the new tuples list [third list] to identify changes
`
`to the topology (the fourth limitation of claim 1).
`
`
`
`9
`
`
`
`
`
`
`
`IPR2015-00717
`
`B.
`
`
`First List (List of Existing Tuples from an Existing Topology) and
`Second List (New List of a Plurality of Tuples for a Topology of
`the Network at a Current Time)
`
`More specifically, the topology converter 340 retrieves node information of
`
`the topology currently stored in the topology database 350 and converts the
`
`topology into a list of existing tuples (first list). ’411 patent (Ex. 1001) at Abstract;
`
`3:10-12; 11:14-25. The tuple manager 300 gathers data representing network
`
`nodes at a current time and builds tuples that represent nodal connections of the
`
`network at a current time. See id. 6:16-19 (“A tuple manager 300, also referred to
`
`as a data miner 300, gathers 902 data from network nodes and builds 904 tuples to
`
`update the current topology.”). Shamos Decl. (Ex. 2004) at ¶ 53. Petitioner’s
`
`expert, Dr. Lavian, agreed during his deposition that the tuple manager builds
`
`tuples:
`
`“Q. So if you parse that a little bit, going back to
`
`the tuple -- or tuple manager, what are the functions or
`
`roles of the tuple manager?
`
`A. In general, the tuple manager receive the tuples
`
`and calculate the -- basically, do the data gathering and
`
`
`
`10
`
`
`
`
`
`
`
`IPR2015-00717
`
`the tuple building phases.”
`
`Lavian Dep. (Ex. 2005) at 19:10-15.
`
`The tuple manager 300 gathers the data by accessing forwarding tables and
`
`other information sources for the nodes to determine such information as their
`
`physical address, interface information, and the port from which they “hear” other
`
`devices. Based on this information, the tuple manager 300 builds the new list of a
`
`plurality of tuples (second list) and stores these tuples in the “neighbor data”
`
`database 310. ’411 patent (Ex. 1001) at 6:30-61. Shamos Decl. (Ex. 2004) at ¶ 54.
`
`This is illustrated in Fig. 9, which is reproduced below.
`
`
`
`
`
`
`
`11
`
`
`
`
`
`
`
`IPR2015-00717
`
`Dr. Lavian agrees that Fig. 9 represents the processes of receiving
`
`information and gathering additional data:
`
`“In high level, tuple manager receive the information
`
`from the network. We can see, in high level, in Figure 8
`
`that the two left elements, 902 and 904, belongs to the
`
`tuple manager in Figure 7, element 300.
`
`In more details, all of -- two of these, 902 and 904, are
`
`elaborated in Figure 9, basically element 910, 912, 914,
`
`916, 918, and 920, and basically receiving the
`
`information and gathering additional data.”
`
`Lavian Dep. (Ex. 2005) at 18:7-16.
`
`C. The Connection Calculator Creates the Third List (New Tuples
`List that represent new nodal connections)
`
`The connection calculator 320 processes the data in the neighbor data
`
`database 310 to determine the new network topology. ’411 patent (Ex. 1001) at
`
`6:62-7:23; 10:34-56. Shamos Decl. (Ex. 2004) at ¶ 55. Petitioner’s expert
`
`acknowledged that the connection calculator processes data in the neighbor data
`
`database:
`
`
`
`“Q. The connection calculator processes the data in the
`
`neighbor data database 310; correct?
`
`A. Yes.”
`
`12
`
`
`
`
`
`
`
`IPR2015-00717
`
`Lavian Dep. (Ex. 2005) at 113:17-19.
`
`The connection calculator 320 processes the tuple data to create a new tuples
`
`list (third list). See ’411 patent (Ex. 1001) at 6:24-26. (“The connection calculator
`
`320 reduces 906 the tuple data and sends it to the reduced topology relationships
`
`database 330.”) Shamos Decl. (Ex. 2004) at ¶ 55. The Board also acknowledges
`
`the creation of the third list by stating that “[a] new set of tuples is calculated using
`
`a ‘connection calculator’.” Decision on Institution (Paper 13) at p. 3. This new
`
`list of tuples represents newly refined relationships. ’411 patent (Ex. 1001) at
`
`6:62-10:56. Fig. 10, which is reproduced below, shows a flow chart of the
`
`processes performed by connection calculator 320, as shown generally in the
`
`reduction step 906 of the method shown in FIG. 8. Id. at 6:65-67. Shamos Decl.
`
`(Ex. 2004) at ¶ 55.
`
`
`
`13
`
`
`
`
`
`
`
`IPR2015-00717
`
`
`No such third list is disclosed or suggested in the cited prior art. Shamos
`
`Decl. (Ex. 2004) at ¶ 56. Dr. Lavian agrees that Fig. 10 represents phases of data
`
`calculation that make the tuple data less complicated and more focused on relevant
`
`information:
`
`“Q. You had mentioned the connection calculator. I
`
`believe the reference number is 320, as you had
`
`discussed earlier.
`
`How does -- what are the roles of this connection
`
`calculator?
`
`
`
`14
`
`
`
`
`
`
`
`IPR2015-00717
`
`A. You can see the connection calculator in Figure 10 --
`
`excuse -- it's in Figure 7, element 320. You can see more
`
`elaboration on Figure 8, element 906. It's a tuple
`
`reduction phase.
`
`More elaboration you can see in Figure 10, that it has the
`
`first weeding phase, infrastructure building phase, second
`
`weeding phase, noise reduction phase, look-for phase,
`
`construction (sic) phase.
`
`And if we can take a look in more details, we can see that
`
`basically
`
`the main idea is to get less information to allow
`
`calculation of the information. The topology, it's
`
`complicated and the idea is to reduce the amount of data
`
`to get only the right, relevant information.”
`
`Lavian Dep. (Ex. 2005) at 20:20-21:1-14; see also id. 22:1-13; 100:8-18.
`
`1.
`
`The First Weeding Phase
`
`As shown in Fig. 10, the connection calculator 320 performs a first weeding
`
`phase to identify singly-heard hosts to distinguish them from multi-heard hosts.
`
`’411 patent (Ex. 1001) at 6:67-7:3. A “singly-heard host” refers to a host device
`
`connected directly to a connector. Id. at 7:3-4. A “multi-heard host” refers to a
`
`
`
`15
`
`
`
`
`
`
`
`IPR2015-00717
`
`host that is heard by a connector on the same port that other hosts are heard. Id. at
`
`4:45-47. “FIG. 11 is a flow chart of the connection calculator's first weeding
`
`process 922 for distinguishing singly-heard hosts. The purpose of the first weeding
`
`process 922 is to identify the direct connections between connectors and hosts; that
`
`is, those tuples having a first tuco that is a connector and a second tuco that is a
`
`host.” Id. at 7:24-29. A “tuco” refers to a tuple component, such as half of a
`
`binary tuple. Id. at 4:12-13. Shamos Decl. (Ex. 2004) at ¶ 57.
`
`The ’411 patent describes the weeding process: “[t]he connection calculator
`
`320 looks through the tuple list in the neighbor database 310, and for each tuple
`
`402, the connection calculator 320 determines 404 whether the tuple is a
`
`connector-to-host (conn-to-host) link tuple. If it is not a conn-to-host link, the
`
`connection calculator 320 concludes 418 that it is a conn-to-conn link and
`
`processes 402 the next tuple. If the tuple is a conn-to-host link tuple, then the
`
`connection calculator 320 determines 406 whether the connector hears only this
`
`particular host on the port identified in the tuple. If the connector hears other hosts
`
`on this port, then the tuple is classified 416 as a multi-heard host link (mhhl)
`
`tuple.” ’411 patent (Ex. 1001) at 7:29-40. Shamos Decl. (Ex. 2004) at ¶ 58.
`
`In addition, the first weeding process attempts to identify conflicts. ’411
`
`patent (Ex. 1001) at 7:60-61. That is “[i]f other connectors hear the host as a
`
`singly-heard host, then a conflict arises and the tuple is classified 410 as a singly-
`
`
`
`16
`
`
`
`
`
`
`
`IPR2015-00717
`
`heard conflict link (shcl) tuple to be resolved later. This conflict may arise, for
`
`example, if a host has been moved within the network, in which case the
`
`forwarding table data may no longer be valid. Certain connectors previously
`
`connected directly to the host may still indicate that the moved host is connected.
`
`When all tuples have been processed 402 to identify singly-heard host links, the
`
`first weeding phase 922 is complete.” Id. at 7:61-8:3. Shamos Decl. (Ex. 2004) at
`
`¶ 59. In addition, Petitioner’s expert confirms that the first weeding phase provides
`
`benefits, including identifying conflicts during the first weeding phase.
`
`“Q. Can you describe what type of conflict the first
`
`weeding process attempts to identify?
`
`A. The first weeding process is related to a shared
`
`media. And conflict might be that you remove a
`
`computer from one port and you put it in different port.
`
`For example, you have a specific MAC address in port
`
`number 7, you don't hear the MAC on port number 7;
`
`you hear them in port number 8 now. That's an example
`
`of a conflict.
`
`Many other examples existed. I just gave one.”
`
`Lavian Dep. (Ex. 2005) at 147:19-148:5; see also id. at 143:20-24.
`
`2.
`
`The Infrastructure Building Phase
`
`
`
`17
`
`
`
`
`
`
`
`IPR2015-00717
`
`The connection calculator 320 performs an infrastructure-building phase to
`
`remove redundant connector-to-connector links and to complete details of any
`
`tuples that are missing information. ’411 patent (Ex. 1001) at 7:4-7. Specifically,
`
`“FIGS. 12a-d show a flow chart of the infrastructure building phase 924 of the
`
`connection calculator 320. The purpose of the infrastructure building phase 924 is
`
`to determine how the connectors are set up in the network.” Id. at 8:4-7. In doing
`
`so, the connection calculator 320 “complete[s] details of any tuples that are
`
`missing information.” Id. at 7:4-7; see also id. at 8:60-9:5. Completing the details
`
`of tuples is important because information provided by the tuple manager 300,
`
`which is stored in the neighbor data database 310, may be incomplete. See id. at
`
`6:47-54 (“The tuple manager 300 gathers this data by accessing forwarding tables
`
`and other information sources for the nodes to determine such information as their
`
`physical address, interface information, and the port from which they “hear” other
`
`devices. Based on this information, the tuple manager 300 builds 916 tuples and
`
`stores 918 them in the “neighbor data” database 310. Some nodes may have
`
`incomplete information.”) Shamos Decl. (Ex. 2004) at ¶ 60.
`
`The connection calculator 320 also beneficially removes “redundant
`
`connector-to-connector links” during the infrastructure building phase. Id. at 7:4-
`
`7. Shamos Decl. (Ex. 2004) at ¶ 61. Petitioner’s expert also confirms the
`
`existence of redundant information to be removed:
`
`
`
`18
`
`
`
`
`
`
`
`IPR2015-00717
`
`“Q. Because the connection calculator 320 needs
`
`to remove redundant connector-to-connector links,
`
`the tuple information received from the neighbor
`
`data database 310 has redundant information;
`
`correct?
`
`A. Yes.”
`
`Lavian Dep. (Ex. 2005) at 154:15-20. Petitioner’s expert also confirms the benefit
`
`of removing data during the infrastructure building phase pertaining to old devices
`
`that are no longer connected:
`
`
`
`
`
`
`
`
`
`“Q. Can you think of any benefit?
`
`A. Yes. You want to get the correct data
`
`Q. Any other benefits?
`
`A. “If you have old devices that’s not [sic]
`
`connected, remove it.”
`
`Id. at 153:16-154:1.
`
`3.
`
`The Second Weeding Phase
`
`The connection calculator 320 also performs a second weeding phase to
`
`resolve conflicting reports of singly-heard hosts. ’411 patent (Ex. 1001) at 7:7-10.
`
`“FIG. 13 shows a flow chart of the second weeding phase 926. The purpose of the
`
`second weeding phase 926 is to attempt to resolve conflicts involving singly-heard
`
`
`
`19
`
`
`
`
`
`
`
`IPR2015-00717
`
`hosts identified in the first weeding phase 922. In the situation described herein in
`
`which more than one connector reports that a host is singly-heard, the second
`
`weeding phase 926 reviews the tuples created during the infrastructure-building
`
`phase 924 involving the connector and host in question and attempts to disprove
`
`the reported conflict.” Id. at 9:19-27. Shamos Decl. (Ex. 2004) at ¶ 62.
`
`Petitioner’s expert confirms that conflicts are resolved through the second weeding
`
`phase. Lavian Dep. (Ex. 2005) at 167:17-170:19.
`
`4.
`
`The Noise Reduction Phase
`
`The connection calculator 320 performs a noise reduction phase to remove
`
`redundant neighbor information for connector-to-host links. ’411 patent (Ex.
`
`1001) at 7:10-12. “FIG. 14 shows a flow chart of the noise reduction phase 928.
`
`The purpose of the noise reduction phase 928 is to handle those connections in
`
`which a connector is not directly connected to a host or to another connector.” Id.
`
`at 9:39-42. The noise reduction phase helps provide a more accurate
`
`representation of the nodal connections. As the ’411 patent describes “networking
`
`technology may employ shared media connections between connectors, rather than
`
`dedicated media connectors. With a shared media connection, the entries in the
`
`forwarding tables for connectors attached to the shared media connection will
`
`include every node accessing the shared media connection and may not present a
`
`useful or accurate representation of the nodal connection.” Id. at 9:42-49. “The
`
`
`
`20
`
`
`
`
`
`
`
`IPR2015-00717
`
`noise reduction phase 928 disproves invalid tuples created by the shared media
`
`connections.” Id. at 9:60-61. Shamos Decl. (Ex. 2004) at ¶ 63. Petitioner’s
`
`expert confirms benefits of the noise reduction phase:
`
`“Q. Thus, the noise reduction phase helps provide
`
`a more accurate representation of the nodal connections;
`
`correct?
`
`A. That can be one example, yes.”
`
`Lavian Dep. (Ex. 2005) at 178:4-7; see also id. at 171:8-13; 176:7-17.
`
`5.
`
`The “Look For” Phase
`
`If clarification of device connectivity is required, the connection