throbber
UNITED STATES PATENT AND TRADEMARK OFFICE
`
`BEFORE THE PATENT TRIAL AND APPEAL BOARD
`
`
`Juniper Networks, Inc. & Palo Alto Networks, Inc.,
`Petitioners,
`
`v.
`
`Packet Intelligence LLC,
`Patent Owner.
`
`
`Case IPR2020-00337
`U.S. Patent No. 6,771,646
`
`PATENT OWNER’S PRELIMINARY RESPONSE UNDER 37
`C.F.R. § 42.107 TO PETITION FOR INTER PARTES REVIEW
`OF U.S. PATENT NO. 6,771,646
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Mail Stop “PATENT BOARD”
`Patent Trial and Appeal Board
`U.S. Patent and Trademark Office
`P.O. Box 1450
`Alexandria, VA 22313-1450
`
`

`

`
`
`Patent Owner’s Exhibits
`
`EXHIBIT LIST
`
`Exhibit
`2001
`2002
`
`2003
`
`2004
`2005
`
`2006
`
`2007
`
`2008
`2009
`2010
`2011
`2012
`2013
`2014
`2015
`
`2016
`2017
`2018
`2019
`2020
`
`2021
`
`2022
`
`Description
`Almeroth Declaration
`Packet Intelligence LLC v. Sandvine Corp., No. 2:16-cv-00147,
`Dkt. No. 17 (E.D. Tex. June 1, 2017) (order consolidating cases)
`File History for U.S. Patent No. 6, 771,646 - Feb. 10, 2004,
`Response to Office Action (annotated version of Ex. 1020)
`Reserved
`Palo Alto Networks, Inc. v. Packet Intelligence LLC (No. 19-cv-
`02471-WHO) and Packet Intelligence LLC v. Juniper Networks,
`Inc. (No. 19-cv-04741-WHO), Transcript of Case Management
`Conference on January 7, 2020
`Palo Alto Networks, Inc. v. Packet Intelligence LLC, No. 19-cv-
`02471-WHO, Dkt. No. 62 (May 15, 2020) (Order Granting Palo
`Alto Networks’ Proposed Modification to the Scheduling Order)
`Packet Intelligence LLC v. Juniper Networks, Inc., No. 3:19-cv-
`04741-WHO, Dkt. No. 48 (March 29, 2020) (Stipulated First
`Amended Scheduling Order)
`PAN Contentions A5 - (Riddle)
`PAN Contentions A13 - (Yu)
`JUN Contentions A6 - (Riddle and Ferdinand)
`JUN Contentions A7 - (Riddle and Ferdinand and Yu)
`JUN Contentions A8 - (Riddle and Ferdinand and Baker)
`JUN Contentions A9 - (Riddle and Ferdinand and Baker and Yu)
`JUN Contentions A10 - (Riddle and Ferdinand and RFC1945)
`JUN Contentions A11 - (Riddle and Ferdinand and Baker and
`RFC1945)
`JUN Contentions B6 - (Riddle and Baker)
`JUN Contentions B7 - (Riddle and Baker and Yu)
`JUN Contentions B8 - (Riddle and Baker and RFC1945)
`JUN Contentions C6 - (Riddle and Ferdinand and Wakeman)
`JUN Contentions C7 - (Riddle and Ferdinand and Wakeman and
`Yu)
`JUN Contentions C8 - (Riddle and Ferdinand and Wakeman and
`RFC1945)
`JUN Contentions D6 - (Riddle and Ferdinand)
`
`ii
`
`

`

`
`
`
`
`2023
`2024
`2025
`2026
`2027
`2028
`
`2029
`
`2030
`2031
`2032
`2033
`
`2034
`2035
`2036
`
`2037
`2038
`2039
`2040
`2041
`
`2042
`
`2043
`
`JUN Contentions D7 - (Riddle and Ferdinand and Yu)
`JUN Contentions D8 - (Riddle and Ferdinand and RFC1945)
`JUN Contentions E6 - (Riddle and Ferdinand) 789
`JUN Contentions E7 - (Riddle and Ferdinand and Yu)
`JUN Contentions E8 - (Riddle and Ferdinand and Wakeman)
`JUN Contentions E9 - (Riddle and Ferdinand and Wakeman and
`Yu)
`JUN Contentions E10 - (Riddle and Ferdinand and Wakeman and
`RFC1945)
`JUN Contentions E11 - (Riddle and Ferdinand and Baker)
`JUN Contentions E12 - (Riddle and Ferdinand and Baker and Yu)
`JUN Contentions E13 - (Riddle and Ferdinand and RFC1945)
`JUN Contentions E14 - (Riddle and Ferdinand and Baker and
`RFC1945)
`JUN Contentions E15 - (Riddle and Ferdinand and Hasani)
`JUN Contentions E16 - (Riddle and Ferdinand and Hasani and Yu)
`JUN Contentions E17 - (Riddle and Ferdinand and Hasani and
`RFC1945)
`U.S. Patent No. 7,748,002 (“Beser”)
`File History for USPN 7,748,002 - October 3, 2006 Office Action
`U.S. Patent No. 7,706,357 (“Dyckerhoff”)
`File History for USPN 7,706,357 - June 30, 2009 Office Action
`January 18, 2019 Letter to Palo Alto Networks re Notice of
`Infringement
`January 18, 2019 Letter to Juniper Networks Inc re Notice of
`Infringement
`Almeroth CV
`
`
`iii
`
`

`

`
`
`TABLE OF CONTENTS
`
`I.
`
`Introduction .......................................................................................................... 1
`
`II. Summary of the Argument .................................................................................. 1
`
`III. Background .......................................................................................................... 2
`
`A. The OSI Model ................................................................................................. 4
`
`B. Data Encapsulation ........................................................................................... 5
`
`C. Prior Art Methods ............................................................................................. 8
`
`IV. Overview of the ’646 Invention ........................................................................... 9
`
`A. Conversational Flow Classification Process Overview .................................12
`
`B. Benefits of Conversational Flows Over Prior Art Systems ...........................16
`
`V. Overview of Asserted Prior Art .........................................................................18
`
`A. Riddle ..............................................................................................................18
`
`B. Yu ...................................................................................................................19
`
`C. RFC 1945 ........................................................................................................20
`
`VI. Claim Construction ............................................................................................21
`
`A. Level of Ordinary Skill in the Art ..................................................................21
`
`B. “conversational flow”/“conversational flow-sequence” ................................21
`
`C. Remaining Terms ...........................................................................................26
`
`VII.
`
`Argument ....................................................................................................26
`
`A. The Board Should Deny Institution Under § 314(a) ......................................27
`1.
`Institution Would Not Provide an Effective and Efficient
`Alternative to Ongoing Litigation ...................................................28
`2. The General Plastic Factors Warrant Discretionary Denial
`Under § 314(a) .................................................................................34
`
`B. Ground 1 - Riddle Fails to Disclose “conversational flows” .........................37
`1. Service Aggregates Are Not “conversational flows” ..............................41
`2. Riddle’s Recognition of PointCast Traffic Fails to Disclose
`“conversational flows” .....................................................................43
`
`C. Ground 2 - There Is No Apparent Reason to Combine Yu with
`
`Riddle ..........................................................................................................44
`
`D. Ground 2 - Yu Fails to Disclose “conversational flows” ...............................46
`
`E. Ground 3 - RFC 1945 Fails to Disclose “conversational flows” ...................47
`
`iv
`
`

`

`
`
`VIII. Conclusion ..................................................................................................48
`VIII.
`Conclusion .................................................................................................. 48
`
`
`
`
`
`
`v
`
`

`

`
`
`TABLE OF AUTHORITIES
`
`Cases
`Advanced Bionics, LLC v. MED-EL Elektromedizinische Geräte GmbH,
`IPR2019-01469, Paper 6 (P.T.A.B. Feb. 13, 2020) ...........................................35
`
`Apple Inc. v. Fintiv, Inc.,
`IPR2020-00019, Paper 11 (P.T.A.B. Mar. 20, 2020) ........................................28
`
`Apple Inc. v. Fintiv, Inc.,
`IPR2020-00019, Paper 15 (P.T.A.B. May 13, 2020) ................................. 28, 29
`
`Aylus Networks, Inc. v. Apple Inc.,
`856 F.3d 1353 (Fed. Cir. 2017) .........................................................................23
`
`General Plastic Industrial Co., Ltd. v. Canon Kabushiki Kaisha,
`IPR2016-01357, Paper 19 (P.T.A.B. Sept. 6, 2017) .................................. 28, 34
`
`KSR Int’l Co. v. Teleflex Inc.,
`550 U.S. 398 (2007) ...........................................................................................45
`
`Microsoft Corp. v. Enfish, LLC,
`662 F. App’x 981 (Fed. Cir. 2016) ....................................................................45
`
`NHK Spring Co. Ltd. v. Intri-Plex Techs. Inc.,
`IPR2018-00752, Paper 8 (P.T.A.B. Sept. 12, 2018) .........................................28
`
`Omega Eng’g, Inc. v. Raytek Corp.,
`334 F.3d 1314 (Fed. Cir. 2003) .........................................................................23
`
`Packet Intelligence LLC v. Netscout Sys., Inc.,
`No. 2:16-cv-230, Dkt. No. 66 (E.D. Tex. Mar. 15, 2017) .................................22
`
`Sandvine Corp. v. Packet Intelligence, LLC,
`IPR2017-00450, Paper 8 (P.T.A.B. July 26, 2017) .......................................2, 21
`
`Sandvine Corp. v. Packet Intelligence, LLC,
`IPR2017-00451, Paper 8 (P.T.A.B. July 26, 2017) .......................................2, 22
`
`Sandvine Corp. v. Packet Intelligence, LLC,
`IPR2017-00629, Paper 8 (P.T.A.B. July 26, 2017) .......................................2, 22
`
`Sandvine Corp. v. Packet Intelligence, LLC,
`IPR2017-00630, Paper 9 (P.T.A.B. July 26, 2017) .......................................2, 22
`
`Sandvine Corp. v. Packet Intelligence, LLC,
`IPR2017-00769, Paper 8 (P.T.A.B. July 26, 2017) .......................................2, 22
`
`Sandvine Corp. v. Packet Intelligence, LLC,
`IPR2017-00862, Paper 8 (P.T.A.B. July 26, 2017) .......................................2, 22
`
`U.S. Surgical Corp. v. Ethicon, Inc.,
`103 F.3d 1554 (Fed. Cir. 1997) .........................................................................24
`
`vi
`
`

`

`
`
`Statutes
`35 U.S.C. § 314 ................................................................................................ passim
`
`35 U.S.C. § 316 ........................................................................................................30
`
`35 U.S.C. § 325 ........................................................................................................35
`
`Regulations
`37 C.F.R. § 42.100 ...................................................................................................26
`
`
`
`
`
`vii
`
`

`

`
`
`I. Introduction
`
`The Board should refuse to institute inter partes review of U.S. Patent No.
`
`6,771,646 (“the ’646 Patent,” Ex. 1003) because Petitioners have not shown a
`
`reasonable likelihood of prevailing on the invalidity grounds presented on claims 1-
`
`3, 7, 16, and 18 of the ’646 Patent (“the challenged claims”). The Petition relies on
`
`three references to purportedly disclose the novel “conversational flows” of the ’646
`
`Patent: U.S. Patent No. 6,412,000 (“Riddle,” Ex. 1008); U.S. Patent No. 6,625,150
`
`(“Yu,” Ex. 1011); and RFC 1945 (Ex. 1010). As detailed below, none of these
`
`references teach the claimed “conversational flows,” and thus the Petition fails to
`
`establish a reasonable likelihood that Petitioners will prevail in their IPR challenges.
`
`II. Summary of the Argument
`
`The instant petition is ripe for discretionary denial under 35 U.S.C. § 314(a)
`
`for at least two reasons. First, there are two parallel district court proceedings
`
`involving the same patents, the same parties, and the same asserted art. The district
`
`court expressed that it does not intend to enter a stay in these proceedings, and trial
`
`is set for both proceedings within days of the time a final written decision would
`
`likely be rendered. The parties have also invested considerable resources in the
`
`district court proceedings, including substantial discovery and ongoing claim
`
`construction. Given the state of the parallel proceedings, the Board should deny the
`
`instant petition to avoid duplicative efforts about essentially the same issues raised
`
`in this petition.
`
`Additionally, the ’646 Patent and its family members have been subjected to
`
`at least six other IPR Petitions filed by Sandvine Corporation, all of which were
`
`1
`
`

`

`
`
`conducted under the “broadest reasonable interpretation” standard that the Office
`
`applied at the time of those proceedings. See Sandvine Corp., et al. v. Packet
`
`Intelligence, LLC, IPR2017-00450, Paper 8 at 7-10; IPR2017-00451, Paper 8 at 7-
`
`10; IPR2017-00629, Paper 8 at 7-9; IPR2017-00630, Paper 9 at 7-9; IPR2017-
`
`00769, Paper 8 at 8-10; IPR2017-00862, Paper 8 at 7-10 (all P.T.A.B. July 26, 2017).
`
`The Board should further exercise its discretion under § 314(a) because the ’646
`
`Patent has been subjected to serial petitions in the past.
`
`Finally, none of the asserted art discloses or teaches the claimed
`
`“conversational flows” of the ’646 Patent. This is precisely the conclusion the Board
`
`reached in the earlier IPRs involving this same patent family. As detailed below,
`
`“conversational flows” relate to an activity performed by a user or a client. Thus,
`
`different users performing the same type of activity would yield different
`
`conversational flows. But, the art raised by Petitioners treats packets corresponding
`
`to the same type of activity identically—it does not differentiate between activities
`
`based on the underlying user or client performing or initiating the activity. For these
`
`reasons, the Board should decline to institute trial.
`
`III. Background
`
`The ’646 Patent discloses improved techniques for monitoring traffic over a
`
`computer network. Conventional prior art network monitors categorize network
`
`transmissions into “connection flows.” ’099 Patent at 2:34-37; Provisional at 3:3-10
`
`2
`
`

`

`
`
`(Ex. 1016 at 8).1 A connection flow refers to the sequence of packets involved in a
`
`single connection. One of the novel features of the ’646 Patent, and the focus of the
`
`arguments in this preliminary response, is the ability to relate different connection
`
`flows to one another into “conversational flows” to the extent that those connection
`
`flows relate to the same activity. As will be described in more detail below, a
`
`conversational flow is the sequence of packets that are exchanged in any direction
`
`as a result of an activity—for instance, the running of an application (such as a Skype
`
`call) on a server as requested by a client—and where some conversational flows
`
`involve more than one connection, and some even involve more than one exchange
`
`of packets between a client and server. ’099 Patent at 2:34-45; Provisional at 3:3-10
`
`(Ex. 1016 at 8).
`
`Essentially, the network monitor disclosed in the ’646 Patent categorizes
`
`network transmissions into “conversational flows,” which relate one or more
`
`connection flows with each other based on specific application activity by a
`
`particular user or client. In addition, the ’646 Patent teaches other innovative
`
`techniques, including the use of state operations and state of the flow analysis to help
`
`identify conversational flows, which differs from prior methods of identifying
`
`applications by their well-known ports. These teachings enable classification of all
`
`
`
`1 The ’646 Patent incorporates by reference U.S. Provisional Patent Application No.
`
`60/141,903 (Ex. 1016, “Provisional”) and U.S. Patent No. 6,651,099 (Ex. 1001, “the
`
`’099 Patent”). See ’646 Patent at 1:7-18. Accordingly, most citations regarding the
`
`challenged family of patents will be to the ’099 Patent and Provisional.
`
`3
`
`

`

`
`
`packets passing through a network, providing detailed insight and information to
`
`network managers and operators regarding activity and bandwidth consumption
`
`occurring on the network.
`
`Before delving into specifics, it is useful to understand certain fundamentals
`
`regarding network traffic, as well as a brief, high-level overview of the evolution of
`
`network monitoring.
`
`A. The OSI Model
`
`Information is transmitted across networks, such as the Internet, as data
`
`packets. Ex. 2001 ¶ 44 (hereinafter “Almeroth”). Data packets are formatted in
`
`compliance with established rules known as protocols. Id. To facilitate
`
`communications across various networks, the International Standards Organization
`
`(“ISO”) developed the Open Systems Interconnection (“OSI”) model. Id. The OSI
`
`model defines a framework for implementing communications between any two
`
`network devices and divides the communication process into seven layers as shown
`
`below:
`
`’099 Patent at 9:35-50; Almeroth ¶ 44.
`
`4
`
`

`

`
`
`Each layer provides specific functions to support the layers above it. The
`
`Application layer (layer 7) is the highest layer, while the Physical layer (layer 1) is
`
`the lowest layer. Almeroth ¶ 45. These layers provide a model for describing
`
`common formats used in network communications. Id. Each layer serves a particular
`
`purpose within the network communication model. Id. The Application layer
`
`represents the application protocol used in a network communication and is typically
`
`the protocol that a user’s application employs to communicate (for example, email
`
`program, web browser, etc.). Id. For instance, the Skype application uses a
`
`proprietary protocol along with standard protocols for audio and video—if required.
`
`Similarly, web browsers use the HTTP protocol. Such application level data is
`
`located in the Application layer of a data packet. Id.
`
`The Network layer (layer 3) includes protocols such as the Internet Protocol,
`
`also known as IP, used to support network routing decisions that guide traffic
`
`through the Internet. Almeroth ¶ 46. The Physical layer (layer 1) includes protocols
`
`such as Ethernet, which control the transmission of raw data on the wire. Id.
`
`The OSI model provides a basic framework for understanding: (1) high level
`
`networking; (2) how certain hardware and software elements interact; and (3) the
`
`relationship of specific information contained within a packet. Almeroth ¶ 47. It
`
`serves a generic means to separate computer networking functions into discrete
`
`functional groups. Id.
`
`B. Data Encapsulation
`
`Encapsulation enables protocol layering, which is taking a higher-level
`
`protocol message and packaging it into one or more lower‐level protocol messages.
`
`5
`
`

`

`
`
`Almeroth ¶ 48. Several layers, or protocols, may be involved in a single network
`
`communication. Id. At the beginning of a network transmission, an application
`
`writes a message or data in an application layer protocol, for example, HTTP or the
`
`Skype protocol—this is OSI layer 7. Id. The message is represented by the red block
`
`called “DATA” at the top right in the image below. Id.
`
`In order to send the actual message to another computer across a network, the
`
`application data (i.e., the “DATA” block in the image above) is encapsulated.
`
`Encapsulation appends additional headers for other lower level layers in the OSI
`
`model to the application layer data. Almeroth ¶ 49. The image above illustrates this
`
`by the addition of “H” blocks (i.e., headers) to the left of the application message at
`
`each lower OSI level. Id. Each header contains information that helps components
`
`in the network (switches, routers, gateways, etc.) route the data packet to its
`
`destination. Id.
`
`Before transmission, and after possible encapsulation in layers 6, 5, and 4, a
`
`message may be broken into one or more IP messages (or packets) that are
`
`6
`
`

`

`
`
`constructed in conformance with the IP protocol. Almeroth ¶ 50. The IP protocol
`
`layer is layer 3. Id. Each of these IP packets includes a header with information
`
`specific to the IP protocol, such as the source IP address, destination IP address, and
`
`the length of the packet. Id. A data portion that includes a fragment of the higher‐
`
`level protocol transmission follows the header, as the image above illustrates. Id. At
`
`this point, the original message has been fragmented and encapsulated into multiple
`
`IP messages. Id. Stated differently, a single layer 7 message is encapsulated into a
`
`set of layer 3 messages. Id. In relation to the image above, the “DATA” block seen
`
`in the Application layer, may be split into smaller blocks at the layer 3 and spread
`
`across several IP packets.
`
`Each of these layer 3 IP messages may be further encapsulated into one or
`
`more lower layer messages (or packets), such as Ethernet. Almeroth ¶ 51. The
`
`Ethernet packets will have a header with Ethernet‐specific information, while the
`
`data portion will contain the pieces of data that comprise the IP message. Id. The
`
`original message may undergo multiple encapsulation steps. Id.
`
`After the encapsulation process is complete, the Ethernet (layer 1) packets are
`
`placed directly on the wire for transmission. Almeroth ¶ 52. The receiving computer
`
`receives the Ethernet messages, where the messages will be unpacked and
`
`recombined to form the original message—first combining the Ethernet messages to
`
`create the IP messages. Id. During this process, the headers of the Ethernet packets
`
`are removed, and the data portions concatenated to form an IP message. Id. Then,
`
`the IP messages will be combined to create the original message again on the
`
`receiving computer, which is then processed by the appropriate application on the
`
`7
`
`

`

`
`
`receiving computer. Id. In other words, once reassembled, the destination computer
`
`will have the same “DATA” block originally transmitted. Id.
`
`C. Prior Art Methods
`
`The field of network monitoring has evolved throughout the years to keep up
`
`with ever increasing network complexity and sophistication. Almeroth ¶ 53. One of
`
`the earliest methods of application identification in network monitoring is called
`
`static packet filtering, in which port numbers are used as a proxy to identify
`
`applications. Id. A port can be thought of as part of an address for implementing
`
`services. Id. Specifically, the transport layer (layer 4) in a data packet contains both
`
`destination and source computer port information. Certain services are known to run
`
`on specific ports. Id. For example, HTTP traffic traditionally utilizes port 80. Id.
`
`Because of this, prior art monitors would classify any data packets utilizing port 80
`
`as HTTP traffic without looking at the packet’s payload to confirm this assumption.
`
`Id. The static packet filtering method only looks at information in the transport
`
`headers and does not delve further into higher level OSI layers to provide detailed
`
`information about the actual data being transmitted/received. Id.
`
`Later improvements in network monitoring led to “stateful packet filtering.”
`
`Almeroth ¶ 54. Stateful packet filtering operates on a connection flow basis and
`
`allows traffic from outside of a network to communicate with a device on the inside
`
`of a network on a bi-directional connection flow basis when the communication
`
`originated from inside the network. Id. This method has the same limitations as static
`
`packet filtering in terms of its ability to identify application layer protocols or
`
`applications. Id.
`
`8
`
`

`

`
`
`More complex methods of network monitoring that examine higher level OSI
`
`layer data are generally called Deep Packet Inspection (“DPI”). Almeroth ¶ 55.
`
`Depending on implementation, DPI can look beyond transport level headers, deeper
`
`into the packet, and provide detailed information about the actual data contained in
`
`a packet and the application responsible for generating such packets. Id. This more
`
`refined approach allows network operators to develop sophisticated rules for
`
`network operation and can help prevent viruses and other undesirable content from
`
`entering a network. Id. In addition, greater insight into network traffic allows for
`
`implementing business models such as bandwidth shaping and charging users for
`
`utilizing specific types of content (for example, video downloads or streaming).
`
`The techniques taught in the ’646 Patent are more sophisticated than
`
`traditional static filtering and stateful packet filtering. Almeroth ¶ 56. Indeed, the
`
`invention teaches the ability to examine data packets and identify the protocols used
`
`and the applications responsible for generating them, permitting robust network
`
`monitoring. Id. As will be explained below, one of the novel ways this is achieved
`
`is by conversational flow analysis, which provides an improvement over the
`
`capabilities of prior art monitors. Id.
`
`IV. Overview of the ’646 Invention
`
`The ’646 Patent was filed on June 30, 2000, and claims priority to provisional
`
`application 60/141,903 filed on June 30, 1999.
`
`One problem that the ’646 inventors desired to solve concerns disjointed
`
`flows. Prior art monitors could keep track of connection flows. “A flow is a stream
`
`of packets being exchanged between any two addresses in the network.” ’099 Patent
`
`9
`
`

`

`
`
`at 12:4-5; Provisional at 40:4-5 (Ex. 1016 at 45). A “connection flow” is “all the
`
`packets involved with a single connection.” ’099 Patent at 2:35-37; Provisional at
`
`3:3-5 (Ex. 1016 at 8). The problem with only tracking connection flows is that
`
`certain applications and protocols may generate multiple connections. In other
`
`words, a single application may spawn multiple connections for a single activity. For
`
`example, if user A wants to have a Skype call with user B, the Skype application
`
`may create multiple connections between computers A and B to conduct the call.
`
`There might be one connection that supplies setup information, a second connection
`
`that transmits video information, and a third connection that transmits audio
`
`information. Prior art monitors would consider these three separate connections even
`
`though they originated from a single Skype call.
`
`According to the Patentees, a “conversational flow” is “the sequence of
`
`packets that are exchanged in any direction as a result of an activity—for instance,
`
`the running of an application on a server as requested by a client” and some
`
`“conversational flows involve more than one connection, and some even involve
`
`more than one exchange of packets between a client and server.” ’099 Patent at 2:37-
`
`45; Provisional at 3:5-10 (Ex. 1016 at 8). One aspect that “distinguishes this
`
`invention from prior art network monitors is that it has the ability to recognize
`
`disjointed flows as belonging to the same conversational flow.” ’099 Patent at 3:48-
`
`51; see also Provisional at 4:13-14 (Ex. 1016 at 9). Conversational flows are
`
`established, in part, by the invention’s “capabil[ity] of examining up to whatever
`
`level is sufficient to uniquely identify to a required level, even all of the way to the
`
`10
`
`

`

`
`
`application level (in the OSI model).” ’099 Patent at 4:13-16; see also Provisional
`
`at 25:3-5 (Ex. 1016 at 30).
`
`The specification provides an example that illustrates how conversational
`
`flows relate connection flows for an activity. The example involves the use of the
`
`SAP (Service Advertising Protocol) developed by NetWare. See ’099 Patent at 2:49-
`
`52. SAP “identif[ies] the services and addresses of servers attached to a network.”
`
`Id. at 2:51-52. In this example, a client might send an SAP request to determine the
`
`appropriate server to use for printing services. See id. at 2:52-53. In response, the
`
`server would send an SAP reply identifying the appropriate server for handling print
`
`services. See id. at 2:53-56. At this point, the original client can send a print request
`
`to the identified server. Each of these exchanges represent a connection flow—the
`
`first is between the client and SAP server; the second is between the client and print
`
`server. See id. at 2:64-67. “In order to eliminate the possibility of disjointed
`
`conversational exchanges, it is desirable for a network packet monitor to be able to
`
`‘virtually concatenate’—that is, to link—the first exchange with the second.” Id. at
`
`3:1-4. However, the specification contemplates another scenario in which a second
`
`(different) client sends a print request to the print server. See, e.g., id. at 2:58-64. In
`
`this scenario, the exchange between the second client and print server represents a
`
`different conversational flow than the two exchanges from the same client detailed
`
`above—i.e., the second client is initiating a different activity than the first client,
`
`even though both clients are requesting print services. See id. at 3:4-6 (“If the clients
`
`were the same, the two packet exchanges would then be correctly identified as being
`
`part of the same conversational flow.” (emphasis added)). Conversely, if the clients
`
`11
`
`

`

`
`
`were not the same, the packet monitor would correctly recognize that the exchange
`
`from the second client represented a different conversational flow corresponding to
`
`a different print request activity than that of the first client.
`
`A. Conversational Flow Classification Process Overview
`
`The following discussion describes a preferred embodiment of the invention
`
`as described in the patent specification. Figure 3 from the patent depicts “a functional
`
`block diagram of a process embodiment of the present invention that can operate as
`
`the packet monitor . . . ”:
`
`’099 Patent at 7:47-50, Fig. 3.
`
`The monitor described in the ’646 Patent examines network traffic passing a
`
`connection point in a network. ’099 Patent at Abstract, 5:12-15; see also Provisional
`
`at 15:7-8 (Ex. 1016 at 20). The monitor receives packets from a network and passes
`
`them to a
`
`12
`
`

`

`
`
`[p]arser subsystem 301 [that] examines the packets using pattern
`
`recognition process 304 that parses the packet and determines the
`
`protocol types and associated headers for each protocol layer that exists
`
`in the packet 302. An extraction process 306 in parser subsystem 301
`
`extracts characteristic portions (signature information) from the packet
`
`302. Both the pattern information for parsing and the related extraction
`
`operations, e.g., extraction masks, are supplied from a parsing-pattern-
`
`structures and extraction-operations database (parsing/extractions
`
`database) 308 filled by the compiler and optimizer 310.
`
`’099 Patent at 12:12-22; see also Provisional at 18:4-10 (Ex. 1016 at 23).
`
`The information from the parser sub-system is passed to an analyzer
`
`subsystem where the information extracted by the parser is compared to “an internal
`
`data store of records of known flows that the system has already encountered, and
`
`decides (in 316) whether or not this particular packet belongs to a known flow as
`
`indicated by the presence of a flow-entry matching this flow in a database of known
`
`flows 324. A record in database 324 is associated with each encountered flow.” ’099
`
`Patent at 13:54-61; see also Provisional at 41:15-18 (Ex. 1016 at 46). As seen in
`
`Figure 3, above, the analyzer sub-system contains an extensive flow chart for
`
`processing extracted packet information. According to the Patentees:
`
`[P]ackets may need to be examined before the conversational flow can
`
`be identified as being associated with the application program.
`
`Typically, monitor 108 is simultaneously also in partial completion of
`
`identifying other packet exchanges that are parts of conversational
`
`flows associated with other applications. One aspect of monitor 108 is
`
`its ability to maintain the state of a flow. The state of a flow is an
`
`indication of all previous events in the flow that lead to recognition of
`
`13
`
`

`

`
`
`the content of all the protocol levels, e.g., the ISO model protocol
`
`levels.
`
`’099 Patent at 10:24-33; see also Provisional at 16:1-7 (Ex. 1016 at 21).
`
`The analyzer sub-system preferably includes a state processor database 326,
`
`which provides information about “the different states and state transitions that occur
`
`in different conversational flows, and the state operations that need to be performed
`
`(e.g., patterns that need to be examined and new signatures that need to be built)
`
`during any state of a conversational flow to further the task of analyzing the
`
`conversational flow.” ’099 Patent at 12:50-55. The state processor database provides
`
`information to the state processor 328 which
`
`analyzes both new and existing flows in order to analyze all levels of
`
`the protocol stack, ultimately classifying the flows by application (level
`
`7 in the ISO model). It does this by proceeding from state-to-state based
`
`on predefined state transition rules and state operations as specified in
`
`state processor instruction database 326. A state transition rule is a rule
`
`typically containing a test followed by the next-state to proceed to if the
`
`test result is true…The state processor goes through each rule and each
`
`state process until the test is true, or there are no more tests to perform.
`
`’099 Patent at 14:63-15:9; see also Provisional at 19:26-20:3 (Ex. 1016 at 24-25).
`
`The analysis of extracted pac

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket