throbber
UNITED STATES PATENT AND TRADEMARK OFFICE
`
`
`
`BEFORE THE PATENT TRIAL AND APPEAL BOARD
`
`
`
`WISTRON CORPORATION
`Petitioner
`
`v.
`
`ALACRITECH, INC.
`Patent Owner
`
`
`
`Case IPR. No. IPR2018-00329
`U.S. Patent No. 7,673,072
`Title: FAST-PATH APPARATUS FOR TRANSMITTING DATA
`CORRESPONDING TO A TCP CONNECTION
`
`Petition For Inter Partes Review of U.S. Patent No. 7,673,072 Under
`35 U.S.C. §§ 311-319 and 37 C.F.R. §§ 42.1-.80, 42.100-.123
`
`
`
`
`
`
`
`
`
`
`
`
`
`Mail Stop “PATENT BOARD”
`Patent Trial and Appeal Board
`U.S. Patent and Trademark Office
`P.O. Box 1450
`Alexandria, VA 22313-1450
`
`
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`TABLE OF CONTENTS
`
`b)
`
`1.
`2.
`
`3.
`
`4.
`
`5.
`6.
`7.
`
`8.
`9.
`
`Page
`INTRODUCTION ......................................................................................... 1
`REQUIREMENTS FOR PETITION FOR INTER PARTES
`REVIEW ........................................................................................................ 1
`2.1. Grounds for Standing (37 C.F.R. § 42.104(a)) ................................... 1
`2.2. Notice of Lead and Backup Counsel and Service Information ........... 1
`2.3. Notice of Real-Parties-in-Interest (37 C.F.R. § 42.8(b)(1)) ................ 2
`2.4. Notice of Related Matters (37 C.F.R. § 42.8(b)(2)) ............................ 2
`2.5. Fee for Inter Partes Review ................................................................ 5
`2.6. Proof of Service ................................................................................... 5
`IDENTIFICATION OF CLAIMS BEING CHALLENGED
`(§42.104(B)) .................................................................................................. 5
`a)
`U.S. Pat. No. 5,768,618, to Erickson, titled “Method for
`Performing Sequence of Actions in Device Connected
`to Computer in Response to Specified Values Being
`Written Into Snooped Sub Portions of Address Space,”
`filed on Dec. 21, 1995 and issued on June 16, 1998
`(Ex.1005, “Erickson”) in view of ............................................. 5
`Computer Networks, A. Tanenbaum, 3rd ed. (1996)
`(Ex.1006, “Tanenbaum96”). ..................................................... 6
`BACKGROUND OF THE TECHNOLOGY ................................................ 6
`4.1. TCP/IP ................................................................................................. 6
`4.2. UDP/IP .............................................................................................. 10
`4.3. Protocol Offload ................................................................................ 10
`OVERVIEW OF THE 072 PATENT .......................................................... 12
`072 PATENT PROSECUTION HISTORY ................................................ 16
`CLAIM CONSTRUCTION ........................................................................ 16
`7.1. Applicable Law ................................................................................. 16
`7.2. Construction of Claim Terms ............................................................ 17
`PERSON HAVING ORDINARY SKILL IN THE ART ........................... 19
`DESCRIPTION OF THE PRIOR ART ...................................................... 19
`9.1. Tanenbaum96: A. Tanenbaum, Computer Networks, 3rd ed.
`(1996) ................................................................................................ 20
`9.2. U.S. Patent No. 5,768,618 (“Erickson”) ........................................... 23
`9.3. Motivations To Combine Erickson and Tanenbaum96 .................... 26
`10. GROUND #1: CLAIMS 1–21 ARE UNPATENTABLE AS
`OBVIOUS OVER ERICKSON IN VIEW OF TANENBAUM96 ............. 30
`
`
`
`ii
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`10.1. Claim 1 is unpatentable as obvious over Erickson in view of
`Tanenbaum96 .................................................................................... 30
`10.2. Claim 2 is unpatentable as obvious over Erickson in view of
`Tanenbaum96 .................................................................................... 45
`10.3. Claim 3 is unpatentable as obvious over Erickson in view of
`Tanenbaum96 .................................................................................... 50
`10.4. Claim 4 is unpatentable as obvious over Erickson in view of
`Tanenbaum96 .................................................................................... 53
`10.5. Claim 5 is unpatentable as obvious over Erickson in view of
`Tanenbaum96 .................................................................................... 56
`10.6. Claim 6 is unpatentable as obvious over Erickson in view of
`Tanenbaum96 .................................................................................... 56
`10.7. Claim 7 is unpatentable as obvious over Erickson in view of
`Tanenbaum96 .................................................................................... 57
`10.8. Claim 8 is unpatentable as obvious over Erickson in view of
`Tanenbaum96 .................................................................................... 59
`10.9. Claim 9 is unpatentable as obvious over Erickson in view of
`Tanenbaum96 .................................................................................... 59
`10.10. Claim 10 is unpatentable as obvious over Erickson in view of
`Tanenbaum96 .................................................................................... 63
`10.11. Claim 11 is unpatentable as obvious over Erickson in view of
`Tanenbaum96 .................................................................................... 66
`10.12. Claim 12 is unpatentable as obvious over Erickson in view of
`Tanenbaum96 .................................................................................... 66
`10.13. Claim 13 is unpatentable as obvious over Erickson in view of
`Tanenbaum96 .................................................................................... 67
`10.14. Claim 14 is unpatentable as obvious over Erickson in view of
`Tanenbaum96 .................................................................................... 68
`10.15. Claim 15 is unpatentable as obvious over Erickson in view of
`Tanenbaum96 .................................................................................... 69
`10.16. Claim 16 is unpatentable as obvious over Erickson in view of
`Tanenbaum96 .................................................................................... 72
`10.17. Claim 17 is unpatentable as obvious over Erickson in view of
`Tanenbaum96 .................................................................................... 73
`10.18. Claim 18 is unpatentable as obvious over Erickson in view of
`Tanenbaum96 .................................................................................... 74
`10.19. Claim 19 is unpatentable as obvious over Erickson in view of
`Tanenbaum96 .................................................................................... 74
`10.20. Claim 20 is unpatentable as obvious over Erickson in view of
`Tanenbaum96 .................................................................................... 75
`
`
`
`iii
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`10.21. Claim 21 is unpatentable as obvious over Erickson in view of
`Tanenbaum96 .................................................................................... 75
`11. CONCLUSION ............................................................................................ 76
`
`
`
`
`
`
`
`iv
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`Exhibit #
`
`Exhibit List
`
`Description
`
`Ex.1001 U.S. Patent No. 7,673,072
`
`Ex.1002 Prosecution File History of U.S. Patent No. 7,673,072
`
`Ex.1003 Declaration of Robert Horst Declaration
`
`Ex.1004 Curriculum Vitae of Robert Horst
`
`Ex.1005 U.S. Patent No. 5,768,618 (“Erickson”)
`Ex.1006 Tanenbaum, Andrew S., Computer Networks, Prentice-Hall, Inc., New
`Jersey (1996). (“Tanenbaum96”)
`Ex.1007 Transmission Control Protocol, “Darpa Internet Protocol
`Specification”, RFC: 793, Sept. 1981. (“RFC 793”)
`Ex.1008 Stevens, W. Richard, TCP/IP Illustrated Volume 1: The Protocols,
`Addison-Wesley (1994). (“Stevens1”)
`
`Ex.1009
`
`Lilinkamp, J., Mandell. R. and Padlipsky, M., “Proposed Host-Front
`End Protocol”, Network Working Group Request for Comments: 929,
`Dec. 1984. (“RFC 929”)
`
`Ex.1010 Reserved
`Ex.1011 Declaration of Rice Majors regarding Tanenbaum, Andrew S.,
`Computer Network
`
`Ex.1012 Reserved
`Ex.1013 Stevens, W. Richard and Gary R. Wright, TCP/IP Illustrated Volume
`2: The Implementation, Addison-Wesley (1995). (“Stevens2”)
`Ex.1014 Touch, J., “TCP Control Block Interdependence”, Network Working
`Group Request for Comments: 2140, April 1997. (“RFC 2140”)
`
`Ex.1015
`
`Thia, Y.H., Woodside, C.M., “A Reduced Operation Protocol Engine
`(ROPE) for a Multiple-Layer Bypass Architecture”, Protocols for High
`Speed Networks (Dordrecht), 1995. (“Thia”)
`
`
`
`v
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`Exhibit #
`
`Ex.1016
`
`Description
`
`Biersack, E. W., Rütsche E., “Demultiplexing on the ATM Adapter:
`Experiments with Internet Protocols in User Space”, Journal on High
`Speed Networks, Vol. 5, No. 2, May 1996. (“Biersack”)
`
`Ex.1017
`
`Rütsche, E., Kaiserswerth, M., “TCP/IP on the Parallel Protocol
`Engine”, Proceedings, IFIP Conference on High Performance
`Networking, Liege (Belgium), Dec. 1992. (“Rütsche92”)
`Ex.1018 Rütsche, E., “The Architecture of a Gb/s Multimedia Protocol
`Adapter”, Computer Communication Review, 1993. (“Rütsche93”)
`
`Ex.1019
`
`Padlipsky, M. A., “A Proposed Protocol for Connecting Host
`Computers to Arpa-Like Networks Via Directly-Connected Front End
`Processors”, Network Working Group RFC #647, Nov. 1974. (“RFC
`647”)
`
`Ex.1020 U.S. Patent No. 5,619,650 (“Bach”)
`
`Ex.1021 U.S. Patent No. 5,915,124 (“Morris”)
`
`Ex.1022
`
`Ex.1023
`
`Ex.1024
`
`Cooper, E.C., et al., “Protocol Implementation on the Nectar
`Communication Processor”, School of Computer Science, Carnegie
`Mellon University, Sept. 1990. (“Cooper”)
`
`Kung, H.T., et al., “A Host Interface Architecture for High-Speed
`Networks”, School of Computer Science, Carnegie Mellon University
`and Network Systems Corporation. (“Kung”)
`
`Exhibit D to Declaration of Dr. Gregory L. Chesson in Support of
`Microsoft’s Opposition to Alacritech’s Motion for Preliminary
`Injunction: “Protocol Engine Handbook”, Protocol Engines
`Incorporated, Oct. 1990. (“Chesson”)
`
`Ex.1025
`
`Kanakia, H., Cheriton, D.R., “The VMP Network Adapter Board
`(NAB): High-Performance Network Communication for
`Multiprocessors”, Communications Architectures & Protocols,
`Stanford University, Aug. 1988. (“Kanakia”)
`Ex.1026 Kung, H.T., Cooper, E.C., et al., “Network-Based Multicomputers: An
`Emerging Parallel Architectures”, School of Computer Science,
`
`
`
`vi
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`Exhibit #
`
`Description
`Carnegie Mellon University. (“Kung and Cooper”)
`
`Ex.1027
`
`Ex.1028
`
`Dalton, C., et al., “Afterburner: Architectural Support for High-
`Performance Protocols”, Networks & Communications Laboratories,
`HP Laboratories Bristol, July 1993. (“Dalton”)
`
`Murphy, E., Hayes, S., Enders, M., TCP/IP Tutorial and Technical
`Overview Fifth Edition, Prentice-Hall, Inc. New Jersey, (1995).
`(“Murphy”)
`
`Ex.1029
`
`MacLean, A.R., Barvick, S. E., “An Outboard Processor for High
`Performance Implementation of Transport Layer Protocols”, IEEE
`Globecom ’91, Phoenix, AZ, Dec. 1991. (“MacLean”)
`Ex.1030 Clark, D.D., et al., “An Analysis of TCP Processing Overhead”, IEEE
`Communications Magazine, June 1989. (“Clark”)
`Ex.1031 U.S. Provisional Application 60/061,809 (“Alacritech 1997
`Provisional Application”)
`
`Ex.1032
`
`Ex.1033
`
`Ex.1034
`
`Ex.1035
`
`Culler, E.C., et al., “Parallel Computing on the Berkeley NOW”,
`Computer Science Division, University of California, Berkeley.
`(“Culler”)
`
`“Gigabit Ethernet Technical Brief: Achieving End-to-End
`Performance”, Alteon Networks, Inc. First Edition, Sept. 1996.
`(“Alteon”)
`
`Smith, J.A., Primmer, M., “Tachyon: A Gigabit Fibre Channel
`Protocol Chip”, Hewlett-Packard Journal, Article 12, Oc. 1996.
`(“Smith”)
`
`Patterson, D.A., Hennessy, J.L., Computer Architecture: A
`Quantitative Approach, Morgan Kaufmann Publishers, Inc., San
`Mateo, CA (1990). (“Patterson”)
`
`Ex.1036
`
`Internet Protocol, “Darpa Internet Protocol Specification”, RFC: 791,
`Sept. 1981. (“RFC 791”)
`Ex.1037- Reserved
`
`
`
`vii
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`Exhibit #
`Ex.1039
`Ex.1040 Alacritech’s Opening Claim Construction Brief (Alacritech, Inc. v.
`Dell Inc, Intel Corporation, et al.)
`
`Description
`
`Ex.1041-
`Ex. 1081 Reserved
`Ex.1082 Alacritech’s Infringement Contentions For Intel Ex. 2 - 072 (Intel) LR
`3-1 Infringement Chart
`
`
`
`
`
`
`
`viii
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`1.
`
`INTRODUCTION
`
`Pursuant to 35 U.S.C. §§ 311-319 and 37 C.F.R. §§ 42.1-.80, 42.100-.123,
`
`Wistron Corporation (“Petitioner” or “Wistron”) hereby petitions the Patent Trial
`
`and Appeal Board to institute an inter partes review of claims 1–21 of U.S. Patent
`
`No. 7,673,072, titled “Fast-Path Apparatus For Transmitting Data Corresponding
`
`to a TCP Connection” (Ex.1001, the “072 Patent”), and cancel those claims as
`
`unpatentable.
`
`2.
`
`REQUIREMENTS FOR PETITION FOR INTER PARTES REVIEW
`
`2.1. Grounds for Standing (37 C.F.R. § 42.104(a))
`
`Petitioner certifies that (1) the 072 Patent is available for inter partes review
`
`and, (2) if the Board grants the accompanying Motion for Joinder, Petitioner is not
`
`barred or estopped from requesting inter partes review of the challenged claims of
`
`the 072 Patent on the grounds identified herein.
`
`This Petition is accompanied by a Motion for Joinder under 35 U.S.C.
`
`§315(c) and 37 C.F.R. §§ 42.22 and 42.122(b). The Motion seeks to join this
`
`petition to instituted IPR2017-01406 filed by Intel Corporation and later joined by
`
`Cavium, Inc.
`
`2.2. Notice of Lead and Backup Counsel and Service Information
`
`Pursuant to 37 C.F.R. §§ 42.8(b)(3), 42.8(b)(4), and 42.10(a), Petitioner
`
`provides the following designation of Lead and Back-Up counsel.
`
`1
`
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`Lead Counsel
`Benjamin E. Weed
`Reg. No. 65,939
`K&L Gates LLP
`70 W. Madison St., Suite 3100
`Chicago, IL 60602
`benjamin.weed.PTAB@klgates.com
`T: (312) 781-7166
`F: (312) 827-8152
`
`Back-Up Counsel
`Erik J. Halverson
`Reg. No. 73,552
`K&L Gates LLP
`70 W. Madison St., Suite 3100
`Chicago, IL 60602
`erik.halverson@klgates.com
`T: (312) 807-4240
`F: (312) 345-8529
`
`
`
`Petitioner consents to service by electronic mail. Pursuant to 37 C.F.R. §
`
`42.10(b), a Power of Attorney for Petitioner is attached.
`
`2.3. Notice of Real-Parties-in-Interest (37 C.F.R. § 42.8(b)(1))
`
`Petitioner—and co-defendants in the below mentioned district court
`
`litigation, SMS InfoComm Corporation and Wiwynn Corporation—are the real-
`
`parties-in-interest with regard to this Petition. No other parties exercised or could
`
`have exercised control over this Petition; no other parties funded or directed this
`
`Petition. See Office Patent Trial Practice Guide, 77 Fed. Reg. 48759-60.
`
`2.4. Notice of Related Matters (37 C.F.R. § 42.8(b)(2))
`
`Petitioner identifies the following district court proceedings involving the
`
`072 patent:
`
`• Alacritech, Inc. v. CenturyLink, Inc., 2:16-cv-00693-JRG-RSP (E.D. Tex.);
`
`• Alacritech, Inc. v. Wistron Corp., 2:16-cv-00692-JRG-RSP (E.D. Tex.);
`
`• Alacritech, Inc. v. Dell Inc., 2:16-cv-00695-RWS-RSP (E.D. Tex.).
`
`
`
`2
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`
`
`Petitioner identifies the following administrative proceedings involving the
`
`072 patent:
`
`• Intel Corp., v. Alacritech, Inc., IPR2017-01406;
`
`• Intel Corp., v. Alacritech, Inc., IPR2017-01705;
`
`• Cavium, Inc. v. Alacritech, Inc., IPR2017-01707;
`
`• Cavium, Inc. v. Alacritech, Inc., IPR2017-01732.
`
`The patent family to which the ’072 patent belongs contains 21 additional
`
`U.S. patents:
`
`• U.S. Patent Application No. 10/260,112 (filed Sept. 27, 2002, issued Jul.
`
`26, 2007 as U.S. Patent No. 7,237,036);
`
`• U.S. Patent Application No. 10/092,967 (filed Mar. 6, 2002, issued Jul. 8,
`
`2003 as U.S. Patent No. 6,591,302);
`
`• U.S. Patent Application No. 10/023,240 (filed Dec. 17, 2001, issued Nov.
`
`15, 2005 as U.S. Patent No. 6,965,941);
`
`• U.S. Patent Application No. 09/970,124 (filed Oct. 2, 2001, issued Oct. 17,
`
`2006 as U.S. Patent No. 7,124,205);
`
`• U.S. Patent Application No. 09/855,979 (filed May 14, 2001, issued Nov.
`
`7, 2006 as U.S. Patent No. 7,133,940);
`
`• U.S. Patent Application No. 09/802,426 (filed Mar. 9, 2001, issued May 9,
`
`2006 as U.S. Patent No. 7,042,898);
`
`
`
`3
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`• U.S. Patent Application No. 09/802,550 (filed Mar. 9, 2001, issued Dec. 2,
`
`2003 as U.S. Patent No. 6,658,480);
`
`• U.S. Patent Application No. 09/802,551 (filed Mar. 9, 2001, issued Jul. 11,
`
`2006 as U.S. Patent No. 7,076,568);
`
`• U.S. Patent Application No. 09/801,488 (filed Mar. 7, 2001, issued Feb. 3,
`
`2004 as U.S. Patent No. 6,687,758);
`
`• U.S. Patent Application No. 09/789,366 (filed Feb. 20, 2001, issued Jun.
`
`29, 2004 as U.S. Patent No. 6,757,746);
`
`• U.S. Patent Application No. 09/675,700 (filed Sept. 29, 2000, issued Dec.
`
`31, 2013 as U.S. Patent No. 8,621,101);
`
`• U.S. Patent Application No. 09/675,484 (filed Sept. 29, 2000, issued Oct.
`
`19, 2004 as U.S. Patent No. 6,807,581);
`
`• U.S. Patent Application No. 09/514,425 (filed Feb. 28, 2000, issued Jul.
`
`30, 2002 as U.S. Patent No. 6,427,171);
`
`• U.S. Patent Application No. 09/464,283 (filed Dec. 15, 1999, issued Jul.
`
`30, 2002 as U.S. Patent No. 6,427,173);
`
`• U.S. Patent Application No. 09/439,603 (filed Nov. 12, 1999, issued Jun.
`
`12, 2001 as U.S. Patent No. 6,247,060);
`
`• U.S. Patent Application No. 09/416,925 (filed Oct. 13, 1999, issued Oct.
`
`22, 2002 as U.S. Patent No. 6,470,415);
`
`
`
`4
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`• U.S. Patent Application No. 09/384,792 (filed Aug. 27, 1999, issued Aug.
`
`13, 2002 as U.S. Patent No. 6,434,620);
`
`• U.S. Patent Application No. 09/141,713 (filed Aug. 28, 1998, issued May
`
`14, 2002 as U.S. Patent No. 6,389,479);
`
`• U.S. Provisional Patent Application No. 60/098,296 (expired);
`
`• U.S. Patent Application No. 09/067,544 (filed Apr. 27, 1998, issued May
`
`1, 2001 as U.S. Patent No. 6,226,680);
`
`• U.S. Provisional Patent Application No. 60/061,809 (expired).
`
`2.5. Fee for Inter Partes Review
`
`The Director is authorized to charge the fee specified by 37 C.F.R. §
`
`42.15(a), and any other required fees, to Deposit Account No. 02–1818. Please
`
`indicate docket number 1156441.00082 on the account statement.
`
`2.6. Proof of Service
`
`Proof of service of this Petition on the Patent Owner at the correspondence
`
`address of record for the 072 Patent is attached.
`
`3.
`
`IDENTIFICATION OF CLAIMS BEING CHALLENGED (§42.104(B))
`
`Ground #1: Claims 1–21 of the 072 Patent are invalid under (pre-AIA) 35
`
`U.S.C. § 103(a) on the ground that they are obvious over:
`
`a)
`
`U.S. Pat. No. 5,768,618, to Erickson, titled “Method for
`
`Performing Sequence of Actions in Device Connected to
`
`
`
`5
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`Computer in Response to Specified Values Being Written Into
`
`Snooped Sub Portions of Address Space,” filed on Dec. 21,
`
`1995 and issued on June 16, 1998 (Ex.1005, “Erickson”) in
`
`view of
`
`b)
`
`Computer Networks, A. Tanenbaum, 3rd ed. (1996) (Ex.1006,
`
`“Tanenbaum96”).
`
`4.
`
`BACKGROUND OF THE TECHNOLOGY
`
`This section provides a brief background on the technology at issue,
`
`focusing on the TCP, UDP and IP protocols and offloading protocol processing
`
`from a host computer to a network interface card (NIC). Petitioner’s declarant Dr.
`
`Horst provides a more thorough tutorial on the technology and discusses the state
`
`of the art as well. Ex. 1003, Horst Decl. at Section V.
`
`4.1. TCP/IP
`
`The 072 Patent relates to network interface device that provides a “fast path”
`
`that avoids protocol processing TCP/IP packets. Ex.1001, 072 Patent at Abstract.
`
`TCP/IP stands for Transmission Control Protocol/Internet Protocol. TCP/IP
`
`is the main protocol used for Internet communications—Web pages are served
`
`using TCP/IP. By October 14, 1996, the critical date of the 072 Patent, TCP/IP was
`
`one of the most popular wide area networking protocols. TCP/IP was standardized
`
`in a series of publicly available Request for Comments (RFCs) published by the
`
`
`
`6
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`Internet Engineering Task Force, including RFC 793, entitled “Transmission
`
`Control Protocol.” Ex. 1007, RFC 793.
`
`TCP/IP consists of two parts: (1) Transmission Control Protocol (TCP),
`
`which provides virtual bi-directional connections that provide guaranteed in-order,
`
`error-free delivery of arbitrary amounts of data between programs running on
`
`different computers over the internet; and (2) Internet Protocol (IP), which
`
`provides delivery of datagrams (IP packets) to any routable Internet address,
`
`without any reliability or ordering guarantees. TCP/IP can be transmitted over a
`
`variety of physical media (e.g. Ethernet). Ex.1003, Horst Decl. at ¶¶24-31.
`
`TCP runs on “top” of IP by first dividing application data to be transmitted
`
`into segments that become the data payloads of TCP packets and concatenating
`
`each payload with a TCP header to form a TCP packet, a process called TCP
`
`segmentation. TCP/IP then places the resulting TCP packet (TCP header +
`
`payload) into the data payload of an IP packet by concatenating the TCP packet (IP
`
`data payload) with an IP header.
`
`Shown in the figure below, in typical TCP/IP processing, a packet is built
`
`from the top down, i.e., each layer encapsulates what it receives from the layer
`
`above by concatenating a header. When receiving a packet from the network, the
`
`layers work in reverse, with each layer stripping its header and providing the
`
`resulting packet to the layer above. Separate entities typically perform each layer
`
`
`
`7
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`of the protocol processing. The collection of entities for processing the various
`
`layers is often called a “protocol stack.” Ex.1003, Horst Decl. at ¶¶27-31.
`
`
`Ex. 1008, Stevens11 at .034.
`
`
`
`Starting from the lowest layer, the MAC layer (e.g., Ethernet) handles the
`
`actual transmission on a physical medium (e.g. Ethernet cables). The header of this
`
`layer includes a MAC address that is the address of a network interface on a local
`
`area network. Ex.1003, Horst Decl. at ¶¶28-29.
`
`
`1 Ex.1008, Stevens, W. Richard, TCP/IP Illustrated, Vol. 1, The Protocols.
`
`Addison-Welsey Publishing Company, 1994 at .007-.008 (“Stevens1”)
`
`
`
`8
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`Next is the Internet layer (IP layer). The IP header includes source and
`
`destination IP addresses for identifying a computer at each end of the connection.
`
`Ex.1003, Horst Decl. at ¶30.
`
`Above the IP layer is the TCP layer. The TCP header includes “port
`
`numbers,” corresponding to the end points (e.g. client or server programs) sending
`
`and receiving data. For example, the usual port number for World Wide Web
`
`(HTTP) servers is port 80. Ex.1003, Horst Decl. at ¶31.
`
`Considerable
`
`information must be
`
`tracked
`
`to guarantee
`
`reliable
`
`communication and to maintain an open TCP connection, including sequence
`
`numbers, acknowledgement numbers, the sliding windows, TCP, IP and MAC
`
`addresses and more. Typically, the state information needed to maintain a TCP
`
`connection is held in a connection record also called the Transmission Control
`
`Block (TCB) in RFC 793. Ex.1007, RFC 793 at .024.
`
`The combination of an IP address and TCP port number is called a “socket.”
`
`A TCP connection can be formed with a pair of sockets—one for the source and
`
`another for the destination. Establishing a connection over TCP is sometimes
`
`called “opening a socket.” To open a socket, an IP address and TCP port for an
`
`application endpoint at the other end of the connection are specified by the
`
`application opening the socket.
`
`
`
`9
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`Each user application typically has one or more areas of host memory in
`
`which it can (1) place data for transmission so that the protocol stack can retrieve
`
`it, encapsulate it in packets, and transmit it, and (2) receive data from the network
`
`placed there by the protocol stack (after stripping the MAC, IP and TCP headers
`
`from the packet).
`
`Free implementations of TCP/IP were widely available. Ex. 1003, Horst
`
`Decl. ¶26. One such implementation is the subject of a widely-used textbook,
`
`Wright, Gary R., and W. Richard Stevens. Ex. 1013, TCP/IP Illustrated. Vol. 2.,
`
`The Implementation Addison-Wesley Professional, 1995, .960-.968. (“Stevens2”),
`
`which describes and presents the source code for the Berkeley TCP/IP
`
`implementation distributed with the 4.x BSD Unix system. Id. at .023.
`
`4.2. UDP/IP
`
`Internet Protocol supports a second transport-layer protocol, the User
`
`Datagram Protocol (UDP). UDP is a connectionless protocol with no reliability or
`
`ordering guarantees. It is often used by client-server applications that use one
`
`request and one response instead of going to the trouble of establishing a
`
`continuing connection. Like TCP, UDP uses source and destination IP addresses
`
`and port numbers to identify the end points on the network. Ex.1006,
`
`Tanenbaum96 at .560.
`
`4.3. Protocol Offload
`
`
`
`10
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`Protocol processing requires several operations on the data. To increase
`
`performance and reduce the demands on a host computer, many prior art solutions
`
`offload some (partial offload), or all (full offload), of this processing to a separate
`
`device, e.g., a network interface controller (NIC). Ex.1003, Horst Decl. at ¶¶48¬
`
`54.
`
`As early as 1974, front-end protocol offload was already being considered
`
`for standardization as described in request-for-comments RFC 647, which
`
`describes a broad consensus that front-ending (i.e. protocol offloading) was
`
`desirable. Ex.1003, Horst Decl. ¶ 49-50. RFC 929, published in 1984, describes
`
`several motivations for offloading protocol processing to an outboard processor:
`
`There are
`
`two
`
`fundamental motivations
`
`for doing outboard
`
`processing. One is to conserve the Hosts’ resources (CPU cycles and
`
`memory) in a resource sharing intercomputer network, by offloading
`
`as much of the required networking software from the Hosts to
`
`Outboard Processing Environments (or “Network Front-Ends”) as
`
`possible. The other is to facilitate procurement of implementations of
`
`the various intercomputer networking protocols for the several types
`
`of Host in play in a typical heterogeneous intercomputer network, by
`
`employing common implementations in the OPE. A third motivation,
`
`
`
`11
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`of basing a network security approach on trusted mandatory OPEs,
`
`will not be dealt with here, but is at least worthy of mention.
`
`Ex.1009, RFC 929 at .002. Ex.1003, Horst Decl. ¶ 51. RFC 929 identifies many
`
`protocols for offloading, including TCP and UDP. Ex.1009, RFC 929 at .015-.016.
`
`Ex.1003, Horst Decl. ¶ 52.
`
`Between the publication of RFC 929 in 1984 and the October 14, 1996
`
`critical date for the 1997 provisional application to which the 072 Patent claims
`
`priority, a great deal of work was published in the area of protocol offloading.
`
`Ex.1003, Horst Decl. ¶¶53-54. This work specifically teaches the alleged
`
`inventions claimed in the 072 Patent.
`
`5. OVERVIEW OF THE 072 PATENT
`
`The 072 Patent relates to offloading TCP protocol processing from a host
`
`onto an “intelligent” network interface card (INIC). Ex.1001, 072 Patent at
`
`Abstract. The INIC permits two modes of operation: a “fast path” (illustrated in
`
`red, below) in which protocol processing from the physical layer through the TCP
`
`layer is performed on the INIC, and a “slow path” (illustrated in blue, below) in
`
`which network frames are handed to the host at the MAC layer and passed up
`
`through the host protocol stack conventionally. The concept is illustrated in Fig.
`
`24, shown and described below:
`
`
`
`12
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`
`
`The INIC uses a “connection context” to determine which “path” should be
`
`
`
`used for a received packet. A “connection context” is defined by the source and
`
`destination addresses of the IP and TCP headers. Ex.1001, 072 Patent at 31:7-22.
`
`The host may create the context by processing an initial request packet, e.g., as part
`
`of opening a connection. Id. at 10:19-22. The connection context for a packet is
`
`checked against a list. If the connection context is on the list, the packet is fast-
`
`pathed; otherwise it is slow-pathed. Id.
`
`All of the independent claims of the 072 Patent are directed to transmit
`
`processing. Each requires that data be transferred to a network interface device,
`
`that the network interface device divides the data into segments, creates headers for
`
`
`
`13
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`the segments from a template header, and that the headers are prepended to the
`
`segments to form transmit packets. Ex. 1001, 072 Patent, at 33:35-63.
`
`The three independent claims are substantially similar to each other:
`
`1. A method comprising:
`
`9. A method comprising:
`
`15. A method comprising:
`
`establishing, at a host
`
`
`
`establishing, at a
`
`computer, a transport
`
`layer connection,
`
`computer, a Transmission
`
`Control Protocol (TCP)
`
`connection
`
`including creating a
`
`creating, at a computer, a
`
`corresponding to a
`
`context that includes
`
`context including protocol
`
`context that includes
`
`protocol header
`
`information and status
`
`status information and
`
`information for the
`
`information for a network
`
`Internet Protocol (IP)
`
`connection;
`
`connection, the protocol
`
`addresses and TCP ports
`
`information providing a
`
`for the connection;
`
`template header for the
`
`network connection;
`
`transferring the protocol
`
`transferring the protocol
`
`transferring the context to
`
`header information to an
`
`information and status
`
`an interface device;
`
`interface device;
`
`information to an
`
`interface device;
`
`14
`
`
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`transferring data from the
`
`transferring data from the
`
`transferring data from the
`
`network host to the
`
`computer to the interface
`
`network host to the
`
`interface device,
`
`device,
`
`interface device;
`
`after transferring the
`
`after transferring the
`
`
`
`protocol header
`
`protocol information and
`
`information to the
`
`status information to the
`
`interface device;
`
`interface device;
`
`dividing, by the interface
`
`dividing, by the interface
`
`dividing, by the interface
`
`device, the data into
`
`device, the data into
`
`device, the data into
`
`segments;
`
`segments;
`
`segments;
`
`creating headers for the
`
`creating headers for the
`
`creating headers for the
`
`segments, by the interface
`
`segments, by the interface
`
`segments, by the interface
`
`device, from a template
`
`device, from the template
`
`device, from a template
`
`header containing the
`
`header;
`
`header that includes the IP
`
`protocol header
`
`information; and
`
`addresses and TCP ports;
`
`and
`
`prepending the headers to
`
`prepending the headers to
`
`prepending the headers to
`
`the segments to form
`
`the segments to form
`
`the segments to form
`
`transmit packets.
`
`packets; and
`
`transmit packets.
`
`
`
`
`
`transmitting the packets
`
`
`
`15
`
`

`

`Petition for Inter Partes Review of U.S. Patent No. 7,673,072
`
`on a network.
`
`
`
`The dependent claims include transferring status information during the
`
`same operation as transferring header information (claim 2), creating headers that
`
`include status information (claims 3, 9, 10, 17), creating headers from protocol
`
`header information that includes TCP ports and IP headers (claims 4, 11) or a
`
`MAC address (claims 5, 12, 18, 19), using a descriptor for an application buffer in
`
`host memory (claims 6, 13, 20), and receiving packets and updating status (claims
`
`7, 14, 21).
`
`6.
`
`072 PATENT PROSECUTION HISTORY
`
`On June 25,

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