`
`MARK A. LAUER (tsarNo. 163756)
`THOI\,IAS W. LATHRAM (Bar No. 59639)
`T. LESTER WALLACE (BarNo. 159967)
`SILICON EDCE LAW GROUP, LLP
`6601 Kolll Center Parkway
`Suite 245
`Pleasanton, Califomia 94566,
`Telephone: 925-621-2114
`Facsimile: 925-621-2119
`
`Attorneys for Plaintiff
`Alacritech, Inc.
`
`LNITED STATES DISTRICT COIJRT
`
`NORTHERN DISTR.NCT OF CALIFORNIA
`
`SAN FRA.NCISCO DIVISION
`
`Case No.: CM-03284 JSW
`
`DECLARATION OF DR, KEVIN
`ALMER.OTHIN SUPPORT OF
`ALACRITECII'S REPI,Y TO
`N,trCR,OSOFT'S OPPOSITION TO
`ALACRITECH'S MOTION FOR
`PRELIMIT..{ARY INJUNCTNOI{
`
`Before the Honorab,le Jeffrey S. White
`Hearing Date: March 25, 2005
`Hearing Time: 9:00 a.m.
`Place: Coumoom 2, I 7'h F loor
`
`) ) ) )) ) ) ) ) ) ) )l
`
`A,LACzuTECH, INC.,
`
`Plaintiff.
`
`v.
`
`MICROSOFT CORPOR,{TION,
`
`Defendant.
`
`I, Dr. Kevin Atrmerotfi, declare andl state as follows:
`
`Materials Reviewed
`
`In addition to the materirals reviewed as set forth in my prior declaration (Declaration
`
`Of Dr. Kevin Almeroth In Support Of Alacri,tech's Motion For Preliminary Injunction of
`
`DECLARATION OF DR. KEVIN ALIVMROIH 1
`IN SLIPPORT OF ALACR.ITECH'S REPLY TO
`MICROSOFT'S OPPOSITION TO ALACRITECH'S MOTION
`FOR PRELIMINARY I]NJLNCTION
`
`Case No. C04-03284 JSW
`
`I 2 3 4 5 6 7 II
`
`l0
`II
`
`t2
`
`13
`
`14
`
`15
`
`16
`
`t7
`
`18
`
`19
`
`2A
`
`2i
`
`22
`
`23
`
`.A
`
`25
`
`26
`
`27
`
`28
`
`INTEL EX.1251.001
`
`
`
`Case 3:04-cv-03284-JSW Document 73 Flled 021L1105 Page 2 of 24
`
`Microsoft's trnfringement Of Claim 1 of U.S. Patent No. 6,697 ,&68 ),I have reviewed
`documents including the following:
`
`a. Second Revilsed Extribit A To Joilnt Claim Construction And Prehearing Statement
`
`Re Preliminary Injunction (the "Joint Claim Construction Statement").
`
`b. Defendant/Counterclaimant Microsoft Corporation's Opposition To Alacritech's
`
`Motion For Preliminary Injunction ("Mircrosoft's Opposition").
`
`c. Declaratiom of James Pinkerton In Support Of Microsoft's Opposition To
`
`Alacritech's Motion For Preliminary Injunction ("Chesson Deolaration").
`
`d. Declaration of Dr. Gregory L. Chesson In Support Of Microsoft's Opposition To
`
`Alacritech's Motion For Preliminary lnjunction ("Chesson Deolaration").
`
`The "Microsoft Press Computer Dictionary", third edition, pg. 256, copyright
`
`e. Exhibits A-Q to the Chesson Declaration.
`f.
`199t7 , pages 254 - 256, 293,307, 383 (Exhibit A to this Declaration).
`C. U.S. Patent No. 6,141 ,705 to Anardl, et al. (Exhibit B to this Declaration).
`h.
`U.S. Patent No. 5,058,1 l0 to Beach et al. (Exhibit C to this Declaration)-
`i.
`
`U.S. Patent No. 6,A34,961to Minami et al" (Exhibit D to this Declaration).
`
`Construction of Claim 1 of tbe'868 Patent
`
`l.
`ttre Joint Claim Construction Statement and find that construction to be reasonatrle. In
`
`I have reviewed Alacritech's proposedl claim construction that irs set forth in
`
`particular, I note that:
`
`A-
`2.
`
`Instruotions
`
`The term "instruction" (an "instruction" ofthe type that is "executable on a
`
`prooessor") has a well-understood meaning in ttre electrical enginoering and computer
`
`science arts. The '868 patent dliscloses a microprocessor as one example ofa "processor,"
`
`and rnore particlrlarly identirfies a Pentium as an example of a microprocessor. A Pentium is,
`
`DECLAR"A.TION OF DR, KEVIN AIMEROTH 2
`IN SLIPPORT OF ALACRITECH'S REPLY TO
`MICROSOFT'S OPPOSITION TO ALACRITECH'S MOTION
`FOR PR.ELIMINARY INJLINCTION
`
`Case No. C04-03284 JSW
`
`u 2 3 4 5 6 7 8 9
`
`10
`
`il
`
`12
`
`l3
`
`t4
`
`l5
`
`l6
`
`t7
`
`l8
`
`l9
`
`20
`
`2t
`
`22
`
`zs
`
`24
`
`25
`
`26
`
`27
`
`28
`
`INTEL EX.1251.002
`
`
`
`Case 3:04-cv-03284-JSW Document 73 Filed A2177/O5 Page 3 of 24
`
`however, just one example ofa microprocessor. There are many other examples of
`
`rnicroprocessors. Each such microprocessor has its own "instruction set." The "instruction
`
`set" of a microprooessor defines at a very detailed level each particular "instruction" that the
`
`rnicroprocessor can execute and what tlhe mircroprocessor willl do when it executes that
`
`instruotion. An "instruotion" ofthe type that oan be executed on a processor as tle term
`
`"instruction" is used in Claim I ofthe '858 patent therefore has a very clear and well-
`
`undlerstood meaning to one ofordinary skill in the art. One of ordiinary skill in the art, given
`
`the type of microprocessor; would know to consult the "instruction set" ofthe
`
`rnicroprocessor. From that instruction set, one ofordinary skill would be able to explain in
`
`detail the exact form and effect of the "instructions" that are executable b,y the
`
`rnicroprocessor.
`3.
`processor." Ifa "set ofinstructions" is "executable on a processor," then the processor must
`
`The "setof instructions" of Clailm I ofthe'868 patent is "executable on a
`
`have read the instructions or received the instructions from a processor-readable medium. It
`
`is impossible for a processor to "execute" an instruction if the instruction only exists in the
`
`abstract. The instruction has to be stored somewhere in order for the processor to be ablle to
`
`obtain it, decode it, and execute it. That place where the instruction is stored must be a real-
`
`worlld, processor-readable, tangible object, otherwise the processor would not be able to
`
`obtain the instruction. The "set of irnstructions" of Claim 1 ofthe'868 patent that is
`
`"executable on a processod' therefore is necessarily stored in a tangible media.
`
`B.
`A TCP Connection
`4. Microsoft proposes construing terrns of Claim 1 in a rnanner thart contradicts
`
`the evidence and leads to confusion. For exarnple, Microsoft proposes construing "a TCF
`
`connection" to mean: "A logical communication path idlentified by a pair ofsockets pursuant
`
`to the Transmirssion Control Protocol." Suctr a logical path would extend across a network
`
`and into a computer at both endpoints, each endpoint identified by an Internet Protocol (IP)
`
`DECLARATION OF DR. KEVI}i AIMEROTH 3
`IN ST]?PORT OF A,LACRITECH'S REPLY TO
`M]CROSOFT'S OPPOSITION TO ALACR]TECH'S MOTION
`FOR PRELIMINARY NJLINCTNON
`
`Case No. C04-03284 Jsw
`
`I 2 J 4 5 6 7 8 9
`
`10
`
`il
`t2
`
`13
`
`l4
`
`t5
`
`16
`
`17
`
`18
`
`19
`
`20
`
`2l
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`le
`
`INTEL EX.1251.003
`
`
`
`Case 3:04-cv-03284-JSW Document 73 Filed 02/L1l05 Page 4 al 24
`
`address that specifies the computer's location on the network and a TCP port within thal
`
`computer. Such a logical path could not be olfloaded frorn a processor to an intelligent TCP
`
`o'ffload mechanism, as recited in Claim l, because for that connection the endpoints worLrld
`
`not change and so the logical path would not change. Moreover, a logical path would not
`
`involve a processor or an offload mochanism, because a logical pattr would not include
`
`specific physical devices such as a partioullar network, router, processor or offload
`
`mechanism. On the otherhand, I find that .Alacritech's constnuction ofa TCP connection as
`
`a combirnation of inforrnation to be reasonable. because that hodv of infonmation can be
`
`offloaded, i.e., transferred.
`5.
`
`Such a logilcal comrnunicatiron path would also seem to describe User
`
`Datagram Protocol (UDP), which is connectionless. A LIIDP port, like a TCP port, is simply a
`
`number for an application tlrat is using UDP or TCP, respectively. Microsoft's proposed
`
`oonstruction ofa logical path identified by endpoints thus ignores the main differentiation
`
`between TCP and UDP, that TCF guarantees reliable transf,er ofdata by establishing a
`
`connection, i.e., a body of information that a processing mechanisrn uses to manage
`
`comrnunicatilon between applicatilons over a network.
`6.
`"sockets" has several rneanings in the network communications world. "Socketsl'or
`
`Another problem with Microsoft's proposed construction is that the term
`
`"Berkeley Sockets" is an application programming interfaoe (API) for appllications that use
`
`various network protocol services, such as TCP/IP, instead of being part ofthe TCP,4F
`
`protocol. I believe that Microsoft's proposed construction ofTCP connection to include the
`
`word "sockets" leads to confusion rather than clarity. Even Miaroso'ft's expert Dr. Chesson
`
`appears confused by these multiple meanings in his decllaration. referring in 'li fl 47, 48, 58,62
`
`and his claim chart in $6 of his Decnaration to the functions sooket$ and connect0, which do
`
`not refer to IP addresses and TCF ports but instead refer to the sockets A.PI that runs above
`
`TCP.
`
`7. Moreover, Microsoft's proposed oonstruction would render the term following
`
`DECLARATION OF DR. KEVIN ALMEROTH 4
`IN SLPPORT OF ALACRITEC}N'S REPLY TO
`MICROSOFT'S OPPOSNT]ON TO ALACRITECH'S MOTION
`FOR PRELMINARY INJL]NCTION
`
`Case No. C04-03284 JSW
`
`I z 3 4
`
`6 7 8 9
`
`l0
`
`l1
`
`l2
`
`l3
`
`t4
`
`l5
`
`l6
`
`t7
`
`l8
`
`t9
`
`20
`
`2n
`
`22
`
`24
`
`25
`
`)A
`
`?7
`
`28
`
`INTEL EX.1251.004
`
`
`
`Case 3:04-cv-03284-JSW Document 73 Filed 02/11i05 Page 5 of 24
`
`"a llCP connection" superfluous. as it is simply a restatement of"identified by a pair of
`
`sockets." In contrast, Alacritectr's proposed construction of"a TCP connection" is supported
`
`by RFC 793 as welI as the intrinsic evidence, as demonstrated by Alacrirtech's citations in the
`
`Second Revised Joi,nt Claim Construction Chart.
`
`C. Establishine a TCP Connection
`8.
`connection" points to RFC 793 for support, but the pages i[ cites from ttre RFC do not
`
`Similarly, Microsoft's proposedl construction of "establishing a TCP
`
`contain the words "establish" or "establlishing," despite multiple references to establishing a
`
`TCF connection elsewhere in the same document. See, e.g., RFC 793,pages4,l0, 11, 12,
`
`2n. 27 , 30 and 3l .
`
`D. Offloadine a TCP Connection from the Processor
`9. Moreover. Miorosoift's proposes to construe "offloading the TCP connection,
`
`from the processor" to mean "allocating processing for the TCP connection frorn, the
`
`prooessor," substituting 'pracessl'ttg for the TCP connection" in place of"the TCP
`
`connection." Neither intrinsic nor extrinsic evidence supports such a rewriting ofthis
`
`phrase" The disolosure cited by Alacritech in the Joint Claim Construction supports
`
`Alacritech's proposedl construction ofoffloading a TCP connection.
`10. Microsoft's construction also fails to consider that ofllloading of other TCF
`processing was known at both the filing date and issue date ofthe '868 patent. For examplle,
`
`U.S. Patent No. 6,141,705 to A.nand! et al., which was considered during proseoution ofthe
`
`'E68 patent, and discloses a peripheral hardware device and its driver that together can
`
`offload other TCP processirng, states: "For ilnstanae, rnany NnCs are capable of independlently
`
`performing tasks otherwise performed by tlre CPIU in software at an appropriate network
`
`layer, such as oheqksum calculation/verification; data enoryption/decryption; message digest
`
`calculation; TCF segmentation; and others." U.S. Patent No. 6,141,705, colurnn 2, lines 44-
`DECLARAION OF DR. KEVN ALMEROTII 5
`IN SLPPORT OT ALACRITECH'S REPLY TO
`MICR.OSOFI'S OPPOSITION TO AIACRITECH'S MOTION
`FOR PRELMINARY INJLNCTNON
`
`Case No. C04-03284 JSW
`
`I 2 J 4 5 6 7 I 9
`
`t0
`ll
`t2
`
`l3
`
`t4
`
`l5
`
`l6
`
`t7
`
`l8
`
`t9
`
`20
`
`2l
`
`2?
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`INTEL EX.1251.005
`
`
`
`Case 3:04-cv-03284-JSW Docurnent 73 Filed 02/11/05 Page 6 of 24
`
`48
`
`E.
`An Intenlisent TCP Offload Mechanism
`I L Microsoft's proposed construqtion of "an intelligent TCP offload mechanism"
`
`also improperly reads limitations into the claim from the specification. Nowhere does
`
`Anacritech's specification require that such a device be "capable ofprocessing the data
`
`movement portion of the protocol slack withoal a.n! contro'l by the host." The intrinsic
`
`evidence instead teaches tlat some parts ofdata path movemenl, such as receirpt of out-of-
`
`ordler segments or fragmented segmenrts, and expiration of a rekansmission timer are
`
`exception oonditions that are not processed by tlhe INIC/CPD. See, e.g., App. 60/ 061,809,
`
`page 6, Iine 39 - page 7,line 2; th6'E68 patent, column 10, lines 35-39. Moreover, the
`
`intrinsic evidence teaches that a conrxection that has been offloaded can be retrieved by the
`
`host, firrther oontradicting the construction that the datapath movement is processed without
`
`any control by the host. See, e.9.,'868 patent, colurnn 9, lines 64 - colurnn 10, line 2; App.
`
`60i 061 ,809, page 26, lines 27-30.
`
`F.
`Intellisent
`12. I dirscuss the term "intelligent" in paragraphs 65-67 ofmy prior declaration.
`The paragraphs below suppllement that prior discussion.
`
`13. The term "intelligent" is used to distinguish "drumb" in many contexts in the
`
`electrical engineering and compurter science arts.
`
`14. The "Microsoft Press Computer Dictionary". third edition, pg. 256, copyright
`tr 997, defines "irntolligent" as: Intelligent: adj. Of, pertaining to, or characteristic of a device
`
`partially or totally controlled by one or more processors integral to the device.
`
`15. The "Microsoft Press Computer Dictionary", third edition, pg.255, copyright
`11997, defines "irntelligence" as: lntelligence: n. l. The ability of hardware to process
`
`DECLARATIOi{ OF DR. KEVIN ALMEROTH 6
`IN SLTPPORT OF AIACR.NTECH'S REPLY TO
`M]]CROSOFT'S OPPOSITNOh] TO AILACR]TECH'S MOTION
`FOR PR.ELIMINARY INJLTNCTION
`
`Case No. C0,{-03284 JSw
`
`1 2 f 4 5 6 7 8 9
`
`10
`
`ll
`t2
`
`l3
`
`l4
`
`t5
`
`t6
`
`l7
`
`l8
`
`l9
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`INTEL EX.1251.006
`
`
`
`Case 3:04-cv-03284-JSW Document 73 Filed O2lL1lA5 Paae 7 at 24
`
`information. A device withorLrt intelligence is said to be dumb; for example, a dumb terminal
`
`connected tro a computsr can receive input and displlay output but cannot process information
`
`independently...."
`
`16. In the context of Cllaim I of the '868 patent and its prosecrution history, it is my
`opinion that "inlelligent" in the term "intelligent TCP offload meclhanisrn" has a meaning that
`
`distinguishes pre-existing TCP offload mechanisms involving relatively "dumb" NICs that
`
`were not capable ofprocessing a TCP connection as tire INIC set forth in the '868 patent is.
`
`18. Pre-exirsting TCP oflioad mechanisms that involved relatively "dumb" NICs
`
`included NICs that offloaded the host of,virtually no aspect ofhandling a TCP connection.
`
`One ofordinary skill in the art would have been aware of such NICs.
`
`19. Pre-exirsting TCP offload rnechanisms that involved relatively "dumb" NICs
`
`ivrcluded NICs that offloaded minor aspects of handling a TCF communication, but were
`
`nonetheless incapable ofprocessing aTCP connection. lU.S. PatentNo.6,l4l,705 (the'705),
`
`which is a patent referenced in the '868 patent, discloses the functionality of several dumb
`
`NICs of this type. As explained bythe'705 patent, these dumb NICs performed support
`
`funotions like checksum calculation/verification, dala enoryption/decryption, message digest
`
`calculation. and TCP segmentation.
`
`2A. In my opinion, the'868 patent provides a standard for assessing the meaning of
`the term "intelligent" in the terun "intellligent TCP oflload rnechanism" within its proper
`
`context becaurse "intelligent" excludes "durnb" and because one ofordinary skill in the art
`
`would consider "dumb NICs" that were pre-existing in the art at the time, would determine
`
`what their functionality was. This knowledge, cornbinedl with the general knowledge in the art
`
`as to what ths functionality ofpre-existing durnb NICs was, would apprise ofone ordinary skill
`
`in the art ofthe boundls ofthe term "intelligent TCP offload mechanism."
`
`DECLARATION OF DR, KEVIN ALMEROT}I 7
`I}i SLIPPORT OF ALACRITECH'S REPLY TO
`MICROSOFT'S OPPOSITION TO ALACNTECH'S MOTNON
`FOR PRELIMINARY INJUNCTION
`
`Case No. C04-03284 JSW
`
`1 2 J 4 5 6 7 8 9
`
`10
`
`1l
`
`t2
`
`l3
`
`t4
`
`l5
`
`16
`
`t7
`
`18
`
`l9
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`INTEL EX.1251.007
`
`
`
`Case 3:04-cv-03284-JSW Document 73 Filed O2l11lO5 Page 8 of 24
`
`Validity of Claim l of tle '868 Fatent
`
`21 .
`invention of Claim I of the '858 Patent. More particularly, not one of the five references
`
`As set forth in further dletail below, not one of the five references discloses the
`
`dliscloses "establishing a llCP connection" and tlhen "offloading the TCP connection from [a]
`
`processor to an intelligent TCP offload mechanism", where the term "TCP connection" means
`
`a "combination of information that identifies a process on a local host and a process on a
`
`remote host that wish to communicate using TCP, describes the status of the TCP
`
`comn:runication between tlose processes, and can be employed to send data between those
`
`processes using TCP", and wherein the term "offloading" rneans "transfering" the TCP
`
`connection and associatedl processing frorn the "processor" to an "intelligent TCP offload
`
`mechanism."
`
`ocumentation
`A,
`22. The Protocol Engines documentation does not disclose that: "Control ofthe
`connection was then offloaded to the rest ofthe chipset by the transfer of state inf,ornration
`
`into ctripset memories." Chesson Declaration, paragraph 40. Instead. the ProtocoI Engines
`
`documentation teaches that the problern of accelerating protocol processing existedl in the
`
`1990- 1991 time frame, for which ProtocoI Engirnes of'fered a different solution than that
`
`defined in Clairm I ofthe'868 patent.
`23. In particular, the several pages specifioally citedl as support for that assertion
`
`by Dr. Chesson do not teaclh or suggest such a conclusion, and instead suggest the opposite.
`
`Those pages are: Ex. D to the Chesson Declaratiron, at page 5A; Ex. E to the Chesson
`
`Declaration, at pages 86 and I 5 1 ; Ex. F to the Chesson Declaration, at page 252; and Ex. K
`
`to the Chesson Declaration, at page at 129.
`24. I note initially that the Protocol Engines documentation refers primarily to
`XTP, which stands for "Xpress Transfer Protocol," rather than TCP. XTP may be thought of
`
`DECLARATION OF DR. KEVIN,ALMEROT}I 8
`IN SLTPPORT OF ALACR]TECH'S REPLY TO
`MICROSOFT'S OPPOSITION TO AL,A.CzuTEC}N'S MOTION
`FOR PRELIMINARY INJLINCTION
`
`Case No. C04-03284 JSW
`
`I Z 3 4 5 6 7 8 9
`
`10
`
`t1
`
`t2
`
`l3
`
`l4
`
`I5
`
`l6
`
`t7
`
`l8
`
`19
`
`ZA
`
`zt
`
`22
`
`23
`
`2.4
`
`25
`
`26
`
`27
`
`2E
`
`INTEL EX.1251.008
`
`
`
`Case 3:04-cv-03284-Jsw Document 73 Filed ozlfilas Page I of 24
`
`as a sirnpler protocol than TCP. It also appears from the Protocol Engines documentation
`
`that implementation of XTP was a primary objective of Protocol Engines.
`25. Ex. F to the Chesson Declaration refers explicitly to "Xpress Transfer
`Protocol (XTP)." XTP is designed to be less complicated than TCP. XTP uses different
`
`packet structurres than TCF. Page 252 of Ex. F to the Chesson Declaration refers to "a host
`
`RAM control block management." There is no indication that a host RAM control block is
`
`the same as a connection control trlock. Even if it were, there is no indication that it is a TCP
`
`transmission control b,lock, which is relerred to as a TCts. Even if it were, there is no
`
`indication that a control block iJncluding the TCB is transferred.
`76. Page 252 ofEx. F to the Chesson Declaration states that the oontrol processor
`(CP) provides functions including both "connection state informatiron maintenance" and
`"general protocol , CKs and other output messages." Conrnectionr state information
`
`maintenance is a control function, and general protocol ACKs and other output rnessages is a
`
`data movement function. Because the control processor (CP) is said to perform both control
`
`and data moirr'emerxt ponions of the protocoll stack, Ex. F to the Chesson Decllaration does not
`
`disclose that control of a TCP connection was transferrsd.
`27. Page 129 of Ex. K to the Chesson Declaration refers to NIS, which stands for
`"Network File System," an appllication that was used with UDP at the alleged time that
`
`document was created, and describes 'NFS FastPath" near the top and "UDP + NFS FaslPath
`
`overhead" near the bottom ofthe page. UDF, which stards for User Datagram hotocol, is
`
`connectionless, andl so Dr. Chesson's assertion that 'control ofthe connection was offloaded'
`
`is contradictedl by Exhibit K.
`28. Page 5A ofEx. D to the Chesson Declaration refers to "fastpath" and "non-
`fast path" processing. I have foundno indication that such a fastpath would be fora TCP
`
`connection. When read in conjunction with page 129 of Ex. K to the Chesson Decllaratiom,
`
`and with the krou'ledge that Protocol Engines was directed toward XTP, Page 5,4 ofEx. D to
`
`DECLARATION OF DR. KEVIN ALMERONN 9
`IN STIPPORT OF ALACRITECH'S REPLY TO
`MICR.OSOFT'S OPPOSITION TO AIACR]TECH'S MOTION
`FOR PRELIMINARY INJLINCTION
`
`Case No- C04-03284 JSW
`
`1 2 3 4 5 6 v 8 9
`
`10
`
`11
`
`12
`
`13
`
`14
`
`l5
`
`t6
`
`t7
`
`t8
`
`t9
`
`20
`
`21
`
`22
`/)
`
`?4
`
`25
`
`26
`
`27
`
`INTEL EX.1251.009
`
`
`
`Case 3:04-cv-03284-JSW Document 73 Filed OZl1,ilAs Page L0 of 24
`
`the Chesson Declaration may refer to an XTP "fastpath" or'1rlS'S FastPath" and "UDP +
`
`NFS FastPath.
`29. Page 86 of Ex. E to the Chesson Declaration refers to a Transmit Command
`Bloclq which has the sarne acronym (TCB) as a Transmission Control Block, but whiclh
`
`appears to instead include generic data that contains information such as a frame's protocol
`
`type, size and location. Transfer of a Transmit Command Block would not be the same as
`transfer of a TCP connection. Page l5l of Ex. E to lhe Chesson Declanation also does not
`
`describe transfening a TCP connection. There is no indication that a Transmit Command
`
`Block is the same as a connection control block. Even if it were, there is no indication that a
`
`control block is transferred.
`30. U.S. Patent No. 5,524,250 to Chesson et al. also does not describe transferring
`
`a TCP connection.
`31. Even ifDr. Chesson's assertions regarding the Protocol Engines
`documentation were true, it wou,ld not anticipate or render obvious Claim l, because it does
`
`not desoribe transferring a TCP connection and associarted processing. At most the Protocol
`
`Engines documents desoribe a shared state, not a state that is offtroaded.
`32. Exhibits D through L to Dr. Chesson's Declaration all relate to the Protocol
`Engine chipset, which Microsoft acknowhdges was "never fabricated" (Opp., p. 7, fn. 6). I
`
`have not been able to f'rnd evidenoe that the chipset was ever emulated, or exactly what that
`
`emulation would entail-
`
`B.
`
`U.S. Patent No. 5.61 9-550 to Bach- et all.
`
`32. Bach describes afronl end touter that performs all TCP/IP functions,
`including connection establishment, tsrmination and data transfer, for a host. Bach thus
`
`describes what may be called a "full offload" ofTCF/lP. Bach does not teach or suggest
`
`transferring a TCP conneotion. Instead, Bach provides a good example of the confusion
`
`Microsoft attempts to generate by construing a TCP connection as "a logical communication
`
`DECLARATTON OF DR- KEV]F,I ALMEROTI{ I O
`IN SL'PPORT OF ALACRITECH'S REPLY TO
`M]CROSOFT'S OPPOSMON TO AI-ACRJTECH'S MOTION
`FOR PRELMINARY 1]NJI.]NCTION
`
`Case No, C04-03284 JSW
`
`I 2 3 4 5 6 7 I 9
`
`u0
`
`u1
`
`n2
`
`n3
`
`l4
`
`l5
`
`l6
`
`l7
`
`l8
`
`l9
`
`20
`
`2l
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`INTEL EX.1251.010
`
`
`
`Case 3:04-cv-03284-JSW Document 73 Filed AULT|OS Page 11 of 24
`
`path identified by a pair ofsockets," and by construing establishing a connection as
`
`establishing a logical path. The sockets Bach describes are not a combination of IP address
`
`and TCP port, but an application lhat runs over a variety of network protocols including TCP.
`
`The connectQ described by Bach is not the establishment ofa TCP connection by TCP, but a
`
`command fiorn the ap,plication telling TCP to establish a connection. This command is
`
`transmitted from the host to the front end router, and the router establishes and maintains the
`
`TCP connection.
`
`33. I note that similar full offload processing rnechanisms were considered during
`the prosecution ofthe '868 patent. See Exhibit N to Declaration of Mark Lauer in support of
`
`Alacritech's Motion for Preliminary Injunction, Second Supplemental Information
`
`Disclosure Statement per C.F.R. 1.98, filed August 14,2002 ("Excelan IDS"); Sheet5of 12
`
`of Inforrnation Disclosure Statement b,y Applicant, ciring lU.S. Patent No. 6,034,963 to
`
`Jr4inami et al. I have reviewed tlre Excelan IDS and U.S. Patent No. 6,034,963 to Minami et
`
`a[., and believe that they describe "full offload" of TCP/IP, and that Bach is merely
`
`cumulative to those references.
`
`34. Dr. Chesson then cites R"FC 929 (Chesson Dec., Ex. N, tffi56, 57), for teaching
`a range of levels of protocol ilvolvement for a host and a front end device. For "offloading
`TCP," however, RFC 929 states only two possible values, "9' and "0r', corresponding to full
`
`offload and no offload. RFC 929 atpage 35. Likethe other references cited by Dr. Chesson,
`
`there is no teaching or suggestion of transf,erring a TCP conneetion, burt instead a
`
`demonstration of the long-felt need for such an invention and the failure of others to
`
`accomplish it.
`
`35.
`host computer 602 (for example, an IBM 370/390 computer) that communicates with a
`
`The Bach patent discloses a system (see, for example, Figure 6) involving a
`
`network through a "Front End Router" 600. The front end router 600 includes a TCP/IP
`
`protocol stack 622 and performs TCP/IP protocol processing. If a client application proglam
`
`DECLARAT]ON OF DR. KEVIN ALMERO1IH I I
`N SIJPPORT OF ALACRITECH'S REPLY lio
`MCROSOFT'S OPPOSITION TO ALACRITECH'S MCTTION
`FOR PRELIMINARY INJUNCTION
`
`Case No. C04-03284 JSW
`
`ll
`
`2 J 4 5 6 7 8 9
`
`10
`
`u 1
`
`2
`
`l3
`
`t4
`
`l5
`
`t6
`
`l7
`
`l8
`
`t9
`
`20
`
`2l
`
`22
`
`23
`
`1^
`
`25
`
`25
`
`27
`
`z8
`
`INTEL EX.1251.011
`
`
`
`Case 3:04-cv-03284-JSW Document 73 Filed 02l17lOS Page 12 at 24
`
`executing on the trost computer 602 wishes, for example, to oornmunicate data out onto the
`
`network, it can do so by using a socket 0 command. To facilitate network communication, a
`
`first control blook (called the "socket control block" (SCB)) is set up on hosr computer 602.
`
`A second control block (called the "conneotion control block (CCB)) is set up on front end
`
`router 600. The data to be communicated is passed frorn the client application on the host
`
`602, to the SCB on the host 602, to the CCB on the front end router 600. The front end
`
`router 600 performs all TCP/IP protocol processing includling the establishing ofa TCP
`
`connection. When the TCP connection has b€en establlished,
`
`the front end router 600
`
`transmits the data using the established TCP comection onto the network.
`36. Druring the establishing ofthe TCP connection and subsequent network data
`communication, the "connection control block (CCB)" 602 in Bach is never moved from the
`
`host 602 to the front end router 600. The host computer 602 does not establish the TCP
`
`connoction. The TCP connecxion is not established on the host 602, and the TCP connection
`
`is never present on the host 602.
`37 .
`
`The SCB on the host 602 is not a "TCP connection". The SCB is not "a
`
`combination of information that identifies a process on a local host and a process on a remote
`
`host that wish to communicate using TCP, describes the status of TCP communication
`
`between those processes, and can be employed to send data between those processes using
`
`TCP."
`
`38. In my opinion, the Bach patent fails to disclose the recited subject mauer of
`Claim l ofthe '868 patent. Even ifthe host computer 602 were considered 1o be the
`
`"processor" recited in Claim I ofrhe '868 patent, and even if the front end router 600 were
`
`considered to the "intelligent TCP offload mechanism" recited in Claim I ofthe '868 patent,
`
`then the Bach patent would still fail to disclose the subject matter of Claim I because there is
`
`no transferring ofa TCP conneclion frorn the host computer 602 to the front end router 600.
`
`ln Bach, the TCP connection is establlished on the front end router 600 and the TCP
`
`connection remains on the front end router 600.
`
`DECLA&{TION OF DR. KEVIN ALMEN.OT}N 12
`IN SIJ'PPORT OF ALACRITECH'S REPLY TO
`MICROSOFT'S OPPOSIT]ON TO ALACRITECH'S MOTION
`FOR PRELMINARY INJUNCTNON
`
`Case No. C04-03284 JSW
`
`1 2 3 4
`
`6 7 I 9
`
`10
`
`il
`t2
`
`l3
`
`t4
`
`l5
`
`16
`
`l7
`
`t8
`
`l9
`
`20
`
`21
`
`22
`
`23
`
`24
`
`25
`
`26
`
`27
`
`28
`
`INTEL EX.1251.012
`
`
`
`Case 3:04-cv-03284-JSW Document 73 Filed O2lL7!a5 Page 13 of 24
`
`39. Dr. Chesson argues that tJrere are instructions in Bach for "establishing the
`
`TCP connection" that execute on the host computer because the host computer in Bach isstues
`
`certain socket commands (socketQ and conneotQ) and these socket commands in turn oause
`
`the Front End Router to establish the TCP connection. For exarnple. Dr. Chesson rnaintains
`
`in paragraph 49 ofthe Chesson Declaration that "the instruotions for 'establishing a TCP
`
`conneotion' in the Bach patent inch"rde the socketQ and connect0 commands, the DSL and
`
`DSM libraries, and the front end router's TCP/IP stack"" The second pafi of Dr. Chesson's
`
`argument is that because the host cornputer establislled the TCP connection, and because it is
`
`an ohject ofthe Bach patent to "offload" the rnain processor, that the TCP connection must
`
`have been offloaded from the host computer 602 to the Front End R.outer 600 because the
`
`Front End Router is describsd as perfo mirng the TCP data rnovement processing. I disagree
`
`with the prernise ofDr. Chesson argurnent that Bach dliscloses that the host executes a "set of
`
`instructions" for "establishing a TCP connection." Tile socket0 and connectQ commands
`
`executed by the host computer in Baah do not "establish" a TCP connection, rather they
`
`merely instruct another entity (the "Front End Router") to establish the TCP connection. In
`
`Bach, it is the Front End Router that executes the instructions that establish the TCF
`
`connection. The host does not execurte instnLrctions that establlish the TPC connection. Ttre
`
`TCF connection is established on the Front End Roruter, and the TCP connection remains on
`
`the Front End Routor. The TCP connection is never "offloadedl" (i.e., trransferred from the
`
`host to the Front End Router).
`40. Lirke the other references cited by Dr: Chesson, therc is no leaching or
`suggestion oftransferring a TCP connection, but instead a demonstration ofthe Iong-felt
`
`need for such an invention and the failure ofothers to accomplish it.
`
`C.
`
`Ttre Macllean and Earvick Panef,
`
`4n. I\4aclean and Barvick fail to mention TCP connection establishrnent. Maclean
`
`DECLA-&4T'ION OF DR.. KEVIN ALMEROTI.N 13
`I}i SLIPPORT OF' ,ALACPJTECH'S REPLY TO
`MICROSOFT'S OPPOSITION TO AIACRITECH'S MOTION
`FOR PRELIMIN ARY INJUNCTION
`
`Case No. C04-03284 JSW
`
`I 2 J 4 5 6 7 8 9
`
`10
`
`11r
`
`12
`
`13
`
`14
`
`15
`
`16
`
`t7
`
`t8
`
`t9
`
`1n
`
`2l
`
`22
`
`1)
`
`25
`
`26
`
`27
`
`28
`
`INTEL EX.1251.013
`
`
`
`Case 3:04-cv-03284-JSW Document 73 Filed 02l1"LlA5 PaOe L4 of 24
`
`andl Barvick also fail to mention where a TCF connection would be established. Maclean and
`
`Barvick do not describe offloading a TCP connection to an intelligent TCP offload
`
`mechanism.
`
`42. Dr. Chesson, however, appears to deduce this conclusion by process of
`elimination (Chesson Dec., fl 62). Since Maclean and Barvirck list some functions that Dr.
`
`Chesson claims the Protocol Accelerator does, Dr. Chesson assumes that what is not listed is
`
`not performed andl then proceeds to state it as fact:
`
`Their Protrrcol Accelerator offloads processing from the host for the
`maintenance of the retransmission queue, resequencing for out of order
`packets, implementation of retransmission timers and frarning and
`encapsulation (packetizing host data) for a connection in the ESTABLISHED
`state. 1d at 1730. This is explicitly not a l00oZ offload of TCP/IP stack
`functionality because the Protooon Accelerator does not contaiin the
`instructions to setup/teardown a TCP connection or handle exceptions: llost
`software must first establish a conneotion and then enable the board (by
`initializing a TCB on the board) to operate on the establlished connection. 1d.
`
`413. I disagree witrh Dr. Chesson's statement. Dr" Chesson has modlified the quote
`
`from Maclean and Barvick to suit his argument. Maclean and tsarvick instead state:
`
`The high performance aspects of the Protocol Accelerator such as the
`dual processors, DMA and on-the-l'lly chec.ksum require the design of the
`bangart protocol implementation to be specific to the PA. Therefore, a
`custom implementotian af TCP was developed. (Ex. G to Chesson Dec., page
`1730).
`M. Maclean and Barvick t}en strate:
`As noted in the hardware description, the generic nature of the PA
`requires that checksums be placed after the header and after the data. Other
`than this difference, the implemenlation provirdes all of the TCP functions
`required to transrnit and receive data in the TCP (call) ESTABLISHED state.
`Among others, these functions include maintaining the retranrsmission queue,
`providing resequencing for out of order paokets, supporting retransmission
`timers, and packetizing host data into TCP segments, or TPDUs. Id.
`45. In contrast to Dr. Chesson's statement. what Maclean and Barvick dlescribe is
`not the function ofthe Protocol Accelerator, but rather the function of Maclean and Barvick's
`
`custorn TC P protocol imple rnentaliorr.
`46. I further note that the functions listed by the Protocol Accelerator do not list
`the offloading ofthe connection from the host as