`
`UNITED STATES PATENT AND TRADEMARK OFFICE
`______________________
`
`BEFORE THE PATENT TRIAL AND APPEAL BOARD
`______________________
`
`INTEL CORP., CAVIUM, INC., WISTRON, INC., and DELL INC.,
`Petitioner,
`
`v.
`
`ALACRITECH, INC.,
`Patent Owner.
`______________________
`
`Case IPR2017-013921
`U.S. Patent No. 7,337,241
`Title: FAST-PATH APPARATUS FOR RECEIVING DATA CORRESPONDING
`TO A TCP CONNECTION
`______________________
`
`DECLARATION OF ROBERT HORST IN SUPPORT OF PETITIONER’S
`SUR-REPLY IN OPPOSITION TO PATENT OWNER’S MOTION
`TO AMEND FOR INTER PARTES REVIEW OF
`U.S. PATENT NO. 7,337,241
`
`Mail Stop “PATENT BOARD”
`Patent Trial and Appeal Board
`U.S. Patent and Trademark Office
`P.O. Box 1450
`Alexandria, VA 22313-1450
`
`
`1 Cavium, Inc., which filed a Petition in Case IPR2017-01728, Wistron, Inc., which
`
`filed a Petition in Case IPR2018-00328, and Dell Inc., which filed a Petition in
`
`Case IPR2018-00372, have been joined as petitioners in this proceeding.
`
`
`
`INTEL EX. 1255.001
`
`
`
`U.S. Patent No. 7,337,241
`Ex. 1255 (“Horst Sur-Reply Decl.”)
`
`
`TABLE OF CONTENTS
`
`Page
`
`I.
`
`INTRODUCTION .......................................................................................... 1
`
`II.
`
`PATENT OWNER AND DR. ALMEROTH FAIL TO IDENTIFY
`SUPPORT FOR THE NEW LIMITATIONS ............................................. 1
`
`III. ERICKSON DOES NOT DISCLOSE SENDING INTERRUPTS
`TO THE HOST DURING EXECUTION OF THE UDPSCRIPT
`PROCEDURE ................................................................................................ 4
`
`
`
`
`
`i
`
`INTEL EX. 1255.002
`
`
`
`U.S. Patent No. 7,337,241
`Ex. 1255 (“Horst Sur-Reply Decl.”)
`
`
`I, Robert Horst, hereby declare as follows:
`
`I.
`
`INTRODUCTION
`
`1. My name is Robert Horst. I have been retained on behalf of Petitioner
`
`Intel Corporation (“Intel”) to provide this Declaration concerning technical subject
`
`matter relevant to the petition for inter partes review (“Petition”) concerning U.S.
`
`Patent No. 7,337,241 (Ex. 1001, the “241 Patent”). I reserve the right to
`
`supplement this Declaration in response to additional evidence that may come to
`
`light.
`
`2.
`
`I am over 18 years of age. I have personal knowledge of the facts
`
`stated in this Declaration and could testify competently to them if asked to do so.
`
`3.
`
`I am being compensated for my time at the rate of $550 per hour. My
`
`compensation is not based on the resolution of this matter. My findings are based
`
`on my education, experience, and background in the fields discussed below.
`
`4.
`
`I am an independent consultant with more than 30 years of expertise
`
`in the design and architecture of computer systems. My current curriculum vitae is
`
`submitted as Ex. 1236.
`
`5.
`
`I incorporate my declaration Ex. 1210 herein.
`
`II. PATENT OWNER AND DR. ALMEROTH FAIL TO IDENTIFY
`SUPPORT FOR THE NEW LIMITATIONS
`
`6.
`
`The amended portion of substitute claim 25, on which substitute
`
`claims 26-32 depend, is reproduced below:
`
`1
`
`INTEL EX. 1255.003
`
`
`
`U.S. Patent No. 7,337,241
`Ex. 1255 (“Horst Sur-Reply Decl.”)
`
`
`
`sending, by the first mechanism, the data from each packet of the first
`
`type to a destination in memory allocated to an application running on
`
`a host computer without sending any of the media access control layer
`
`headers, network layer headers or transport layer headers to the
`
`destination or to a host protocol stack running on the host computer.
`
`Paper 25 at Appendix A (emphasis in original).
`
`
`7.
`
`It is my opinion that Patent Owner and Dr. Almeroth do not identify
`
`sufficient support for these additional limitations in the original disclosure of the
`
`241 Patent, U.S. Application No. 10/260,878 (“241 Patent Application”). For
`
`example, Dr. Almeroth identifies the communication processing device (CPD) 30
`
`in Figs. 3 and 4 that “sends ‘application data’ from each packet of a first type [] to”
`
`“storage 35.” While the 241 Patent Application discloses that storage 35 is located
`
`on the host and that application data is sent to it, there is no discussion or
`
`indication in the cited portions that storage 35 or any portion of storage 35 is
`
`allocated to an application. See Ex. 2021 at Abstract, Figs. 3 and 4, [0055]-[0064].
`
`Thus, sending packet data “to a destination in memory allocated to an application
`
`running on a host computer” is unsupported.
`
`8.
`
`The amended portion of substitute claim 33, on which substitute
`
`claims 34-40 depend, is reproduced below:
`
`prepending a packet header to each of the segments by a second
`
`processor, thereby forming a packet corresponding to each segment,
`
`each packet header containing a media access control layer header, a
`
`2
`
`INTEL EX. 1255.004
`
`
`
`U.S. Patent No. 7,337,241
`Ex. 1255 (“Horst Sur-Reply Decl.”)
`
`
`
`network layer header and a transport layer header, wherein the
`
`network layer header is Internet Protocol (IP), the transport layer
`
`header is Transmission Control Protocol (TCP) and the media access
`
`control layer header, the network layer header and the transport layer
`
`header are prepended at one time as a sequence of bits during the
`
`prepending of each packet header; and transmitting the packets to the
`
`network, wherein the dividing, prepending, and transmitting occur
`
`without the second processor generating an interrupt to the first
`
`processor. \
`
`Paper 25 at Appendix A (emphasis in original).
`
`
`9.
`
`The amended portion of substitute claim 41, on which substitute
`
`claims 42-48 depend, is reproduced below:
`
`prepending transmitting the outbound packets to the network,
`
`wherein the dividing, prepending, and transmitting occur without the
`
`second mechanism generating an interrupt to the first mechanism.
`
`Paper 25 at Appendix A (emphasis in original).
`
`
`10. Dr. Almeroth argues that the priority application disclosure of a “Fast-
`
`path 400 byte send” is sufficient because it “will result in one interrupt” and that
`
`the host will “only receive [that interrupt] when the send command has been given
`
`to the INIC completes.” Ex. 2305, ¶ 28. However, this position is inconsistent with
`
`Alacritech’s in the related case, Case No. IPR2017-01393 related to patent
`
`9,055,104. There, Alacritech argued that a transmit complete interrupt was sent
`
`3
`
`INTEL EX. 1255.005
`
`
`
`
`immediately by a network interface device after data is received from the host, but
`
`U.S. Patent No. 7,337,241
`Ex. 1255 (“Horst Sur-Reply Decl.”)
`
`before the network interface device completed the transmission:
`
`In this context of the transmit complete interrupt being generated “for
`
`handling by the interrupt controller in the transmit DMA module,” the
`
`“transmit complete interrupt” refers to an interrupt that all the data has
`
`been transmitted from the host computer and received by the network
`
`interface card—in contrast to data being transmitted by network
`
`interface card.
`
`IPR2017-1393, Paper No. 30 at 33-34 (Corrected Patent Owner’s Response
`
`regarding the 104 Patent). If I were to use Alacritech’s flawed logic and assumed
`
`this to be true, then the resulting interrupt from the “Fast path 400 byte send”
`
`would not disclose the lack of an interrupt during the dividing, prepending, and
`
`transmitting steps. Rather, it is likely that the prepending, dividing, and
`
`transmission steps would still be occurring when the interrupt (sent “when the send
`
`command has been given to the INIC completes”) is sent to the host. As I stated in
`
`my Declaration in support of Petitioner’s opposition to the motion to amend, the
`
`provisional application “does not disclose when the interrupt occurs or whether it
`
`occurs before, after, or during a dividing step.” Ex. 1210, ¶ 35.
`
`III. ERICKSON DOES NOT DISCLOSE SENDING INTERRUPTS TO
`THE HOST DURING EXECUTION OF THE UDPSCRIPT
`PROCEDURE
`
`11. Dr. Almeroth argues in his Declaration (Ex. 2305) that Erickson
`
`teaches and suggests reasons why the host would need to be interrupted to perform
`4
`
`INTEL EX. 1255.006
`
`
`
`
`the dividing, prepending, or transmitting steps of the substituted claims 33-48. For
`
`U.S. Patent No. 7,337,241
`Ex. 1255 (“Horst Sur-Reply Decl.”)
`
`the reasons below, I disagree.
`
`12. Dr. Almeroth argues that the nextid() function of the udpscript
`
`procedure disclosed in Erickson provides a monotonically increasing 16-bit
`
`counter and that a POSA “would understand that the host processor and the
`
`network interface processor would want to maintain consistency between the
`
`count, and that to do so the network interface processer would issue interrupts to
`
`the host processor during these steps.” Ex. 2305, ¶ 39. Dr. Almeroth provides no
`
`other explanation for why the “count” would be stored on the host (if at all), why
`
`any “consistency” would need to be maintained, or why consistency (if needed)
`
`would be implemented by an undisclosed interrupt instead of the disclosed shared-
`
`memory snooping mechanism.
`
`13.
`
`If Dr. Almeroth’s theory is true, Patent Owner’s claimed “invention”
`
`of the 241 patent would need to also maintain this consistency with the host. There
`
`is no disclosure in the 241 patent regarding the storage of the IP identification on
`
`the host or maintaining consistency with the host. Thus, to the extent Erickson is
`
`subject to this theory, Alacritech’s 241 patent claimed “invention” would be as
`
`well.
`
`14. As for nextid(), there is only a very limited disclosure in Erickson
`
`regarding the function: “Within the udpscript procedure described above, the
`
`5
`
`INTEL EX. 1255.007
`
`
`
`U.S. Patent No. 7,337,241
`Ex. 1255 (“Horst Sur-Reply Decl.”)
`
`
`nextid() function provides a monotonically increasing 16-bit counter required by
`
`the IP protocol.” Ex. 1005 at 8:10-12. It discloses that this function is executed on
`
`the adapter (where udpscript is executed) and includes no disclosure of the
`
`function storing any value on the host or any “consistency” requirement.
`
`However, Erickson does disclose a mechanism used to provide shared access,
`
`when required, through a snooping mechanism, and this mechanism allows one
`
`processor to modify memory while giving the other processor a consistent view of
`
`the modified memory locations without using interrupts.
`
`15. Erickson discloses that “incoming data is then written to the virtual
`
`memory and detected by polling or ‘snooping hardware’.” Ex. 1005 at 8:50-52.
`
`Erickson clearly shows how the snooping works to allow the adapter and host to
`
`read and write portions of each other’s memory, and this type of snooping does not
`
`involve interrupts. The snooping design allows shared memory registers to be
`
`physically located either in the host memory or adapter, but suggests locating the
`
`registers for best efficiency.
`
`It is possible to improve the performance of the present invention by
`
`implementing a read-local, write-remote strategy. With such a
`
`strategy, the present invention stores values which are likely to be
`
`read in locations which are closest to the reading entity, whereas
`
`values which are likely to be written are stored in locations which are
`
`farthest away from the writing entity.
`
`6
`
`INTEL EX. 1255.008
`
`
`
`U.S. Patent No. 7,337,241
`Ex. 1255 (“Horst Sur-Reply Decl.”)
`
`
`Ex. 1005 at 6:25-31.
`
`16. The value generated by the nextid function is used in the IP header as
`
`the “Datagram ID”:
`
`Ex. 1005 at Fig. 7.
`
`
`17. As explained in Tanenbaum96, the IP Identification field is used by
`
`
`
`the destination host:
`
`7
`
`INTEL EX. 1255.009
`
`
`
`U.S. Patent No. 7,337,241
`Ex. 1255 (“Horst Sur-Reply Decl.”)
`
`
`
`The Identification field is needed to allow the destination host to
`
`determine which datagram a newly arrived fragment belongs to. All
`
`the fragments of a datagram contain the same Identification value.
`
`Ex. 1006 at .432. Thus, it is not clear why Dr. Almeroth believes that this “count”
`
`would need to be synchronized or be made “consistent with the host.” As it is a
`
`monotonically increasing number, a POSA would understand that an interrupt to
`
`the host would be unnecessary since the value could be stored and calculated by
`
`the network interface device.
`
`18.
`
` Dr. Almeroth also argues multiple interrupts to the host must be
`
`triggered after each packet
`
`is
`
`transmitted
`
`in order
`
`to configure
`
`the
`
`senduserdatagram process for the next packet. Ex. 2305, ¶ 40. I disagree. As I
`
`explained in my original declaration, a POSA would have created a script that
`
`could send multiple packets. Ex. 1003.149-150. Thus, after setting up the script a
`
`single time, the steps of dividing, prepending, and transmitting could all occur
`
`multiple times without intervening interrupts to set up “pointers, memory
`
`addresses, and “virtual registers.” Further, even if senduserdatagram required
`
`multiple interrupts to setup after the transmission of a packet, there would still be
`
`no interrupts being sent during the dividing, prepending, and transmitting
`
`operations.
`
`
`
`
`
`8
`
`INTEL EX. 1255.010
`
`
`
`U.S. Patent No. 7,337,241
`Ex. 1255 (“Horst Sur-Reply Decl.”)
`
`Declaration
`
`19.
`
`I declare that all statements made herein on my own knowledge are
`
`true and that all statements made on information andbelief are believed to be true,
`
`and further, that these statements were made with the knowledge that willful false
`
`statements and the like so made are punishable by fine or imprisonment, or both,
`
`under Section 1001 of Title 18 of the United States Code.
`
`Dated: June 1, 2018
`
`v
`
`ay
`
`/
`
`Liv hy Mort
`
`,
`
`oY
`
`Robert Hérst
`
`INTEL EX. 1255.011
`
`INTEL EX. 1255.011
`
`